Slab v0.7.0
This release adds new features such as the docking system and addresses some issues reported since the last release. Changes have been made to better ensure interoperability between Slab and other libraries such as Push. Below is a list of highlighted changes made since the last release. Some of the fixes have also come from the community and is much appreciated. For a more detailed list of changes, refer to the commit history.
Docks
Slab now offers the ability for windows to be docked to a specific side of the viewport. Docked windows can be resized based on their dock position and can be undocked when the window is dragged from their position. More information can be found on the wiki page.
Sliders
Numeric input controls now support drag and slider behavior. By default, numeric input controls allows the user to click and drag the control to alter the value. The slider input control will display the position of the value based on the min and max values specified. More information can be found on the wiki page.
Tree Table Ids
Trees have been modified so that tables can be used as Ids and not just strings. These tables will be kept as weak references internally and when garbage collected, will free up the cached entry. This will help to keep the number of cached entries to a minimum internally for systems that potentially use a large number of entries such as entities in a game engine. For now, this system is only used for trees but if no issues come up with these changes, could be extended to other Slab controls in future updates. More information can be found on the wiki page.
Shaders
Slab now offers support for applying shader effects to controls through a stack managed internally. Slab doesn't manage any shaders internally and should be handled by the user.
Changes
- [Filesystem] Converted IsDirectory and Exists function to use FFI and native platform calls.
- [FileDialog] Double-clicking on file item entries to shortcut selection.
- [FileDialog] Hide file items in directory selection window (@Rinkaa).
- [API] Fixed issue with Slab working with the Push library (#20).
- [Text] Support URL links.
- [SlabTest] Remove redundant text (#29) (@idbrii).
- [ColorPicker] Set initial position.
- [Separator] Option to change the line thickness.
- [Window] Fixes and improvements (#31) (#33) (@sdleffler).
- [SlabDebug] Style fixes (@giovifav).