uk.ac.starlink.topcat.plot
Class LinesWindow

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by uk.ac.starlink.topcat.AuxWindow
                          extended by uk.ac.starlink.topcat.plot.GraphicsWindow
                              extended by uk.ac.starlink.topcat.plot.LinesWindow
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, EventListener, Accessible, RootPaneContainer, WindowConstants, TopcatListener

public class LinesWindow
extends GraphicsWindow
implements TopcatListener

GraphicsWindow which draws a stack of line graphs.

Since:
3 Mar 2006
Author:
Mark Taylor
See Also:
Serialized Form

Nested Class Summary
 class LinesWindow.RescaleAction
          Action for performing rescaling actions.
 
Nested classes/interfaces inherited from class uk.ac.starlink.topcat.plot.GraphicsWindow
GraphicsWindow.ExportAction, GraphicsWindow.ReplotListener
 
Nested classes/interfaces inherited from class javax.swing.JFrame
JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow
 
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 inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
LinesWindow(Component parent)
          Constructor.
 
Method Summary
 uk.ac.starlink.ttools.plot.Range[] calculateRanges(uk.ac.starlink.ttools.plot.PlotData data, uk.ac.starlink.ttools.plot.PlotState state)
          Returns a 1-element array giving only the X axis range.
protected  uk.ac.starlink.ttools.plot.PlotState createPlotState()
          Constructs a new PlotState.
protected  PointSelector createPointSelector()
          Returns a new PointSelector instance to be used for selecting points to be plotted.
protected  StyleEditor createStyleEditor()
          Creates a style editor suitable for this window.
protected  void doReplot(uk.ac.starlink.ttools.plot.PlotState state)
          Performs an actual plot.
 uk.ac.starlink.ttools.plot.StyleSet getDefaultStyles(int npoint)
          Returns a StyleSet which can supply markers.
protected  JComponent getPlotPanel()
          Returns the component containing the graphics output of this window.
 uk.ac.starlink.ttools.plot.PlotState getPlotState()
          Returns an object which characterises the choices the user has made in the GUI to indicate the plot that s/he wants to see.
 MutableStyleSet getStyles()
          Returns a style set suitable for use with a new PointSelector.
protected  boolean isLegendInteresting(uk.ac.starlink.ttools.plot.PlotState state)
          Indicates whether the legend is worth showing for a given plot state.
 void modelChanged(TopcatEvent evt)
          Invoked when the model has changed in some way.
 void setStyles(uk.ac.starlink.ttools.plot.StyleSet styles)
          Sets the style set to use for this window.
 
Methods inherited from class uk.ac.starlink.topcat.plot.GraphicsWindow
addExtraAxes, addNewSubsets, createErrorModeMenu, createErrorModeModels, createErrorRendererMenu, createMarkerStyleMenu, dispose, fixDefaultErrorRenderers, getAuxAxisCount, getAxisEditAction, getAxisWindow, getColumnIndex, getDataRanges, getErrorModeModels, getExportMenu, getExtrasPanel, getFlipModels, getGridModel, getLegendModel, getLogModels, getMainRangeCount, getPadRatio, getPlot, getPoints, getPointSelectors, getPointSelectorToolBar, getReplotAction, getReplotListener, getRescaleAction, getStandardMarkStyleSets, getStatusBox, getViewRanges, getVisibleAuxAxisCount, init, replot, setGuidePointCount, setMainTable, setPadRatio, setVisible
 
Methods inherited from class uk.ac.starlink.topcat.AuxWindow
addHelp, beep, confirm, createImportTableAction, createSaveTableAction, getBodyPanel, getControlPanel, getHelpMenu, getIconImage, getMainArea, getSponsorLogos, getToolBar, getWindowMenu, makeTitledBorder, makeVisible, placeProgressBar, positionAfter, recursiveSetEnabled, setBusy, setCloseIsExit, setMainHeading
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Constructor Detail

LinesWindow

public LinesWindow(Component parent)
Constructor.

Parameters:
parent - parent component
Method Detail

getPlotPanel

protected JComponent getPlotPanel()
Description copied from class: GraphicsWindow
Returns the component containing the graphics output of this window. This is the component which is exported or printed etc alongside the legend which is managed by GraphicsWindow. It should therefore contain only the output data, not any user interface decoration.

