public class JUPanelBinding extends JUFormBinding
DCBindingContainer.CalculatedViewable, DCBindingContainer.EnumRefreshType, DCBindingContainer.ValidationLevel
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
mAppName |
protected java.util.ArrayList |
mIteratorChangedListeners |
mNavigationBarList
DC_BINDINGCONTAINER_ERROR, DC_IGNORE_ERROR, GET_EditingMode, GET_ExceptionsList, GET_Executables, GET_Parameters, GET_RegionContainer, GET_StateToken, GET_StateTokenId, GET_This, GET_VariableManager, GET_Viewable, mControlList, mDataControl, mDataProvider, mIsBeingPersonalized, mIterBindingList, mParamsList
mInternalGet_KeyResolved
MAP_NULL_VALUE
EXECUTE_MODEL, PREPARE_MODEL, REFRESH_UNKNOWN, RENDER_MODEL, TYPE_EXECUTABLE_REGION
EXECUTABLE_ACTION, EXECUTABLE_ITERATORBINDING, EXECUTABLE_REGION
Constructor and Description |
---|
JUPanelBinding()
*** For internal framework use only ***
|
JUPanelBinding(javax.swing.JPanel panel)
Applications should use this constructor to create a panel binding and associate it
with a swing JPanel object.
|
JUPanelBinding(java.lang.String name)
Temporary placeholder panelBinding created by wizard.
|
JUPanelBinding(java.lang.String appName,
javax.swing.JPanel panel)
Creates an instance of this class, associating it with a JPanel object and a JUApplication
identified by appName.
|
JUPanelBinding(java.lang.String appName,
java.lang.String amName,
javax.swing.JPanel panel)
Creates an instance of this class, associating it with a JPanel object and a JUApplication
identified by appName.
|
Modifier and Type | Method and Description |
---|---|
void |
addBindingWithCellEditor(JUPanelStopEditingListener binding)
Adds a listener that is interested in notification such that it stops its control's edit process
before the panel is moved to a different set of data.
|
void |
addIteratorChangedListener(JUIteratorChangedListener l)
Adds a listener that should be notified when the iterator behind an iterator
binding object changes or the display mode changes from find to data mode or
the reverse.
|
void |
addRowSetListener(JUPanelRowSetListener l)
Adds the given listener to this panel's RowSet listeners list.
|
void |
beginDataControls(BindingContext ctx)
*** For internal framework use only ***
This method invokes beginRequest(null) on all datacontrols in the
current bindingContext.
|
void |
bindRowSetIterator(java.lang.String iterBindingName,
RowSetIterator rsi)
Binds the iterator identified by iterBindingName in this panel with another iterator.
|
void |
bindRowSetIterator(java.lang.String iterBindingName,
java.lang.String voInstanceName)
Binds the iterator identified by iterBindingName in this panel with another ViewObject
in the current application module identified by the given voInstanceName.
|
java.lang.Object |
bindUIControl(java.lang.String controlBindingName,
java.lang.Object control)
Used by generated code to bind a ui control to the defined binding object
in this container identified by 'controlBindingName'.
|
void |
callAfterRowNavigated(JUControlBinding ctrl,
DCIteratorBinding iter)
Forces the current control to stop its editing mode (if used, like in JTable).
|
void |
callBeforeRowNavigated(DCIteratorBinding iter)
Forces the current control to stop its editing mode (if used, like in JTable).
|
void |
callBeforeSaveTransaction(DCDataControl dc)
Forces the current control to stop its editing mode (if used, like in JTable).
|
void |
callBeforeSaveTransaction(Transaction txn)
Deprecated.
since 9.0.5, Use callBeforeSaveTransaction(DCDataControl)
|
JUPanelBinding |
findNestedPanelBinding(java.lang.String name) |
void |
focusGained(DCIteratorBinding iterBinding,
DCControlBinding binding,
int attrIndex)
Notifies the JUApplication object of focusGained event so that it could pass it on to
its StatusBarInterface listeners (like JUStatusBar to update status message).
|
java.lang.String |
getApplicationName()
Returns the name of the JUApplication object in which this Panel binding was created.
|
java.lang.String |
getAppModuleName()
Returns the Application Module instance name to which this Panel binding is connected.
|
java.lang.String |
getLabel(java.lang.String voName,
java.lang.String attrName,
LocaleContext locale)
Retrieves the label to be used in any attribute prompts
|
java.lang.String |
getLabel(java.lang.String voName,
java.lang.String voAttrName,
java.lang.String objectAttrName,
LocaleContext locale)
Retrieves the label to be used in any attribute prompts
|
java.util.ArrayList |
getRowSetListeners()
Returns a list of JUPanelRowSetListeners (returns an empty list if no such listener was registered).
|
java.lang.String |
getTooltip(java.lang.String voName,
java.lang.String attrName,
LocaleContext locale)
Retrives the tooltip text to be used for this attribute.
|
java.lang.String |
getTooltip(java.lang.String voName,
java.lang.String voAttrName,
java.lang.String objectAttrName,
LocaleContext locale)
Retrives the tooltip text to be used for this attribute.
|
protected void |
initializeApplicationModule()
Sets up the JUApplication and Application Module references based on name passed to
this object via the constructors or various setter methods.
|
void |
initializePanel(java.util.ArrayList controls)
*** For internal framework use only ***
|
protected void |
internalReportWarning(DCDataControl dc,
JboException warn) |
boolean |
isEditingStopped()
Jclient uses this to indicate if stopEdit completed before
datacontrol can proceed with update cycle (commit etc).
|
boolean |
isTransactionDirty()
Returns true, if the Transaction behind the associated ApplicationModule has pending changes
In three-tier, this method will go across the tier boundary to get the actual middle-tier transaction
status.
|
protected void |
navigated(DCIteratorBinding iter,
NavigationEvent event)
Invoked when a JUIteratorBinding receives a navigated Event from BC4J RowSetIterator
|
void |
notifyIteratorChanged(DCIteratorBinding iterBnd,
boolean refresh)
*** For internal framework use only ***
|
void |
processException(JboException ex)
Matches a control-binding with the exception or one of it's detail exceptions if the
exception or one of it's detail excpetions is an AttrValException and the control-binding
is bound to that attribute.
|
protected void |
processRegionBindingException(JboException ex)
In Swing, suppress multiple error dialogs.
|
protected void |
rangeRefreshed(DCIteratorBinding iter,
RangeRefreshEvent event)
Invoked when a JUIteratorBinding receives a rangeRefreshed Event from BC4J RowSetIterator
|
protected void |
rangeScrolled(DCIteratorBinding iter,
ScrollEvent event)
Invoked when a JUIteratorBinding receives a rangeScrolled Event from BC4J RowSetIterator
|
void |
release(int flags)
Applications should release the DataControl which
will end up calling this method for all binding
containers in the datacontrol.
|
void |
releaseDataControl() |
void |
removeBindingWithCellEditor(JUPanelStopEditingListener binding)
Removes a listener from the list.
|
void |
removeIteratorChangedListener(JUIteratorChangedListener l)
Remove a listener from this list.
|
void |
removeRowSetListener(JUPanelRowSetListener l)
Removes the given listener from this panel's RowSet listeners list.
|
void |
requestRefreshControl()
Called by bindings that may have changed model properties
and need a refresh of the model/whole bindingContainer.
|
protected void |
resetExceptionState()
Advanced for internal framework use only
Overridden for package access.
|
protected void |
rowDeleted(DCIteratorBinding iter,
DeleteEvent event)
Invoked when a JUIteratorBinding receives a rowDeleted Event from BC4J RowSetIterator
|
protected void |
rowInserted(DCIteratorBinding iter,
InsertEvent event)
Invoked when a JUIteratorBinding receives a rowInserted Event from BC4J RowSetIterator
|
protected void |
rowUpdated(DCIteratorBinding iter,
UpdateEvent event)
Invoked when a JUIteratorBinding receives a rowUpdated Event from BC4J RowSetIterator
|
void |
setApplication(JUApplication app)
*** For internal framework use only ***
Sets the ApplicationModule reference
|
void |
setEditingStopped(boolean flag)
Component/control bindings should set this flag false to indicate
that stopEditing() call on them failed.
|
void |
setFindMode(boolean mode)
Sets this panel and all its associated iterators into find mode.
|
void |
setPanel(java.lang.Object panel)
Sets the given object as the JPanel object associated with this panel binding.
|
JUPanelBinding |
setup(BindingContext ctx,
java.lang.Object panel) |
void |
stopEditing()
Notifies all JUPanelStopEditingListeners to stop editing, so that their values
can be updated with new set of data.
|
protected void |
useDefaultDataControl(BindingContext ctx) |
addIterBinding, addIterBinding, addNavigationBar, addStatusBarInterface, clearIterBindings, createIteratorBinding, displayInShortForm, displayStatus, displayStatus, ensureVariableManager, findControlBinding, findCtrlValueBinding, findIterBinding, getApplication, getControlBinding, getControlType, getDisplayHeight, getDisplayHint, getDisplayWidth, getExceptionsListInternal, getHint, getHint, getOrderedVOUsageList, getPanel, getRangeIterBinding, getRowIterBinding, hasFormatInformation, initializeViewComponent, internalGetDataControl, prepareRegionForHierNodeIterator, removeIterBinding, removeNavigationBar, removeStatusBarInterface, removeViewScopeErrorState, setPanelInternal
_internal_dbg_debug_data, addBindingContainerChangeListenerForCtxEvent, addChangeListener, addControlBinding, addControlBinding, addExecutableBinding, addExecutableBinding, addIteratorBinding, addIteratorBinding, addNestedBindingContainer, addRegionListener, addStatusBarInterface, addValidationListener, afterSetAttribute, aliasExists, beforeCurrencyChange, beforeSaveTransaction, beforeSetAttribute, bindingContext, cacheException, callAfterRowNavigated, callAfterSetAttribute, callBeforeSetAttribute, clearExecutableBindings, clearIteratorBindings, createEventDispatcherInstance, displayStatus, endRequest, evaluateBooleanExpression, evaluateParameter, execute, executeIfNeeded, findCtrlBinding, findDataControl, findExecutableBinding, findIteratorBinding, findNamedObject, findParameter, findRegionBinding, finishedProcessingPiggyback, getActionProcessor, getAllIterBindingList, getAppDefName, getApplicationModule, getAttributeBindings, getBindingContext, getChangeListeners, getControlBinding, getControlBindings, getCtrlBinding, getCtrlBinding, getCtrlBindingList, getDataControl, getDCFrameName, getDef, getEditingMode, getEventDispatcher, getEventMapDef, getExceptionDisplayMessage, getExceptionsList, getExecutableBindings, getExecutableDef, getExecutableType, getFullName, getGuardingPermission, getIteratorBinding, getIteratorBinding, getIterBindingList, getIterBindings, getLocaleContext, getMessageBundleClass, getOperationBinding, getOperationBindings, getOrderedVOUsageList, getParameterAlias, getParametersList, getParametersMap, getPermission, getPermissionInfo, getRegionBindings, getRegionContainer, getRegionController, getRegionListeners, getResourceBundleDef, getRootBindingContainer, getState, getStateToken, getStateTokenId, getTransientRefreshFlag, getTransientRefreshType, getValidationLevel, getValidationListeners, getVariableManager, getVariableManagerOwner, getViewableFlagInternal, getViewComponent, handleException, handleWarning, hasDefinitionBeenUpdated, hasExceptions, hashCode, hasRefreshParametersChanged, hasVariables, hasVetoWarning, ignoreExceptionForDisplay, initializeFromDef, internalGet, internalRefreshControl, internalResetViewableFlag, invokeCustomValidation, isAppInPollingDCEMode, isBeingPersonalized, isDCEventsNotStarted, isErrorHandlerActive, isExecuteOnRollback, isFindMode, isInRefreshRegion, isReleased, isReleaseOnEndRequest, isSkipValidation, isTokenValidationEnabled, isViewable, maybePrintAppDefNameDiagnostic, processContextualEvents, processFormToken, processInputValues, putVetoWarning, recreateRegionBinding, refresh, refresh, refreshControl, refreshIfNeeded, release, releaseObsoleteStateFromContext, removeChangeListener, removeControlBinding, removeControlBinding, removeExecutableBinding, removeIteratorBinding, removeParameter, removeParameter, removeParameterExpression, removeRegionListener, removeStatusBarInterface, removeValidationListener, reportException, resetInputState, restoreFromState, setAppDefName, setApplicationModule, setBindingContext, setDataControl, setDef, setEnableTokenValidation, setErrorHandlerActive, setEventDispatcher, setEventMapDef, setExecuteOnRollback, setFindMode, setIsBeingPersonalized, setParameterExpression, setParameterValues, setRegionController, setReleaseOnEndRequest, setSkipValidation, setValidationLevel, setViewable, setViewableFlagInternal, setViewComponentInternal, startDCEvents, stopDCEvents, toString, updateName, usesDef, validate, validateInputValues, validateReferredDataControls, validateToken
addDependentExecutable, get, getBindingContainer, getDependents, getName, getPermissionTargetName, getRefreshExpression, getRefreshOption, isRefreshable, isRefreshed, removeDependentExecutable, resetDependentsRefresh, setBindingContainer, setExecutableDef, setName, setRefreshed, setRefreshExpression, setRefreshOption
entrySet, equals, internalPut, put, setThrowIfPropertyNotFoundOnGet
clear, clone, containsKey, containsValue, isEmpty, keySet, putAll, remove, size, values
finalize, getClass, notify, notifyAll, wait, wait, wait
getName
clear, containsKey, containsValue, entrySet, equals, get, isEmpty, keySet, put, putAll, remove, size, values
getName
protected java.lang.String mAppName
protected java.util.ArrayList mIteratorChangedListeners
public JUPanelBinding()
public JUPanelBinding(javax.swing.JPanel panel)
public JUPanelBinding(java.lang.String name)
public JUPanelBinding(java.lang.String appName, javax.swing.JPanel panel)
public JUPanelBinding(java.lang.String appName, java.lang.String amName, javax.swing.JPanel panel)
public JUPanelBinding setup(BindingContext ctx, java.lang.Object panel)
public void beginDataControls(BindingContext ctx)
public void setApplication(JUApplication app)
setApplication
in class JUFormBinding
protected void initializeApplicationModule()
initializeApplicationModule
in class JUFormBinding
public void initializePanel(java.util.ArrayList controls)
initializePanel
in class JUFormBinding
protected void resetExceptionState()
resetExceptionState
in class JUFormBinding
public void bindRowSetIterator(java.lang.String iterBindingName, java.lang.String voInstanceName)
public void bindRowSetIterator(java.lang.String iterBindingName, RowSetIterator rsi)
public final void notifyIteratorChanged(DCIteratorBinding iterBnd, boolean refresh)
Notifies all JUIteratorChangedListeners and JUNavigationBarInterface objects registered with this panel of the change in iterator binding. If refresh parameter is true, like when there is a change in the iterator behind the iterator binding instance or a change in data/find mode of the panel, then this method raises a rangeRefreshed event on the iteratorBinding object so that all controls also adjust/udpate their displays.
Called internally by the framework also when an iterator that was bound is no more bound due to some button action. In this case iterBnd is null so that all navbars can disable themselves.
notifyIteratorChanged
in class JUFormBinding
public final void addIteratorChangedListener(JUIteratorChangedListener l)
public final void removeIteratorChangedListener(JUIteratorChangedListener l)
public void focusGained(DCIteratorBinding iterBinding, DCControlBinding binding, int attrIndex)
focusGained
in class JUFormBinding
public final java.lang.String getApplicationName()
public final java.lang.String getAppModuleName()
public final boolean isTransactionDirty()
public final void setPanel(java.lang.Object panel)
setPanel
in class JUFormBinding
public final java.util.ArrayList getRowSetListeners()
public final void addRowSetListener(JUPanelRowSetListener l)
public final void removeRowSetListener(JUPanelRowSetListener l)
public void callBeforeRowNavigated(DCIteratorBinding iter)
callBeforeRowNavigated
in class DCBindingContainer
public void callAfterRowNavigated(JUControlBinding ctrl, DCIteratorBinding iter)
public void callBeforeSaveTransaction(DCDataControl dc)
callBeforeSaveTransaction
in class DCBindingContainer
public void callBeforeSaveTransaction(Transaction txn)
protected void rangeRefreshed(DCIteratorBinding iter, RangeRefreshEvent event)
rangeRefreshed
in class JUFormBinding
iter
- that received the rangeRefreshed event.event
- a description of the new ranges.protected void rangeScrolled(DCIteratorBinding iter, ScrollEvent event)
rangeScrolled
in class JUFormBinding
iter
- that received the rangeScrolled event.event
- a description of the new range.protected void rowInserted(DCIteratorBinding iter, InsertEvent event)
rowInserted
in class JUFormBinding
iter
- that received the rowInserted event.event
- a description of the new Row object.protected void rowDeleted(DCIteratorBinding iter, DeleteEvent event)
rowDeleted
in class JUFormBinding
iter
- that received the rowDeleted event.event
- a description of the deleted Row object.protected void rowUpdated(DCIteratorBinding iter, UpdateEvent event)
rowUpdated
in class JUFormBinding
iter
- that received the rowUpdated event.event
- a description of the modified Row object.protected void navigated(DCIteratorBinding iter, NavigationEvent event)
navigated
in class JUFormBinding
iter
- that received the navigated event.event
- a description of the new and previous current rows.public void setFindMode(boolean mode)
setFindMode
in class DCBindingContainer
public void addBindingWithCellEditor(JUPanelStopEditingListener binding)
public void removeBindingWithCellEditor(JUPanelStopEditingListener binding)
public void stopEditing()
public boolean isEditingStopped()
DCBindingContainer
isEditingStopped
in class DCBindingContainer
public void setEditingStopped(boolean flag)
public java.lang.Object bindUIControl(java.lang.String controlBindingName, java.lang.Object control)
public JUPanelBinding findNestedPanelBinding(java.lang.String name)
public void releaseDataControl()
public void release(int flags)
release
in interface DCIExecutable
release
in interface RegionBinding
release
in class DCBindingContainer
flags
- could be one of the enumerations in DCDataControl. See DCDataControl.release()protected void useDefaultDataControl(BindingContext ctx)
public void requestRefreshControl()
public java.lang.String getTooltip(java.lang.String voName, java.lang.String attrName, LocaleContext locale)
getTooltip
in class JUFormBinding
public java.lang.String getTooltip(java.lang.String voName, java.lang.String voAttrName, java.lang.String objectAttrName, LocaleContext locale)
getTooltip
in class JUFormBinding
public java.lang.String getLabel(java.lang.String voName, java.lang.String attrName, LocaleContext locale)
getLabel
in class JUFormBinding
public java.lang.String getLabel(java.lang.String voName, java.lang.String voAttrName, java.lang.String objectAttrName, LocaleContext locale)
getLabel
in class JUFormBinding
protected void processRegionBindingException(JboException ex)
DCBindingContainer
processRegionBindingException
in class DCBindingContainer
public void processException(JboException ex)
If the bindingContext is in JClient mode, then this exception is thrown, otherwise the exception is cached at the panelBinding level for the controller to get/access during the page-rendering phase or before invoking the next action.
processException
in class DCBindingContainer
protected void internalReportWarning(DCDataControl dc, JboException warn)
internalReportWarning
in class DCBindingContainer