Oracle Data-aware Controls Reference

oracle.dacf.control
Class NavigationManager

java.lang.Object
  extended byoracle.dacf.control.NavigationManager

public class NavigationManager
extends java.lang.Object

This class arbitrates the focus changes between Data aware controls Control. A control must ask the NavigationManager if it can receive focus or not.

NavigationManager keeps track of the currently focused control. Upon receiving a focus change request makes use of the ValidationManager to validate the dataitem bound to the currently focused control. If the dataitem is valid the request is approved else it is rejected.

Also, If the request is approved the requesting control is marked as current else focus is redirected to the current control.

The NavigationManager is implemented as a Singleton and the clients of this class must use the getNavigationManager() method to get an instance.

Version:
PUBLIC
See Also:
ValidationManager

Field Summary
protected static java.lang.String ERR_PROD_CODE
           
 
Constructor Summary
protected NavigationManager()
          NavigationManager is implemented as a singleton and cannot be instantiated directly.
 
Method Summary
 void addCurrencyListener(Control control)
          Adds a CurrencyListern as a listener on all CurrencyChanged events.
 void displayLOV(java.lang.String toItemName)
          display LOV if there is an LOV property set on the data object
 void focusedIsInvalid(boolean isInvalid)
          Lets the NavigationManager know that the currently focused control is invalid and all requests to change focus should be ignored.
 int getChangeLevel(Control srcControl, Control desControl)
           
 boolean getDisableLOV()
          should the LOV dialog be displayed on navigation by the Navigation manager
 Control getFocusedControl()
          Returns the currently focused control
 java.lang.String getFocusedDataItemName()
          Returns the name of the DataItem associated with the focused control
static NavigationManager getNavigationManager()
          Gets an instance of the NavigationManager.
 Control getTargetControl()
          Returns the control requesting a focus change
 java.lang.String getTargetDataItemName()
          Returns the name of the DataItem associated with the target control.
 void removeCurrencyListener(Control control)
          Removes a Control as a listener on all CurrencyChanged events.
 void setDisableLOV(boolean disableLOV)
          This property controls whether the Navigation manager display the LOV dialog or not.
 boolean validateFocusChange(Control newFocus)
          This method validates a focus change request from a control
 boolean validateFocusChange(Control container, java.lang.String fromItemName, java.lang.String toItemName, boolean rowChange)
          This method allows a Container to request a focus change amongst it's child controls.
 boolean validateFocusedControl()
          Validation the current focused control.
 boolean validateFocusedControl(int changeLevel)
          Validation the current focused control.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ERR_PROD_CODE

protected static final java.lang.String ERR_PROD_CODE
Constructor Detail

NavigationManager

protected NavigationManager()
NavigationManager is implemented as a singleton and cannot be instantiated directly. Clients must use the getNavigationManager() method to get an instance

See Also:
getNavigationManager()
Method Detail

validateFocusedControl

public boolean validateFocusedControl()
Validation the current focused control.

Validation is performed only at the Attribute level. This means that only the Attribute validation listeners are called.

Returns:
TRUE if the control validations at the ATTRIBUTE level

validateFocusedControl

public boolean validateFocusedControl(int changeLevel)
Validation the current focused control.

Validation is performed only upto and including specified level. The allowed values are:

Returns:
TRUE if the control validations at the specified level

focusedIsInvalid

public void focusedIsInvalid(boolean isInvalid)
Lets the NavigationManager know that the currently focused control is invalid and all requests to change focus should be ignored.


validateFocusChange

public boolean validateFocusChange(Control newFocus)
This method validates a focus change request from a control

If the focus request can be honored and the target control has an LOV associated with it and it is to be displayed upon navigation, then the LOV will be displayed.

Parameters:
newFocus - Control requesting to receive focus.
Returns:
true if the requesting control can receive focus else false

validateFocusChange

public boolean validateFocusChange(Control container,
                                   java.lang.String fromItemName,
                                   java.lang.String toItemName,
                                   boolean rowChange)
This method allows a Container to request a focus change amongst it's child controls.

Containers are responsible for managing the display of LOVs after the the tow currency has been changed.

Parameters:
container - Composite control requesting focus change
fromItemName - Name of dataItem bound to child loosing the focus
toItemName - Name of dataItem bound to child receiving the focus
rowChange - true if the source and target child are currently bound to a different row otherwise false
Returns:
true if the change is approved otherwise returns false

getNavigationManager

public static NavigationManager getNavigationManager()
Gets an instance of the NavigationManager.

Returns:
the NavigationManager

getTargetControl

public Control getTargetControl()
Returns the control requesting a focus change

Returns:
the control requesting a focus change

getTargetDataItemName

public java.lang.String getTargetDataItemName()
Returns the name of the DataItem associated with the target control.

Returns:
the name of the DataItem associated with the target control

getFocusedControl

public Control getFocusedControl()
Returns the currently focused control

Returns:
the currently focused control

getFocusedDataItemName

public java.lang.String getFocusedDataItemName()
Returns the name of the DataItem associated with the focused control

Returns:
the name of the DataItem associated with the focused control

addCurrencyListener

public void addCurrencyListener(Control control)
Adds a CurrencyListern as a listener on all CurrencyChanged events.

Parameters:
control - An instance of Control that inplements CurrencyListener
See Also:
removeCurrencyListener(Control control)

removeCurrencyListener

public void removeCurrencyListener(Control control)
Removes a Control as a listener on all CurrencyChanged events.

Parameters:
control - An instance of Control that inplements CurrencyListener
See Also:
addCurrencyListener(Control control)

setDisableLOV

public void setDisableLOV(boolean disableLOV)
This property controls whether the Navigation manager display the LOV dialog or not. By default the Navigation manager checks for the LOV and displays it


getDisableLOV

public boolean getDisableLOV()
should the LOV dialog be displayed on navigation by the Navigation manager

Returns:
true if the Navigation manager is not configured to display the LOV dialog.

displayLOV

public void displayLOV(java.lang.String toItemName)
display LOV if there is an LOV property set on the data object

Parameters:
toItemName - - check LOV property on this data object

getChangeLevel

public int getChangeLevel(Control srcControl,
                          Control desControl)

Oracle Data-aware Controls Reference

 

Copyright © 1997, 2003, Oracle. All rights reserved.