X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.g3d%2Fsrc%2Forg%2Fsimantics%2Fproconf%2Fg3d%2Fcommon%2FJmeComposite.java;fp=org.simantics.g3d%2Fsrc%2Forg%2Fsimantics%2Fproconf%2Fg3d%2Fcommon%2FJmeComposite.java;h=0000000000000000000000000000000000000000;hb=6b6fcff5d6c326feef07ccf8401f97911778fffe;hp=bb9e0bbbceaf2bf6384112d23f85caca3fb2363b;hpb=504c111db40d78f4913badddd126b283b5504dbb;p=simantics%2F3d.git diff --git a/org.simantics.g3d/src/org/simantics/proconf/g3d/common/JmeComposite.java b/org.simantics.g3d/src/org/simantics/proconf/g3d/common/JmeComposite.java deleted file mode 100644 index bb9e0bbb..00000000 --- a/org.simantics.g3d/src/org/simantics/proconf/g3d/common/JmeComposite.java +++ /dev/null @@ -1,124 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007- VTT Technical Research Centre of Finland. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * VTT Technical Research Centre of Finland - initial API and implementation - *******************************************************************************/ -package org.simantics.proconf.g3d.common; - - -import java.util.logging.LogManager; - -import org.eclipse.core.runtime.Path; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.ControlAdapter; -import org.eclipse.swt.events.ControlEvent; -import org.eclipse.swt.events.PaintEvent; -import org.eclipse.swt.events.PaintListener; -import org.eclipse.swt.graphics.Rectangle; -import org.eclipse.swt.layout.FillLayout; -import org.eclipse.swt.opengl.GLCanvas; -import org.eclipse.swt.widgets.Composite; -import org.simantics.proconf.g3d.base.JmeRenderingComponent; -import org.simantics.proconf.g3d.base.ResourceTextureCache; -import org.simantics.utils.ui.ErrorLogger; - -import com.jme.renderer.Renderer; -import com.jme.renderer.lwjgl.LWJGLRenderer; -import com.jme.scene.Node; -import com.jme.system.DisplaySystem; -import com.jme.system.swt.SWTDisplaySystem; -import com.jme.util.TextureManager; - - -public class JmeComposite extends Composite { - protected Node rootNode = new Node("root"); - private SWTDisplaySystem displaySystem; - protected GLCanvas renderingCanvas; - private JmeRenderingComponent component; - - public JmeComposite(Composite parent, JmeRenderingComponent component) { - super(parent,SWT.NONE); - if (component == null) - throw new NullPointerException("Rendering component must not be null."); - disableLog(); - //LoggingSystem.getLogger().setLevel(Level.OFF); - this.component = component; - this.setLayout(new FillLayout()); - displaySystem = (SWTDisplaySystem)DisplaySystem.getDisplaySystem("SWT"); - renderingCanvas = displaySystem.createCanvas(640, 480, this); - renderingCanvas.addControlListener(new ControlAdapter() { - public void controlResized(ControlEvent e) { - resize(); - } - }); - -// this.addPaintListener(new PaintListener() { -// @Override -// public void paintControl(PaintEvent e) { -// displaySystem.setCurrent(); -// JmeComposite.this.component.render(); -// } -// }); - - - } - - private void disableLog() { - //URL url = FileLocator.find(org.simantics.proconf.g3d.Activator.getDefault().getBundle(),new Path("logging.properties"),null); - - try { - LogManager.getLogManager().readConfiguration(org.simantics.proconf.g3d.Activator.getDefault().openStream(new Path("logging.properties"))); - } catch (Exception e) { - ErrorLogger.defaultLogError(e); - } - } - - public void resize() { - displaySystem.setCurrent(); - LWJGLRenderer renderer = (LWJGLRenderer) displaySystem.getRenderer(); - if (renderer!= null) { - Rectangle r = new Rectangle(renderingCanvas.getClientArea().x,renderingCanvas.getClientArea().y, renderingCanvas.getClientArea().width, renderingCanvas.getClientArea().height ); - if (r.width > 0 && r.height > 0) - renderer.reinit(r.width, r.height); - component.resize(r.width, r.height); - } - } - - public GLCanvas getCanvas() { - return renderingCanvas; - } - - public Renderer getRenderer() { - return displaySystem.getRenderer(); - } - - public void initGL() { - component.init(displaySystem); - } - - public void dispose() { - LWJGLRenderer renderer = (LWJGLRenderer) displaySystem.getRenderer(); - renderer.clearVBOCache(); - renderer.clearQueue(); - renderer.clearStatistics(); - renderingCanvas.dispose(); - if (displaySystem.destroy()) { - - TextureManager.doTextureCleanup(); - TextureManager.clearCache(); - ResourceTextureCache.getInstance().clear(); - } - super.dispose(); - } - - public DisplaySystem getDisplaySystem() { - return displaySystem; - } - - -}