Commit Graph

742 Commits

Author SHA1 Message Date
Martín Lucas Golini
d4cf1efc7f UIViewPager fixes.
Fixed structural pseudo-classes states in some specific scenario.
2020-02-28 23:58:00 -03:00
Martín Lucas Golini
cd34f7f4e4 Several fixes for UIViewPager.
Added min-width and max-width CSS properties (still needs testing).
Fixed CSS animations with multiple steps.
Fixed menu sub-menues not appearing.
2020-02-28 04:40:32 -03:00
Martín Lucas Golini
8c108c5ed9 Added UIViewPager.
Node::onChildCountChange reports the child that's being added or removed.
Added Ease::toString.
Added UIWidget::lengthFromValueAsDp.
2020-02-27 14:16:11 -03:00
Martín Lucas Golini
04c407077f Several improvements in the CSS Animations.
UITabWidget now acts as a draw invalidator, skipping the draw invalidation if the element invalidating is not visible in the current tab.
premake5 file now supports different architectures.
Updated README.md and docs.
Minor fixes in UIColorPicker.
Updated SOIL2 and efsw.
Added LICENSE file.
2020-02-25 01:15:27 -03:00
Martín Lucas Golini
f8c21880d1 Replaced StyleSheetPropertyTransition in favor of StyleSheetPropertyAnimation.
This class allows to animate CSS "animation" and "transition". Some CSS animations are working, pending fill-mode implementation, tests and surely many fixes.
Fixed a critical bug in windows resize introduced in the latest Input improvements.
2020-02-24 03:01:32 -03:00
Martín Lucas Golini
e2668d03dd Fixed delay in CSS transitions. 2020-02-22 21:43:38 -03:00
Martín Lucas Golini
e302310973 More work has been done to support the CSS animation property.
Now the "animation*" properties are parsed and converted into an AnimationDefinition.
Added a new obligatory method to Action, Action::getTotalTime, in order to have more precise information about the current execution point in time of the actions.
Added String::isNumber(std::string, bool).
Added Time::fromString and Time::isValid.
2020-02-22 03:43:26 -03:00
Martín Lucas Golini
eba9de768b Minor UIColorPicker fixes. 2020-02-20 19:19:29 -03:00
Martín Lucas Golini
73e9489f81 InputEvents improvements and some minor fixes and optimizations. 2020-02-19 02:07:03 -03:00
Martín Lucas Golini
48d0f06b2b Started implementation of CSS Animations, WIP. 2020-02-18 03:58:58 -03:00
Martín Lucas Golini
c2e0d867fd Added support for multiple background-image and foreground-image.
Added support for structural pseudo class :not().
2020-02-17 04:06:47 -03:00
Martín Lucas Golini
0c58db3652 Transitions fixes (still testing).
Added support for CSS structural pseudo classes (also still testing).
2020-02-15 21:29:52 -03:00
Martín Lucas Golini
022a04e5f3 Several UI related fixes ( wrong updates, bad rendering, a segfault, and more ). 2020-02-11 03:32:26 -03:00
Martín Lucas Golini
4320841ade Removed StyleSheetElement interface in favor of using UIWidget directly. Thanks to this all dynamic_casts has been removed at the cost of a little less readable code. 2020-02-10 03:19:07 -03:00
Martín Lucas Golini
1819aa3d64 Fixed text selection when any tab character was involved.
Also optimized the text selection.
2020-01-29 00:50:13 -03:00
Martín Lucas Golini
16e6e1f8d1 Improvements in emscripten build.
Added support in emscripten for Http:getAsync and Http::postAsync.
Fixes with modal dialogs.
Fixes in texture atlas editor.
Fixes in UIColorPicker.
Fix in UITextView text selection.
Improvements in WindowSDL2.
UICheckBox not uses setChecked and isChecked instead of setActive and isActive.
2020-01-20 05:15:18 -03:00
Martín Lucas Golini
9d32e29ffb Added TexturePacker console tool and updated to a new version of the Texture Atlas format.
More premake5 project refactor.
Fixed some Stysheet Properties types and fixed some StyleSheetProperty transitions.
2020-01-19 17:17:09 -03:00
Martín Lucas Golini
57c31ffcb4 Code clean up and some minor fixes.
premake5 is being reworked, might fail in some situations.
2020-01-18 19:40:27 -03:00
Martín Lucas Golini
0f61c3fa96 Minor changes in how the library is presented. 2020-01-15 18:29:23 -03:00
Martín Lucas Golini
7b6a3d2f66 Some minor fixes. 2020-01-14 05:13:43 -03:00
Martín Lucas Golini
317ed08625 Added new example: UI Hello World.
Added new markdown document with the UI Basics explanation.
Fixed some minor bugs in UIPushButton.
Added new Event: OnFontStyleChanged.

--HG--
branch : dev
2020-01-13 02:26:28 -03:00
Martín Lucas Golini
9c7837bc01 Added more padding to TrueType glyphs.
Updated dr_libs libraries.
URI now uses implicit constructors.
Improved documentation.

--HG--
branch : dev
2020-01-12 22:37:43 -03:00
Martín Lucas Golini
af29d3e7ef Added support for on screen keyboard on Windows.
--HG--
branch : dev
2020-01-12 14:56:40 -03:00
Martín Lucas Golini
f60d4c183e clang-formated all project source files.
Improved documentation.

