m3_lightmeter/lib/interactors/metering_interactor.dart

29 lines
900 B
Dart
Raw Permalink Normal View History

import 'package:lightmeter/data/haptics_service.dart';
import 'package:lightmeter/data/shared_prefs_service.dart';
2023-01-25 18:58:29 +00:00
class MeteringInteractor {
final UserPreferencesService _userPreferencesService;
final HapticsService _hapticsService;
2023-01-25 18:58:29 +00:00
const MeteringInteractor(
this._userPreferencesService,
this._hapticsService,
);
double get cameraEvCalibration => _userPreferencesService.cameraEvCalibration;
2023-01-25 18:58:29 +00:00
bool get isHapticsEnabled => _userPreferencesService.haptics;
/// Executes vibration if haptics are enabled in settings
void quickVibration() {
if (_userPreferencesService.haptics) _hapticsService.quickVibration();
}
/// Executes vibration if haptics are enabled in settings
void responseVibration() {
if (_userPreferencesService.haptics) _hapticsService.responseVibration();
}
void enableHaptics(bool enable) => _userPreferencesService.haptics = enable;
}