e21729de67
fixed some memory management issues in MLEM.Ui
2022-11-24 18:38:51 +01:00
d138577285
Added trimming and AOT annotations and made MLEM trimmable
2022-10-31 18:33:53 +01:00
f58e3c94d5
Marked EnumHelper and DynamicEnum as obsolete due to their reimplementation in the DynamicEnums library
2022-10-31 13:20:26 +01:00
791c66b098
code cleanup
2022-10-27 10:22:25 +02:00
627350ca31
Added ElementHelper.MakeGrid
2022-10-17 10:57:41 +02:00
560c797b87
Fixed InputHandler and UiControls maintaining old input states when input types are toggled off
2022-10-10 19:29:01 +02:00
92f9164256
Added Panel.ScrollToElement
2022-09-24 18:46:33 +02:00
d6a51776e5
Fixed the scroll bar of an empty panel being positioned incorrectly
2022-09-24 11:04:23 +02:00
e8710f69e9
Fixed an exception when trying to force-update the area of an element without a ui system
2022-09-19 15:02:36 +02:00
02cf01fcb7
added Append and Prepend to the net452 version for better code compatibility
2022-09-15 17:51:46 +02:00
9f60a59706
resolved some build warnings
2022-09-15 10:44:50 +02:00
48735c3d36
Multi-target net452, making MLEM compatible with MonoGame for consoles
2022-09-14 21:17:43 +02:00
fc026ad0de
multi-target netstandard2.0 and net6.0
2022-09-14 19:24:00 +02:00
a6fd2c052e
Added ScrollBar.MouseDragScrolling
...
Closes #5
2022-09-13 16:14:36 +02:00
d0c805cf18
Fixed Element.OnChildAdded and Element.OnChildRemoved being called for grandchildren when a child is added
2022-09-13 15:44:12 +02:00
55735b4c64
Added Element.OnAddedToUi and Element.OnRemovedFromUi
2022-09-13 14:27:49 +02:00
2d3d93c610
Generified UiMarkdownParser by adding abstract UiParser
2022-09-04 12:26:55 +02:00
0a696941dc
cleaned up code
2022-08-20 11:39:28 +02:00
6a271af017
Fixed UiMarkdownParser not parsing formatting in headings and blockquotes
2022-08-19 17:57:44 +02:00
af0aee6c40
Added Element.AutoSizeAddedAbsolute to allow for more granular control of auto-sizing
2022-08-16 14:20:32 +02:00
f0432ab981
Fixed panels sometimes not drawing children that came into view when their positions changed unexpectedly
2022-08-04 21:03:16 +02:00
b7b1490d70
Fixed paragraphs sometimes not updating their position properly when hidden because they're empty
2022-08-04 20:43:04 +02:00
4d34a2fac1
Fixed parents of elements that prevent spill not being notified properly
2022-08-04 20:14:29 +02:00
5aaba0c583
Close other dropdowns when opening a dropdown
2022-07-29 22:24:37 +02:00
8044cb59cb
Improved EnumHelper.GetValues signature to return an array
2022-07-29 19:52:01 +02:00
7a0464e8d6
fixed GetRightmostChild using the wrong variable for calculation
2022-07-27 11:52:28 +02:00
f0cc4b0c80
Allow elements to auto-adjust their size even when their children are aligned oddly
2022-07-27 11:19:40 +02:00
08e28cb95b
Allow manually setting a RootElement as CanBeActive
2022-07-18 15:53:26 +02:00
92018eea1e
Made the base package's description more descriptive
...
This reverts commit 2973bd98e2
.
This reverts commit 04c6bb5ff8
.
2022-06-26 14:25:19 +02:00
2973bd98e2
moved MLEM's Input namespace into its own package
2022-06-25 23:46:06 +02:00
42a87471fc
fixed UiSystem AutoScaleReferenceSize default value
2022-06-24 15:21:08 +02:00
5fcdda80dc
fixed multiline text inputs not working on FNA
2022-06-24 14:10:24 +02:00
5d7d238630
added MLEM.FNA
2022-06-24 14:01:26 +02:00
aff61508c4
Added TextInput class, which is an isolated version of MLEM.Ui's TextField logic
2022-06-19 18:17:46 +02:00
aabb1ed5df
added .editorconfig
2022-06-17 18:23:47 +02:00
59af00c89a
Code cleanup, and marked AStar.InfiniteCost as obsolete
2022-06-15 11:38:11 +02:00
d0ece92550
return the ElementType along with each Element in Parse
2022-06-14 00:08:05 +02:00
01fb5288ff
finished up UiMarkdownParser
2022-06-14 00:04:57 +02:00
7b1da2f1a7
fixed image base path not being applied properly
2022-06-13 23:59:56 +02:00
f53305ce42
Added UiMarkdownParser
2022-06-13 23:52:10 +02:00
951f4babd5
Fixed gamepad auto-nav angle being incorrect for some elements
2022-05-26 11:39:55 +02:00
fcca5300ae
Fixed elements' OnDeselected events not being raised when CanBeSelected is set to false while selected
2022-05-21 20:42:54 +02:00
15b873a8ad
fixed xml doc recursive reference
2022-05-18 16:01:24 +02:00
6dc4011ef5
Added optional isKeybindAllowed parameter to KeybindButton
2022-05-18 15:54:29 +02:00
03accff6ae
modify AutoNavGroup behavior to disallow new selections
2022-05-17 16:06:22 +02:00
acd15fea14
improved Ui and Data package descriptions
2022-05-10 15:42:20 +02:00
16b9e26969
Fixed elements sometimes staying hidden when they shouldn't in scrolling panels
2022-05-04 13:54:15 +02:00
98118e540a
Allow manually hiding a paragraph without its text overriding the hidden state
2022-05-04 13:22:24 +02:00
58b716aabb
Don't query a paragraph's text callback in the constructor
2022-05-03 20:26:39 +02:00
63d2353694
Improved ElementHelper.AddTooltip overloads
2022-05-03 20:10:26 +02:00
15a57d8db9
Turned Tooltip paragraph styling into style properties
2022-05-03 19:35:44 +02:00
5a1b31e8a3
Allow adding dropdown and tooltip elements at a specified index
2022-05-03 19:07:53 +02:00
435042e1f5
Allow Tooltip to manage more than one paragraph and make it easier to add new lines
2022-05-03 18:58:18 +02:00
bc0f9d5c0c
consume other UI inputs too
2022-04-30 12:26:40 +02:00
610527374e
Make use of the new consuming variants in InputHandler and Keybind to consume UiControls inputs
2022-04-30 12:14:08 +02:00
8adee49e55
fixed scroll bars not working with the new InvertPressBehavior
2022-04-30 11:31:40 +02:00
6393d879d9
added SpriteBatchContext
2022-04-25 15:25:58 +02:00
c78bafd000
Ensure that Element.IsMouseOver is always accurate by making it an auto-property
2022-04-15 14:18:55 +02:00
783da33107
Fixed elements not being deselected when removed through RemoveChild
2022-04-15 14:16:38 +02:00
be26a2ebc2
made the new AutoNavGroup also work for gamepad controls
2022-04-14 18:01:30 +02:00
45afd9ac79
Added Element.AutoNavGroup which allows forming groups for auto-navigation
2022-04-14 17:54:25 +02:00
ad29b46df3
Fixed radio buttons not unchecking all other radio buttons with the same root element
2022-04-14 17:45:01 +02:00
902391d278
Fixed auto-nav tooltip displaying on the selected element even when not in auto-nav mode
2022-04-09 22:00:21 +02:00
4854d420e0
Fixed delayed tooltips sometimes displaying in the wrong location for one frame
2022-04-05 14:54:20 +02:00
393bd9ffe5
Allow tooltips to display for elements when selected in auto-nav mode
2022-04-05 14:42:30 +02:00
30b4d5fc43
Improve f166c3d256
by allowing buttons to be selectable even when disabled
2022-04-05 14:20:38 +02:00
df0ad68837
Fixed tooltips sometimes ignoring manually set IsHidden values
2022-04-05 14:17:12 +02:00
94dec34470
render panel's render target in the Draw method
2022-03-26 21:13:05 +01:00
6a3c797eba
Fixed UiMetrics.ForceAreaUpdateTime being inaccurate for nested elements
2022-03-26 20:06:59 +01:00
3ad024b95a
fixed KeybindButton inheritdoc referencing itself
2022-03-26 12:53:28 +01:00
4e122175b2
Allow ElementHelper's KeybindButton to accept a Keybind for clearing a combination
2022-03-26 12:41:19 +01:00
c6fe72bdc9
Multiple improvements to InputHandler key/button repeats:
...
- Trigger InputHandler key and gamepad repeats for the most recently pressed input
- Added InputHandler.TryGetDownTime and store the down times of inputs
- Removed InputHandler.StoreAllActiveInputs and always store all active inputs
2022-03-25 15:18:57 +01:00
c5b2b8798e
Fixed dropdowns with some non-selectable children failing to navigate when using gamepad controls
2022-03-17 20:46:49 +01:00
1f4f0cfa44
Fixed Element.IsSelected returning incorrect results when CanBeSelected changes
2022-03-17 20:45:28 +01:00
4aff5a2875
Fixed RootElement.CanSelectContent returning incorrect results when CanBeSelected changes in children
2022-03-17 20:36:30 +01:00
bb22bbdf75
Fixed children of Panel scroll bars also being scrolled
2022-03-17 20:04:58 +01:00
fa34258bbe
Added UiControls.AutoNavModeChanged event
2022-03-14 16:12:51 +01:00
8fa94f1186
improve gamepad priority calculation
2022-03-14 15:59:22 +01:00
d5f3453c71
combine distance and angle for gamepad ui navigation
2022-03-14 15:39:32 +01:00
b77edd80d5
Allow specifying a custom position for a tooltip to snap to
2022-03-14 14:20:12 +01:00
f166c3d256
Fixed buttons and checkboxes changing their CanBeSelected and CanBePressed values when being disabled
2022-03-11 13:25:18 +01:00
2c90ca9b89
Fixed UiControls allowing for non-selectable or non-mouseable elements to be marked as selected or moused
2022-03-11 12:29:56 +01:00
cd32372994
fixed 0f4e67f20f
2022-03-10 18:39:35 +01:00
0f4e67f20f
Fixed auto-navigating panels not scrolling to the center of elements properly
2022-03-10 18:04:36 +01:00
96f0c51757
Added RectangleF.DistanceSquared and RectangleF.Distance
2022-03-10 16:03:09 +01:00
7c18aad8f7
Improve dropdown opening gamepad navigation (in relation to cb8fed87e5
)
2022-03-10 15:04:52 +01:00
a14a37cb91
Prefer elements that have the same parent as the currently selected element when using gamepad navigation
2022-03-10 15:00:42 +01:00
45955bb5e8
Improved gamepad navigation by employing angles between elements
2022-03-10 14:25:41 +01:00
cb8fed87e5
Automatically select the first element when a dropdown is opened in auto nav mode
2022-03-10 13:50:47 +01:00
67388c106b
allow retrieving a keybind button's active state
2022-03-10 13:08:49 +01:00
48a4aa0588
Some keybind and keybind button improvements
2022-03-10 12:39:56 +01:00
d5ec0b8001
Allow setting a default color for clickable links in UiStyle
2022-03-07 12:00:33 +01:00
48b96a10a4
Added InputHandler mouse and touch position querying that preserves the game's viewport and fixed the graphics device's viewport being ignored for mouse and touch queries
...
Closes #1
2022-02-06 22:07:33 +01:00
ad2784a67e
Automatically update all elements when changing a ui system's viewport
2022-02-06 21:16:35 +01:00
ed88862194
Marked BeginDelegate and BeginImpl as obsolete
2022-02-02 18:17:53 +01:00
c880c3e011
Update elements less aggressively when changing a ui system's style
2022-01-30 16:56:07 +01:00
a143aef67c
Revert scissor rectangle change since it doesn't support panels with complex transformations
...
Revert "Use a scissor rectangle for panels in favor of a render target, and marked UiSystem.DrawEarly and Element.DrawEarly as obsolete"
This reverts commit 3c4567e4a1
.
Revert "cleaned up DrawEarly documentation references"
This reverts commit dc6c472b84
.
2022-01-30 16:35:10 +01:00
dc6c472b84
cleaned up DrawEarly documentation references
2022-01-30 12:20:32 +01:00
3c4567e4a1
Use a scissor rectangle for panels in favor of a render target, and marked UiSystem.DrawEarly and Element.DrawEarly as obsolete
2022-01-30 01:13:59 +01:00
f3e6df6862
Made custom values of Element.Style persist when a new ui style is set
2022-01-22 23:34:52 +01:00