config storage
This commit is contained in:
parent
0f7e1a50c9
commit
03fd518e9b
7 changed files with 74 additions and 3 deletions
|
|
@ -7516,6 +7516,9 @@ bool FurnaceGUI::loop() {
|
|||
bool FurnaceGUI::init() {
|
||||
logI("initializing GUI.");
|
||||
|
||||
newFilePicker=new FurnaceFilePicker;
|
||||
newFilePicker->setConfigPrefix("fp_");
|
||||
|
||||
opTouched=new bool[DIV_MAX_PATTERNS*DIV_MAX_ROWS];
|
||||
|
||||
syncState();
|
||||
|
|
@ -7831,8 +7834,6 @@ bool FurnaceGUI::init() {
|
|||
}
|
||||
}
|
||||
|
||||
newFilePicker=new FurnaceFilePicker;
|
||||
|
||||
updateWindowTitle();
|
||||
updateROMExportAvail();
|
||||
|
||||
|
|
@ -8250,6 +8251,8 @@ void FurnaceGUI::syncState() {
|
|||
xyOscThickness=e->getConfFloat("xyOscThickness",2.0f);
|
||||
|
||||
cvHiScore=e->getConfInt("cvHiScore",25000);
|
||||
|
||||
newFilePicker->loadSettings(e->getConfObject());
|
||||
}
|
||||
|
||||
void FurnaceGUI::commitState(DivConfig& conf) {
|
||||
|
|
@ -8414,6 +8417,8 @@ void FurnaceGUI::commitState(DivConfig& conf) {
|
|||
}
|
||||
|
||||
conf.set("cvHiScore",cvHiScore);
|
||||
|
||||
newFilePicker->saveSettings(e->getConfObject());
|
||||
}
|
||||
|
||||
bool FurnaceGUI::finish(bool saveConfig) {
|
||||
|
|
|
|||
|
|
@ -1326,11 +1326,29 @@ FilePickerStatus FurnaceFilePicker::getStatus() {
|
|||
}
|
||||
|
||||
void FurnaceFilePicker::loadSettings(DivConfig& conf) {
|
||||
|
||||
showHiddenFiles=conf.getBool(configPrefix+"showHiddenFiles",true);
|
||||
singleClickSelect=conf.getBool(configPrefix+"singleClickSelect",false);
|
||||
clearSearchOnDirChange=conf.getBool(configPrefix+"clearSearchOnDirChange",false);
|
||||
sortDirsFirst=conf.getBool(configPrefix+"sortDirsFirst",true);
|
||||
displayType=conf.getBool(configPrefix+"displayType",true);
|
||||
displaySize=conf.getBool(configPrefix+"displaySize",true);
|
||||
displayDate=conf.getBool(configPrefix+"displayDate",true);
|
||||
bookmarks=conf.getStringList(configPrefix+"bookmarks",{});
|
||||
}
|
||||
|
||||
void FurnaceFilePicker::saveSettings(DivConfig& conf) {
|
||||
conf.set(configPrefix+"showHiddenFiles",showHiddenFiles);
|
||||
conf.set(configPrefix+"singleClickSelect",singleClickSelect);
|
||||
conf.set(configPrefix+"clearSearchOnDirChange",clearSearchOnDirChange);
|
||||
conf.set(configPrefix+"sortDirsFirst",sortDirsFirst);
|
||||
conf.set(configPrefix+"displayType",displayType);
|
||||
conf.set(configPrefix+"displaySize",displaySize);
|
||||
conf.set(configPrefix+"displayDate",displayDate);
|
||||
conf.set(configPrefix+"bookmarks",bookmarks);
|
||||
}
|
||||
|
||||
void FurnaceFilePicker::setConfigPrefix(String prefix) {
|
||||
configPrefix=prefix;
|
||||
}
|
||||
|
||||
const String& FurnaceFilePicker::getPath() {
|
||||
|
|
|
|||
|
|
@ -127,6 +127,7 @@ class FurnaceFilePicker {
|
|||
bool editingPath;
|
||||
|
||||
// configuration
|
||||
String configPrefix;
|
||||
std::vector<String> bookmarks;
|
||||
bool showHiddenFiles;
|
||||
bool singleClickSelect;
|
||||
|
|
@ -162,6 +163,7 @@ class FurnaceFilePicker {
|
|||
void setTypeStyle(FileType type, ImVec4 color, String icon);
|
||||
void registerType(String ext, ImVec4 color, String icon);
|
||||
void clearTypes();
|
||||
void setConfigPrefix(String prefix);
|
||||
FurnaceFilePicker();
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue