1
0
Fork 0
mirror of https://github.com/Ellpeck/MLEM.git synced 2024-11-29 15:58:33 +01:00
MLEM/CHANGELOG.md

120 lines
4.7 KiB
Markdown
Raw Normal View History

2021-06-28 15:38:30 +02:00
# Changelog
MLEM uses [semantic versioning](https://semver.org/).
2021-06-29 00:57:04 +02:00
Jump to version:
2021-06-30 00:30:17 +02:00
- [5.1.0 (Unreleased)](#510-unreleased)
2021-06-30 00:18:54 +02:00
- [5.0.0](#500)
2021-06-29 00:57:04 +02:00
2021-06-30 00:30:17 +02:00
## 5.1.0 (Unreleased)
### MLEM
2021-07-05 19:46:39 +02:00
Additions
- Added RotateBy to Direction2Helper
2021-07-03 01:44:39 +02:00
Improvements
- Improved NinePatch memory performance
2021-07-05 19:46:39 +02:00
- Moved sound-related classes into Sound namespace
- Added customizable overloads for Keybind, Combination and GenericInput ToString methods
2021-07-19 23:49:16 +02:00
- Moved ColorHelper.Invert to ColorExtensions.Invert
- Removed LINQ Any and All usage in various methods to improve memory usage
Fixes
- Set default values for InputHandler held and pressed keys to avoid an exception if buttons are held in the very first frame
- Fixed GenericFont MeasureString using incorrect width for Zwsp and OneEmSpace
2021-07-03 01:44:39 +02:00
### MLEM.Ui
Additions
- Added a masking character to TextField to allow for password-style text fields
Improvements
- Removed LINQ Any and All usage in various methods to improve memory usage
- Explicitly disallow creating Paragraphs without fonts to make starting out with MLEM.Ui less confusing
- Allow adding Link children to non-Paragraph elements
Fixes
- Fixed a crash if a paragraph has a link formatting code, but no font
- Fixed tooltips with custom text scale not snapping to the mouse correctly in their first displayed frame
### MLEM.Extended
Improvements
- Adjusted GenericStashFont line height calculations to result in values closer to GenericSpriteFont and added a constructor parameter to set a custom line height
### MLEM.Data
Additions
- Added the ability to specify a coordinate offset in data texture atlases
Improvements
- Improved RawContentManager's reader loading and added better exception handling
2021-06-30 00:18:54 +02:00
## 5.0.0
2021-06-28 15:38:30 +02:00
### MLEM
Additions
- Added some Collection extensions, namely for dealing with combinations
- Added repeat-ignoring versions of IsKeyPressed and IsGamepadButtonPressed
- Added SoundExtensions
- Added string truncation to TokenizedString
- Added a sprite batch extension to generate a gradient
- Added InputsDown and InputsPressed properties to InputHandler
- Added text alignment options to tokenized strings
2021-06-29 00:57:04 +02:00
Improvements
2021-06-28 15:38:30 +02:00
- Allow NinePatches to be drawn tiled rather than stretched
- Added the ability for Direction2 to be used as flags
- Made Padding and Direction2 DataContracts
- Expose the viewport of cameras
- Greatly improved the efficiency of line splitting for GenericFont and TokenizedString
- Improved performance of TextFormatter tokenization
- Replaced TextInputWrapper with a more refined MlemPlatform that includes the ability to open links on various platforms
- Allow for underline and shadow formatting codes to be mixed with font changing codes
- Exposed Keybind Combinations
Fixes
- Fixed the input handler querying input when the window is inactive
- Fixed UnderlineCode ending in the wrong places because it was marked as a font-changing code
Removals
- Removed the array-based GetRandomEntry method
- Removed obsolete ColorExtension methods
### MLEM.Ui
Additions
- Added a text scale multiplier value to Paragraph
- Added an option to limit auto-height and auto-width in elements to a maximum and minimum size
- Added the ability to set a custom viewport for ui systems
- Added string truncation to Paragraph
- Added a simple way to change the action that is executed when a link is pressed in a paragraph
- Added events for when a root element is added or removed
- Added an ElementHelper method to create a keybind button
- Added text alignment options to paragraphs
Improvements
- Stop a panel's scroll bar from being removed from its children list automatically
- Removed unnecessary GraphicsDevice references from UiSystem
- Dispose of panels' render targets to avoid memory leaks
- Allow changing the color that a panel renders its texture with
Fixes
- Fixed auto-sized elements doing too many area update calculations
- Fixed a rare stack overflow where scroll bars could get stuck in an auto-hide loop
- Fixed auto-sized elements without children not updating their size correctly
- Fixed panels drawing children early within the render target (instead of regularly)
### MLEM.Extended
Additions
- Added GenericFont compatibility for FontStashSharp
- Added a method to make sidescrolling collision detection easier with TiledMapCollisions
- Added some more TiledMapExtension utility methods
Improvements
- Reversed the y loop in GetCollidingTiles to account for gravity which is usually more important
Fixes
- Fixed some number parsing not using the invariant culture
### MLEM.Data
Additions
- Added StaticJsonConverter
- Added DynamicEnum, a cursed custom enumeration class that supports arbitrarily many values
Fixes
- Fixed some number parsing not using the invariant culture
- Fixed RawContentManager crashing with dynamic assemblies present