コード例 #1
0
        /// <summary>
        /// Propagates a page list request down the hierarchy of docking elements.
        /// </summary>
        /// <param name="state">Request that should result in pages collection being modified.</param>
        /// <param name="pages">Pages collection for modification by the docking elements.</param>
        public override void PropogatePageList(DockingPropogatePageList state, KryptonPageCollection pages)
        {
            switch (state)
            {
            case DockingPropogatePageList.All:
            case DockingPropogatePageList.Docked:
            case DockingPropogatePageList.Floating:
            case DockingPropogatePageList.Filler:
            {
                // If the request relevant to this space control?
                if ((state == DockingPropogatePageList.All) || (state == DockingPropogatePageList.Filler))
                {
                    // Process each page inside the navigator
                    for (int i = DockableNavigatorControl.Pages.Count - 1; i >= 0; i--)
                    {
                        // Only add real pages and not placeholders
                        KryptonPage page = DockableNavigatorControl.Pages[i];
                        if ((page != null) && !(page is KryptonStorePage))
                        {
                            pages.Add(page);
                        }
                    }
                }
            }
            break;
            }

            // Let base class perform standard processing
            base.PropogatePageList(state, pages);
        }
コード例 #2
0
ファイル: DockingElement.cs プロジェクト: dbremner/Krypton
 /// <summary>
 /// Propogates a page list request down the hierarchy of docking elements.
 /// </summary>
 /// <param name="state">Request that should result in pages collection being modified.</param>
 /// <param name="pages">Pages collection for modification by the docking elements.</param>
 public virtual void PropogatePageList(DockingPropogatePageList state, KryptonPageCollection pages)
 {
     // Propogate the action request to all the child elements
     // (use reverse order so if element removes itself we still have a valid loop)
     for (int i = Count - 1; i >= 0; i--)
     {
         this[i].PropogatePageList(state, pages);
     }
 }
 /// <summary>
 /// Propagates a page list request down the hierarchy of docking elements.
 /// </summary>
 /// <param name="state">Request that should result in pages collection being modified.</param>
 /// <param name="pages">Pages collection for modification by the docking elements.</param>
 public override void PropogatePageList(DockingPropogatePageList state, KryptonPageCollection pages)
 {
     switch (state)
     {
         case DockingPropogatePageList.All:
         case DockingPropogatePageList.AutoHidden:
             for (int i = AutoHiddenGroupControl.Pages.Count - 1; i >= 0; i--)
             {
                 // Only add real pages and not just placeholders
                 KryptonPage page = AutoHiddenGroupControl.Pages[i];
                 if ((page != null) && !(page is KryptonStorePage))
                 {
                     // Remember the real page is inside a proxy!
                     KryptonAutoHiddenProxyPage proxyPage = (KryptonAutoHiddenProxyPage)page;
                     pages.Add(proxyPage.Page);
                 }
             }
             break;
     }
 }
コード例 #4
0
        /// <summary>
        /// Propogates a page list request down the hierarchy of docking elements.
        /// </summary>
        /// <param name="state">Request that should result in pages collection being modified.</param>
        /// <param name="pages">Pages collection for modification by the docking elements.</param>
        public override void PropogatePageList(DockingPropogatePageList state, KryptonPageCollection pages)
        {
            switch (state)
            {
            case DockingPropogatePageList.All:
            case DockingPropogatePageList.Docked:
            case DockingPropogatePageList.Floating:
            case DockingPropogatePageList.Filler:
            {
                // If the request relevant to this space control?
                if ((state == DockingPropogatePageList.All) ||
                    ((state == DockingPropogatePageList.Docked) && (ClearStoreAction == DockingPropogateAction.ClearDockedStoredPages)) ||
                    ((state == DockingPropogatePageList.Floating) && (ClearStoreAction == DockingPropogateAction.ClearFloatingStoredPages)) ||
                    ((state == DockingPropogatePageList.Filler) && (ClearStoreAction == DockingPropogateAction.ClearFillerStoredPages)))
                {
                    // Process each cell in turn
                    KryptonWorkspaceCell cell = SpaceControl.FirstCell();
                    while (cell != null)
                    {
                        // Process each page inside the cell
                        for (int i = cell.Pages.Count - 1; i >= 0; i--)
                        {
                            // Only add real pages and not placeholders
                            KryptonPage page = cell.Pages[i];
                            if ((page != null) && !(page is KryptonStorePage))
                            {
                                pages.Add(page);
                            }
                        }

                        cell = SpaceControl.NextCell(cell);
                    }
                }
            }
            break;
            }

            // Let base class perform standard processing
            base.PropogatePageList(state, pages);
        }
