Skip to content

Releases: adamajammary/libsdl2gui

SDL2 GUI Library v1.3.0

14 Sep 11:11
eb97d2b
Compare
Choose a tag to compare

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

25 Mar 12:43
Compare
Choose a tag to compare

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

  • Table row index offset is wrong #48
  • SDL2 version mismatch error in Android project #44
  • UNICODE (16-bit UCS-2) conversion #47
  • Set default colors when adding sub-menu item #46

SDL2 GUI Library v1.2.0

30 Nov 04:03
Compare
Choose a tag to compare

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

16 Sep 15:05
2be8d4d
Compare
Choose a tag to compare

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

08 Jul 16:08
Compare
Choose a tag to compare

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