com.altair.hwm.beans.utils
Class HWMRadioButton

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.altair.hwm.beans.utils.HWMRadioButton
All Implemented Interfaces:
HWMEventListener, IHWMControl, ITCLCodeCreator, java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.beans.PropertyChangeListener, java.io.Externalizable, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

public class HWMRadioButton
extends javax.swing.JPanel
implements IHWMControl, HWMEventListener, java.io.Externalizable, java.beans.PropertyChangeListener, java.awt.event.ActionListener, ITCLCodeCreator

Title: HWMRadioButton

Description: A radiobutton group bean. Very similar to the JRadioButton, with additional functionality that the user can specify the various radiobuttons that are contained in this ButtonGroup -- specified as properties of the bean

Company: Altair Engineering, Inc.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Field Summary
static java.lang.String ALIGNMENT_HORIZONTAL
           
static java.lang.String ALIGNMENT_VERTICAL
           
static java.lang.String PROP_ACTIONSCRIPT
           
static java.lang.String PROP_ALIGNMENT
           
static java.lang.String PROP_BACKGROUND_COLOR
           
static java.lang.String PROP_ENABLE
           
static java.lang.String PROP_ENTRIES
          List of property names for this bean for which propertyChange event will be fired
static java.lang.String PROP_FONT
           
static java.lang.String PROP_FOREGROUND_COLOR
           
static java.lang.String PROP_TOOLTIP
           
static java.lang.String PROP_VALUE
           
static java.lang.String PROP_VISIBLE
           
 
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, 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
HWMRadioButton()
          Constructor
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent event)
          Callback when an action is performed on any of the radi0o buttons
 void Disable()
          Providing "Disable" method rather than overriding java's "disable" method because of the following reasons: 1> disable is deprecated 2> It does nothing visually for some controls like button 3> setEnabled calls enable/disable in the base class once it changes the UI.
 void Enable()
          Providing "Enable" method rather than overriding java's "enable" method because of the following reasons: 1> enable is deprecated 2> It does nothing visually for some controls like button 3> setEnabled calls enable/disable in the base class once it changes the UI.
 HWMActionScript GetActionScript()
          Get the Java Script
 java.lang.String GetAlignment()
          Get the alignment to use for the radio buttons
 java.lang.String GetBeanName()
          Get the name of this bean (the name was assigned by the EPIC framework)
 java.util.Vector GetEntries()
          Gets the items listed in the combo box
 IHWMFrameWork GetFrameWork()
          Returns the interface using which a bean can communicate directly with the HWM application.
 java.lang.String GetSelected()
          Returns the currently selected string.
 java.lang.String getToolTipText()
          Returns the tooltip for the button.
 void HWMEventCallback(HWMEvent hwmEvent)
          This method is called when the execution of a method succeeds
 void OnExit()
          Invoked by the HWM application when the bean is being destroyed.
 void Play()
          The play method needs to execute the functionaliy.
 void propertyChange(java.beans.PropertyChangeEvent evt)
          This method gets called when a bound property is changed.
 void readExternal(java.io.ObjectInput objInput)
          Reads the properties of the bean
 void ReadProperties()
          Get the required properties from the datamodel and initialize self
 void Run()
          Invoked by the HWM application when all the beans are loaded and the application can run.
 void SaveProperties()
          Save the required properties in the datamodel (so that they persist)
 void SetActionScript(HWMActionScript hwmScript)
          Set the Java Script
 void SetAlignment(java.lang.String strAlignment)
          Set the alignment to use for the radio buttons
 void SetBeanName(java.lang.String strBeanName)
          Set the name of the bean
 void setEnabled(boolean bEnableState)
          Enables the component so that items can be selected.
 void SetEntries(java.util.Vector vecItems)
          Sets the list of items in the combobox
 void SetEntries(java.util.Vector vecItems, boolean bUpdateDataModel)
          Sets the list of items in the combobox
 void SetFrameWork(IHWMFrameWork hwmFrameWork)
          This method is called by the HWM Application to set the interface with which a bean can communicate directly with the HWM application.
 void SetSelected(java.lang.String strSelected)
          Returns the currently selected string.
 void setToolTipText(java.lang.String strToolTip)
          Sets the tooltip for the component.
 void setVisible(boolean bVisibleState)
          Makes the component visible or invisible.
 java.lang.String TCLCreateAdditionalEventProcs()
          This method rerurns the TCL statement string for any additional procedures that is requred for the bean.
 java.lang.String TCLCreateExec()
          This method returns the TCL statement string that performs the execution of script associated with the bean.
 java.lang.String TCLCreateGetDataFromDataModel()
          This method returns the TCL statement string that gets the data in the datamodel.
 java.lang.String TCLCreateMemberVariables()
          This method returns the TCL statement string for all the memeber variables referred by the bean in question.
 java.lang.String TCLCreateOnDataModelChanged()
          This method returns the TCL statement string that implements the functionlaity requred to handle the "OnDataModelChanged" event.
 java.lang.String TCLCreateSetDataInDataModel()
          This method returns the TCL statement string that sets the data in the datamodel.
 java.lang.String TCLCreateUI()
          This method returns the TCL statement string for creating the GUI for the bean in question.
 void writeExternal(java.io.ObjectOutput objOutput)
          Writes the properties of the bean
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, 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, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setTransferHandler, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, 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, 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
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ALIGNMENT_VERTICAL

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

