com.ibm.commons.swt.data.controls
Class DCComboBox

java.lang.Object
  extended by org.eclipse.swt.widgets.Widget
      extended by org.eclipse.swt.widgets.Control
          extended by org.eclipse.swt.widgets.Scrollable
              extended by org.eclipse.swt.widgets.Composite
                  extended by org.eclipse.swt.widgets.Combo
                      extended by com.ibm.commons.swt.controls.custom.CustomCombo
                          extended by com.ibm.commons.swt.data.controls.DCComboBox
All Implemented Interfaces:
com.ibm.commons.iloader.node.lookups.api.LookupListener, ICustomControl, IDataControl, IDataFieldControl, java.util.EventListener, org.eclipse.swt.graphics.Drawable

public class DCComboBox
extends CustomCombo
implements IDataFieldControl, com.ibm.commons.iloader.node.lookups.api.LookupListener

A Combo box control which gets its value (and sets its value) from (in) a data model.


Field Summary
 
Fields inherited from class org.eclipse.swt.widgets.Combo
LIMIT
 
Fields inherited from class org.eclipse.swt.widgets.Control
handle
 
Constructor Summary
DCComboBox(org.eclipse.swt.widgets.Composite parent, int style)
          Constructs a new instance of the class given the parent Composite, the style flags which are used to set the look/behavior of the control.
DCComboBox(org.eclipse.swt.widgets.Composite parent, int style, java.lang.String id)
          Constructs a new instance of the class given the parent Composite, the style flags which are used to set the look/behavior of the control, and an id property that can be used to programatically identify the control.
 
Method Summary
protected  void checkSubclass()
           
 java.lang.String getAttributeName()
          Description copied from com.ibm.commons.swt.data.controls.IDataFieldControl
Sets the name of the attribute that the control is associated with.
 org.eclipse.swt.widgets.Control getControl()
          Returns the control which is bound to the Data, in this case the DCComboBox control
 java.lang.String getCurValue()
          Returns the value currently stored in the data model corresponding to the attribute represented by this control.
 DataNode getDataNode()
          Returns the DataNode associated with this control.
 java.lang.String getFirstLineTitle()
          Used in conjunction with isFirstBlankLine().
 ILookup getLookup()
          Returns the lookup that is used to populate the contents of the control.
 java.lang.String getValue()
          Returns the value currently selected in the combo box.
 boolean isEditableLabels()
          Determines whether or not the values of the combo box are editable.
 boolean isFirstBlankLine()
          Returns whether or not the first item in the combo box should be null? The default value is false.
 void lookupChanged(ILookup lookup)
          Typically called by the lookup framework to notify controls when the values in a lookup object changed.
 void setAttributeName(java.lang.String attributeName)
          Description copied from com.ibm.commons.swt.data.controls.IDataFieldControl
Returns the name of the attribute that the control is associated with, may be null.
 void setDataNode(DataNode dataNode)
          Sets the DataNode associated with this control.
 void setDataNodeBinding(DataNodeBinding dataNodeBinding)
           
 void setEditableLabels(boolean editableLabels)
          Sets whether or not the values of the combo box are editable.
 void setFirstBlankLine(boolean firstBlankLine)
          Sets whether or not the first line in the combo box will be blank.
 void setFirstLineTitle(java.lang.String firstLineTitle)
          Used in conjunction with isFirstBlankLine().
 void setLookup(ILookup lookup)
          Sets the lookup used to populate the contents of the control.
 void setValue(java.lang.String value)
          Sets the value of the current control.
 
Methods inherited from class com.ibm.commons.swt.controls.custom.CustomCombo
computeSize, getCols, getId, setCols, setId
 
Methods inherited from class org.eclipse.swt.widgets.Combo
add, add, addModifyListener, addSelectionListener, addVerifyListener, clearSelection, copy, cut, deselect, deselectAll, getItem, getItemCount, getItemHeight, getItems, getListVisible, getOrientation, getSelection, getSelectionIndex, getText, getTextHeight, getTextLimit, getVisibleItemCount, indexOf, indexOf, paste, remove, remove, remove, removeAll, removeModifyListener, removeSelectionListener, removeVerifyListener, select, setItem, setItems, setListVisible, setOrientation, setSelection, setText, setTextLimit, setVisibleItemCount
 
Methods inherited from class org.eclipse.swt.widgets.Composite
changed, drawBackground, getBackgroundMode, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, layout, setBackgroundMode, setFocus, setLayout, setLayoutDeferred, setTabList
 
Methods inherited from class org.eclipse.swt.widgets.Scrollable
computeTrim, getBorderWidth, getClientArea, getHorizontalBar, getVerticalBar
 
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addDragDetectListener, addFocusListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTraverseListener, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getParent, getRegion, getShell, getSize, getToolTipText, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTraverseListener, setBackground, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setFont, setForeground, setLayoutData, setLocation, setLocation, setMenu, setParent, setRedraw, setRegion, setSize, setSize, setToolTipText, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update
 
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, checkWidget, dispose, getData, getData, getDisplay, getListeners, getStyle, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, reskin, setData, setData, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DCComboBox

