Difference between revisions of "WireCAD.IPluginCore"

From WireCAD Online Help
Jump to: navigation, search
(Created page with "WireCAD.IPluginCore This interface must be implemented on any plugin used in WireCAD. The interface follows the form: namespace YourNameSpace { public class YourPlu...")
 
Line 10: Line 10:
 
     public class YourPlugin : IPluginCore
 
     public class YourPlugin : IPluginCore
 
     {
 
     {
 
        #region Fields
 
        //Place your field level variables here
 
 
        #endregion
 
 
        #region Properties
 
        //Place your Properties Here
 
 
        #endregion
 
 
 
         #region IPluginCore Members
 
         #region IPluginCore Members
 
 
         /// <summary>
 
         /// <summary>
 
         /// Called before plugin is loaded to make sure that this plugin
 
         /// Called before plugin is loaded to make sure that this plugin
Line 35: Line 23:
 
             return true;
 
             return true;
 
         }
 
         }
 
 
         /// <summary>
 
         /// <summary>
 
         /// This is called when the plugin is loaded at application start
 
         /// This is called when the plugin is loaded at application start
Line 43: Line 30:
 
         {
 
         {
 
             //init code goes here
 
             //init code goes here
 
 
 
         }
 
         }
  
Line 55: Line 40:
 
         {
 
         {
 
             //here we place any code to unload our plugin.
 
             //here we place any code to unload our plugin.
 
 
         }
 
         }
 
 
         #endregion
 
         #endregion
  
Line 69: Line 52:
 
             //do your stuff here
 
             //do your stuff here
 
         }
 
         }
 
 
         #endregion
 
         #endregion
  
 
     }
 
     }
 
  }
 
  }

Revision as of 20:53, 3 December 2016

WireCAD.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
       #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
   }
}