Commit Graph

255 Commits

Author SHA1 Message Date
Martín Lucas Golini
651039b0e8 Redesigning UITextInput and all the derivatives to use TextDocument. 2020-06-15 01:44:29 -03:00
Martín Lucas Golini
d6861d117b Include <string> in the new class (MSVC is complaining). 2020-05-28 19:07:00 -03:00
Martín Lucas Golini
85aa2a3a32 Modernized the Input class, added support for scancodes (still need to test a little bit more).
Improved SyntaxColorScheme.
Some minor improvements here and there.
2020-05-28 06:00:49 -03:00
Martín Lucas Golini
2de37d3a45 More improvements to the UICodeEditor and TextDocument.
Improved the SyntaxHighligther.
2020-05-26 05:48:22 -03:00
Martín Lucas Golini
cd4684a148 Minor fixes.
Bumped SDL version for VC build.
2020-05-25 19:15:06 -03:00
Martín Lucas Golini
84c40649c8 Removed rx-cpp since it's problematic. Added System::LuaPatternMatcher in replacement. This should fix the Windows and macOS builds.
Fixed UISceneNode size, now it's set in pixels instead of dp to allow to always be the same size as the window.
Fixed styles and layouts not updating in time before calling draw.
Fixed a double delete crash when using UIDropDownList and UIWinMenu.
Now UI elements can be dragged even if the mouse cursor goes out of the window limits.
UIScrollBar slider now can be dragged also from the horizontal edges that are not part of the button slider (this allows to scroll from the edge for example in maximized windows).
Fixed TextDocument on emscripten.
Disabled fullscreen window minimizing on focus loss (SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS).
2020-05-25 05:18:38 -03:00
Martín Lucas Golini
472edd7e41 Added vertical scrollbar to the UICodeEditor.
Some minor fixes.
2020-05-24 06:14:54 -03:00
Martín Lucas Golini
2c05f3f579 Added CodeEditor project to be able to test comfortably the UICodeEditor and the TextDocument.
Renamed Window::setCaption to Window::setTitle.
Several fixes in TextDocument.
2020-05-24 04:14:52 -03:00
Martín Lucas Golini
94a2e4a0c3 Syntax Highlighting working.
Some minor refactor.
2020-05-23 23:41:06 -03:00
Martín Lucas Golini
c462e9e7c9 Some fixes and improvements to the TextDocument and UICodeEditor classes. 2020-05-21 20:41:41 -03:00
Martín Lucas Golini
1f91f612de More editor improvements. Also changed the editor name, now is UICodeEditor. 2020-05-21 02:31:34 -03:00
Martín Lucas Golini
18847a5974 More WIP on the code editor. 2020-05-20 19:37:21 -03:00
Martín Lucas Golini
098c882a8d Added UICodeEditor, currently is a WIP.
Improvements in TextDocument.
2020-05-20 05:59:46 -03:00
Martín Lucas Golini
67a5e25cf2 TextDocument WIP. 2020-05-18 04:01:25 -03:00
Martín Lucas Golini
909088b46d Layout improvements WIP. 2020-05-04 04:52:36 -03:00
Martín Lucas Golini
87e3d64b63 Added renamed Display::getPixelDensity() to Display::getPixelDensitySize() and now Display::getPixelDensity() returns the float value of the pixel density.
Moved the global test to tests/test_all.
Added a ui_perf_test used to test specific performance issues in the UI.
Fixed the element/widget inline style (now respects the specificity).
Some optimizations in UIListBox.
2020-05-03 03:39:31 -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
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
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
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
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
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
f60d4c183e clang-formated all project source files.
Improved documentation.

--HG--
branch : dev
2020-01-10 04:39:46 -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
a856357047 Fixed Action::removeEventListener.
--HG--
branch : dev
2019-12-12 03:13:06 -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
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
8d5ee2348e Fixed Window::setGLContextThread, now can only be acquired by one thread at once.
--HG--
branch : dev
2019-06-23 01:30:36 -03:00
Martín Lucas Golini
9db34b27fd Config.
--HG--
branch : dev
2019-06-19 23:46:32 -03:00
Martín Lucas Golini
11b3cfc1f4 Added Window::getScale() to get the device scale factor.
mingw32 build now uses premake5.

--HG--
branch : dev
2019-06-19 23:46:17 -03:00
Martín Lucas Golini
dd9d2021f2 Windows fixes and some changes in the premake projects.
--HG--
branch : dev
2019-06-19 03:15:47 -03:00
Martín Lucas Golini
c0d69b8446 More clean up.
--HG--
branch : dev-css
2019-01-03 01:57:45 -03:00
Martín Lucas Golini
280931e236 Stateful Drawable skeleton.
--HG--
branch : dev-stateful-drawable
2018-12-17 02:13:28 -03:00
Martín Lucas Golini
95a90eb4d4 Font line centering fix. Selection fixes.
--HG--
branch : dev-widget-padding
2018-12-10 17:49:32 -03:00
Martín Lucas Golini
b7908851b0 UIWidget padding support WIP.
--HG--
branch : dev-widget-padding
2018-12-09 04:59:50 -03:00
Martín Lucas Golini
787e68230c Minor clean up.
--HG--
branch : dev-functional
2018-11-26 10:39:35 -03:00
Martín Lucas Golini
1250eb967b Replacement of PlusCallback in favor of std::functional ( just for lambdas ).
--HG--
branch : dev-functional
2018-07-17 10:31:34 -03:00
Martín Lucas Golini
feeafde073 Updated Audio module.
--HG--
branch : dev
2018-03-17 18:50:24 -03:00
Martín Lucas Golini
2d96bb169c Added Image::svgScale.
Added TexturePacker option scalable svg.
Clean up.

--HG--
branch : dev
2018-03-17 03:16:00 -03:00
Martín Lucas Golini
c5de0fb1ff WIP basic UIEditor.
--HG--
branch : dev
2018-03-16 02:24:48 -03:00