public class OTSAnimationPanel extends OTSSimulationPanel implements ActionListener, WindowListener
Copyright (c) 2013-2016 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.
$LastChangedDate: 2017-01-16 01:51:17 +0100 (Mon, 16 Jan 2017) $, @version $Revision: 3282 $, by $Author: averbraeck $,
initial version Jun 18, 2015
Modifier and Type | Class and Description |
---|---|
protected class |
OTSAnimationPanel.DisposeOnCloseThread
Install the dispose on close when the OTSControlPanel is registered as part of a frame.
|
protected class |
OTSAnimationPanel.UpdateTimer
UpdateTimer class to update the coordinate on the screen.
|
JPanel.AccessibleJPanel
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Modifier and Type | Field and Description |
---|---|
protected boolean |
closeHandlerRegistered
Has the window close handler been registered?
|
protected boolean |
windowExited
Indicate the window has been closed and the timer thread can stop.
|
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor and Description |
---|
OTSAnimationPanel(Rectangle2D extent,
Dimension size,
SimpleAnimator simulator,
WrappableAnimation wrappableAnimation,
GTUColorer gtuColorer)
Construct a panel that looks like the DSOLPanel for quick building of OTS applications.
|
Modifier and Type | Method and Description |
---|---|
void |
actionPerformed(ActionEvent actionEvent) |
void |
addToggleAnimationButtonIcon(String name,
Class<? extends nl.tudelft.simulation.dsol.animation.Locatable> locatableClass,
String iconPath,
String toolTipText,
boolean initiallyVisible,
boolean idButton)
Add a button for toggling an animatable class on or off.
|
void |
addToggleAnimationButtonText(String name,
Class<? extends nl.tudelft.simulation.dsol.animation.Locatable> locatableClass,
String toolTipText,
boolean initiallyVisible)
Add a button for toggling an animatable class on or off.
|
nl.tudelft.simulation.dsol.animation.D2.AnimationPanel |
getAnimationPanel()
Easy access to the AnimationPanel.
|
ColorControlPanel |
getColorControlPanel()
Access the ColorControlPanel of this ControlPanel.
|
GTUColorer |
getGTUColorer()
Access the GTUColorer of this animation ControlPanel.
|
void |
installWindowCloseHandler()
Install a handler for the window closed event that stops the simulator (if it is running).
|
protected void |
updateWorldCoordinate()
Display the latest world coordinate based on the mouse position on the screen.
|
void |
windowActivated(WindowEvent e) |
void |
windowClosed(WindowEvent e) |
void |
windowClosing(WindowEvent e) |
void |
windowDeactivated(WindowEvent e) |
void |
windowDeiconified(WindowEvent e) |
void |
windowIconified(WindowEvent e) |
void |
windowOpened(WindowEvent e) |
getOtsControlPanel, getSimulator, getStatusBar, getTabbedPane, toString
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
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, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, 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, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
protected boolean closeHandlerRegistered
protected boolean windowExited
public OTSAnimationPanel(Rectangle2D extent, Dimension size, SimpleAnimator simulator, WrappableAnimation wrappableAnimation, GTUColorer gtuColorer) throws RemoteException, org.opentrafficsim.base.modelproperties.PropertyException
extent
- Rectangle2D; bottom left corner, length and width of the area (world) to animate.size
- the size to be used for the animation.simulator
- the simulator or animator of the model.wrappableAnimation
- the builder and rebuilder of the simulation, based on properties.gtuColorer
- the colorer to use for the GTUs.RemoteException
- when notification of the animation panel failsorg.opentrafficsim.base.modelproperties.PropertyException
- when one of the user modified properties has the empty string as keypublic final void addToggleAnimationButtonIcon(String name, Class<? extends nl.tudelft.simulation.dsol.animation.Locatable> locatableClass, String iconPath, String toolTipText, boolean initiallyVisible, boolean idButton)
name
- the name of the buttonlocatableClass
- the class for which the button holds (e.g., GTU.class)iconPath
- the path to the 24x24 icon to displaytoolTipText
- the tool tip text to show when hovering over the buttoninitiallyVisible
- whether the class is initially shown or notidButton
- id button that needs to be placed next to the previous buttonpublic final void addToggleAnimationButtonText(String name, Class<? extends nl.tudelft.simulation.dsol.animation.Locatable> locatableClass, String toolTipText, boolean initiallyVisible)
name
- the name of the buttonlocatableClass
- the class for which the button holds (e.g., GTU.class)toolTipText
- the tool tip text to show when hovering over the buttoninitiallyVisible
- whether the class is initially shown or notpublic final void actionPerformed(ActionEvent actionEvent)
actionPerformed
in interface ActionListener
public final nl.tudelft.simulation.dsol.animation.D2.AnimationPanel getAnimationPanel()
protected final void updateWorldCoordinate()
public final GTUColorer getGTUColorer()
public final ColorControlPanel getColorControlPanel()
public final void installWindowCloseHandler()
public void windowOpened(WindowEvent e)
windowOpened
in interface WindowListener
public final void windowClosing(WindowEvent e)
windowClosing
in interface WindowListener
public final void windowClosed(WindowEvent e)
windowClosed
in interface WindowListener
public final void windowIconified(WindowEvent e)
windowIconified
in interface WindowListener
public final void windowDeiconified(WindowEvent e)
windowDeiconified
in interface WindowListener
public final void windowActivated(WindowEvent e)
windowActivated
in interface WindowListener
public final void windowDeactivated(WindowEvent e)
windowDeactivated
in interface WindowListener
Copyright © 2014–2017 Delft University of Technology. All rights reserved.