Interface DesignerContext

All Superinterfaces:
ClientContext, CommonContext
All Known Implementing Classes:
DesignerContextImpl, DesignerContextProxy

public interface DesignerContext extends ClientContext
  • Field Details

  • Method Details

    • exportResources

      void exportResources(@Nonnull Collection<ResourcePath> resourceIds)
      Shows the project export window (after doing a commit) with the given resource IDs checked.
      Parameters:
      resourceIds - Collection of ProjectResourceIds. Not null, but may be empty.
    • addBeanInfoSearchPath

      void addBeanInfoSearchPath(@Nonnull String packageName)
      Adds the given fully-qualified path name to the Introspector's BeanInfo search path. BeanInfos can be important for not only visual beans, but for controlling serialization.
      Parameters:
      packageName - fully-qualified path name. Not null.
    • createSerializer

      XMLSerializer createSerializer()
      Creates a new XML serializer that has been configured by all installed modules for custom serialization delegates
      Returns:
      Not null.
    • getStatusBar

      StatusBar getStatusBar()
      The StatusBar at the bottom of the Designer can be used to display temporary messages and for adding always-present little components that appear in the bottom-right
      Returns:
      Not null.
    • getResourceEditManager

      DesignerResourceEditManager getResourceEditManager()
      Resource edit manager
    • editResourceDocs

      void editResourceDocs(@Nonnull ProjectResource resource)
      Opens up the resource notes editor for the given project resources
    • getProjectBrowserRoot

      @Nonnull ProjectBrowserRoot getProjectBrowserRoot()
      Returns the root node of the project browser tree, so that modules may add their own nodes.
      See Also:
    • getDesignerPrefs

      @Nonnull PersistentProperties getDesignerPrefs()
      Returns a PersistentProperties file that will be stored on a per-user basis for "persistent" but not project-encapsulated preferences
    • getLocalizationManager

      @Nonnull DesignerLocalizationManager getLocalizationManager()
      Specified by:
      getLocalizationManager in interface ClientContext
    • getFrame

      @Nonnull Frame getFrame()
      Returns the owning frame of the designer. Handy for dialog parents
    • getModule

      @Nullable DesignerModuleHook getModule(String id)
      Description copied from interface: CommonContext
      Returns the hook class for another module, used for modules that deal with each other's models. Example: The reporting plugin's designer hook uses this to get FactoryPMI's palette.
      Specified by:
      getModule in interface CommonContext
    • getCutAction

      @Nonnull Action getCutAction()
    • getCopyAction

      @Nonnull Action getCopyAction()
    • getPasteAction

      @Nonnull Action getPasteAction()
    • getDeleteAction

      @Nonnull Action getDeleteAction()
    • getRenameAction

      @Nonnull Action getRenameAction()
    • getTagEditor

      @Nonnull TagEditor getTagEditor()
      Returns the TagEditorPanel that can be used to edit/add Tags
    • getTagBrowser

      @Nonnull com.inductiveautomation.ignition.designer.tags.frame.TagBrowserFrame getTagBrowser()
      Returns the TagBrowserPanel that can be used to select Tags
    • getOPCBrowser

      @Nonnull OPCBrowserPanel getOPCBrowser()
      Returns the OPCBrowserPanel that can be used to browse and import OPC items
    • getQueryBrowserPanel

      @Nonnull QueryBrowser getQueryBrowserPanel()
      Returns the DB query browser tool
    • getDockingManager

      @Nonnull com.jidesoft.docking.DockingManager getDockingManager()
      Returns the JIDE DockingManager for the Designer
    • getToolbarManager

      @Nonnull com.jidesoft.action.DockableBarManager getToolbarManager()
      Returns the JIDE dockable toolbar manager
    • registerResourceWorkspace

      void registerResourceWorkspace(@Nonnull ResourceWorkspace workspace)
      Registers a new ResourceWorkspace, which is a main editing area for the designer. The workspace has menus and toolbars associated with it that become visible when the workspace is focused.
      Parameters:
      workspace - The ResourceWorkspace to register with the designer
    • addPropertyEditor

      void addPropertyEditor(@Nonnull Class<? extends AbstractPropertyEditorPanel> pageClass)

      Adds a property editor page that will be incorporated into the Designer's project property editing system. This class will be instantiated the first time that the property editor is displayed, and must have either a nullary constructor or a constructor that takes a DesignerContext.

      The Property Editing framework is designed around the idea that modules will store properties in opaquely xml-serialized project resources which can be uniquely identified by their module ID and resource type. The property editing UI will handle the de/serialization and project syncing tasks so that the property editor pages can simply focus on UI.

    • registerSearchProvider

      void registerSearchProvider(@Nonnull SearchProvider provider)
      Registers a search provider that will be exposed through the find/replace system.
    • getSearchProviders

      @Nonnull List<SearchProvider> getSearchProviders()
      Get the registered SearchProviders.
      Returns:
      Not null.
    • getSearchProvider

      @Nullable SearchProvider getSearchProvider(String id)
    • registerClientPermissions

      void registerClientPermissions(Map<String,String> bundleMap)
      Register id-bundlekey pairs to limit client permissions
      Parameters:
      bundleMap - Map of ids to bundlekeys. Not null.
    • getClientPermissionBundleKeys

      @Nonnull Map<String,String> getClientPermissionBundleKeys()
    • getProject

      DesignableProject getProject()
      Description copied from interface: ClientContext
      Returns the project that this client is running. Note that this may be null before the client is fully logged in and started, because the context is created before the project is downloaded.
      Specified by:
      getProject in interface ClientContext
    • canEditResourceProtection

      boolean canEditResourceProtection()
      Checks whether or not the current logged in user can edit the protection bits of project resources.