prepare for color scheme import/export chamges

this includes a small refactor of the settings mechanism
This commit is contained in:
tildearrow 2023-12-21 18:14:28 -05:00
parent 231a76d50b
commit f46aa5cbfd
4 changed files with 451 additions and 420 deletions

View file

@ -468,6 +468,20 @@ enum FurnaceGUIMobileScenes {
GUI_SCENE_OTHER,
};
enum FurnaceGUISettingGroups: unsigned int {
GUI_SETTINGS_GENERAL=1,
GUI_SETTINGS_AUDIO=2,
GUI_SETTINGS_MIDI=4,
GUI_SETTINGS_KEYBOARD=8,
GUI_SETTINGS_BEHAVIOR=16,
GUI_SETTINGS_FONT=32,
GUI_SETTINGS_APPEARANCE=64,
GUI_SETTINGS_LAYOUTS=128,
GUI_SETTINGS_COLOR=256,
GUI_SETTINGS_ALL=0xffffffff
};
enum FurnaceGUIFileDialogs {
GUI_FILE_OPEN,
GUI_FILE_OPEN_BACKUP,
@ -2453,6 +2467,9 @@ class FurnaceGUI {
void resetColors();
void resetKeybinds();
void readConfig(DivConfig& conf, FurnaceGUISettingGroups groups=GUI_SETTINGS_ALL);
void writeConfig(DivConfig& conf, FurnaceGUISettingGroups groups=GUI_SETTINGS_ALL);
void syncSettings();
void commitSettings();
void syncTutorial();