ALIGNMENT_HORIZONTAL

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

PROP_ENTRIES

public static final java.lang.String PROP_ENTRIES
List of property names for this bean for which propertyChange event will be fired

See Also:
Constant Field Values

PROP_VALUE

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

PROP_ENABLE

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

PROP_VISIBLE

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

PROP_FONT

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

PROP_FOREGROUND_COLOR

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

PROP_BACKGROUND_COLOR

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

PROP_ACTIONSCRIPT

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

PROP_TOOLTIP

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

PROP_ALIGNMENT

public static final java.lang.String PROP_ALIGNMENT
See Also:
Constant Field Values
Constructor Detail

HWMRadioButton

public HWMRadioButton()
Constructor

Method Detail

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent event)
Callback when an action is performed on any of the radi0o buttons

Specified by:
actionPerformed in interface java.awt.event.ActionListener

propertyChange

public void propertyChange(java.beans.PropertyChangeEvent evt)
This method gets called when a bound property is changed.

Specified by:
propertyChange in interface java.beans.PropertyChangeListener
Parameters:
evt - - A PropertyChangeEvent object describing the event source and the property that has changed.

GetActionScript

public HWMActionScript GetActionScript()
Get the Java Script

Returns:
The script to execute

SetActionScript

public void SetActionScript(HWMActionScript hwmScript)
Set the Java Script

Parameters:
hwmScript - The ActionScript instance

SetAlignment

public void SetAlignment(java.lang.String strAlignment)
Set the alignment to use for the radio buttons


GetAlignment

public java.lang.String GetAlignment()
Get the alignment to use for the radio buttons


GetSelected

public java.lang.String GetSelected()
Returns the currently selected string.

Returns:
the currently selected list object from the data model

SetSelected

public void SetSelected(java.lang.String strSelected)
Returns the currently selected string.

Parameters:
strSelected - - The currently selected item in the radio group

getToolTipText

public java.lang.String getToolTipText()
Returns the tooltip for the button. The reason we override this method is that if there is no tooltip to show, then the tooltip will be null. But if it is null, it will not show up in the properties.

Overrides:
getToolTipText in class javax.swing.JComponent
Returns:
String Tooltip for the button

setToolTipText

public void setToolTipText(java.lang.String strToolTip)
Sets the tooltip for the component. The reason we override this method is that if there is no tooltip to show, then the tooltip should be null. But the property panel will set an empty string instead of null. If the tooltip is an empty string, a black dot is shown. To avoid this problem, we set the tooltip text to null if there is no tooltip to be shown.

Overrides:
setToolTipText in class javax.swing.JComponent
Parameters:
strToolTip - Tooltip for the button

setEnabled

public void setEnabled(boolean bEnableState)
Enables the component so that items can be selected. When the combo box is disabled, items cannot be selected and values cannot be typed into its field (if it is editable).

Overrides:
setEnabled in class javax.swing.JComponent
Parameters:
bEnableState - - a boolean value, where true enables the component and false disables it

setVisible

public void setVisible(boolean bVisibleState)
Makes the component visible or invisible. Overrides Component.setVisible.

Overrides:
setVisible in class javax.swing.JComponent
Parameters:
bVisibleState - - true to make the component visible

Enable

public void Enable()
Providing "Enable" method rather than overriding java's "enable" method because of the following reasons: 1> enable is deprecated 2> It does nothing visually for some controls like button 3> setEnabled calls enable/disable in the base class once it changes the UI. So overriding enable or disable and then invoking setEnabled will lead to a loop where this class's enable/disable will call setEnabled on the super class and that would in turn call enable/disable in this class.


Disable

public void Disable()
Providing "Disable" method rather than overriding java's "disable" method because of the following reasons: 1> disable is deprecated 2> It does nothing visually for some controls like button 3> setEnabled calls enable/disable in the base class once it changes the UI. So overriding enable or disable and then invoking setEnabled will lead to a loop where this class's enable/disable will call setEnabled on the super class and that would in turn call enable/disable in this class.


SetEntries

public void SetEntries(java.util.Vector vecItems)
Sets the list of items in the combobox

Parameters:
vecItems - Vector of objects to be listed in the combo box

SetEntries

public void SetEntries(java.util.Vector vecItems,
                       boolean bUpdateDataModel)
Sets the list of items in the combobox

Parameters:
vecItems - Vector of objects to be listed in the combo box

GetEntries

public java.util.Vector GetEntries()
Gets the items listed in the combo box

Returns:
Vector of objects listed in the combo box

SaveProperties

public void SaveProperties()
Save the required properties in the datamodel (so that they persist)


ReadProperties

public void ReadProperties()
Get the required properties from the datamodel and initialize self


writeExternal

public void writeExternal(java.io.ObjectOutput objOutput)
                   throws java.io.IOException
