Add screen overlay visualization for LED target testing
Implements transparent on-screen overlay that displays LED calibration data directly on the target display for easier setup and debugging. Overlay shows border zones, LED position axes with tick labels, and calibration details. Features: - Tkinter-based transparent overlay window with click-through support - Border zones highlighting pixel sampling areas (colored rectangles) - LED position axes with numbered tick marks at regular intervals - Calibration info box showing target name, LED counts, and configuration - Toggle button (eye icon) in target cards for show/hide - Localized UI strings (English and Russian) Implementation: - New screen_overlay.py module with OverlayWindow and OverlayManager classes - Overlay runs in background thread with proper asyncio integration - API endpoints for start/stop/status overlay control - overlay_active state tracking in processor manager Known limitation: tkinter threading cleanup causes server restart when overlay is closed, but functionality works correctly while overlay is active. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -439,5 +439,17 @@
|
||||
"pattern.name.hint": "A descriptive name for this rectangle layout",
|
||||
"pattern.description.hint": "Optional notes about where or how this pattern is used",
|
||||
"pattern.visual_editor.hint": "Click + buttons to add rectangles. Drag edges to resize, drag inside to move.",
|
||||
"pattern.rectangles.hint": "Fine-tune rectangle positions and sizes with exact coordinates (0.0 to 1.0)"
|
||||
"pattern.rectangles.hint": "Fine-tune rectangle positions and sizes with exact coordinates (0.0 to 1.0)",
|
||||
"overlay": {
|
||||
"button": {
|
||||
"show": "Show overlay visualization",
|
||||
"hide": "Hide overlay visualization"
|
||||
},
|
||||
"started": "Overlay visualization started",
|
||||
"stopped": "Overlay visualization stopped",
|
||||
"error": {
|
||||
"start": "Failed to start overlay",
|
||||
"stop": "Failed to stop overlay"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -439,5 +439,17 @@
|
||||
"pattern.name.hint": "Описательное имя для этой раскладки прямоугольников",
|
||||
"pattern.description.hint": "Необязательные заметки о назначении этого паттерна",
|
||||
"pattern.visual_editor.hint": "Нажмите кнопки + чтобы добавить прямоугольники. Тяните края для изменения размера, тяните внутри для перемещения.",
|
||||
"pattern.rectangles.hint": "Точная настройка позиций и размеров прямоугольников в координатах (0.0 до 1.0)"
|
||||
"pattern.rectangles.hint": "Точная настройка позиций и размеров прямоугольников в координатах (0.0 до 1.0)",
|
||||
"overlay": {
|
||||
"button": {
|
||||
"show": "Показать визуализацию наложения",
|
||||
"hide": "Скрыть визуализацию наложения"
|
||||
},
|
||||
"started": "Визуализация наложения запущена",
|
||||
"stopped": "Визуализация наложения остановлена",
|
||||
"error": {
|
||||
"start": "Не удалось запустить наложение",
|
||||
"stop": "Не удалось остановить наложение"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user