Package com.iizigo.vs.wizards
Class VSComponentCreation<VSTYPE extends VSComponent>
- java.lang.Object
- com.iizigo.vs.wizards.VSComponentCreation<VSTYPE>
- All Implemented Interfaces:
INewVSComponentWizardInfo
- Direct Known Subclasses:
VSActionCreation,VSColumnCreation,VSFieldCreation,VSTableCreation
public abstract class VSComponentCreation<VSTYPE extends VSComponent> extends java.lang.Object implements INewVSComponentWizardInfo
Class for VirtualSpace component creation used in the wizards e.g. when creating panel components.- Author:
- Christopher Mindus
Field Summary
Fields Modifier and Type Field Description protected VSTYPEcreatedComponentThe created component.
Constructor Summary
Constructors Constructor Description VSComponentCreation(EditorVirtualSpace virtualSpace, java.lang.String requestedName, Value.Type valueType, boolean doCreateDefaultValue, boolean isChooseTypeAllowed, java.lang.Boolean isNullAllowed, VSReferenceOwnerData<VSTable,VSTableReference> tableOwner, IPropUndoRedo undoRedo)Constructor.
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract booleanassignReference()Completes the referencing to the VS component in the UI component.VSTYPEcreateVSComponent(ComplexOperation op)Creates the component required with the specified name.protected abstract VSTYPEdoCreate(Atom name, PropCnr parent, ComplexOperation op)Creates the component required with the specified name.booleandoCreateDefaultValue()Returns if a default value should be created.abstract java.lang.StringgetDefaultName()Gets the default name for the VS component if no request name is defined.java.lang.StringgetDescription()Gets the description.java.lang.StringgetRequestedName()Gets the requested name.VSReferenceOwnerData<VSTable,VSTableReference>getTableOwner()Gets the table owner, for table column creation.java.lang.StringgetTitle()Gets the title.IPropUndoRedogetUndoRedo()Gets the undo/redo instance.Value.TypegetValueType()Returns the value type where this applies (for VS Field and VS Column Header).EditorVirtualSpacegetVirtualSpace()Returns the VirtualSpace.PropCnrgetVSParent()Gets the parent for the component.booleanisChooseTypeAllowed()Returns if the user is allowed to choose type.booleanisComponentSelectable()Returns if the VS component should be selectable or not.java.lang.BooleanisNullAllowed()Returns if null is allowed.abstract voidonWizard(AddUICompWizard wizard)Called to create required wizard pages.voidregisterRequestedNameListener(java.lang.Runnable nameListener)Registers a requested name listener.voidsetDescription(java.lang.String descr)Gets the description.voidsetNullAllowed(boolean isNullAllowed)Sets the null allowed flag.voidsetRequestedName(java.lang.String requestedName)Sets the requested name.voidsetTitle(java.lang.String title)Sets the title.voidsetValueType(Value.Type valueType)Sets the value type where this applies (for VS Field and VS Column Header).voidsetVSParent(PropCnr vsParent)Sets the parent.
Field Detail
createdComponent
protected VSTYPE extends VSComponent createdComponent
The created component.
Constructor Detail
VSComponentCreation
public VSComponentCreation(EditorVirtualSpace virtualSpace, java.lang.String requestedName, Value.Type valueType, boolean doCreateDefaultValue, boolean isChooseTypeAllowed, java.lang.Boolean isNullAllowed, VSReferenceOwnerData<VSTable,VSTableReference> tableOwner, IPropUndoRedo undoRedo)
Constructor.- Parameters:
virtualSpace- The VirtualSpace.requestedName- The requested name of the component.valueType- The value type chosen when the VS type is VSField or VSColumnHeader.doCreateDefaultValue- Flag to create a default value.isChooseTypeAllowed- If user is allowed to choose value type.isNullAllowed- Flag null is allowed, null to enable user to choose.tableOwner- The table owner, or null for not available (or not applicable).undoRedo- The undo/redo instance.
Method Detail
registerRequestedNameListener
public void registerRequestedNameListener(java.lang.Runnable nameListener)
Registers a requested name listener.- Specified by:
registerRequestedNameListenerin interfaceINewVSComponentWizardInfo
isComponentSelectable
public final boolean isComponentSelectable()
Returns if the VS component should be selectable or not.- Specified by:
isComponentSelectablein interfaceINewVSComponentWizardInfo- Returns:
- true by default in order to enable selecting an existing component.
setTitle
public final void setTitle(java.lang.String title)
Sets the title.- Parameters:
title- The title for the page, or null for default.
getTitle
public final java.lang.String getTitle()
Gets the title.- Specified by:
getTitlein interfaceINewVSComponentWizardInfo- Returns:
- The title for the page, or null for default.
getDescription
public final java.lang.String getDescription()
Gets the description.- Specified by:
getDescriptionin interfaceINewVSComponentWizardInfo- Returns:
- The description of the page, or null for default.
setDescription
public final void setDescription(java.lang.String descr)
Gets the description.- Parameters:
descr- The description of the page, or null for default.
getVSParent
public final PropCnr getVSParent()
Gets the parent for the component. This is initially set to the VirtualSpace.
setVSParent
public final void setVSParent(PropCnr vsParent)
Sets the parent.
setRequestedName
public final void setRequestedName(java.lang.String requestedName)
Sets the requested name.- Specified by:
setRequestedNamein interfaceINewVSComponentWizardInfo- Parameters:
requestedName- null if no name is requested.
getRequestedName
public final java.lang.String getRequestedName()
Gets the requested name.- Specified by:
getRequestedNamein interfaceINewVSComponentWizardInfo- Returns:
- null if no name is requested.
getVirtualSpace
public final EditorVirtualSpace getVirtualSpace()
Returns the VirtualSpace.- Specified by:
getVirtualSpacein interfaceINewVSComponentWizardInfo
getValueType
public final Value.Type getValueType()
Returns the value type where this applies (for VS Field and VS Column Header).- Specified by:
getValueTypein interfaceINewVSComponentWizardInfo
setValueType
public final void setValueType(Value.Type valueType)
Sets the value type where this applies (for VS Field and VS Column Header).- Specified by:
setValueTypein interfaceINewVSComponentWizardInfo- Parameters:
valueType- The new value type.
isChooseTypeAllowed
public final boolean isChooseTypeAllowed()
Returns if the user is allowed to choose type.- Specified by:
isChooseTypeAllowedin interfaceINewVSComponentWizardInfo
isNullAllowed
public final java.lang.Boolean isNullAllowed()
Returns if null is allowed.- Specified by:
isNullAllowedin interfaceINewVSComponentWizardInfo- Returns:
- null to enable user to choose, otherwise Boolean.TRUE or Boolean.FALSE to disable user choice and use this setting.
setNullAllowed
public final void setNullAllowed(boolean isNullAllowed)
Sets the null allowed flag.- Specified by:
setNullAllowedin interfaceINewVSComponentWizardInfo
doCreateDefaultValue
public final boolean doCreateDefaultValue()
Returns if a default value should be created.- Specified by:
doCreateDefaultValuein interfaceINewVSComponentWizardInfo
getTableOwner
public final VSReferenceOwnerData<VSTable,VSTableReference> getTableOwner()
Gets the table owner, for table column creation.- Specified by:
getTableOwnerin interfaceINewVSComponentWizardInfo- Returns:
- The table owner, or null for not available (or not applicable).
getUndoRedo
public final IPropUndoRedo getUndoRedo()
Gets the undo/redo instance.- Specified by:
getUndoRedoin interfaceINewVSComponentWizardInfo
createVSComponent
public final VSTYPE createVSComponent(ComplexOperation op)
Creates the component required with the specified name.- Parameters:
op- The complex operation.- Returns:
- The component, initiated with potential value or value type.
getDefaultName
public abstract java.lang.String getDefaultName()
Gets the default name for the VS component if no request name is defined.
onWizard
public abstract void onWizard(AddUICompWizard wizard)
Called to create required wizard pages.- Parameters:
wizard- The wizard.
doCreate
protected abstract VSTYPE doCreate(Atom name, PropCnr parent, ComplexOperation op)
Creates the component required with the specified name.- Parameters:
name- The name.parent- The parent for the VS component.op- The complex operation.- Returns:
- The component, initiated with potential value or value type.
assignReference
public abstract boolean assignReference()
Completes the referencing to the VS component in the UI component.- Returns:
- true if the component reference is set, false if the user chose not to create this VS component.