Commit Graph

2992 Commits

Author SHA1 Message Date
Bartosz Taudul
5dd7c7e402 Add time range limiting to symbol view. 2020-08-10 18:58:33 +02:00
Bartosz Taudul
7a4ecc5417 Store instruction pointers in per-symbol sample data. 2020-08-10 14:52:51 +02:00
Bartosz Taudul
85f54499fe Add range limit UI to symbol view. 2020-08-10 12:11:07 +02:00
Bartosz Taudul
339ed7cc4d Fix tooltip stroboscope. 2020-08-09 21:40:06 +02:00
Bartosz Taudul
06ac6f4f24 Build per-symbol samples list during live capture. 2020-08-09 21:04:03 +02:00
Bartosz Taudul
3be0a3f628 Vector is not empty here. 2020-08-09 20:46:44 +02:00
Bartosz Taudul
1650d371e6 Actually set self time option, if required. 2020-08-07 19:43:31 +02:00
Bartosz Taudul
d6aa814de5 Use time limited data for inline stats. 2020-08-07 19:42:18 +02:00
Bartosz Taudul
d151aff237 Allow time limiting sampled call stacks statistics. 2020-08-07 19:26:19 +02:00
Bartosz Taudul
b418c98e63 Add symbol samples accessor. 2020-08-07 19:14:21 +02:00
Bartosz Taudul
aa8b60a824 Calculate per-symbol sample time list.
This is for loaded traces. Real time capture will be implemented later.
2020-08-07 19:05:27 +02:00
Bartosz Taudul
87e7cba289 Disable samples limit range until background job is done. 2020-08-07 14:54:00 +02:00
Simon van Bernem
d06617b2a5 Fixed variable name 2020-08-07 10:55:00 +02:00
Simon van Bernem
4e1ed15237 More matching code-style 2020-08-07 10:45:52 +02:00
Simon van Bernem
ab85fba7e0 Matching the braketing style 2020-08-07 10:42:36 +02:00
Simon van Bernem
903b7badc0 next try 2020-08-07 10:39:22 +02:00
Simon van Bernem
e14bb56db1 matching spacing to remove change from original 2020-08-07 10:38:38 +02:00
Simon van Bernem
b826c14e4d reverted an unnecessary change 2020-08-07 10:37:19 +02:00
Simon van Bernem
3dd80c5288 DrawStripedRect can now draw screen-space stripes
Added two parameters to DrawStripedRect: fix_stripes_in_screen_space aligns the stripes to screen space. This leads to the stripes of any stripe rect being drawn aligning. Also added inverted, which flips the empty and filled part of the striped rect. This is used to make statRange and findZone stripes interleave, when they overlap.
2020-08-07 10:24:13 +02:00
Bartosz Taudul
550e05d149 Fix time range limits created by reverse-mouse-drag. 2020-08-07 00:24:22 +02:00
Bartosz Taudul
983aba7a0b Self time is forced for range limit in sampling stats. 2020-08-06 17:22:47 +02:00
Bartosz Taudul
0a0d04fff6 Add time range limits to instrumentation statistics. 2020-08-06 15:22:10 +02:00
Bartosz Taudul
b68423fc1a Fix copy pasta. 2020-08-06 15:22:10 +02:00
Bartosz Taudul
71440cc6ee Use custom data structure for temporary stats data. 2020-08-06 15:22:10 +02:00
Bartosz Taudul
251e8f1fe2 Fix vertical panning. 2020-08-05 17:20:19 +02:00
Bartosz Taudul
c4cf690e39 Display annotation extent on annotations list. 2020-08-04 17:31:33 +02:00
Bartosz Taudul
05c60259b6 Display exact time for annotation begin, end. 2020-08-04 17:26:00 +02:00
Bartosz Taudul
22e86af4ab Remove redundant tooltip. 2020-08-04 17:24:59 +02:00
Bartosz Taudul
a5c16a39ba Make annotations resizable. 2020-08-04 17:23:12 +02:00
Bartosz Taudul
f589fba274 Use Range for annotation extent. 2020-08-04 17:14:58 +02:00
Bartosz Taudul
2acc1d9670 Move Range, RangeSlim out of View. 2020-08-04 17:09:17 +02:00
Bartosz Taudul
68e452802b Allow performing range copies from one to another. 2020-08-04 17:06:24 +02:00
Bartosz Taudul
85e8a6a81c Add icons to range limits window entries. 2020-08-04 17:06:24 +02:00
Bartosz Taudul
67e86d2b27 Add context menus to ghost zones. 2020-08-04 17:06:24 +02:00
Bartosz Taudul
bd51add4f1 Display zone range popup area. 2020-08-04 17:06:24 +02:00
Bartosz Taudul
321fa06a3d Merge adding annotations and setting range limits. 2020-08-04 16:40:35 +02:00
Bartosz Taudul
79fc917483 Hook-up statistics time range logic. 2020-08-04 14:31:53 +02:00
Bartosz Taudul
7fe1560ca5 Change find zone limit range color to green. 2020-08-04 14:23:37 +02:00
Bartosz Taudul
1e526cfc09 Extract range entry drawing. 2020-08-04 14:20:35 +02:00
Bartosz Taudul
9449f3ef89 Add time range limit UI to statistics menu. 2020-08-04 14:15:28 +02:00
Bartosz Taudul
a23f58cc8f Add spacing in find zone menu. 2020-08-04 14:13:12 +02:00
Bartosz Taudul
ed01a3e4e0 Extract common filtering UI logic. 2020-08-04 14:09:59 +02:00
Bartosz Taudul
21589a238b Reduce size of statistics menu controls. 2020-08-04 14:06:32 +02:00
Bartosz Taudul
2f94b44a6c Move filter UI to a separate line in statistics menu. 2020-08-03 17:08:47 +02:00
Bartosz Taudul
9b1573d803 Add limits button to find zone menu. 2020-08-03 16:07:38 +02:00
Bartosz Taudul
02aae23a98 Move limits button to tools submenu. 2020-08-03 16:07:28 +02:00
Bartosz Taudul
498781b5bf Clear potential click after mouse button is released. 2020-08-01 13:01:04 +02:00
Bartosz Taudul
734b0c25d9 Fix typo. 2020-08-01 12:55:49 +02:00
Bartosz Taudul
7d34350bf3 Drag delta (accumulated) shouldn't be consumed. 2020-08-01 12:36:52 +02:00
Bartosz Taudul
b33445c073 Open context menus without ctrl key. 2020-08-01 12:35:30 +02:00
Bartosz Taudul
b4021d7d79 Add mouse click vs drag logic. 2020-08-01 12:35:15 +02:00
Bartosz Taudul
4da8385300 Range overlay resize has priority over other mouse interactions. 2020-08-01 12:11:06 +02:00
Bartosz Taudul
22651eccc5 Implement consumption of mouse events. 2020-08-01 12:10:59 +02:00
Bartosz Taudul
6d0d12ce78 Remove unneeded parameter. 2020-08-01 12:03:11 +02:00
Bartosz Taudul
6836014caa Capture ImGui mouse state. 2020-08-01 12:02:11 +02:00
Bartosz Taudul
39197b9ff8 Use mouse wrappers. 2020-08-01 11:53:11 +02:00
Bartosz Taudul
733b9c4048 Add wrapper for ImGui mouse handling. 2020-08-01 11:49:43 +02:00
Bartosz Taudul
dbcc908dee Fix initialization. 2020-07-31 18:10:03 +02:00
Bartosz Taudul
19246a027f Allow limiting find zone time range to zone extent. 2020-07-31 18:01:07 +02:00
Bartosz Taudul
efc9c7c58f Add color key for find zone time range. 2020-07-31 17:57:54 +02:00
Bartosz Taudul
65e00eb2d4 Show time limit overlay if range window is open. 2020-07-31 17:54:46 +02:00
Bartosz Taudul
2bce9319d0 Allow focusing to find zone time range. 2020-07-31 17:51:47 +02:00
Bartosz Taudul
1215eb4de5 Allow limiting find zone time range to a frame. 2020-07-31 17:50:12 +02:00
Bartosz Taudul
8091207d26 Add time limit ranges window. 2020-07-31 16:37:47 +02:00
Bartosz Taudul
9633617810 Don't change time range limit when enabling it. 2020-07-31 16:19:35 +02:00
Bartosz Taudul
0d2914bbe8 Display thumbnail of current frame image in connection popup. 2020-07-30 01:58:08 +02:00
Bartosz Taudul
f367b16dc0 Add missing operator. 2020-07-29 19:13:10 +02:00
Bartosz Taudul
7f90a0a84e Proper test for hovering mouse over the timeline. 2020-07-29 19:03:54 +02:00
Bartosz Taudul
e406ce5aab Fix typo. 2020-07-29 19:00:37 +02:00
Bartosz Taudul
5aff4b0f50 Set proper mouse cursor on range boundaries. 2020-07-29 18:54:10 +02:00
Bartosz Taudul
58428e7ede Dynamically adapt find zone results to range limit. 2020-07-29 18:48:49 +02:00
Bartosz Taudul
c1bf853310 Drag range boundary to change its span. 2020-07-29 18:42:53 +02:00
Bartosz Taudul
2f5f2e5b1d Add range boundary highlight. 2020-07-29 18:42:52 +02:00
Bartosz Taudul
ff5daf9df7 Proper handling of mouse over timeline view.
This fixes:
- Dead zones between header, frame sets and the rest of timeline
  display.
