Commit Graph

48 Commits

Author SHA1 Message Date
tiresiasfromthebai 9ef82fb898 perf: coalesce Array Visualizer rebuilds and halve scatter restyle
In scatter mode a two-array (X/Y) plot rebuilt the table and chart once
per property setter (data, offset, stride) and restyled every marker four
times, so a ~4000-point phase portrait froze for ~0.8s per refresh.

- SeerArrayWidget: add a BulkUpdate RAII guard that defers create() until
  a burst of setters completes, so a refresh does one rebuild, not several.
- redecorateScatterSeries: drop the two redundant transparent passes; after
  addSeries() the series holds the theme pen/brush, so setPen(NoPen)/
  setBrush() are already real transitions and either re-pushes both to the
  markers.

~800ms -> ~200ms per refresh at 4000 points; line/spline and marker
appearance unchanged.

Add tests/helloscatter, a 4000-point two-array phase portrait with a
breakpoint loop, to reproduce the slow refresh.
2026-07-31 10:55:43 +02:00
tiresiasfromthebai c799a93248 Auto-refresh the Array Visualizer at each stopping point 2026-07-28 10:28:50 +02:00
Ernie Pasveer 81bd82ef50 Finished adding a Icon Theme option (auto/light/dark). 2026-07-23 11:16:48 -05:00
Ernie Pasveer 768d14e298 First work on creating a icon color mode. 2026-07-22 11:04:31 -05:00
tiresiasfromthebai f0f620c632 Array Visualizer: fix scatter markers losing their style
Scatter markers can be recreated by Qt Charts without inheriting the
series pen/brush, leaving nearly invisible 1 px markers. This occurs
reliably with large datasets while small ones usually render correctly.

Reapply the scatter series pen and brush after addSeries() by forcing
two actual style transitions. Since the setters are guarded, simply
reassigning the existing values is a no-op.

