Releases: adamajammary/libsdl2gui
Releases · adamajammary/libsdl2gui
SDL2 GUI Library v1.3.0
libsdl2gui
A free cross-platform user interface library using SDL2
Copyright (C) 2021 Adam A. Jammary (Jammary Studio)
libsdl2gui is a free cross-platform user interface library using SDL2.
3rd Party Libraries
Library | Version | License |
---|---|---|
SDL2 | 2.30.7 | zlib license |
SDL2_image | 2.8.2 | zlib license |
SDL2_ttf | 2.22.0 | zlib license |
libXML2 | 2.12.9 | MIT License |
Changelog
Updated
- 3rd party libraries
- Readme doc
- CMake build
New
- add(menu-item): support displaying keyboard shortcut (#90)
- add(menu-item): method to set icon (#89)
- add(events): send notification after enter/return is pressed in text input (#79)
- add(table/list): methods to return the row/item count (#78)
- add(events): send notification when text input is cleared (#75)
- add: text input (#73)
- add: support for panels within a scrollable panel (#69)
- add: LSG_ScrollToTop (#68)
- add: scrollable menu (#67)
- add: scrollable panel (#66)
- add(events): send notification while mouse button is pressed down (#65)
- add: get/set title for menu and modal (#60)
- add: progress bar (#57)
- add: public API endpoint LSG_IsMenuItemSelected (#54)
- add: support for modal dialogs (#39)
- add: support for multi-select on list/table (#32)
- add: public API endpoints LSG_GetMargin, LSG_GetPadding, LSG_GetSpacing and LSG_IsEnabled (#5)
Improved
- improve: select default font available on popular linux dists (ubuntu, raspberry pi os) (#94)
- improve(test): cast data2 before deleting it (#92)
- improve(menu): support custom width (#91)
- improve(menu): don't highlight or change cursor when items are disabled or not visible (#88)
- improve(table): add support to adjust column width (#87)
- improve(table): add spacing to the beginning and end of a row (#86)
- improve(table/list): don't re-sort when updating one row/item (#85)
- improve(table): support showing column border (#84)
- improve(table): render header columns with bold font (#83)
- improve(modal): change cursor when hovering close icon (#81)
- improve(table/list): select first row/item after sorting (#77)
- improve(table/list): reset pagination when settings rows/items (#76)
- improve: scrollable panel (#70)
- improve(list/table): optimize adding/setting many items/rows (#62)
- improve(list/table): only show pagination if more rows than one page (#61)
- improve: add SDL_Keycode data to LSG_EVENT_COMPONENT_KEY_ENTERED notification (#58)
- improve: send user event data as copies (not by reference) (#53)
Fixed
- fix: ui scaling on mobile (android/ios) (#93)
- fix(text-input): move cursor left after deleting/removing highlighted text right-to-left (#82)
- fix(text-input): make sure destroyed textures are not accessed by mistake (#80)
- fix: LSG_SetBorder does not apply change in xml (#74)
- fix: scroll methods have no effect before textures are created and showscroll props are set (#71)
- fix(list/table): row selection notification is not sent when navigating pages (#64)
- fix(list/table): don't send LSG_EVENT_ROW_ACTIVATED when double-clicking pagination (#63)
- fix: set visibility of all child components (#59)
- fix: dynamically adding menu items consumes click event even when menu is closed (#56)
- fix(xml): allow setting window attribs min-width and min-height independently (currently both are required) (#52)
- fix: libxml init in multi-threaded environment (#50)
SDL2 GUI Library v1.2.1
libsdl2gui
A free cross-platform user interface library using SDL2
Copyright (C) 2021 Adam A. Jammary (Jammary Studio)
libsdl2gui is a free cross-platform user interface library using SDL2.
3rd Party Libraries
Library | Version | License |
---|---|---|
SDL2 | 2.30.1 | zlib license |
SDL2_image | 2.8.2 | zlib license |
SDL2_ttf | 2.22.0 | zlib license |
libXML2 | 2.12.5 | MIT License |
Changelog
Updated
- 3rd party libraries
- Readme doc
- CMake build
Improved
- DPI scaling
Fixed
SDL2 GUI Library v1.2.0
libsdl2gui
A free cross-platform user interface library using SDL2
Copyright (C) 2021 Adam A. Jammary (Jammary Studio)
libsdl2gui is a free cross-platform user interface library using SDL2.
3rd Party Libraries
Library | Version | License |
---|---|---|
SDL2 | 2.28.5 | zlib license |
SDL2_image | 2.6.3 | zlib license |
SDL2_ttf | 2.20.2 | zlib license |
libXML2 | 2.11.5 | MIT License |
Changelog
- Updated
- README doc with more details on cross-platform builds and screenshots
- Fixed
- Images were always loaded in landscape mode
- Unicode font/text support on Android
- Disabled hover/highlight logic on devices without mouse input
- Crashes when selecting a table row by offset and the table is empty
- Improved
- Support for both touch and mouse inputs
- UI sliders on mobile platforms (Android/iOS)
- DPI scaling for UI on mobile devices (small screens with high resolution)
- Added
- Horizontal/vertical line component
- Long-press (right-click/context) event for mobile
- Double-tap event for mobile
- Unit tests
- Mobile-friendly (hamburger) menu
- Public API endpoint to check if system prefers dark mode
SDL2 GUI Library v1.1.0
libsdl2gui
A free cross-platform user interface library using SDL2
Copyright (C) 2021 Adam A. Jammary (Jammary Studio)
libsdl2gui is a free cross-platform user interface library using SDL2.
3rd Party Libraries
Library | Version | License |
---|---|---|
SDL2 | 2.28.2 | zlib license |
SDL2_image | 2.6.3 | zlib license |
SDL2_ttf | 2.20.2 | zlib license |
libXML2 | 2.11.5 | MIT License |
Changelog
- Updated
- README doc with more details on cross-platform builds
- Fixed
- Conflicting typedef names
- LSG_GetTableRow does not include header
- Scroll by offset after changing page
- Reset page navigation when setting list/table content
- Make sure menu is properly closed when selecting an item
- Scroll direction is opposite on macOS
- Improved
- Menu selection/toggling
- Dynamic font size handling
- Menu labels
- Make sure menu is rendered last (above all other UI)
- SetPage only calls list component, needs to be separate calls to list and table.
- Pagination label
- Increase max rows per page
- Disable child components when disabling a parent
- Component highlight on hover
- Sub-menu navigation
- Support for cross-platform build
- Added
- Public API endpoints for getting component position and size
- Public API endpoints for showing row borders and getting multiple files/folders
- Public API endpoints LSG_GetText, LSG_SetMenuItemValue, LSG_SetSliderValue and LSG_SetVisible
- Event triggers for click, double-click and right-click on panels
- Public API endpoint for getting slider value
- Public API endpoints LSG_RemoveMenuItem and LSG_SaveFile
- Public API endpoints LSG_GetSelectedRow and LSG_SelectRow
- Public API endpoints LSG_GetSortColumn, LSG_GetSortOrder, LSG_GetScrollHorizontal, LSG_GetScrollVertical, LSG_IsVisible, LSG_ScrollHorizontal and LSG:ScrollVertical
- Pagination for lists and tables
- Public API endpoints LSG_GetColorTheme, LSG_GetPage and LSG_SetPage
- Public API endpoint to scroll to the bottom
- Public API endpoint to get the last page
- Public API endpoint to select a row by offset
- Event notifications for component scrolling and keyboard interaction
- Public API endpoint LSG_GetBackgroundColor
- Public API endpoint to select a button
SDL2 GUI Library v1.0.0
libsdl2gui
A free cross-platform user interface library using SDL2
Copyright (C) 2021 Adam A. Jammary (Jammary Studio)
libsdl2gui is a free cross-platform user interface library using SDL2.
3rd Party Libraries
Library | Version | License |
---|---|---|
SDL2 | 2.28.1 | zlib license |
SDL2_image | 2.6.3 | zlib license |
SDL2_ttf | 2.20.2 | zlib license |
libXML2 | 2.11.4 | MIT License |