uk.ac.starlink.ast.gui
Class AxisNumLabControls

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.AxisNumLabControls
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, EventListener, Accessible, ChangeListener, PlotControls

public class AxisNumLabControls
extends JPanel
implements PlotControls, ChangeListener

AxisNumLabControls.Java 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:
AstNumerLabels, 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  AstNumberLabels astNumberLabels
          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  JComboBox digitsField
          Number of digits used in label precision.
protected  JLabel display
          Label showing current font.
protected  FontControls fontControls
          FontControls (same for both labels).
protected  JCheckBox logLabelSet
          Control for whether log labelling values should be applied.
protected  ScientificSpinner xGapSpinner
          Spinner for controlling the position of the X numbers.
protected  JCheckBox xLogLabel
          Control for toggling display of X log-like labels.
protected  JCheckBox xRotateNumbers
          Control for toggling rotation of X numbers.
protected  JCheckBox xShowNumbers
          Control for toggling display of X numbers.
protected  SpinnerNumberModel xSpinnerModel
          X Spinner model.
protected  ScientificSpinner yGapSpinner
          Spinner for controlling the position of the Y numbers.
protected  JCheckBox yLogLabel
          Control for toggling display of Y log-like labels.
protected  JCheckBox yRotateNumbers
          Control for toggling rotation of Y numbers.
protected  JCheckBox yShowNumbers
          Control for toggling display of Y numbers.
protected  SpinnerNumberModel ySpinnerModel
          Y Spinner model.
 
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
AxisNumLabControls(AbstractPlotControlsModel astNumberLabels)
          Create an instance.
 
Method Summary
protected  void chooseColour()
          Update the text colour.
 AstNumberLabels getAstNumberLabels()
          Get copy of reference to current AstNumberLabels.
 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 matchDigits()
          Match digits to those selected.
protected  void matchLogLabelSet()
           
protected  void matchXGap()
          Match the X AstAxisLabels gap to that shown.
protected  void matchXLogLabel()
          Match whether to use log labelling along X axis.
protected  void matchXRotate()
          Match rotated state of X numbers to that selected.
protected  void matchXShown()
          Match shown state of X numbers to that selected.
protected  void matchYGap()
          Match the Y AstAxisLabels gap to that shown.
protected  void matchYLogLabel()
          Match whether to use log labelling along Y axis.
protected  void matchYRotate()
          Match rotated state of Y numbers to that selected.
protected  void matchYShown()
          Match shown state of Y numbers to that selected.
 void reset()
          Reset interface to defaults.
 void setAstNumberLabels(AstNumberLabels astNumberLabels)
          Set the AstNumberLabels object.
protected  void setTextColour(Color colour)
          Set the text colour.
protected  void setTextFont(Font font)
          Set the font.
 void stateChanged(ChangeEvent e)
          If the AstNumberLabels object changes then we need to update the interface.
protected  void updateFont(FontChangedEvent e)
          Update the displayed font.
protected  void updateFromAstNumberLabels()
          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

astNumberLabels

protected AstNumberLabels astNumberLabels
AstAxisLabel model for current state.


display

protected JLabel display
Label showing current font.


xShowNumbers

protected JCheckBox xShowNumbers
Control for toggling display of X numbers.


yShowNumbers

protected JCheckBox yShowNumbers
Control for toggling display of Y numbers.


logLabelSet

protected JCheckBox logLabelSet
Control for whether log labelling values should be applied. If not defaults are used.


xLogLabel

protected JCheckBox xLogLabel
Control for toggling display of X log-like labels.


yLogLabel

protected JCheckBox yLogLabel
Control for toggling display of Y log-like labels.


xRotateNumbers

protected JCheckBox xRotateNumbers
Control for toggling rotation of X numbers.


yRotateNumbers

protected JCheckBox yRotateNumbers
Control for toggling rotation of Y numbers.


xGapSpinner

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


yGapSpinner

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


xSpinnerModel

protected SpinnerNumberModel xSpinnerModel
X Spinner model.


ySpinnerModel

protected SpinnerNumberModel ySpinnerModel
Y 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).


digitsField

protected JComboBox digitsField
Number of digits used in label precision.


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

AxisNumLabControls

public AxisNumLabControls(AbstractPlotControlsModel astNumberLabels)
Create an instance.

Method Detail

initUI

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


setAstNumberLabels

public void setAstNumberLabels(AstNumberLabels astNumberLabels)
Set the AstNumberLabels object.


updateFromAstNumberLabels

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


getAstNumberLabels

public AstNumberLabels getAstNumberLabels()
Get copy of reference to current AstNumberLabels.


updateFont

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


setTextFont

protected void setTextFont(Font font)
Set the font.


matchXShown

protected void matchXShown()
Match shown state of X numbers to that selected.


matchYShown

protected void matchYShown()
Match shown state of Y numbers to that selected.


matchLogLabelSet

protected void matchLogLabelSet()

matchXLogLabel

protected void matchXLogLabel()
Match whether to use log labelling along X axis.


matchYLogLabel

protected void matchYLogLabel()
Match whether to use log labelling along Y axis.


matchXRotate

protected void matchXRotate()
Match rotated state of X numbers to that selected.


matchYRotate

protected void matchYRotate()
Match rotated state of Y numbers to that selected.


matchXGap

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


matchYGap

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


matchDigits

protected void matchDigits()
Match digits to those selected.


chooseColour

protected void chooseColour()
Update the text colour.


setTextColour

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


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 AstNumberLabels 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.