Class EUIPanelPart

All Implemented Interfaces:
IShowJavaSource, ILinkCapable, IJavaClassLinkEnabler, IJavaMethodLinkEnabler, IUIBuilderFromVSLinkEnabler, IUIComponentLinkEnabler, IEImagePreview, IEUICompBase, IEUICompCommon, IEUIContainer, IEUIPanel, IDefaultGUnitProvider, IDefaultPropertyValueProvider<GUnit>, IExtendsSelection, IPropDesigner, IPropRenameable, IPropUndoContext, ITransferContainerProps, IStylesFilter, IVSLinkEnabler, IVSParticipantLinkEnabler, EventListener, IFocusComp, IMessageBox, IUIPanelAnimation, IComponent, IClassReferenceOwner, ICustomDataProvider, IGProp<GProp<?>[]>, IPropCnr, IReferrerParticipant, ISelectorOwner, IUIClassReferenceOwner, IUIComp, IUIContainer, IUIContextMenuOwner, IUIFocusComp, IUIGroupSeparator, IUIPanelOwner, IVSAccessor, IVSComponentListener, IVSComponentState, IVSFieldListener, IVSGenericComponentListener, IVSParticipant, Cloneable, org.eclipse.core.runtime.IAdaptable

public class EUIPanelPart extends UIPanelPart implements IEUIPanel, IDefaultGUnitProvider
Editor class for UIPanel.
Author:
Christopher Mindus
  • Constructor Details

    • EUIPanelPart

      public EUIPanelPart()
      Creates the property container without a name. The name must be set in all cases using the setPropertyAtom call.
    • EUIPanelPart

      public EUIPanelPart(Atom propertyAtom)
      Creates the 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

    • createLayout

      public EPanelData createLayout()
      Create the layout property.
      Specified by:
      createLayout in interface IEUIPanel
      Overrides:
      createLayout in class UIPanelBase
      Returns:
      A new instance of EPanelData named Atom.LAYOUT.
    • createCompsCnr

      public EUIComps createCompsCnr()
      Creates the components for the Editor.
      Specified by:
      createCompsCnr in interface IEUIContainer
      Overrides:
      createCompsCnr in class UIContainer
    • createStyles

      public Styles createStyles()
      Creates the Styles container (can be overridden by Designer to create EditorStyles).
      Specified by:
      createStyles in interface IEUIContainer
      Overrides:
      createStyles in class UIComp
    • addPredefinedPropsImpl

      public void addPredefinedPropsImpl() throws PropException
      Adds the predefined containers for identifications, fields and actions. This method is overridden fully by the Editor versions of the class.
      Specified by:
      addPredefinedPropsImpl in interface IEUIContainer
      Overrides:
      addPredefinedPropsImpl in class UIContainer
      Throws:
      PropException - For property exceptions.
    • getPredefinedProps

      public void getPredefinedProps()
      Gets the references to predefined properties.
      Specified by:
      getPredefinedProps in interface IEUIContainer
      Overrides:
      getPredefinedProps in class UIPanelBase
    • getCompsCnr

      public EUIComps getCompsCnr()
      Gets the container associated with this layout manager and the UI container.
      Specified by:
      getCompsCnr in interface IUIContainer
      Overrides:
      getCompsCnr in class UIContainer
      Returns:
      The UI components container.
    • getImagePreview

      public ImagePreview getImagePreview()
      Gets the image preview.
      Specified by:
      getImagePreview in interface IEImagePreview
    • getDesigner

      public UIContainerDesignerProp getDesigner()
      Gets the Designer Extension for Properties.
      Specified by:
      getDesigner in interface IEUIContainer
      Specified by:
      getDesigner in interface IPropDesigner
      Returns:
      The instance of the Designer Extension.
    • getUndoContext

      public org.eclipse.core.commands.operations.IUndoContext getUndoContext()
      Gets the undo context. For the UIPanel, this will ripple up to the editor containing this panel.
      Specified by:
      getUndoContext in interface IPropUndoContext
      Returns:
      The undo context for the Editor part(s) for this container.
    • getCNImage

      public org.eclipse.swt.graphics.Image getCNImage(boolean isMobile)
      Gets the image for the Common Navigator.
      Specified by:
      getCNImage in interface IEUICompBase
      Parameters:
      isMobile - The mobile theme flag.
      Returns:
      Image or null if there is no image.
    • getCNDescriptionType

      public String getCNDescriptionType()
      Provide a type description for the status bar view, if available.
      Specified by:
      getCNDescriptionType in interface IEUICompBase
      Specified by:
      getCNDescriptionType in interface ITransferContainerProps
      Returns:
      A type description for the status bar view, or null if not available.
    • clone

      public EUIPanelPart clone()
      Clone must be overridden.
      Overrides:
      clone in class UIPanelBase
    • getClassReference

      public EditorClassReference getClassReference(String id, boolean doCreateIfNotPresent)
      Gets or creates the ClassReference in the property container.

      Panel do not use "ID" because there is a single class connection with the name Atom.CLASS.

      Specified by:
      getClassReference in interface IClassReferenceOwner
      Specified by:
      getClassReference in interface IEUIPanel
      Specified by:
      getClassReference in interface IJavaClassLinkEnabler
      Specified by:
      getClassReference in interface IUIClassReferenceOwner
      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).
    • getPossibleCompChildren

      public Class<?>[] getPossibleCompChildren()
      Gets the acceptable component children property classes that can be used in conjunction with e.g. a Paste operation.
      Specified by:
      getPossibleCompChildren in interface IEUIContainer
      Returns:
      An array containing the classes of possible children, or null for no support.
    • getAcceptedLayoutMgrs

      public Class<?>[] getAcceptedLayoutMgrs()
      Gets the possible Layout Manager classes for this component.
      Specified by:
      getAcceptedLayoutMgrs in interface IEUIContainer
      Returns:
      null To accept all.
    • getStylesName

      public String getStylesName(EditorStyles styles)
      The name of this styles property for the common navigator.
      Specified by:
      getStylesName in interface IStylesFilter
      Parameters:
      styles - The Styles property container.
    • getSupportedStyles

      public String[] getSupportedStyles(EditorStyles styles)
      Gets the groups supported by the component.
      Specified by:
      getSupportedStyles in interface IStylesFilter
      Parameters:
      styles - The Styles property container.
      Returns:
      An array of property names of the styles. Names beginning with '*' indicates it's a group.
    • getExtendsPossibleClasses

      public Class<?>[] getExtendsPossibleClasses()
      Gets the possible classes this container supports for the Extends Framework. The default implementation is to return null.
      Specified by:
      getExtendsPossibleClasses in interface IPropCnr
      Overrides:
      getExtendsPossibleClasses in class PropCnr
      Returns:
      List of supported classes, or null for none.
    • getSelectPropDialogTitle

      public String getSelectPropDialogTitle()
      Gets the title for selection dialog.
      Specified by:
      getSelectPropDialogTitle in interface IExtendsSelection
    • getSelectPropViewerFilter

      public org.eclipse.jface.viewers.ViewerFilter getSelectPropViewerFilter()
      Gets the viewer filter for the tree in the dialog for selecting extends property name.
      Specified by:
      getSelectPropViewerFilter in interface IExtendsSelection
    • verify

      public boolean verify(PropVerification verification)
      Verifies this property container. The check performed is the extension of classes and that no circular reference is present.
      Specified by:
      verify in interface IGProp<GProp<?>[]>
      Overrides:
      verify in class UIPanelBase
      Parameters:
      verification - The property verification class.
      Returns:
      true if verification should proceed, false if disposed of and verification should not take place.
    • getDefaultValue

      public GUnit getDefaultValue(Atom name, GUnit defaultValue)
      Gets the default value to use when a value is defined and no previous text is available.
      Specified by:
      getDefaultValue in interface IDefaultPropertyValueProvider<GUnit>
      Parameters:
      name - The edited property name.
      defaultValue - The default value as defined by the property editor information.
    • canMark

      public boolean canMark()
      Checks if the component can be marked. By default all components and containers can be marked, except non-visible ones and panels.
      Specified by:
      canMark in interface IEUICompCommon
      Returns:
      true, always.
    • getTransferProps

      public Object[] getTransferProps()
      Returns the list of properties that are transferable between layout managers.
      Specified by:
      getTransferProps in interface ITransferContainerProps
      Returns:
      The list of String's or Atom's that are transferable, null for none.