Ejemplo n.º 1
0
        }         // ctor

        public PpsWindowPaneHost(PpsWindowPaneHostState paneState)
        {
            this.paneState = paneState;

            SetValue(paneProgressPropertyKey, new PpsProgressStack(Dispatcher));
            SetValue(isFixedPropertyKey, paneState == PpsWindowPaneHostState.Fixed);
        }         // ctor
Ejemplo n.º 2
0
        }         // proc Move

        private int GetPaneDefaultPosition(PpsWindowPaneHostState paneState, PpsWindowPaneHost relatedPane)
        {
            if (paneState == PpsWindowPaneHostState.Fixed ||          // fixed pane
                paneState == PpsWindowPaneHostState.Root)                    // root pane
            {
                for (var i = 0; i < panes.Count; i++)
                {
                    if (panes[i].State != PpsWindowPaneHostState.Fixed)
                    {
                        return(i);
                    }
                }
                return(panes.Count);
            }
            else
            {
                // find related pane index
                var idx = panes.IndexOf(relatedPane);
                if (idx == -1)
                {
                    return(panes.Count);
                }
                else if (panes[idx].State != PpsWindowPaneHostState.Fixed)
                {
                    return(idx);
                }
                else
                {
                    return(GetPaneDefaultPosition(PpsWindowPaneHostState.Root, null));
                }
            }
        }         // func GetPaneDefaultPosition