Skip to content
Snippets Groups Projects
Select Git revision
  • 409cbfdc9c107cdabe1e0e7af87c460da9e8ec38
  • master default protected
  • 27-improve-app-metadata
  • 6-fix-display-grid
  • Release_1.9.1_39 protected
  • Release_1.9.0_38 protected
  • Release_1.8.2_37 protected
  • Release_1.8.1_36 protected
  • Release_1.8.0_35 protected
  • Release_1.7.0_34 protected
  • Release_1.6.0_33 protected
  • Release_1.5.0_32 protected
  • Release_1.4.3_31 protected
  • Release_1.4.2_30 protected
  • Release_1.4.1_29 protected
  • Release_1.4.0_28 protected
  • Release_1.3.1_27 protected
  • Release_1.3.0_26 protected
  • Release_1.2.1_25 protected
  • Release_1.2.0_24 protected
  • Release_1.1.0_23 protected
  • Release_1.0.21_22 protected
  • Release_1.0.20_21 protected
  • Release_1.0.19_20 protected
24 results

settings_activity.dart

Blame
  • settings_activity.dart 1.39 KiB
    import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
    
    import 'package:puissance4/config/default_activity_settings.dart';
    
    class ActivitySettings {
      final String gameMode;
      final String size;
    
      ActivitySettings({
        required this.gameMode,
        required this.size,
      });
    
      static String getGameModeValueFromUnsafe(String gameMode) {
        if (DefaultActivitySettings.allowedGameModeValues.contains(gameMode)) {
          return gameMode;
        }
    
        return DefaultActivitySettings.defaultGameModeValue;
      }
    
      static String getSizeValueFromUnsafe(String size) {
        if (DefaultActivitySettings.allowedSizeValues.contains(size)) {
          return size;
        }
    
        return DefaultActivitySettings.defaultSizeValue;
      }
    
      factory ActivitySettings.createDefault() {
        return ActivitySettings(
          gameMode: DefaultActivitySettings.defaultGameModeValue,
          size: DefaultActivitySettings.defaultSizeValue,
        );
      }
    
      void dump() {
        printlog('$ActivitySettings:');
        printlog('  ${DefaultActivitySettings.parameterCodeGameMode}: $gameMode');
        printlog('  ${DefaultActivitySettings.parameterCodeSize}: $size');
        printlog('');
      }
    
      @override
      String toString() {
        return '$ActivitySettings(${toJson()})';
      }
    
      Map<String, dynamic>? toJson() {
        return <String, dynamic>{
          DefaultActivitySettings.parameterCodeGameMode: gameMode,
          DefaultActivitySettings.parameterCodeSize: size,
        };
      }
    }