Difference between revisions of "WireCAD.IPluginCore"
From WireCAD Online Help
Wirecadadmin (Talk | contribs) |
Wirecadadmin (Talk | contribs) |
||
(6 intermediate revisions by the same user not shown) | |||
Line 39: | Line 39: | ||
} | } | ||
#endregion | #endregion | ||
− | + | [[File:Add edit pi menu.png|200px|thumb|Add/Edit PI Info]] | |
Though not part of the interface it is customary to include any number of methods that use the method signature below.<br> | Though not part of the interface it is customary to include any number of methods that use the method signature below.<br> | ||
These can be called from the commandline if a Command has been registered that points to it.<br> | These can be called from the commandline if a Command has been registered that points to it.<br> | ||
You can register a Command in code or through a *.wpi file.<br> | You can register a Command in code or through a *.wpi file.<br> | ||
− | To edit a wpi file use the wpi file editor in '''WireCAD Plugins>Plugin Manager [Add/Edit PI Info]...''' | + | To edit a wpi file use the wpi file editor in '''WireCAD Plugins>Plugin Manager [Add/Edit PI Info]...''' <br> |
+ | |||
#region Static Methods | #region Static Methods |
Latest revision as of 19:30, 5 December 2016
WireCAD.Interfaces.IPluginCore
This interface must be implemented on any plugin used in WireCAD. The interface follows the form:
namespace YourNameSpace { public class YourPlugin : IPluginCore { #region IPluginCore Members /// <summary> /// Called before plugin is loaded to make sure that this plugin /// has permission to run at this application mode level and /// for this person(Identity) /// </summary> /// <param name="ws">The Singleton Workspace object</param> /// <param name="id">Current user identity</param> /// <returns>should return true if the plug can load</returns> public bool HasPermissionToRun(IWorkspace ws, Identity id) { return true; } /// <summary> /// This is called when the plugin is loaded at application start /// </summary> /// <param name="ws">Singleton WireCAD Workspace object</param> public void Load(IWorkspace ws) { //init code goes here } /// <summary> /// Unload code for your plugin /// </summary> /// <param name="ws"></param> public void Unload(IWorkspace ws) { //here we place any code to unload our plugin. } #endregion
Though not part of the interface it is customary to include any number of methods that use the method signature below.
These can be called from the commandline if a Command has been registered that points to it.
You can register a Command in code or through a *.wpi file.
To edit a wpi file use the wpi file editor in WireCAD Plugins>Plugin Manager [Add/Edit PI Info]...
#region Static Methods /// <summary> /// Static method that can be called from the WireCAD command line /// </summary> /// <param name="ws">WireCAD is expecting to find this parameter</param> public static void MyFirstPluginMethod(Workspace ws) { //do your stuff here } #endregion } }