Improve performance, UX, and code quality

- Replace Python pixel loop with NumPy vectorized HSV processing (~50-100x faster overlay rebuilds)
- Add OverlayCanvas (QGraphicsView) to replace plain QLabel overlay panel
- Add editable QLineEdit value input to SliderControl (supports typing exact values)
- Implement eyedropper pick-from-image: left-click sets hue/sat/val sliders from pixel colour
- Add keyboard shortcuts: Ctrl+O, Ctrl+Shift+O, Ctrl+S, Ctrl+Z, Ctrl+R, arrow keys, Esc
- Add drag-and-drop support for image files and folders
- Persist and restore window geometry via QSettings
- Remove duplicate _CONFIG_DATA load in constants.py
- Remove dead constructor stylesheet from ToolbarButton
- Add numpy>=1.26 dependency
This commit is contained in:
lm
2026-03-10 16:07:52 +01:00
parent 2d4531013d
commit 78af24103c
40 changed files with 309 additions and 88 deletions
+1
View File
@@ -59,3 +59,4 @@
"dialog.no_image_loaded" = "Kein Bild geladen."
"dialog.no_preview_available" = "Keine Preview vorhanden."
"dialog.overlay_saved" = "Overlay gespeichert: {path}"
"status.drag_drop" = "Bild oder Ordner hier ablegen."
+1
View File
@@ -59,3 +59,4 @@
"dialog.no_image_loaded" = "No image loaded."
"dialog.no_preview_available" = "No preview available."
"dialog.overlay_saved" = "Overlay saved: {path}"
"status.drag_drop" = "Drop an image or folder here to open it."