javax.media.opengl
Interface GLEventListener
- EventListener
public interface GLEventListener
extends EventListener
Declares events which client code can use to manage OpenGL
rendering into a
GLAutoDrawable
. At the time any of these
methods is called, the drawable has made its associated OpenGL
context current, so it is valid to make OpenGL calls.
void | display(GLAutoDrawable drawable) - Called by the drawable to initiate OpenGL rendering by the
client.
|
void | displayChanged(GLAutoDrawable drawable, boolean modeChanged, boolean deviceChanged) - Called by the drawable when the display mode or the display device
associated with the GLAutoDrawable has changed.
|
void | init(GLAutoDrawable drawable) - Called by the drawable immediately after the OpenGL context is
initialized.
|
void | reshape(GLAutoDrawable drawable, int x, int y, int width, int height) - Called by the drawable during the first repaint after the
component has been resized.
|
display
public void display(GLAutoDrawable drawable)
Called by the drawable to initiate OpenGL rendering by the
client. After all GLEventListeners have been notified of a
display event, the drawable will swap its buffers if
setAutoSwapBufferMode
is
enabled.
displayChanged
public void displayChanged(GLAutoDrawable drawable,
boolean modeChanged,
boolean deviceChanged)
Called by the drawable when the display mode or the display device
associated with the GLAutoDrawable has changed. The two boolean parameters
indicate the types of change(s) that have occurred.
An example of a display
mode change is when the bit depth changes (e.g.,
from 32-bit to 16-bit color) on monitor upon which the GLAutoDrawable is
currently being displayed.
An example of a display
device change is when the user drags the
window containing the GLAutoDrawable from one monitor to another in a
multiple-monitor setup.
The reason that this function handles both types of changes (instead of
handling mode and device changes in separate methods) is so that
applications have the opportunity to respond to display changes in the most
efficient manner. For example, the application may need make fewer
adjustments to compensate for a device change if it knows that the mode
on the new device is identical the previous mode.
NOTE: Implementations are not required to implement this method. The
Reference Implementation DOES NOT IMPLEMENT this method.
init
public void init(GLAutoDrawable drawable)
Called by the drawable immediately after the OpenGL context is
initialized. Can be used to perform one-time OpenGL
initialization such as setup of lights and display lists. Note
that this method may be called more than once if the underlying
OpenGL context for the GLAutoDrawable is destroyed and
recreated, for example if a GLCanvas is removed from the widget
hierarchy and later added again.
reshape
public void reshape(GLAutoDrawable drawable,
int x,
int y,
int width,
int height)
Called by the drawable during the first repaint after the
component has been resized. The client can update the viewport
and view volume of the window appropriately, for example by a
call to
GL.glViewport(int,int,int,int)
; note that for
convenience the component has already called
glViewport(x,
y, width, height)
when this method is called, so the
client may not have to do anything in this method.
Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.