1
0
Fork 0
mirror of https://github.com/Ellpeck/MLEM.git synced 2024-12-26 02:09:24 +01:00
Commit graph

557 commits

Author SHA1 Message Date
Ell
a47d3f50cb Fixed TextInputs behaving incorrectly when switching between multiline and single-line modes 2023-02-17 13:16:49 +01:00
Ell
f6beaff43a Fixed a multiline text field's cursor not returning to the default position when the last character is removed 2023-02-13 14:37:20 +01:00
Ell
aef6f7bd58 Fixed control characters being included in TextInput and TextField 2023-02-13 14:27:39 +01:00
Ell
eb8a8568e1 Some ui system improvements
- Allow initializing a ui system's text formatter without default codes and macros
- Fixed UiStyle.LinkColor not being applied to the ui system when changed
2023-01-08 11:21:20 +01:00
Ell
a249331ce9 Allow initializing text formatters without default codes and macros 2023-01-07 22:32:38 +01:00
Ell
500736e20f Added subscript and superscript formatting codes 2023-01-07 22:02:22 +01:00
Ell
2e8a8244a3 Added RandomExtensions.NextSingle with minimum and maximum values 2023-01-07 20:01:22 +01:00
Ell
ef0499958d - Added InputHandler.IsPressedIgnoreRepeats
- Marked non-GenericInput versions of IsDown, IsUp, IsPressed and related methods as obsolete in favor of GenericInput ones
2022-12-27 22:57:35 +01:00
Ell
79a2eaa8d2 Added InputHandler.WasPressedForLess and related methods 2022-12-26 18:44:46 +01:00
Ell
14d0b24aa9 cleaned up preprocessor instructions 2022-12-13 13:11:36 +01:00
Ell
170b397e02 Cleaned up GenericFont and TokenizedString by improving the splitting and truncating algorithms 2022-12-07 13:35:57 +01:00
Ell
f0b65daf68 fixed GetSelfWidth receiving the default and custom font inconsistently 2022-12-06 17:49:38 +01:00
Ell
066ed9f8f7 fixed some issues with the new code width system 2022-12-06 17:10:04 +01:00
Ell
b374d50815 Allow formatting codes to have an arbitrary custom width 2022-12-06 16:49:19 +01:00
Ell
cf3d0e8e0c added some more Add overloads to SeedSource 2022-12-04 22:43:25 +01:00
Ell
943616e21a moved SeedSource to its own file and added Rotate 2022-11-30 23:11:37 +01:00
Ell
e3b41ebeea improved SeedSource algorithm to be less predictable 2022-11-30 21:31:34 +01:00
Ell
0a62ae0036 Added SeedSource 2022-11-30 20:21:24 +01:00
Ell
8ffd9ab48a improved and cleaned up SingleRandom 2022-11-30 00:24:43 +01:00
Ell
edcaa84a2b ensure that SingleRandom seeds are never zero 2022-11-29 23:56:34 +01:00
Ell
8555fc2499 updated SingleRandom signatures to avoid confusions when calling 2022-11-29 21:36:17 +01:00
Ell
88efc6b41c fixed Single min/max values being integers 2022-11-29 21:29:53 +01:00
Ell
b2b4dfbdc9 also added SingleRandom ranges for floats 2022-11-29 21:21:50 +01:00
Ell
81c69041c3 Added the SingleRandom utility class 2022-11-29 21:11:59 +01:00
Ell
d72b094a7a Added a generic version of IGenericDataHolder.SetData 2022-11-27 12:34:07 +01:00
Ell
e21729de67 fixed some memory management issues in MLEM.Ui 2022-11-24 18:38:51 +01:00
Ell
9919ee4a97 added the ability to convert texture atlases to collections 2022-11-23 12:14:08 +01:00
Ell
63ea3eba90 DataContract usage improvements 2022-11-22 20:09:12 +01:00
Ell
810406fb94 Added the ability for UniformTextureAtlases to have padding for each region 2022-11-19 17:12:57 +01:00
Ell
b5619db55c Allow explicitly specifying each region for extended auto tiles 2022-11-14 12:59:35 +01:00
Ell
a1df35ea05 also set source in OffsetCopy 2022-11-14 11:51:29 +01:00
Ell
db02dfcfde Store a RuntimeTexturePacker packed texture region's source region 2022-11-14 11:49:47 +01:00
Ell
5906278091 Fixed Combination.IsModifierDown querying one of its modifiers instead of all of them 2022-11-08 17:50:58 +01:00
Ell
8bb62a2ce5 also added WasModifierDown and WasDown to Keybind and Combination 2022-11-08 17:43:34 +01:00
Ell
797a3b2617 Improved the way InputHandler down time calculation works 2022-11-08 17:12:37 +01:00
Ell
8469185297 Added GetDownTime, GetUpTime and GetTimeSincePress to Keybind and Combination 2022-11-08 16:43:32 +01:00
Ell
cc749103e0 Allow specifying percentage-based padding for a NinePatch 2022-11-03 18:16:59 +01:00
Ell
d138577285 Added trimming and AOT annotations and made MLEM trimmable 2022-10-31 18:33:53 +01:00
Ell
f58e3c94d5 Marked EnumHelper and DynamicEnum as obsolete due to their reimplementation in the DynamicEnums library 2022-10-31 13:20:26 +01:00
Ell
8745a3237e Added DynamicEnum IsDefined and EnumHelper and DynamicEnum GetUniqueFlags 2022-10-26 23:34:30 +02:00
Ell
7ab76d239d Added EnumHelper and DynamicEnum GetFlags 2022-10-26 15:02:33 +02:00
Ell
d5e5d1d536 moved the new ConvertCachedUtf32 to CodePointSource 2022-10-23 21:23:16 +02:00
Ell
be7676d37e fixed unnecessary memory allocations since 8d689952cc 2022-10-22 11:46:11 +02:00
Ell
8d689952cc Made GenericFont and TokenizedString support UTF-32 characters like emoji 2022-10-15 13:48:45 +02:00
Ell
560c797b87 Fixed InputHandler and UiControls maintaining old input states when input types are toggled off 2022-10-10 19:29:01 +02:00
Ell
d6309ce9c1 Added the ability to find paths to one of multiple goals using AStar 2022-10-10 11:31:23 +02:00
Ell
d3b153fd45 Cleaned up AStar code 2022-10-09 22:38:10 +02:00
Ell
0b6e6743cf some more AStar improvements 2022-10-09 21:04:39 +02:00
Ell
3e4c4e566d Merge remote-tracking branch 'origin/main' 2022-10-09 20:07:51 +02:00
Ell
bfa4ab4ac2 Added the ability to include special per-position directions in AStar pathfinding 2022-10-09 20:07:38 +02:00
Ell
02cf01fcb7 added Append and Prepend to the net452 version for better code compatibility 2022-09-15 17:51:46 +02:00
Ell
9f60a59706 resolved some build warnings 2022-09-15 10:44:50 +02:00
Ell
48735c3d36 Multi-target net452, making MLEM compatible with MonoGame for consoles 2022-09-14 21:17:43 +02:00
Ell
fc026ad0de multi-target netstandard2.0 and net6.0 2022-09-14 19:24:00 +02:00
Ell
df2d102d8e further improved StaticSpriteBatch performance 2022-09-13 11:57:28 +02:00
Ell
b4e1b00c88 finished static sprite batch optimizations 2022-09-12 23:51:12 +02:00
Ell
eadabf3919 use SortedDictionary for StaticSpriteBatch 2022-09-12 23:09:36 +02:00
Ell
856d67b6cf Second pass at StaticSpriteBatch optimizations 2022-09-12 22:57:01 +02:00
Ell
742bc52437 First pass at drastically improving StaticSpriteBatch batching performance 2022-09-12 21:51:21 +02:00
Ell
d6e7c1086d Discard old data when updating a StaticSpriteBatch 2022-09-12 21:13:43 +02:00
Ell
023233a062 Fixed some TokenizedString tokens starting with a line break not being split correctly 2022-09-02 14:07:23 +02:00
Ell
0fe4c940d7 Fixed TokenizedString handling trailing spaces incorrectly in the last line of non-left aligned text 2022-09-02 13:58:12 +02:00
Ell
32dad847a0 adAdded TokenizedString.Realign 2022-09-02 13:42:21 +02:00
Ell
0a696941dc cleaned up code 2022-08-20 11:39:28 +02:00
Ell
e50d28ce11 Allow using external gesture handling alongside InputHandler through ExternalGestureHandling 2022-08-11 11:37:41 +02:00
Ell
8044cb59cb Improved EnumHelper.GetValues signature to return an array 2022-07-29 19:52:01 +02:00
Ell
48dfa8f1ee Allow RandomExtensions to operate on any ICollection 2022-07-19 15:20:19 +02:00
Ell
288b8352af improved the README and some package descriptions slightly 2022-07-04 23:53:48 +02:00
Ell
d32bc0cbfb Added TryGetUpTime, GetUpTime, TryGetTimeSincePress and GetTimeSincePress to InputHandler 2022-06-29 15:57:41 +02:00
Ell
d58c5d8b33 fixed the new TextInput not updating correctly if the Font is set late 2022-06-29 14:34:13 +02:00
Ell
6f05263980 ensure that SimpleEndCode doesn't end formatting codes with shorter names 2022-06-26 17:18:38 +02:00
Ell
6e2c2b3730 Improved the way terminating formatting codes work by introducing SimpleEndCode 2022-06-26 15:08:11 +02:00
Ell
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
Ell
2973bd98e2 moved MLEM's Input namespace into its own package 2022-06-25 23:46:06 +02:00
Ell
61055148ef some fixes and doc changes to make MLEM.FNA more in line with MLEM 2022-06-24 21:33:24 +02:00
Ell
5d7d238630 added MLEM.FNA 2022-06-24 14:01:26 +02:00
Ell
aff61508c4 Added TextInput class, which is an isolated version of MLEM.Ui's TextField logic 2022-06-19 18:17:46 +02:00
Ell
aabb1ed5df added .editorconfig 2022-06-17 18:23:47 +02:00
Ell
1795acb30e Added GenericInput support for Buttons.None 2022-06-15 11:44:28 +02:00
Ell
59af00c89a Code cleanup, and marked AStar.InfiniteCost as obsolete 2022-06-15 11:38:11 +02:00
Ell
d03116a49a Allow using multiple textures in a StaticSpriteBatch 2022-06-08 11:05:18 +02:00
Ell
7d9633d989 Fixed StaticSpriteBatch not resetting its texture when all items are removed 2022-06-07 11:57:25 +02:00
Ell
bd9d3f970b Added RandomPitchModifier and GetRandomPitch to SoundEffectInfo 2022-05-20 16:59:28 +02:00
Ell
161d44dbe0 Added an Enum constructor to GenericInput 2022-05-18 21:45:38 +02:00
Ell
30bcdc1710 Allow comparing Keybind and Combination based on the amount of modifiers they have 2022-05-18 18:50:00 +02:00
Ell
8968e6025d Added IsPressConsumed and IsAnyPressedAvailable to InputHandler 2022-05-17 18:20:31 +02:00
Ell
5ba550619d Added AndThen to Easings 2022-05-10 21:32:28 +02:00
Ell
7ebbe49786 Added ReverseInput and ReverseOutput to Easings 2022-05-10 20:56:14 +02:00
Ell
610527374e Make use of the new consuming variants in InputHandler and Keybind to consume UiControls inputs 2022-04-30 12:14:08 +02:00
Ell
4a88cca8bf also added consuming variants of IsPressed to Keybind 2022-04-30 11:38:05 +02:00
Ell
46c77d2444 Added InputHandler.InvertPressBehavior 2022-04-29 15:34:04 +02:00
Ell
6393d879d9 added SpriteBatchContext 2022-04-25 15:25:58 +02:00
Ell
f445f59078 Added consuming variants of IsPressed methods to InputHandler 2022-04-11 10:33:41 +02:00
Ell
ae6ce6e7d5 Added properties and constructors for existing operator overloads to GenericInput 2022-03-26 12:51:14 +01:00
Ell
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
Ell
bb7192b3cc Fixed InputHandler.InputsPressed ignoring repeat events for keyboards and gamepads 2022-03-24 11:43:55 +01:00
Ell
35e3896dc1 fixed new InputHandler deadzone querying equality being inverted 2022-03-14 15:18:01 +01:00
Ell
5d97ab033f Added GamepadExtensions.GetAnalogValue to get the analog value of any gamepad button 2022-03-14 15:15:30 +01:00
Ell
96f0c51757 Added RectangleF.DistanceSquared and RectangleF.Distance 2022-03-10 16:03:09 +01:00
Ell
48a4aa0588 Some keybind and keybind button improvements 2022-03-10 12:39:56 +01:00