Exemple #1
0
        private void dotNetBarManager1_PopupOpen(object sender, DevComponents.DotNetBar.PopupOpenEventArgs e)
        {
            BaseItem item = sender as BaseItem;

            if (item == null)
            {
                return;
            }
            if (item.Name == "bTabContext")
            {
                // Enable/Disable the document related menu items based on where user right-clicked...
                TabItem tab = TabItemFromPoint(tabStrip1.PointToClient(Control.MousePosition));
                // If no tab is under the mouse disable document related items...
                if (tab == null)
                {
                    item.SubItems["bClose"].Enabled = false;
                    item.SubItems["bSave"].Enabled  = false;
                }
                else
                {
                    item.SubItems["bClose"].Enabled = true;
                    item.SubItems["bSave"].Enabled  = true;
                    // Make sure that tab under the mouse is active tab
                    tabStrip1.SelectedTab = tab;
                }
            }
            else if (item.Name == "bDockContext")
            {
                Bar bar = dotNetBarManager1.Bars["barTaskList"];
                // Display our context menu only if user clicks on the bar caption or tab strip control
                if (!bar.GrabHandleRect.Contains(bar.PointToClient(Control.MousePosition)) && bar.DockTabControl != null && !bar.DockTabControl.Bounds.Contains(bar.PointToClient(Control.MousePosition)))
                {
                    e.Cancel = true;
                    return;
                }
                item.SubItems.Clear();
                ButtonItem contextItem = null;
                foreach (BaseItem dockItem in bar.Items)
                {
                    contextItem            = new ButtonItem(dockItem.Name, dockItem.Text);
                    contextItem.GlobalItem = false;
                    contextItem.Click     += new EventHandler(this.DockContextClick);
                    item.SubItems.Add(contextItem);
                    contextItem.Checked = dockItem.Visible;
                }
                contextItem            = new ButtonItem("bc_tabnavigation", "Tab Navigation");
                contextItem.Checked    = bar.TabNavigation;
                contextItem.BeginGroup = true;
                contextItem.Click     += new EventHandler(this.DockContextClick);
                item.SubItems.Add(contextItem);
                PopupItem popup = item as PopupItem;
            }
        }