add plugin settings, per-tile refresh, settings menu, touch-friendly UI

- Plugin settings infrastructure in PluginManager with config/plugin_settings.cfg
  storage, manifest [settings] sections, CRUD API, plugin_setting_changed signal
- Per-tile refresh intervals: 100ms base tick, per-tile update_interval_ms
  metadata, dynamic tween durations clamped to refresh window
- Settings menu (PopupPanel) with General/Plugins/About tabs, plugin
  activation toggles, per-plugin settings cog buttons
- Plugin settings popup (PopupPanel) with dynamic UI from setting definitions
  (SpinBox/CheckBox/LineEdit), auto-save on change
- Modal behavior: exclusive = true on settings windows
- Touch-friendly sizing: enlarged close buttons, cog buttons, controls, spacing
- Red corner close button redesign with rounded corners, hover/pressed states
- Split system_monitor into local_system_monitor (CPU, Memory) and test plugins
- Plugin activation/deactivation with layout preservation
This commit is contained in:
Eric Smith 2026-05-21 12:47:25 -04:00
parent 12b45b2685
commit 57b36798b9
24 changed files with 1065 additions and 183 deletions

View file

@ -1,7 +1,9 @@
[layout]
name="Main"
saved_at="2026-05-21T09:16:49"
saved_at="2026-05-21T12:08:02"
grid_columns=4
grid_rows=3
[tiles]
@ -9,24 +11,24 @@ count=3
[tile_0]
id="system_monitor/cpu"
col=1
id="local_system_monitor/cpu"
col=3
row=0
w=1
h=1
[tile_1]
id="system_monitor/memory"
col=2
id="local_system_monitor/memory"
col=1
row=0
w=1
h=1
[tile_2]
id="system_monitor/testing"
col=0
id="test/testing"
col=2
row=0
w=1
h=3
h=1