示例#1
0
        /// ------------------------------------------------------------------------------------
        /// <summary>
        /// Tells the side bar adapter to setup it's menus so they show up on the application's
        /// view menu. This method should be called after all the tabs and tab items have been
        /// created.
        /// </summary>
        /// <param name="menuAdapter">Menu adapter used by the application.</param>
        /// <param name="insertBeforeItem">Name of the menu item before which the sidebar
        /// menus will be added.</param>
        /// ------------------------------------------------------------------------------------
        public void SetupViewMenuForSideBarTabs(ITMAdapter adapter, string insertBeforeItem)
        {
            TMAdapter dnbAdapter = adapter as TMAdapter;

            if (dnbAdapter == null || dnbAdapter.m_dnbMngr == null)
            {
                // Use this block when the menu adapter isn't one or our DNB ones defined in
                // this assembly. TODO: Need to call AddItem for each subitem in each tab's menu.
                foreach (SideBarTab tab in m_navPane.Items)
                {
                    adapter.AddMenuItem(tab.MenuItemProperties, null, insertBeforeItem);
                }
            }

            // When the menu adapter is one of a type from our assembly, then use it's DNB
            // manager instead of the one instantiated in SetupSideBarsContextMenu. Add the
            // side bar's context menu to the DNB manager and set it to popup for as the
            // side bar's default context menu.
            m_dnbMngr = dnbAdapter.m_dnbMngr;
            m_dnbMngr.ContextMenus.Add(m_contextMenu);
            m_dnbMngr.SetContextMenuEx(m_navPane, "sbcontextmenu");

            // Insert our tab's menus before the specified item.
            foreach (SideBarTab tab in m_navPane.Items)
            {
                dnbAdapter.InsertMenuItem(tab.Menu, insertBeforeItem, false);
                tab.Menu.Visible = true;
            }
        }
示例#2
0
        /// ------------------------------------------------------------------------------------
        /// <summary>
        ///
        /// </summary>
        /// ------------------------------------------------------------------------------------
        private void SetupSideBarsContextMenu()
        {
            // Do nothing if the context menu has already been created.
            if (m_contextMenu != null)
            {
                return;
            }

            m_dnbMngr = new DotNetBarManager();

            m_contextMenu = new ButtonItem("sbcontextmenu");

            m_contextMenu.PopupShowing += new EventHandler(HandleSideBarContextMenuShowing);
            m_contextMenu.PopupOpen    +=
                new DotNetBarManager.PopupOpenEventHandler(HandleSideBarContextMenuPopup);

            ButtonItem item = new ButtonItem(kLargeIconModeItem, "Large Icons");

            item.OptionGroup = m_contextMenu.Name;
            item.Click      += new EventHandler(HandleSideBarContextMenuClick);
            m_contextMenu.SubItems.Add(item);

            item             = new ButtonItem(kSmallIconModeItem, "Small Icons");
            item.OptionGroup = m_contextMenu.Name;
            item.Click      += new EventHandler(HandleSideBarContextMenuClick);
            m_contextMenu.SubItems.Add(item);

            item            = new ButtonItem(kHideSideBar, "Hide Side Bar");
            item.BeginGroup = true;
            item.Click     += new EventHandler(HandleSideBarContextMenuClick);
            m_contextMenu.SubItems.Add(item);

            SetContextMenuImages();

            m_dnbMngr.ContextMenus.Add(m_contextMenu);
            m_dnbMngr.SetContextMenuEx(m_navPane, "sbcontextmenu");
        }