Skip to content

T_Aml_Editor_Plugin_Base_PluginBase

AutomationML edited this page Jun 24, 2019 · 1 revision

PluginBase Class

AutomationML Editor

PluginBase is an abstract base class for PlugIn Implementation which is a basic implementation of the IAMLEditorPlugin PlugIn Interface

Inheritance Hierarchy

System.Object
  Aml.Editor.Plugin.Base.PluginBase
Namespace: Aml.Editor.Plugin.Base
Assembly: AML.Editor.PluginContracts (in AML.Editor.PluginContracts.dll) Version: 2.1

Syntax

C#

public abstract class PluginBase : IAMLEditorPlugin

VB

Public MustInherit Class PluginBase
	Implements IAMLEditorPlugin

C++

public ref class PluginBase abstract : IAMLEditorPlugin

The PluginBase type exposes the following members.

Constructors

 

Name Description
Public method PluginBase Initializes a new instance of the PluginBase class which contains the two PlugIn Commands ActivatePlugin and TerminatePlugin which every PlugIn should have.
  Back to Top

Properties

 

Name Description
Public property ActivatePlugin Gets the Activation command for the PlugIn.
Public property Commands Gets the List of commands, which are bound to the PlugIn Menu in the AutomationML Editor. The Command Names are shown in a sub-Menu in the PlugIn-Menu.
Public property DisplayName Gets the display name which is shown in the PlugIn Menu in the AutomationML Editor.
Public property IsActive Gets a value indicating whether this instance is active.
Public property IsAutoActive Gets or sets a value indicating whether this instance is automatic active when loaded. This value can be initially set and will be defined by the user.
Public property IsReactive Gets a value indicating whether this instance is reactive. Reactive PlugIn will be notified, when the actual CAEX-Object changes (Selection of any Tree view Item in an AutomationML TreeView) via the ChangeSelectedObject(CAEXBasicObject) Method or an AutomationML File is opened via the ChangeAMLFilePath(String) Method.
Public property IsReadonly Gets a value indicating whether this instance is read only. A Read only PlugIn should not change any CAEX Objects.
Public property PackageName Gets the package name which is used to download the PlugIn package from a NuGet feed. If a Package name is defined, the AMLEditor can update PlugIn packages independently from its own update cycle.
Public property TerminatePlugin Gets the Terminate command for the PlugIn.
  Back to Top

Methods

 

Name Description
Protected method ActivateCommandCanExecute Test, if the ActivatePlugin can execute.
Protected method ActivateCommandExecute The ActivatePlugin Execution Action. The IsActive Property is set to true and the PluginActivated Event is raised.
Public method ChangeAMLFilePath Changes the current amlFilePath. The Host Application will call this method when the PlugIns IsReactive Property is set to true and the Currently opened AutomationML File changes in the AMLEditor Host Application.
Public method ChangeSelectedObject Changes the selected object. The Host Application will call this method when the PlugIns IsReactive Property is set to true and the Current Selection changes in the AMLEditor Host Application.
Public methodCode example ExecuteCommand This Method enables the AutomationML Editor to execute a command. Only those commands are executable, which are identifiable via the PluginCommandsEnum.
Public methodCode example PublishAutomationMLFileAndObject PublishAutomationMLFileAndObject after the PlugIn is activated. This Method is called by the AutomationML Editor when the PluginActivated Event is handled. The AutomationML Editor will send the actual Path of the AutomationML File and the actual selected Object to the PlugIn, when an AutomationML File is currently open. If the Activation happened, when no AutomationML File was opened so far, the PlugIn will be informed as soon as this will happen, but only if the IsReactive Flag is set to true.
Protected method RaisePluginActivated Raises the PlugIn activated.
Protected method RaisePluginTerminated Raises the PlugIn terminated.
Protected method TerminateCommandCanExecute Test, if the TerminatePlugin can execute.
Protected method TerminateCommandExecute The TerminatePlugin Execution Action. The IsActive Property is set to false and the PluginTerminated Event is raised.
  Back to Top

Events

 

Name Description
Public event PluginActivated The Event occurs when the PlugIn is Activated (for example via an Activation Command). This event is raised by the PlugIn and handled by the AutomationML Editor. If the PlugIn has a UI-Control, the AutomationML Editor will show the UI and dock the Control in a Container Window, used for external Views.
Public event PluginTerminated Occurs when the PlugIn is terminated (some UserInteraction inside the PlugIn, i. e. a Window is Closed, or via a Command). This event is raised by the PlugIn and handled by the AutomationML Editor. If the PlugIn is a UI-Control IAMLEditorView, the control is removed from the Container Window. The State of the currently open AutomationML Document is checked, and if it was modified, the User will be asked to reload it.
  Back to Top

Fields

 

Name Description
Protected field commands The PlugIn commands which are shown in the PlugIn Menu.
  Back to Top

See Also

Reference

Aml.Editor.Plugin.Base Namespace

Clone this wiki locally