Posted By: wraggster
News via nintendomax
Ant512 proposes a new demo of its GUI library for creating homebrews on the model window of the Amiga OS, "Woopsi. 
Quote: 
- Fixes: 
- Removed dependency PALib from filerequester example. 
- Fixed FileRequester gadget for devKitARM R24 (Quirky). 
- ListBox redraws correctly when an option is selected in single selection mode. 
- Fixed crash in SliderVertical when trying to set value if max and min values are the same (Quirky). 
- Fixed crash in SliderHorizontal when trying to set value if max and min values are the same. 
- Fixed crash when FileRequester path has trailing slash (Quirky). 
- Fixed double-click in SDL (Quirky). 
- FileRequester fixed for SDL (Quirky). 
- SDL path fixed (Quirky). 
- Escape key to quit in SDL mode (Quirky). 
- WindowBorderTop and SkinnedWindowBorderTop no longer have pointers to freed memory if window title changes (Quirky). 
- ScreenTitle and SkinnedScreenTitle no longer have pointers to freed memory if title screen changes (Quirky). 
- Flipping window with depth depth gadget no longer results in corrupted window contents. 
- Fixed const-correctness Text of various class methods. 
- SDL framebuffers initialised to black. 
- More doxygen fixes. 
- Removed WoopsiArray:: begin (). 
- Removed LinkedList:: begin (). 
- Renamed Gadget:: draw () to Widget:: redraw () and removed unnecessary overloads from all classes. 
- Const correctness fixes in Gadget class. 
- ScrollingTextbox grip adjusts scrollbar position correctly when first initialised. 
- Alert box XOR rect draws correctly when released. 
- Requester XOR rect draws correctly when released. 
- WoopsiKeyboard no longer adds decoration itself as the event handler twice; fixed XOR drawing rect when clicked / released. 
- New Features: 
- Added Gadget:: getChild () and Gadget:: getChildCount () (for leonelhs). 
- Added context menu example (for leonelhs). 
- ListData class raises events to ListDataEventHandler objects. 
- ListBox ListData listens for events. 
- Added template base class for event args passing. 
- Refactored gadget event system: 
- Replaced struct with GadgetEventArgs EventArgs class. 
- Renamed to EventHandler GadgetEventHandler. 
- Gadgets can now have multiple event handlers. 
- Replaced handleEvent () method with multiple methods. 
- Removed from enum EventType GadgetEventHandler. 
- Events ListData passed by references instead of pointers. 
- WoopsiKeyboard includes a set of new events: 
- Press 
- Release 
- Repeat 
- WoopsiKeyboard no longer stores the last key clicked. 
- WoopsiKeyboard has set of event-related classes: 
- KeyboardEventHandler 
- KeyboardEventArgs 
- Refactored event context menu system: 
- Added ContextMenuEventArgs class; 
- Removed "_value" from ContextMenu; 
- Removed "getContextMenuValue ()" from Woopsi; 
- Selected context menu item now available via ContextMenuEventArgs:: GetItem (). 
- Slider grip automatically resizes; no need to call resizeGrip (). 
- End point rects now cached (without child rects) for extra speed. 
- Gadget rect moved into separate caching RectCache class. 
- RectCache: removeOverlappedRects made non-recursive. 
- Gadget:: clipRectToHierarchy made non-recursive. 
- Added GraphicsPort:: copy () to copy regions of the framebuffer around. 
- Screen dragging code improved; uses new GraphicsPort:: copy () method. 
- Added GraphicsPort:: scroll () to scroll regions of gadgets. 
- Removed code from scrolling ScrollingPanel and rely on new scroll () method instead. 
- Added GraphicsPort:: dim () function to add functionality to all DimmedScreen gadgets.
Download and Give Feedback Via Comments