DESY ACOP Beans Home

com.cosylab.gui
Class SliderDisplayer

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 com.cosylab.gui.components.Slider
                      extended by com.cosylab.gui.SliderDisplayer
All Implemented Interfaces:
StateOriginator, TickParameters, PopupManageable, CommonDisplayer, ConvertibleDisplayer, DataConsumer, DataSource, DataStateProvider, Displayer, DoubleConsumer, DoubleDisplayer, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible
Direct Known Subclasses:
AcopSlider, SliderDisplayerSetter

public class SliderDisplayer
extends Slider
implements DoubleDisplayer, DataSource, ConvertibleDisplayer

Displays value on editable slider.

Version:
$id$
Author:
Ales Pucelj
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class com.cosylab.gui.components.Slider
Slider.Button
 
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
 
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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  short update
           
 
Fields inherited from class com.cosylab.gui.components.Slider
SET_MANUAL, SET_ON_CHANGE, SET_ON_RELEASE
 
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 com.cosylab.gui.displayers.ConvertibleDisplayer
CONVERTER_PROPERTY
 
Fields inherited from interface com.cosylab.gui.displayers.Displayer
C_EDITABLE, DATA_SOURCE
 
Fields inherited from interface com.cosylab.gui.displayers.CommonDisplayer
C_BIT_DESCRIPTIONS, C_BIT_MASK, C_COLOR, C_CONDITION_WHEN_CLEARED, C_CONDITION_WHEN_SET, C_DESCRIPTION, C_DISPLAY_NAME, C_FORMAT, C_GRAPH_MAX, C_GRAPH_MIN, C_MAXIMUM, C_MIN_STEP, C_MINIMUM, C_POSITION, C_PROPERTY_TYPE, C_SEQUENCE_LENGTH, C_UNITS
 
Fields inherited from interface com.cosylab.gui.displayers.DataStateProvider
DATA_STATE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
SliderDisplayer()
          Constructor for SliderDisplayer.
 
Method Summary
 void addConsumer(DataConsumer consumer)
          Accepts only consumers, which support NonblockingNumberConsumer which is used for receiving updates from user.
 void cleanup()
          Performs general cleanup of displayer resources.
 void destroy()
           
 java.lang.Class[] getAcceptableConsumerTypes()
          Returns the array of consumer types, which are acceptable by this data source.
 DataConsumer[] getConsumers()
          Returns array of registered data consumer.
 Converter getConverter()
          Returns the converter that is used with the displayer.
 DataConsumer getDataConsumer(java.lang.Class type)
           Returns data consumer for requested data consumer type.
 DataSource getDataSource()
          Returns data source.
 DataState getDataState()
          Returns data quality state.
 DataConsumer getDefaultDataConsumer()
          Returns the implementation of default consumer type supported by this data consumer.
 InfoDialog getInfoDialog()
          Returns the InfoDialog hooked to this Displayer.
 PopupManager getPopupManager()
          Returns popup manager, which manages popup menu.
 java.lang.String[] getSupportedCharacteristics()
          Resturns array with names of supported characteristics.
 java.lang.Class[] getSupportedConsumerTypes()
          Returns array of supported data consumer types, which can be used as parameter and returnned with getDataCosnumer(Class) method.
 boolean isSuspended()
          Returns true if slider is suspended
static void main(java.lang.String[] args)
           
 void removeAllConsumers()
          Removes all consumers from data source and releases all resources and bindings allocated inside datasource to the consumers.
 void removeConsumer(DataConsumer consumer)
          Deregisters data consumer from this data source.
 void resume()
          Resumes suspended slider.
 void setCharacteristics(java.util.Map characteristics)
          Sets new dynamic value characteristics to this data consumer.
 void setConverter(Converter converter)
          Sets the Converter that is used when displaying value with this.
 void setDataSource(DataSource dataSource)
          Sets data source and registeres this displayer as data consumer.
 void suspend()
          Suspends displayer, minimal GUI action is taken, no data value events fired and slider is disabled.
 void updateDataState(DataState state)
          Push data state (quality) update change for dynamic value.
 void updateValue(long timestamp, double value)
          Notifys this consumer about new dynamic value update.
 
