/// <summary> /// Link all Listeners with the GUI Control /// </summary> /// <param name="ev"></param> public void AddListeners(ref SimPe.Events.ChangedResourceEvent ev) { //load Listeners foreach (IListener item in FileTable.ToolRegistry.Listeners) { ev += new SimPe.Events.ChangedResourceEvent(item.SelectionChangedHandler); item.SelectionChangedHandler(item, new SimPe.Events.ResourceEventArgs(null)); } }
/// <summary> /// Add one single MenuItem (and all needed Parents) /// </summary> /// <param name="item"></param> /// <param name="parts"></param> public static void AddMenuItem(ref SimPe.Events.ChangedResourceEvent ev, ToolStripItemCollection parent, ToolMenuItemExt item, string[] parts) { System.Reflection.Assembly a = typeof(LoadFileWrappersExt).Assembly; for (int i = 0; i < parts.Length - 1; i++) { string name = SimPe.Localization.GetString(parts[i]); ToolStripMenuItem mi = null; //find an existing Menu Item if (parent != null) { foreach (ToolStripMenuItem oi in parent) { if (oi.Text.ToLower().Trim() == name.ToLower().Trim()) { mi = oi; break; } } } if (mi == null) { mi = new ToolStripMenuItem(name); if (parent != null) { System.IO.Stream imgstr = a.GetManifestResourceStream("SimPe." + parts[i] + ".png"); if (imgstr != null) { mi.Image = System.Drawing.Image.FromStream(imgstr); } parent.Insert(0, mi); } } parent = mi.DropDownItems; } if (item.ToolExt != null) { LoadFileWrappersExt.SetShurtcutKey(item, item.ToolExt.Shortcut); item.Image = item.ToolExt.Icon; //item.ToolTipText = item.ToolExt.ToString(); } parent.Add(item); ev += new SimPe.Events.ChangedResourceEvent(item.ChangeEnabledStateEventHandler); item.ChangeEnabledStateEventHandler(item, new SimPe.Events.ResourceEventArgs(null)); }