Writes the properties of the bean

Specified by:
writeExternal in interface java.io.Externalizable
Parameters:
objOutput - ObjectOuput stream to which the properties are written
Throws:
java.io.IOException

readExternal

public void readExternal(java.io.ObjectInput objInput)
                  throws java.io.IOException,
                         java.lang.ClassNotFoundException
Reads the properties of the bean

Specified by:
readExternal in interface java.io.Externalizable
Parameters:
objInput - ObjectInput stream from which the properties are read
Throws:
java.io.IOException
java.lang.ClassNotFoundException

HWMEventCallback

public void HWMEventCallback(HWMEvent hwmEvent)
This method is called when the execution of a method succeeds

Specified by:
HWMEventCallback in interface HWMEventListener
Parameters:
hwmEvent - The event object that contains the event information

SetFrameWork

public void SetFrameWork(IHWMFrameWork hwmFrameWork)
This method is called by the HWM Application to set the interface with which a bean can communicate directly with the HWM application.

Specified by:
SetFrameWork in interface IHWMControl
Parameters:
hwmFrameWork - The interface with which a bean can communicate with the HWM application.

GetFrameWork

public IHWMFrameWork GetFrameWork()
Returns the interface using which a bean can communicate directly with the HWM application.

Returns:
IHWMFrameWork The interface with which a bean can communicate with the HWM application.

SetBeanName

public void SetBeanName(java.lang.String strBeanName)
Set the name of the bean

Specified by:
SetBeanName in interface IHWMControl
Parameters:
strBeanName - The name of this bean as the framework knows it to be. Will be useful, if the bean chooses to scope its data in the datamodel - especially if multiple instances of the same bean appear in the process

GetBeanName

public java.lang.String GetBeanName()
Get the name of this bean (the name was assigned by the EPIC framework)

Returns:
String The bean name

OnExit

public void OnExit()
Invoked by the HWM application when the bean is being destroyed. Any uninitializations to be done, can be done here by overriding this method.

Specified by:
OnExit in interface IHWMControl

Run

public void Run()
Invoked by the HWM application when all the beans are loaded and the application can run. Beans that need to perform some action once all the beans are loaded can do it here. The container will call 'Run' on all the beans that have implemented the IHWMControl. The order will be: a> First call "Run" on all the beans in pages associated with a task. Begin with the first task. b> Call 'Run' on rest of the pages (which are not associated with a task). The pages are selected based on their order of creation. c> Within a page, the beans are invoked depending on the order of their creation.

Specified by:
Run in interface IHWMControl

Play

public void Play()
The play method needs to execute the functionaliy. This may be invoked in the replay mode.

Specified by:
Play in interface IHWMControl

TCLCreateUI

public java.lang.String TCLCreateUI()
This method returns the TCL statement string for creating the GUI for the bean in question.

Specified by:
TCLCreateUI in interface ITCLCodeCreator

TCLCreateMemberVariables

public java.lang.String TCLCreateMemberVariables()
This method returns the TCL statement string for all the memeber variables referred by the bean in question. The code generated by this method goes in the "DisplayWnd" procedure of the task.

Specified by:
TCLCreateMemberVariables in interface ITCLCodeCreator

TCLCreateSetDataInDataModel

public java.lang.String TCLCreateSetDataInDataModel()
This method returns the TCL statement string that sets the data in the datamodel. The code generated by this method goes in the SetDataInDataModel code of the Task.

Specified by:
TCLCreateSetDataInDataModel in interface ITCLCodeCreator

TCLCreateGetDataFromDataModel

public java.lang.String TCLCreateGetDataFromDataModel()
This method returns the TCL statement string that gets the data in the datamodel. The code generated by this method goes in the GetDataFromDataModel code of the Task. The bean in question will generate the equivalent TCL code.

Specified by:
TCLCreateGetDataFromDataModel in interface ITCLCodeCreator

TCLCreateExec

public java.lang.String TCLCreateExec()
This method returns the TCL statement string that performs the execution of script associated with the bean. The code generated goes into the "Exec" procedure of the task. The bean in question will generate the TCL code.

Specified by:
TCLCreateExec in interface ITCLCodeCreator

TCLCreateAdditionalEventProcs

public java.lang.String TCLCreateAdditionalEventProcs()
This method rerurns the TCL statement string for any additional procedures that is requred for the bean. For e.g: In the case of a "Browse" button, there should be a "OnBrowseFile" procedure which is the callback for the "Browse" button. The TCL equivalent code ffor creating that proceudre will be returned by this methos. The bean in question will implement the required procediures code generation.

Specified by:
TCLCreateAdditionalEventProcs in interface ITCLCodeCreator

TCLCreateOnDataModelChanged

public java.lang.String TCLCreateOnDataModelChanged()
This method returns the TCL statement string that implements the functionlaity requred to handle the "OnDataModelChanged" event. If the bean in question needs to be interested in updating itself, then the bean will be implementing the mthod to return the TCL code.

Specified by:
TCLCreateOnDataModelChanged in interface ITCLCodeCreator