|
Oracle ADF Model and Business Components API Reference 10.1.2 B14022-01 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.util.AbstractMap oracle.jbo.common.JboAbstractMap oracle.adf.model.binding.DCControlBinding oracle.jbo.uicli.binding.JUControlBinding oracle.jbo.uicli.binding.JUCtrlValueBinding oracle.jbo.uicli.binding.JUCtrlAttrsBinding oracle.jbo.uicli.binding.JUCtrlListBinding oracle.jbo.uicli.jui.JUComboBoxBinding
Implements binding a Swing JComboBox to a BC4J Attribute or ViewObject or as an LOV (list of values).
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.
Nested Class Summary |
Nested classes inherited from class java.util.Map |
java.util.Map.Entry |
Field Summary |
Fields inherited from class oracle.jbo.uicli.binding.JUCtrlListBinding |
DH_CONTROL_TYPE, DH_DISPLAY_HEIGHT, DH_DISPLAY_HINT, DH_DISPLAY_WIDTH, DH_FORMAT, DH_LABEL, DH_TOOLTIP, LIST_OPER_NAVIGATE, LIST_OPER_SET_ATTRIBUTE, LISTITEM_DisplayValues, LISTITEM_Index, LISTITEM_Prompt, LISTITEM_Selected, LISTITEM_SelectedIndex, mFirstDisplayAttr, mListAttrNames, mListDisplayAttrNames, mListIterBinding, mSingleAttrList, mStaticList, mValueList |
Fields inherited from class oracle.jbo.uicli.binding.JUCtrlValueBinding |
ATTR_ATTRIBUTE, ATTR_ATTRIBUTE_DEF, ATTR_ATTRIBUTE_DEFS, ATTR_ATTRIBUTE_VALUE, ATTR_ATTRIBUTE_VALUES, ATTR_ATTRIBUTES, ATTR_DISPLAY_HINT, ATTR_INPUT_VALUE, ATTR_LABEL, ATTR_LABELS, ATTR_LABELSET, ATTR_MANDATORY, ATTR_TOOLTIP, ATTR_UPDATEABLE, mHasInputVal, mInputVal, SEP_LIST_DISPLAY |
Fields inherited from class oracle.adf.model.binding.DCControlBinding |
ATTR_CURRENTROW, ATTR_DEF, ATTR_ERROR, ATTR_ERRORS, ATTR_FULLNAME, ATTR_ITER, ATTR_NAME, mInternalGet_KeyResolved, ROW_KEY_STR |
Constructor Summary | |
JUComboBoxBinding(javax.swing.JComboBox 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(javax.swing.JComboBox 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(javax.swing.JComboBox cb,
JUIteratorBinding iterBinding,
java.lang.String[] attrNames,
java.lang.Object[] valueList)
Binds a combobox to an attribute in the associated RowSet. |
Method Summary | |
void |
actionPerformed(java.awt.event.ActionEvent e)
Based on listOperMode, this binding either navigates the target rowset to the selected row or sets the attribute/attributes as based on the settings in the constructor. |
void |
addControlToPanel(java.lang.Object panel,
java.lang.Object layoutObject,
java.lang.Object layoutCons)
*** For internal framework use only *** |
void |
addElement(java.lang.Object obj)
|
void |
addListDataListener(javax.swing.event.ListDataListener l)
|
static javax.swing.MutableComboBoxModel |
createEnumerationBinding(JUFormBinding formBinding,
javax.swing.JComboBox control,
java.lang.String voInstanceName,
java.lang.String voIterName,
java.lang.String voIterBindingName,
java.lang.String attrName,
java.lang.Object[] values)
Use this method to bind a combobox control to a ViewObject/RowSet identified by voInstanceName when a static list of values are displayed in the combobox, and the combobox is used to display/update the same attribute in the same viewobject. |
static javax.swing.MutableComboBoxModel |
createLovBinding(JUFormBinding formBinding,
javax.swing.JComboBox control,
java.lang.String voInstanceName,
java.lang.String voIterName,
java.lang.String voIterBindingName,
java.lang.String[] voAttrNames,
java.lang.String lovVOInstanceName,
java.lang.String[] lovVOAttrNames,
java.lang.String[] lovVODisplayedAttrNames,
javax.swing.ListCellRenderer cellRenderer,
javax.swing.ComboBoxEditor editor)
Use this binding when two ViewObjects are to be used in this combobox: one for displaying the list of values and the other ViewObject the rows of which are updated. |
static javax.swing.MutableComboBoxModel |
createNavigationBinding(JUFormBinding formBinding,
javax.swing.JComboBox control,
java.lang.String voInstanceName,
java.lang.String voIterName,
java.lang.String voIterBindingName,
java.lang.String[] voAttrNames,
javax.swing.ListCellRenderer cellRenderer,
javax.swing.ComboBoxEditor editor)
Use this binding when the given combobox is used as a navigation control to iterate through a range or rows in a RowSet. |
java.lang.Object |
getControlModel(java.lang.Object control)
Gets the associated View's model object. |
java.lang.Object |
getElementAt(int index)
|
static javax.swing.MutableComboBoxModel |
getInstance(JUFormBinding formBinding,
javax.swing.JComboBox control,
java.lang.String voInstanceName,
java.lang.String voIterName,
java.lang.String voIterBindingName,
java.lang.String[] voAttrNames,
java.lang.String lovVOInstanceName,
java.lang.String[] lovVOAttrNames,
java.lang.String[] lovVODisplayedAttrNames,
javax.swing.ListCellRenderer cellRenderer,
javax.swing.ComboBoxEditor editor)
Deprecated. since 9.0.2 use createEnumerationBinding, createNavigationBinding or createLovBinding instead |
static javax.swing.MutableComboBoxModel |
getInstance(JUFormBinding formBinding,
javax.swing.JComboBox control,
java.lang.String voInstanceName,
java.lang.String voIterName,
java.lang.String voIterBindingName,
java.lang.String attrName,
java.lang.Object[] values)
Deprecated. since 9.0.2 use createEnumerationBinding, createNavigationBinding or createLovBinding instead |
protected javax.swing.MutableComboBoxModel |
getModelImpl(javax.swing.JComboBox control)
Sets the model reference in this binding class by using the current model in the combobox. |
java.lang.Object |
getSelectedItem()
|
int |
getSize()
|
java.lang.Object |
getValueAt(int attrIndex)
Returns the currently selected item from the list model. |
void |
insertElementAt(java.lang.Object obj,
int index)
|
protected boolean |
isControlQueriable()
Returns true, so that JTextComponents can participate in a query in the Find Mode of the containing panel. |
protected boolean |
isViewInitialized()
|
void |
refreshControl()
*** For internal framework use only *** |
void |
removeElement(java.lang.Object obj)
|
void |
removeElementAt(int index)
|
void |
removeListDataListener(javax.swing.event.ListDataListener l)
|
void |
setDataValueAt(java.lang.Object value,
int attrIndex)
Should be used by applications to update both the combobox selection and the correpsonding attributes in the current row of the target viewobject. |
void |
setSelectedIndex(int listIndex)
Sets the item at the given index as current selection in the listbox. |
void |
setSelectedItem(java.lang.Object anItem)
|
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 |
setValueAt(java.lang.Object value,
int attrIndex)
Finds the item in the combobox that matches the given value and sets it as the current item. |
protected void |
updateTargetFromSelectedValue(java.lang.Object val)
|
Methods inherited from class oracle.jbo.uicli.binding.JUCtrlAttrsBinding |
createAttributeBinding, setControlEnabled, updateNavigated, updateRangeScrolled, updateValuesFromRows |
Methods inherited from class oracle.jbo.uicli.binding.JUControlBinding |
getFormBinding, getIteratorBinding, reportException, setFormBinding |
Methods inherited from class oracle.adf.model.binding.DCControlBinding |
addToDCExceptions, executeQuery, executeQueryIfNeeded, get, getAllRowsInRange, getApplicationModule, getBindingContainer, getControl, getCurrentRow, getDCIteratorBinding, getDef, getDefFullName, getDefName, getFullName, getLayoutObject, getName, getRowAtRangeIndex, getRowIterator, getTransaction, getViewObject, hashCode, internalSetName, needsEstimatedRowCount, removeFromDCExceptions, reportException, resetAttributeExceptionInRow, setBindingContainer, setControl, setName |
Methods inherited from class oracle.jbo.common.JboAbstractMap |
entrySet, equals |
Methods inherited from class java.util.AbstractMap |
clear, clone, containsKey, containsValue, isEmpty, keySet, putAll, remove, size, values |
Methods inherited from class java.lang.Object |
finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface oracle.jbo.StructureDef |
getDefFullName, getDefName, getFullName, getName |
Constructor Detail |
public JUComboBoxBinding(javax.swing.JComboBox 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(javax.swing.JComboBox 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.public JUComboBoxBinding(javax.swing.JComboBox cb, JUIteratorBinding iterBinding, java.lang.String[] attrNames, JUIteratorBinding listIterBinding, java.lang.String[] listAttrNames, java.lang.String[] listDisplayAttrNames)
cb
- ComboBox 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.Method Detail |
protected javax.swing.MutableComboBoxModel getModelImpl(javax.swing.JComboBox control)
public void addControlToPanel(java.lang.Object panel, java.lang.Object layoutObject, java.lang.Object layoutCons)
addControlToPanel
in class JUCtrlListBinding
protected boolean isViewInitialized()
isViewInitialized
in class JUCtrlListBinding
protected void setupListItems(boolean clean, boolean keepSelectedIndex)
setupListItems
in class JUCtrlListBinding
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.public java.lang.Object getValueAt(int attrIndex)
getValueAt
in class JUCtrlListBinding
attrIndex
- This argument is ignored by this method.public void setValueAt(java.lang.Object value, int attrIndex)
setValueAt
in class JUCtrlListBinding
value
- This value is used in findMatchingListValue method to find out the item in
the combobox that represents the given value. If the value is not found, then no item is selected
in the list.attrIndex
- This argument is ignored by this method.public void setDataValueAt(java.lang.Object value, int attrIndex)
setDataValueAt
in class JUCtrlListBinding
value
- This value is used in findMatchingListValue method to find out the item in
the combobox that represents the given value. If the value is not found, then no item is selected
in the list.attrIndex
- This argument is ignored by this method.public void setSelectedIndex(int listIndex)
setSelectedIndex
in class JUCtrlListBinding
protected boolean isControlQueriable()
An application could create a subclass of this binding object and return false from this method to prevent the associated control from participating in find mode. Additionally, a BC4J attribute itself can control whether that attribute can participate in Query or not. That property takes precedence over this method's return, if this method returns true. In other words, if this binding is bound to a CLOB attribute type and the attribute definition for that attribute indicates that it is not queriable, then the default behavior of JUPanelBinding in Find mode will be to disable this binding's control, even though this method returns true.
isControlQueriable
in class JUCtrlListBinding
public void actionPerformed(java.awt.event.ActionEvent e)
actionPerformed
in interface java.awt.event.ActionListener
protected void updateTargetFromSelectedValue(java.lang.Object val)
updateTargetFromSelectedValue
in class JUCtrlListBinding
public void setSelectedItem(java.lang.Object anItem)
setSelectedItem
in interface javax.swing.ComboBoxModel
public java.lang.Object getSelectedItem()
getSelectedItem
in interface javax.swing.ComboBoxModel
public int getSize()
getSize
in interface javax.swing.ListModel
public java.lang.Object getElementAt(int index)
getElementAt
in interface javax.swing.ListModel
public void addListDataListener(javax.swing.event.ListDataListener l)
addListDataListener
in interface javax.swing.ListModel
public void removeListDataListener(javax.swing.event.ListDataListener l)
removeListDataListener
in interface javax.swing.ListModel
public void addElement(java.lang.Object obj)
addElement
in interface javax.swing.MutableComboBoxModel
public void removeElement(java.lang.Object obj)
removeElement
in interface javax.swing.MutableComboBoxModel
public void insertElementAt(java.lang.Object obj, int index)
insertElementAt
in interface javax.swing.MutableComboBoxModel
public void removeElementAt(int index)
removeElementAt
in interface javax.swing.MutableComboBoxModel
public java.lang.Object getControlModel(java.lang.Object control)
getControlModel
in class DCControlBinding
public void refreshControl()
JUCtrlAttrsBinding
Updates the values in a control that is bound using an Iterator already in use. (a valid row iterator) If you do not call this method, your control won't update unless you refresh the Iterator.
refreshControl
in class JUCtrlAttrsBinding
public static javax.swing.MutableComboBoxModel createEnumerationBinding(JUFormBinding formBinding, javax.swing.JComboBox control, java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, java.lang.String attrName, java.lang.Object[] values)
public static javax.swing.MutableComboBoxModel getInstance(JUFormBinding formBinding, javax.swing.JComboBox control, java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, java.lang.String attrName, java.lang.Object[] values)
public static javax.swing.MutableComboBoxModel createLovBinding(JUFormBinding formBinding, javax.swing.JComboBox control, java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, java.lang.String[] voAttrNames, java.lang.String lovVOInstanceName, java.lang.String[] lovVOAttrNames, java.lang.String[] lovVODisplayedAttrNames, javax.swing.ListCellRenderer cellRenderer, javax.swing.ComboBoxEditor editor)
public static javax.swing.MutableComboBoxModel createNavigationBinding(JUFormBinding formBinding, javax.swing.JComboBox control, java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, java.lang.String[] voAttrNames, javax.swing.ListCellRenderer cellRenderer, javax.swing.ComboBoxEditor editor)
public static javax.swing.MutableComboBoxModel getInstance(JUFormBinding formBinding, javax.swing.JComboBox control, java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, java.lang.String[] voAttrNames, java.lang.String lovVOInstanceName, java.lang.String[] lovVOAttrNames, java.lang.String[] lovVODisplayedAttrNames, javax.swing.ListCellRenderer cellRenderer, javax.swing.ComboBoxEditor editor)
|
Oracle ADF Model and Business Components API Reference 10.1.2 B14022-01 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright © 1997, 2004, Oracle. All rights reserved.