FSO.IDE.BHAVEditor.SelectStackFrame C# (CSharp) Method

SelectStackFrame() private method

private SelectStackFrame ( int forceFrame ) : void
forceFrame int
return void
        private void SelectStackFrame(int forceFrame)
        {
            if (forceFrame == -1 && StackView.SelectedItems.Count == 0) return;
            var frame = DebugEntity.Thread.Stack[(forceFrame != -1) ? forceFrame:StackView.Items.IndexOf(StackView.SelectedItems[0])];

            if (bhav != null && bhav.ChunkID == frame.Routine.Chunk.ChunkID && frame == Editor.DebugFrame) return;
            SetActivePrimitive(null);
            this.bhav = frame.Routine.Chunk;
            Scope = new EditorScope(frame.CodeOwner, frame.Routine.Chunk);
            Scope.CallerObject = DebugEntity.Object;
            Scope.StackObject = (frame.StackObject == null)?null:frame.StackObject.Object;

            EditorControl.InitBHAV(bhav, Scope, DebugEntity, frame, SelectionChanged);

            ObjectDataGrid.SelectedObject = new PropGridVMData(Scope, DebugEntity, frame, Editor);
            ObjectDataGrid.Refresh();

            PrimGroupChange(AllBtn, null);
        }