uk.ac.starlink.ast.gui
Class AxisLabelControls

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by uk.ac.starlink.ast.gui.AxisLabelControls
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, EventListener, Accessible, ChangeListener, PlotControls

public class AxisLabelControls
extends JPanel
implements PlotControls, ChangeListener

AxisLabelControls creates a "page" of widgets that are a view of an AstAxisLabel object. They provide the ability to configure all the properties of the AstAxisLabel object (that describe how the axis labels of an AST plot should be drawn) and show a current rendering of them.

Version:
$Id$
Author:
Peter W. Draper
See Also:
AstAxisLabel, PlotConfigurator, Serialized Form

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.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  AstAxisLabels astAxisLabels
          AstAxisLabel model for current state.
protected  JButton colourButton
          Colour button (same for both labels).
protected  ColourIcon colourIcon
          Colour Icon of colour button.
protected static String defaultName
          The default short name for these controls.
protected static String defaultTitle
          The default title for these controls.
protected  FontControls fontControls
          FontControls (same for both labels).
protected  boolean inhibitXDocumentListener
          Stop feedback to the text areas from themselves.
protected  boolean inhibitYDocumentListener
           
protected  JComboBox xEdge
          Chooser for X label edge (TOP or BOTTOM).
protected  ScientificSpinner xGapSpinner
          Spinner for controlling the position of the X label.
protected  JCheckBox xShowLabel
          Control for toggling display of X label.
protected  SpinnerNumberModel xSpinnerModel
          X gap spinner model.
protected  SelectTextField xTextField
          The X label text field (this also allows access to special characters that cannot be easily typed in).
protected  JCheckBox xUnits
          Chooser for whether X label has any units shown.
protected  JComboBox yEdge
          Chooser for Y label edge (LEFT or RIGHT).
protected  ScientificSpinner yGapSpinner
          Spinner for controlling the position of the Y label.
protected  JCheckBox yShowLabel
          Control for toggling display of Y label.
protected  SpinnerNumberModel ySpinnerModel
          Y gap spinner model.
protected  SelectTextField yTextField
          The Y label text field (this also allows access to special characters that cannot be easily typed in).
protected  JCheckBox yUnits
          Chooser for whether Y label has any units shown.
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
AxisLabelControls(AbstractPlotControlsModel astAxisLabels)
          Create an instance.
 
Method Summary
protected  void chooseColour()
          Update the text colour.
 AstAxisLabels getAstAxisLabels()
          Get copy of reference to current AstAxisLabel.
 JComponent getControlsComponent()
          Return a reference to the JComponent sub-class that will be displayed (normally a reference to this).
 AbstractPlotControlsModel getControlsModel()
          Return reference to the AbstractPlotControlsModel.
static Class getControlsModelClass()
          Return the class of object that we expect as our model.
 String getControlsName()
          Return a short name for these controls (for the tab).
 String getControlsTitle()
          Return a title for these controls (for the border).
protected  void initUI()
          Create and initialise the user interface.
protected  void matchXEdge()
          Match the X edge setting to the current value.
protected  void matchXGap()
          Match the X AstAxisLabels gap to that shown.
protected  void matchXShown()
          Match show state of X label to that selected.
protected  void matchXText()
          Match the X AstAxisLabels text to that displayed.
protected  void matchXUnits()
          Match whether to display the X units (if any).
protected  void matchYEdge()
          Match the Y edge setting to the current value.
protected  void matchYGap()
          Match the Y AstAxisLabels gap to that shown.
protected  void matchYShown()
          Match show state of Y label to that selected.
protected  void matchYText()
          Match the Y AstAxisLabels text to that displayed.
protected  void matchYUnits()
          Match whether to display the Y units (if any).
 void reset()
          Reset interface to defaults.
 void setAstAxisLabel(AstAxisLabels astAxisLabels)
          Set the AstAxisLabel object.
protected  void setTextColour(Color colour)
          Set the text colour.
protected  void setTextFont(Font font)
          Set the text font.
 void setXText(String text)
          Set the X label.
 void setYText(String text)
          Set the Y label.
 void stateChanged(ChangeEvent e)
          If the AstTitle object changes then we need to update the interface.
protected  void updateFont(FontChangedEvent e)
          Update the displayed font.
protected  void updateFromAstAxisLabels()
          Update interface to reflect values of the current AstAxisLabel.
 
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, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, 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, 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, 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, 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, hide, 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, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

astAxisLabels

protected AstAxisLabels astAxisLabels
AstAxisLabel model for current state.


xShowLabel

