Exemple #1
0
        /// <summary>
        /// This will create a generic FocusFrameElement to push onto the Focuser.
        /// </summary>
        /// <param name="_frame"></param>
        public void PushFrame(Frame _frame)
        {
            EnviromentFrameStack.Push(new FrameMeta(_frame));
            FramePushed?.Invoke(this);

            YieldFocuser();
        }
Exemple #2
0
        public void PopFrame()
        {
            FrameMeta ffe = EnviromentFrameStack.Pop();

            ffe.NotifyFramePop();
            FramePopped?.Invoke(ffe, this);
        }
Exemple #3
0
 public Frame GetFrame()
 {
     if (EnviromentFrameStack.Count == 0)
     {
         return(null);
     }
     return(EnviromentFrameStack.Peek().Frame);
 }
Exemple #4
0
        /// <summary>
        /// Use this method if you want priority over the FramePush event.
        /// </summary>
        /// <param name="_frameElement"></param>
        public void PushFrame(FrameMeta _frameElement)
        {
            EnviromentFrameStack.Push(_frameElement);

            // The only time this method should EVER be called.
            _frameElement.NotifyFramePush();

            FramePushed?.Invoke(this);

            YieldFocuser();
        }
Exemple #5
0
 public I_Inspectable[] GetInspectables()
 {
     return(EnviromentFrameStack.Peek().SingularFocus.GetInspectables());
 }
Exemple #6
0
 public void MoveSingularFocus(I_Inspectable newFocus)
 {
     EnviromentFrameStack.Peek().SingularFocus = newFocus;
     SingularFocusMove?.Invoke(this);
 }
Exemple #7
0
 public I_Inspectable GetSingularFocus()
 {
     return(EnviromentFrameStack.Peek().SingularFocus);
 }