Ejemplo n.º 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;
            }
        }
        /// ------------------------------------------------------------------------------------
        private void SetContextMenus()
        {
            if (TabsContainer.ContextMenuStrip != null)
            {
                TabsContainer.ContextMenuStrip.Opening -= ContextMenuStrip_Opening;
            }

            if (TMAdapter != null)
            {
                TMAdapter.SetContextMenuForControl(TabsContainer, "cmnuSearchResultTabGroup");
            }

            if (TabsContainer.ContextMenuStrip != null)
            {
                TabsContainer.ContextMenuStrip.Opening += ContextMenuStrip_Opening;
            }
        }
Ejemplo n.º 3
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 silAdapter = adapter as TMAdapter;

            foreach (SBTabProperties tab in m_tabProps)
            {
                ToolStripMenuItem viewTab = new ToolStripMenuItem();
                viewTab.Text    = tab.Text;
                viewTab.Enabled = tab.Enabled;

                foreach (SBTabItemProperties item in m_tabItemProps)
                {
                    if (item.OwningTabName == tab.Name)
                    {
                        ToolStripMenuItem menuItem = new ToolStripMenuItem();

                        // just one space if any version of newline is present
                        menuItem.Text  = item.Text.Replace("\r\n", " ").Replace('\r', ' ').Replace('\n', ' ');
                        menuItem.Image = this.m_smallItemImages.Images[item.ImageIndex];
                        menuItem.Tag   = item;
                        //menuItem.Image = this.m_smallItemImages[];
                        viewTab.DropDown.Items.Add(menuItem);

                        menuItem.Click += SideBarItemOnMenuClick;
                    }
                }
                if (tab.ConfigureMenuVisible && !String.IsNullOrEmpty(tab.ConfigureMessage) && !String.IsNullOrEmpty(tab.ConfigureMenuText))
                {
                    var menuItem = new ToolStripMenuItem();
                    menuItem.Text   = tab.ConfigureMenuText;
                    menuItem.Tag    = tab;
                    menuItem.Click += new EventHandler(ConfigureItem_Click);
                    viewTab.DropDown.Items.Add(new ToolStripSeparator());
                    viewTab.DropDown.Items.Add(menuItem);
                }
                viewTab.DropDownOpened += new EventHandler(TabMenu_DropDownOpened);
                silAdapter.InsertMenuItem(viewTab, insertBeforeItem);
            }
            adapter.MessageMediator.AddColleague(this);
        }