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
94b6aa0d1b
Marked StyleProp equality members as obsolete
2022-01-22 23:20:04 +01:00
faa400c4e6
Added Element.OnStyleInit event
2022-01-22 23:05:29 +01:00
dbf370c968
Allow setting a default text alignment for paragraphs in UiStyle
2022-01-22 22:54:47 +01:00
80a6c6b5e2
Avoid unnecessary panel updates by using an Epsilon comparison when scrolling children
2022-01-09 01:15:05 +01:00
c28f6d858c
Ensure that a panel gets notified of all relevant changes by calling OnChildAreaDirty for all grandchildren
2022-01-09 01:12:16 +01:00
68fc02b170
Fixed paragraph links having incorrect hover locations when using special text alignments
2022-01-07 20:50:32 +01:00
6e75e9ebb4
ensure that the paragraph changes occur when new links are added
2022-01-07 17:15:03 +01:00
b46975391b
Only set a paragraph's area dirty when a text change would cause it to change size
2022-01-06 23:26:14 +01:00
29bbd61f8b
reformat and cleanup
2021-12-28 14:56:11 +01:00
7e49eaef10
Allow for checkboxes and radio buttons to be disabled
2021-12-24 12:10:04 +01:00
c060d78010
put StringBuilder overloads to use
2021-12-22 13:03:40 +01:00
dae511e455
Made StyleProp immutable
2021-12-21 11:54:32 +01:00
c0ce5a07ad
Implemented IEquatable on a lot of classes that were missing it
2021-12-21 11:39:29 +01:00
3541b8d3e1
Automatically set area dirty when changing child padding or paragraph fonts
2021-12-21 00:01:57 +01:00
79354c444b
fixed exception when elements get removed from their ui in Update
2021-12-14 13:42:31 +01:00
60dfbb1ec5
Added UiMetrics
2021-12-12 12:32:09 +01:00
55fae16768
Allow overriding SetAreaAndUpdateChildren and switch to using it in some locations
2021-12-11 17:39:49 +01:00
103d7c7503
Added a SquishingGroup element to MLEM.Ui
2021-12-11 17:26:55 +01:00
28a928ec2c
Revert "Added PreventSiblingSpill to Element"
...
This reverts commit 3c74cc4845
.
2021-12-11 01:04:35 +01:00
3c74cc4845
Added PreventSiblingSpill to Element
2021-12-11 00:36:50 +01:00
636522bc3e
resolved some documentation warnings
2021-11-30 11:46:06 +01:00
53b93a34f8
Made TextFormatter string size based on the currently active font and added a formatting code to allow for inline font changes
2021-11-27 22:45:37 +01:00
84a6e5a29a
Fixed some end-of-line inconsistencies when using the Right text alignment
2021-11-22 18:52:52 +01:00
84e2544dc8
Allow setting a custom effect and depth stencil state for ui drawing
2021-11-22 17:42:08 +01:00
5b99f29490
Fixed some inconsistencies with element transformations and mouse interaction
2021-11-22 15:13:08 +01:00
91d34c0a83
Remember the location that a scroll bar scroller was grabbed in when scrolling
2021-11-14 21:32:13 +01:00
2a7dc119eb
Removed ScrollBar ScrollerOffset (which didn't actually work)
2021-11-14 21:04:50 +01:00
cd48ad6e2a
ensure that child padding stays consistent if ScrollerSize gets updated
2021-11-14 20:28:53 +01:00
9cd72e9b4e
Fixed panels that don't auto-hide their scroll bars ignoring their width for child padding
2021-11-14 19:50:24 +01:00
1fa9204680
added a style property for a panel's scroll bar offset
2021-11-11 16:43:27 +01:00
dc15a9139f
added a bound check for the auto-calculated scroller size
2021-11-08 02:11:05 +01:00
6d554faaac
mark panel children dirty when the scroll bar's max value (the height of the children) changes
2021-11-08 02:06:50 +01:00
3d0250bf86
Calculate panel scroll bar height based on content height
2021-11-08 02:02:59 +01:00
ae559adf26
remove "see href" from xml docs since some IDEs can't display that
2021-11-06 23:42:23 +01:00
8e83cc06a6
Added JsonTypeSafeWrapper and JsonTypeSafeGenericDataHolder
2021-11-06 23:38:21 +01:00
778d416774
mark panel's relevant children dirty when the render target changes
2021-11-05 23:28:32 +01:00
543201d178
ensure that relevant panel children are updated when children are changed
2021-11-05 23:22:39 +01:00
cf48fc372e
skip unnecessary relevant children updates for panels
2021-11-01 22:58:37 +01:00
149669df99
fixed up Element docs and added a return value to UpdateAreaIfDirty
2021-11-01 15:29:59 +01:00
f2939253b1
Skip unnecessary area updates for elements with dirty parents
2021-11-01 13:39:37 +01:00
60bd73017c
period consistency
2021-11-01 01:21:53 +01:00
ca89d03ca4
Some more ui style improvements
2021-10-30 15:33:38 +02:00
3648352540
organized MLEM.Ui properties and fields slightly
2021-10-30 15:01:04 +02:00
0809cd0218
Added style properties for a lot of hardcoded default element styles
2021-10-29 23:33:15 +02:00
9ddc1f6975
Made Image ScaleToImage take ui scale into account
2021-10-29 17:11:45 +02:00
2be39a740e
improve handling of arbitrary Epsilon values
2021-10-28 23:26:42 +02:00
45f970e0f2
added vertical movement to multiline text fields
2021-10-13 17:13:56 +02:00
5f2eb1845f
Fixed text not being pasted into a text field at all if it contains characters that don't match the input rule
2021-10-12 19:58:31 +02:00
a47318c0a2
improved text field multi line handling
2021-10-12 18:28:06 +02:00
1d462b0252
fixed some multiline editing issues
2021-10-12 02:46:24 +02:00
11dd939009
Added a multiline editing mode to TextField
2021-10-12 02:16:09 +02:00
8f5d3083b5
Allow specifying a maximum amount of characters for a TextField
2021-10-11 23:35:50 +02:00
f021215066
fixed VerticalSpace height parameter being an integer
2021-10-01 03:42:27 +02:00
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
a140e85300
fixed Docs casing in readme path
2021-09-24 04:50:42 +02:00
a53939837f
added package readmes
2021-09-24 04:47:39 +02:00
1bbb12a1fa
clarified auto-size exception in elements
2021-09-09 17:02:29 +02:00
9890c4895c
Fixed tooltips not displaying correctly with auto-hiding paragraphs
2021-09-09 16:53:12 +02:00
51833d523d
Improved CopyExtensions construction speed
2021-08-05 03:59:14 +02:00
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
094de058c4
(attempt to) reduce element sizing incompatibilities for auto-width/height elements
2021-08-05 03:40:47 +02:00
8fac4a0b69
Allow adding Link children to non-Paragraph elements
2021-07-24 07:36:42 +02:00
01bec459de
disallow creating Paragraphs without fonts
2021-07-22 04:51:41 +02:00
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
527c4af3e4
updated dependencies
2021-07-20 00:55:36 +02:00
1067055bb5
code cleanup
2021-07-19 23:49:16 +02:00
abac738123
Removed LINQ Any and All usage in various methods to improve memory usage
2021-07-18 22:18:46 +02:00
6aa9ec03d4
Added customizable overloads for Keybind, Combination and GenericInput ToString methods
2021-07-13 15:41:42 +02:00
bb189261d7
Added a masking character to text fields
2021-07-08 18:17:39 +02:00
d1b229b589
moved sound classes into /Sound
2021-07-05 16:36:48 +02:00
642608a8a2
Fixed a crash if a paragraph has a link formatting code, but no font
2021-07-03 01:50:37 +02:00
19893855dc
added the changelog to the website
2021-07-01 05:00:59 +02:00
fe9b3830f8
(finally) added a changelog
2021-06-28 15:38:30 +02:00
1377941f1a
added TreatSizeAsMaximum to ui elements
2021-06-25 16:48:41 +02:00
14940d39c5
added text alignment options to tokenized strings and paragraphs
2021-06-25 15:23:30 +02:00
ef83124cfa
allow changing the color of panels
2021-06-22 01:14:06 +02:00
ce920b5219
added an element helper method to create a keybind button
2021-06-21 00:49:09 +02:00
a5a73af01c
improved Keybind constructors
2021-06-20 23:48:02 +02:00
cca02b5396
organized UiSystem constructor
2021-06-09 00:37:44 +02:00
a02334a34c
turned some non-event events into events and added Disposing event to ui elements
2021-06-09 00:27:50 +02:00
2cc77f42cd
added events for when a root element is added or removed from a ui
2021-06-08 21:36:42 +02:00
e0a9971bdb
added DynamicEnum to MLEM.Data
2021-06-08 13:32:01 +02:00
20e2d098ef
suppress finalize for manually disposed panels
2021-06-08 00:32:07 +02:00
0dad4860c1
dispose of the panel's render target
2021-06-08 00:29:51 +02:00