See documentation in D2230.
See Philip comments about GUIutil.h being ugly and should be rewritten in rP22789#36910.
See rP22790 noticed when writing this commit.
- Move static GUI<>::SetSetting operating on IGUIObject to IGUIObject::SetSetting member function, near SettingExists, GetSetting, AddSetting.
- Stop using PSRETURN codes for these functions, since there is no benefit over if-SettingExists checks or std::map exceptions, while they made the code uglier.
- Remove SetSettingWrap std::function argument by removing the need for it (removing the exception code inside it). Rename to SetSettingChanged.
- Rename existing SetSetting to SetSettingFromString. That there are two functions called SetSetting shows yet again that the previous split of setting functions was wrong.
- Change SkipMessage to SendMessage, so that a positive value relates to a positive action.
- Remove default values, see D2211/rP22785 and other historic commits.
- Add SendMessage parameter to CGUISetting functions.
14:20 <@Philip-> which is why it's in GUIutil.h
14:21 <@Philip-> (I think it's fairly ugly)
14:22 <@Philip-> (but not enough to motivate me to rewrite it)