Select Git revision
pubspec.yaml
-
Benoît Harrault authoredBenoît Harrault authored
settings_global.dart 1.51 KiB
import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
import 'package:jeweled/config/default_global_settings.dart';
class GlobalSettings {
final String colorsTheme;
final String graphicTheme;
GlobalSettings({
required this.colorsTheme,
required this.graphicTheme,
});
static String getColorsThemeValueFromUnsafe(String colorsTheme) {
if (DefaultGlobalSettings.allowedColorsThemeValues.contains(colorsTheme)) {
return colorsTheme;
}
return DefaultGlobalSettings.defaultColorsThemeValue;
}
static String getGraphicThemeValueFromUnsafe(String graphicTheme) {
if (DefaultGlobalSettings.allowedGraphicThemeValues.contains(graphicTheme)) {
return graphicTheme;
}
return DefaultGlobalSettings.defaultGraphicThemeValue;
}
factory GlobalSettings.createDefault() {
return GlobalSettings(
colorsTheme: DefaultGlobalSettings.defaultColorsThemeValue,
graphicTheme: DefaultGlobalSettings.defaultGraphicThemeValue,
);
}
void dump() {
printlog('$GlobalSettings:');
printlog(' ${DefaultGlobalSettings.parameterCodeColorsTheme}: $colorsTheme');
printlog(' ${DefaultGlobalSettings.parameterCodeGraphicsTheme}: $graphicTheme');
printlog('');
}
@override
String toString() {
return '$GlobalSettings(${toJson()})';
}
Map<String, dynamic>? toJson() {
return <String, dynamic>{
DefaultGlobalSettings.parameterCodeColorsTheme: colorsTheme,
DefaultGlobalSettings.parameterCodeGraphicsTheme: graphicTheme,
};
}
}