* Adding in morphball profiles.
* Fixing bug where profile didn't load immediately when selecting the profile nor when saving the current profile.
* One last change to remove leftover code.
* Fixing coding standard issues. Moved morphball profile switch into a function in PrimeUtils to more consistent with Primehack, per PR request.
* Adding support for the PrimeHack tab on the standard "Emulated Wiimote" controller GUI.
* Quick rename to "Morphball Profile" on Metroid Wiimote controller just for uniformity with the standard Emulated Wiimote controller menu.
* Updating support for Morphball Profile to work on all the Wii versions of Metroid Prime series.
* Fixed bugs made when rushing... Yeah!
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
casting a value to a u32 when it's originally an int, and it's exposed as int to users,
could end up in cases where a negative number would result as a positive one.
This doesn't really affect the value range of the attachment enum,
still I think the code was wrong.
Heavily tested.
NumericSettings support a max, so let's use it.
It might not do much now, but the max and min values will be used to give visual feeback
in the UI in one of my upcoming input PRs
The control expression editor allows line breaks, but the serialization was
losing anything after the first line break (/r /n).
Instead of opting to encode them and decode them on serialization
(which I tried but was not safe, as it would lose /n written in the string by users),
I opted to replace them with a space.
While having motion control emulation of IR enabled by default
makes sense in situations like using a DualShock 4 on a PC,
Android has the additional option of touch emulation of IR
which seems to be better liked, and the default value which
was chosen with PC in mind was carried over to Android
without any particular consideration. This change disables
motion control emulation of IR by default on Android only.