- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- bdv.viewer.AbstractViewerPanel
-
- All Implemented Interfaces:
RequestRepaint,ImageObserver,MenuContainer,Serializable,Accessible
- Direct Known Subclasses:
ViewerPanel
public abstract class AbstractViewerPanel extends JPanel implements RequestRepaint
Abstract base class forViewerPanel. It mostly serves as an interface for tools likeBookmarksEditor, to abstract from the specificViewerPanelimplementation. (This allows for re-using these tools in BigVolumeViewer.)- Author:
- Tobias Pietzsch
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAbstractViewerPanel.AlignPlaneThe planes which can be aligned with the viewer coordinate system: XY, ZY, and XZ plane.protected classAbstractViewerPanel.MouseCoordinateListener-
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
Fields Modifier and Type Field Description protected AbstractViewerPanel.MouseCoordinateListenermouseCoordinatesKeeps track of the current mouse coordinates, which are used to provide the current global position (seegetGlobalMouseCoordinates(RealPositionable)).-
Fields inherited from class javax.swing.JComponent
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
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
-
Constructor Summary
Constructors Constructor Description AbstractViewerPanel(LayoutManager layout)AbstractViewerPanel(LayoutManager layout, boolean isDoubleBuffered)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract voidaddOverlayAnimator(OverlayAnimator animator)Add a newOverlayAnimatorto the list of animators.voidalign(AbstractViewerPanel.AlignPlane plane)Align the XY, ZY, or XZ plane of the local coordinate system of the currently active source with the viewer coordinate system.abstract ConverterSetupsgetConverterSetups()Get theConverterSetupswhich manages the mapping betweenConverterSetups and sources.abstract InteractiveDisplaygetDisplay()Get the viewer canvas.abstract ComponentgetDisplayComponent()Get the AWTComponentof the viewer canvas.voidgetGlobalMouseCoordinates(net.imglib2.RealPositionable gPos)SetgPosto the current mouse coordinates transformed into the global coordinate system.abstract org.scijava.ui.behaviour.io.InputTriggerConfiggetInputTriggerConfig()voidgetMouseCoordinates(net.imglib2.Positionable p)Setpto the current mouse coordinates wrt to the display component.protected voidonMouseMoved()abstract org.scijava.listeners.Listeners<TransformListener<net.imglib2.realtransform.AffineTransform3D>>renderTransformListeners()Add/removeTransformListeners to notify about viewer transformation changes.booleanrequestFocusInWindow()abstract voidsetTransformAnimator(AbstractTransformAnimator animator)abstract voidshowMessage(String msg)Display the specified message in a text overlay for a short time.abstract ViewerStatestate()Get the ViewerState.abstract org.scijava.listeners.Listeners<TimePointListener>timePointListeners()Add/removeTimePointListenerto notify about time-point changes.abstract org.scijava.listeners.Listeners<TransformListener<net.imglib2.realtransform.AffineTransform3D>>transformListeners()Add/removeTransformListeners to notify about viewer transformation changes.-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
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, 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
-
Methods inherited from class java.awt.Container
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
-
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, 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, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface bdv.viewer.RequestRepaint
requestRepaint
-
-
-
-
Field Detail
-
mouseCoordinates
protected final AbstractViewerPanel.MouseCoordinateListener mouseCoordinates
Keeps track of the current mouse coordinates, which are used to provide the current global position (seegetGlobalMouseCoordinates(RealPositionable)).
-
-
Constructor Detail
-
AbstractViewerPanel
public AbstractViewerPanel(LayoutManager layout, boolean isDoubleBuffered)
-
AbstractViewerPanel
public AbstractViewerPanel(LayoutManager layout)
-
-
Method Detail
-
getInputTriggerConfig
public abstract org.scijava.ui.behaviour.io.InputTriggerConfig getInputTriggerConfig()
-
getDisplay
public abstract InteractiveDisplay getDisplay()
Get the viewer canvas.- Returns:
- the viewer canvas.
-
getDisplayComponent
public abstract Component getDisplayComponent()
Get the AWTComponentof the viewer canvas.- Returns:
- the viewer canvas.
-
addOverlayAnimator
public abstract void addOverlayAnimator(OverlayAnimator animator)
Add a newOverlayAnimatorto the list of animators. The animation is immediately started. The newOverlayAnimatorwill remain in the list of animators until itOverlayAnimator.isComplete().- Parameters:
animator- animator to add.
-
state
public abstract ViewerState state()
Get the ViewerState. This can be directly used for modifications, e.g., adding/removing sources etc. SeeSynchronizedViewerStatefor thread-safety considerations.
-
renderTransformListeners
public abstract org.scijava.listeners.Listeners<TransformListener<net.imglib2.realtransform.AffineTransform3D>> renderTransformListeners()
Add/removeTransformListeners to notify about viewer transformation changes. Listeners will be notified when a new image has been painted with the viewer transform used to render that image.This happens immediately after that image is painted onto the screen, before any overlays are painted.
-
transformListeners
public abstract org.scijava.listeners.Listeners<TransformListener<net.imglib2.realtransform.AffineTransform3D>> transformListeners()
Add/removeTransformListeners to notify about viewer transformation changes. Listeners will be notified before callingRequestRepaint.requestRepaint()so they have the chance to interfere.
-
timePointListeners
public abstract org.scijava.listeners.Listeners<TimePointListener> timePointListeners()
Add/removeTimePointListenerto notify about time-point changes. Listeners will be notified before callingRequestRepaint.requestRepaint()so they have the chance to interfere.
-
getConverterSetups
public abstract ConverterSetups getConverterSetups()
Get theConverterSetupswhich manages the mapping betweenConverterSetups and sources.
-
setTransformAnimator
public abstract void setTransformAnimator(AbstractTransformAnimator animator)
-
showMessage
public abstract void showMessage(String msg)
Display the specified message in a text overlay for a short time.- Parameters:
msg- String to display. Should be just one line of text.
-
align
public void align(AbstractViewerPanel.AlignPlane plane)
Align the XY, ZY, or XZ plane of the local coordinate system of the currently active source with the viewer coordinate system.- Parameters:
plane- to which plane to align.
-
getGlobalMouseCoordinates
public void getGlobalMouseCoordinates(net.imglib2.RealPositionable gPos)
SetgPosto the current mouse coordinates transformed into the global coordinate system.- Parameters:
gPos- is set to the current global coordinates.
-
getMouseCoordinates
public void getMouseCoordinates(net.imglib2.Positionable p)
Setpto the current mouse coordinates wrt to the display component.- Parameters:
p- is set to the current mouse coordinates.
-
onMouseMoved
protected void onMouseMoved()
-
requestFocusInWindow
public boolean requestFocusInWindow()
- Overrides:
requestFocusInWindowin classJComponent
-
-