Commit Graph
100 Commits
Author SHA1 Message Date
Ryan Fleury f6502f476b quit-after-success flag 2024-10-10 12:57:26 -07:00
Ryan Fleury 0d50157239 fixes with path map application; further completeness of file drop completion menu; fix of set-next-statement 2024-10-10 12:03:11 -07:00
Ryan Fleury ba5f2021f6 file path map application in go-to-code-location path 2024-10-10 11:45:38 -07:00
Ryan Fleury 8336aa71ad fix incorrect deletion flags set for file path map entities 2024-10-10 11:23:29 -07:00
Ryan Fleury 903995f85e file path map building & ui 2024-10-10 11:13:11 -07:00
Ryan Fleury 0c6912ed78 sketch out meta-evaluation for file path maps; have an extra drop-completion ui step when drag/dropping exes, so you can easily drag/drop exes from explorer and add them as targets (the likely common case), but also allowing viewing them with the memory viewer 2024-10-10 09:03:38 -07:00
Ryan Fleury 5933708bdb fix cacheline boundary visualization & other various fixes in eval / eval viz 2024-10-10 08:13:58 -07:00
Ryan Fleury 9c5d9caa32 pass over help menu; typeof in eval 2024-10-10 07:44:26 -07:00
Ryan Fleury 848b26bbd9 fixes / jank pass 2024-10-10 07:13:47 -07:00
Ryan Fleury 0359998a8b do not send statically-disqualified conditional breakpoints to control thread - if they are only controlled by static values or by evaluations on ui-thread-controlled-or-defined state, we can eliminate them from the control thread's concerns 2024-10-09 16:38:34 -07:00
Ryan Fleury 883f1ee1cb eliminate path for frontend to communicate meta evaluation info to ctrl thread - that can't be how it works, since control thread entities change during a demon_run, and thus the control thread needs to recompute meta evaluations for its entities on-the-fly 2024-10-09 16:26:04 -07:00
Ryan Fleury 07c781a4f6 jank reduction & completeness pass 2024-10-09 16:24:29 -07:00
Ryan Fleury ac19591df6 source view reset bugfix; bp hit count reset bugfix (should happen on launch-of-new-session, not after process has started, since we can now evaluate breakpoints on the control thread) 2024-10-09 16:07:00 -07:00
Ryan Fleury 564b8ea753 don't use checkbox icon for what is really a radio button 2024-10-09 15:26:12 -07:00
Ryan Fleury 73555a2486 shift+click to toggle bps 2024-10-09 15:17:39 -07:00
Ryan Fleury 1758292074 pipe breakpoint-condition-touched meta-evaluations to control thread; allow evaluation of meta-evaluations in conditional breakpoints 2024-10-09 15:07:54 -07:00
Ryan Fleury d0e0e35fb5 fix first-time startup not being parameterized by startup window 2024-10-09 14:25:28 -07:00
Ryan Fleury 8e5ebc2d75 memory view fixups for new visualization systems; breakpoint editing work 2024-10-09 13:58:41 -07:00
Ryan Fleury bd87c109b5 extend autocompletion lister to support path autocompletion; use in cases where a watch window view is editing a path-tagged type 2024-10-09 11:18:46 -07:00
Ryan Fleury b960935315 only apply file paths to registers in text visualizers if they are explicitly evaluated - otherwise line info will be correlated to non-source-files 2024-10-08 21:37:45 -07:00
Ryan Fleury dc32a9eb01 leave stubs for go-to-disasm & go-to-source commands 2024-10-08 17:12:45 -07:00
Ryan Fleury 8d0267395a fix go-to-source 2024-10-08 17:08:02 -07:00
Ryan Fleury 05045c8db0 increase hash store history limit; fix incorrectly skipping important go-to-code-location commands 2024-10-08 17:02:49 -07:00
Ryan Fleury aea1999af0 further fixes to implicit disasm parameterization 2024-10-08 16:28:36 -07:00
Ryan Fleury 6bcc316b42 adjust non-parameterized disassembly rules to fit expected behavior better; if user runs 'go to address', or 'go to disassembly', a non-parameterized disassembly view will adjust to a 'temporary look' address, but will reset back to the thread's address upon a new run. this fits generally expected behavior - for stable looks at arbitrary addresses, that is when you would just want to use the watch window & use the disassembly view rule on a specific parameter expression. 2024-10-08 16:19:11 -07:00
Ryan Fleury 8cdf264f4d fix only/omit rules to apply to pointers-to-structs in the same way they apply to regular structs 2024-10-08 15:46:17 -07:00
Ryan Fleury 91aedd5888 be a bit less careful with disabled animation delay 2024-10-08 15:33:52 -07:00
Ryan Fleury 870df1191b jank reduction & flow fix pass, after all of the last month's changes 2024-10-08 15:32:34 -07:00
Ryan Fleury 8708b27bff bps view work 2024-10-08 11:52:43 -07:00
Ryan Fleury c6b44f6afa bp hit counts reset; cell-granularity deletions path for watch windows 2024-10-08 11:25:16 -07:00
Ryan Fleury 6be9c71ea9 first pass at meta entity eval commits; breakpoint editing, target editing, watch pin editing 2024-10-07 21:22:22 -07:00
Ryan Fleury 3720634a62 scroll output to bottom by default (not yet configurable) 2024-10-07 17:45:57 -07:00
Ryan Fleury 534a727b7c unminimize on exception hit 2024-10-07 17:33:10 -07:00
Ryan Fleury 32ce2e110b auto-resolution of derived class ptrs 2024-10-07 17:06:40 -07:00
Ryan Fleury 58114b72f4 move member lookup paths to using eval type member cache 2024-10-07 16:26:43 -07:00
Ryan Fleury 54bb225704 lock expand operations in the watch view via the expandability detection - do not just try expanding 2024-10-07 16:13:36 -07:00
Ryan Fleury 3f19c45dd3 fix enums not working for simple integer operations in eval 2024-10-07 16:04:03 -07:00
Ryan Fleury cf46ce7712 codebase readme pass 2024-10-07 15:59:39 -07:00
Ryan Fleury 23ed5c8f5f allow 'only' view rule to determine sort-order of members in constructed type info 2024-10-07 14:50:41 -07:00
Ryan Fleury c7ce08fd71 fix clang builds 2024-10-07 14:43:31 -07:00
Ryan Fleury 7114a20e66 apply expr view rule fast paths properly 2024-10-07 14:22:31 -07:00
Ryan Fleury 95dd544871 top-level text editing mode state, so that textual keys can be used for hotkeys, but just become disabled when text editing is actually happening 2024-10-07 13:54:30 -07:00
Ryan Fleury 084ef67583 fix implicit source code location parameterization w.r.t. disassembly & code file cursors; also fix output view state 2024-10-07 13:40:08 -07:00
Ryan Fleury 71cdc0eab8 watch pins 2024-10-07 13:10:54 -07:00
Ryan Fleury fa46a52600 stop double-escaping font config paths 2024-10-07 12:50:38 -07:00
Ryan Fleury a2f1be3aa9 fix view rule state retention across reloads 2024-10-07 12:47:17 -07:00
Ryan Fleury 9ed5134843 fix watch reordering, to be more flexible to how entities are arranged w.r.t. rows (add-new-rows at top) 2024-10-07 11:52:53 -07:00
Ryan Fleury 232f955786 breakpoints, watch pins 2024-10-06 13:35:41 -07:00
Ryan Fleury 6a1c36b212 use more basic default epsilon assumption 2024-10-04 11:51:12 -07:00
Ryan Fleury 71ff183dc4 move over to new rich hover system for all entity tooltips 2024-10-03 09:34:47 -07:00
Ryan Fleury 8b8acf64d6 more work on universal rich hover / ctx menu systems 2024-10-02 12:02:49 -07:00
Ryan Fleury 487c7c9938 show rich hover tooltips when dragging/dropping as well 2024-10-01 15:44:37 -07:00
Ryan Fleury d978f56250 thread rich hover 2024-10-01 13:48:11 -07:00
Ryan Fleury 5f32b0710e more work on modules view; show debug info loading status 2024-10-01 12:36:41 -07:00
Ryan Fleury 911f9ef97b make meta & eval type system a bit richer to express plain text vs. code text vs. path text 2024-10-01 12:04:40 -07:00
Ryan Fleury 685cb4a3b8 further work on expanding main watch path to support various string styling/visualizing mechanisms, used ad-hoc before; more work on scheduler 2024-10-01 11:43:57 -07:00
Ryan Fleury dae0d602f9 modules view pass 2024-10-01 10:42:31 -07:00
Ryan Fleury ac5c65ebdd fix busted next/prev tab operations on panels with single tab 2024-10-01 10:02:37 -07:00
Ryan Fleury 04815b4265 continue work on ctrl entity visualization in watch views & further progress on new scheduler 2024-10-01 09:36:29 -07:00
Ryan Fleury 152cc709ce work on ctrl entity buttons in watch views 2024-09-30 17:07:50 -07:00
Ryan Fleury 57d01355a1 create pre-filtered types for meta evals; all of the same underlying data transforms are on a single meta-eval data bundle, but now each type of meta eval entity is exposed via a tighter type to the ui & eval system 2024-09-30 16:03:55 -07:00
Ryan Fleury fcedcab57c begin work on scheduler view requirements 2024-09-30 15:08:05 -07:00
Ryan Fleury 3fb8b83324 mostly done with all of the special machinery for entity views via watch windows 2024-09-30 14:12:55 -07:00
Ryan Fleury 5d76b58acd targets view: ensure ctrl+click for selection, ensure proper target parameterization of engine commands 2024-09-30 09:40:39 -07:00
Ryan Fleury 2e13b221ac do not attempt to form implicit member lookup expressions if initial map failed 2024-09-27 17:03:18 -07:00
Ryan Fleury 64e5d60f38 eliminate adjusted frame base check, which was causing incorrect unwinds in some cases 2024-09-27 16:57:23 -07:00
Ryan Fleury ce72af8b59 fix inclusion of symbolized addresses in editable eval visualization strings 2024-09-27 16:30:01 -07:00
Ryan Fleury 086ca98181 callstack unwind selection in watch window-ified callstack view 2024-09-27 16:27:55 -07:00
Ryan Fleury fe59fab3da progress on callstack view replacement 2024-09-27 15:48:36 -07:00
Ryan Fleury 52b2cbc17a selection in targets view 2024-09-27 14:46:22 -07:00
Ryan Fleury 7362f8ef60 always focus window on stop events; further watch view progress 2024-09-27 14:25:32 -07:00
Ryan Fleury cab01431be more watch view work 2024-09-27 13:41:17 -07:00
Ryan Fleury 771883c56c another checkpoint in fixing up the watch window for replacing targets/scheduler/etc 2024-09-27 13:15:10 -07:00
Ryan Fleury b6b188b67b begin work on full targets view replacement in new watch / eval viz systems 2024-09-27 11:02:37 -07:00
Ryan Fleury ecaa2c55c0 eliminate all old eval visualization block/row code 2024-09-27 10:29:55 -07:00
Ryan Fleury 45226e8a81 begin eliminating old block/row code in eval visualization 2024-09-27 10:26:30 -07:00
Ryan Fleury 0073b2b045 fix correct application of top-level view rules in block tree build 2024-09-27 10:12:44 -07:00
Ryan Fleury 3d781f847e fix expansion rule picking 2024-09-27 10:08:49 -07:00
Ryan Fleury 4b7e6d7113 fixes for variable size rows in new eval visualization structures / integration 2024-09-27 10:04:56 -07:00
Ryan Fleury 3fa98eb0e7 begin moving all visualizer view rules to new eval visualization block system 2024-09-26 17:00:32 -07:00
Ryan Fleury 60f65d30e2 populate entity deletions more urgently in watch viiew 2024-09-26 16:24:47 -07:00
Ryan Fleury 007efe29eb fix incorrect multi-select deletion behavior 2024-09-26 16:21:45 -07:00
Ryan Fleury bbac451de4 fix a few small issues with insertion/deletion of new watch rows 2024-09-26 16:15:03 -07:00
Ryan Fleury 73c37b4d8b correct collection editing/deletion/reordering/etc. with new watch visualization system 2024-09-26 16:08:35 -07:00
Ryan Fleury 2fdfeec467 always keep collections in filtered watch views; add add-new-row capability to watch collection expansion & hook up with expansion ids 2024-09-26 15:36:22 -07:00
Ryan Fleury d314a12698 eliminate possibility for recursive watch window builds; correctly sort child expansion keys before iteration, if needed, for non-identity-based id schemes (debug info tables, frontend entities, etc.); further fixes & integration 2024-09-26 15:26:28 -07:00
Ryan Fleury 07f978ac41 further integration work & expanded support; generalized paths for entity reordering in watch views 2024-09-26 14:37:13 -07:00
Ryan Fleury 338fabd9d0 more block tree / eval visualization integration work with watch views 2024-09-26 13:13:30 -07:00
Ryan Fleury 715bd36965 fix table cursor snapping 2024-09-26 12:24:13 -07:00
Ryan Fleury 198246eb52 more integration work, of new block tree eval visualization structure w/ watch views 2024-09-26 12:05:01 -07:00
Ryan Fleury e705907ec0 checkpoint in moving existing watch views to new block-tree visualization structure 2024-09-26 08:09:22 -07:00
Ryan Fleury 2fb0eb0eb1 sketch out basic coordinate space conversions for new block tree / block range list structures; num -> key; key -> row; num -> containing block range; etc. 2024-09-25 16:53:54 -07:00
Ryan Fleury 48b10411bc eliminate old weld-together path for block tree walk & windowed row list build 2024-09-25 16:37:11 -07:00
Ryan Fleury d6f6ec83da unweld windowed row list generation from block tree walk; write new path which relies on caller-prepped block range list 2024-09-25 16:36:43 -07:00
Ryan Fleury df2bc62563 extend eval visualization view rule hooks to support view-rule-defined (id <-> number) mapping; used for id-based state keys, but an immediate-mode ordering (e.g. sorted/filtered debug info tables); can be used in the future for sorted types/arrays/etc., while preserving expansion/view rule state. also, pull out the block tree -> list(block*range) walk, since it is going to be useful in multiple places 2024-09-25 16:32:48 -07:00
Ryan Fleury f2ecb3d898 expand info & expansion range query hook implementation, for all currently supported view rules 2024-09-25 15:59:42 -07:00
Ryan Fleury a1ceb5fa3b on second thought... merging both view rule expansion *header* info generation, and windowed range queries into an expanded block, into the same hook, is really limiting & wrong - so split back to two hooks, one stage is just informing the expansion space, the next provides per-row information within an expanded block with range-based queries 2024-09-25 15:17:39 -07:00
Ryan Fleury a87c032305 fix a few details in new eval visualization block tree generation algorithm; fix row generation; start fitting new system into hover eval as a first test 2024-09-25 13:17:17 -07:00
Ryan Fleury 9c3d2cd5ab eval visualization: first pass of new tree-ified block building, which preserves the hierarchy of the eval visualization path, as well as relies on only a single view rule hook; first pass of windowed row list production, given that block tree build; also still just uses the single hook 2024-09-25 12:23:50 -07:00
Ryan Fleury c976154284 eval: add cache for type data member gathering & member lookup; eval_visualization: sketch out new hook organization which has single hook for both view rule expansion info, + expansion expr production, in a single combined path (the two often require the same information so it is maybe a good idea to combine them - if not, it will be easy to separate into two stages (expand + expr-child production), but basically just trying to get view rules out of 'block production', and more into just providing the information that actually varies per view rule 2024-09-25 09:34:23 -07:00