public class JUComboBoxBinding extends JUComboBoxCtrlBinding implements java.awt.event.ActionListener, javax.swing.MutableComboBoxModel
A combobox can be bound in the following ways:
This class also implements ActionListener interface and listens to ActionEvents from the bound combobox. On an action event, it either performs an update of the target ViewObject attributes, or iterates a target ViewObject as per the list operation mode set in the constructor.
mCellRenderer, mComboModel, mEditor, mSettingValue
DH_CONTROL_TYPE, DH_DISPLAY_HEIGHT, DH_DISPLAY_HINT, DH_DISPLAY_WIDTH, DH_FORMAT, DH_LABEL, DH_TOOLTIP, LIST_ADD_NULL_AT_END, LIST_ADD_NULL_AT_START, LIST_ADD_NULL_NOWHERE, LIST_ADD_NULL_UNINIT, LIST_OPER_MULTI_SELECT, LIST_OPER_NAVIGATE, LIST_OPER_SET_ATTRIBUTE, LIST_OPER_SET_DELIMITED_ATTRIBUTE, LISTITEM_DisplayValues, LISTITEM_Index, LISTITEM_Prompt, LISTITEM_Selected, LISTITEM_SelectedIndex, LISTITEM_SelectedIndices, LOV_SRC_ATTRNAMES, LOV_SRC_EL_EXPR, LOV_SRC_ROW, LOV_SRC_ROW_DATA, mFirstDisplayAttr, mListAttrNames, mListDisplayAttrNames, mListIterBinding, mNullValueFlag, mSingleAttrList, mStaticList, mValueList, ROW
ATTR_ATTRIBUTE, ATTR_ATTRIBUTE_DEF, ATTR_ATTRIBUTE_DEFS, ATTR_ATTRIBUTE_VALUE, ATTR_ATTRIBUTE_VALUES, ATTR_ATTRIBUTES, ATTR_AUTOSUBMIT, ATTR_CATEGORY, ATTR_DISPLAY_HEIGHT, ATTR_DISPLAY_HINT, ATTR_DISPLAY_WIDTH, ATTR_FIELD_ORDER, ATTR_FORMAT, ATTR_FORMATS, ATTR_HINTS, ATTR_INPUT_VALUE, ATTR_LABEL, ATTR_LABELS, ATTR_LABELSET, ATTR_MANDATORY, ATTR_PATH, ATTR_TOOLTIP, ATTR_UPDATEABLE, ATTR_VIEWABLE, DATACHANGE_EVENT_POLICY, EMPTY_STRING, GET_ALLOWS, mAttrs, mHasInputVal, mInputVal, SEP_LIST_DISPLAY
ATTR_CURRENTROW, ATTR_DEF, ATTR_ERROR, ATTR_ERRORS, ATTR_FULLNAME, ATTR_ITER, ATTR_NAME, DC_BINDING_ERROR, mAttributeListener, mInternalGet_KeyResolved, mPermission, mPermissionInfo, ROW_KEY_STR
MAP_NULL_VALUE
Modifier | Constructor and Description |
---|---|
protected |
JUComboBoxBinding(java.lang.Object cb,
DCIteratorBinding iterBinding,
java.lang.String[] attrNames,
java.lang.String lbName)
*** For internal framework use only ***
|
|
JUComboBoxBinding(java.lang.Object cb,
JUIteratorBinding iterBinding,
java.lang.String[] attrNames,
int listOperMode)
Binds a ComboBox to a RowSet associated with the given iterator binding and
based on listOperMode setting, either iterates the currency on the target iterator
or updates the attribute value for the given attribute (in attrNames) in the current
row in the target RowSet.
|
|
JUComboBoxBinding(java.lang.Object cb,
JUIteratorBinding iterBinding,
java.lang.String[] attrNames,
JUIteratorBinding listIterBinding,
java.lang.String[] listAttrNames,
java.lang.String[] listDisplayAttrNames)
Binds separate ViewObject/RowSets for display and update to the same ComboBox.
|
|
JUComboBoxBinding(java.lang.Object cb,
JUIteratorBinding iterBinding,
java.lang.String[] attrNames,
java.lang.Object[] valueList)
Binds a combobox to an attribute in the associated RowSet.
|
Modifier and Type | Method and Description |
---|---|
int |
getDisplayWidth()
Returns the display width for this attribute.
|
protected boolean |
hasServerBindingChanged() |
protected void |
init(javax.swing.JComboBox cb) |
protected void |
initFromServerBinding() |
protected void |
setupListItems(boolean clean,
boolean keepSelectedIndex)
This method is used by the framwork to setup the list of values (LOV) that will be displayed in
this combobox.
|
void |
updateValuesFromRow(Row row)
Updates the control-binding and hence the control with attribute values from
the attributes of this Row.
|
actionPerformed, addControlToPanel, addElement, addListDataListener, createEnumerationBinding, createLovBinding, createNavigationBinding, getComboDisplayAttrs, getControlCombo, getControlModel, getDisplayData, getElementAt, getInstance, getInstance, getModelImpl, getNullValueString, getSelectedItem, getSize, getValueAt, insertElementAt, isControlQueriable, isRefreshingList, isViewInitialized, refreshComboList, refreshControl, refreshListItem, release, removeElement, removeElementAt, removeListDataListener, setDataValueAt, setSelectedIndex, setSelectedItem, setValueAt, updateTargetFromSelectedValue, updateValueToCurrentRow
addBindingChangeListener, addNullAndSetValueList, addRowToMRU, addSelectionToMRU, bindRowSetIterator, clearMRU, clearSelectedIndices, convertValueList, createListIterBinding, createRowSetIterator, filterList, findAndUpdateSelectedIndex, findListIndex, findListIndex, findMatchingListValue, findOrCreateLOVDialogIteratorBinding, findShuttleAvailableRows, findShuttleSelectedRows, findValue, getAttributeDefs, getComboDisplayAttributeCount, getDelimiter, getDerivedAttrNames, getDisplayAttributeDefs, getDisplayCriteriaName, getDisplayHints, getDisplayListIterator, getFilteredRowSetIterator, getFilteredRowSetIteratorWithCaseCheck, getFirstDisplayAttrDef, getInputValueInRow, getInputValueOnError, getIterBindingDefOptions, getListAttrNames, getListBindingName, getListDisplayAttrNames, getListIterBinding, getListOperMode, getListRowSetIterator, getLovRowAttributeValue, getLovSourceOption, getMatchingRows, getMatchingRowsWithBaseRow, getMRUSize, getMRUString, getNullValueFlag, getNullValueIndex, getPreferredListIterBinding, getPreferredListMode, getPreferredListRowSetIterator, getSelectedIndex, getSelectedIndexValue, getSelectedIndices, getSelectedValue, getSelectedValues, getSelectionAttributeName, getSelectionIndices, getServerBindingName, getTargetRowData, getValueFromList, getValueList, handleFilteredList, hasMRU, hasNullValue, initResources, internalGet, internalGetDisplayWidth, internalInitListBinding, internalPut, isAutoSubmit, isMandatory, isSingleAttrList, isUpdateable, iteratorClosed, iteratorReset, matchTargetWithLov, moveDown, moveToBottom, moveToTop, moveUp, navigated, processNewInputValue, put, rangeRefreshed, rangeScrolled, refreshFromServerListBinding, releaseLOVDialogIteratorBinding, removeBindingChangeListener, resetAttributeDefs, resetShuttle, rowDeleted, rowInserted, rowUpdated, setAllowBlindMatchInFilter, setAttributeFromValueList, setDef, setFetchDataOnSetup, setInputValueInRow, setListIterBinding, setListOperMode, setListValueAsSelected, setNullValueProperties, setPreferredListMode, setSelectedIndexValue, setSelectedIndices, setSelectionIndices, setServerBindingName, setStaticList, setTargetAttrsFromLovRow, setTargetAttrsFromLovRowAndUpdateMRU, setValueList, shuttle, toString, updateNavigated, usesServerBinding
createAttributeBinding, setControlEnabled, updateValuesFromRows
addBindingContainerChangeListenerForCtxEvent, addDataChangeListener, clearAttrDefs, clearEventsCache, compareAndSetAttribute, createAndNotifyDCE, createEventProducer, displayInShortForm, ensureVariableManager, eventForMyRow, fetchAttrDefs, findAttributeDef, generateDCE, getAttribute, getAttribute, getAttribute, getAttributeCount, getAttributeDef, getAttributeDef, getAttributeDefsForRow, getAttributeFromRow, getAttributeFromRow, getAttributeFromRow, getAttributeFromRow, getAttributeFromRow, getAttributeIndexOf, getAttributeNames, getAttributes, getAttributes, getAttributeUIHelper, getAttributeValidators, getAttributeValidators, getAttributeValue, getAttributeValue, getAttributeValueFromRow, getAttributeValues, getAttributeValues, getAttrViewExpressions, getBindingHint, getCachedEvents, getCategory, getChangeEventPolicy, getColumnNameForQuery, getControlType, getDataChangeEventPolicy, getDataChangeListener, getDisplayHeight, getDisplayHint, getError, getErrors, getEventProducer, getFieldOrder, getFormat, getFormats, getFormattedAttributeValue, getHint, getHint, getHints, getInputErrorsForRowKey, getInputValue, getInputValue, getInputValueHandler, getIteratorBindingForDCE, getIteratorRenderHint, getLabel, getLabel, getLabels, getLabelSet, getLastEventId, getLocaleContext, getMasterKeyPathForDCE, getMergedAttributeValues, getPath, getPermissionDef, getPermissionHolder, getPermissionInfo, getState, getTooltip, getTooltip, hasEventProducer, hasFormatInformation, hasVariables, internalGetAttributeIndexOf, internalGetDataControlReference, internalGetRow, internalHasPermission, internalHasPermission, isArrayIteratorType, isAttributeMandatory, isAttributeUpdateable, isAttributeUpdateable, isAttributeUpdateable, isAttributeUpdateable, isEventsCachingEnabled, isNewInputValue, isNullInsertKeyPathForDCE, isPushDataChangeEvents, isPushOrPollDataChangeEvents, isViewable, lookupAttributeDef, notifyDataChangeEvent, notifyDataExceptionEvent, notifyDCE, pinDataControl, processInputException, removeAttrName, removeDataChangeListener, removeFromDCExceptions, resetInputState, resolvePath, restoreFromState, setArrayIteratorType, setAttribute, setAttribute, setAttributeInRow, setAttributeInRow, setAttributeInRow, setAttributeInRow, setAttributeInRow, setAttributeInRow, setAttributeNames, setAttributes, setAttributeValue, setAttributeValuesInRow, setAttrViewExpressions, setError, setEventProducer, setEventsCaching, setInputValue, setInputValue, setInputValueHandler, setIteratorBinding, setListener, setNullValueString, startEvents, stopEditing, stopEvents, updateRangeScrolled, updateRow, updateRowDeleted, updateRowInserted, useRowSpecificHints, validateInputValue
getCurrentRow, getFormBinding, getIteratorBinding, reportException, setFormBinding
addToDCExceptions, evaluateBooleanExpression, executeQuery, executeQueryIfNeeded, get, getAllRowsInRange, getApplicationModule, getAttributeListener, getBindingContainer, getControl, getDCIteratorBinding, getDef, getDefFullName, getDefName, getFullName, getLayoutObject, getName, getPermission, getPermissionTargetName, getRowAtRangeIndex, getRowIterator, getTransaction, getViewableExpr, getViewObject, hasAttributeListener, hashCode, internalGetDataControl, internalSetName, isAssociatedWithDataControl, isControlViewable, isReleased, needsEstimatedRowCount, release, reportException, resetAttributeExceptionInRow, setBindingContainer, setControl, setDataControlPinned, setListener, setName, setViewableExpr
entrySet, equals, setThrowIfPropertyNotFoundOnGet
clear, clone, containsKey, containsValue, isEmpty, keySet, putAll, remove, size, values
finalize, getClass, notify, notifyAll, wait, wait, wait
addElement, insertElementAt, removeElement, removeElementAt
addListDataListener, getElementAt, getSize, removeListDataListener
getErrors, getInputValue, getLabel, setInputValue, validateInputValue
setListener
getName, getPath, release, resolvePath, setListener
getDefFullName, getDefName, getFullName, getName
public JUComboBoxBinding(java.lang.Object cb, JUIteratorBinding iterBinding, java.lang.String[] attrNames, int listOperMode)
cb
- ComboBox with which to associate this binding.iterBinding
- Provides the RowSet from which this binding accesses data
to display in the combobox and optionally the current row for which attribute(s)
are to be updated.attrNames
- An ordered array of attribute names to display and optionally update
in a ViewObject.listOperMode
- Can be one of two values:
public JUComboBoxBinding(java.lang.Object cb, JUIteratorBinding iterBinding, java.lang.String[] attrNames, java.lang.Object[] valueList)
cb
- ComboBox with which to associate this binding.iterBinding
- Provides the RowSet that is used to update current selection
from the combobox into the current row in the rowset.attrNames
- Provides the name of an attribute (only one attribute is updateable in
this mode).valueList
- A static list of values displayed as options in the combobox from which
to select.protected JUComboBoxBinding(java.lang.Object cb, DCIteratorBinding iterBinding, java.lang.String[] attrNames, java.lang.String lbName)
public JUComboBoxBinding(java.lang.Object cb, JUIteratorBinding iterBinding, java.lang.String[] attrNames, JUIteratorBinding listIterBinding, java.lang.String[] listAttrNames, java.lang.String[] listDisplayAttrNames)
cb
- JComboBox or JUComboBox to associate this binding with.iterBinding
- Provides the RowSet in which the current row is updated
based on selection in the combobox.attrNames
- An ordered array of attribute names to update
in a ViewObject. This list should have the same number of attributes as
in listAttrNames, which provides the corresponding attribute names from the
display ViewObject/RowSet.listIterBinding
- Provides the RowSet which is used to display data in the
combobox.listAttrNames
- An ordered list of attribute names, which are used to
get the values to update into the attributes from the attrNames list in the
target ViewObject. If this list is null, then the attribute names for display
are set the same as attrNames.listDisplayAttrNames
- An ordered list of attribute names that specify
the attributes to display from rows in the display ViewObject/RowSet.
If this list is null, then attribute names are assumed to be same as in attrNames.protected void init(javax.swing.JComboBox cb)
init
in class JUComboBoxCtrlBinding
protected void initFromServerBinding()
initFromServerBinding
in class JUCtrlListBinding
protected void setupListItems(boolean clean, boolean keepSelectedIndex)
setupListItems
in class JUComboBoxCtrlBinding
clean
- Controls whether to clean the existing entries in the combobox.keepSelectedIndex
- Controls whether to maintain current index as the selected index
after the display data is updated. If this value is true, the current index is maintained.
However if the current index is more than the number of items in the combobox, then the selection
is reset to the first item.protected boolean hasServerBindingChanged()
hasServerBindingChanged
in class JUCtrlValueBinding
public void updateValuesFromRow(Row row)
JUCtrlAttrsBinding
This method also enables/disables the Swing control based on the updateability of the first (Default) attribute to which this control is bound.
updateValuesFromRow
in class JUCtrlListBinding
public int getDisplayWidth()
JUCtrlValueBinding
Calling this on a control-binding that does not have an attribute will throw a NullPointerException
getDisplayWidth
in class JUCtrlListBinding