Business Components

oracle.jbo.uicli.jui
Class JUDefaultControlBinding

java.lang.Object
  |
  +--oracle.jbo.uicli.binding.JUControlBinding
        |
        +--oracle.jbo.uicli.binding.JUCtrlValueBinding
              |
              +--oracle.jbo.uicli.binding.JUCtrlAttrsBinding
                    |
                    +--oracle.jbo.uicli.jui.JUDefaultControlBinding
All Implemented Interfaces:
java.awt.event.ActionListener, AttributeList, java.util.EventListener

public class JUDefaultControlBinding
extends JUCtrlAttrsBinding
implements java.awt.event.ActionListener

Implements a generic binding for custom or any Swing control to bind to a BC4J attribute. JClient custom controls like JUImageControl use this binding. Applications that develop custom or use controls other than the ones for which JClient binding is provided, may use this binding to get BC4J data via the JClient framework and work with it in the control. Using this binding lets the panel, panelBinding, Status Bar, Navigation Bar etc. be aware of data being showed/edited in the custom control and update their status/display accordingly.

See Also:
JUImageControl

Constructor Summary
TypeConstructor
protected JUDefaultControlBinding()
          Default constructor for subclassing.
  JUDefaultControlBinding(JUDefaultControlInterface control, JUIteratorBinding iterBinding, java.lang.String attrName)
          This constructor should be used in controls/subclasses to pass the binding information.
 
Method Summary
TypeMethod
 void actionPerformed(java.awt.event.ActionEvent e)
          Updates the BC4J attribute with the current data value in this binding.
 void addControlToPanel(java.lang.Object panel, java.lang.Object layoutObject, java.lang.Object layoutCons)
          *** For internal framework use only ***
static JUDefaultControlBinding createAttributeBinding(JUFormBinding formBinding, JUDefaultControlInterface control, java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, java.lang.String attrName)
          Creates an instance of this binding as per the given binding information.
static JUDefaultControlBinding getInstance(JUFormBinding formBinding, JUDefaultControlInterface control, java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, java.lang.String attrName)
          Deprecated. since 9.0.2 use createAttributeBinding() instead.
 java.lang.Object getValueAt(int attrIndex)
          Returns the data that the bound control is displaying.
 void setDataValueAt(java.lang.Object value, int attrIndex)
          This method updates the value this binding holds as well as updates the BC4J attribute (hence marking the ensuing transaction dirty).
 void setValueAt(java.lang.Object value, int attrIndex)
          Updates the data that this binding holds.
 
Methods inherited from class oracle.jbo.uicli.binding.JUCtrlAttrsBinding
updateNavigated, updateRangeScrolled, updateValuesFromRow, updateValuesFromRows
 
Methods inherited from class oracle.jbo.uicli.binding.JUCtrlValueBinding
findAttributeDef, getAttribute, getAttribute, getAttributeCount, getAttributeDef, getAttributeDefs, getAttributeFromRow, getAttributeFromRow, getAttributeFromRow, getAttributeFromRow, getAttributeFromRow, getAttributeIndexOf, getAttributeNames, isAttributeUpdateable, setAttribute, setAttribute, setAttributeInRow, setAttributeInRow, setAttributeInRow, setAttributeInRow, setAttributeInRow, setAttributeInRow, stopEditing, updateRowDeleted, updateRowInserted
 
Methods inherited from class oracle.jbo.uicli.binding.JUControlBinding
executeQuery, executeQueryIfNeeded, getAllRowsInRange, getApplicationModule, getControl, getCurrentRow, getDef, getFormBinding, getIteratorBinding, getLayoutObject, getName, getRowAtRangeIndex, getRowIterator, getTransaction, getViewObject, isControlQueriable, reportException, setFormBinding, setName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JUDefaultControlBinding

protected JUDefaultControlBinding()
Default constructor for subclassing.

JUDefaultControlBinding

public JUDefaultControlBinding(JUDefaultControlInterface control,
                               JUIteratorBinding iterBinding,
                               java.lang.String attrName)
This constructor should be used in controls/subclasses to pass the binding information.

Parameters:
control - Control which should be bound to an attribute of a BC4J row.
iterBinding - JUIteratorBinding object that contains a reference to the RowIterator that contains Rows to display
attrName - Name of the attribute in the BC4J Row object to display.
Method Detail

addControlToPanel

public void addControlToPanel(java.lang.Object panel,
                              java.lang.Object layoutObject,
                              java.lang.Object layoutCons)
*** For internal framework use only ***
Overrides:
addControlToPanel in class JUControlBinding

getValueAt

public java.lang.Object getValueAt(int attrIndex)
Returns the data that the bound control is displaying. This may be used to compare the existing value in the control to decide if there's been a change in control's data.
Overrides:
getValueAt in class JUCtrlAttrsBinding

setValueAt

public void setValueAt(java.lang.Object value,
                       int attrIndex)
Updates the data that this binding holds. Note that this does not update the BC4J attribute value, but simply updates the data in the binding.
Overrides:
setValueAt in class JUCtrlAttrsBinding

setDataValueAt

public void setDataValueAt(java.lang.Object value,
                           int attrIndex)
This method updates the value this binding holds as well as updates the BC4J attribute (hence marking the ensuing transaction dirty).
Overrides:
setDataValueAt in class JUCtrlAttrsBinding

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Updates the BC4J attribute with the current data value in this binding.
Specified by:
actionPerformed in interface java.awt.event.ActionListener

createAttributeBinding

public static JUDefaultControlBinding createAttributeBinding(JUFormBinding formBinding,
                                                             JUDefaultControlInterface control,
                                                             java.lang.String voInstanceName,
                                                             java.lang.String voIterName,
                                                             java.lang.String voIterBindingName,
                                                             java.lang.String attrName)
Creates an instance of this binding as per the given binding information.

Parameters:
formBinding - The containing JUPanelBinding in which the given iterator binding would be found/created.
control - The control instance to bind to a ViewObject's attribute.
voInstanceName - Name of the instance of the ViewObject in a BC4J ApplicationModule
voIterName - Runtime instance name of the iterator in the ViewObject (optional)
voIterBindingName - Instance name of the iterator binding that uniquely identifies an iterator binding object in this given JUPanelBinding instance.
attrName - The name of the attribute of this ViewObject rows that contains data to display/edit in the associated control.

getInstance

public static JUDefaultControlBinding getInstance(JUFormBinding formBinding,
                                                  JUDefaultControlInterface control,
                                                  java.lang.String voInstanceName,
                                                  java.lang.String voIterName,
                                                  java.lang.String voIterBindingName,
                                                  java.lang.String attrName)
Deprecated. since 9.0.2 use createAttributeBinding() instead.


Business Components