Homebrew – Woopsi v0.32: more fixes and new features

Homebrew - Woopsi v0.32: more fixes and new features - Image 1DS homebrew developer Ant512 has just been able to come up with the latest build of his GUI Development Library, namely Woopsi v0.32. The latest release has a lot of bug fixes and a couple of new features as well. Get to know this application by reading about in the full article.

Download: Woopsie v0.32 Source
Download: Woopsie v.032 Demo

Homebrew - Woopsi v0.32: more fixes and new features - Image 1 Great news to users of Ant512‘s GUI Development Library! Woopsi v0.32 has just been released by Ant512. This particular homebrew which is based on the AmigaOS system aims to help coders to create user interfaces for their own homebrew projects.

The developer also provided the source code for this application. Feel free to tinker with it in case you have ideas of your own or if you want to customize it to your own linking.

What we have below is the bulleted list of the bug fixes and some of the new things that have been added to the homebrew development program. Do read the notes on Woopsi.

Fixes:

  • Moved abstract methods out of FontBase not needed by all fonts.
  • Renamed “checkGlyphData()” in font classes to “isCharBlank()”.
  • Moved more code out of FontBase into FixedWidthFontBase.
  • Changed FontBase::clearColour() to support Jeff’s new font classes.
  • Screens receive focus correctly when clicked.
  • Screens no longer start dragging when clicked other than in the titlebar.
  • Text class now responsible for maintaining string memory instead of MultiLineTextBox.
  • Text::wrap() trims spaces from the start of each line.
  • Text::wrap() breaks more sensibly at quotes, etc.
  • Closing/shelving a child gadget chooses a new focused gadget correctly if the child is the only gadget in the list.
  • Gadgets now check recursive isEnabled() function instead of using the enabled flag directly.
  • Removed WiFi icon due to problems with some loaders.
  • Moved ROM icon to icons directory to reduce ROM size.
  • Removed vector from woopsiheaders.h.
  • Gadget constructor respects GADGET_PERMEABLE flag.
  • Renamed Woopsi::play() to Woopsi::run().
  • Protected methods within Woopsi class that should not be public.
  • Gadget::unregisterChildrenFromVBL() recurses through child tree and       unregisters all descendents.
  • Gadget destructor will perform all deletion operations if it is called directly and the correct deletion queue method is bypassed.
  • Context menu shelved if the gadget that opened it gets closed.
  • Slider/scrollbar inaccuracies fixed.
  • Fixed rounding errors in TextBox alignment.
  • Documentation updates.
  • Switched demo code to follow Jeff’s design pattern.
  • Changed Woopsi queue handling to use while loops, so that unexpected changes to the lists don’t cause crashes.
  • All attempts to dereference woopsiApplication check for NULL first.
  • Gadget::redrawDirty() clips to parent dimensions correctly.
  • Woopsi’s gadget delete queue gets processed before the VBL listeners, ensuring that deleted gadgets no longer try to fire events.
  • Deleted gadgets no longer raise events.
  • Gadget::isDeleted() recurses up through hierarchy.     

New Features:

  • Added PackedFontBase, PackedFont1 and PackedFont16 classes (proportional font support).
  • Added “pythonscripts” folder with Jeff’s “bmp2font” Python script for creating PackedFont-compatible fonts.
  • Renamed existing show/hide system to shelve/unshelve and added true show/hide system.
  • Added Gadget::isEnabled().
  • Added ListBox and ListBoxItem classes.
  • Added double click events (optional per gadget via a flag).
  • Added ProgressBar class
  • Added EVENT_SHELVE and EVENT_UNSHELVE events.
  • Gadgets can become modal.
  • Added Jeff’s application control code to Woopsi class.
  • Added CycleButton class.
  • Merged SDL loop code into Woopsi class.
  • Merged DS and SDL woopsifuncs files.
  • Buttons change colour when clicked.

Anyway, there’s still more to know about this homebrew. In case you are curious about it, you can do so by reading the readme text files included in the archives. We highly encourage you guys do so. We’ll keep you posted for more updates.

Download: Woopsie v0.32 Source
Download: Woopsie v.032 Demo

Via Sourceforge

Add a Comment

Your email address will not be published. Required fields are marked *