/// <exception cref="ArgumentNullException"> /// <paramref name="environment"/> is null. /// </exception> protected SimplePlugin(EnClassEnvironment environment) : base(environment) { menuItem = new ToolStripMenuItem(); menuItem.Text = MenuText; menuItem.ToolTipText = string.Format(Strings.PluginTooltip, Name, Author); menuItem.Click += new EventHandler(menuItem_Click); }
/// <exception cref="ArgumentNullException"> /// <paramref name="environment"/> is null. /// </exception> protected Plugin(EnClassEnvironment environment) { if (environment == null) { throw new ArgumentNullException("environment"); } this.environment = environment; }
private void LoadPlugin(Assembly assembly) { try { foreach (Type type in assembly.GetTypes()) { if (type.IsSubclassOf(typeof(Plugin))) { EnClassEnvironment environment = new EnClassEnvironment(Workspace.Default, docManager); Plugin plugin = (Plugin) Activator.CreateInstance(type, environment); plugins.Add(plugin); } } } catch (Exception ex) { MessageBox.Show( string.Format(Strings.ErrorCouldNotLoadPlugins, assembly.FullName + "\n" + ex.Message), Strings.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); } }