1
0
Fork 0
mirror of https://github.com/Ellpeck/MLEM.git synced 2024-11-25 05:58:35 +01:00
Commit graph

642 commits

Author SHA1 Message Date
Ell
11dd939009 Added a multiline editing mode to TextField 2021-10-12 02:16:09 +02:00
Ell
8f5d3083b5 Allow specifying a maximum amount of characters for a TextField 2021-10-11 23:35:50 +02:00
Ell
f021215066 fixed VerticalSpace height parameter being an integer 2021-10-01 03:42:27 +02:00
Ell
41b924ef34 Fixed rounding errors causing AutoInline elements to be pushed into the next line with some ui scales 2021-09-24 16:35:53 +02:00
Ell
a140e85300 fixed Docs casing in readme path 2021-09-24 04:50:42 +02:00
Ell
a53939837f added package readmes 2021-09-24 04:47:39 +02:00
Ell
1bbb12a1fa clarified auto-size exception in elements 2021-09-09 17:02:29 +02:00
Ell
9890c4895c Fixed tooltips not displaying correctly with auto-hiding paragraphs 2021-09-09 16:53:12 +02:00
Ell
51833d523d Improved CopyExtensions construction speed 2021-08-05 03:59:14 +02:00
Ell
a9a7f2b421 Revert "(attempt to) reduce element sizing incompatibilities for auto-width/height elements"
This reverts commit 094de058c4.
2021-08-05 03:47:03 +02:00
Ell
094de058c4 (attempt to) reduce element sizing incompatibilities for auto-width/height elements 2021-08-05 03:40:47 +02:00
Ell
8fac4a0b69 Allow adding Link children to non-Paragraph elements 2021-07-24 07:36:42 +02:00
Ell
01bec459de disallow creating Paragraphs without fonts 2021-07-22 04:51:41 +02:00
Ell
bb9b322580 Fixed tooltips with custom text scale not snapping to the mouse correctly in their first displayed frame 2021-07-22 04:27:57 +02:00
Ell
527c4af3e4 updated dependencies 2021-07-20 00:55:36 +02:00
Ell
1067055bb5 code cleanup 2021-07-19 23:49:16 +02:00
Ell
abac738123 Removed LINQ Any and All usage in various methods to improve memory usage 2021-07-18 22:18:46 +02:00
Ell
6aa9ec03d4 Added customizable overloads for Keybind, Combination and GenericInput ToString methods 2021-07-13 15:41:42 +02:00
Ell
bb189261d7 Added a masking character to text fields 2021-07-08 18:17:39 +02:00
Ell
d1b229b589 moved sound classes into /Sound 2021-07-05 16:36:48 +02:00
Ell
642608a8a2 Fixed a crash if a paragraph has a link formatting code, but no font 2021-07-03 01:50:37 +02:00
Ell
19893855dc added the changelog to the website 2021-07-01 05:00:59 +02:00
Ell
fe9b3830f8 (finally) added a changelog 2021-06-28 15:38:30 +02:00
Ell
1377941f1a added TreatSizeAsMaximum to ui elements 2021-06-25 16:48:41 +02:00
Ell
14940d39c5 added text alignment options to tokenized strings and paragraphs 2021-06-25 15:23:30 +02:00
Ell
ef83124cfa allow changing the color of panels 2021-06-22 01:14:06 +02:00
Ell
ce920b5219 added an element helper method to create a keybind button 2021-06-21 00:49:09 +02:00
Ell
a5a73af01c improved Keybind constructors 2021-06-20 23:48:02 +02:00
Ell
cca02b5396 organized UiSystem constructor 2021-06-09 00:37:44 +02:00
Ell
a02334a34c turned some non-event events into events and added Disposing event to ui elements 2021-06-09 00:27:50 +02:00
Ell
2cc77f42cd added events for when a root element is added or removed from a ui 2021-06-08 21:36:42 +02:00
Ell
e0a9971bdb added DynamicEnum to MLEM.Data 2021-06-08 13:32:01 +02:00
Ell
20e2d098ef suppress finalize for manually disposed panels 2021-06-08 00:32:07 +02:00
Ell
0dad4860c1 dispose of the panel's render target 2021-06-08 00:29:51 +02:00
Ell
ed02a83879 fixed panels drawing children early within the render target 2021-06-07 23:14:50 +02:00
Ell
289e0e8597 added a simple way to change the action that is executed when a link is pressed inside a paragraph 2021-05-30 17:57:39 +02:00
Ell
d385581c25 added formatted string truncation to tokenized strings and ui paragraphs 2021-05-18 16:47:38 +02:00
Ell
f94d471365 explicitly disallow auto-sizing incompatibilities to make debugging easier 2021-04-27 21:17:06 +02:00
Ell
f60c3b288a also apply auto-sizing if the element has no children at all 2021-04-26 19:21:11 +02:00
Ell
2abc3264a2 simplify auto-size checks 2021-04-26 19:06:54 +02:00
Ell
7792ce99c8 fixed auto-sized elements without children not being updated correctly 2021-04-26 18:55:18 +02:00
Ell
b48ed479a0 streamlined TextInputWrapper into MlemPlatform and included link opening 2021-04-23 00:17:46 +02:00
Ell
1123b815b3 updated some package declarations to clean up warnings 2021-04-22 19:59:35 +02:00
Ell
338cf383f4 removed RequiresOnScreenKeyboard 2021-04-22 19:40:14 +02:00
Ell
cf9bcc7ae4 updated to MonoGame 8 and added support for opening the on-screen keyboard to TextInputWrapper 2021-04-22 19:26:07 +02:00
Ell
8078d41724 simplified GenericFont implementation 2021-04-19 14:02:28 +02:00
Ell
2055c3a6ef convert tests to use graphics 2021-04-02 17:12:27 +02:00
Ell
e7fd026a33 added some UI tests 2021-04-01 19:36:56 +02:00
Ell
82b8c0ab49 fixed a rare stack overflow where scroll bars could get stuck in an auto-hide loop 2021-03-29 08:28:49 +02:00
Ell
b1ff703fe1 reintroduced tolerance for element size equality 2021-03-29 06:56:06 +02:00
Ell
79ba6864e7 fixed stack overflow with nested auto-sized children 2021-03-29 06:41:38 +02:00
Ell
3e20aaf6c5 fixed auto-sized elements doing unnecessarily many area updates 2021-03-29 05:49:09 +02:00
Ell
e6243b831c remove unnecessary references to GraphicsDevice from UiSystem 2021-03-29 02:26:44 +02:00
Ell
28eafffa32 allow setting a custom viewport for ui systems 2021-03-29 02:15:17 +02:00
Ell
602f19a2a8 some minor code style and format improvements 2021-03-24 22:44:39 +01:00
Ell
5f7956a7a3 properly stop a panel's scroll bar from being removed 2021-03-24 22:01:02 +01:00
Ell
be9748e70e fully disallow access to internal children collections 2021-03-24 01:39:41 +01:00
Ell
dcee3c5010 added an option to limit auto-heights in elements 2021-03-24 01:25:39 +01:00
Ell
3d314172d0 avoid recursion in Element.ForceUpdateArea 2021-03-24 01:10:42 +01:00
Ell
3384f48623 fixed up android demo, updated some dependencies and added icons to templates 2021-03-14 01:03:17 +01:00
Ell
d73539e41e added a text scale multiplier to Paragraph 2021-02-28 14:43:07 +01:00
Ell
01b6168259 fixed the input handler querying input when the window is inactive 2021-02-18 18:36:29 +01:00
Ell
7619ac0dcf added an extension method for adding tooltip for elements 2021-02-18 04:16:17 +01:00
Ell
9146d7f2ba disallow removing the scroll bar from a panel 2021-02-07 18:30:56 +01:00
Ell
fc9b93b129 Fixed a NRE with tooltips 2021-01-20 06:41:52 +01:00
Ell
e783f4f769 added a Tooltip constructor that uses TextCallback for the paragraph 2021-01-11 00:09:29 +01:00
Ell
106102adf6 clean up unused using statements 2020-12-14 21:51:27 +01:00
Ell
b963941b5c added methods for adding/removing tooltips easily 2020-12-05 22:42:10 +01:00
Ell
56db897c00 allow tooltips to appear later 2020-12-05 16:42:21 +01:00
Ell
028e322d2f ensure opening links in uis works correctly on .net core 2020-11-25 18:41:53 +01:00
Ell
c4114c73f8 fixed tooltip distance from the mouse changing with scale 2020-11-17 21:05:48 +01:00
Ell
6c3e9116ff return the element added by Dropdown 2020-11-08 18:16:12 +01:00
Ell
fd9ad777c2 some fixes related to the branch name change 2020-11-07 00:58:43 +01:00
Ell
f6c4d83775 fixed panel element detection being incorrect if scrolling overflow is enabled 2020-11-05 01:16:01 +01:00
Ell
1a2fc814aa initialize the tooltip color to white 2020-10-31 17:55:46 +01:00
Ell
e7f2c8eca4 added a separate style property for tooltip text color 2020-10-31 17:42:39 +01:00
Ell
aaeda825e0 fixed some documentation issues 2020-10-06 20:14:57 +02:00
Ell
5bcfcaf3cb fixed Paragraph autoAdjustWidth parameter name 2020-09-30 22:49:09 +02:00
Ell
8b29903444 Replace ImageCode and TextField character ToString usage with ToCachedString for memory performace 2020-09-28 20:43:37 +02:00
Ell
aa064812fc removed obsolete CustomDrawGroup 2020-09-27 16:25:41 +02:00
Ell
333b4b033e Added a fail-safe for elements with conflicting auto-sizing settings so that they don't cause a cryptic stack overflow 2020-09-23 00:41:24 +02:00
Ell
eeedb0ae5c also don't display the tooltip if all o its children are hidden 2020-09-18 18:19:05 +02:00
Ell
fde243ed8b only display the tooltip if there is anything in it 2020-09-18 18:11:46 +02:00
Ell
7e89efec69 added text field input rules for file and path names 2020-09-13 18:05:55 +02:00
Ell
90d7aeb633 added a default text color to UiStyle 2020-09-13 18:00:19 +02:00
Ellpeck
e80eb17b22 fixed incorrect icon link 2020-07-29 14:41:46 +02:00
Ellpeck
00ce8bb229 fixed y offset not affecting elements with AutoInlineIgnoreOverflow anchor 2020-07-25 23:39:37 +02:00
Ellpeck
411d3c1cd9 allow for the transformation matrix to modify mouse positions 2020-07-20 14:18:26 +02:00
Ellpeck
abffa4db57 fixed an element transform issue and added a fancy button to the ui demo 2020-07-20 00:28:31 +02:00
Ellpeck
ec2416719e store all ui controls keybinds in an array 2020-07-16 16:04:18 +02:00
Ellpeck
02cd074a3c cleaned up changes from f1d686f0c0 2020-07-16 15:55:55 +02:00
Ellpeck
f1d686f0c0 move CustomDrawGroup behavior into Element, allowing any element to inherit it 2020-07-15 23:21:52 +02:00
Ellpeck
9d5e9d4ccf tidied up paragraph link code 2020-06-30 00:49:42 +02:00
Ellpeck
ca4c8731bc only throw an exception in TextInputWrapper if it is required 2020-06-24 16:54:23 +02:00
Ellpeck
096131ce15 Drop SoundEffectInstance (mis)usage in favor of new SoundEffectInfo 2020-06-22 13:59:33 +02:00
Ellpeck
7dc08afa5a made UiStyle's ActionSound a SoundEffectInstance to allow for volume/pitch changes 2020-06-22 13:23:02 +02:00
Ellpeck
64b9246aa5 clean up GenericFont changes 2020-06-20 12:12:34 +02:00
Ellpeck
90e0ff55d1 use a custom character for image codes rather than trying to calculate spaces 2020-06-20 01:18:27 +02:00
Ellpeck
deec553b22 code cleanup 2020-06-18 17:24:35 +02:00
Ellpeck
71dabe7360 use specific check instead of generic one for panel fix 2020-06-17 01:44:16 +02:00
Ellpeck
2d332c3a48 allow panel children to be ordered arbitrarily rather than requiring the scroll bar in the first index 2020-06-17 01:43:08 +02:00
Ellpeck
914761519f expose a property in ScrollBar determining if we're currently scrolling it 2020-06-16 22:51:31 +02:00
Ellpeck
0ad3b2a305 Downgrade TextCopy since the new version causes issues on some devices 2020-06-16 22:48:13 +02:00
Ellpeck
0ea22435c2 updated dependencies 2020-06-13 03:19:20 +02:00
Ellpeck
0a8a3c3660 removed some obsolete features 2020-06-12 17:19:19 +02:00
Ellpeck
251261f3d7 added a more generic keybind and input handling system 2020-06-12 17:09:35 +02:00
Ellpeck
601423407d added PreventParentSpill to Element 2020-06-12 02:04:01 +02:00
Ellpeck
f2c544dc65 modified link behavior for paragraphs to be easier to modify 2020-06-09 18:56:01 +02:00
Ellpeck
1d38262388 only use nbsp in image codes if the font supports it 2020-06-04 22:18:53 +02:00
Ellpeck
6b1e5f8dd9 better implementation of the touch mousing from yesterday 2020-06-04 20:52:21 +02:00
Ellpeck
81ed3d3bee Revert "made elements also show their mouse over graphic when they're being touched"
This reverts commit d7f43617
2020-06-03 17:01:58 +02:00
Ellpeck
f70b1266f9 Revert "only count an element as touched if no other gestures are active"
This reverts commit 08188a1a
2020-06-03 16:18:17 +02:00
Ellpeck
08188a1a8f only count an element as touched if no other gestures are active 2020-06-03 16:14:45 +02:00
Ellpeck
d7f43617c6 made elements also show their mouse over graphic when they're being touched 2020-06-03 15:58:08 +02:00
Ellpeck
79e0e1a63e added percentage sizing based on own data to element 2020-06-02 23:00:40 +02:00
Ellpeck
b0309c9707 added ScaleOrigin to RootElement 2020-06-02 16:15:41 +02:00
Ellpeck
95917e08d6 only mark element parent dirty when setting priority if it actually changed 2020-06-02 13:40:05 +02:00
Ellpeck
c7de0322b0 sanity check for panel render target size 2020-06-01 21:34:55 +02:00
Ellpeck
6c03ef2bd9 fixed hidden panels trying to update, causing a crash 2020-05-30 22:48:09 +02:00
Ellpeck
b270fe3977 made link clusters be selected properly 2020-05-27 15:19:17 +02:00
Ellpeck
f12284169e full xml documentation for MLEM.Ui 2020-05-22 17:02:24 +02:00
Ellpeck
08f66abe2f switch to using cake for builds 2020-05-21 22:50:38 +02:00
Ellpeck
89646b1c67 include documentation in nuget packages 2020-05-21 12:20:40 +02:00
Ellpeck
a2b939a2c8 change package project links to website 2020-05-21 02:22:55 +02:00
Ellpeck
b836b486a2 fixed style changes not forcing ui elements to update 2020-05-20 21:22:02 +02:00
Ellpeck
979dce510e modify link regex to allow for no destination to be specified 2020-05-20 01:02:18 +02:00
Ellpeck
af1918d545 added child addition and removal callbacks 2020-05-20 00:48:53 +02:00
Ellpeck
2461b78f1b made multi-line links be highlighted together 2020-05-19 21:52:29 +02:00
Ellpeck
5115bd8ca6 some element code cleanup 2020-05-17 00:59:15 +02:00
Ellpeck
85e63ac998 modify unnecessarily thorough SetAreaDirty when adding/removing children 2020-05-17 00:33:16 +02:00
Ellpeck
037ed43410 streamline ui text formatting and paragraph links 2020-05-17 00:10:29 +02:00
Ellpeck
fad06f28be modified link codes to use paragraphs' OnPressed 2020-05-16 01:56:00 +02:00
Ellpeck
7f0a8289e3 added link formatting codes! 2020-05-15 22:15:24 +02:00
Ellpeck
fcd898e16b finished the new formatting, finally! 2020-05-15 19:55:59 +02:00
Ellpeck
efed3d9e12 some controls helper methods 2020-05-04 16:41:54 +02:00
Ellpeck
f8642dfb9e update dependencies 2020-04-30 22:11:19 +02:00
Ellpeck
18c79bbf3a unify versions and update 2020-04-25 23:35:54 +02:00
Ellpeck
c16c2ef693 fixed android screen sizes being incorrect 2020-04-19 14:04:44 +02:00
Ellpeck
ff69aba67a update 2020-04-11 03:24:40 +02:00
Ellpeck
9c37f34947 update the readme and descriptions 2020-04-06 01:42:52 +02:00
Ellpeck
f797d1f49f update everything to push logos 2020-04-05 01:59:11 +02:00
Ellpeck
9a06d18128 Added a logo 2020-04-05 01:35:17 +02:00
Ellpeck
cc06b827ff use the new system in panel 2020-04-02 17:54:10 +02:00
Ellpeck
80f36c78bd a lot of font cleanup 2020-03-28 22:25:06 +01:00
Ellpeck
26264bf576 allow a lot of mem classes to have custom data added to them 2020-03-21 00:49:43 +01:00
Ellpeck
df418c2087 made the text field caret an actual caret finally 2020-03-19 03:27:21 +01:00
Ellpeck
cb56319924 added easy scale origin function to custom draw groups 2020-03-18 16:47:14 +01:00
Ellpeck
739d337d49 undo the width/height "fix" 2020-03-18 03:38:30 +01:00
Ellpeck
cd70b22ae5 made elements refer back to their controls for the selected element 2020-03-17 22:27:39 +01:00
Ellpeck
d07f470da3 good work me 2020-03-17 20:04:10 +01:00
Ellpeck
06ca5a8c04 allow changing an element's controls 2020-03-17 20:02:23 +01:00
Ellpeck
b175df7397 fixed a possible crash with empty uis 2020-03-17 19:29:52 +01:00
Ellpeck
054dc8c932 made button inputs more generic to allow for broader usage 2020-03-17 19:13:33 +01:00
Ellpeck
f4f7df0eb8 inflate view width and height for gamepad input to account for offscreen elements 2020-03-17 15:24:33 +01:00
Ellpeck
5e3fdbb8ef made controls independent of ui systems to allow for multiple controls for one ui 2020-03-17 15:04:36 +01:00
Ellpeck
ba973c1b72 made sliders only react to pressing 2020-03-16 19:44:32 +01:00
Ellpeck
ceaaaefb47 fixed the fix 2020-03-16 19:22:08 +01:00
Ellpeck
6c866cec74 Fixed dropdown menus not working with gamepads 2020-03-16 19:13:33 +01:00
Ellpeck
e96b155f99 fixed selected element looking bad with smooth scrolling 2020-03-16 15:44:53 +01:00
Ellpeck
9df1b05bee allow changing auto nav mode value 2020-03-16 15:33:25 +01:00
Ellpeck
76cb94bb34 added smooth scrolling 2020-03-07 22:09:11 +01:00
Ellpeck
612df004e6 made custom draw group only end and begin when it needs to 2020-03-02 10:31:03 +01:00
Ellpeck
c92e4e0fd1 fixed text field crash when pasting an empty clipboard 2020-03-02 09:40:07 +01:00
Ellpeck
ae0fc22de3 added text copying and pasting to mlem.ui 2020-02-27 17:51:44 +01:00
Ellpeck
0046811ca0 added project templates 2020-02-24 17:34:05 +01:00
Ellpeck
08c4281da1 added a new text input system 2020-02-24 14:03:53 +01:00
Ellpeck
f96e0ae625 use VersionPrefix to make VersionSuffix work 2020-02-21 15:13:07 +01:00
Ellpeck
d823064979 added HasValue() to styleprop 2020-02-06 17:36:51 +01:00
Ellpeck
31e2b72197 organize ui stuff a bit better 2020-02-06 01:59:33 +01:00
Ellpeck
b3331834e1 I did not want to push this here
This reverts commit ee511137
2020-02-06 01:51:41 +01:00
Ellpeck
ee5111372b part 1 2020-02-06 01:33:24 +01:00
Ellpeck
3f36093957 allow a paragraph to modify its rendered text for animations 2020-02-03 23:42:30 +01:00
Ellpeck
e37cfed757 added the ability to have mixed formatting 2020-02-03 15:38:27 +01:00
Ellpeck
556998239e Revert "formatting code redesign, part 1: Regex!"
This reverts commit b480026b
2020-02-03 04:37:14 +01:00
Ellpeck
b480026b7e formatting code redesign, part 1: Regex! 2020-02-03 03:04:13 +01:00
Ellpeck
69fdd784a7 Revert "made the default text input style be desktopgl"
This reverts commit aa64ebc0
2020-02-01 21:16:27 +01:00
Ellpeck
0904368151 Revert "changed text input style to work on all devices including web"
This reverts commit 053724e4
2020-02-01 21:16:10 +01:00
Ellpeck
aa64ebc0ef made the default text input style be desktopgl 2020-02-01 20:51:41 +01:00
Ellpeck
053724e4f8 changed text input style to work on all devices including web 2020-02-01 20:50:42 +01:00
Ellpeck
e635f23c1b remove these obsolete methods 2020-01-30 14:05:36 +01:00
Ellpeck
00b07e1c45 update 2020-01-23 01:25:50 +01:00
Ellpeck
7e6534bfc1 added the option to disable buttons 2020-01-15 17:05:28 +01:00
Ellpeck
2ac28eced3 made instances be unique for each element 2020-01-14 22:41:52 +01:00
Ellpeck
9aebce96e8 added the ability to add sounds to elements 2020-01-14 22:39:40 +01:00
Ellpeck
00e0ef8bc6 update 2020-01-01 13:00:33 +01:00
Ellpeck
43b665642d made tooltips be panels and remove the weird paragraph background thing 2019-12-31 14:08:13 +01:00
Ellpeck
da603c5f05 made custom draw groups be a bit easier to use 2019-12-29 19:28:56 +01:00
Ellpeck
bbdb424cbe made all groups update their areas manually since they don't draw it 2019-12-29 15:25:33 +01:00
Ellpeck
31d805fc04 fixed elements sometimes not notifying their auto-adjusting parents 2019-12-29 15:18:49 +01:00
Ellpeck
73f9653ddc made tooltips groups so that more stuff can be added to them easily 2019-12-28 14:23:40 +01:00
Ellpeck
b53588c32e redid that bugfix that I undid with that other bugfix 2019-12-28 12:59:14 +01:00
Ellpeck
f3372e93cb made format settings be non-struct-like 2019-12-26 19:34:42 +01:00
Ellpeck
3d0c3cd6d1 made format settings a bit better and also added drop shadow 2019-12-26 19:30:17 +01:00
Ellpeck
e0b83f6644 [breaking change] made the one em string be determined automatically for each font 2019-12-26 19:05:26 +01:00
Ellpeck
937b1757fe fixed stack overflow with auto-sizing elements 2019-12-26 12:49:04 +01:00
Ellpeck
4640a59054 made the scroll bar scroller only render when it actually makes sense 2019-12-26 12:35:47 +01:00
Ellpeck
969db1da1e made the info box disallow background selection 2019-12-25 19:16:07 +01:00
Ellpeck
f7810c8204 this was unintended 2019-12-25 12:19:55 +01:00
Ellpeck
ac8b09e74f improve ui root sorting 2019-12-25 12:15:55 +01:00
Ellpeck
a0f0859ba2 don't consider hidden elements for the active root 2019-12-25 00:28:08 +01:00
Ellpeck
d70e89aff6 fixed what I just did 2019-12-24 17:52:16 +01:00
Ellpeck
fff25c6c12 made panels without content not crash 2019-12-24 17:48:57 +01:00
Ellpeck
ca258fe41a made paragraphs and images use their callbacks when updating their area so that the first visible frame already has the right data 2019-12-19 14:04:50 +01:00
Ellpeck
c704aa6160 allow children to be reversed 2019-12-19 12:52:31 +01:00
Ellpeck
6faba05b24 made elements be able to set both width and height automatically 2019-12-19 12:50:50 +01:00
Ellpeck
8dcf3d8e63 made disabling scroll bar hiding easier for the panel 2019-12-14 14:10:38 +01:00
Ellpeck
dbe7980add made padding a lot more versatile in mlem.ui 2019-12-14 14:00:12 +01:00
Ellpeck
b8e73717f4 made panels update their draw area properly in drawearly 2019-12-12 22:56:49 +01:00
Ellpeck
1e62513e25 added a way to sort an element's children 2019-12-12 21:14:41 +01:00
Ellpeck
8d3afcf276 made CanSelectContent be set automatically by the root through adding more events 2019-12-08 21:49:15 +01:00
Ellpeck
7118e323b3 don't notify when moving to back or front 2019-12-07 18:41:58 +01:00
Ellpeck
31294f1873 added default color to button 2019-12-06 21:18:43 +01:00
Ellpeck
548e603900 made cameras snap right in small rooms and made panels not require a texture 2019-12-06 20:54:30 +01:00
Ellpeck
e75f87f4be update 2019-12-05 22:19:58 +01:00
Ellpeck
ff42233222 made input handler and ui system gamecomponents 2019-12-05 17:52:25 +01:00
Ellpeck
0c74dfc38e allow for ui element removal during its update 2019-12-05 14:59:53 +01:00
Ellpeck
bffcab3130 added onrootremoved and on rootadded events to ui system 2019-12-05 14:53:13 +01:00
Ellpeck
16c0424f65 don't type in hidden text fields 2019-12-04 01:32:00 +01:00
Ellpeck
f1702ee5b2 added a way to tell ui controls to ignore certain input types 2019-12-04 01:17:16 +01:00
Ellpeck
4888bb0fd7 made dropdowns only have high priority when opened and fixed panels sometimes ignoring priority 2019-11-18 22:36:55 +01:00
Ellpeck
89f957f8b6 set the area dirty when adding/removing ui elements 2019-11-18 02:20:09 +01:00
Ellpeck
47af6f992a update 2019-11-08 15:39:02 +01:00
Ellpeck
812b7c1f04 actually check left anchors for rightmost child instead of right anchors 2019-11-06 15:05:46 +01:00
Ellpeck
061f8279d7 get lowest elements towards the end of the list 2019-11-05 22:08:19 +01:00
Ellpeck
6340f75acc added SetWidthBasedOnChildren 2019-11-05 21:44:51 +01:00
Ellpeck
a5f6e83321 clean the element helper methods up a bit 2019-11-05 21:33:45 +01:00
Ellpeck
034aeec1e3 update 2019-11-05 13:52:17 +01:00
Ellpeck
aecf1a565e fixed setheightbasedonchildren causing stack overflow on uneven resolutions 2019-11-05 13:50:01 +01:00
Ellpeck
f1c9ba5517 fixed the panel updating its render target too often 2019-11-05 13:42:39 +01:00
Ellpeck
f28e234392 made style props a lot easier to use 2019-11-05 13:28:41 +01:00
Ellpeck
7f81f6469f fixed scroll bars still ceiling their values 2019-11-02 22:38:44 +01:00
Ellpeck
da04514d05 updeet 2019-11-02 15:06:58 +01:00
Ellpeck
32c8147a4c added a rectanglef class which allows mlem to use decimal coordinates 2019-11-02 14:53:59 +01:00
Ellpeck
cb7abbbbef fixed some panel issues 2019-11-02 14:21:42 +01:00
Ellpeck
3723c3ec97 updeet 2019-10-17 18:06:12 +02:00
Ellpeck
ee35509f23 made ui styling a lot more user friendly 2019-10-14 21:28:12 +02:00
Ellpeck
7392aa40fe update 2019-10-02 14:10:41 +02:00
Ellpeck
bc6ad3adef allow paragraph fonts to be changed 2019-09-26 22:28:48 +02:00
Ellpeck
36204e40cb turn some points into vectors for added precision 2019-09-26 22:16:21 +02:00
Ellpeck
84d5d3ab18 fixed elements' hover states being judged by their full areas 2019-09-26 19:36:15 +02:00
Ellpeck
401a89e295 fixed paragraphs not having their hidden property initialized at startup 2019-09-26 19:35:22 +02:00
Ellpeck
9e798f835c fixed position offset being ignored for inline components 2019-09-26 18:56:09 +02:00
Ellpeck
1ce08cce49 add a getter to the image component 2019-09-26 17:39:38 +02:00
Ellpeck
abef3cdf1a update 2019-09-25 16:49:03 +02:00
Ellpeck
78da85bbfc added some more element events 2019-09-25 16:47:27 +02:00
Ellpeck
ae4ced1cc1 added some more element events 2019-09-25 16:47:19 +02:00
Ellpeck
026b79b61e fixed progress bars overshooting their ninepatch areas 2019-09-25 16:39:17 +02:00
Ellpeck
b44ae420fc update 2019-09-24 20:25:40 +02:00
Ellpeck
d610899b7d update 2019-09-20 13:53:50 +02:00
Ellpeck
a048daefbf made panels only draw and update their visible children 2019-09-20 13:48:49 +02:00
Ellpeck
c5170917fb fixed custom draw groups not working outside of a render target 2019-09-20 13:22:05 +02:00
Ellpeck
0010b94b59 update 2019-09-17 19:32:31 +02:00
Ellpeck
76bba86b0c fixed a ui system crash when there is no active root 2019-09-17 19:30:54 +02:00
Ellpeck
b699333434 added a condition to removechildren 2019-09-17 14:06:10 +02:00
Ellpeck
e7c7a5bbc2 fixed tooltips removing themselves from a nonexistant system if an element gets removed 2019-09-15 02:21:42 +02:00
Ellpeck
b0aab6fe60 update 2019-09-15 02:17:23 +02:00
Ellpeck
07b6853e0c give access to all of the element callbacks in the ui system 2019-09-13 13:57:25 +02:00
Ellpeck
03923f91f6 some exception handling 2019-09-13 11:53:28 +02:00
Ellpeck
150d6f771a upgrade images a bit 2019-09-12 18:44:24 +02:00
Ellpeck
4d87068090 update 2019-09-12 12:42:33 +02:00
Ellpeck
8afe9962fb added a dropdown menu and also fixed some issues 2019-09-12 12:39:18 +02:00
Ellpeck
0ad17fc40c added a method to remove all children from an element 2019-09-12 11:52:47 +02:00
Ellpeck
3f66430d90 made image automatically set its area dirty when necessary 2019-09-11 21:01:08 +02:00
Ellpeck
db606143d1 made images unmouseable by default 2019-09-11 20:10:28 +02:00
Ellpeck
3796cc5ef0 made a bunch of stuff in UiControls virtual so that changing more complex aspects is easier 2019-09-11 18:44:05 +02:00
Ellpeck
b8bf5c28d9 make the elementhelper's last column use AutoInlineIgnoreOverflow to avoid imperfect rounding causing it to move down 2019-09-11 15:03:10 +02:00
Ellpeck
2084f927ae fixed the slider using the wrong left and right buttons 2019-09-11 12:30:29 +02:00
Ellpeck
88ce9de00a disallow progress bars from being selected 2019-09-11 10:51:57 +02:00
Ellpeck
e38d95c665 make next elements into delegates rather than a method 2019-09-11 10:49:51 +02:00
Ellpeck
39be76fbbf made more buttons configurable in the ui controls 2019-09-11 10:44:23 +02:00
Ellpeck
9e5f324652 added progress bars 2019-09-10 23:28:25 +02:00
Ellpeck
7e8da6d838 fixed gamepad indices not being taken into account for directions in ui 2019-09-10 12:40:22 +02:00
Ellpeck
dad70dcc28 update! 2019-09-10 11:44:26 +02:00
Ellpeck
70f926eb49 actually do this beforehand so that nothing crashes from having no system all of a sudden 2019-09-09 18:53:10 +02:00
Ellpeck
bb99a76f61 fixed old selections staying behind on re-added uis 2019-09-09 18:49:34 +02:00
Ellpeck
42a0ef172b optimize the active root 2019-09-09 17:18:44 +02:00
Ellpeck
672e5eb548 clean up navigation a lot 2019-09-09 17:12:36 +02:00
Ellpeck
c52c9825f0 added gamepad controls 2019-09-09 16:25:07 +02:00
Ellpeck
8397f47ec3 made the default selection indicator scale correctly 2019-09-08 23:55:56 +02:00
Ellpeck
b85afccaf5 fixed the panel passing a wrong matrix to its children 2019-09-08 21:32:48 +02:00
Ellpeck
c1c7b7a9b1 remove individual component additional scale in favor of custom draw groups 2019-09-08 16:45:15 +02:00
Ellpeck
20d7b95891 added CustomDrawGroup which allows for components to have their own draw call 2019-09-08 16:30:55 +02:00
Ellpeck
4a7fcd7570 Revert "added FormattedString class to make rendering formatted text a little easier"
This reverts commit 6d236fa5
2019-09-08 16:25:59 +02:00
Ellpeck
6d236fa52c added FormattedString class to make rendering formatted text a little easier 2019-09-06 18:06:53 +02:00
Ellpeck
b2b59aa78a added text animation 2019-09-06 15:49:59 +02:00
Ellpeck
a46e8fce86 moved formatting to MLEM proper 2019-09-06 12:20:53 +02:00
Ellpeck
af98526d47 update! 2019-09-05 21:37:18 +02:00
Ellpeck
35ee509eac added the ability to display images in paragraphs 2019-09-05 20:28:05 +02:00
Ellpeck
e39394bce3 finished better text editing my dudes 2019-09-05 18:15:51 +02:00
Ellpeck
12a2e92c09 better text editing, part 1 2019-09-05 12:51:40 +02:00
Ellpeck
b19333d627 ceil sizes to avoid one-pixel gaps between components on some scales 2019-09-05 11:46:07 +02:00
Ellpeck
fef1d7959d this actually does not work 2019-09-04 17:23:23 +02:00
Ellpeck
619db6bb94 remove offset from draw method and use a matrix instead 2019-09-04 17:19:31 +02:00
Ellpeck
9deb6bbce3 only update an element and its children if the area actually changed 2019-09-04 16:48:44 +02:00
Ellpeck
1ee7fafc23 change this to ceil so that elements don't just get cut off 2019-09-04 16:37:57 +02:00
Ellpeck
21dce9d60a fixed an issue where already removed uis would still be selectable 2019-09-04 15:36:47 +02:00
Ellpeck
898ab86f4c fixed the scroll bar reacting to a pressed mouse on enter 2019-09-02 21:11:05 +02:00
Ellpeck
0dff0e275d added the ability to transform the entire ui 2019-09-02 19:55:26 +02:00
Ellpeck
64eefedac0 publicize some useful ui methods 2019-09-02 18:41:05 +02:00
Ellpeck
3e7ddb8b1a add the ability for scroll bars to hide themselves when they're empty 2019-09-01 19:53:52 +02:00