Class DesignerContextImpl
java.lang.Object
com.inductiveautomation.ignition.client.model.AbstractClientContext
com.inductiveautomation.ignition.designer.DesignerContextImpl
- All Implemented Interfaces:
ClientContext,CommonContext,DesignerContext
-
Nested Class Summary
Nested classes/interfaces inherited from class com.inductiveautomation.ignition.client.model.AbstractClientContext
AbstractClientContext.ClientContextResourceListener -
Field Summary
Fields inherited from class com.inductiveautomation.ignition.client.model.AbstractClientContext
changeSupport, globalProps, log, loggingManager, project, projectDescription, projectTitleFields inherited from interface com.inductiveautomation.ignition.designer.model.DesignerContext
SCRIPT_MANAGER_PROPERTY -
Constructor Summary
ConstructorsConstructorDescriptionDesignerContextImpl(IgnitionDesigner designerGui, LaunchContext launchContext, DesignableProject project) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddBeanInfoSearchPath(String packageName) Adds the given fully-qualified path name to the Introspector's BeanInfo search path.voidAdds the Legacy Script project node for pre-7.7 script modules that have been imported by the user.voidaddPropertyEditor(Class<? extends AbstractPropertyEditorPanel> pageClass) Adds a property editor page that will be incorporated into the Designer's project property editing system.booleanChecks whether or not the current logged in user can edit the protection bits of project resources.Returns an instance of the XMLDeserializer that can be used to deserialize project resources.Creates a new XML serializer that has been configured by all installed modules for custom serialization delegatesdeserialize(byte[] data, org.apache.log4j.Logger log) Convenience function to deserialize a gzipped byte array into a single object.voideditResourceDocs(ProjectResource resource) Opens up the resource notes editor for the given project resourcesvoidexportResources(Collection<ResourcePath> resourceIds) Shows the project export window (after doing a commit) with the given resource IDs checked.voidReturns a PersistentProperties file that will be stored on a per-user basis for "persistent" but not project-encapsulated preferencescom.jidesoft.docking.DockingManagerReturns the JIDE DockingManager for the DesignerReturns the shared task execution manager for this clientgetFrame()Returns the owning frame of the designer.getLicenseState(String moduleId) Returns the license state for the given moduleprotected LoggerExReturns the hook class for another module, used for modules that deal with each other's models.getModuleIcon(String moduleId) Retrieve the list of all modules currently loaded in this contextReturns the appropriate named query rpc for the context.Returns the OPCBrowserPanel that can be used to browse and import OPC itemsReturns the project that this client is running.Returns the root node of the project browser tree, so that modules may add their own nodes.Returns the DB query browser toolgetResourceCategoryKey(ResourcePath resourcePath) Resource edit managergetResourceIcon(ResourcePath path) Returns the RootPaneContainer that is currently the owner of the clientReturns the ScriptManager that can be used to execute Python scripts.Get the registered SearchProviders.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-rightcom.inductiveautomation.ignition.designer.tags.frame.TagBrowserFrameReturns the TagBrowserPanel that can be used to select TagsReturns the TagEditorPanel that can be used to edit/add TagsReturns the manager that provides access to Ignition's tag system.com.jidesoft.action.DockableBarManagerReturns the JIDE dockable toolbar managerprotected ProjectResourceListenerMake a custom resource listener so we can update the script playground with any project script changesvoidregisterClientPermissions(Map<String, String> bundleMap) Register id-bundlekey pairs to limit client permissionsvoidregisterResourceWorkspace(ResourceWorkspace workspace) Registers a newResourceWorkspace, which is a main editing area for the designer.voidregisterSearchProvider(SearchProvider provider) Registers a search provider that will be exposed through the find/replace system.protected voidprotected voidprotected voidvoidshutdown()Methods inherited from class com.inductiveautomation.ignition.client.model.AbstractClientContext
addPropertyChangeListener, addPropertyChangeListener, getAuthProfileName, getDefaultDatasourceName, getDefaultTagProviderName, getEdgeEditions, getEventBus, getExpressionFunctionFactory, getGlobalProps, getLaunchContext, getLoggingManager, getOrDefault, getProgressManager, getProjectDescription, getProjectName, getProjectTitle, getTagPollRate, getUIEventBus, initProject, installLegacyScriptLibrary, removePropertyChangeListener, removePropertyChangeListener, resetExpressionFunctionFactory, setGlobalProps, startupMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.inductiveautomation.ignition.client.model.ClientContext
addPropertyChangeListener, addPropertyChangeListener, getAuthProfileName, getDefaultDatasourceName, getDefaultTagProviderName, getLaunchContext, getProgressManager, getProjectName, getTagPollRate, getUIEventBus, removePropertyChangeListener, removePropertyChangeListenerMethods inherited from interface com.inductiveautomation.ignition.common.model.CommonContext
getEdgeEditions, getEventBus, getExpressionFunctionFactory, getLoggingManager
-
Constructor Details
-
DesignerContextImpl
public DesignerContextImpl(IgnitionDesigner designerGui, LaunchContext launchContext, DesignableProject project)
-
-
Method Details
-
getProject
Description copied from interface:ClientContextReturns 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:
getProjectin interfaceClientContext- Specified by:
getProjectin interfaceDesignerContext
-
getLocalizationManager
- Specified by:
getLocalizationManagerin interfaceClientContext- Specified by:
getLocalizationManagerin interfaceDesignerContext
-
getNamedQueryManager
Description copied from interface:ClientContextReturns the appropriate named query rpc for the context. In the gateway and client, we only want to use named queries that have been saved. In the designer, we want to use the current version so that reports and bindings can be seen and used for testing before the project is saved.- Specified by:
getNamedQueryManagerin interfaceClientContext- Returns:
- The correct NamedQueryManager implementation for the scope.
-
getExecutionManager
Description copied from interface:ClientContextReturns the shared task execution manager for this client- Specified by:
getExecutionManagerin interfaceClientContext
-
getModule
Description copied from interface:CommonContextReturns 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:
getModulein interfaceCommonContext- Specified by:
getModulein interfaceDesignerContext
-
getModules
Description copied from interface:ClientContextRetrieve the list of all modules currently loaded in this context- Specified by:
getModulesin interfaceClientContext
-
getLicenseState
Description copied from interface:CommonContextReturns the license state for the given module- Specified by:
getLicenseStatein interfaceCommonContext
-
exportResources
Description copied from interface:DesignerContextShows the project export window (after doing a commit) with the given resource IDs checked.- Specified by:
exportResourcesin interfaceDesignerContext- Parameters:
resourceIds- Collection of ProjectResourceIds. Not null, but may be empty.
-
createExpressionFunctionFactory
- Specified by:
createExpressionFunctionFactoryin classAbstractClientContext
-
fireScriptManagerInitialized
public void fireScriptManagerInitialized() -
getResourceCategoryKey
-
getResourceCategoryKey
-
getResourceDisplayName
-
getResourceDisplayName
-
getResourceIcon
-
getModuleIcon
-
registerResourceWorkspace
Description copied from interface:DesignerContextRegisters a newResourceWorkspace, 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.- Specified by:
registerResourceWorkspacein interfaceDesignerContext- Parameters:
workspace- TheResourceWorkspaceto register with the designer
-
getSearchProviders
Description copied from interface:DesignerContextGet the registered SearchProviders.- Specified by:
getSearchProvidersin interfaceDesignerContext- Returns:
- Not null.
-
getSearchProvider
- Specified by:
getSearchProviderin interfaceDesignerContext
-
registerClientPermissions
Description copied from interface:DesignerContextRegister id-bundlekey pairs to limit client permissions- Specified by:
registerClientPermissionsin interfaceDesignerContext- Parameters:
bundleMap- Map of ids to bundlekeys. Not null.
-
getClientPermissionBundleKeys
- Specified by:
getClientPermissionBundleKeysin interfaceDesignerContext
-
registerSearchProvider
Description copied from interface:DesignerContextRegisters a search provider that will be exposed through the find/replace system.- Specified by:
registerSearchProviderin interfaceDesignerContext
-
getFrame
Description copied from interface:DesignerContextReturns the owning frame of the designer. Handy for dialog parents- Specified by:
getFramein interfaceDesignerContext
-
getCutAction
- Specified by:
getCutActionin interfaceDesignerContext
-
getCopyAction
- Specified by:
getCopyActionin interfaceDesignerContext
-
getPasteAction
- Specified by:
getPasteActionin interfaceDesignerContext
-
getDeleteAction
- Specified by:
getDeleteActionin interfaceDesignerContext
-
getRenameAction
- Specified by:
getRenameActionin interfaceDesignerContext
-
getTagManager
Description copied from interface:CommonContextReturns the manager that provides access to Ignition's tag system.- Specified by:
getTagManagerin interfaceClientContext- Specified by:
getTagManagerin interfaceCommonContext
-
addBeanInfoSearchPath
Description copied from interface:DesignerContextAdds 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.- Specified by:
addBeanInfoSearchPathin interfaceDesignerContext- Parameters:
packageName- fully-qualified path name. Not null.
-
createSerializer
Description copied from interface:DesignerContextCreates a new XML serializer that has been configured by all installed modules for custom serialization delegates- Specified by:
createSerializerin interfaceDesignerContext- Returns:
- Not null.
-
createDeserializer
Description copied from interface:CommonContextReturns an instance of the XMLDeserializer that can be used to deserialize project resources. Note that this is the only safe way to obtain an instance of XMLDeserializer, because the context will pass the new deserializer around to all loaded modules, giving them a chance to initialize any custom deserialization deletes on it first.- Specified by:
createDeserializerin interfaceCommonContext
-
getStatusBar
Description copied from interface:DesignerContextThe 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- Specified by:
getStatusBarin interfaceDesignerContext- Returns:
- Not null.
-
getResourceEditManager
Description copied from interface:DesignerContextResource edit manager- Specified by:
getResourceEditManagerin interfaceDesignerContext
-
shutdown
public void shutdown()- Overrides:
shutdownin classAbstractClientContext
-
getRootPaneContainer
Description copied from interface:ClientContextReturns the RootPaneContainer that is currently the owner of the client- Specified by:
getRootPaneContainerin interfaceClientContext
-
getProjectBrowserRoot
Description copied from interface:DesignerContextReturns the root node of the project browser tree, so that modules may add their own nodes.- Specified by:
getProjectBrowserRootin interfaceDesignerContext- See Also:
-
deserialize
Description copied from interface:ClientContextConvenience function to deserialize a gzipped byte array into a single object. If multiple objects are found, they will be discarded. Warnings are logged to the given logger. If data is null or empty, null is returned.- Specified by:
deserializein interfaceClientContext- Throws:
SerializationException
-
addPropertyEditor
Description copied from interface:DesignerContextAdds 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.
- Specified by:
addPropertyEditorin interfaceDesignerContext
-
getScriptManager
Description copied from interface:CommonContextReturns the ScriptManager that can be used to execute Python scripts.- Specified by:
getScriptManagerin interfaceCommonContext
-
getDockingManager
@Nonnull public com.jidesoft.docking.DockingManager getDockingManager()Description copied from interface:DesignerContextReturns the JIDE DockingManager for the Designer- Specified by:
getDockingManagerin interfaceDesignerContext
-
getToolbarManager
@Nonnull public com.jidesoft.action.DockableBarManager getToolbarManager()Description copied from interface:DesignerContextReturns the JIDE dockable toolbar manager- Specified by:
getToolbarManagerin interfaceDesignerContext
-
getTagEditor
Description copied from interface:DesignerContextReturns the TagEditorPanel that can be used to edit/add Tags- Specified by:
getTagEditorin interfaceDesignerContext
-
getTagBrowser
@Nonnull public com.inductiveautomation.ignition.designer.tags.frame.TagBrowserFrame getTagBrowser()Description copied from interface:DesignerContextReturns the TagBrowserPanel that can be used to select Tags- Specified by:
getTagBrowserin interfaceDesignerContext
-
getOPCBrowser
Description copied from interface:DesignerContextReturns the OPCBrowserPanel that can be used to browse and import OPC items- Specified by:
getOPCBrowserin interfaceDesignerContext
-
getQueryBrowserPanel
Description copied from interface:DesignerContextReturns the DB query browser tool- Specified by:
getQueryBrowserPanelin interfaceDesignerContext
-
editResourceDocs
Description copied from interface:DesignerContextOpens up the resource notes editor for the given project resources- Specified by:
editResourceDocsin interfaceDesignerContext
-
getDesignerPrefs
Description copied from interface:DesignerContextReturns a PersistentProperties file that will be stored on a per-user basis for "persistent" but not project-encapsulated preferences- Specified by:
getDesignerPrefsin interfaceDesignerContext
-
canEditResourceProtection
public boolean canEditResourceProtection()Description copied from interface:DesignerContextChecks whether or not the current logged in user can edit the protection bits of project resources.- Specified by:
canEditResourceProtectionin interfaceDesignerContext
-
addLegacyScriptNode
public void addLegacyScriptNode()Adds the Legacy Script project node for pre-7.7 script modules that have been imported by the user. -
showError
-
showError
-
showError
-
getLogger
-
newProjectResourceListener
Make a custom resource listener so we can update the script playground with any project script changes- Overrides:
newProjectResourceListenerin classAbstractClientContext
-