public ProjectExplorer(Main main) { InitializeComponent(); this.main = main; foreach (Lazy <ISpriteImporter, IDescriptionMetadata> p in spriteImporter.GetLoadedPlugins()) { importSpritesButton.DropDownItems.Add(string.Format("{0} - {1} - {2}", p.Metadata.Description, p.Metadata.Author, p.Metadata.Version), p.Metadata.Icon, new EventHandler(delegate { this.ImportSprites(p.Value.ImportSprites()); })); } foreach (Lazy <ISpriteSheetExporter, IDescriptionMetadata> p in spriteSheetExporters.GetLoadedPlugins()) { exportToolStripMenuItem.DropDownItems.Add(p.Metadata.Description, null, new EventHandler(delegate { p.Value.ExportSpriteSheet(main.Project); })); } }