Skip to content
Snippets Groups Projects
Select Git revision
  • 1f147468154d7066e36934b565510d225148ed6f
  • master default protected
  • 47-upgrade-framework-and-dependencies
  • 21-improve-app-metadata
  • Release_0.9.0_40 protected
  • Release_0.8.2_39 protected
  • Release_0.8.1_38 protected
  • Release_0.8.0_37 protected
  • Release_0.7.0_36 protected
  • Release_0.6.0_35 protected
  • Release_0.5.0_34 protected
  • Release_0.4.2_33 protected
  • Release_0.4.1_32 protected
  • Release_0.4.0_31 protected
  • Release_0.3.1_30 protected
  • Release_0.3.0_29 protected
  • Release_0.2.1_28 protected
  • Release_0.2.0_27 protected
  • Release_0.1.2_26 protected
  • Release_0.1.1_25 protected
  • Release_0.1.0_24 protected
  • Release_0.0.23_23 protected
  • Release_0.0.22_22 protected
  • Release_0.0.21_21 protected
24 results

theme_state.dart

Blame
  • settings_global_cubit.dart 1.99 KiB
    import 'package:equatable/equatable.dart';
    import 'package:flutter/material.dart';
    import 'package:hydrated_bloc/hydrated_bloc.dart';
    
    import 'package:jeweled/models/settings_global.dart';
    import 'package:jeweled/utils/tools.dart';
    
    part 'settings_global_state.dart';
    
    class GlobalSettingsCubit extends HydratedCubit<GlobalSettingsState> {
      GlobalSettingsCubit() : super(GlobalSettingsState(settings: GlobalSettings.createDefault()));
    
      void setValues({
        int? colorsTheme,
        int? graphicTheme,
      }) {
        emit(
          GlobalSettingsState(
            settings: GlobalSettings(
              colorsTheme: colorsTheme ?? state.settings.colorsTheme,
              graphicTheme: graphicTheme ?? state.settings.graphicTheme,
            ),
          ),
        );
      }
    
      int getParameterValue(String code) {
        switch (code) {
          case 'colorsTheme':
            return GlobalSettings.getColorsThemeValueFromUnsafe(state.settings.colorsTheme);
          case 'graphicTheme':
            return GlobalSettings.getGraphicThemeValueFromUnsafe(state.settings.graphicTheme);
        }
        return 0;
      }
    
      void setParameterValue(String code, int value) {
        printlog('GlobalSettingsCubit.setParameterValue');
        printlog('code: $code  / value: $value');
    
        int colorsTheme = code == 'colorsTheme' ? value : getParameterValue('colorsTheme');
        int graphicTheme = code == 'graphicTheme' ? value : getParameterValue('graphicTheme');
    
        setValues(
          colorsTheme: colorsTheme,
          graphicTheme: graphicTheme,
        );
      }
    
      @override
      GlobalSettingsState? fromJson(Map<String, dynamic> json) {
        int colorsTheme = json['colorsTheme'] as int;
        int graphicTheme = json['graphicTheme'] as int;
    
        return GlobalSettingsState(
          settings: GlobalSettings(
            colorsTheme: colorsTheme,
            graphicTheme: graphicTheme,
          ),
        );
      }
    
      @override
      Map<String, dynamic>? toJson(GlobalSettingsState state) {
        return <String, dynamic>{
          'colorsTheme': state.settings.colorsTheme,
          'graphicTheme': state.settings.graphicTheme,
        };
      }
    }