1
0
Fork 0
mirror of https://github.com/Ellpeck/MLEM.git synced 2024-06-09 08:11:34 +02:00
Commit graph

628 commits

Author SHA1 Message Date
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
Ellpeck f65cd58a80 made the text field remove mismatching characters on mobile input 2019-09-01 19:50:17 +02:00
Ellpeck 334dea8b39 make the mess I made a bit nicer :^) 2019-09-01 19:33:33 +02:00
Ellpeck 5a4d90043e update 2019-09-01 18:40:21 +02:00
Ellpeck cfcd54dbe0 made text input not test the release build of android :V reflection is a pain 2019-09-01 18:34:19 +02:00
Ellpeck 6c253744a6 update 2019-08-31 22:45:10 +02:00
Ellpeck 633c5b0097 added touch compatibility to the scroll bar, which makes touch input finished! 2019-08-31 19:32:22 +02:00
Ellpeck 3464fff6e5 added the ability to easily change how a selected element is drawn 2019-08-31 18:07:43 +02:00
Ellpeck 3862f78c9b made text fields work on mobile too 2019-08-30 19:05:27 +02:00
Ellpeck 353afdef6f started working on touch support for MLEM.Ui 2019-08-30 18:15:50 +02:00
Ellpeck 7eeecc19d1 remove some stuff from MlemGame so that you don't crash :^)
also make the uisystem know if it doesn't support text input natively
2019-08-29 18:46:48 +02:00
Ellpeck 90d292cd37 tabbing, part 2 2019-08-28 18:58:05 +02:00
Ellpeck 5c741a98e9 tabbing, part 1! 2019-08-28 18:27:17 +02:00
Ellpeck cc20682d47 more easily allow controls to be changed 2019-08-28 16:38:58 +02:00
Ellpeck ed7865379d added image button 2019-08-27 21:44:02 +02:00
Ellpeck abd58f3869 made the description for ui more ~spicy~ 2019-08-25 22:09:39 +02:00
Ellpeck 38d72d981a removed null propagation here because I never really use it anywhere else and it's ugly 2019-08-25 21:58:01 +02:00
Ellpeck 765acc3f62 replace onclicked with much easier to make compatible onpressed 2019-08-25 21:49:27 +02:00
Ellpeck 226640ef3a simplify text rendering quite a bit after realizing that monogame deals with multiple lines on its own 2019-08-25 19:07:45 +02:00
Ellpeck 6766d769f4 made scrolling a lot less intensive 2019-08-24 22:27:47 +02:00
Ellpeck cc66c453c5 more easily allow tooltips to show when hovering elements 2019-08-24 20:45:40 +02:00
Ellpeck 13c7aa90e2 why was this here 2019-08-24 20:33:55 +02:00
Ellpeck 287885b96d fixed panels overflowing incorrectly in some dimensions 2019-08-24 19:21:06 +02:00
Ellpeck 8758ae88b9 update! 2019-08-24 15:22:29 +02:00
Ellpeck 00842d9e5f inline anchors should use the old system though 2019-08-24 15:20:00 +02:00
Ellpeck df59ae7260 make sure to always pick the closest older sibling 2019-08-24 15:14:16 +02:00
Ellpeck d231386f86 made auto-anchored elements look for the lowest older sibling 2019-08-24 15:12:11 +02:00
Ellpeck 21c17066fc added column helper and fixed some more bugs 2019-08-24 15:00:08 +02:00
Ellpeck d69033a315 fixed some bugs and added column helper 2019-08-24 14:34:08 +02:00
Ellpeck 2698153491 fixed elementhelper crash 2019-08-24 12:56:58 +02:00
Ellpeck cb5594bada added ElementHelper and did some textfield changes 2019-08-24 12:40:20 +02:00
Ellpeck e1baacdb0d added text formatting 2019-08-24 00:07:54 +02:00
Ellpeck b6d3496987 added the ability to move roots to front or back 2019-08-23 22:23:10 +02:00
Ellpeck c9f4b1248d update~ 2019-08-23 19:50:44 +02:00
Ellpeck dfe31e6726 added the option to auto-scale both the camera and ui systems 2019-08-23 19:46:36 +02:00
Ellpeck 3132074a39 added the option to add a placeholder to the text field 2019-08-23 18:56:39 +02:00
Ellpeck 74988921b1 added line space to paragraph 2019-08-23 00:12:26 +02:00
Ellpeck 053f865a00 made the scroll bar be grabbed in the center 2019-08-22 23:44:26 +02:00
Ellpeck cbb265a5d5 use the right area for the panel's hover check 2019-08-21 22:50:13 +02:00
Ellpeck 04b9c9e97c added naming and priorities to animations 2019-08-21 20:25:32 +02:00
Ellpeck 79a4c36029 added getParentTree to ui 2019-08-21 17:00:22 +02:00
Ellpeck 05f148514f small element fixes 2019-08-20 23:04:21 +02:00
Ellpeck fac7f2beb0 propagate mouse events to children by default, except for panels that handle overflow 2019-08-20 21:41:22 +02:00
Ellpeck 72b473dc1d added possible element wobble 2019-08-20 21:35:53 +02:00
Ellpeck 407f214f29 update this cause I need it my dudes 2019-08-18 18:35:31 +02:00
Ellpeck ef677ae441 added some useful querying functions 2019-08-18 18:32:34 +02:00
Ellpeck 91959d6c6e update 2019-08-18 18:00:36 +02:00
Ellpeck edf073dacb added rules for text input 2019-08-18 17:59:14 +02:00
Ellpeck 15b468bab4 add the ability for elements to override the position that children will be auto-anchored to 2019-08-18 17:49:52 +02:00
Ellpeck 4e1c6d8128 added sliders (horizontal scroll bars) 2019-08-16 19:08:36 +02:00
Ellpeck 7cf031478d update again :^) 2019-08-15 16:31:31 +02:00
Ellpeck b42ec52017 finally center it 2019-08-15 16:29:41 +02:00
Ellpeck 481074bcc3 update! 2019-08-15 15:03:11 +02:00
Ellpeck 5d8e010bad made tooltips not go off screen and fixed the ui system breaking clearing 2019-08-15 14:59:15 +02:00
Ellpeck 8d648cd5dc make groups not ignore mouse by default :V 2019-08-15 13:26:40 +02:00
Ellpeck 6ede030138 make image texture not read only 2019-08-14 22:06:06 +02:00
Ellpeck e150c0eb0d updeet 2019-08-14 19:08:37 +02:00
Ellpeck 5d2f77e95c added a tooltip 2019-08-13 23:54:29 +02:00
Ellpeck c114d775d4 added checkboxes and radio buttons and did some changes to the demo 2019-08-13 21:23:20 +02:00
Ellpeck 4bd18fd171 update! 2019-08-13 16:07:15 +02:00
Ellpeck 83c45ed02d made the group component set height based on children by default 2019-08-13 16:05:18 +02:00
Ellpeck f56b7fbeff made scroll bar clickable 2019-08-13 16:02:29 +02:00
Ellpeck 75f7bbd2f9 made scroll bars only work when the mouse is in their parent 2019-08-12 19:46:43 +02:00
Ellpeck 4624219b4e added scroll bar and overflow handling panel 2019-08-12 19:44:16 +02:00
Ellpeck 09fbdfd54e added priority to elements 2019-08-12 14:44:42 +02:00
Ellpeck 0faa2756f5 auto-expanding components only need to update when not on top 2019-08-11 21:57:16 +02:00
Ellpeck 5246c0be60 update! 2019-08-11 21:43:24 +02:00
Ellpeck a856736ed3 fixed text fields not being updated to the new math correctly 2019-08-11 21:41:04 +02:00
Ellpeck 8af040787c added the ability for nine patch regions to have their patches scaled 2019-08-11 21:38:03 +02:00
Ellpeck a4eede5fe5 changed a lot of the math to make everything more smooth~ 2019-08-11 21:24:09 +02:00
Ellpeck cb12ead7cc added element auto-resizing 2019-08-11 18:50:39 +02:00
Ellpeck adf0ce56cb made ui scaling be based on the root element as well 2019-08-11 18:02:21 +02:00
Ellpeck 72efe55970 fixed text fields sometimes not updating their length correctly 2019-08-11 14:18:07 +02:00
Ellpeck 1b3d3019e9 update! 2019-08-11 00:42:20 +02:00
Ellpeck 2e8b311b00 made text fields auto-scroll once they're too full 2019-08-11 00:39:40 +02:00
Ellpeck c030d075dd also this should only be settable from inside 2019-08-10 21:41:20 +02:00
Ellpeck 2ee2b2ec69 remove should remove the system 2019-08-10 21:39:35 +02:00
Ellpeck 0c8af5b9bf better styling 2019-08-10 21:37:10 +02:00
Ellpeck 15081a8fe0 added a text field 2019-08-10 19:23:08 +02:00
Ellpeck f96511d17d shuffle some things around 2019-08-10 18:41:56 +02:00
Ellpeck 53f0858239 only do updates if necessary 2019-08-10 15:12:27 +02:00
Ellpeck 519ac01b9e added an empty group element 2019-08-10 13:44:48 +02:00
Ellpeck 3f7f06f98f added draw alpha to all components 2019-08-10 13:42:18 +02:00
Ellpeck 88da47bc00 added defaults for most element properties 2019-08-10 13:28:58 +02:00
Ellpeck 9d5d00434c better tags 2019-08-09 23:57:41 +02:00
Ellpeck 28fca1cc24 added ui system to startup 2019-08-09 23:43:50 +02:00
Ellpeck 18e634cad8 added image component 2019-08-09 22:23:16 +02:00
Ellpeck ef3726b077 added auto-scaled text, buttons and vertical space 2019-08-09 22:04:26 +02:00
Ellpeck 4943a7b6f0 hiding elements 2019-08-09 19:39:51 +02:00
Ellpeck b1d41d572c added panels and paragraphs 2019-08-09 19:28:48 +02:00
Ellpeck a67abd4661 basic element system 2019-08-09 18:26:28 +02:00
Ellpeck 82747e1331 added generic font wrapper 2019-08-09 14:26:20 +02:00
Ellpeck 369b4bf672 added a simple input handler as well as some changes to the startup package 2019-08-07 22:25:33 +02:00