LocalsVM(IDebuggerSettings debuggerSettings, ILocalsSettings localsSettings, IMethodLocalProvider methodLocalProvider, IStackFrameService stackFrameService, ITheDebugger theDebugger, IAskUser askUser, IClassificationFormatMapService classificationFormatMapService, ITextElementProvider textElementProvider) { dispatcher = Dispatcher.CurrentDispatcher; this.askUser = askUser; this.methodLocalProvider = methodLocalProvider; this.debuggerSettings = debuggerSettings; this.stackFrameService = stackFrameService; TheDebugger = theDebugger; var classificationFormatMap = classificationFormatMapService.GetClassificationFormatMap(AppearanceCategoryConstants.UIMisc); printerContext = new PrinterContext(classificationFormatMap, textElementProvider) { SyntaxHighlight = debuggerSettings.SyntaxHighlightLocals, UseHexadecimal = debuggerSettings.UseHexadecimal, TypePrinterFlags = TypePrinterFlags.ShowArrayValueSizes, }; printerContext.TypePrinterFlags = GetTypePrinterFlags(localsSettings, printerContext.TypePrinterFlags); printerContext.TypePrinterFlags = GetTypePrinterFlags(debuggerSettings, printerContext.TypePrinterFlags); methodLocalProvider.NewMethodInfoAvailable += MethodLocalProvider_NewMethodInfoAvailable; Root = new SharpTreeNode(); stackFrameService.StackFramesUpdated += StackFrameService_StackFramesUpdated; stackFrameService.PropertyChanged += StackFrameService_PropertyChanged; theDebugger.OnProcessStateChanged += TheDebugger_OnProcessStateChanged; theDebugger.ProcessRunning += TheDebugger_ProcessRunning; debuggerSettings.PropertyChanged += DebuggerSettings_PropertyChanged; localsSettings.PropertyChanged += LocalsSettings_PropertyChanged; classificationFormatMap.ClassificationFormatMappingChanged += ClassificationFormatMap_ClassificationFormatMappingChanged; }
LocalsVM(IDebuggerSettings debuggerSettings, ILocalsSettings localsSettings, IMethodLocalProvider methodLocalProvider, IStackFrameService stackFrameService, ITheDebugger theDebugger, IAskUser askUser) { this.dispatcher = Dispatcher.CurrentDispatcher; this.askUser = askUser; this.methodLocalProvider = methodLocalProvider; this.debuggerSettings = debuggerSettings; this.stackFrameService = stackFrameService; this.TheDebugger = theDebugger; this.printerContext = new PrinterContext() { SyntaxHighlight = debuggerSettings.SyntaxHighlightLocals, UseHexadecimal = debuggerSettings.UseHexadecimal, TypePrinterFlags = TypePrinterFlags.ShowArrayValueSizes, }; this.printerContext.TypePrinterFlags = GetTypePrinterFlags(localsSettings, this.printerContext.TypePrinterFlags); this.printerContext.TypePrinterFlags = GetTypePrinterFlags(debuggerSettings, this.printerContext.TypePrinterFlags); methodLocalProvider.NewMethodInfoAvailable += MethodLocalProvider_NewMethodInfoAvailable; this.Root = new SharpTreeNode(); stackFrameService.StackFramesUpdated += StackFrameService_StackFramesUpdated; stackFrameService.PropertyChanged += StackFrameService_PropertyChanged; theDebugger.OnProcessStateChanged += TheDebugger_OnProcessStateChanged; theDebugger.ProcessRunning += TheDebugger_ProcessRunning; debuggerSettings.PropertyChanged += DebuggerSettings_PropertyChanged; localsSettings.PropertyChanged += LocalsSettings_PropertyChanged; }
internal static void Execute(IModuleIdProvider moduleIdProvider, IStackFrameService stackFrameService, IDocumentTabService documentTabService, IModuleLoader moduleLoader, CallStackFrameVM vm, bool newTab) { if (vm != null) { stackFrameService.SelectedFrameNumber = vm.Index; FrameUtils.GoTo(moduleIdProvider, documentTabService, moduleLoader, vm.Frame, newTab); } }
CallStackMarker(IStackFrameService stackFrameService, IGlyphTextMarkerService glyphTextMarkerService, IClassificationTypeRegistryService classificationTypeRegistryService, Lazy <ActiveStatementService> activeStatementService) { this.stackFrameService = stackFrameService; this.glyphTextMarkerService = glyphTextMarkerService; classificationTypeCurrentStatement = classificationTypeRegistryService.GetClassificationType(ThemeClassificationTypeNames.CurrentStatement); classificationTypeCallReturn = classificationTypeRegistryService.GetClassificationType(ThemeClassificationTypeNames.CallReturn); this.activeStatementService = activeStatementService; stackFrameService.NewFrames += StackFrameService_NewFrames; }
ThreadsVM(ITheDebugger theDebugger, IStackFrameService stackFrameService, IDebuggerSettings debuggerSettings) { this.theDebugger = theDebugger; this.stackFrameService = stackFrameService; this.threadContext = new ThreadContext(theDebugger, debuggerSettings) { SyntaxHighlight = debuggerSettings.SyntaxHighlightThreads, UseHexadecimal = debuggerSettings.UseHexadecimal, }; this.threadsList = new ObservableCollection <ThreadVM>(); stackFrameService.StackFramesUpdated += StackFrameService_StackFramesUpdated; stackFrameService.PropertyChanged += StackFrameService_PropertyChanged; theDebugger.OnProcessStateChanged += TheDebugger_OnProcessStateChanged; debuggerSettings.PropertyChanged += DebuggerSettings_PropertyChanged; theDebugger.ProcessRunning += TheDebugger_ProcessRunning; }
ThreadsVM(ITheDebugger theDebugger, IStackFrameService stackFrameService, IDebuggerSettings debuggerSettings, IClassificationFormatMapService classificationFormatMapService, ITextElementProvider textElementProvider) { this.theDebugger = theDebugger; this.stackFrameService = stackFrameService; var classificationFormatMap = classificationFormatMapService.GetClassificationFormatMap(AppearanceCategoryConstants.UIMisc); threadContext = new ThreadContext(theDebugger, debuggerSettings, classificationFormatMap, textElementProvider) { SyntaxHighlight = debuggerSettings.SyntaxHighlightThreads, UseHexadecimal = debuggerSettings.UseHexadecimal, }; threadsList = new ObservableCollection<ThreadVM>(); stackFrameService.StackFramesUpdated += StackFrameService_StackFramesUpdated; stackFrameService.PropertyChanged += StackFrameService_PropertyChanged; theDebugger.OnProcessStateChanged += TheDebugger_OnProcessStateChanged; debuggerSettings.PropertyChanged += DebuggerSettings_PropertyChanged; theDebugger.ProcessRunning += TheDebugger_ProcessRunning; classificationFormatMap.ClassificationFormatMappingChanged += ClassificationFormatMap_ClassificationFormatMappingChanged; }
CallStackVM(IDebuggerSettings debuggerSettings, ICallStackSettings callStackSettings, IStackFrameService stackFrameService, ITheDebugger theDebugger) { this.debuggerSettings = debuggerSettings; this.callStackSettings = callStackSettings; this.theDebugger = theDebugger; this.stackFrameService = stackFrameService; this.framesList = new ObservableCollection <ICallStackFrameVM>(); this.callStackFrameContext = new CallStackFrameContext() { TypePrinterFlags = TypePrinterFlags, SyntaxHighlight = debuggerSettings.SyntaxHighlightCallStack, }; stackFrameService.StackFramesUpdated += StackFrameService_StackFramesUpdated; stackFrameService.PropertyChanged += StackFrameService_PropertyChanged; callStackSettings.PropertyChanged += CallStackSettings_PropertyChanged; debuggerSettings.PropertyChanged += DebuggerSettings_PropertyChanged; theDebugger.ProcessRunning += TheDebugger_ProcessRunning; }
ThreadsVM(ITheDebugger theDebugger, IStackFrameService stackFrameService, IDebuggerSettings debuggerSettings, IClassificationFormatMapService classificationFormatMapService, ITextElementProvider textElementProvider) { this.theDebugger = theDebugger; this.stackFrameService = stackFrameService; var classificationFormatMap = classificationFormatMapService.GetClassificationFormatMap(AppearanceCategoryConstants.UIMisc); threadContext = new ThreadContext(theDebugger, debuggerSettings, classificationFormatMap, textElementProvider) { SyntaxHighlight = debuggerSettings.SyntaxHighlightThreads, UseHexadecimal = debuggerSettings.UseHexadecimal, }; threadsList = new ObservableCollection <ThreadVM>(); stackFrameService.StackFramesUpdated += StackFrameService_StackFramesUpdated; stackFrameService.PropertyChanged += StackFrameService_PropertyChanged; theDebugger.OnProcessStateChanged += TheDebugger_OnProcessStateChanged; debuggerSettings.PropertyChanged += DebuggerSettings_PropertyChanged; theDebugger.ProcessRunning += TheDebugger_ProcessRunning; classificationFormatMap.ClassificationFormatMappingChanged += ClassificationFormatMap_ClassificationFormatMappingChanged; }
CallStackVM(IDebuggerSettings debuggerSettings, ICallStackSettings callStackSettings, IStackFrameService stackFrameService, ITheDebugger theDebugger, IClassificationFormatMapService classificationFormatMapService, ITextElementProvider textElementProvider) { var classificationFormatMap = classificationFormatMapService.GetClassificationFormatMap(AppearanceCategoryConstants.UIMisc); this.debuggerSettings = debuggerSettings; this.callStackSettings = callStackSettings; this.theDebugger = theDebugger; this.stackFrameService = stackFrameService; framesList = new ObservableCollection <ICallStackFrameVM>(); callStackFrameContext = new CallStackFrameContext(classificationFormatMap, textElementProvider) { TypePrinterFlags = TypePrinterFlags, SyntaxHighlight = debuggerSettings.SyntaxHighlightCallStack, }; stackFrameService.StackFramesUpdated += StackFrameService_StackFramesUpdated; stackFrameService.PropertyChanged += StackFrameService_PropertyChanged; callStackSettings.PropertyChanged += CallStackSettings_PropertyChanged; debuggerSettings.PropertyChanged += DebuggerSettings_PropertyChanged; theDebugger.ProcessRunning += TheDebugger_ProcessRunning; classificationFormatMap.ClassificationFormatMappingChanged += ClassificationFormatMap_ClassificationFormatMappingChanged; }
internal static void GoTo(IModuleIdProvider moduleIdProvider, IDocumentTabService documentTabService, IModuleLoader moduleLoader, IStackFrameService stackFrameService, ThreadVM vm, bool newTab) { if (vm == null) { return; } stackFrameService.SelectedThread = vm.Thread; FrameUtils.GoTo(moduleIdProvider, documentTabService, moduleLoader, vm.Thread.AllFrames.FirstOrDefault(f => f.IsILFrame), newTab); }
DebugService(IAppWindow appWindow, IDocumentTabService documentTabService, IMessageBoxService messageBoxService, IDebuggerSettings debuggerSettings, ITheDebugger theDebugger, IStackFrameService stackFrameService, Lazy<IModuleLoader> moduleLoader, Lazy<IInMemoryModuleService> inMemoryModuleService, IModuleIdProvider moduleIdProvider, IClassificationFormatMapService classificationFormatMapService, ITextElementProvider textElementProvider) { this.appWindow = appWindow; this.documentTabService = documentTabService; this.messageBoxService = messageBoxService; DebuggerSettings = debuggerSettings; this.theDebugger = theDebugger; StackFrameService = stackFrameService; this.moduleLoader = moduleLoader; this.inMemoryModuleService = inMemoryModuleService; this.moduleIdProvider = moduleIdProvider; this.classificationFormatMapService = classificationFormatMapService; this.textElementProvider = textElementProvider; stackFrameService.PropertyChanged += StackFrameService_PropertyChanged; theDebugger.ProcessRunning += TheDebugger_ProcessRunning; theDebugger.OnProcessStateChanged += TheDebugger_OnProcessStateChanged; appWindow.MainWindowClosing += AppWindow_MainWindowClosing; debuggerSettings.PropertyChanged += DebuggerSettings_PropertyChanged; }
CallStackVM(IDebuggerSettings debuggerSettings, ICallStackSettings callStackSettings, IStackFrameService stackFrameService, ITheDebugger theDebugger, IClassificationFormatMapService classificationFormatMapService, ITextElementProvider textElementProvider) { var classificationFormatMap = classificationFormatMapService.GetClassificationFormatMap(AppearanceCategoryConstants.UIMisc); this.debuggerSettings = debuggerSettings; this.callStackSettings = callStackSettings; this.theDebugger = theDebugger; this.stackFrameService = stackFrameService; framesList = new ObservableCollection<ICallStackFrameVM>(); callStackFrameContext = new CallStackFrameContext(classificationFormatMap, textElementProvider) { TypePrinterFlags = TypePrinterFlags, SyntaxHighlight = debuggerSettings.SyntaxHighlightCallStack, }; stackFrameService.StackFramesUpdated += StackFrameService_StackFramesUpdated; stackFrameService.PropertyChanged += StackFrameService_PropertyChanged; callStackSettings.PropertyChanged += CallStackSettings_PropertyChanged; debuggerSettings.PropertyChanged += DebuggerSettings_PropertyChanged; theDebugger.ProcessRunning += TheDebugger_ProcessRunning; classificationFormatMap.ClassificationFormatMappingChanged += ClassificationFormatMap_ClassificationFormatMappingChanged; }