0ad/source/gui/SettingTypes
wraitii 8b08f4ae7a Change GUI settings to explicitly be member variables.
Completes work starting in D2313 / a33fd55e81:
- Make C++ mistakes where values can be changed without messages being
sent easier to notice / harder to do.
- Make the IGUISetting interface more flexible, allowing custom settings
implementing their own logic. This is used to clean up hotkey code
introduced in 33af6da5e1.

Side effects:
- FromJSVal_Vector clears the vector being passed in. I have some vague
memory of not doing that in D24 / 2bae30c454 as an optimisation, but it
seems more like a footgun to me.
- Most usage of SetSettingFromString is replaced by direct method calls,
as we can generally cast to the proper GUI object type. Where we can't,
it is kept as a poor's man virtual dispatch.
- It moves a few member variables elsewhere, e.g. TextOwner now gets its
own member variable settings.

Differential Revision: https://code.wildfiregames.com/D3892
This was SVN commit r25392.
2021-05-06 08:22:37 +00:00
..
CGUIColor.cpp Sort GUI Object types, GUI Object bases and GUI Setting value types into three new folders. 2019-10-02 09:44:00 +00:00
CGUIColor.h Removes implicit default value operator for CGUIColor. 2021-03-27 11:47:49 +00:00
CGUIHotkey.cpp Change GUI settings to explicitly be member variables. 2021-05-06 08:22:37 +00:00
CGUIHotkey.h Change GUI settings to explicitly be member variables. 2021-05-06 08:22:37 +00:00
CGUIList.h Sort GUI Object types, GUI Object bases and GUI Setting value types into three new folders. 2019-10-02 09:44:00 +00:00
CGUISeries.h Sort GUI Object types, GUI Object bases and GUI Setting value types into three new folders. 2019-10-02 09:44:00 +00:00
CGUISize.cpp Improve JS Exception handling. 2020-11-15 18:29:17 +00:00
CGUISize.h Moves CRect from ps to maths to related geometric primitives. 2021-03-30 21:14:36 +00:00
CGUIString.cpp Remove debug code left in d9748173c7 2021-05-02 07:08:40 +00:00
CGUIString.h Generalize icon-specific tooltips to a tag, streamline code. 2021-05-01 12:38:05 +00:00
EAlign.h Moves CSize into a separate file and renames it to CSize2D according to other geometric entities. 2021-03-27 16:08:06 +00:00