Package uk.ac.starlink.topcat.plot
Class StyleEditor
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- uk.ac.starlink.topcat.plot.StyleEditor
-
- All Implemented Interfaces:
java.awt.event.ActionListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.event.ChangeListener
- Direct Known Subclasses:
BarStyleEditor
,DensityStyleEditor
,LinesStyleEditor
,MarkStyleEditor
public abstract class StyleEditor extends javax.swing.JPanel implements java.awt.event.ActionListener, javax.swing.event.ChangeListener
Graphical component which provides a GUI for editing the characteristics of aStyle
object. This is an abstract superclass; a specialised implementation will be required for eachStyle
implementation. Since Style objects are usually immutable, this doesn't (necessarily) edit a single style object; instead you configure it with an existing style using thesetState(uk.ac.starlink.ttools.plot.Style, java.lang.String, boolean)
method and later use thegetStyle()
method and others to obtain the new style which is a result of the editing.- Since:
- 10 Jan 2005
- Author:
- Mark Taylor
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
-
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
-
-
Constructor Summary
Constructors Constructor Description StyleEditor()
Constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
actionPerformed(java.awt.event.ActionEvent evt)
Invoked every time the style described by the current state of this component changes.void
addActionListener(java.awt.event.ActionListener listener)
Adds an action listener.void
cancelChanges()
Undoes any changes done sincesetState(uk.ac.starlink.ttools.plot.Style, java.lang.String, boolean)
was called.abstract java.lang.String
getHelpID()
Returns the help ID associated with this editor.boolean
getHideLegend()
Returns whether the Hide Legend check box is currently selected.java.lang.String
getLabel()
Returns the label currently entered in this component.javax.swing.Icon
getLegendIcon()
Returns the icon to be used for the display legend of this editor.SetId
getSetId()
Returns the set identifier for the style which this editor is currently editing.abstract uk.ac.starlink.ttools.plot.Style
getStyle()
Returns a style object derived from the current state of this component.protected void
init()
Performs initialisation after construction but before the first display of this component.protected void
refreshState()
Ensures that all the visual components of this editor match its internal state.void
removeActionListener(java.awt.event.ActionListener listener)
Removes an action listener which was previously added.void
setSetId(SetId id)
Sets the set identifier for the style which this editor is currently editing.void
setState(uk.ac.starlink.ttools.plot.Style style, java.lang.String label, boolean hideLegend)
Sets the state of this component ready for editing.abstract void
setStyle(uk.ac.starlink.ttools.plot.Style style)
Sets the style.void
setVisible(boolean visible)
void
stateChanged(javax.swing.event.ChangeEvent evt)
Invoked every time the style described by the current state of this component 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, 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, 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
-
-
-
-
Method Detail
-
setVisible
public void setVisible(boolean visible)
- Overrides:
setVisible
in classjavax.swing.JComponent
-
init
protected void init()
Performs initialisation after construction but before the first display of this component.
-
setState
public void setState(uk.ac.starlink.ttools.plot.Style style, java.lang.String label, boolean hideLegend)
Sets the state of this component ready for editing.- Parameters:
style
- stylelabel
- textual label to use in legends annotating the style being editedhideLegend
- whether this style is to be excluded from plot legends
-
setStyle
public abstract void setStyle(uk.ac.starlink.ttools.plot.Style style)
Sets the style. Implementations should configure their visual state so that it matches the characteristics of the given style.- Parameters:
style
- current style
-
getStyle
public abstract uk.ac.starlink.ttools.plot.Style getStyle()
Returns a style object derived from the current state of this component.- Returns:
- current (edited) style
-
getHelpID
public abstract java.lang.String getHelpID()
Returns the help ID associated with this editor.- Returns:
- ID within TOPCAT HelpSet
-
getLabel
public java.lang.String getLabel()
Returns the label currently entered in this component.- Returns:
- label
-
getHideLegend
public boolean getHideLegend()
Returns whether the Hide Legend check box is currently selected.- Returns:
- true iff legend will be hidden for this style
-
setSetId
public void setSetId(SetId id)
Sets the set identifier for the style which this editor is currently editing.- Parameters:
id
- set identifier
-
getSetId
public SetId getSetId()
Returns the set identifier for the style which this editor is currently editing.- Returns:
- set identifier
-
cancelChanges
public void cancelChanges()
Undoes any changes done sincesetState(uk.ac.starlink.ttools.plot.Style, java.lang.String, boolean)
was called.
-
addActionListener
public void addActionListener(java.awt.event.ActionListener listener)
Adds an action listener. It will be notified every time something the state described by this component changes.- Parameters:
listener
- listener to add
-
removeActionListener
public void removeActionListener(java.awt.event.ActionListener listener)
Removes an action listener which was previously added.- Parameters:
listener
- listener to remove- See Also:
addActionListener(java.awt.event.ActionListener)
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent evt)
Invoked every time the style described by the current state of this component changes.- Specified by:
actionPerformed
in interfacejava.awt.event.ActionListener
-
stateChanged
public void stateChanged(javax.swing.event.ChangeEvent evt)
Invoked every time the style described by the current state of this component changes.- Specified by:
stateChanged
in interfacejavax.swing.event.ChangeListener
-
refreshState
protected void refreshState()
Ensures that all the visual components of this editor match its internal state.
-
getLegendIcon
public javax.swing.Icon getLegendIcon()
Returns the icon to be used for the display legend of this editor.- Returns:
- legend icon
-
-