mirror of
https://gitea.wildfiregames.com/0ad/0ad.git
synced 2026-06-21 04:05:32 +00:00
8b08f4ae7a
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 in33af6da5e1. Side effects: - FromJSVal_Vector clears the vector being passed in. I have some vague memory of not doing that in D24 /2bae30c454as 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.