v0.93.00 (STABLE)
🗒️ Changes for v0.93.00
🚀 Features
- Basic Image Cnavas class (G6Cn0cvkzw)
- Scrollbar (fdQs93QAF5)
- Slider (iIr2HwnxA6)
- Basic Text field class (t03NeklIUd)
- Added Dropdown (LLN7EnW1Gc)
- Menu Item Widget (5fYhcWjw0A)
- Menu Widget (73Ru4Y8TxC)
⏫ Functional Improvements
- Allow Framerate limitation (WkRi5p38ak)
- Ability to disable caching in ssGUIManager (eL2ABlE60Y)
- Modify AdvanceSize and AdvancePosition to allow mixture of percentage and pixel (jjeJh9C3ts)
- Added options for end padding for slider (Yp429f7kZT)
- Add Mouse scrolling to backend (x3nQ0DgNKT)
- Line support on shape extension (0tXRE9GnsF)
- SegmentedVector data structure (9mC5VQ9S0w)
- Text Selection (qy6FBCj4we)
- Clipboard backend support (w2MzYz1dqk)
- Fix text tab spacing where the positions are consistent instead of just adding fixed amount of spaces (viatH2V8x2)
- Get Character index by position (OWz1WR23QZ)
- Text underline support (uH2Zrgf2CW)
- Icon mode for standard button (vUyu1H9lHg)
- Added Image colour tinting (kzvU2ZLH0Q)
- A way to process input from a GUI Object perspective (ihGgLxu7E6)
- Added late update to GUIManager (fwY5p8ywJJ)
- Setting HeapAllocation flag on GUI Objects when created by factory (qt1w7eqx0u)
- Added focus logic and Focused and FocusLost eventCallback (bS611lFLeA)
- MainWindow & backend supporting borderless / fullscreen (Ieeo049MWv)
🧪 Refactoring / Optimizations
- Apply floating tag to other composite GUI Objects &
Set compositeChild flag (xRUj3t16v6) - Flag to show if the child is part of composite object or not (rk1xrbe2CH)
- Migrate to use ssLogger (wP277k7maG)
- Change static initialization for default variables to not use static lambda (Yejs6XvGI3)
- Refactor CmakeList (w3m6W4C6vu)
- Reverting changes from default variables in header files to initializer list (V7Fw6ISgqC)
- Check composite GUI objects if the UserCreated flag is properly set (3JfQeB14qD)
- Check all the event callback triggers are affected by IsVisible/IsEnable or not (8T857dsc7D)
- Clean up ssGUIManager (P7afv9pps7)
- Rename isVisible to isEnabled (2n6Pro1f1j)
- Refactoring setting and getting custom cursor in backend input (JPlQ67Tj53)
- Advanced Size caching (5NdHDS1XT0)
- Add GUI prefix/suffix to ssGUIManager methods (zdAd54i2mU)
- Convert input blocking from boolean to responsible object (mzYzrJC8Q3)
- Change Rounded Corners from int to float (nn4y57ebT7)
- Change Text and related objects' fields from int to float (Y51JY26ONX)
- Layout & border & roundedCorners & etc.. use float instead of int (WwBxA12K31)
- Moving GUI Object Update to common method (7bMq3vyaW6)
- Restructuring GUIObject Data (uXD7o84XoE)
- Refactor inputs for allowing all inputs to be captured in low framerates with realtime input (48T2xnG3EM)
🐞 Bug fixes
- Dockable sometimes does not dock because it is dependent on the update order of GUI Objects (bV99Pj2tep)
- Dockable is setting the parent when the window is being dragged.
This causes MaskEnforcer to be removed by Mask. (cr763a86Wv) - Rounded Corners are not working properly with Mask (81Gca5PeeG)
- Weird Crash for DockingTest (G7Qt6T8RIA)
- Rounded Corners is receiving anti-clockwise vertices from slider (It8v2F6jZW)
- Focus is not properly set to false when other child is focused (5PFnUU1DlV)
- Mask bug when non axis-aligned shapes are touching the mask edges (ESWh21J3dn)
- Mask bug when non axis-aligned shapes are moving (667P3eTrCf)
- Setting Text color, font size and underline are no longer valid methods (pA7lWiN7QS)
- Fixed Extensions misses event listener index for cloned object (5k4E28uHiu)
- Fixed Some extensions don't account for anchorType when getting position (Gt2VTb5Q1O)
- Fixed SetFocus(true) is not properly setting children focus to false (wwlZ2hjN8z)
- Fixed SetVisible to false not properly redrawing GUI Object (6z15XsXsC1)
- Fixed mainWindow not drawing when regain focus after lost focus (p2v31L7ZTo)