Business Components

oracle.jbo.uicli.jui
Class JUSliderBinding

java.lang.Object
  |
  +--oracle.jbo.uicli.binding.JUControlBinding
        |
        +--oracle.jbo.uicli.binding.JUCtrlScrollBinding
              |
              +--oracle.jbo.uicli.jui.JUBoundedRangeBinding
                    |
                    +--oracle.jbo.uicli.jui.JUSliderBinding
All Implemented Interfaces:
javax.swing.BoundedRangeModel, javax.swing.event.ChangeListener, java.util.EventListener, JUIteratorChangedListener, RowNavigationListener, RowSetListener

public class JUSliderBinding
extends oracle.jbo.uicli.jui.JUBoundedRangeBinding
implements javax.swing.event.ChangeListener

Implements binding a JSlider control with a BC4J RowSetIterator/ViewObject. Use this binding to use JSlider to navigate the current row in a RowSetIterator/ViewObject.


Fields inherited from class oracle.jbo.uicli.binding.JUCtrlScrollBinding
mExt, mMax, mMin, mScrollCurrRow, mUseEstRC, mVal
 
Constructor Summary
JUSliderBinding(javax.swing.JSlider sb, JUIteratorBinding iterBinding, boolean scrollCurrRow, boolean deferAssignValues, boolean useEstRC)
          Binds a JSlider control to a BC4J ViewObject such that JSlider can be used to navigate rows in the ViewObject.
 
Method Summary
TypeMethod
 void addChangeListener(javax.swing.event.ChangeListener x)
           
 void addControlToPanel(java.lang.Object panel, java.lang.Object layoutObject, java.lang.Object layoutCons)
          *** For internal framework use only ***
static javax.swing.BoundedRangeModel createViewBinding(JUPanelBinding formBinding, javax.swing.JSlider control, java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, boolean scrollCurrentRow, boolean useEstRC)
          Binds a JSlider control to a BC4J ViewObject such that JSlider can be used to navigate rows in the ViewObject.
 int getExtent()
           
static javax.swing.BoundedRangeModel getInstance(JUPanelBinding formBinding, javax.swing.JSlider control, java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, boolean scrollCurrentRow, boolean useEstRC)
          Deprecated. since 9.0.2 use createViewBinding method instead.
 int getMaximum()
           
 int getMinimum()
           
protected  javax.swing.BoundedRangeModel getModelImpl(javax.swing.JSlider sb)
          Registers the BoundedRangeModel that this binding works with.
 int getValue()
           
 boolean getValueIsAdjusting()
           
protected  void initFromRSI()
          Sets the control values from the RowSetIterator that it is bound to.
 void iteratorChanged(java.lang.String rsiName, NavigatableRowIterator rsi)
          When the RowSetIterator that this control was working with via it's associated IteratorBinding is changed, this method resets the current values and range that this control is working with to reflect the values from the new iterator.
 void removeChangeListener(javax.swing.event.ChangeListener x)
           
 void setExtent(int newExtent)
           
 void setMaximum(int newMaximum)
           
 void setMinimum(int newMinimum)
           
 void setRangeProperties(int value, int extent, int min, int max, boolean adjusting)
           
 void setRangeScrollValue(int val)
          Sets the current value in the slider to the given value 'val'.
 void setRangeScrollValues(int val, int ext, int minVal, int maxVal)
          Sets the current values for this Slider.
 void setValue(int newValue)
           
 void setValueIsAdjusting(boolean b)
           
 void setValues(int val, int ext, int minVal, int maxVal)
          Sets the minimum and maximum values for the Slider.
 void stateChanged(javax.swing.event.ChangeEvent e)
          On change of current value in the slider, this event handler method updates the associated ViewObject's currency.
 
Methods inherited from class oracle.jbo.uicli.binding.JUCtrlScrollBinding
assignValues, bindRowSetIterator, navigated, rangeRefreshed, rangeScrolled, rowDeleted, rowInserted, rowUpdated
 
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

JUSliderBinding

public JUSliderBinding(javax.swing.JSlider sb,
                       JUIteratorBinding iterBinding,
                       boolean scrollCurrRow,
                       boolean deferAssignValues,
                       boolean useEstRC)
Binds a JSlider control to a BC4J ViewObject such that JSlider can be used to navigate rows in the ViewObject. Optionally an application can control the scrolling of current row into the current range of rows and using estimated row count apis to calculate the maximum row count for the display.
Parameters:
formBinding - The containing JUPanelBinding in which the given iterator binding would be found/created.
sb - JSlider control to bind a BC4J ViewObject with.
iterBinding - An iterator Binding that this control is associated with.
scrollCurrentRow - when true, scrolls the current row into the current range of the ViewObject.
deferAssignValues - when true, defers the assignement of JSlider values till the ViewObject query is executed
useEstRC - when true, uses getEstimatedRowCount() to calculate the max value for the control.
Method Detail

createViewBinding

public static javax.swing.BoundedRangeModel createViewBinding(JUPanelBinding formBinding,
                                                              javax.swing.JSlider control,
                                                              java.lang.String voInstanceName,
                                                              java.lang.String voIterName,
                                                              java.lang.String voIterBindingName,
                                                              boolean scrollCurrentRow,
                                                              boolean useEstRC)
