PKHeX/PKHeX.WinForms/Controls/PKM Editor
Kurt 47071b41f3
Refactoring: Span-based value writes and method signatures (#3361)
Existing `get`/`set` logic is flawed in that it doesn't work on Big Endian operating systems, and it allocates heap objects when it doesn't need to.

`System.Buffers.Binary.BinaryPrimitives` in the `System.Memory` NuGet package provides both Little Endian and Big Endian methods to read and write data; all the `get`/`set` operations have been reworked to use this new API. This removes the need for PKHeX's manual `BigEndian` class, as all functions are already covered by the BinaryPrimitives API.

The `StringConverter` has now been rewritten to accept a Span to read from & write to, no longer requiring a temporary StringBuilder.

Other Fixes included:
- The Super Training UI for Gen6 has been reworked according to the latest block structure additions.
- Cloning a Stadium2 Save File now works correctly (opening from the Folder browser list).
- Checksum & Sanity properties removed from parent PKM class, and is now implemented via interface.
2022-01-02 21:35:59 -08:00
..
BallBrowser.cs Split PKHeX.Drawing into subprojects 2021-11-27 15:48:08 -08:00
BallBrowser.Designer.cs Move ball browser form to separate file 2019-02-14 20:18:31 -08:00
CatchRate.cs Minor clean 2020-12-21 23:37:07 -08:00
CatchRate.Designer.cs Add catch rate editor control 2018-09-30 10:16:45 -07:00
ContestStat.cs Make ContestStat fields byte (from int) 2021-01-01 13:39:08 -08:00
ContestStat.Designer.cs Inherit sizing mode 2018-03-19 16:15:46 -07:00
ContextMenuPKM.cs Enable nullable for winforms csproj (#3037) 2020-10-18 11:02:39 -07:00
ContextMenuPKM.Designer.cs Add icons 2018-04-21 22:31:11 -07:00
DrawConfig.cs Trailing commas 2021-08-20 13:49:20 -07:00
EditPK1.cs c#9 is not sugar 2020-12-22 21:24:41 -08:00
EditPK2.cs Condense some expressions 2021-08-22 01:26:28 -07:00
EditPK3.cs c#9 is not sugar 2020-12-22 21:24:41 -08:00
EditPK4.cs Finish renaming EncounterType->GroundTile 2021-07-03 23:25:09 -07:00
EditPK5.cs Finish renaming EncounterType->GroundTile 2021-07-03 23:25:09 -07:00
EditPK6.cs Minor refactoring for pkmeditor GUI 2021-07-30 18:05:17 -07:00
EditPK7.cs Minor refactoring for pkmeditor GUI 2021-07-30 18:05:17 -07:00
EditPK8.cs Update 21.11.19 - Brilliant Diamond & Shining Pearl (#3289) 2021-11-19 18:23:49 -08:00
FormArgument.cs Minor clean 2021-05-29 15:31:47 -07:00
FormArgument.Designer.cs Add form strings for Eiscue, Morpeko, and Zacian/Zamazenta 2021-08-07 13:22:14 -04:00
IMainEditor.cs Rename public "pkm" properties to non-lowercase 2019-10-27 12:57:04 -07:00
LoadSave.cs Split PKHeX.Drawing into subprojects 2021-11-27 15:48:08 -08:00
PKMEditor.cs Refactoring: Span-based value writes and method signatures (#3361) 2022-01-02 21:35:59 -08:00
PKMEditor.Designer.cs Autosize dropdown width for met locations 2021-11-24 13:14:02 -08:00
PKMEditor.resx Add shiny sprites, alcremie sprites & big sprites for all 2020-03-03 20:22:57 -08:00
ShinyLeaf.cs c#9 is not sugar 2020-12-22 21:24:41 -08:00
ShinyLeaf.Designer.cs Add .NET Core 3.0 build option for WinForms project (#2396) 2019-10-01 18:12:08 -07:00
ShinyLeaf.resx Add .NET Core 3.0 build option for WinForms project (#2396) 2019-10-01 18:12:08 -07:00
SizeCP.cs Add scalar randomizer shortcut 2021-11-24 19:32:12 -08:00
SizeCP.Designer.cs Add scalar randomizer shortcut 2021-11-24 19:32:12 -08:00
StatEditor.cs Refactoring: Span-based value writes and method signatures (#3361) 2022-01-02 21:35:59 -08:00
StatEditor.Designer.cs Update sprite on gmax field change 2020-10-25 13:47:42 -07:00
TrainerID.cs Refactoring: Span-based value writes and method signatures (#3361) 2022-01-02 21:35:59 -08:00
TrainerID.Designer.cs PKHeX.Core Nullable cleanup (#2401) 2019-10-16 18:47:31 -07:00