Verified on Qt 6.4.2 with both small (100 points) and large (4000
points) datasets. Line and spline series are unaffected.
2026-07-14 18:18:29 +02:00
Ernie Pasveer 7e88931a6d Fixed transposition in plotting. 2026-07-13 19:02:58 -05:00
Ernie Pasveer 7d12064e84 Fixed bug with plotting scatter plot. 2026-07-13 17:08:17 -05:00
Ernie Pasveer 964aa8d4f3 Fixed icon colorization for >= qt6.6.3. 2026-06-01 17:42:22 -05:00
Ernie Pasveer 070805cede Make icon colorizing dependant on Qt6.3 and above. 2026-06-01 17:28:47 -05:00
Ernie Pasveer d1d6f7d901 Seer handles dark/light color theme changes. Especially for Icons. 2026-05-31 13:43:38 -05:00
Ernie Pasveer 12c6cd7c4a Move Seer icons to better locations for flathub. 2025-12-16 09:42:08 -06:00
Ernie Pasveer b88d68afd3 Add copyright header to each source file. 2025-08-26 17:26:05 -05:00
Ernie Pasveer ae75a4e948 Finished. 2024-11-23 15:00:36 -06:00
Ernie Pasveer affe18171c Checkpoint. 2024-11-21 18:12:02 -06:00
Ernie Pasveer 87e32e6167 Add support for Qt5. 2023-05-20 16:27:23 -05:00
Ernie Pasveer 9c49fb7f63 Initial iteration for Qt6 port. 2023-05-16 15:25:28 -05:00
Ilia Sharin 67df2c1d6f Made adaptation to Qt6. Now it compiles without any errors and runs.
More work is required to get rid of Qt5Compat shims
2023-05-05 17:00:08 -04:00
Ernie Pasveer b268944103 Fixed regression bug for memory and array visualizers.
The bug didn't allow an address to be manually entered.
Broke when I improved Ada support.
2023-04-01 11:08:25 -05:00
Ernie Pasveer 6dfa66b7d3 Improve visualizers for Ada arrays. "(system.address) 0x7fffffffcf10" 2023-03-19 10:19:36 -05:00
Ernie Pasveer fec9e149b7 Change to SeerHelpPageDialog. 2023-01-27 19:16:15 +00:00
Ernie Pasveer 1b0cbb3752 arrayvisualizer: fixed default X/Y axis setting. 2022-10-08 08:36:23 -05:00
Ernie Pasveer 2a556e698c Fix QString::split() compiler error for older versions of Qt. 2022-10-02 12:33:37 -05:00
Ernie Pasveer 552b37fdc8 bugfix: QButtonGroup::idClicked an QT_VER. 2022-10-02 10:35:30 -05:00
Ernie Pasveer 2d48bae1d9 Start of Help for all other visualizers and browsers. 2022-09-25 20:06:56 -05:00
Ernie Pasveer f487d0de87 Merge branch 'main' into varvisualizer 2022-08-25 17:41:22 -05:00
Ernie Pasveer 11c2c9b27d Use new name of seergdb icons. 2022-08-24 17:44:24 -05:00
Ernie Pasveer f575ab921a More work on VarObj visualizer. 2022-08-21 15:53:35 -05:00
Ernie Pasveer 021bcbe3b4 Fix entry of address for Memory and Array visualizers. 2022-07-24 12:14:28 -05:00
Ernie Pasveer a5eec7c91c Finished Array Visualizer having a X, Y, XX, YY, or XY arrays. 2022-06-06 11:19:49 -05:00
Ernie Pasveer ed25da1bd4 Add QClearLineEdit.
Which emits 'returnPressed' on clear action.
2022-06-05 16:32:12 -05:00
Ernie Pasveer 27ee131c8b Merge branch 'main' into arrayvisualizer2d 2022-06-05 15:47:48 -05:00
Ernie Pasveer 857b8a68c1 Checkpoint. Array visualizer. 2022-06-05 14:53:05 -05:00
Ernie Pasveer c6bfcc0642 Add print support to Array visualizer.
Plus other comsetic changes.
2022-05-30 19:03:17 -05:00
Ernie Pasveer c8644b79e6 checkpoint. 2022-05-30 16:38:26 -05:00
Ernie Pasveer a170732396 checkpoint: qtcharts. Fixed stray artfifacts with text labels.
Added update() function in various places.
2022-05-30 16:26:33 -05:00
Ernie Pasveer 2bd3280de8 Tweak memory/array visualizer.
Make number of bytes default to 256. Can be changed if needed.
Change to 'Variable expression'.
Show results immediately.
2022-05-15 13:32:00 -05:00
Ernie Pasveer 75ab096da9 checkpoint: 2dvisualizer 2022-05-07 11:25:26 -05:00
Ernie Pasveer fa5335ba68 Improve some compile warnings.
Remove "-Wdeprecated-copy". Some compilers don't support.
Support both QButtonGroup::buttonClicked() and
QButtonGroup::idClicked(), depending on which vesion of
QT is installed.
2022-05-02 19:57:17 -05:00
Ernie Pasveer a4bb64065e Checkpoint: 2d array charts. 2022-05-02 18:32:44 -05:00
Ernie Pasveer e6c15037f9 Clean up code for lint errors. 2022-04-28 20:20:37 -05:00
Ernie Pasveer 74234f3d50 Fix all compiler warnings.
Added -Wall to compile flags in cmake. It reported a handfull
of compiling warnings.  Now fixed.
2022-04-02 13:41:17 -05:00
Ernie Pasveer 61b241fd82 ArrayVisualizer. Plotting arrays. 2022-03-24 15:04:18 -05:00
Ernie Pasveer 18dc573e7a Checkpoint: ArrayVisualizer. 2022-03-21 17:37:53 -05:00
Ernie Pasveer 8e19c0ba58 checkpoint: array visualizer. 2022-03-19 15:49:40 -05:00
Ernie Pasveer 8fad055370 checkpoint. ArrayVisializer. 2022-03-14 18:28:46 -05:00
Ernie Pasveer 82406284e2 Switch to Q_ASSERT. 2022-02-08 19:24:41 -06:00
Ernie Pasveer 1afdf82f91 Switch from __PRETTY_FUNCTION__ to qSetMessagePattern() 2022-01-20 10:40:56 -06:00
Ernie Pasveer 242f8761d0 First cut of an array visualizer. 2021-11-30 16:59:42 -06:00