コード例 #5
0
ファイル: DockingElement.cs プロジェクト: Cocotteseb/Krypton
 /// <summary>
 /// Propogates a page list request down the hierarchy of docking elements.
 /// </summary>
 /// <param name="state">Request that should result in pages collection being modified.</param>
 /// <param name="pages">Pages collection for modification by the docking elements.</param>
 public virtual void PropogatePageList(DockingPropogatePageList state, KryptonPageCollection pages)
 {
     // Propogate the action request to all the child elements
     // (use reverse order so if element removes itself we still have a valid loop)
     for (int i = Count - 1; i >= 0; i--)
         this[i].PropogatePageList(state, pages);
 }
コード例 #6
0
        /// <summary>
        /// Propogates a page list request down the hierarchy of docking elements.
        /// </summary>
        /// <param name="state">Request that should result in pages collection being modified.</param>
        /// <param name="pages">Pages collection for modification by the docking elements.</param>
        public override void PropogatePageList(DockingPropogatePageList state, KryptonPageCollection pages)
        {
            switch (state)
            {
                case DockingPropogatePageList.All:
                case DockingPropogatePageList.Docked:
                case DockingPropogatePageList.Floating:
                case DockingPropogatePageList.Filler:
                    {
                        // If the request relevant to this space control?
                        if ((state == DockingPropogatePageList.All) ||
                            ((state == DockingPropogatePageList.Docked) && (ClearStoreAction == DockingPropogateAction.ClearDockedStoredPages)) ||
                            ((state == DockingPropogatePageList.Floating) && (ClearStoreAction == DockingPropogateAction.ClearFloatingStoredPages)) ||
                            ((state == DockingPropogatePageList.Filler) && (ClearStoreAction == DockingPropogateAction.ClearFillerStoredPages)))
                        {
                            // Process each cell in turn
                            KryptonWorkspaceCell cell = SpaceControl.FirstCell();
                            while (cell != null)
                            {
                                // Process each page inside the cell
                                for (int i = cell.Pages.Count - 1; i >= 0; i--)
                                {
                                    // Only add real pages and not placeholders
                                    KryptonPage page = cell.Pages[i];
                                    if ((page != null) && !(page is KryptonStorePage))
                                        pages.Add(page);
                                }

                                cell = SpaceControl.NextCell(cell);
                            }
                        }
                    }
                    break;
            }

            // Let base class perform standard processing
            base.PropogatePageList(state, pages);
        }
コード例 #7
0
 /// <summary>
 /// Propogates a page list request down the hierarchy of docking elements.
 /// </summary>
 /// <param name="state">Request that should result in pages collection being modified.</param>
 /// <param name="pages">Pages collection for modification by the docking elements.</param>
 public override void PropogatePageList(DockingPropogatePageList state, KryptonPageCollection pages)
 {
     switch (state)
     {
         case DockingPropogatePageList.All:
         case DockingPropogatePageList.AutoHidden:
             for (int i = AutoHiddenGroupControl.Pages.Count - 1; i >= 0; i--)
             {
                 // Only add real pages and not just placeholders
                 KryptonPage page = AutoHiddenGroupControl.Pages[i];
                 if ((page != null) && !(page is KryptonStorePage))
                 {
                     // Remember the real page is inside a proxy!
                     KryptonAutoHiddenProxyPage proxyPage = (KryptonAutoHiddenProxyPage)page;
                     pages.Add(proxyPage.Page);
                 }
             }
             break;
     }
 }