Esempio n. 1
0
 /// <summary>
 /// Initialize using a top-level screen
 /// </summary>
 /// <param name="screen"></param>
 public void Initialize(AbstractScreen screen)
 {
     this.ScreenStack = new Stack<AbstractScreen>();
     this.ScreenStack.Push(screen);
     this.ActiveScreen = screen;
 }
Esempio n. 2
0
 /// <summary>
 /// Navigate back
 /// </summary>
 public void NavigateBack()
 {
     if (this.ScreenStack.Count > 1)
     {
         this.ScreenStack.Pop();
         this.ActiveScreen = this.ScreenStack.Peek();
     }
 }
Esempio n. 3
0
        /// <summary>
        /// Navigate to a different screen
        /// </summary>
        /// <param name="screen">Screen</param>
        public void NavigateTo(AbstractScreen screen)
        {
            AbstractScreen activeScreen = this.ScreenStack.Peek();

            if (activeScreen != screen)
            {
                this.ScreenStack.Push(screen);
                this.ActiveScreen = screen;
            }
        }