- [NEW] Afegides funcions pa guardar i carregar del arxiu de configuració enters, floats i bools, a més de cadenes que ja estaven.

- [NEW] Ja guarda i recupera la configuració de zoom, fullscreen i shader.
This commit is contained in:
2025-07-02 10:26:08 +02:00
parent b403dbad52
commit 4670b52378
4 changed files with 59 additions and 9 deletions

View File

@@ -207,7 +207,7 @@ namespace file
}
}
const char* getConfigValue(const char *key) {
const char* getConfigValueString(const char *key) {
if (config.empty()) loadConfigValues();
for (auto pair : config) {
if (pair.key == std::string(key)) {
@@ -218,7 +218,28 @@ namespace file
return NULL;
}
void setConfigValue(const char* key, const char* value) {
const int getConfigValueInteger(const char *key, const int default_value)
{
const char* value = getConfigValueString(key);
if (!value) return default_value;
return atoi(value);
}
const float getConfigValueFloat(const char *key, const float default_value)
{
const char* value = getConfigValueString(key);
if (!value) return default_value;
return atof(value);
}
const bool getConfigValueBool(const char *key, const bool default_value)
{
const char* value = getConfigValueString(key);
if (!value) return default_value;
return strcmp(value, "true")==0?true:false;
}
void setConfigValueString(const char* key, const char* value) {
if (config.empty()) loadConfigValues();
for (auto &pair : config) {
if (pair.key == std::string(key)) {
@@ -231,4 +252,24 @@ namespace file
saveConfigValues();
return;
}
void setConfigValueInteger(const char* key, const int value)
{
char tmp[256];
sprintf(tmp, "%i", value);
setConfigValueString(key, tmp);
}
void setConfigValueFloat(const char* key, const float value)
{
char tmp[256];
sprintf(tmp, "%.2f", value);
setConfigValueString(key, tmp);
}
void setConfigValueBool(const char* key, const bool value)
{
setConfigValueString(key, value?"true":"false");
}
}