Binds a JSlider control to a BC4J ViewObject such that JSlider can be used to navigate rows in the ViewObject. Optionally an application can control the scrolling of current row into the current range of rows and using estimated row count apis to calculate the maximum row count for the display.
Parameters:
formBinding - The containing JUPanelBinding in which the given iterator binding would be found/created.
control - JSlider control to bind a BC4J ViewObject with.
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
scrollCurrentRow - when true, scrolls the current row into the current range of the ViewObject.
useEstRC - when true, uses getEstimatedRowCount() to calculate the max value for the control.

getInstance

public static javax.swing.BoundedRangeModel getInstance(JUPanelBinding formBinding,
                                                        javax.swing.JSlider control,
                                                        java.lang.String voInstanceName,
                                                        java.lang.String voIterName,
                                                        java.lang.String voIterBindingName,
                                                        boolean scrollCurrentRow,
                                                        boolean useEstRC)
Deprecated. since 9.0.2 use createViewBinding method instead.


getModelImpl

protected javax.swing.BoundedRangeModel getModelImpl(javax.swing.JSlider sb)
Registers the BoundedRangeModel that this binding works with. If the slider has a model, this method registers that with this binding and returns the model. If the control or model is null, then this method creates a DefaultBoundedRangeModel and returns that.

setValues

public void setValues(int val,
                      int ext,
                      int minVal,
                      int maxVal)
Sets the minimum and maximum values for the Slider. Also sets the current value. this method ignores the ext value.
Overrides:
setValues in class JUCtrlScrollBinding
Following copied from class: oracle.jbo.uicli.binding.JUCtrlScrollBinding
Parameters:
val - The current value which indicates the row index of the current row in the current range.
ext - The extent value which is used by a control to scroll that many rows up or down.
minVal - The minimum value that this control allows.
maxVal - The maximum value that this control allows.

initFromRSI

protected void initFromRSI()
Sets the control values from the RowSetIterator that it is bound to. This method sets the minor tick spacing to 1 and snap to ticks boolean flag to true in the associated JSlider control.
Overrides:
initFromRSI in class JUCtrlScrollBinding

setRangeScrollValue

public void setRangeScrollValue(int val)
Sets the current value in the slider to the given value 'val'.
Overrides:
setRangeScrollValue in class JUCtrlScrollBinding

setRangeScrollValues

public void setRangeScrollValues(int val,
                                 int ext,
                                 int minVal,
                                 int maxVal)
Sets the current values for this Slider.
Overrides:
setRangeScrollValues in class JUCtrlScrollBinding
Following copied from class: oracle.jbo.uicli.binding.JUCtrlScrollBinding
Parameters:
val - The current value which indicates the row index of the current row in the current range.
ext - The extent value which is used by a control to scroll that many rows up or down.
minVal - The minimum value that this control allows.
maxVal - The maximum value that this control allows.

stateChanged

public void stateChanged(javax.swing.event.ChangeEvent e)
On change of current value in the slider, this event handler method updates the associated ViewObject's currency.
Specified by:
stateChanged in interface javax.swing.event.ChangeListener

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

getMinimum

public int getMinimum()
Specified by:
getMinimum in interface javax.swing.BoundedRangeModel

setMinimum

public void setMinimum(int newMinimum)
Specified by:
setMinimum in interface javax.swing.BoundedRangeModel

getMaximum

public int getMaximum()
Specified by:
getMaximum in interface javax.swing.BoundedRangeModel

setMaximum

public void setMaximum(int newMaximum)
Specified by:
setMaximum in interface javax.swing.BoundedRangeModel

getValue

public int getValue()
Specified by:
getValue in interface javax.swing.BoundedRangeModel

setValue

public void setValue(int newValue)
Specified by:
setValue in interface javax.swing.BoundedRangeModel

setValueIsAdjusting

public void setValueIsAdjusting(boolean b)
Specified by:
setValueIsAdjusting in interface javax.swing.BoundedRangeModel

getValueIsAdjusting

public boolean getValueIsAdjusting()
Specified by:
getValueIsAdjusting in interface javax.swing.BoundedRangeModel

getExtent

public int getExtent()
Specified by:
getExtent in interface javax.swing.BoundedRangeModel

setExtent

public void setExtent(int newExtent)
Specified by:
setExtent in interface javax.swing.BoundedRangeModel

setRangeProperties

public void setRangeProperties(int value,
                               int extent,
                               int min,
                               int max,
                               boolean adjusting)
Specified by:
setRangeProperties in interface javax.swing.BoundedRangeModel

addChangeListener

public void addChangeListener(javax.swing.event.ChangeListener x)
Specified by:
addChangeListener in interface javax.swing.BoundedRangeModel

removeChangeListener

public void removeChangeListener(javax.swing.event.ChangeListener x)
Specified by:
removeChangeListener in interface javax.swing.BoundedRangeModel

iteratorChanged

public void iteratorChanged(java.lang.String rsiName,
                            NavigatableRowIterator rsi)
When the RowSetIterator that this control was working with via it's associated IteratorBinding is changed, this method resets the current values and range that this control is working with to reflect the values from the new iterator.
Specified by:
iteratorChanged in interface JUIteratorChangedListener
Following copied from interface: oracle.jbo.uicli.jui.JUIteratorChangedListener
Parameters:
iterName - Name of the JUIteratorBinding for which the RowSetIterator is changed.
rsi - The new RowSetIterator (could be null) that an iterator binding should be bound to.

Business Components