Package com.iizix.prop.ui
Class AbstractUICompRelativeReference<TARGET extends IUICompRelativeTarget>
java.lang.Object
com.iizix.prop.GProp<ReferenceString>
com.iizix.prop.AbstractReference<TARGET>
com.iizix.prop.AbstractBaseRelativeReference<TARGET>
com.iizix.prop.ui.AbstractUICompRelativeReference<TARGET>
- All Implemented Interfaces:
EventListener
,IGProp<ReferenceString>
,IPropReference
,IReferencingGProp
,Cloneable
- Direct Known Subclasses:
LabelForReference
public abstract class AbstractUICompRelativeReference<TARGET extends IUICompRelativeTarget> extends AbstractBaseRelativeReference<TARGET>
The UIComp Relative Reference property class hold the reference to another property in the same base container.
- 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.AbstractReference
ERROR_ID, hasBeenValidated, QUICK_FIX_DELETE_PROP, reference
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 an abstract UIComp Relative Reference property with no name and with a null value.AbstractUICompRelativeReference
(Atom propertyAtom) Creates an abstract UIComp Relative Reference property with the specified name with a null value.AbstractUICompRelativeReference
(Atom propertyAtom, String newValue) Creates a UIComp Relative Reference property with the specified name and value.Method Summary
Modifier and TypeMethodDescriptionprotected void
appendPropValue
(PropMgr propertyManager, SendTransaction trans, Object value) Overrides the send-transaction to client in order to send the unique label ID in the panel.clone()
Clone overridden to ensure reference is created before cloning to have the "cidValue" cloned.protected final String
Gets the reference string for a property container.protected final String
getScopeErrorMessage
(TARGET property, PropCnr base) Gets the error message when the base container doesn't validate scope.protected void
Called when the property has an error.protected void
Called when the property has been resolved.boolean
initializeValue
(PropMgr propertyManager, ReadTransaction trans) Fakes processing of initializing the value from the remote part by skipping it in the transaction.final boolean
Verifies if the tree is valid for reference creation.void
onEventSelf
(GEvent event) Overridden to check for cache clearing...void
Resets the component ID referenced.Methods inherited from class com.iizix.prop.AbstractBaseRelativeReference
doPostResolve, getLookupPropReference, setLookedUpReference, validateReferenceScope
Methods inherited from class com.iizix.prop.AbstractReference
assignError, assignNotFoundError, changeReference, checkCreateReference, clearError, clearFixedTarget, createUpdateReference, disposeReference, equalsErrors, equalValues, getAbsoluteReference, getDirectReferencedTarget, getDirectReferencedTargetSet, getFixedTarget, getPropertyClass, getPropValue0, getReference, getReferenceString, getReferenceType, getTargetReference, getTargetReference, getValueClasses, informClearError, isReferenceValid, isReferencingMultipleTargets, isValid, modifyPropValue, onProjectNameChanged, onPropDispose, onPropParentChanged, onRefactored, onReferenceDisposed, onReferenceEvent, onReferenceEvent, paramString, setPropValue, toNativeValue0, updateReference, validatePropType, validatePropValue, wouldValidate
Methods inherited from class com.iizix.prop.GProp
addPropError, addPropListener, convertPropError, dispose, equals, equals, equalsObj, equalsPropValue, equalsTree, 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, isPropPrivateAtCreation, isPropReadOnly, isPropRoot, isPropRootLoading, isPropRootTreeModificationsAllowed, isPropUSER, isPropValueTreeLockNeeded, isPropVirtualized, isPropVirtualizing, isPropVolatile, isPropVolatileOrEditorOnly, isProxied, list, list, list, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, moveProp, moveProp, moveProp, onEvent, onPrepare, onPropInvalidateCache, onPropTreeInitialized, onPropValueSet, onRemoteEvent, onVirtualizationCompleted, 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, verify, virtualize, 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
getParent, getReferencingOwner
Constructor Details
AbstractUICompRelativeReference
public AbstractUICompRelativeReference()Creates an abstract UIComp Relative Reference property with no name and with a null value.AbstractUICompRelativeReference
Creates an abstract UIComp Relative Reference property with the specified name with a null value.- Parameters:
propertyAtom
- the property atom.
AbstractUICompRelativeReference
Creates a UIComp Relative Reference property with the specified name and value.- Parameters:
propertyAtom
- the property atom.newValue
- the new string value for the property.
Method Details
clone
Clone overridden to ensure reference is created before cloning to have the "cidValue" cloned.- Overrides:
clone
in classAbstractReference<TARGET extends IUICompRelativeTarget>
resetComponentID
public void resetComponentID()Resets the component ID referenced. This method is typically used in the Designer to clear existing references when copying or moving components.appendPropValue
Overrides the send-transaction to client in order to send the unique label ID in the panel.- Overrides:
appendPropValue
in classAbstractReference<TARGET extends IUICompRelativeTarget>
- Parameters:
propertyManager
- the property manager instance.trans
- transaction to append the properties to.value
- the value to append to the transaction, a reference to the current property value.
initializeValue
Fakes processing of initializing the value from the remote part by skipping it in the transaction. This value is local in the Editor/Server.- Overrides:
initializeValue
in classAbstractReference<TARGET extends IUICompRelativeTarget>
- Parameters:
propertyManager
- the property manager.trans
- the transaction to initialize the property with.- Returns:
- true if the value has changed, false otherwise.
onEventSelf
Overridden to check for cache clearing...- Specified by:
onEventSelf
in interfaceIGProp<TARGET extends IUICompRelativeTarget>
- Overrides:
onEventSelf
in classAbstractReference<TARGET extends IUICompRelativeTarget>
- Parameters:
event
- The property event.
informResolved
protected void informResolved()Called when the property has been resolved. Subclasses override this method to implement some behavior. The default implementation performs nothing, i.e. there is no need to callsuper.informResolved()
.- Overrides:
informResolved
in classAbstractReference<TARGET extends IUICompRelativeTarget>
informError
protected void informError()Called when the property has an error. Subclasses override this method to implement some behavior. The default implementation performs nothing, i.e. there is no need to callsuper.informError()
.- Overrides:
informError
in classAbstractReference<TARGET extends IUICompRelativeTarget>
isPropReferenceTreeValid
public final boolean isPropReferenceTreeValid()Verifies if the tree is valid for reference creation. This method is typically overridden in a root property that has a Property Manager owner that in turn is checked for a particular configuration (e.g. Client-related references such as LabelForReference that does not create references when communicating).- Specified by:
isPropReferenceTreeValid
in interfaceIGProp<TARGET extends IUICompRelativeTarget>
- Overrides:
isPropReferenceTreeValid
in classGProp<ReferenceString>
- Returns:
- true if the root property manager is found, false otherwise.
getReferenceString
Gets the reference string for a property container.An overriding method might convert the reference from e.g. old full path format for UI to the short UI reference format.
- Overrides:
getReferenceString
in classAbstractBaseRelativeReference<TARGET extends IUICompRelativeTarget>
- Parameters:
cnr
- The container reference, might benull
for none.- Returns:
- The default is to return
IGProp.getReferencePropName()
, but e.g. for UI, it may be overridden,null
ifcnr
isnull
.
getScopeErrorMessage
Gets the error message when the base container doesn't validate scope.- Overrides:
getScopeErrorMessage
in classAbstractBaseRelativeReference<TARGET extends IUICompRelativeTarget>
- Parameters:
property
- The property being targeted.base
- The base property reference.- Returns:
- "Target reference is not a child of the base property container".