private MainMenu CreateMaximizedMenu()
        {
            Form parent = (Form)mdi_container.Parent;

            if (form.MainMenuStrip != null || parent.MainMenuStrip != null)
            {
                return(null);
            }

            MainMenu res = new MainMenu();

            if (parent.Menu != null)
            {
                MainMenu clone = (MainMenu)parent.Menu.CloneMenu();
                res.MergeMenu(clone);
            }

            if (form.Menu != null)
            {
                MainMenu clone = (MainMenu)form.Menu.CloneMenu();
                res.MergeMenu(clone);
            }

            if (res.MenuItems.Count == 0)
            {
                res.MenuItems.Add(new MenuItem());                   // Dummy item to get the menu height correct
            }
            res.MenuItems.Insert(0, icon_menu);

            res.SetForm(parent);
            return(res);
        }
		private MainMenu CreateMaximizedMenu ()
		{
			Form parent = (Form) mdi_container.Parent;

#if NET_2_0
			if (form.MainMenuStrip != null || parent.MainMenuStrip != null)
				return null;
#endif

			MainMenu res = new MainMenu ();

			if (parent.Menu != null) {
				MainMenu clone = (MainMenu) parent.Menu.CloneMenu ();
				res.MergeMenu (clone);
			}
			
			if (form.Menu != null) {
				MainMenu clone = (MainMenu) form.Menu.CloneMenu ();
				res.MergeMenu (clone);
			}
			
			if (res.MenuItems.Count == 0)
				res.MenuItems.Add (new MenuItem ()); // Dummy item to get the menu height correct
			
			res.MenuItems.Insert (0, icon_menu);
			
			res.SetForm (parent);
			return res;
		}
Exemple #3
0
		public void MenuItemMerge ()
		{
			MenuItem itemA2 = new MenuItem ("Exit");
			itemA2.MergeType = MenuMerge.MergeItems;
			itemA2.MergeOrder = 3;

			MenuItem itemA1 = new MenuItem ("File");
			itemA1.MenuItems.Add (itemA2);
			itemA1.MergeType = MenuMerge.MergeItems;

			MenuItem itemB2 = new MenuItem ("Open");
			itemB2.MergeOrder = 1;
			itemB2.MergeType = MenuMerge.Add;

			MenuItem itemB3 = new MenuItem ("Close");
			itemB3.MergeOrder = 2;
			itemB3.MergeType = MenuMerge.Add;

			MenuItem itemB1 = new MenuItem ("File");
			itemB1.MenuItems.Add (itemB2);
			itemB1.MenuItems.Add (itemB3);
			itemB1.MergeType = MenuMerge.MergeItems;

			MainMenu mainMenu1 = new MainMenu();
			mainMenu1.MenuItems.Add (itemA1);
			
			MainMenu mainMenu2 = new MainMenu();
			mainMenu2.MenuItems.Add (itemB1);
			
			mainMenu1.MergeMenu (mainMenu2);

			Assert.AreEqual ("File",  mainMenu1.MenuItems[0].Text,              "ItemMerge#1");
			Assert.AreEqual ("Open",  mainMenu1.MenuItems[0].MenuItems[0].Text, "ItemMerge#2");
			Assert.AreEqual ("Close", mainMenu1.MenuItems[0].MenuItems[1].Text, "ItemMerge#3");
			Assert.AreEqual ("Exit",  mainMenu1.MenuItems[0].MenuItems[2].Text, "ItemMerge#4");
		}
Exemple #4
0
		public void MenuItemSimpleMerge ()
		{
			MainMenu mymainmenu1 = new MainMenu ();
			MainMenu mymainmenu2 = new MainMenu ();
			MenuItem mymenuitem1 = new MenuItem ();
			MenuItem mymenuitem2 = new MenuItem ();
			mymenuitem1.Text = "A";
			mymenuitem2.Text = "B";
			mymainmenu1.MenuItems.Add (mymenuitem1);
			mymainmenu2.MenuItems.Add (mymenuitem2);
			mymainmenu1.MergeMenu (mymainmenu2);
			Assert.AreEqual (2, mymainmenu1.MenuItems.Count, "SimpleMerge#1");
		}