From 2973bd98e253c90282d8c5fa1bf30a00d2a21b59 Mon Sep 17 00:00:00 2001 From: Ellpeck Date: Sat, 25 Jun 2022 23:46:06 +0200 Subject: [PATCH] moved MLEM's Input namespace into its own package --- CHANGELOG.md | 5 +++ Demos.Android/Demos.Android.csproj | 4 +++ Docs/index.md | 3 +- MLEM.FNA.sln | 6 ++++ .../Input => MLEM.Input}/GamepadExtensions.cs | 0 {MLEM/Input => MLEM.Input}/GenericInput.cs | 0 {MLEM/Input => MLEM.Input}/InputHandler.cs | 0 {MLEM/Input => MLEM.Input}/Keybind.cs | 0 {MLEM/Input => MLEM.Input}/KeysExtensions.cs | 0 MLEM.Input/MLEM.Input.FNA.csproj | 34 +++++++++++++++++++ MLEM.Input/MLEM.Input.csproj | 32 +++++++++++++++++ {MLEM/Input => MLEM.Input}/MouseExtensions.cs | 0 {MLEM/Input => MLEM.Input}/TextInput.cs | 0 MLEM.Startup/MLEM.Startup.FNA.csproj | 1 - MLEM.Startup/MLEM.Startup.csproj | 11 +++--- MLEM.Ui/MLEM.Ui.FNA.csproj | 2 +- MLEM.Ui/MLEM.Ui.csproj | 12 +++---- MLEM.sln | 6 ++++ README.md | 3 +- 19 files changed, 103 insertions(+), 16 deletions(-) rename {MLEM/Input => MLEM.Input}/GamepadExtensions.cs (100%) rename {MLEM/Input => MLEM.Input}/GenericInput.cs (100%) rename {MLEM/Input => MLEM.Input}/InputHandler.cs (100%) rename {MLEM/Input => MLEM.Input}/Keybind.cs (100%) rename {MLEM/Input => MLEM.Input}/KeysExtensions.cs (100%) create mode 100644 MLEM.Input/MLEM.Input.FNA.csproj create mode 100644 MLEM.Input/MLEM.Input.csproj rename {MLEM/Input => MLEM.Input}/MouseExtensions.cs (100%) rename {MLEM/Input => MLEM.Input}/TextInput.cs (100%) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f072af..2d28e6c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,8 +26,13 @@ Improvements - Added GenericInput support for Buttons.None Removals +- **Moved Input namespace into MLEM.Input** - Marked AStar.InfiniteCost as obsolete +### MLEM.Input +Additions +- Added Input namespace that was originally a part of MLEM + ### MLEM.Ui Additions - Added Element.AutoNavGroup which allows forming groups for auto-navigation diff --git a/Demos.Android/Demos.Android.csproj b/Demos.Android/Demos.Android.csproj index 0d6ecd8..6e693bd 100644 --- a/Demos.Android/Demos.Android.csproj +++ b/Demos.Android/Demos.Android.csproj @@ -87,6 +87,10 @@ {1bc4682b-aa14-4937-b5c7-707e20fe88ff} Demos + + {34c0707b-1b0a-437e-9536-39ec7012c1b5} + MLEM.Input + {997f4739-7bec-4621-b9ca-68deb2d74412} MLEM.Startup diff --git a/Docs/index.md b/Docs/index.md index 4ca5a69..78472c8 100644 --- a/Docs/index.md +++ b/Docs/index.md @@ -12,7 +12,8 @@ # Packages - **MLEM** is the base package, which provides extension methods and additional features for MonoGame and FNA -- **MLEM.Ui** features a mouse, keyboard, gamepad and touch ready Ui system that features automatic anchoring, sizing and several ready-to-use element types +- **MLEM.Input** features simple input handling for MonoGame, including a unified way to query mouse, keyboard, gamepad and touch input, a simple keybind system, and a text input field abstraction +- **MLEM.Ui** includes a mouse, keyboard, gamepad and touch ready Ui system that features automatic anchoring, sizing and several ready-to-use element types - **MLEM.Extended** ties in with MonoGame.Extended and other MonoGame and FNA libraries - **MLEM.Data** provides simple loading and processing of textures and other data, including the ability to load non-XNB content files easily - **MLEM.Startup** combines MLEM with some other useful libraries into a quick Game startup class diff --git a/MLEM.FNA.sln b/MLEM.FNA.sln index acdea53..126d753 100644 --- a/MLEM.FNA.sln +++ b/MLEM.FNA.sln @@ -20,6 +20,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FNA.Core", "FNA\FNA.Core.cs EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FontStashSharp.FNA.Core", "FontStashSharp\src\XNA\FontStashSharp.FNA.Core.csproj", "{0B410591-3AED-4C82-A07A-516FF493709B}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MLEM.Input.FNA", "MLEM.Input\MLEM.Input.FNA.csproj", "{AB5EEA09-6373-4742-B809-2A348CDDB869}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -66,5 +68,9 @@ Global {0B410591-3AED-4C82-A07A-516FF493709B}.Debug|Any CPU.Build.0 = Debug|Any CPU {0B410591-3AED-4C82-A07A-516FF493709B}.Release|Any CPU.ActiveCfg = Release|Any CPU {0B410591-3AED-4C82-A07A-516FF493709B}.Release|Any CPU.Build.0 = Release|Any CPU + {AB5EEA09-6373-4742-B809-2A348CDDB869}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {AB5EEA09-6373-4742-B809-2A348CDDB869}.Debug|Any CPU.Build.0 = Debug|Any CPU + {AB5EEA09-6373-4742-B809-2A348CDDB869}.Release|Any CPU.ActiveCfg = Release|Any CPU + {AB5EEA09-6373-4742-B809-2A348CDDB869}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection EndGlobal diff --git a/MLEM/Input/GamepadExtensions.cs b/MLEM.Input/GamepadExtensions.cs similarity index 100% rename from MLEM/Input/GamepadExtensions.cs rename to MLEM.Input/GamepadExtensions.cs diff --git a/MLEM/Input/GenericInput.cs b/MLEM.Input/GenericInput.cs similarity index 100% rename from MLEM/Input/GenericInput.cs rename to MLEM.Input/GenericInput.cs diff --git a/MLEM/Input/InputHandler.cs b/MLEM.Input/InputHandler.cs similarity index 100% rename from MLEM/Input/InputHandler.cs rename to MLEM.Input/InputHandler.cs diff --git a/MLEM/Input/Keybind.cs b/MLEM.Input/Keybind.cs similarity index 100% rename from MLEM/Input/Keybind.cs rename to MLEM.Input/Keybind.cs diff --git a/MLEM/Input/KeysExtensions.cs b/MLEM.Input/KeysExtensions.cs similarity index 100% rename from MLEM/Input/KeysExtensions.cs rename to MLEM.Input/KeysExtensions.cs diff --git a/MLEM.Input/MLEM.Input.FNA.csproj b/MLEM.Input/MLEM.Input.FNA.csproj new file mode 100644 index 0000000..73e6722 --- /dev/null +++ b/MLEM.Input/MLEM.Input.FNA.csproj @@ -0,0 +1,34 @@ + + + netstandard2.0 + true + true + MLEM.Input + $(DefineConstants);FNA + + + + Ellpeck + Simple input handling for FNA, including a unified way to query mouse, keyboard, gamepad and touch input, a simple keybind system, and a text input field abstraction. + See the full changelog at https://mlem.ellpeck.de/CHANGELOG + fna input handler keybind mouse keyboard gamepad touch ellpeck mlem utility extensions + https://mlem.ellpeck.de/ + https://github.com/Ellpeck/MLEM + MIT + Logo.png + README.md + + + + + + + all + + + + + + + + diff --git a/MLEM.Input/MLEM.Input.csproj b/MLEM.Input/MLEM.Input.csproj new file mode 100644 index 0000000..50c9612 --- /dev/null +++ b/MLEM.Input/MLEM.Input.csproj @@ -0,0 +1,32 @@ + + + netstandard2.0 + true + true + + + + Ellpeck + Simple input handling for MonoGame, including a unified way to query mouse, keyboard, gamepad and touch input, a simple keybind system, and a text input field abstraction. + See the full changelog at https://mlem.ellpeck.de/CHANGELOG + monogame input handler keybind mouse keyboard gamepad touch ellpeck mlem utility extensions + https://mlem.ellpeck.de/ + https://github.com/Ellpeck/MLEM + MIT + Logo.png + README.md + + + + + + + all + + + + + + + + diff --git a/MLEM/Input/MouseExtensions.cs b/MLEM.Input/MouseExtensions.cs similarity index 100% rename from MLEM/Input/MouseExtensions.cs rename to MLEM.Input/MouseExtensions.cs diff --git a/MLEM/Input/TextInput.cs b/MLEM.Input/TextInput.cs similarity index 100% rename from MLEM/Input/TextInput.cs rename to MLEM.Input/TextInput.cs diff --git a/MLEM.Startup/MLEM.Startup.FNA.csproj b/MLEM.Startup/MLEM.Startup.FNA.csproj index 57e5474..8601124 100644 --- a/MLEM.Startup/MLEM.Startup.FNA.csproj +++ b/MLEM.Startup/MLEM.Startup.FNA.csproj @@ -23,7 +23,6 @@ - all diff --git a/MLEM.Startup/MLEM.Startup.csproj b/MLEM.Startup/MLEM.Startup.csproj index 95db618..1b948f8 100644 --- a/MLEM.Startup/MLEM.Startup.csproj +++ b/MLEM.Startup/MLEM.Startup.csproj @@ -1,11 +1,11 @@  - + netstandard2.0 true true - + Ellpeck MLEM Library for Extending MonoGame combined with some other useful libraries into a quick Game startup class @@ -17,17 +17,16 @@ Logo.png README.md - + - - + all - + diff --git a/MLEM.Ui/MLEM.Ui.FNA.csproj b/MLEM.Ui/MLEM.Ui.FNA.csproj index 23f0414..accc640 100644 --- a/MLEM.Ui/MLEM.Ui.FNA.csproj +++ b/MLEM.Ui/MLEM.Ui.FNA.csproj @@ -21,7 +21,7 @@ - + all diff --git a/MLEM.Ui/MLEM.Ui.csproj b/MLEM.Ui/MLEM.Ui.csproj index e9aecaa..03a0b71 100644 --- a/MLEM.Ui/MLEM.Ui.csproj +++ b/MLEM.Ui/MLEM.Ui.csproj @@ -4,7 +4,7 @@ true true - + Ellpeck A mouse, keyboard, gamepad and touch ready Ui system for MonoGame that features automatic anchoring, sizing and several ready-to-use element types @@ -16,18 +16,18 @@ Logo.png README.md - + - - + + all - + - \ No newline at end of file + diff --git a/MLEM.sln b/MLEM.sln index 40fe144..47e35b2 100644 --- a/MLEM.sln +++ b/MLEM.sln @@ -22,6 +22,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Demos.Android", "Demos.Andr EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests", "Tests\Tests.csproj", "{53D52C3F-67FB-4F32-A794-EAB140BBFC11}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MLEM.Input", "MLEM.Input\MLEM.Input.csproj", "{34C0707B-1B0A-437E-9536-39EC7012C1B5}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -72,5 +74,9 @@ Global {53D52C3F-67FB-4F32-A794-EAB140BBFC11}.Debug|Any CPU.Build.0 = Debug|Any CPU {53D52C3F-67FB-4F32-A794-EAB140BBFC11}.Release|Any CPU.ActiveCfg = Release|Any CPU {53D52C3F-67FB-4F32-A794-EAB140BBFC11}.Release|Any CPU.Build.0 = Release|Any CPU + {34C0707B-1B0A-437E-9536-39EC7012C1B5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {34C0707B-1B0A-437E-9536-39EC7012C1B5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {34C0707B-1B0A-437E-9536-39EC7012C1B5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {34C0707B-1B0A-437E-9536-39EC7012C1B5}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection EndGlobal diff --git a/README.md b/README.md index 6c1e035..f838a88 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,8 @@ # Packages - **MLEM** is the base package, which provides extension methods and additional features for MonoGame and FNA -- **MLEM.Ui** features a mouse, keyboard, gamepad and touch ready Ui system that features automatic anchoring, sizing and several ready-to-use element types +- **MLEM.Input** features simple input handling for MonoGame, including a unified way to query mouse, keyboard, gamepad and touch input, a simple keybind system, and a text input field abstraction +- **MLEM.Ui** includes a mouse, keyboard, gamepad and touch ready Ui system that features automatic anchoring, sizing and several ready-to-use element types - **MLEM.Extended** ties in with MonoGame.Extended and other MonoGame and FNA libraries - **MLEM.Data** provides simple loading and processing of textures and other data, including the ability to load non-XNB content files easily - **MLEM.Startup** combines MLEM with some other useful libraries into a quick Game startup class