Xj3D VRML/X3D Code API

org.web3d.browser
Class ViewpointToolbar

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended byorg.web3d.browser.ViewpointToolbar
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ActionListener, java.util.EventListener, java.awt.image.ImageObserver, java.awt.event.ItemListener, java.awt.MenuContainer, NavigationStateListener, java.io.Serializable, ViewpointStatusListener

public class ViewpointToolbar
extends javax.swing.JPanel
implements java.awt.event.ActionListener, java.awt.event.ItemListener, ViewpointStatusListener, NavigationStateListener

A toolbar for all view manipulation commands that offers convenient and common code.

This toolbar uses images for the button icons rather than text. These are the images used. The path is found relative to the classpath.

Version:
$Revision: 1.3 $
Author:
Justin Couch Revisions and extensions by Brad Vender
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 org.web3d.browser.NavigationStateListener
EXAMINE_STATE, FLY_STATE, NO_STATE, PAN_STATE, TILT_STATE, WALK_STATE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ViewpointToolbar()
          Create a new horizontal viewpoint toolbar with an empty list of viewpoints.
ViewpointToolbar(BrowserCore core, java.util.Properties browserSkin)
          Create a new horizontal viewpoint toolbar with an empty list of viewpoints, but with non-default appearance.
ViewpointToolbar(java.util.Properties browserSkin)
          Create a new horizontal viewpoint toolbar with an empty list of viewpoints, but with non-default appearance.
ViewpointToolbar(org.j3d.ui.navigation.ViewpointData[] vps, BrowserCore core, java.util.Properties browserSkin)
          Create a new viewpoint toolbar that has the given list of viewpoints to be displayed.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent evt)
          Process an action event on one of the buttons.
 void appendViewpoint(org.j3d.ui.navigation.ViewpointData vp)
          Add the given viewpoint to the end of the list of available viewpoints.
 void clearViewpoints()
          Clear the viewpoint list and disable self
 void firstViewpoint()
          Goto the first viewpoint.
 void itemStateChanged(java.awt.event.ItemEvent evt)
          Listen for item changing events in the comboBox selection
 void lastViewpoint()
          Goto the last viewpoint.
 void navigationListChanged(java.lang.String[] modes, int numModes)
          Notification that the list of valid navigation modes has changed.
 void navigationStateChanged(int idx)
          Notification that the navigation state has changed to the new state.
 void nextViewpoint()
          Make the next viewpoint active.
 void previousViewpoint()
          Make the previous viewpoint active.
 void selectViewpoint(org.j3d.ui.navigation.ViewpointData vp)
          Select the given viewpoint in the display
 void setClock(VRMLClock newClock)
          Set the clock to use for timestamps in binding viewpoints
 void setEnabled(boolean enabled)
          Set the panel enabled or disabled.
 void setNewViewpoints(VRMLViewpointNodeType viewpoint, java.util.ArrayList vpList)
          Load a new set of viewpoints.
 void setViewpointSelectionListener(org.j3d.ui.navigation.ViewpointSelectionListener l)
          Set the listener for viewpoint change notifications.
 void viewpointAdded(VRMLViewpointNodeType node, boolean isDefault)
          Invoked when a viewpoint has been added
 void viewpointBound(VRMLViewpointNodeType node)
          Invoked when a viewpoint has been bound.
 void viewpointRemoved(VRMLViewpointNodeType node)
          Invoked when a viewpoint has been removed
 
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, getPreferredSize, 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, 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, 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

ViewpointToolbar

public ViewpointToolbar()
Create a new horizontal viewpoint toolbar with an empty list of viewpoints. User code must set clock before using.


ViewpointToolbar

public ViewpointToolbar(java.util.Properties browserSkin)
Create a new horizontal viewpoint toolbar with an empty list of viewpoints, but with non-default appearance. User code must set clock before using.

Parameters:
browserSkin - Properties overriding default appearance

ViewpointToolbar

public ViewpointToolbar(BrowserCore core,
                        java.util.Properties browserSkin)
Create a new horizontal viewpoint toolbar with an empty list of viewpoints, but with non-default appearance. User code must set clock before using.

Parameters:
core - The browser core
browserSkin - Properties to override default toolbar appearance

ViewpointToolbar

