예제 #1
0
        public GlobalsViewModel(
            StoryService storyService,
            DebuggerService debuggerService,
            VariableViewService variableViewService)
            : base("GlobalsView")
        {
            this.storyService = storyService;

            this.debuggerService = debuggerService;
            this.debuggerService.MachineCreated   += DebuggerService_MachineCreated;
            this.debuggerService.MachineDestroyed += DebuggerService_MachineDestroyed;
            this.debuggerService.StateChanged     += DebuggerService_StateChanged;
            this.debuggerService.Stepped          += DebuggerService_ProcessorStepped;

            this.variableViewService = variableViewService;
            variableViewService.GlobalViewChanged += VariableViewService_GlobalViewChanged;

            this.globals = new IndexedVariableViewModel[240];

            for (int i = 0; i < 240; i++)
            {
                var newGlobal = new IndexedVariableViewModel(i, 0);
                newGlobal.Visible = false;
                globals[i]        = newGlobal;
            }

            SetVariableViewCommand = RegisterCommand <KeyValuePair <VariableViewModel, VariableView> >(
                text: "Set Variable View",
                name: "SetVariableView",
                executed: SetVariableViewExecuted,
                canExecute: CanSetVariableViewExecute);
        }
예제 #2
0
        public LocalsViewModel(
            StoryService storyService,
            DebuggerService debuggerService,
            VariableViewService variableViewService,
            RoutineService routineService)
            : base("LocalsView")
        {
            this.storyService = storyService;

            this.debuggerService = debuggerService;
            this.debuggerService.MachineCreated   += DebuggerService_MachineCreated;
            this.debuggerService.MachineDestroyed += DebuggerService_MachineDestroyed;
            this.debuggerService.StateChanged     += DebuggerService_StateChanged;
            this.debuggerService.Stepped          += DebuggerService_ProcessorStepped;

            this.variableViewService              = variableViewService;
            variableViewService.LocalViewChanged += VariableViewService_LocalViewChanged;

            this.routineService = routineService;

            this.locals = new IndexedVariableViewModel[15];

            for (int i = 0; i < 15; i++)
            {
                this.locals[i] = new IndexedVariableViewModel(i, 0);
            }

            this.stack         = new VariableViewModel[0];
            this.reversedStack = new VariableViewModel[0];

            SetVariableViewCommand = RegisterCommand <KeyValuePair <VariableViewModel, VariableView> >(
                text: "Set Variable View",
                name: "SetVariableView",
                executed: SetVariableViewExecuted,
                canExecute: CanSetVariableViewExecute);
        }