Package com.iizix.prop.vs
Class VSFocusReference
- All Implemented Interfaces:
EventListener
,IGProp<String>
,IPropReference
,IReferencingGProp
,Cloneable
- Direct Known Subclasses:
EditorVSFocusReference
Focus reference is used to set a reference to a focusable VSComponent. This focus component is always a non-virtualized component at all times (when resolved) as it generally points to another VirtualSpace from the one that this property is logically located in by (if any).
- Author:
- Christopher Mindus
Nested Class Summary
Nested classes/interfaces inherited from interface com.iizix.prop.IPropReference
IPropReference.IRefType, IPropReference.ReferenceChangeEvent, IPropReference.RefType
Field Summary
Fields inherited from class com.iizix.prop.vs.VSRelativeReference
currentTarget, fixedTarget, reference, vsRefBase
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_PRIVATE, EQC_SAVE_FILE, EXT_CONTAINER_EXTENDS, EXT_CONTAINER_EXTENDS_VALID, EXT_EXTENDED, EXT_FINAL, EXT_OVERRIDES, EXT_OVERRIDES_FINAL_ERR, EXT_PRIVATE
Constructor Summary
ConstructorDescriptionCreates a VirtualSpace focus reference property with no name and with a null value.VSFocusReference
(Atom propertyAtom) Creates a VirtualSpace focus reference property with the specified name with a null value.VSFocusReference
(Atom propertyAtom, String newValue) Creates a VirtualSpace focus reference property with the specified name and value.Method Summary
Modifier and TypeMethodDescriptionclone()
Overrides clone to clear existing reference.Gets the class wanted.Gets the reference Type.boolean
isReferenceValid
(GProp<?> property) Validates the property reference that has been looked up.protected void
onRemoved
(VSComponent oldTarget) Called when the property reference has been disposed of e.g.protected void
onResolved
(VSComponent target) Called when the property reference has been resolved.protected final VSFocusReference
virtualize
(IAppSessionGyro appGyro, IClientSessionGyro clientGyro, VirtualSpace virtualSpace) Call this method to "virtualize" a property tree.Methods inherited from class com.iizix.prop.vs.VSRelativeReference
addError, clearError, createReference, disposeReference, equalsErrors, getReference, getVSTarget, isPropPrivateAtCreation, onEventSelf, onPropDispose, onPropParentChanged, onReferenceEvent, onReferenceEvent, onVirtualizationCompleted, onVSReferenceChanged, paramString, resolve, resolve, setInvalid, targetChanged
Methods inherited from class com.iizix.prop.StringProp
appendPropValue, getPropValue0, getString, getString, getValueClasses, initializeValue, setPropValue, toNativeValue0, validatePropType
Methods inherited from class com.iizix.prop.GProp
addPropError, addPropListener, convertPropError, dispose, equals, equals, equalsObj, equalsPropValue, equalsTree, equalValues, extendsClone, finalize, fine, fine, finer, finer, finest, finest, fromElementString, getAliasName, getAppSessionGyro, getAppWorker, getAtomPath, getAttribute, getChildReferencePropName, getClientSessionGyro, getClientWorker, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropName, getFullPropNameDebug, getFullPropNameDebug, getListeners, getModuleFolder, getModuleFolder, getParent, getParent, getProjectName, getPropAtom, getPropBaseReference, 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, getVSReference, hasChanged, hasCircularReferencesError, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeElement, initializeGElement, initializeGProp, initializeProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCommunicating, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropForEditor, isPropNullable, isPropPrivate, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropRootLoading, isPropRootTreeModificationsAllowed, isPropUSER, isPropValueTreeLockNeeded, isPropVirtualized, isPropVirtualizing, isPropVolatile, isPropVolatileOrEditorOnly, isProxied, list, list, list, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, modifyPropValue, moveProp, moveProp, moveProp, onEvent, onPrepare, onPropInvalidateCache, onPropTreeInitialized, onPropValueSet, onRemoteEvent, paramString, paramValue, post, post, removePropError, removePropListener, removePropUSER, renameProp, renameProp2, resetChangedTree, resolveRuntimeReferences, setChanged, setConstraints, setConstraints, setCreateRequiredProp, setParent, setPrivateChangeEventProp, setPrivateCreateRequiredProp, setPropError, setPropErroredName, setPropExtended, setPropExtendsFinal, setPropExtendsPrivate, setPropForEditor, setPropNullable, setPropPrivate, setPropReadOnly, setPropUSER, setPropValue, setPropValue, setPropValue, setPropValueIncognito, setPropVolatile, severe, severe, severe, shouldSerializeToXML, throwIfReadOnly, toElementString, toNativeValue, toString, toString, triggerRemoteEvent, triggerRemoteEvent, validateProp, validatePropValue, verify, warning, warning, warning
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.iizix.prop.IReferencingGProp
getDirectReferencedTarget, getDirectReferencedTargetSet, getParent, getReferencingOwner, isReferencingMultipleTargets
Constructor Details
VSFocusReference
public VSFocusReference()Creates a VirtualSpace focus reference property with no name and with a null value.VSFocusReference
Creates a VirtualSpace focus reference property with the specified name with a null value.- Parameters:
propertyAtom
- the property atom.
VSFocusReference
Creates a VirtualSpace focus reference property with the specified name and value.- Parameters:
propertyAtom
- the property atom.newValue
- the new string value for the property.
Method Details
getPropertyClass
Gets the class wanted.- Specified by:
getPropertyClass
in classVSRelativeReference<VSComponent>
- Returns:
- The VSComponent.class.
isReferenceValid
Validates the property reference that has been looked up. Override to provide additional functionality than checking for property class type matching with
.getPropertyClass()
- Specified by:
isReferenceValid
in interfaceIPropReference
- Overrides:
isReferenceValid
in classVSRelativeReference<VSComponent>
- Parameters:
property
- The property to validate.- Returns:
- true if valid, false otherwise.
getReferenceType
Gets the reference Type.- Specified by:
getReferenceType
in interfaceIPropReference
- Specified by:
getReferenceType
in interfaceIReferencingGProp
- Specified by:
getReferenceType
in classVSRelativeReference<VSComponent>
- Returns:
IPropReference.RefType.VSFocusComponent
.
virtualize
protected final VSFocusReference 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.
- Overrides:
virtualize
in classVSRelativeReference<VSComponent>
- 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
onResolved
Called when the property reference has been resolved.Note: Overrides the super-method to avoid having the component references with listeners and to verify the focusability of the reference in the Designer.
- Specified by:
onResolved
in classVSRelativeReference<VSComponent>
- Parameters:
target
- The target reference.
onRemoved
Called when the property reference has been disposed of e.g. due to new reference or pure disposal of this property.Overrides the super-method to remove the focus potential error property if the component is not focusable.
- Specified by:
onRemoved
in classVSRelativeReference<VSComponent>
- Parameters:
oldTarget
- The old target reference.
clone
Description copied from class:VSRelativeReference
Overrides clone to clear existing reference.- Overrides:
clone
in classVSRelativeReference<VSComponent>
- Returns:
- A new cloned String property.