protected override void HandleData(ClrDump data) { UIModuleFactory.CreateModule <BookmarkModule>( mod => { mod.UIModuleParent = selectedModule; mod.SetUp(data); }, mod => DockModule(mod) ); }
protected override void HandleData(List <ClrDump> clrDumps) { if (clrDumps == null || clrDumps.Count < 2) { throw new InvalidOperationException("Please, select two or more dumps in the workplace module !"); } UIModuleFactory.CreateModule <DumpDiffModule>(module => module.Setup(clrDumps), module => DockModule(module)); }
protected override void HandleData(ClrDumpObject clrDumpObject) { if (clrDumpObject == null) { throw new InvalidOperationException("No object selected !"); } UIModuleFactory.CreateModule <RootPathModule>(module => { module.UIModuleParent = selectedModule; module.Setup(clrDumpObject); }, module => DockModule(module)); }
protected override void HandleData(AddressList addressList) { if (addressList == null) { throw new InvalidOperationException("No instances selected !"); } UIModuleFactory.CreateModule <ReferersModule>(module => { module.UIModuleParent = selectedModule; module.Setup(addressList); }, module => DockModule(module)); }
public static void Display(ArraysAddressList arrayAddressList, UIModule parentModule) { if (arrayAddressList == null) { throw new InvalidOperationException("No array selected !"); } UIModuleFactory.CreateModule <ArrayInstancesModule>(module => { module.UIModuleParent = parentModule; module.Setup(arrayAddressList); }, module => parentModule.RequestDockModule(module)); }
protected override void HandleData(ClrDump data) { if (data == null) { throw new InvalidOperationException("Can't show inspector module, no dump selected !"); } UIModuleFactory.CreateModule <InspectorModule>( mod => { mod.UIModuleParent = selectedModule; mod.Setup(data); }, mod => DockModule(mod, DockState.DockRight) ); }
protected override void HandleData(ClrDumpType data) { if (data == null) { throw new InvalidOperationException("No type selected !"); } UIModuleFactory.CreateModule <TypeDetailsModule>( mod => { mod.UIModuleParent = selectedModule; mod.Setup(data); }, mod => DockModule(mod) ); }
public static void Create(ClrDumpType clrDumpType, UIModule parent, Action <InstancesModule> postInit) { if (clrDumpType == null) { MessageBox.Show("No type selected !", "Error", MessageBoxButtons.OK); return; } UIModuleFactory.CreateModule <TypeInstancesModule>( mod => { mod.UIModuleParent = parent; mod.Setup(clrDumpType); }, mod => postInit(mod) ); }
protected override void HandleData(ClrDumpThread clrDumpThread) { if (clrDumpThread == null) { throw new InvalidOperationException("No thread selected !"); } UIModuleFactory.CreateModule <StackModule>(module => { module.UIModuleParent = selectedModule; module.Setup(clrDumpThread.ClrDump, clrDumpThread.ClrThread); module.Init(); }, module => DockModule(module)); }
public static void Display(UIModule parentModule, ClrDumpObject data) { if (data.ClrType.IsArray) { var elementsAddresses = new ArrayElementsAddressContainer(data); var addresses = new AddressList(data.ClrDump, data.ClrType.ComponentType, elementsAddresses); string name = $"{data.ClrDump.Id} - Elements: {data.Address:X} [{data.ClrType.ComponentType.Name}]"; InstancesModule.Create(addresses, parentModule, mod => DockModule(parentModule.MessageBus, mod), name); } else { UIModuleFactory.CreateModule <InstanceDetailsModule>( mod => { mod.UIModuleParent = parentModule; mod.Setup(data); }, mod => DockModule(parentModule.MessageBus, mod, DockState.DockRight) ); } }
public static void Create(ClrDump clrDump, IAddressContainer addresses, UIModule parent, Action <InstancesMixedModule> postInit, string name = null) { if (addresses == null) { MessageBox.Show("No instances selected !", "Error", MessageBoxButtons.OK); return; } UIModuleFactory.CreateModule <InstancesMixedModule>( mod => { mod.UIModuleParent = parent; mod.Setup(clrDump, addresses); if (name != null) { mod.Name = name; } }, mod => postInit(mod) ); }
private void MemoScopeForm_DragDrop(object sender, DragEventArgs e) { string[] files = (string[])e.Data.GetData(DataFormats.FileDrop); var fileInfos = files.Select(f => new FileInfo(f)); var filteredFileInfos = fileInfos.Where( fi => fi.Extension.Equals(".dmp", System.StringComparison.InvariantCultureIgnoreCase) ); if (filteredFileInfos.Any()) { msgBus.SendMessage(new OpenDumpRequest(filteredFileInfos)); var directory = filteredFileInfos.First().DirectoryName; UIModuleFactory.CreateModule <ExplorerModule>(module => module.SetUp(directory), module => DockModule(module, DockState.DockLeft)); } else { MessageBox.Show("Dropped files must have a .dmp extension !"); } }
protected override void HandleData(ClrDumpThread clrDumpThread) { if (clrDumpThread == null) { throw new InvalidOperationException("No thread selected !"); } var ex = clrDumpThread.ClrDump.Eval(() => clrDumpThread.ClrThread.CurrentException); if (ex == null) { throw new InvalidOperationException("No exception for this thread !"); } UIModuleFactory.CreateModule <ThreadExceptionModule>(module => { module.UIModuleParent = selectedModule; module.Setup(clrDumpThread.ClrDump, clrDumpThread.ClrThread); module.Init(); }, module => DockModule(module)); }
public override void Run() { UIModuleFactory.CreateModule <ExplorerModule>(module => { }, module => DockModule(module, DockState.DockLeft)); }
public void HandleMessage(ClrDumpLoadedMessage message) { var dump = message.ClrDump; UIModuleFactory.CreateModule <TypeStatModule>(tsm => tsm.Setup(dump), tsm => DockModule(tsm)); }
public static void Display(UIModule parentModule, ClrDumpObject clrDumpObject) { UIModuleFactory.CreateModule <DelegateTargetsModule>(module => { module.UIModuleParent = parentModule; module.Setup(clrDumpObject); }, module => DockModule(parentModule.MessageBus, module)); }
public static void Display(UIModule parentModule, ClrDumpType clrDumpType) { UIModuleFactory.CreateModule <DelegateInstancesModule>(module => { module.UIModuleParent = parentModule; module.Setup(clrDumpType); }, module => DockModule(parentModule.MessageBus, module)); }
public override void Run() { UIModuleFactory.CreateModule <AboutModule>(tsm => { }, tsm => DockModule(tsm)); }
public override void Run() { UIModuleFactory.CreateModule <ProcessModule>(module => { }, module => DockModule(module)); }
public static void Display(UIModule parentModule, ClrDump clrDump) => UIModuleFactory.CreateModule <LoneTargetsModule>(module => { module.UIModuleParent = parentModule; module.Setup(clrDump); }, module => DockModule(parentModule.MessageBus, module));
protected override void HandleData(ClrDump clrDump) { UIModuleFactory.CreateModule <SegmentsModule>(module => { module.UIModuleParent = selectedModule; module.Setup(clrDump); }, module => DockModule(module)); }
protected override void HandleData(ClrDump clrDump) => UIModuleFactory.CreateModule <DisposableTypesModule>(module => { module.UIModuleParent = selectedModule; module.Setup(clrDump); }, module => DockModule(module));