Commit Graph
384 Commits
Author SHA1 Message Date
Martín Lucas Golini c893e05cde Several fixes. 2020-04-26 04:56:50 -03:00
Martín Lucas Golini f9053c0d61 Several fixes. 2020-04-25 00:31:02 -03:00
Martín Lucas Golini a8b38a371a ElementDefinition cache WIP. 2020-04-23 02:06:20 -03:00
Martín Lucas Golini 5f1d776750 CSS optimizations WIP. 2020-04-22 01:42:44 -03:00
Martín Lucas Golini fa20d393cd Several performance improvements.
Added events: Node::onIdChange, UIWidget::onClassChange, UIWidget::onTagChange.
UIItemContainer is now a widget (required for CSS).
Fixes in UIListBox and UITable.
CSS::StyleSheetStyle is now stored as a shared pointer.
Fixes in UICheckBox, UIRadioButton, UISlider, UIScrollBar, UITab, UIWinMenu, and more.
Better debug tooltips (now shows padding and margin).
Fix in UISceneNode::loadLayoutNodes, ensures that the current SceneNode is the one that it's loading.
2020-04-16 05:31:43 -03:00
Martín Lucas Golini e48b77ddfc Several fixes to allow Widgets to work without skins and enable pure CSS themes.
Added String::contains.
Improved Vector2.
Improved Text::findCharacterFromPos.
Improved set minimum widget size.
Improved var() parsing.
2020-04-09 05:20:55 -03:00
Martín Lucas Golini 887d2f331d Improved access to the inner widgets from CSS.
Minor fix in docs Makefile.
Minor fix in keyboard shortcuts.
2020-04-06 03:07:56 -03:00
Martín Lucas Golini ffc8fd3953 More code clean up and continued with the CSS Specification documentation. 2020-04-05 04:22:34 -03:00
Martín Lucas Golini 9a43551b6b More CSS specification clean up and improvements.
UIPushButton refactorization.
Fixed crash on tooltip close.
And several minor changes to adapt the CSS specification changes into the widgets.
2020-04-04 02:43:19 -03:00
Martín Lucas Golini a3afe7a8e2 Added em and rem units support.
Fixed a bug in tooltips.
2020-03-25 03:19:56 -03:00
Martín Lucas Golini f9ab6d0137 Added DrawableImageParser, this class parses the background-image and foreground-image functions and allow to register more functions. 2020-03-16 02:11:08 -03:00
Martín Lucas Golini 3921f81ced Added border-radius support.
Added alias support for shorthands.
Added BorderType::Outline.
Added support for background/foreground masks.
Fixes to the border rendering.
Several fixes and clean up.
2020-03-13 05:10:53 -03:00
Martín Lucas Golini 359685cb6f Added UIBackgroundDrawable. WIP CSS Borders. 2020-03-10 03:57:49 -03:00
Martín Lucas Golini 312f02105f CSS Borders WIP (not working yet). 2020-03-09 15:12:43 -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 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 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 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 9880829fc5 Migrated to Github (remove hg stuffs, added git submodules).
Fixed compilation (SoundFileReaderFlac needed some updateds).
Updated README.md.
2020-01-13 04:19:37 -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 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 35d0d9b1d9 README changes.
--HG--
branch : dev
2020-01-02 18:13:17 -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 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 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 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 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 a856357047 Fixed Action::removeEventListener.
--HG--
branch : dev
2019-12-12 03:13:06 -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 9ba1caba65 More WIP.
--HG--
branch : dev-css-refactor
2019-11-29 18:09:44 -03:00
Martín Lucas Golini f20f4beba4 More progress.
--HG--
branch : dev-css-refactor
2019-11-28 21:32:56 -03:00
Martín Lucas Golini ad08beb76f Experimental refactor in progress.
--HG--
branch : dev-css-refactor
2019-11-28 01:22:15 -03:00
Martín Lucas Golini f7119463f1 Some minor refactor for the CSS transitions. Starting new transition system.
--HG--
branch : dev
2019-11-27 01:39:33 -03:00
Martín Lucas Golini 36fae19cdb Replaced some mDpSize for getSize().
Implementing CSS::StyleSheetLength.

--HG--
branch : dev
2019-11-22 16:18:57 -03:00
Martín Lucas Golini 45cf7f4f73 UINodeDrawable replacing UISkinState for UINode background and foreground.
WIP new properties support.
Added "text-align" property to UITextView.
Fixed a bug in StyleSheetSelectorRule.

--HG--
branch : dev
2019-11-13 17:40:38 -03:00
Martín Lucas Golini 87c80a0872 Fixed UISlider (again).
UIImage now can own Drawables.
UIColorPicker improvements.
Removed UISliderButton (not used anymore).

--HG--
branch : dev
2019-11-11 00:51:24 -03:00
Martín Lucas Golini 58eda1da03 Color Picker WIP.
--HG--
branch : dev
2019-11-10 04:14:33 -03:00
Martín Lucas Golini da74085a06 Fixed Color::toHsv(), Color::fromHsv(), Color::toHsl().
Added to Colors::fromString(): rgb(), rgba(), hsl(), hsla(), hsv(), hsva().

--HG--
branch : dev
2019-11-09 21:51:09 -03:00
Martín Lucas Golini c1d586eaf9 Reworking input implementation (might have some bugs).
Minor bug fixes.

--HG--
branch : dev
2019-11-07 17:34:44 -03:00
Martín Lucas Golini bb30c62fab Removed support for SFML2 module (mantaining this backend does not make any sense at this point).
Removed custom Platform implementations for windows and cursor control (control is taken by the SDL2 backend).
And some clean up.

--HG--
branch : dev
2019-10-06 02:49:41 -03:00
Martín Lucas Golini 82116c4323 Minor clean up.
--HG--
branch : dev
2019-09-30 18:40:23 -03:00
Martín Lucas Golini 9aa7b4b7d0 Renamed TextureSaver to ScopedTexture.
Added System::ThreadPool.
Refactored ResourceLoader.
Removed OjbectLoader and all object type loaders.
Some minor refactors.

--HG--
branch : dev
2019-09-08 02:26:33 -03:00
Martín Lucas Golini e3873780ad Added Actions::Runnable.
UINode::setSkinColor invalidates draw.
Added Node::runOnMainThread.

--HG--
branch : dev
2019-06-24 22:03:36 -03:00