All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jogamp.opengl.awt.VersionApplet Maven / Gradle / Ivy

package jogamp.opengl.awt;

import java.applet.Applet;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.TextArea;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import java.util.List;

import javax.media.opengl.GLProfile;
import javax.media.opengl.awt.GLCanvas;
import javax.media.opengl.GL;
import javax.media.opengl.GLAutoDrawable;
import javax.media.opengl.GLCapabilities;
import javax.media.opengl.GLCapabilitiesImmutable;
import javax.media.opengl.GLDrawableFactory;
import javax.media.opengl.GLEventListener;

import com.jogamp.common.GlueGenVersion;
import com.jogamp.common.os.Platform;
import com.jogamp.common.util.VersionUtil;
import com.jogamp.opengl.JoglVersion;

@SuppressWarnings("serial")
public class VersionApplet extends Applet {
  TextArea tareaVersion;
  TextArea tareaCaps;
  GLCanvas canvas;

  public static void main(String[] args) {
    Frame frame = new Frame("JOGL Version Applet");
    frame.setSize(800, 600);
    frame.setLayout(new BorderLayout());

    VersionApplet va = new VersionApplet();
    frame.addWindowListener(new ClosingWindowAdapter(frame, va));

    va.init();
    frame.add(va, BorderLayout.CENTER);
    frame.validate();

    frame.setVisible(true);
    va.start();
  }

  static class ClosingWindowAdapter extends WindowAdapter {
    Frame f;
    VersionApplet va;
    public ClosingWindowAdapter(Frame f, VersionApplet va) {
        this.f = f;
        this.va = va;
    }
    @Override
    public void windowClosing(WindowEvent ev) {
        f.setVisible(false);
        va.stop();
        va.destroy();
        f.remove(va);
        f.dispose();
        System.exit(0);
    }
  }

  private synchronized void my_init() {
    if(null != canvas) { return; }

    setEnabled(true);

    GLProfile glp = GLProfile.getDefault();
    GLCapabilities glcaps = new GLCapabilities(glp);

    setLayout(new BorderLayout());
    String s;

    tareaVersion = new TextArea(120, 60);
    s = VersionUtil.getPlatformInfo().toString();
    System.err.println(s);
    tareaVersion.append(s);

    s = GlueGenVersion.getInstance().toString();
    System.err.println(s);
    tareaVersion.append(s);

    /*
    s = NativeWindowVersion.getInstance().toString();
    System.err.println(s);
    tareaVersion.append(NativeWindowVersion.getInstance().toString());
    */

    s = JoglVersion.getInstance().toString();
    System.err.println(s);
    tareaVersion.append(s);

    tareaCaps = new TextArea(120, 20);
    GLDrawableFactory factory = GLDrawableFactory.getFactory(glp);
    List availCaps = factory.getAvailableCapabilities(null);
    for(int i=0; i




© 2015 - 2024 Weber Informatics LLC | Privacy Policy