Skip to content
Snippets Groups Projects
settings_global.dart 908 B
Newer Older
  • Learn to ignore specific revisions
  • import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
    
    
    import 'package:midisynth/config/default_global_settings.dart';
    
    class GlobalSettings {
      String skin;
    
      GlobalSettings({
        required this.skin,
      });
    
      static String getSkinValueFromUnsafe(String skin) {
        if (DefaultGlobalSettings.allowedSkinValues.contains(skin)) {
          return skin;
        }
    
        return DefaultGlobalSettings.defaultSkinValue;
      }
    
      factory GlobalSettings.createDefault() {
        return GlobalSettings(
          skin: DefaultGlobalSettings.defaultSkinValue,
        );
      }
    
      void dump() {
        printlog('$GlobalSettings:');
        printlog('  ${DefaultGlobalSettings.parameterCodeSkin}: $skin');
        printlog('');
      }
    
      @override
      String toString() {
        return '$GlobalSettings(${toJson()})';
      }
    
      Map<String, dynamic>? toJson() {
        return <String, dynamic>{
          DefaultGlobalSettings.parameterCodeSkin: skin,
        };
      }
    }