Releases: DevGeniusCode/GenWND
Releases · DevGeniusCode/GenWND
GenWND v2.5.0 - Multi-Selection & Widescreen
✨ Added
- Bidirectional Multi-Selection: Implemented robust two-way multi-selection synchronization between the
QGraphicsViewCanvas and theQTreeViewObject Tree. - Multi-Object Drag & Drop: Enabled dragging and dropping multiple selected items simultaneously within the Object Tree model.
- Undo Macros for Bulk Actions: Deleting multiple items via the context menu is now wrapped in a
QUndoStackmacro, allowing a single Undo/Redo action for bulk deletions. - 16:9 Widescreen Preview: Added a visual toggle to the Canvas toolbar that applies an anamorphic scaling transform to the
QGraphicsView. This simulates how the UI stretches on modern 16:9 monitors without modifying the underlying absolute data coordinates in the WND dictionary.
🐛 Fixed
- Tree State Preservation: Implemented a state preservation mechanism. The Object Tree now successfully retains its vertical scroll position, expanded node states, and active selections after a data model refresh/reload.
- Visibility Toggle Persistence: Fixed an issue where the
is_hidden(eye icon) visual state would reset in the tree upon reloading. The visibility state is now properly bound to the central WND dictionary object as the source of truth.
♻️ Changed
- Undo Stack Architecture: Centralized the
QUndoStackinstantiation and management within theMainWindowclass for cleaner access across all child UI components.
GenWND v2.0.0 - Canvas
🎨 Visual Canvas Features (GenWND)
Core Interaction & UX
- WYSIWYG Direct Manipulation: Select, drag, and freely position UI elements directly on the visual canvas.
- Advanced Group Operations: Multi-select items to automatically generate a unified bounding box overlay, allowing for proportional scaling and bulk moving of grouped elements.
- Smart Navigation: Precision zoom capabilities using
Ctrl + Mouse Wheel, perfectly anchored to the mouse cursor while preserving standard trackpad/mouse scrolling behaviors. - Foreground Grid Overlay: A toggleable visual grid system to assist with pixel-perfect placement and alignment.
Layout & Alignment Tools
- Comprehensive Alignment: Dedicated toolbar actions to quickly align multiple selected objects (Align Left, Right, Top, Bottom, Horizontal Center, Vertical Center).
- Even Distribution: Tools to perfectly distribute space horizontally or vertically between three or more selected items.
- Boundary Extension (Match Bounds): Specialized tools to extend the dimensions of selected items to match the furthest edges (Extend Left, Right, Top, Bottom) of the group.
Architecture & Stability
- Two-Way Data Synchronization: Canvas interactions instantly and silently update the central data dictionary and Object Tree without requiring heavy, performance-draining full-scene redraws.
- Memory-Safe Undo/Redo Integration: Canvas movements and resizes (including bulk macro operations) are securely hooked into the
QUndoStack. Safely adds, removes, or restores elements without triggering C++ Garbage Collection Segfaults. - Flawless Coordinate Mapping: Custom event handlers ensure that item grabbing and dragging remains 100% accurate, completely eliminating "jumping" bugs regardless of the current zoom level or viewport scroll state.
- Automatic Z-Depth Rendering: The canvas intelligently calculates the correct visual hierarchy, rendering nested children and parent containers at the appropriate Z-index depth based on the WND tree structure.
v1.0.1
Release version 1.0.1