fr.esrf.tangoatk.widget.attribute
Class MultiNumberSpectrumViewer

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by fr.esrf.tangoatk.widget.util.chart.JLChart
                  extended by fr.esrf.tangoatk.widget.attribute.MultiNumberSpectrumViewer
All Implemented Interfaces:
IAttributeStateListener, IErrorListener, ISpectrumListener, IJLChartListener, java.awt.event.ActionListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener

public class MultiNumberSpectrumViewer
extends JLChart
implements ISpectrumListener, IJLChartListener

A class to display several spectrum attributes in the same chart. The MultipleNumberSpectrumViewer displays the spectrums according to index value (x axis shows value index).

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  double affineA0
           
protected  double affineA1
           
protected  java.util.Map<INumberSpectrum,JLDataView> attMap
           
static java.lang.String AXIS_X
           
static java.lang.String AXIS_Y1
           
static java.lang.String AXIS_Y2
           
protected  java.lang.String defaultAxis
           
protected  java.awt.Color[] defColors
           
 
Fields inherited from class fr.esrf.tangoatk.widget.util.chart.JLChart
chartMenu, dialogParent, FR_DATE_FORMAT, LABEL_DOWN, LABEL_LEFT, LABEL_RIGHT, LABEL_ROW, LABEL_UP, labelRect, lastDataFileLocation, lastFileFilter, lastSnapshotLocation, maxDisplayDuration, MENU_CHARTPROP, MENU_DATASAVE, MENU_DVPROP, MENU_PRINT, MENU_STAT, MENU_TABLE, modalDialog, noValueString, preferDialog, tableDialog, US_DATE_FORMAT
 
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
MultiNumberSpectrumViewer()
           
 
Method Summary
 void addNumberSpectrumModel(INumberSpectrum ins)
          Adds a numberSpectrum attribute model to the viewer; This method adds the representing DataView to the default axis determined by the defaultAxis bean property which can only be set to AXIS_Y1 or AXIS_Y2
 void addNumberSpectrumModel(INumberSpectrum ins, java.lang.String axis)
          Adds a numberSpectrum attribute model to the viewer; This method allows to add the representing DataView to the specified axis.
protected  void addNumberSpectrumModelToX(INumberSpectrum ins)
           
 void clearModel()
           
 java.lang.String[] clickOnChart(JLChartEvent e)
          Called when the user click on the chart
 void errorChange(ErrorEvent errorEvent)
           
 JLDataView getDataView(INumberSpectrum ins)
           
 java.lang.String getDefaultAxis()
          Gets the default Axis name.
 java.lang.String getSettings()
          Return configuration.
static void main(java.lang.String[] args)
           
 void removeNumberSpectrumModel(INumberSpectrum ins)
          Removes a numberSpectrum attribute model from the viewer
 void setDefaultAxis(java.lang.String axisName)
          Sets the default Axis name.
 void setXAxisAffineTransform(double a0, double a1)
          Sets an affine tranform to the X axis.
 void spectrumChange(NumberSpectrumEvent evt)
           
 void stateChange(AttributeStateEvent evt)
           
 
Methods inherited from class fr.esrf.tangoatk.widget.util.chart.JLChart
actionPerformed, addData, addJLChartActionListener, addMenuItem, addSeparator, addUserAction, applyConfiguration, buildPanelString, enterZoom, exitZoom, garbageData, getChartBackground, getConfiguration, getDisplayDuration, getExtension, getHeader, getHeaderFont, getHelpString, getLabelFont, getLabelPlacement, getMargin, getMaxDisplayDuration, getNoValueString, getTimePrecision, getXAxis, getY1Axis, getY2Axis, isLabelVisible, isPaintAxisFirst, isXAxisOnBottom, isZoomed, loadDataFile, mouseClicked, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, paint, printGraph, refreshTableSingle, removeDataView, removeJLChartActionListener, removeMenuItem, removeUserAction, reset, reset, setBackground, setChartBackground, setDisplayDuration, setHeader, setHeaderColor, setHeaderFont, setHeaderVisible, setJLChartListener, setLabelFont, setLabelPlacement, setLabelVisible, setMargin, setMaxDisplayDuration, setNoValueString, setPaintAxisFirst, setParentForTableDialog, setParentForTableDialog, setPreferDialogForTable, setTimePrecision, setXAxisOnBottom, showDataOptionDialog, showOptionDialog, showPanel, showTableAll, unselectAll
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, 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, 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, updateUI
 
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

