Package com.iizigo.vs.prop
Class EditorVirtualSpace
java.lang.Object
com.iizix.prop.GProp<GProp<?>[]>
com.iizix.prop.PropCnr
com.iizix.prop.vs.VirtualSpace
com.iizigo.vs.prop.EditorVirtualSpace
- All Implemented Interfaces:
IShowJavaSource,ILinkCapable,IJavaClassLinkEnabler,IJavaMethodLinkEnabler,IUICreationFromVS,IExtendsSelection,IPropDesigner,IPropUndoContext,IPrivateStorage,EventListener,IFocusComp,IMessageBox,IClassReferenceOwner,ICustomDataProvider,IGProp<GProp<?>[]>,IPropCnr,IVSAccessor,IVSClassReferenceOwner,IVSComponent,IVSComponentListener,IVSComponentState,IVSMessageComponent,Cloneable,IAdaptable
public class EditorVirtualSpace extends VirtualSpace implements IPropUndoContext, IExtendsSelection, IJavaClassLinkEnabler, IJavaMethodLinkEnabler, IUICreationFromVS, IShowJavaSource
The Editor VirtualSpace property class.
- Author:
- Christopher Mindus
Nested Class Summary
Nested classes/interfaces inherited from interface com.iizix.gyro.IMessageBox
IMessageBox.IconNested classes/interfaces inherited from interface com.iizix.prop.vs.IVSComponentState
IVSComponentState.StateField Summary
FieldsFields inherited from class com.iizix.prop.vs.VirtualSpace
MAP_CLASS_PROP_ATOM, participantsHolderFields inherited from class com.iizix.prop.PropCnr
EMPTY, EMPTY_CLASSES, EMPTY_CNRS, EXTENDS_FRAMEWORK_ERROR_ID, nameTableFields 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_2Fields inherited from interface com.iizix.prop.IClassReferenceOwner
RETRIEVE_CLASS_REFERENCE_INSTANCEFields 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_PRIVATEFields inherited from interface com.iizigo.link.ILinkCapable
STATUS_LINK_NOT_SUPPORTEDFields inherited from interface com.iizix.gyro.IMessageBox
ICON_ERROR, ICON_INFORMATION, ICON_MAP, ICON_NONE, ICON_QUESTION, ICON_WARNINGFields inherited from interface com.iizix.prop.vs.IVSComponent
ATOM_IGNORE_UI_FOCUS, ERROR, INFORMATION, WARNINGConstructor Summary
ConstructorsConstructorDescriptionCreates the VirtualSpace property container without a name.EditorVirtualSpace(Atom propertyAtom) Creates the VirtualSpace property container with the specified name.Method Summary
Modifier and TypeMethodDescriptionvoidaddCreateUILinkOperations(LinkData data, Collection<ILinkOperation> linkOps) Adds all possible operations that could be done in a link operation for UI creation from VS.booleancanCreateUI(LinkData data) Method returning if this property could potentially be (action, field or table) or contain (group) properties that can create UI components when drag-dropped.clone()Clone must be overridden.createVSComponents(List<VSComponentCreation<?>> list, ComplexOperation op) Creates the list of VS components required.protected VSParticipantsHolderCreates a new instance of the EditorVSParticipantsHolder.Gets the ClassReference in the property container from the ClassReference instance.getClassReference(String id, boolean doCreateIfNotPresent) Gets or creates the ClassReference in the property container.Gets the Designer Extension for Properties.Class<?>[]Gets the possible classes this container supports for the Extends Framework.Gets the instance that links to the class.getLinkOperations(LinkData data) Called when the drag-drop is to be performed (link or paste-link menu item).Returns the annotation types for the method reference(s).getPersistentMemento(boolean doCreate) Gets the memento used to save the editor in this property.Class<?>[]Gets the acceptable children property classes that can be used in conjunction with e.g.Gets the annotation relative reference to the element.Gets the title for selection dialog.Gets the viewer filter for the tree in the dialog for selecting extends property name.Gets the undo context.Gets the VirtualSpace.isLinkCapable(LinkData data) Returns if this property container could potentially be link capable.Methods inherited from class com.iizix.prop.vs.VirtualSpace
addPredefinedProps, areFree, areFree2, canRequestFocus, convertLoadedProp, couldRequestFocusIfVirtualized, createVSReference, forbiddenGetCustomDataMap, getAction, getAction2, getActionNull, getActionNull2, getAppSessionGyro, getAttachedVirtualizedPanels, getClientSessionGyro, getField, getField2, getFieldNull, getFieldNull2, getFocusHandler, getGroup, getGroup2, getGroupNull, getGroupNull2, getNonVirtualized, getParticipantsHolder, getPredefinedProps, getPrivateStorageMap, getTable, getTable2, getTableNull, getTableNull2, getVirtualized, getVirtualized, getVirtualizedVirtualSpace, getVSComponent, getVSComponent2, getVSComponentNull, getVSComponentNull2, getVSReference, initPropCnr, isFree, onEventSelf, onFocusGained, onFocusLost, onPanelDestroyed, onPanelVirualized, onParentStateChanged, onPrepare, onPropDispose, onRemoteEvent, onVirtualizationCompleted, virtualize, virtualizeMethods inherited from class com.iizix.prop.PropCnr
__transferChildProps, addProp, addProp, addProp2, addProp2, appendPropValue, canRequestFocus, completeVirtualize, containsProp, containsProp, couldRequestFocusIfVirtualized, createCopyOfAtom, createUniqueAtom, createUniqueAtom, createUniqueAtom, 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, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, 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, hasFocus, hasSendData, initializeElement, initializeExtendsFramework, initializeProp, initializeValue, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsPropertyValid, isExtendsRoot, isPropAddRemoveAllowed, isPropCommunicating, isPropExtended, isSibling, list, list, logPropNotFound, maybeAddProp, onInsertProp, onPropRemoved, onPropTreeInitialized, onReferenceEvent, onVirtualContainerCreated, paramString, 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, verifyTreeMethods inherited from class com.iizix.prop.GProp
addPropError, addPropListener, convertPropError, dispose, equals, equals, equalsErrors, equalsObj, equalsPropValue, equalValues, extendsClone, finalize, fine, fine, finer, finer, finest, finest, fromElementString, getAliasName, 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, 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, warningMethods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.iizix.prop.IClassReferenceOwner
getClassReferenceRuntimeInstance, getProp, getRuntimeClassInstance, getRuntimeClassInstanceMethods inherited from interface com.iizix.prop.ICustomDataProvider
getCustomData, putCustomData, putCustomDataIfAbsentMethods inherited from interface com.iizix.gyro.IFocusComp
requestFocus, requestFocus, requestFocusEx, requestFocusExMethods inherited from interface com.iizix.prop.IGProp
addPropError, addPropListener, dispose, equals, fine, fine, finer, finer, finest, finest, fromElementString, getAppSessionGyro, getAtomPath, getClientSessionGyro, 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, list, list, list, list, list, mapAliasToReference, mapReferenceToAlias, mapReferenceToProjectRelative, moveProp, moveProp, moveProp, onEvent, onEventSelf, onPropTreeInitialized, onRemoteEvent, 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, warningMethods inherited from interface com.iizigo.link.java.IJavaClassLinkEnabler
addClassLinkOperations, isClassLinkCapableMethods inherited from interface com.iizigo.link.java.IJavaMethodLinkEnabler
addMethodLinkOperations, isMethodLinkCapableMethods inherited from interface com.iizigo.link.ILinkCapable
getDragDropHTMLMethods inherited from interface com.iizix.gyro.IMessageBox
messageBox, messageBoxMethods inherited from interface com.iizix.api.IPrivateStorage
getPrivateData, getPrivateData, setPrivateDataMethods inherited from interface com.iizix.prop.IPropCnr
addProp, addProp, addProp2, addProp2, canRequestFocus, canRequestFocus, canRequestFocus, containsProp, containsProp, couldRequestFocusIfVirtualized, 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, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, 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, isSibling, 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, validateClassInstancesMethods inherited from interface com.iizigo.prop.IPropDesigner
findIResource, getAdapterMethods inherited from interface com.iizigo.java.IShowJavaSource
showJava, showJavaMethods inherited from interface com.iizigo.link.vs.IUICreationFromVS
getDragDropTextMethods inherited from interface com.iizix.prop.vs.IVSClassReferenceOwner
getClassReferenceAtom, getClassReferenceImplementsInterface, getClassReferenceRequiredAnnotation, isClassReferenceAnnotationBackReferenceRequiredMethods inherited from interface com.iizix.prop.vs.IVSComponent
getDescription, getVSRef, isEnabled, isEnabledInParent, isReadOnly, isReadOnlyInParent, isSelected, isVisible, isVisibleInParent, messageBox, setEnabled, setEnabled, setIgnoreFocusFromUI, setReadOnly, setReadOnly, setSelected, setSelected, setVirtualizeSupportFocus, setVirtualizeSupportFocus, setVisible, setVisible, shouldIgnoreFocusFromUIMethods inherited from interface com.iizix.prop.vs.IVSMessageComponent
clearMessage, getMessage, getMessageCategory, getMessageString, isValid, setErrorMessage, setMessage, setMessage
Field Details
NONE
The "NONE" VirtualSpace.
Constructor Details
EditorVirtualSpace
public EditorVirtualSpace()Creates the VirtualSpace property container without a name. The name must be set in all cases using thesetPropertyAtomcall.EditorVirtualSpace
Creates the VirtualSpace property container with the specified name. All system-reserved names for components begins with "$".- Parameters:
propertyAtom- the name of the component, unique within it's parent.
Method Details
getVirtualSpace
Gets the VirtualSpace.- Specified by:
getVirtualSpacein interfaceIUICreationFromVS- Specified by:
getVirtualSpacein interfaceIVSAccessor- Specified by:
getVirtualSpacein interfaceIVSComponent- Overrides:
getVirtualSpacein classVirtualSpace- Returns:
- The VirtualSpace instance.
createVSParticipantsHolder
Creates a new instance of the EditorVSParticipantsHolder.- Overrides:
createVSParticipantsHolderin classVirtualSpace
getClassReference
Gets the ClassReference in the property container from the ClassReference instance.- Specified by:
getClassReferencein interfaceIClassReferenceOwner- Returns:
- The resolved class reference instance, null if not resolved or found.
getClassReference
Gets or creates the ClassReference in the property container.- Specified by:
getClassReferencein interfaceIClassReferenceOwner- Specified by:
getClassReferencein interfaceIJavaClassLinkEnabler- Specified by:
getClassReferencein interfaceIVSClassReferenceOwner- Parameters:
id- ID for the class reference if several exist, null for default.doCreateIfNotPresent- Flag to create the property (this flag can only be true in Designer)!- Returns:
- The resolved class reference instance, null if the ClassReference doesn't exist if the create flag is false. If flag is true, an orphan unresolved EditorClassReference instance (ONLY for the Designer).
getDesigner
Gets the Designer Extension for Properties.- Specified by:
getDesignerin interfaceIPropDesigner- Returns:
- The instance of the Designer Extension.
getUndoContext
Gets the undo context.- Specified by:
getUndoContextin interfaceIPropUndoContext- Returns:
- The undo context for the Editor part(s) for this container.
clone
Clone must be overridden.- Overrides:
clonein classVirtualSpace
getPossibleChildren
Gets the acceptable children property classes that can be used in conjunction with e.g. a Paste operation.- Specified by:
getPossibleChildrenin interfaceIPropCnr- Overrides:
getPossibleChildrenin classPropCnr- Returns:
- An array containing the classes of possible children, or null for no support.
getPersistentMemento
Gets the memento used to save the editor in this property.- Parameters:
doCreate- The create flag if it didn't exist before.- Returns:
- A property container that implements
IMemento, or null if this container is disposed of.
getExtendsPossibleClasses
Gets the possible classes this container supports for the Extends Framework. The default implementation is to return null.- Specified by:
getExtendsPossibleClassesin interfaceIPropCnr- Overrides:
getExtendsPossibleClassesin classPropCnr- Returns:
- List of supported classes, or null for none.
getSelectPropDialogTitle
Gets the title for selection dialog.- Specified by:
getSelectPropDialogTitlein interfaceIExtendsSelection
getSelectPropViewerFilter
Gets the viewer filter for the tree in the dialog for selecting extends property name.- Specified by:
getSelectPropViewerFilterin interfaceIExtendsSelection
getMethodReferenceAnnotationTypes
Returns the annotation types for the method reference(s).- Specified by:
getMethodReferenceAnnotationTypesin interfaceIJavaMethodLinkEnabler- Returns:
- An array with the annotations supported.
getRelativeMethodAnnotationReference
Gets the annotation relative reference to the element.- Specified by:
getRelativeMethodAnnotationReferencein interfaceIJavaMethodLinkEnabler- Returns:
- The relative reference in the method annotation of e.g. "OnUIFocus" for this component.
getJavaClassLinkEnabler
Gets the instance that links to the class.- Specified by:
getJavaClassLinkEnablerin interfaceIJavaMethodLinkEnabler- Returns:
- The class link enabler instance, never null.
isLinkCapable
Returns if this property container could potentially be link capable.This call is done many times during drag-drop and must be very fast and not cause too much garbage collection.
- Specified by:
isLinkCapablein interfaceIJavaClassLinkEnabler- Specified by:
isLinkCapablein interfaceIJavaMethodLinkEnabler- Specified by:
isLinkCapablein interfaceILinkCapable- Specified by:
isLinkCapablein interfaceIUICreationFromVS- Parameters:
data- The link data.- Returns:
- The status of capability of the operation.
getLinkOperations
Called when the drag-drop is to be performed (link or paste-link menu item). The link-capable instance fills in only what it handles.- Specified by:
getLinkOperationsin interfaceIJavaClassLinkEnabler- Specified by:
getLinkOperationsin interfaceIJavaMethodLinkEnabler- Specified by:
getLinkOperationsin interfaceILinkCapable- Specified by:
getLinkOperationsin interfaceIUICreationFromVS- Parameters:
data- The link data.- Returns:
- The list of operations required.
canCreateUI
Method returning if this property could potentially be (action, field or table) or contain (group) properties that can create UI components when drag-dropped.The VirtualSpace recurses down its VS components to query them for creation support.
- Specified by:
canCreateUIin interfaceIUICreationFromVS- Parameters:
data- The link data.- Returns:
- true if the result would lead to UI creations, false otherwise.
addCreateUILinkOperations
Adds all possible operations that could be done in a link operation for UI creation from VS.The VirtualSpace recurses down its VS components so that they can add what is required.
- Specified by:
addCreateUILinkOperationsin interfaceIUICreationFromVS- Parameters:
data- The link data.linkOps- List of link operations is filled in when operations are found.
createVSComponents
Creates the list of VS components required.- Parameters:
list- The list of components.op- The complex operation.- Returns:
- null for success, otherwise an error message.