Reply – Re: How to refer GL context in AWT Mouse Event
Your Name
Subject
Message
or Cancel
In Reply To
Re: How to refer GL context in AWT Mouse Event
— by n.j. n.j.
I am sorry, but can I refer the GL Context in SwingUtilities#invokeLater()?

like,

class MouseWorker extends Runnable {
  private MouseEvent mouseEvent;
  private GL2 gl;
  MouseThread(MouseEvent mouseEvent) {
     this.mouseEvent = mouseEvent;
  }
  void setGL2(GL2 gl) {
    this.gl = gl;
  }
  public void run() {
     int x = mouseEvent.getX(), y = mouseEvent.getY();
     NIO nio = getNIO();
     gl.glGetDoublev(GL2.GL_MODELVIEW_MATRIX, nio.model);
     gl.glGetDoublev(GL2.GL_PROJECTION_MATRIX, nio.proj);
     gl.glGetIntegerv(GL2.GL_VIEWPORT, noi.view);
     gl.glReadPixels(x, nio.view.get(3)-y-1, 1, 1, GL2.GL_DEPTH_COMPONENt, GL2.GL_FLOAT, nio.z);
     glu.gluUnProject(x, nio.view.get(3)-y-1, z.get(0), nio.model,nio.proj,nio.view,nio.loc);
     DisplayCompartment selected = getDisplayCompartment(nio.loc.get(0),nio.loc.get(1),nio.loc.get(2));
     if (selected != nulll) {
       setSelected(selected);
       this.MyPanel.repaint();
     }
  }
}
public void mousePressed(MouseEvent e) {
   Runnable r = new MouseWorker(e);
   SwingUtilities.invokeLater(r);
}

You mean like this?
or am i confused?