BUG 1: Sidebar buttons clicked wrong plugin
- Lambda captured idx by reference, always using last value
- Fixed by using functools.partial to capture by value
BUG 2: Dashboard plugin KeyError 'border_subtle'
- Changed to 'border_default' which exists in EU_COLORS
The sidebar should now correctly switch to the clicked plugin.
BUG: 'bg_panel' KeyError in Dashboard plugin.
The EU_COLORS dictionary doesn't have 'bg_panel'. Changed to use
'bg_secondary' which is the correct background color for panels.
NEW TESTING PLUGINS:
1. Log Parser Test Plugin (plugins/log_parser_test/)
- Real-time event monitoring with counters
- Visual event history table (last 100 events)
- Raw log line viewer
- Simulated event buttons for testing:
* Skill Gain
* Loot
* Damage
- Event type filtering and statistics
- Color-coded event types
- Auto-scroll and refresh
2. Game Reader Test Plugin (plugins/game_reader_test/)
- Quick OCR test with progress bar
- Region-specific OCR testing with presets:
* Chat Window
* Skills Window
* Inventory
* Mission Tracker
- OCR backend selection (Auto/EasyOCR/Tesseract/PaddleOCR)
- Processing time tracking
- Test history with results
- Save/copy OCR results
- Calibration tools:
* Display DPI detection
* Backend status checker
* OCR tips and best practices
FEATURES FOR BOTH:
- Modern EU-styled UI
- Tabbed interface
- Error handling and logging
- Background processing (no UI freeze)
- Real-time updates
These plugins serve as both testing tools and demonstrations
of the Log Reader and OCR core services capabilities.
All 10 core services implemented and integrated:
CORE SERVICES:
1. Nexus API Client - Search items, mobs, market data
2. Data Store - Plugin persistence with auto-backup
3. Notification System - Toast notifications with sounds
4. Window Manager - EU window detection and focus
5. HTTP Client - Cached HTTP with rate limiting
6. Event Bus - Typed events with pub/sub
7. Audio Service - Sound playback with volume control
8. Clipboard Manager - Copy/paste with history
9. Screenshot Service - Screen capture with auto-save
10. Task Manager - Thread pool with priorities
Each service:
- Singleton pattern
- Thread-safe
- PluginAPI integration
- BasePlugin convenience methods
Updated:
- core/main.py - Initialize all services
- core/plugin_api.py - Service registration
- plugins/base_plugin.py - Exposed methods