EigenMeat.EigenMaze
Class DisplayHandler

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended byEigenMeat.EigenMaze.DisplayHandler
All Implemented Interfaces:
javax.accessibility.Accessible, java.util.EventListener, net.java.games.jogl.GLEventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class DisplayHandler
extends javax.swing.JPanel
implements net.java.games.jogl.GLEventListener

The DisplayHandler represents a rectangular view of the game world, and controls the drawing of its contents.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, PROPERTIES, SOMEBITS
 
Constructor Summary
DisplayHandler()
           
 
Method Summary
 void add(Drawable entity)
          Adds a Drawable to the handler.
 void add(ParticleManager p)
          Sets the display's ParticleManager.
 void display(net.java.games.jogl.GLDrawable glDrawable)
          Called by the glDrawable to initiate OpenGL rendering by the client.
 void displayChanged(net.java.games.jogl.GLDrawable glDrawable, boolean b, boolean b1)
          Currently unimplemented by JOGL, but required by GLEventListener.
 Camera getCamera()
          Gets the rendering Camera object associated with this DisplayHandler.
 LightManager getLightManager()
          Get reference to the LightManager.
 java.awt.Dimension getPreferredSize()
          Gets the viewport's hard-coded preferred size.
 int getRenderFrame()
          Get the number of the frame that is being rendered.
 void init(net.java.games.jogl.GLDrawable glDrawable)
          Called by the drawable immediately after the OpenGL context is initialized for the first time.
 void reshape(net.java.games.jogl.GLDrawable glDrawable, int i, int i1, int i2, int i3)
          Called by the drawable during the first repaint after the component has been resized.
 void setCameraLocation(float xCord, float yCord, float zCord)
          Set the rendering camera's game world position.
 void setCameraTarget(float xCord, float yCord, float zCord)
          Set the game world point at which the rendering camera points.
 void setFPSDisplay(boolean displaying)
          Toggles whether or not the fps is displayed
 void setMouseListeners(java.awt.event.MouseListener m1, java.awt.event.MouseMotionListener m2)
          Sets camera-tracking mouse action handlers.
 void setSize(int w, int h)
          Sets the size of the viewport (JPanel/GLCanvas).
 void update()
          Tells the GLCanvas that it should repaint itself ASAP.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DisplayHandler

public DisplayHandler()
Method Detail

getRenderFrame

public int getRenderFrame()
Get the number of the frame that is being rendered.

Returns:
frame number

setSize

public void setSize(int w,
                    int h)
Sets the size of the viewport (JPanel/GLCanvas).

Parameters:
w - width
h - height

setMouseListeners

public void setMouseListeners(java.awt.event.MouseListener m1,
                              java.awt.event.MouseMotionListener m2)
Sets camera-tracking mouse action handlers. It is recommended that both listeners be implemented in the same class and the same object be passed in twice.

Parameters:
m1 - the MouseListener.
m2 - the MouseMotionListener.

getPreferredSize

public java.awt.Dimension getPreferredSize()
Gets the viewport's hard-coded preferred size.

Returns:
the display's preferred size.

add

public void add(Drawable entity)
Adds a Drawable to the handler. Its draw() method will be called every update.

Parameters:
entity - the Drawable to add.

add

public void add(ParticleManager p)
Sets the display's ParticleManager.

Parameters:
p - the ParticleManager to use.

init

public void init(net.java.games.jogl.GLDrawable glDrawable)
Called by the drawable immediately after the OpenGL context is initialized for the first time. Initializes the perspective and view matrices, and activates lighting and rendering options. Part of the GLEventListener interface.

Specified by:
init in interface net.java.games.jogl.GLEventListener

reshape

public void reshape(net.java.games.jogl.GLDrawable glDrawable,
                    int i,
                    int i1,
                    int i2,
                    int i3)
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. Part of the GLEventListener interface.

Specified by:
reshape in interface net.java.games.jogl.GLEventListener

display

public void display(net.java.games.jogl.GLDrawable glDrawable)
Called by the glDrawable to initiate OpenGL rendering by the client. After all GLEventListeners have been notified of a display event, the glDrawable will swap its buffers if necessary. Part of the GLEventListener interface.

Specified by:
display in interface net.java.games.jogl.GLEventListener

displayChanged

public void displayChanged(net.java.games.jogl.GLDrawable glDrawable,
                           boolean b,
                           boolean b1)
Currently unimplemented by JOGL, but required by GLEventListener. Does nothing.

Specified by:
displayChanged in interface net.java.games.jogl.GLEventListener

update

public void update()
Tells the GLCanvas that it should repaint itself ASAP.


getCamera

public Camera getCamera()
Gets the rendering Camera object associated with this DisplayHandler.

Returns:
the Camera object.

getLightManager

public LightManager getLightManager()
Get reference to the LightManager.

Returns:
reference of LightManager

setCameraTarget

public void setCameraTarget(float xCord,
                            float yCord,
                            float zCord)
Set the game world point at which the rendering camera points.

Parameters:
xCord - the x-coordinate of the point at which to look.
yCord - the y-coordinate of the point at which to look.
zCord - the z-coordinate of the point at which to look.

setCameraLocation

public void setCameraLocation(float xCord,
                              float yCord,
                              float zCord)
Set the rendering camera's game world position.

Parameters:
xCord - the x-coordinate of the camera location.
yCord - the y-coordinate of the camera location.
zCord - the z-coordinate of the camera location.

setFPSDisplay

public void setFPSDisplay(boolean displaying)
Toggles whether or not the fps is displayed

Parameters:
displaying - Sets the fps display (true = displaying)