using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Toolbox.Library; namespace PluginContracts { /// /// Reprenets a plguin to be loaded externally. /// These will be loaded if a project uses this, is in the Lib/Plugins folder /// and that the .dll has .plg in the name. /// public interface IPlugin { /// /// The name of the plugin. /// string Name { get; } /// /// The author of the plugin. /// string Author { get; } /// /// The description of the plugin. /// string Description { get; } /// /// The version of the plugin. /// string Version { get; } /// /// A type array to load custom data /// These can load to load new files /// These can also load to load custom menu extensions /// Type[] Types { get; } //Types hold File extensions /// /// Method to execute when the file is loaded. /// void Load(); /// /// Method to execute when the file is unloaded. /// void Unload(); } }