public DCComboBox(org.eclipse.swt.widgets.Composite parent,
                  int style)
Constructs a new instance of the class given the parent Composite, the style flags which are used to set the look/behavior of the control.

The style value is either one of the style constants defined in class SWT which is applicable to instances of this class, or must be built by bitwise OR'ing together (that is, using the int "|" operator) two or more of those SWT style constants. Style bits are also inherited from superclasses.

Parameters:
parent - a Composite control which will be the parent of the new instance (CANNOT be null).
style - the style of control to construct

DCComboBox

public DCComboBox(org.eclipse.swt.widgets.Composite parent,
                  int style,
                  java.lang.String id)
Constructs a new instance of the class given the parent Composite, the style flags which are used to set the look/behavior of the control, and an id property that can be used to programatically identify the control.

The style value is either one of the style constants defined in class SWT which is applicable to instances of this class, or must be built by bitwise OR'ing together (that is, using the int "|" operator) two or more of those SWT style constants. Style bits are also inherited from superclasses.

Parameters:
parent - a Composite control which will be the parent of the new instance (CANNOT be null).
style - the style of control to construct
id - a String which can be used to programatically identify the control
Method Detail

getControl

public org.eclipse.swt.widgets.Control getControl()
Returns the control which is bound to the Data, in this case the DCComboBox control

Specified by:
getControl in interface IDataControl
Returns:

getLookup

public ILookup getLookup()
Returns the lookup that is used to populate the contents of the control.

Returns:
ILookup
See Also:
ILookup

setLookup

public void setLookup(ILookup lookup)
Sets the lookup used to populate the contents of the control. A lookup is basically a simple model whereby the value of the data set by the control differs with what appears in the UI, analogous to a key-value pair.

Parameters:
lookup -

lookupChanged

public void lookupChanged(ILookup lookup)
Typically called by the lookup framework to notify controls when the values in a lookup object changed.

Specified by:
lookupChanged in interface com.ibm.commons.iloader.node.lookups.api.LookupListener

getCurValue

public java.lang.String getCurValue()
Returns the value currently stored in the data model corresponding to the attribute represented by this control.

Returns:

getValue

public java.lang.String getValue()
Returns the value currently selected in the combo box. If a lookup is being used then the 'code' corresponding to the currently displayed 'value' is returned.

Returns:
String
See Also:
com.ibm.commons.swt.data.controls.DCComboBox.lookup

setValue

public void setValue(java.lang.String value)
Sets the value of the current control. Note, if a lookup is in use the value set via this method should correspond if possible to one of the 'codes' defined in the lookup.

Parameters:
value -
See Also:
com.ibm.commons.swt.data.controls.DCComboBox.lookup

checkSubclass

protected void checkSubclass()
Overrides:
checkSubclass in class CustomCombo

getDataNode

public DataNode getDataNode()
Returns the DataNode associated with this control. The DataNode is responsible for providing the model through which the control accesses data.

Returns:
com.ibm.commons.iloader.node.DataNode
See Also:
DataNode

setDataNode

public void setDataNode(DataNode dataNode)
Sets the DataNode associated with this control. The DataNode is responsible for providing the model through which the control accesses data.

See Also:
DataNode

setDataNodeBinding

public void setDataNodeBinding(DataNodeBinding dataNodeBinding)
Parameters:
dataNodeBinding -
See Also:
DataNodeBinding

getAttributeName

public java.lang.String getAttributeName()
Description copied from com.ibm.commons.swt.data.controls.IDataFieldControl
Sets the name of the attribute that the control is associated with.

Specified by:
getAttributeName in interface IDataFieldControl
Parameters:
attributeName -
Returns:

setAttributeName

public void setAttributeName(java.lang.String attributeName)
Description copied from com.ibm.commons.swt.data.controls.IDataFieldControl
Returns the name of the attribute that the control is associated with, may be null.

Specified by:
setAttributeName in interface IDataFieldControl

isFirstBlankLine

public boolean isFirstBlankLine()
Returns whether or not the first item in the combo box should be null? The default value is false. If true the first item in the combo will be null regardless of the values supplied via the lookup.

Returns:
boolean

setFirstBlankLine

public void setFirstBlankLine(boolean firstBlankLine)
Sets whether or not the first line in the combo box will be blank. If true the first line will be blank regardless of the values supplied via the lookup.

Parameters:
firstBlankLine -

getFirstLineTitle

public java.lang.String getFirstLineTitle()
Used in conjunction with isFirstBlankLine(). If the first line of the control is set to be blank then the title supplied by getFirstLineTitle() will be used as the text for the first line.

Returns:
String

setFirstLineTitle

public void setFirstLineTitle(java.lang.String firstLineTitle)
Used in conjunction with isFirstBlankLine(). If the first line of the control is set to be blank then the title set by setFirstLineTitle() will be used as the text for the first line.

Parameters:
String -

isEditableLabels

public boolean isEditableLabels()
Determines whether or not the values of the combo box are editable.

Returns:
boolean

setEditableLabels

public void setEditableLabels(boolean editableLabels)
Sets whether or not the values of the combo box are editable.

Parameters:
editableLabels -