public ViewpointToolbar(org.j3d.ui.navigation.ViewpointData[] vps,
                        BrowserCore core,
                        java.util.Properties browserSkin)
Create a new viewpoint toolbar that has the given list of viewpoints to be displayed. List may be null and may be changed at a later date. The buttons will be laid out horizontally. User code must set clock before using.

Parameters:
vps - The list of viewpoints to use
core - The browser core
browserSkin - Properties to override default toolbar appearance
Method Detail

navigationStateChanged

public void navigationStateChanged(int idx)
Notification that the navigation state has changed to the new state.

Specified by:
navigationStateChanged in interface NavigationStateListener
Parameters:
idx - The new state expressed as an index into the current navModes list.

navigationListChanged

public void navigationListChanged(java.lang.String[] modes,
                                  int numModes)
Notification that the list of valid navigation modes has changed.

Specified by:
navigationListChanged in interface NavigationStateListener
Parameters:
modes - The new modes
numModes - The number of modes in the list

clearViewpoints

public void clearViewpoints()
Clear the viewpoint list and disable self


setClock

public void setClock(VRMLClock newClock)
Set the clock to use for timestamps in binding viewpoints


setViewpointSelectionListener

public void setViewpointSelectionListener(org.j3d.ui.navigation.ViewpointSelectionListener l)
Set the listener for viewpoint change notifications. By setting a value of null it will clear the currently set instance

Parameters:
l - The listener to use for change updates

selectViewpoint

public void selectViewpoint(org.j3d.ui.navigation.ViewpointData vp)
Select the given viewpoint in the display

Parameters:
vp - The data that is to be selected

nextViewpoint

public void nextViewpoint()
Make the next viewpoint active. Wrap around.


previousViewpoint

public void previousViewpoint()
Make the previous viewpoint active. Wrap around.


firstViewpoint

public void firstViewpoint()
Goto the first viewpoint.


lastViewpoint

public void lastViewpoint()
Goto the last viewpoint.


appendViewpoint

public void appendViewpoint(org.j3d.ui.navigation.ViewpointData vp)
Add the given viewpoint to the end of the list of available viewpoints.

Parameters:
vp - The data for the new viewpoint

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent evt)
Process an action event on one of the buttons.

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
evt - The event that caused this method to be called

itemStateChanged

public void itemStateChanged(java.awt.event.ItemEvent evt)
Listen for item changing events in the comboBox selection

Specified by:
itemStateChanged in interface java.awt.event.ItemListener
Parameters:
evt - The event that caused this method to be called

setEnabled

public void setEnabled(boolean enabled)
Set the panel enabled or disabled. Overridden to make sure the base components are properly handled.

Parameters:
enabled - true if this component is enabled

viewpointAdded

public void viewpointAdded(VRMLViewpointNodeType node,
                           boolean isDefault)
Description copied from interface: ViewpointStatusListener
Invoked when a viewpoint has been added

Specified by:
viewpointAdded in interface ViewpointStatusListener
Parameters:
node - The viewpoint
isDefault - Is the node a default
See Also:
ViewpointStatusListener.viewpointAdded(org.web3d.vrml.nodes.VRMLViewpointNodeType, boolean)

viewpointRemoved

public void viewpointRemoved(VRMLViewpointNodeType node)
Description copied from interface: ViewpointStatusListener
Invoked when a viewpoint has been removed

Specified by:
viewpointRemoved in interface ViewpointStatusListener
Parameters:
node - The viewpoint
See Also:
ViewpointStatusListener.viewpointRemoved(org.web3d.vrml.nodes.VRMLViewpointNodeType)

viewpointBound

public void viewpointBound(VRMLViewpointNodeType node)
Description copied from interface: ViewpointStatusListener
Invoked when a viewpoint has been bound.

Specified by:
viewpointBound in interface ViewpointStatusListener
Parameters:
node - The viewpoint
See Also:
ViewpointStatusListener.viewpointBound(org.web3d.vrml.nodes.VRMLViewpointNodeType)

setNewViewpoints

public void setNewViewpoints(VRMLViewpointNodeType viewpoint,
                             java.util.ArrayList vpList)
Load a new set of viewpoints.

Parameters:
viewpoint - The currently bound viewpoint
vpList - The list of current viewpoints

Xj3D VRML/X3D Code API

Copyright © 2001 - 2005 Web3D Consortium