--HG--
branch : dev
2020-01-10 04:39:46 -03:00
Martín Lucas Golini
bec45f8b4b Added doxyrest support.
Cleaned up several documentation related stuffs.

--HG--
branch : dev
2020-01-03 03:42:14 -03:00
Martín Lucas Golini
58f1c6cefc HTTP doc fix.
--HG--
branch : dev
2020-01-02 18:17:40 -03:00
Martín Lucas Golini
736fe4477b Added Time::toString().
Http request demo: improvements in progress report.

--HG--
branch : dev
2019-12-31 19:05:53 -03:00
Martín Lucas Golini
e61f7b393e Minor bug fix.
--HG--
branch : dev
2019-12-27 03:21:00 -03:00
Martín Lucas Golini
4365d834a3 Added Http::MultipartEntitiesBuilder. This class allows the user to create a multipart/form-data request.
Added multipart/form-data support for the http_request example.

--HG--
branch : dev
2019-12-22 18:57:46 -03:00
Martí­n Lucas Golini
2326007d6c Merge
--HG--
branch : dev
2019-12-20 22:07:30 -03:00
Martí­n Lucas Golini
0ec6fa6456 Added FTP explicit TLS support.
--HG--
branch : dev
2019-12-20 22:05:07 -03:00
Martín Lucas Golini
346bda45f2 Minor optimization.
--HG--
branch : dev
2019-12-17 02:28:00 -03:00
Martín Lucas Golini
7caa7e8b55 Fixed modal UIWindow.
--HG--
branch : dev
2019-12-17 02:18:58 -03:00
Martín Lucas Golini
94c05b95e7 Added @import support.
Fixes for @media support.
Improvements for @font-face.
Http::get, Http:post, Http::request, Http:getAsync, Http:postAsync, Http::requestAsync: changed parameter order, now timeout goes always after the uri parameter.

--HG--
branch : dev
2019-12-16 02:20:52 -03:00
Martín Lucas Golini
70978866ba Added CSS @font-face support.
Fixed a bug when unloading textures outside main thread.
Added Font::Event (events for load/unload font).

--HG--
branch : dev
2019-12-15 21:07:40 -03:00
Martín Lucas Golini
59f8e44cfb More enum refactor.
--HG--
branch : dev
2019-12-15 17:32:25 -03:00
Martín Lucas Golini
6b13111d19 General enums refactor. This will break the API for several things.
The idea is that this enums should never be used by code from now on, and
always use the XML+CSS features.

--HG--
branch : dev
2019-12-15 17:21:39 -03:00
Martín Lucas Golini
7361db7b41 Added root element to the UISceneNode, in order to support ":root" tag in CSS.
--HG--
branch : dev
2019-12-15 03:27:29 -03:00
Martín Lucas Golini
0705dad434 Added CSS media queries support (needs testing, basic support seems to be working).
--HG--
branch : dev
2019-12-15 00:32:31 -03:00
Martín Lucas Golini
9c9d3edddf Minor clean up.
--HG--
branch : dev
2019-12-13 01:31:02 -03:00
Martín Lucas Golini
3735bf8aa0 Added CSS custom properties (variables) support (https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties).
Added Node::getParentWidget().
clang-format'ed SceneNode and UISceneNode (no functional changes).

--HG--
branch : dev
2019-12-12 17:30:16 -03:00
Martín Lucas Golini
bdbae585c9 UITextInput hint support.
--HG--
branch : dev
2019-12-12 01:58:14 -03:00
Martín Lucas Golini
3a21f2e640 Added TriangleDrawable.
CSS vector properties now are separated by space instead of comma.
Added offset to ArcDrawable.
Added new background-image and foreground-image functions: rectangle(), triangle(), circle().
Added some new parameters for the UIEditor, also some minor fixes.

--HG--
branch : dev
2019-12-11 19:56:32 -03:00
Martín Lucas Golini
90f6f4bdc3 Removed UIThemeManager as a single instance manager, now each UISceneNode owns and
instances a UIThemeManager, this allows to use different settings for each UISceneNode
(useful for the UIEditor for example).
Fixed word-wrap CSS property.
Added UINode::getUISceneNode().
UIEditor now takes argument parameters.
Also some minor fixes for controls without a default theme.

--HG--
branch : dev
2019-12-09 17:30:55 -03:00
Martín Lucas Golini
4c4e329c8f UINode::setSkin now can be NULL.
Added tag to RadioButton::active, RadioButton::inactive, DropDownList::ListBox::item.

--HG--
branch : dev
2019-12-08 22:08:07 -03:00
Martín Lucas Golini
9ec6c065ab (back/fore)ground-position and (back/fore)ground-size support for transitions (still WIP).
--HG--
branch : dev-css-refactor
2019-12-02 02:44:49 -03:00
Martín Lucas Golini
4947afdc2c VS fixes.
--HG--
branch : dev-css-refactor
2019-11-30 22:22:23 -03:00
Martín Lucas Golini
1f92011748 More implementations of getPropertyString.
--HG--
branch : dev-css-refactor
2019-11-30 17:18:57 -03:00
Martín Lucas Golini
378eedb09f Implementing getPropertyString on widgets.
--HG--
branch : dev-css-refactor
2019-11-30 15:42:45 -03:00
Martín Lucas Golini
249cb21282 applyProperty clean up.
--HG--
branch : dev-css-refactor
2019-11-30 14:00:08 -03:00