Specified by:
getPlotPanel in class GraphicsWindow
Returns:
plot container

doReplot

protected void doReplot(uk.ac.starlink.ttools.plot.PlotState state)
Description copied from class: GraphicsWindow
Performs an actual plot.

Overrides:
doReplot in class GraphicsWindow
Parameters:
state - plot state determining details of plot configuration

createPlotState

protected uk.ac.starlink.ttools.plot.PlotState createPlotState()
Description copied from class: GraphicsWindow
Constructs a new PlotState. This is called by GraphicsWindow.getPlotState() prior to the PlotState configuration done there. Thus if a subclass wants to provide and configure a particular state (for instance one of a specialised subclass of PlotState) it can override this method to do so. The default implementation just invokes new PlotState().

Overrides:
createPlotState in class GraphicsWindow
Returns:
returns a new PlotState object ready for generic configuration

getPlotState

public uk.ac.starlink.ttools.plot.PlotState getPlotState()
Description copied from class: GraphicsWindow
Returns an object which characterises the choices the user has made in the GUI to indicate the plot that s/he wants to see.

The GraphicsWindow implementation of this method as well as populating the state with standard information also calls PointSelection.readPoints(javax.swing.BoundedRangeModel) and GraphicsWindow.calculateRanges(uk.ac.starlink.topcat.plot.PointSelection, uk.ac.starlink.topcat.plot.Points, uk.ac.starlink.ttools.plot.PlotState) if necessary.

Overrides:
getPlotState in class GraphicsWindow
Returns:
snapshot of the currently-selected plot request

createPointSelector

protected PointSelector createPointSelector()
Description copied from class: GraphicsWindow
Returns a new PointSelector instance to be used for selecting points to be plotted.

Overrides:
createPointSelector in class GraphicsWindow
Returns:
new point selector component

createStyleEditor

protected StyleEditor createStyleEditor()
Description copied from class: GraphicsWindow
Creates a style editor suitable for this window.

Specified by:
createStyleEditor in class GraphicsWindow
Returns:
new style editor

setStyles

public void setStyles(uk.ac.starlink.ttools.plot.StyleSet styles)
Description copied from class: GraphicsWindow
Sets the style set to use for this window.

Overrides:
setStyles in class GraphicsWindow
Parameters:
styles - new style set

getStyles

public MutableStyleSet getStyles()
Description copied from class: GraphicsWindow
Returns a style set suitable for use with a new PointSelector. Note this is not the same object as was set by GraphicsWindow.setStyles(uk.ac.starlink.ttools.plot.StyleSet), but it is based on it - it will dispense styles from the same set, but avoid styles already dispensed to other selectors.

Overrides:
getStyles in class GraphicsWindow
Returns:
style set suitable for a new selector

getDefaultStyles

public uk.ac.starlink.ttools.plot.StyleSet getDefaultStyles(int npoint)
Description copied from class: GraphicsWindow
Returns a StyleSet which can supply markers. The npoint may be used as a hint for how many points are expected to be drawn with it.

Specified by:
getDefaultStyles in class GraphicsWindow
Parameters:
npoint - approximate number of points - use -1 for unknown
Returns:
style factory

calculateRanges

public uk.ac.starlink.ttools.plot.Range[] calculateRanges(uk.ac.starlink.ttools.plot.PlotData data,
                                                          uk.ac.starlink.ttools.plot.PlotState state)
Returns a 1-element array giving only the X axis range.

Overrides:
calculateRanges in class GraphicsWindow
Parameters:
data - point data for the plot
state - plot state
Returns:
ranges

isLegendInteresting

protected boolean isLegendInteresting(uk.ac.starlink.ttools.plot.PlotState state)
Description copied from class: GraphicsWindow
Indicates whether the legend is worth showing for a given plot state.

Overrides:
isLegendInteresting in class GraphicsWindow
Parameters:
state - plot state
Returns:
true iff the legend would show non-trivial information

modelChanged

public void modelChanged(TopcatEvent evt)
Description copied from interface: TopcatListener
Invoked when the model has changed in some way.

Specified by:
modelChanged in interface TopcatListener
Parameters:
evt - event description


Copyright © 2003-2018 CCLRC: Council for the Central Laboratory of the Research Councils. All Rights Reserved.