Class AnnotationListChooser
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,RequestHandler
,TabComponent
The AnnotationListChooser
class is a panel that allows
the user to manipulate a list of annotations. The user may add a
new line, polyline, curve, text, box, circle, polygon or closed
curve, and edit the annotation visibility, name, color, linestyle,
or fill color.
The chooser signals a change in the annotation overlay list by
firing a property change event whose property name is given by
ANNOTATION_LIST_PROPERTY
. See the AbstractOverlayListPanel
class for details on how the property
change events should be interpreted.
Annotations require that extra information be provided from the user object. The chooser signals that it requires input for an annotation by firing an action event whose action command specifies the type of input required as:
-
LINE_COMMAND
-
POLYLINE_COMMAND
-
BOX_COMMAND
-
POLYGON_COMMAND
-
CIRCLE_COMMAND
-
CURVE_COMMAND
-
TEXT_COMMAND
The user object should perform some operation to obtain the
annotation input information, and then pass it to the
addAnnotation()
method.
- Since:
- 3.1.7
- Author:
- Peter Hollemans
- See Also:
-
Nested Class Summary
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
Modifier and TypeFieldDescriptionstatic final String
The annotattion list property.static final String
The box annotation command.static final String
The circle annotation command.static final String
The curve annotation command.static final String
The line annotation command.static final String
The polygon annotation command.static final String
The polyline annotation command.static final String
The text annotation command.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
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addAnnotation
(Shape shape) Adds a new annotation.void
addAnnotationActionListener
(ActionListener listener) Adds the specified listener for receiving annotation input action commands.void
addPropertyChangeListener
(String propertyName, PropertyChangeListener listener) Redirects overlay property listeners to the list panel.boolean
canHandleRequest
(Request request) void
Deactivates the annotation chooser so that no annotation is selected.Gets the last annotation command executed.getIcon()
Gets the annotation list tab icon.getTitle()
Gets the annotation list chooser title.static List<AbstractButton>
Gets the annotation list chooser tooltip.void
handleRequest
(Request request) 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, 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, 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
-
Field Details
-
ANNOTATION_LIST_PROPERTY
The annotattion list property. -
LINE_COMMAND
The line annotation command.- See Also:
-
POLYLINE_COMMAND
The polyline annotation command.- See Also:
-
BOX_COMMAND
The box annotation command.- See Also:
-
POLYGON_COMMAND
The polygon annotation command.- See Also:
-
CIRCLE_COMMAND
The circle annotation command.- See Also:
-
CURVE_COMMAND
The curve annotation command.- See Also:
-
TEXT_COMMAND
The text annotation command.- See Also:
-
-
Constructor Details
-
AnnotationListChooser
public AnnotationListChooser()Creates a new annotation list chooser.
-
-
Method Details
-
getToolBarButtons
- Since:
- 3.8.1
-
handleRequest
- Specified by:
handleRequest
in interfaceRequestHandler
-
canHandleRequest
- Specified by:
canHandleRequest
in interfaceRequestHandler
-
getAnnotationCommand
Gets the last annotation command executed.- Returns:
- the last annotation added, or null if no annotation has been added.
-
addAnnotationActionListener
Adds the specified listener for receiving annotation input action commands.- Parameters:
listener
- the listener to add.
-
getToolTip
Gets the annotation list chooser tooltip.- Specified by:
getToolTip
in interfaceTabComponent
- Returns:
- the tooltip text if the tab is to have an appearing tooltip when the mouse hovers over the tab, or null if no tooltip is required.
-
getTitle
Gets the annotation list chooser title.- Specified by:
getTitle
in interfaceTabComponent
- Returns:
- the title to be used if the tab is to have a text label as a title, or null if no title is required.
-
getIcon
Gets the annotation list tab icon.- Specified by:
getIcon
in interfaceTabComponent
- Returns:
- the icon to be used if the tab is to have an icon beside the title label, or null if no icon is required.
-
addPropertyChangeListener
Redirects overlay property listeners to the list panel.- Overrides:
addPropertyChangeListener
in classContainer
-
addAnnotation
Adds a new annotation. A new overlay is created for the annotation and the overlay added to the list.- Parameters:
shape
- the new data annotation shape to add. The shape is considered to be in data coordinates.
-
deactivate
public void deactivate()Deactivates the annotation chooser so that no annotation is selected.
-