Methods inherited from class com.cosylab.gui.components.Slider
addSetListener, decrementBit, decrementLarge, decrementSmall, fireSetPerformed, formatNumber, getAutoSynchronizeDelay, getBitStep, getButtonIcon, getButtonText, getButtonTooltip, getContinuousModeDelayTime, getContinuousModeRepeatTime, getCustomizer, getFieldFormat, getFormat, getInfoBar, getLargeStep, getMajorTickLabels, getMajorTicks, getMaximum, getMinimum, getMinorTicksStep, getMode, getNavigationBar, getReadback, getRestoreButtonTitle, getSetMode, getSlider, getSliderUI, getSmallStep, getState, getStoredValue, getTicksFormat, getTitle, getTitleFont, getTitleVisible, getToolTipText, getUnits, getUnitsFont, getValue, getValuePrecision, incrementBit, incrementLarge, incrementSmall, isAutoSynchronize, isBitStepRelative, isButtonVisible, isContinuousControlVisible, isContinuousModeEnabled, isDragEnabled, isDropEnabled, isEditable, isLargeStepRelative, isPopupEnabled, isSmallStepRelative, isSnapToTicks, isStorageButtonsVisible, isStoredValueLabelVisible, isSyncButtonVisible, isUnitsVisible, measureTick, removeSetListener, resetSteps, restoreValue, setAutoSynchronize, setAutoSynchronizeDelay, setBackground, setBitStep, setBitStepRelative, setButtonIcon, setButtonText, setButtonTooltip, setButtonVisible, setContinuousControlVisible, setContinuousModeDelayTime, setContinuousModeEnabled, setContinuousModeRepeatTime, setDragEnabled, setDropEnabled, setEditable, setEnabled, setFieldFormat, setForeground, setFormat, setLargeStep, setLargeStepRelative, setMajorTickLabels, setMajorTicks, setManual, setMaximum, setMinimum, setMinorTicksStep, setMode, setPopupEnabled, setReadback, setRestoreButtonTitle, setSetMode, setSmallStep, setSmallStepRelative, setSnapToTicks, setState, setStorageButtonsVisible, setStoredValue, setStoredValueLabelVisible, setSyncButtonVisible, setTicksFormat, setTitle, setTitleFont, setTitleVisible, setToolTipText, setUnits, setUnitsFont, setUnitsVisible, setValue, setValuePrecision, storeValue, synchronize
 
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, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, 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
 
Methods inherited from interface com.cosylab.gui.displayers.DoubleDisplayer
getFormat, getMaximum, getMinimum, getUnits, getValue, setFormat, setMaximum, setMinimum, setUnits, setValue
 
Methods inherited from interface com.cosylab.gui.displayers.Displayer
getTitle, isEditable, setTitle
 
Methods inherited from interface com.cosylab.gui.displayers.DataConsumer
getName
 
Methods inherited from interface com.cosylab.gui.displayers.DataStateProvider
addPropertyChangeListener, addPropertyChangeListener, removePropertyChangeListener, removePropertyChangeListener
 

Field Detail

update

protected short update
Constructor Detail

SliderDisplayer

public SliderDisplayer()
Constructor for SliderDisplayer.

Method Detail

getAcceptableConsumerTypes

public java.lang.Class[] getAcceptableConsumerTypes()
Description copied from interface: DataSource
Returns the array of consumer types, which are acceptable by this data source.

Specified by:
getAcceptableConsumerTypes in interface DataSource
Returns:
the array of acceptable data source types

setCharacteristics

public void setCharacteristics(java.util.Map characteristics)
Description copied from interface: DataConsumer
Sets new dynamic value characteristics to this data consumer. This is usually called only at initializaation, before first data state or value is updated. Usually carries characteristics such as value minimum or maximum. Name and meaning of atributes is defined with contract betwean data consumer and source implementation.

Specified by:
setCharacteristics in interface DataConsumer
Parameters:
characteristics - the Map with attri

getConsumers

public DataConsumer[] getConsumers()
Description copied from interface: DataSource
Returns array of registered data consumer.

Specified by:
getConsumers in interface DataSource
Returns:
array of registered data consumer

getDataConsumer

public DataConsumer getDataConsumer(java.lang.Class type)
Description copied from interface: DataConsumer

Returns data consumer for requested data consumer type. If this data consumer does not support required data consumer, null is returned.

If this data cosnumer does not support specific data consumer type, then it means, that it is not desirable to cast data of that type to any by this consumer supported data consumer types.

Specified by:
getDataConsumer in interface DataConsumer
Parameters:
type - Class of specific data consumer (e.g. DoubleConsumer)
Returns:
implementation of required data consumer or null if not supported

getDataState

public DataState getDataState()
Description copied from interface: DataStateProvider
Returns data quality state. This property is changed by data consumer interface. In case of multiple displayer, this state indicates integral state for all contained data consumers.

Specified by:
getDataState in interface DataStateProvider
Returns:
dynamic data quality state

getDefaultDataConsumer

public DataConsumer getDefaultDataConsumer()
Description copied from interface: DataConsumer
Returns the implementation of default consumer type supported by this data consumer.

Specified by:
getDefaultDataConsumer in interface DataConsumer
Returns:
the implementation of default consumer type supported by this data consumer

getSupportedCharacteristics

public java.lang.String[] getSupportedCharacteristics()
Description copied from interface: DataConsumer
Resturns array with names of supported characteristics. Data source can use this method to optimize setting characteristics to this data consumer. If arrray of length 0 is return, then consumer does not need or support any characteristic. If null is returned, than consumer expect all existing characteristics from data source.

