Class VSComponent
- All Implemented Interfaces:
EventListener
,IFocusComp
,IMessageBox
,ICustomDataProvider
,IGProp<GProp<?>[]>
,IPropCnr
,IVSComponent
,IVSComponentListener
,IVSComponentState
,Cloneable
- Author:
- Christopher Mindus
Nested Class Summary
Nested classes/interfaces inherited from interface com.iizix.gyro.IMessageBox
IMessageBox.Icon
Nested classes/interfaces inherited from interface com.iizix.prop.vs.IVSComponentState
IVSComponentState.State
Field Summary
Modifier and TypeFieldDescriptionstatic final IVSGenericComponentListener[]
Empty list of listeners.protected static final HashMap<Atom,
IVSComponentState.State> Properties that are mapped to listeners.Fields inherited from class com.iizix.prop.PropCnr
EMPTY, EMPTY_CLASSES, EMPTY_CNRS, EXTENDS_FRAMEWORK_ERROR_ID
Fields inherited from class com.iizix.prop.GProp
GPDEBUG, PROP_ATTR_STRING_EDITOR_PROP, PROP_ATTR_STRING_ERRORED_NAME, PROP_ATTR_STRING_EXTENDS, PROP_ATTR_STRING_EXTENDS_FINAL, PROP_ATTR_STRING_EXTENDS_PRIVATE, PROP_ATTR_STRING_NULLABLE, PROP_ATTR_STRING_PRIVATE, PROP_ATTR_STRING_PRIVATE_CHANGE_EVENT, PROP_ATTR_STRING_READ_ONLY, PROP_USER_1, PROP_USER_2
Fields inherited from interface com.iizix.prop.IGProp
EQC_ERROR_IGNORE_ALL, EQC_ERROR_IGNORE_REFERENCES, EQC_IGNORE_ARRAY, EQC_IGNORE_VOLATILE_OR_EDITOR, EQC_INCLUDE_PRIVATE, EQC_SAVE_FILE, EXT_CONTAINER_EXTENDS, EXT_CONTAINER_EXTENDS_VALID, EXT_EXTENDED, EXT_FINAL, EXT_OVERRIDES, EXT_OVERRIDES_FINAL_ERR, EXT_PRIVATE
Fields inherited from interface com.iizix.gyro.IMessageBox
ICON_ERROR, ICON_INFORMATION, ICON_MAP, ICON_NONE, ICON_QUESTION, ICON_WARNING
Fields inherited from interface com.iizix.prop.vs.IVSComponent
ATOM_IGNORE_UI_FOCUS, ERROR, INFORMATION, NONE, WARNING
Constructor Summary
ModifierConstructorDescriptionprotected
Creates a VirtualSpace Field property with the specified name with a null value.protected
VSComponent
(Atom propertyAtom) Creates a VirtualSpace Field property with the specified name with a null value.protected
VSComponent
(Atom propertyAtom, VSComponent[] properties) Creates a property container with the specified name and properties.Method Summary
Modifier and TypeMethodDescriptionboolean
addListener
(IVSGenericComponentListener listener) Adds a new listener to the VS component.boolean
areFree
(Runnable callback, boolean callbackIfFree, VSComponent component) Verifies if this component and another are included in a work unit currently in progress in the VirtualSpace.boolean
areFree
(Runnable callback, boolean callbackIfFree, VSComponent... components) Verifies if this component and other component(s) are included in a work unit currently in progress in the VirtualSpace.Returns if this component can receive focus.clone()
Clones the VirtualSpace component.protected GProp<?>
convertLoadedProp
(GProp<?> childProp) Enables conversion or omission of a property loaded from XML.couldRequestFocusIfVirtualized
(boolean ignoreStates) Returns if this component could receive focus if it would be virtualized.forbiddenGetCustomDataMap
(boolean doCreate) Deprecated.Returns the Client Session Gyro instance.abstract String
Gets the focus message for "Component is disabled" but for the component in question.abstract String
Gets the focus message for "Component is hidden" but for the component in question.Gets the listeners of the VS component events.Gets the description of the component.Gets the non-virtualized instance of this component, if it exists.Gets the VirtualSpace instance.protected final void
Method called at the earliest possible stage in the constructor of a container property or it's extending classes, before possible initialization of other properties, etc.protected void
Invokes the onVSCreate method for the component if a VirtualSpace is present.boolean
isFree()
Verifies if this component is included in a work unit currently in progress in the VirtualSpace.boolean
Verifies if this component is included in a work unit currently in progress in the VirtualSpace.void
onEventSelf
(GEvent event) Checks for state change events and fires it to listeners.void
onFocusGained
(IFocusComp opposite, IGProp<?> trigger, boolean isRemoteInduced) Called to the component when it receives focus.void
onFocusLost
(IFocusComp focusComp, IGProp<?> trigger, boolean isRemoteInduced) Called to the focused component when it loses focus.protected void
onListenerChanged
(IVSGenericComponentListener listener) Called when a listener is added or removed.protected void
onPrepare
(IAppOwner appOwner, IModuleOwner moduleOwner, boolean isPostCall, List<Throwable> errors) Called when the application is being prepared.protected void
Called when a property is disposed of by delete/remove in a container, or by the dispose method.void
onRemoteEvent
(RemoteEvent event) Called when a remote property event should be processed by this property.protected final void
Called when a property container has been virtualized because it was added into another property container that was virtualized, and this container was not.protected String
Returns the parameter string representing the state of this event.boolean
removeListener
(IVSGenericComponentListener listener) Removes a listener from the VS component.protected final VSComponent
virtualize
(IAppSessionGyro appGyro, IClientSessionGyro clientGyro, VirtualSpace virtualSpace) Call this method to "virtualize" a property tree.Methods inherited from class com.iizix.prop.PropCnr
__transferChildProps, addPredefinedProps, addProp, addProp, addProp2, addProp2, appendPropValue, canRequestFocus, completeVirtualize, containsProp, containsProp, couldRequestFocusIfVirtualized, createCopyOfAtom, createUniqueAtom, createUniqueAtom, createUniqueAtom, createVSReference, doPropEqualsArrayValues, enablePropCommunication, enablePropHashMap, equalsTree, equalsTree, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getBool, getBool, getBool, getBool, getChildPropError, getChildPropError, getChildPropErrorSeverity, getChildPropErrorSeverity, getErrorsProp, getExtendsContainer, getExtendsError, getExtendsName, getExtendsOverride, getExtendsPossibleClasses, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, getPossibleChildren, getPredefinedProps, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getPropBaseReference, getPropCnr, getPropCount, getPropCount, getPropIndex, getPropIndex, getPropIndexes, getProps, getProps, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue0, getRetargetedVerifyContainer, getString, getString, getString, getString, getValueClasses, getVSReference, hasFocus, hasSendData, initializeElement, initializeExtendsFramework, initializeProp, initializeValue, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsPropertyValid, isExtendsRoot, isPropAddRemoveAllowed, isPropCommunicating, isPropExtended, list, list, logPropNotFound, maybeAddProp, onInsertProp, onPropRemoved, onPropTreeInitialized, onReferenceEvent, onVirtualizationCompleted, prepare, removeAllProps, removeAllProps2, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, reorderProps, replaceProps, requestFocus, requestFocus, requestFocusEx, requestFocusEx, resolveReferences, resolveRuntimeReferences, setBool, setBool, setBool, setBool, setCreateRequiredProp, setExtendsName, setExtendsOverride, setInt, setInt, setInt, setLong, setLong, setLong, setLong, setNumber, setNumber, setNumber, setNumber, setProp, setProp, setProp, setProp2, setProp2, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setString, setString, setString, setString, shouldCreateProps, shouldSerializeToXML, toElementString, toNativeValue0, usePropHashMap, usesPropIndex, validateChildPropInValue, validateClassInstances, validatePropType, validatePropValue, verify, verifyInternalUseOnly, verifyTree
Methods inherited from class com.iizix.prop.GProp
addPropError, addPropListener, appendProp, convertPropError, dispose, equals, equals, equalsErrors, equalsObj, equalsPropValue, equalValues, finalize, fine, fine, finer, finer, finest, finest, fromElementString, getAliasName, getAppSessionGyro, getAppWorker, getAtomPath, getAttribute, getChildReferencePropName, getClientWorker, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropName, getFullPropNameDebug, getFullPropNameDebug, getListeners, getModuleFolder, getModuleFolder, getParent, getParent, getProjectName, getPropAtom, getPropError, getPropError, getPropErroredName, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromPath, getPropFromReference, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropReferenceTarget, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getPropValueObject, getReferencePropName, getReferencePropNameNoAssert, getRelativePropName, getRootFromName, getRootName, getRootParent, getRootParentNoAssert, getTreeLock, hasChanged, hasCircularReferencesError, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropForEditor, isPropNullable, isPropPrivate, isPropPrivateAtCreation, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropRootLoading, isPropRootTreeModificationsAllowed, isPropUSER, isPropValueTreeLockNeeded, isPropVirtualized, isPropVirtualizing, isPropVolatile, isPropVolatileOrEditorOnly, isProxied, isSibling, list, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, modifyPropValue, moveProp, moveProp, moveProp, onEvent, onPropInvalidateCache, onPropParentChanged, onPropValueSet, paramString, paramValue, post, post, removePropError, removePropListener, removePropUSER, renameProp, renameProp2, resetChangedTree, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPrivateCreateRequiredProp, setPropError, setPropErroredName, setPropExtended, setPropExtendsFinal, setPropExtendsPrivate, setPropForEditor, setPropNullable, setPropPrivate, setPropReadOnly, setPropUSER, setPropValue, setPropValue, setPropValue, setPropValueIncognito, setPropVolatile, severe, severe, severe, shouldSerializeToXML, throwIfReadOnly, toNativeValue, toString, toString, triggerRemoteEvent, triggerRemoteEvent, validateProp, warning, warning, warning
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.iizix.prop.ICustomDataProvider
getCustomData, putCustomData, putCustomDataIfAbsent
Methods inherited from interface com.iizix.gyro.IFocusComp
requestFocus, requestFocus, requestFocusEx, requestFocusEx
Methods inherited from interface com.iizix.prop.IGProp
addPropError, addPropListener, dispose, equals, fine, fine, finer, finer, finest, finest, fromElementString, getAppSessionGyro, getAtomPath, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropNameDebug, getModuleFolder, getModuleFolder, getParent, getParent, getPropAtom, getPropBaseReference, getPropError, getPropError, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getReferencePropName, getRelativePropName, getRootParent, getTreeLock, getValueClasses, getVSReference, hasChanged, hasCircularReferencesError, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCommunicating, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropNullable, isPropPrivate, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropVirtualized, isSibling, list, list, list, list, list, mapAliasToReference, mapReferenceToAlias, mapReferenceToProjectRelative, moveProp, moveProp, moveProp, onEvent, onPropTreeInitialized, removePropError, removePropListener, renameProp, resolveRuntimeReferences, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPropError, setPropExtendsFinal, setPropExtendsPrivate, setPropNullable, setPropPrivate, setPropReadOnly, setPropValue, setPropValue, severe, severe, severe, toElementString, toNativeValue, triggerRemoteEvent, triggerRemoteEvent, validateProp, validatePropType, validatePropValue, verify, warning, warning, warning
Methods inherited from interface com.iizix.gyro.IMessageBox
messageBox, messageBox, messageBox
Methods inherited from interface com.iizix.prop.IPropCnr
addProp, addProp, addProp2, addProp2, canRequestFocus, canRequestFocus, containsProp, containsProp, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized, createCopyOfAtom, createUniqueAtom, createUniqueAtom, enablePropCommunication, enablePropHashMap, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getBool, getBool, getBool, getBool, getChildPropError, getChildPropError, getChildPropErrorSeverity, getChildPropErrorSeverity, getErrorsProp, getExtendsError, getExtendsName, getExtendsPossibleClasses, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, getPossibleChildren, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getPropCnr, getPropCount, getPropIndex, getPropIndex, getPropIndexes, getProps, getProps, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getString, getString, getString, getString, hasFocus, initializeExtendsFramework, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsRoot, isPropAddRemoveAllowed, isPropExtended, removeAllProps, removeAllProps2, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, reorderProps, requestFocus, requestFocusEx, setBool, setBool, setBool, setBool, setExtendsName, setExtendsOverride, setInt, setInt, setInt, setLong, setLong, setLong, setLong, setNumber, setNumber, setNumber, setNumber, setProp, setProp, setProp, setProp2, setProp2, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setString, setString, setString, setString, usePropHashMap, usesPropIndex, validateClassInstances
Methods inherited from interface com.iizix.prop.vs.IVSComponent
getAction, getAction2, getActionNull, getActionNull2, getField, getField2, getFieldNull, getFieldNull2, getGroup, getGroup2, getGroupNull, getGroupNull2, getTable, getTable2, getTableNull, getTableNull2, getVirtualizedVirtualSpace, getVSComponent, getVSComponent2, getVSComponentNull, getVSComponentNull2, getVSRef, isEnabled, isEnabledInParent, isReadOnly, isReadOnlyInParent, isSelected, isVisible, isVisibleInParent, messageBox, setEnabled, setEnabled, setIgnoreFocusFromUI, setReadOnly, setReadOnly, setSelected, setSelected, setVirtualizeSupportFocus, setVirtualizeSupportFocus, setVisible, setVisible, shouldIgnoreFocusFromUI
Methods inherited from interface com.iizix.prop.vs.IVSComponentListener
onParentStateChanged
Field Details
EMPTY_LISTENERS
Empty list of listeners.statesMap
Properties that are mapped to listeners.
Constructor Details
VSComponent
protected VSComponent()Creates a VirtualSpace Field property with the specified name with a null value.VSComponent
Creates a VirtualSpace Field property with the specified name with a null value.- Parameters:
propertyAtom
- the property atom.
VSComponent
Creates a property container with the specified name and properties.- Parameters:
propertyAtom
- the property atom.properties
- the property array value for the property.- Throws:
PropException
- as structural changes in containers on client is prohibited.
Method Details
initPropCnr
protected final void initPropCnr()Method called at the earliest possible stage in the constructor of a container property or it's extending classes, before possible initialization of other properties, etc.VS components use the named property hash map for lookup of properties fast.
- Overrides:
initPropCnr
in classPropCnr
convertLoadedProp
Enables conversion or omission of a property loaded from XML.This method is typically used to process changes of e.g. property types, e.g. from IntProp to NumberProp, in case of a change of property definitions.
- Overrides:
convertLoadedProp
in classPropCnr
- Parameters:
childProp
- The child property that is about to be added.- Returns:
- The property to add, null to omit it. The default processing is to return the same property, i.e.
childProp
. - Throws:
PropException
- for property errors.
getClientSessionGyro
Returns the Client Session Gyro instance.This method calls
to retrieve the instance from the current thread.IClientSessionGyro.getSessionInstance()
- Specified by:
getClientSessionGyro
in interfaceIGProp<GProp<?>[]>
- Overrides:
getClientSessionGyro
in classGProp<GProp<?>[]>
- Returns:
- The Client Session Gyro if found for the current thread, null otherwise.
forbiddenGetCustomDataMap
Deprecated.Gets or creates the provider map. This method is not intended to be called by user code, it is used by the system.Do not call this method!
- Specified by:
forbiddenGetCustomDataMap
in interfaceICustomDataProvider
- Parameters:
doCreate
- Creates the map if required.- Returns:
- The map or newly created map,
null
if not created.Note: the map returned is NOT synchronized thus not thread safe. It is up to the caller to synchronize on it to ensure thread safety.
- Throws:
SecurityException
- If called from other than system.
clone
Clones the VirtualSpace component. The runtime method instances (onVSChange and onVSFocus) are kept for the clone, so they do not need to be looked up again.virtualize
protected final VSComponent virtualize(IAppSessionGyro appGyro, IClientSessionGyro clientGyro, VirtualSpace virtualSpace) throws CloneNotSupportedException, PropException Call this method to "virtualize" a property tree. This method is used at runtime in the Server for the application session of virtual instances of VirtualSpace, but also virtual instances of panels, for the individual client session. The VirtualSpace is virtualized once for the application session and is shared for parallel client sessions.This method is similar to cloning, but enables references that are already resolved to remain if they point to a shared instance, e.g. the VirtualSpace pointing to its participants in the application property container shared instance, or a panel with references to text IDs, assets, etc.
It is up to the property class to handle this by overriding this method.
- Overrides:
virtualize
in classPropCnr
- Parameters:
appGyro
- The application gyro instance performing the virtualization.clientGyro
- The client gyro session, can benull
if not initialized from the client gyro.virtualSpace
- The virtualized VirtualSpace.- Returns:
- The virtualized property.
- Throws:
CloneNotSupportedException
- If a subclass doesn't allow cloning, e.g. the client properties.PropException
- For property errors during the virtualization.IllegalStateException
- IllegalStateException if the property is in an invalid state, e.g. in virtualizing state or if in
getDescription
Gets the description of the component.- Specified by:
getDescription
in interfaceIVSComponent
- Returns:
- The description, or null for none.
paramString
Returns the parameter string representing the state of this event. This string is useful for debugging. Subclasses adds extra information to the string by preceding it with a comma followed by the extra information.- Overrides:
paramString
in classPropCnr
- Returns:
- the parameter string of this event.
getVirtualSpace
Gets the VirtualSpace instance.- Specified by:
getVirtualSpace
in interfaceIVSComponent
- Returns:
- The VirtualSpace instance (an ancestor of this property or itself), or null if not found (i.e. property is not yet attached to a VirtualSpace).
onEventSelf
Checks for state change events and fires it to listeners.- Specified by:
onEventSelf
in interfaceIGProp<GProp<?>[]>
- Overrides:
onEventSelf
in classGProp<GProp<?>[]>
- Parameters:
event
- The property event.
addListener
Adds a new listener to the VS component.- Parameters:
listener
- The listener for VS component events.- Returns:
- true for success, false if the listener already is added.
removeListener
Removes a listener from the VS component.- Parameters:
listener
- The existing listener for VS component events.- Returns:
- true for success, false if the listener has not been added.
onListenerChanged
Called when a listener is added or removed. This method is overridden by the Designer to update connections.getComponentListeners
Gets the listeners of the VS component events.- Returns:
- A cached array of listeners for the value, retrieved without synchronization if possible.
isFree
public boolean isFree()Verifies if this component is included in a work unit currently in progress in the VirtualSpace.- Returns:
- true if it's OK to process, false means the component is included in this work unit.
isFree
Verifies if this component is included in a work unit currently in progress in the VirtualSpace.- Parameters:
callback
- The callback to call when work completes, or null for none.callbackIfFree
- Performs a call to the callback if free when true.- Returns:
- true if it's OK to process, false means the component is included in this work unit and if
callback
is non-null, it will be called. Thecallback
is called if free and the flagcallbackIfFree
is true.
areFree
Verifies if this component and another are included in a work unit currently in progress in the VirtualSpace.- Parameters:
callback
- The callback to call when work completes, or null for none.callbackIfFree
- Performs a call to the callback if free when true.component
- The component to verify.- Returns:
- true if it's OK to process, false means the component is included in this work unit and if
callback
is non-null, it will be called. Thecallback
is called if free and the flagcallbackIfFree
is true.
areFree
Verifies if this component and other component(s) are included in a work unit currently in progress in the VirtualSpace.- Parameters:
callback
- The callback to call when work completes, or null for none.callbackIfFree
- Performs a call to the callback if free when true.components
- The components to verify.- Returns:
- true if it's OK to process, false means the component is included in this work unit and if
callback
is non-null, it will be called. Thecallback
is called if free and the flagcallbackIfFree
is true.
onPrepare
protected void onPrepare(IAppOwner appOwner, IModuleOwner moduleOwner, boolean isPostCall, List<Throwable> errors) throws PropException Called when the application is being prepared. The order ofonPrepare
calls is always parent first, the children. The method is called twice, first time withisPostCall
set tofalse
, then a second time withtrue
.- Overrides:
onPrepare
in classGProp<GProp<?>[]>
- Parameters:
appOwner
- The application owner.moduleOwner
- The Module owner.isPostCall
- Flag indicating this is a post-call.errors
- A list of errors that occurred but did not cause an abort.- Throws:
PropException
- For property errors during the application preparation to need to abort.
onVirtualContainerCreated
protected final void onVirtualContainerCreated()Called when a property container has been virtualized because it was added into another property container that was virtualized, and this container was not. Typically, UI and VS will issue a onUICreate or onVSCreate.- Overrides:
onVirtualContainerCreated
in classPropCnr
invokeOnVSCreateTree
Invokes the onVSCreate method for the component if a VirtualSpace is present. This method should only be invoked when a component is resolved during the post-resolve virtualization process, or when a component is added into an already virtualized VS component tree.The OnVSCreate method is called first for the parents, then its children recursively.
- Parameters:
vs
- The VirtualSpace instance.- Throws:
NullPointerException
- If thevs
isnull
.
onPropDispose
protected void onPropDispose()Called when a property is disposed of by delete/remove in a container, or by the dispose method.The Property Container clears the structure of unsent communication requests to clear memory.
This call is done just at the end of the delete/remove routine in the container, without synchronization.
During this call, whatever components that e.g. the client needs to disposed of is done.
Subclasses needing to perform some intelligent operations upon deletion should do it by overloading this method and always call the
super.onPropDispose()
method.- Overrides:
onPropDispose
in classPropCnr
getNonVirtualized
Gets the non-virtualized instance of this component, if it exists.The non-virtualized counterpart may not exist in case the component has been programmatically created or is e.g. a row or cell in a table that has been filled by a data connector.
- Specified by:
getNonVirtualized
in interfaceIVSComponent
- Returns:
- The non-virtualized component, null if not found.
getComponentIsHidden
Gets the focus message for "Component is hidden" but for the component in question.getComponentIsDisabled
Gets the focus message for "Component is disabled" but for the component in question.canRequestFocus
Returns if this component can receive focus. Focus capable components may override to returnnull
for success, or other error message.Default processing is to return "Component not focusable" if the component doesn't implement the
IFocusComp
interface, "Not virtualized" if the component is not in a virtualized state, "Component is hidden" ifIVSComponent.isVisible()
isfalse
or "Component is disabled" ifIVSComponent.isEnabled()
isfalse
.- Specified by:
canRequestFocus
in interfaceIPropCnr
- Returns:
null
focus is possible to this component, or an error message describing why focus cannot be requested.
couldRequestFocusIfVirtualized
Returns if this component could receive focus if it would be virtualized. Focus capable components may override to returnnull
for success, or other error message.Default processing is to return "Component not focusable" if the component doesn't implement the
IFocusComp
interface, "Component is hidden" ifIVSComponent.isVisible()
isfalse
or "Component is disabled" ifIVSComponent.isEnabled()
isfalse
.- Specified by:
couldRequestFocusIfVirtualized
in interfaceIPropCnr
- Parameters:
ignoreStates
- Flag indicating that states should be ignored, such as visible or enabled. If false, hidden or disabled components return an error message.- Returns:
null
focus is possible to this component, or an error message describing why focus cannot be requested.
onFocusGained
Called to the component when it receives focus.Focus components override this method if they need to process focus lost.
- Specified by:
onFocusGained
in interfaceIFocusComp
- Parameters:
opposite
- Component losing focus, null for none.trigger
- The trigger property, null for none.isRemoteInduced
- Flag indicating this event is due to a remote event.
onFocusLost
Called to the focused component when it loses focus.Focus components override this method if they need to process focus lost.
- Specified by:
onFocusLost
in interfaceIFocusComp
- Parameters:
focusComp
- Component receiving focus, null for none.trigger
- The trigger property, null for none.isRemoteInduced
- Flag indicating this event is due to a remote event.
onRemoteEvent
Called when a remote property event should be processed by this property.A subclass can override this method to perform appropriate processing and is not required to call
super.onRemoteEvent(e)
.The onRemoteEvent is NOT called when in a proxied property container, but rather the normal onEventSelf method.
- Specified by:
onRemoteEvent
in interfaceIGProp<GProp<?>[]>
- Overrides:
onRemoteEvent
in classGProp<GProp<?>[]>
- Parameters:
event
- The remote event.