/// <summary> /// Add a List of recently Opened Files to the Menu /// </summary> /// <param name="menu"></param> public void UpdateRecentFileMenu(System.Windows.Forms.ToolStripMenuItem menu) { menu.DropDownItems.Clear(); string[] files = Helper.WindowsRegistry.GetRecentFiles(); foreach (string file in files) { if (System.IO.File.Exists(file)) { string sname = file; if (sname.Length > MAX_FILENAME_LENGTH) { sname = "..." + sname.Substring(file.Length - MAX_FILENAME_LENGTH, MAX_FILENAME_LENGTH); } System.Windows.Forms.ToolStripMenuItem mbi = new System.Windows.Forms.ToolStripMenuItem(sname); mbi.Tag = file; mbi.Click += new EventHandler(OpenRecent); System.Windows.Forms.KeysConverter kc = new KeysConverter(); LoadFileWrappersExt.SetShurtcutKey(mbi, GetShortCut(menu.DropDownItems.Count + 1)); menu.DropDownItems.Add(mbi); } } }
/// <summary> /// Add one Dock to the List /// </summary> /// <param name="c"></param> /// <param name="first"></param> void AddDockItem(Ambertation.Windows.Forms.DockPanel c, bool first) { ToolStripMenuItem mi = new ToolStripMenuItem(c.Text); if (first) { miWindow.DropDownItems.Add("-"); } mi.Image = c.TabImage; mi.Click += new EventHandler(Activate_miWindowDocks); mi.Tag = c; mi.Checked = c.IsOpen; if (c.Tag != null) { if (c.Tag is System.Windows.Forms.Shortcut) { LoadFileWrappersExt.SetShurtcutKey(mi, (System.Windows.Forms.Shortcut)c.Tag); } } /*c.VisibleChanged += new EventHandler(CloseDockControl); * c.Closed += new EventHandler(CloseDockControl);*/ c.OpenedStateChanged += new EventHandler(CloseDockControl); c.Tag = mi; miWindow.DropDownItems.Add(mi); }
/// <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)); }
/// <summary> /// Create a new Instance /// </summary> /// <param name="tool"></param> public ActionToolDescriptor(SimPe.Interfaces.IToolAction tool) { //this.lp = lp; this.tool = tool; ll = new SteepValley.Windows.Forms.XPLinkedLabelIcon(); ll.Name = tool.ToString(); if (tool.Icon != null) { if (tool.Icon is System.Drawing.Bitmap) { ll.Icon = System.Drawing.Icon.FromHandle(((System.Drawing.Bitmap)tool.Icon).GetHicon()); } } ll.Text = SimPe.Localization.GetString(tool.ToString()); ll.LinkArea = new System.Windows.Forms.LinkArea(0, ll.Text.Length); ll.Font = new System.Drawing.Font("Verdana", ll.Font.Size, System.Drawing.FontStyle.Bold); ll.Height = 16; ll.AutoSize = true; ll.LinkClicked += new EventHandler(LinkClicked); mi = new System.Windows.Forms.ToolStripMenuItem(ll.Text); mi.Click += new EventHandler(LinkClicked); mi.Image = tool.Icon; LoadFileWrappersExt.SetShurtcutKey(mi, tool.Shortcut); mi.EnabledChanged += new EventHandler(mi_EnabledChanged); mi.CheckedChanged += new EventHandler(mi_CheckedChanged); if (tool.Icon != null) { bi = new MyButtonItem("action." + tool.GetType().Namespace + "." + tool.GetType().Name); bi.Text = ""; bi.ToolTipText = ll.Text; bi.Image = tool.Icon; //bi.BuddyMenu = mi; bi.Checked = mi.Checked; bi.Enabled = mi.Enabled; bi.Click += new EventHandler(LinkClicked); } //Make Sure the Action is disabled on StartUp ChangeEnabledStateEventHandler(null, new SimPe.Events.ResourceEventArgs(lp)); }