protected override void SetPopupItem()
        {
            this.BaseItems.Clear();
            //
            //
            //
            DockPanel dockPanel = this._pDockPanel as DockPanel;

            if (dockPanel == null)
            {
                return;
            }
            //
            bool bCanDockUp       = true;
            bool bCanDockLeft     = true;
            bool bCanDockRight    = true;
            bool bCanDockBottom   = true;
            bool bCanDockFill     = true;
            bool bCanFloat        = true;
            bool bCanHide         = true;
            bool bCanClose        = true;
            bool bIsBasePanel     = true;
            bool bIsDocumentPanel = true;

            base._pDockPanel.GetDockLicense(ref bCanDockUp, ref bCanDockLeft, ref bCanDockRight, ref bCanDockBottom, ref bCanDockFill, ref bCanFloat, ref bCanHide, ref bCanClose, ref bIsBasePanel, ref bIsDocumentPanel);
            DockAreaStyle           eDockAreaStyle           = base._pDockPanel.GetDockAreaStyle();
            DockPanelContainerStyle eDockPanelContainerStyle = base._pDockPanel.GetDockPanelContainerStyle();

            //
            //
            //
            if (dockPanel.IsHideState)
            {
                this.CreateAddDockPanelManagerBaseItem(base.BaseItems);
            }
            else
            {
                base.CreateSelectedBasePanelBaseItemList(base.BaseItems);
                //
                if (eDockPanelContainerStyle == DockPanelContainerStyle.eDockPanelFloatForm)
                {
                    base.CreateAddDockPanelBaseItemList(base.BaseItems, bCanDockUp, bCanDockLeft, bCanDockRight, bCanDockBottom, bCanDockFill);//, this._pDockPanel.GetDockAreaStyle()
                }
                //
                if (eDockAreaStyle == DockAreaStyle.eDockPanelDockArea || eDockPanelContainerStyle == DockPanelContainerStyle.eDockPanelFloatForm)
                {
                    this.CreateAddDockPanelManagerBaseItem(base.BaseItems, eDockAreaStyle, eDockPanelContainerStyle, bCanDockUp, bCanDockLeft, bCanDockRight, bCanDockBottom, bCanFloat, bCanHide, bIsBasePanel, bIsDocumentPanel);
                }
            }
            //
            //
            //
            WFNew.SeparatorItem toolStripSeparator = new WFNew.SeparatorItem();
            this.BaseItems.Add(toolStripSeparator);
            base.CreateDockPanelCustomizeBaseItem(this.BaseItems);
        }
        private void SetDockPanelHideAreaControl()//设置隐藏按钮组并将其加载到对应的隐藏区内(在构造函数里完成)
        {
            DockStyle     eDockStyle;
            DockAreaStyle eDockAreaStyle = this.m_DockPanel.GetDockAreaStyle(out eDockStyle);

            switch (eDockStyle)//添加后会自动处理布局信息
            {
            case DockStyle.Top:
                this.m_AlignmentStyle = TabAlignment.Top;
                this.DockPanelManager.DockPanelHideAreaTop.AddHideAreaTabButtonGroup(this);
                break;

            case DockStyle.Left:
                this.m_AlignmentStyle = TabAlignment.Left;
                this.DockPanelManager.DockPanelHideAreaLeft.AddHideAreaTabButtonGroup(this);
                break;

            case DockStyle.Right:
                this.m_AlignmentStyle = TabAlignment.Right;
                this.DockPanelManager.DockPanelHideAreaRight.AddHideAreaTabButtonGroup(this);
                break;

            case DockStyle.Bottom:
                this.m_AlignmentStyle = TabAlignment.Bottom;
                this.DockPanelManager.DockPanelHideAreaBottom.AddHideAreaTabButtonGroup(this);
                break;

            default:
                break;
            }
            //
            //
            //
            for (int i = 0; i < this.m_DockPanel.BasePanelCount; i++)
            {
                BasePanel temp = this.m_DockPanel.GetBasePanel(i) as BasePanel;
                if (temp == null)
                {
                    continue;
                }
                HideAreaTabButton hideAreaTabButton = new HideAreaTabButton(i, temp.Text, temp.Image, this.eAlignmentStyle);
                this.AddHideAreaTabButton(hideAreaTabButton);
                hideAreaTabButton.MouseClick += new MouseEventHandler(HideAreaTabButton_MouseClick);
                hideAreaTabButton.MouseHover += new EventHandler(HideAreaTabButtonGroupItem_MouseHover);
                hideAreaTabButton.MouseLeave += new EventHandler(HideAreaTabButtonGroupItem_MouseLeave);
            }
        }
            protected override void SetPopupItem()
            {
                this.BaseItems.Clear();
                //
                //
                //
                bool bCanDockUp       = true;
                bool bCanDockLeft     = true;
                bool bCanDockRight    = true;
                bool bCanDockBottom   = true;
                bool bCanDockFill     = true;
                bool bCanFloat        = true;
                bool bCanHide         = true;
                bool bCanClose        = true;
                bool bIsBasePanel     = true;
                bool bIsDocumentPanel = true;

                base._pDockPanel.GetDockLicense(ref bCanDockUp, ref bCanDockLeft, ref bCanDockRight, ref bCanDockBottom, ref bCanDockFill, ref bCanFloat, ref bCanHide, ref bCanClose, ref bIsBasePanel, ref bIsDocumentPanel);
                DockAreaStyle           eDockAreaStyle           = base._pDockPanel.GetDockAreaStyle();
                DockPanelContainerStyle eDockPanelContainerStyle = base._pDockPanel.GetDockPanelContainerStyle();

                //
                //
                //
                WFNew.DropDownButtonItem ribbonDropDownButtonItemInternal = new WFNew.DropDownButtonItem();
                ribbonDropDownButtonItemInternal.Text = Language.LanguageStrategy.InternalText;//"内部";
                this.Items.Add(ribbonDropDownButtonItemInternal);
                this.CreateAddDockPanelManagerBaseItemInternal(ribbonDropDownButtonItemInternal.BaseItems, bCanDockUp, bCanDockLeft, bCanDockRight, bCanDockBottom, bIsBasePanel);
                //
                WFNew.DropDownButtonItem ribbonDropDownButtonItemOut = new WFNew.DropDownButtonItem();
                ribbonDropDownButtonItemOut.Text = Language.LanguageStrategy.OuterText;//"外围";
                this.Items.Add(ribbonDropDownButtonItemOut);
                this.CreateAddDockPanelManagerBaseItemOut(ribbonDropDownButtonItemOut.BaseItems, bCanDockUp, bCanDockLeft, bCanDockRight, bCanDockBottom, bIsBasePanel);
                //
                this.Items.Add(new WFNew.SeparatorItem());
                //
                WFNew.DropDownButtonItem ribbonDropDownButtonItemDocument = new WFNew.DropDownButtonItem();
                ribbonDropDownButtonItemDocument.Text = Language.LanguageStrategy.DocumentAreaText;//"文档区";
                this.Items.Add(ribbonDropDownButtonItemDocument);
                base.CreateAddDockPanelManagerBaseItemDocument(ribbonDropDownButtonItemDocument.BaseItems, bIsDocumentPanel);
                //
                //
                //
                WFNew.SeparatorItem toolStripSeparator = new WFNew.SeparatorItem();
                this.BaseItems.Add(toolStripSeparator);
                base.CreateDockPanelCustomizeBaseItem(this.BaseItems);
            }