protected JCheckBox xShowLabel
Control for toggling display of X label.


yShowLabel

protected JCheckBox yShowLabel
Control for toggling display of Y label.


xTextField

protected SelectTextField xTextField
The X label text field (this also allows access to special characters that cannot be easily typed in).


yTextField

protected SelectTextField yTextField
The Y label text field (this also allows access to special characters that cannot be easily typed in).


xGapSpinner

protected ScientificSpinner xGapSpinner
Spinner for controlling the position of the X label.


yGapSpinner

protected ScientificSpinner yGapSpinner
Spinner for controlling the position of the Y label.


xSpinnerModel

protected SpinnerNumberModel xSpinnerModel
X gap spinner model.


ySpinnerModel

protected SpinnerNumberModel ySpinnerModel
Y gap spinner model.


colourButton

protected JButton colourButton
Colour button (same for both labels).


colourIcon

protected ColourIcon colourIcon
Colour Icon of colour button.


fontControls

protected FontControls fontControls
FontControls (same for both labels).


xEdge

protected JComboBox xEdge
Chooser for X label edge (TOP or BOTTOM).


yEdge

protected JComboBox yEdge
Chooser for Y label edge (LEFT or RIGHT).


xUnits

protected JCheckBox xUnits
Chooser for whether X label has any units shown.


yUnits

protected JCheckBox yUnits
Chooser for whether Y label has any units shown.


inhibitXDocumentListener

protected boolean inhibitXDocumentListener
Stop feedback to the text areas from themselves.


inhibitYDocumentListener

protected boolean inhibitYDocumentListener

defaultTitle

protected static String defaultTitle
The default title for these controls.


defaultName

protected static String defaultName
The default short name for these controls.

Constructor Detail

AxisLabelControls

public AxisLabelControls(AbstractPlotControlsModel astAxisLabels)
Create an instance.

Method Detail

initUI

protected void initUI()
Create and initialise the user interface.


setAstAxisLabel

public void setAstAxisLabel(AstAxisLabels astAxisLabels)
Set the AstAxisLabel object.


updateFromAstAxisLabels

protected void updateFromAstAxisLabels()
Update interface to reflect values of the current AstAxisLabel.


getAstAxisLabels

public AstAxisLabels getAstAxisLabels()
Get copy of reference to current AstAxisLabel.


setXText

public void setXText(String text)
Set the X label.


setYText

public void setYText(String text)
Set the Y label.


matchXShown

protected void matchXShown()
Match show state of X label to that selected.


matchXText

protected void matchXText()
Match the X AstAxisLabels text to that displayed.


matchYShown

protected void matchYShown()
Match show state of Y label to that selected.


matchYText

protected void matchYText()
Match the Y AstAxisLabels text to that displayed.


matchXGap

protected void matchXGap()
Match the X AstAxisLabels gap to that shown.


matchYGap

protected void matchYGap()
Match the Y AstAxisLabels gap to that shown.


updateFont

protected void updateFont(FontChangedEvent e)
Update the displayed font.


setTextFont

protected void setTextFont(Font font)
Set the text font.


chooseColour

protected void chooseColour()
Update the text colour.


setTextColour

protected void setTextColour(Color colour)
Set the text colour.


matchXEdge

protected void matchXEdge()
Match the X edge setting to the current value.


matchYEdge

protected void matchYEdge()
Match the Y edge setting to the current value.


matchXUnits

protected void matchXUnits()
Match whether to display the X units (if any).


matchYUnits

protected void matchYUnits()
Match whether to display the Y units (if any).


getControlsTitle

public String getControlsTitle()
Return a title for these controls (for the border).

Specified by:
getControlsTitle in interface PlotControls

getControlsName

public String getControlsName()
Return a short name for these controls (for the tab).

Specified by:
getControlsName in interface PlotControls

reset

public void reset()
Reset interface to defaults.

Specified by:
reset in interface PlotControls

getControlsComponent

public JComponent getControlsComponent()
Return a reference to the JComponent sub-class that will be displayed (normally a reference to this).

Specified by:
getControlsComponent in interface PlotControls

getControlsModel

public AbstractPlotControlsModel getControlsModel()
Return reference to the AbstractPlotControlsModel. This defines the actual state of the controls and stores the current values.

Specified by:
getControlsModel in interface PlotControls

getControlsModelClass

public static Class getControlsModelClass()
Return the class of object that we expect as our model.


stateChanged

public void stateChanged(ChangeEvent e)
If the AstTitle object changes then we need to update the interface.

Specified by:
stateChanged in interface ChangeListener


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.