Specified by:
getSupportedCharacteristics in interface DataConsumer
Returns:
array with names of supported characteristics

getSupportedConsumerTypes

public java.lang.Class[] getSupportedConsumerTypes()
Description copied from interface: DataConsumer
Returns array of supported data consumer types, which can be used as parameter and returnned with getDataCosnumer(Class) method.

Specified by:
getSupportedConsumerTypes in interface DataConsumer
Returns:
array of supported data consumer types

addConsumer

public void addConsumer(DataConsumer consumer)
                 throws java.beans.PropertyVetoException
Accepts only consumers, which support NonblockingNumberConsumer which is used for receiving updates from user.

Specified by:
addConsumer in interface DataSource
Parameters:
consumer - the data consumer to be regitered at this data source
Throws:
java.beans.PropertyVetoException
See Also:
DataSource.addConsumer(com.cosylab.gui.displayers.DataConsumer)

cleanup

public void cleanup()
Description copied from interface: CommonDisplayer
Performs general cleanup of displayer resources. All by displayer issued object are not valid any more after cleanup. Displayer positions itself in initial state and DataState is changed to NOT_INITIALIZED state.

Specified by:
cleanup in interface CommonDisplayer

destroy

public void destroy()

removeConsumer

public void removeConsumer(DataConsumer consumer)
Description copied from interface: DataSource
Deregisters data consumer from this data source.

Specified by:
removeConsumer in interface DataSource
Parameters:
consumer - data consumer to be deregistered

isSuspended

public boolean isSuspended()
Description copied from class: Slider
Returns true if slider is suspended

Specified by:
isSuspended in interface CommonDisplayer
Overrides:
isSuspended in class Slider
Returns:
true if suspended
See Also:
Slider.suspend()

resume

public void resume()
Description copied from class: Slider
Resumes suspended slider. Call resume() as many times as suspend was called.

Specified by:
resume in interface CommonDisplayer
Overrides:
resume in class Slider
See Also:
Slider.suspend();

suspend

public void suspend()
Description copied from class: Slider
Suspends displayer, minimal GUI action is taken, no data value events fired and slider is disabled. Call resume() as many times as suspend was called.

Specified by:
suspend in interface CommonDisplayer
Overrides:
suspend in class Slider

updateDataState

public void updateDataState(DataState state)
Description copied from interface: DataConsumer
Push data state (quality) update change for dynamic value. Usually called by data source.

Specified by:
updateDataState in interface DataConsumer
Parameters:
state - new data state(quality) descriptor

updateValue

public void updateValue(long timestamp,
                        double value)
                 throws CommonException
Description copied from interface: DoubleConsumer
Notifys this consumer about new dynamic value update.

Specified by:
updateValue in interface DoubleConsumer
Parameters:
timestamp - the time of dynamic value event
value - new value
Throws:
CommonException

getDataSource

public DataSource getDataSource()
Description copied from interface: Displayer
Returns data source. This is convenience method for integration with VCE development tools. If null returned does not mean that this displayer is not connected to data source, it only means that setDataSource() method was not used.

Specified by:
getDataSource in interface Displayer
Returns:
the data source for this displayer, if set by setter

setDataSource

public void setDataSource(DataSource dataSource)
                   throws java.beans.PropertyVetoException
Description copied from interface: Displayer
Sets data source and registeres this displayer as data consumer. This is convenience method for integration with VCE development tools, you can connect displayers directly to data sources without using this method.

Specified by:
setDataSource in interface Displayer
Parameters:
dataSource - new data source of this displayer
Throws:
java.beans.PropertyVetoException - DOCUMENT ME!

getConverter

public Converter getConverter()
Description copied from interface: ConvertibleDisplayer
Returns the converter that is used with the displayer.

Specified by:
getConverter in interface ConvertibleDisplayer
Returns:

setConverter

public void setConverter(Converter converter)
                  throws java.beans.PropertyVetoException
Description copied from interface: ConvertibleDisplayer
Sets the Converter that is used when displaying value with this.

Specified by:
setConverter in interface ConvertibleDisplayer
Throws:
java.beans.PropertyVetoException

removeAllConsumers

public void removeAllConsumers()
Description copied from interface: DataSource
Removes all consumers from data source and releases all resources and bindings allocated inside datasource to the consumers.

Specified by:
removeAllConsumers in interface DataSource

getInfoDialog

public InfoDialog getInfoDialog()
Returns the InfoDialog hooked to this Displayer.

Returns:

getPopupManager

public PopupManager getPopupManager()
Description copied from interface: PopupManageable
Returns popup manager, which manages popup menu.

Specified by:
getPopupManager in interface PopupManageable
Overrides:
getPopupManager in class Slider
Returns:
returns popup manager, which manages popup menu

main

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


Copyright © 2010. All Rights Reserved.