예제 #4
0
        private void SetDockPanelHideAreaControl()//设置隐藏按钮组并将其加载到对应的隐藏区内(在构造函数里完成)
        {
            DockStyle     eDockStyle;
            DockAreaStyle eDockAreaStyle = this.m_DockPanel.GetDockAreaStyle(out eDockStyle);

            switch (eDockStyle)//添加后会自动处理布局信息
            {
            case DockStyle.Top:
                this.m_TabAlignment = TabAlignment.Top;
                this.DockPanelManager.DockPanelHideAreaTop.BaseItems.Add(this);
                break;

            case DockStyle.Left:
                this.m_TabAlignment = TabAlignment.Left;
                this.DockPanelManager.DockPanelHideAreaLeft.BaseItems.Add(this);
                break;

            case DockStyle.Right:
                this.m_TabAlignment = TabAlignment.Right;
                this.DockPanelManager.DockPanelHideAreaRight.BaseItems.Add(this);
                break;

            case DockStyle.Bottom:
                this.m_TabAlignment = TabAlignment.Bottom;
                this.DockPanelManager.DockPanelHideAreaBottom.BaseItems.Add(this);
                break;

            default:
                break;
            }
            //
            //
            //
            for (int i = 0; i < this.m_DockPanel.BasePanels.Count; i++)
            {
                BasePanel temp = this.m_DockPanel.BasePanels[i] as BasePanel;
                if (temp == null)
                {
                    continue;
                }
                HideAreaTabButtonItem hideAreaTabButtonItem = new HideAreaTabButtonItem(i, temp.Text, temp.Image, this.TabAlignment);
                this.BaseItems.Add(hideAreaTabButtonItem);
                hideAreaTabButtonItem.MouseDown  += new MouseEventHandler(HideAreaTabButtonItem_MouseDown);
                hideAreaTabButtonItem.MouseEnter += new EventHandler(HideAreaTabButtonItem_MouseEnter);
                hideAreaTabButtonItem.MouseLeave += new EventHandler(HideAreaTabButtonItem_MouseLeave);
            }
        }
 //
 // ÔÚһϵÁпÉÓÃÃæ°åÄÚÍ£¿¿
 //
 protected void CreateAddDockPanelBaseItemList(WFNew.BaseItemCollection baseItems,
                                               bool bCanDockUp, bool bCanDockLeft, bool bCanDockRight, bool bCanDockBottom, bool bCanDockFill)//, DockAreaStyle eDockAreaStyle
 {
     if (this._pDockPanel.DockPanelManager != null &&
         this._pDockPanel.DockPanelManager.GetDockPanelCountFromVisible(true, true) > 1)
     {
         WFNew.SeparatorItem toolStripSeparator = new WFNew.SeparatorItem();
         this.BaseItems.Add(toolStripSeparator);
         for (int j = 0; j < this._pDockPanel.DockPanelManager.DockPanels.Count; j++)
         {
             DockPanel dockPanel = this._pDockPanel.DockPanelManager.DockPanels[j];
             if (dockPanel == null)
             {
                 continue;
             }
             if (dockPanel.BasePanels.Count < 1)
             {
                 continue;
             }
             if (!dockPanel.GetVisible())
             {
                 continue;
             }
             if (dockPanel == this._pDockPanel)
             {
                 continue;
             }
             //
             WFNew.DropDownButtonItem ribbonDropDownButtonItem = new WFNew.DropDownButtonItem();
             ribbonDropDownButtonItem.Name        = dockPanel.Name;
             ribbonDropDownButtonItem.Text        = Language.LanguageStrategy.LayoutToText + Language.LanguageStrategy.DoubleQuotationMarks_Left + dockPanel.Text + Language.LanguageStrategy.DoubleQuotationMarks_Right;
             ribbonDropDownButtonItem.Image       = dockPanel.Image;
             ribbonDropDownButtonItem.Tag         = j;
             ribbonDropDownButtonItem.MouseClick += new MouseEventHandler(BaseItemSelectedBasePanel_MouseClick);
             DockAreaStyle eDockAreaStyle = dockPanel.GetDockAreaStyle();
             this.CreateAddDockPanelBaseItem(ribbonDropDownButtonItem,
                                             bCanDockUp, bCanDockLeft, bCanDockRight, bCanDockBottom, bCanDockFill,
                                             ((eDockAreaStyle == DockAreaStyle.eDockPanelDockArea || eDockAreaStyle == DockAreaStyle.eDockPanelFloatForm) && dockPanel.IsBasePanel) || (eDockAreaStyle == DockAreaStyle.eDocumentDockArea && dockPanel.IsDocumentPanel));
             baseItems.Add(ribbonDropDownButtonItem);
         }
     }
 }
 private void CreateAddDockPanelManagerBaseItem(WFNew.BaseItemCollection items,
                                                DockAreaStyle eDockAreaStyle, DockPanelContainerStyle eDockPanelContainerStyle,
                                                bool bCanDockUp, bool bCanDockLeft, bool bCanDockRight, bool bCanDockBottom, bool bCanFloat, bool bCanHide, bool bIsBasePanel, bool bIsDocumentPanel)
 {
     WFNew.SeparatorItem toolStripSeparator = new WFNew.SeparatorItem();
     items.Add(toolStripSeparator);
     WFNew.DropDownButtonItem ribbonDropDownButtonItem = new WFNew.DropDownButtonItem();
     ribbonDropDownButtonItem.Text = Language.LanguageStrategy.LayoutManagerText;//"布局管理";
     items.Add(ribbonDropDownButtonItem);
     //
     if (eDockPanelContainerStyle == DockPanelContainerStyle.eDockPanelFloatForm)
     {
         WFNew.DropDownButtonItem ribbonDropDownButtonItemInternal = new WFNew.DropDownButtonItem();
         ribbonDropDownButtonItemInternal.Text = Language.LanguageStrategy.InternalText;//"内部";
         ribbonDropDownButtonItemInternal.Tag  = ribbonDropDownButtonItem.Tag;
         ribbonDropDownButtonItem.BaseItems.Add(ribbonDropDownButtonItemInternal);
         base.CreateAddDockPanelManagerBaseItemInternal(ribbonDropDownButtonItemInternal.BaseItems, bCanDockUp, bCanDockLeft, bCanDockRight, bCanDockBottom, bIsBasePanel);
         //
         WFNew.DropDownButtonItem ribbonDropDownButtonItemOut = new WFNew.DropDownButtonItem();
         ribbonDropDownButtonItemOut.Text = Language.LanguageStrategy.OuterText;//"外围";
         ribbonDropDownButtonItemOut.Tag  = ribbonDropDownButtonItem.Tag;
         ribbonDropDownButtonItem.BaseItems.Add(ribbonDropDownButtonItemOut);
         base.CreateAddDockPanelManagerBaseItemOut(ribbonDropDownButtonItemOut.BaseItems, bCanDockUp, bCanDockLeft, bCanDockRight, bCanDockBottom, bIsBasePanel);
         //
         ribbonDropDownButtonItem.BaseItems.Add(new WFNew.SeparatorItem());
         //
         WFNew.DropDownButtonItem ribbonDropDownButtonItemDocument = new WFNew.DropDownButtonItem();
         ribbonDropDownButtonItemDocument.Text = Language.LanguageStrategy.DocumentAreaText;//"文档区";
         ribbonDropDownButtonItemDocument.Tag  = ribbonDropDownButtonItem.Tag;
         ribbonDropDownButtonItem.BaseItems.Add(ribbonDropDownButtonItemDocument);
         base.CreateAddDockPanelManagerBaseItemDocument(ribbonDropDownButtonItemDocument.BaseItems, bIsDocumentPanel);
     }
     //
     if (eDockAreaStyle == DockAreaStyle.eDockPanelDockArea)
     {
         base.CreateHideDockPanelBaseItem(ribbonDropDownButtonItem.BaseItems, true, bCanHide);
         base.CreateAddDockPanelManagerBaseItemFloat(ribbonDropDownButtonItem.BaseItems, bCanFloat);
     }
 }