Beispiel #1
0
        public void MenuItemCollection_RemoveAt_InvalidIndex_ThrowsArgumentOutOfRangeException(int index)
        {
            var menu       = new SubMenu(new MenuItem[] { new MenuItem() });
            var collection = new Menu.MenuItemCollection(menu);

            Assert.Throws <ArgumentOutOfRangeException>("index", () => collection.RemoveAt(index));
        }
Beispiel #2
0
        /// <summary>Inserts MenuItem at given position in given menu item collection.</summary>
        /// <param name="MenuItems"></param>
        /// <param name="index"></param>
        /// <param name="menuItem"></param>
        public static void Insert(Menu.MenuItemCollection MenuItems, int index, MenuItem menuItem)
        {
            // If index is > count add the menuItem
            if (MenuItems.Count <= index + 1)
            {
                MenuItems.Add(menuItem);
            }
            else
            {
                //Otherwise copy all the menu items to an array
                MenuItem[] NewMenuItems = new MenuItem[MenuItems.Count];
                MenuItems.CopyTo(NewMenuItems, 0);

                //Remove all the menuitems where we want to insert the element.
                for (int i = index; i < NewMenuItems.Length; i++)
                {
                    MenuItems.RemoveAt(i);
                }

                //Add the menu item
                MenuItems.Add(menuItem);

                // Add remianing menu Items.
                for (int i = index; index < NewMenuItems.Length; index++)
                {
                    MenuItems.Add(NewMenuItems[i]);
                }
            }
        }
Beispiel #3
0
        public void MenuItemCollection_RemoveAt_Invoke_Success()
        {
            var menuItem   = new MenuItem();
            var menu       = new SubMenu(new MenuItem[] { menuItem });
            var collection = new Menu.MenuItemCollection(menu);

            collection.RemoveAt(0);

            Assert.Empty(collection);
            Assert.Null(menuItem.Parent);
            Assert.Equal(-1, menuItem.Index);
        }
Beispiel #4
0
        private void m_CreateMenuInfo(Menu owner)
        {
            m_Language        = m_GetLanguageFromCulture(eAntForm.preferences.GetString("Language"));
            m_ShowAllLanguage = eAntForm.preferences.GetBool("ShowAllLanguages", true);
            m_Owner           = owner;
            Actions           = new Hashtable();
            MenuItems         = new Menu.MenuItemCollection(owner);
            MenuItem menu;

            try
            {
                ShowAllLanguageMenuItem             = new MenuItem(eAntForm.Globalization["LBL_SHOW_ALL_LANGUAGES"], new EventHandler(ShowAllLanguageMenuItem_Click));
                ShowAllLanguageMenuItem.DefaultItem = true;
                ShowAllLanguageMenuItem.Checked     = m_ShowAllLanguage;
                MenuItems.Add(ShowAllLanguageMenuItem);

                menu = new MenuItem("-");
                MenuItems.Add(menu);

                XmlDocument doc = new XmlDocument();
                doc.Load(Application.StartupPath + Path.DirectorySeparatorChar + "webSearchs.xml");
                XmlNodeList nodes = doc.DocumentElement["Searchs"].ChildNodes;
                foreach (XmlElement el in nodes)
                {
                    if (el.Name == "Search")
                    {
                        if ((el.Attributes.Count > 2) &&
                            (el.Attributes["SiteName"].InnerText != "") &&
                            (el.Attributes["URL"].InnerText != "") &&
                            (el.Attributes["Language"].InnerText != ""))
                        {
                            String NodeLanguage = el.Attributes["Language"].InnerText;
                            if (!m_ShowAllLanguage && NodeLanguage != m_Language && NodeLanguage != "All")
                            {
                                m_DisplayBar = false;
                            }
                            else
                            {
                                m_DisplayBar = true;
                                menu         = new MenuItem(el.Attributes["SiteName"].InnerText + "\t(" + el.Attributes["Language"].InnerText + ")", new EventHandler(OnItemClicked));
                                MenuItems.Add(menu);
                                Actions.Add(menu, el.Attributes["URL"].InnerText);
                            }
                        }
                        else if (m_DisplayBar && el.Attributes["SiteName"].InnerText == "-")
                        {
                            menu = new MenuItem("-");
                            MenuItems.Add(menu);
                        }
                    }
                }

                if (MenuItems[MenuItems.Count - 1].Text == "-")
                {
                    MenuItems.RemoveAt(MenuItems.Count - 1);
                }
            }
            catch (Exception e)
            {
                Debug.WriteLine(e.ToString());
            }
        }