2022-07-25 14:20:07 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#ifndef FF_INCLUDED_common_settings
|
|
|
|
|
#define FF_INCLUDED_common_settings
|
|
|
|
|
|
|
|
|
|
#include "fastfetch.h"
|
|
|
|
|
|
|
|
|
|
typedef enum FFvarianttype
|
|
|
|
|
{
|
|
|
|
|
FF_VARIANT_TYPE_STRING,
|
|
|
|
|
FF_VARIANT_TYPE_BOOL,
|
|
|
|
|
FF_VARIANT_TYPE_INT
|
|
|
|
|
} FFvarianttype;
|
|
|
|
|
|
|
|
|
|
typedef union FFvariant
|
|
|
|
|
{
|
|
|
|
|
const char* strValue;
|
|
|
|
|
int32_t intValue;
|
|
|
|
|
struct
|
|
|
|
|
{
|
|
|
|
|
bool boolValueSet;
|
|
|
|
|
bool boolValue;
|
|
|
|
|
};
|
|
|
|
|
} FFvariant;
|
|
|
|
|
|
2022-07-25 14:45:41 +02:00
|
|
|
#define FF_VARIANT_NULL ((FFvariant){.strValue = NULL})
|
|
|
|
|
|
2022-09-18 15:53:51 +02:00
|
|
|
FFvariant ffSettingsGetDConf(const FFinstance* instance, const char* key, FFvarianttype type);
|
|
|
|
|
FFvariant ffSettingsGetGSettings(const FFinstance* instance, const char* schemaName, const char* path, const char* key, FFvarianttype type);
|
|
|
|
|
FFvariant ffSettingsGet(const FFinstance* instance, const char* dconfKey, const char* gsettingsSchemaName, const char* gsettingsPath, const char* gsettingsKey, FFvarianttype type);
|
|
|
|
|
FFvariant ffSettingsGetXFConf(const FFinstance* instance, const char* channelName, const char* propertyName, FFvarianttype type);
|
2022-07-25 14:20:07 +02:00
|
|
|
|
|
|
|
|
int ffSettingsGetSQLite3Int(const FFinstance* instance, const char* dbPath, const char* query);
|
2023-06-06 18:34:54 +08:00
|
|
|
bool ffSettingsGetSQLite3String(const FFinstance* instance, const char* dbPath, const char* query, FFstrbuf* result);
|
2022-07-25 14:20:07 +02:00
|
|
|
|
|
|
|
|
#ifdef __ANDROID__
|
2022-09-04 12:43:30 +02:00
|
|
|
void ffSettingsGetAndroidProperty(const char* propName, FFstrbuf* result);
|
2023-06-15 10:03:12 +08:00
|
|
|
#elif defined(__FreeBSD__)
|
|
|
|
|
bool ffSettingsGetFreeBSDKenv(const char* propName, FFstrbuf* result);
|
2022-07-25 14:20:07 +02:00
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#endif
|