AXIS_X

public static final java.lang.String AXIS_X
See Also:
Constant Field Values

AXIS_Y1

public static final java.lang.String AXIS_Y1
See Also:
Constant Field Values

AXIS_Y2

public static final java.lang.String AXIS_Y2
See Also:
Constant Field Values

defColors

protected final java.awt.Color[] defColors

attMap

protected java.util.Map<INumberSpectrum,JLDataView> attMap

affineA0

protected double affineA0

affineA1

protected double affineA1

defaultAxis

protected java.lang.String defaultAxis
Constructor Detail

MultiNumberSpectrumViewer

public MultiNumberSpectrumViewer()
Method Detail

addNumberSpectrumModel

public void addNumberSpectrumModel(INumberSpectrum ins)
Adds a numberSpectrum attribute model to the viewer; This method adds the representing DataView to the default axis determined by the defaultAxis bean property which can only be set to AXIS_Y1 or AXIS_Y2

Parameters:
ins - : INumberSpectrum the number spectrum attribute

addNumberSpectrumModel

public void addNumberSpectrumModel(INumberSpectrum ins,
                                   java.lang.String axis)
Adds a numberSpectrum attribute model to the viewer; This method allows to add the representing DataView to the specified axis.

Parameters:
ins - : INumberSpectrum the number spectrum attribute
axis - : String if AXIS_Y1 the spectrum plot will be added to Y1 axis, if AXIS_Y2 it will be added to Y2 axis, if AXIS_X the spectrum plot will be added to X axis.

addNumberSpectrumModelToX

protected void addNumberSpectrumModelToX(INumberSpectrum ins)

removeNumberSpectrumModel

public void removeNumberSpectrumModel(INumberSpectrum ins)
Removes a numberSpectrum attribute model from the viewer

Parameters:
ins - : INumberSpectrum the number spectrum attribute to remove

clearModel

public void clearModel()

getDataView

public JLDataView getDataView(INumberSpectrum ins)

getDefaultAxis

public java.lang.String getDefaultAxis()
Gets the default Axis name.

Returns:
the default axis name : AXIS_Y1 or AXIS_Y2

setDefaultAxis

public void setDefaultAxis(java.lang.String axisName)
Sets the default Axis name.

Parameters:
axisName - : one of the AXIS_Y1 or AXIS_Y2; The default axis cannot be set to AXIS_X

setXAxisAffineTransform

public void setXAxisAffineTransform(double a0,
                                    double a1)
Sets an affine tranform to the X axis. This allows to transform spectra index displayed on X axis.

Parameters:
a0 -
a1 -

getSettings

public java.lang.String getSettings()
Return configuration.

Returns:
current chart configuration as string

clickOnChart

public java.lang.String[] clickOnChart(JLChartEvent e)
Description copied from interface: IJLChartListener
Called when the user click on the chart

Specified by:
clickOnChart in interface IJLChartListener
Parameters:
e - Event object (containing click inforamtion)
Returns:
A set of string to display in the value tooltip. Does not display the tooltip if an empty array is returned. Keep default behavior when null is returned

errorChange

public void errorChange(ErrorEvent errorEvent)
Specified by:
errorChange in interface IErrorListener

stateChange

public void stateChange(AttributeStateEvent evt)
Specified by:
stateChange in interface IAttributeStateListener

spectrumChange

public void spectrumChange(NumberSpectrumEvent evt)
Specified by:
spectrumChange in interface ISpectrumListener

main

public static void main(java.lang.String[] args)