DESY ACOP Beans Home

com.cosylab.gui
Class WheelswitchDisplayer

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.AbstractDisplayerPanel
                      extended by com.cosylab.gui.components.AbstractNumericDisplayerPanel
                          extended by com.cosylab.gui.components.LabelledWheelswitch
                              extended by com.cosylab.gui.WheelswitchDisplayer
All Implemented Interfaces:
StateOriginator, 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:
AcopWheelswitch

public class WheelswitchDisplayer
extends LabelledWheelswitch
implements DoubleDisplayer, DataSource, ConvertibleDisplayer

WheelswitchDisplayer is simple implementation of Displayer interface based on LabelledWheelswitch.

Since:
Nov 24, 2003.
Version:
$Id: WheelswitchDisplayer.java,v 1.12 2008-04-22 12:31:02 jbobnar Exp $
Author:
Igor Kriznar
See Also:
Serialized Form

Nested Class Summary
 
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
 
Fields inherited from class com.cosylab.gui.components.LabelledWheelswitch
VALUE
 
Fields inherited from class com.cosylab.gui.components.AbstractDisplayerPanel
DYNAMIC_LAYOUT, HORIZONTAL_LAYOUT, VERTICAL_LAYOUT
 
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
WheelswitchDisplayer()
          Creates WheelswitchDisplayer displayer.
WheelswitchDisplayer(double newValue)
          Creates WheelswitchDisplayer displayer.
 
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 popum manager for adding popup actions.
 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 GUI updates are suspended.
static void main(java.lang.String[] arg0)
           
 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 updates of GUI component.
 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 all updates of displayer.
 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.LabelledWheelswitch
addSetListener, getCustomizer, getDigitsTakeUpAllSpace, getFormatter, getMaximum, getMinimum, getNumberOfAllDigits, getState, getValue, getValueComponent, getWheelswitch, internalSetEnabled, internalSetEnhanced, internalSetFormat, internalSetResizable, isAnimated, isEditable, isTiltingEnabled, layoutValueAndTitleAndUnits, layoutValueAndTitleAndUnitsAndBounds, layoutValueAndUnits, layoutValueAndUnitsAndBounds, removeSetListener, setAnimated, setBackground, setDigitsTakeUpAllSpace, setEditable, setFormatter, setMaximum, setMaxMin, setMinimum, setNumberOfAllDigits, setPopupEnabled, setState, setTiltingEnabled, setTitleMaximumFontSize, setTitleMinimumFontSize, setUnits, setUnitsVisible, setValue
 
Methods inherited from class com.cosylab.gui.components.AbstractNumericDisplayerPanel
getFormat, getLayoutOrientation, getMaxComponent, getMaximumValue, getMinComponent, getMinimumValue, getNumberType, getUnits, getUnitsComponent, internalSetMaximum, internalSetMinimum, internalSetTitle, internalSetUnits, isBoundsVisible, isUnitsShownWithTitle, isUnitsVisible, layoutDisplayer, layoutValueAndBounds, layoutValueAndTitleAndBounds, setBoundsVisible, setForeground, setFormat, setLayoutOrientation, setMaximumValue, setMinimumValue, setNumberType, setTransferHandler, setUnitsShownWithTitle
 
Methods inherited from class com.cosylab.gui.components.AbstractDisplayerPanel
getTitle, getTitleComponent, getTitleMaximumFontSize, getTitleMinimumFontSize, isDragEnabled, isDropEnabled, isEnhanced, isPopupEnabled, isResizable, isTitleVisible, layoutValue, layoutValueAndTitle, setDragEnabled, setDropEnabled, setEnabled, setEnhanced, setResizable, setTitle, setTitleVisible
 
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, 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, setToolTipText, 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
 

Constructor Detail

WheelswitchDisplayer

public WheelswitchDisplayer(double newValue)
Creates WheelswitchDisplayer displayer.

Parameters:
newValue -

WheelswitchDisplayer

public WheelswitchDisplayer()
Creates WheelswitchDisplayer displayer.

Method Detail

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

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

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

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

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

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

suspend

public void suspend()
Description copied from interface: CommonDisplayer
Suspends all updates of displayer. Displayer might receive data change updates, but does not call redraw on GUI components, which is time and CPU consuming.

Specified by:
suspend in interface CommonDisplayer

resume

public void resume()
Description copied from interface: CommonDisplayer
Resumes updates of GUI component.

Specified by:
resume in interface CommonDisplayer
See Also:
CommonDisplayer.suspend()

isSuspended

public boolean isSuspended()
Description copied from interface: CommonDisplayer
Returns true if GUI updates are suspended.

Specified by:
isSuspended in interface CommonDisplayer
Returns:
true if GUI updates are suspended

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

updateValue

public void updateValue(long timestamp,
                        double value)
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

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)

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

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

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

destroy

public void destroy()

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

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 class: AbstractDisplayerPanel
Returns popum manager for adding popup actions.

Specified by:
getPopupManager in interface PopupManageable
Overrides:
getPopupManager in class AbstractDisplayerPanel
Returns:
returns popup manager, which manages popup menu
See Also:
PopupManageable.getPopupManager()

main

public static void main(java.lang.String[] arg0)
Parameters:
arg0 -


Copyright © 2010. All Rights Reserved.