- One-frame frame set position lag when panning the view with mouse over
  zones region of timeline.
2020-07-29 17:52:51 +02:00
Bartosz Taudul
f37a324a9e Add annotation removal button hint. 2020-07-29 17:07:40 +02:00
Bartosz Taudul
29fe5f211f Warn when range limiting is enabled. 2020-07-29 15:45:50 +02:00
Bartosz Taudul
3e3f8aaabf Enable linear filtering for frame images. 2020-07-29 13:31:26 +02:00
Bartosz Taudul
25ee7f945b Draw limit region with striped rect. 2020-07-29 13:26:47 +02:00
Bartosz Taudul
d8728be689 Striped rect drawing. 2020-07-29 13:18:23 +02:00
Bartosz Taudul
fd5ccc16d6 Extract find zone range data to a separate struct. 2020-07-28 15:12:45 +02:00
Bartosz Taudul
7e6a41e647 No need for lean alloc srcloc zone begin messages. 2020-07-26 14:35:04 +02:00
Bartosz Taudul
062bb3044f No need for lean callstack sample message. 2020-07-26 14:28:13 +02:00
Bartosz Taudul
4252cac654 No need for lean callstack alloc message. 2020-07-26 14:25:32 +02:00
Bartosz Taudul
18713de70c No need for lean frame image message. 2020-07-26 14:23:04 +02:00
Bartosz Taudul
b76726c597 No need for lean callstack, callstack memory messages. 2020-07-26 14:23:03 +02:00
Bartosz Taudul
14a15bf152 Order of lock events is now always well-defined. 2020-07-26 13:54:40 +02:00
Bartosz Taudul
03f46d7228 Custom string data is no longer needed. 2020-07-26 01:47:49 +02:00
Bartosz Taudul
c0b73c248f Add second single string transfer. 2020-07-26 01:47:49 +02:00
Bartosz Taudul
a7d2ab4d4f Send single string for lock name. 2020-07-26 01:47:49 +02:00
Bartosz Taudul
e91950f006 Send single string for messages. 2020-07-26 01:35:52 +02:00
Bartosz Taudul
5553761c02 Send single string for zone text and name. 2020-07-26 01:35:52 +02:00
Bartosz Taudul
309a151610 Symbol length no longer has to be packed. 2020-07-26 01:35:52 +02:00
Bartosz Taudul
88685440b6 Send single string for callstack frame. 2020-07-26 01:35:52 +02:00
Bartosz Taudul
61e3acde06 Send single string for callstack frame size. 2020-07-26 01:35:52 +02:00
Bartosz Taudul
e3dfa96055 Extract single string idx retrieval. 2020-07-26 01:35:52 +02:00
Bartosz Taudul
06ca4e2d16 Send single string for symbol information. 2020-07-26 01:35:52 +02:00
Bartosz Taudul
14b180cd16 Send single string for code information. 2020-07-26 01:35:51 +02:00
Bartosz Taudul
81d5a8db5e Implement transport of single string data.
In most cases only one string is sent per message and no pointer
tracking is needed.

This is only plumbing work, no changes to messages have been made yet.
2020-07-26 01:35:51 +02:00
Bartosz Taudul
6fe3736a23 When selecting function in symbol view, go to function location. 2020-07-19 23:43:52 +02:00
Bartosz Taudul
0704ab8f79 Clear frame image back references when removing fi data. 2020-07-17 22:16:47 +02:00