System.Windows.Forms.MenuItem.PopulateWindowMenu C# (CSharp) Method

PopulateWindowMenu() private method

private PopulateWindowMenu ( ) : void
return void
		private void PopulateWindowMenu ()
		{
			if (mdilist) {
				if (mdilist_items == null) {
					mdilist_items = new Hashtable ();
					mdilist_forms = new Hashtable ();
				}
				
				do {
					MainMenu main = GetMainMenu ();
					if (main == null || main.GetForm () == null)
						break;

					Form form = main.GetForm ();
					//mdicontainer = form.MdiContainer;
					
					// Remove closed forms
					MenuItem[] items = new MenuItem[mdilist_items.Count];
					mdilist_items.Keys.CopyTo (items, 0);
					foreach (MenuItem item in items) {
						Form mdichild = (Form) mdilist_items [item];
					}
					
					
					// Add new forms and update state for existing forms.
					/*
					for (int i = 0; i < mdicontainer.mdi_child_list.Count; i++) {
						Form mdichild = (Form)mdicontainer.mdi_child_list[i];
						MenuItem item;
						if (mdilist_forms.Contains (mdichild)) {
							item = (MenuItem) mdilist_forms [mdichild];
						} else {
							item = new MenuItem ();
							item.is_window_menu_item = true;
							item.Click += new EventHandler (MdiWindowClickHandler);
							mdilist_items [item] = mdichild;
							mdilist_forms [mdichild] = item;
							MenuItems.AddNoEvents (item);
						}
						item.Visible = mdichild.Visible;
						item.Text = "&" + (i + 1).ToString () + " " + mdichild.Text;
						item.Checked = form.ActiveMdiChild == mdichild;
					}
					*/
				} while (false);
			} else {
				// Remove all forms
				if (mdilist_items != null) {
					foreach (MenuItem item in mdilist_items.Values) {
						MenuItems.Remove (item);
					}
					
					mdilist_forms.Clear ();
					mdilist_items.Clear ();
				}
			}
		}