m3_lightmeter/lib/screens/metering/communication/state_communication_metering.dart
Vadim ec9ba1a779
ML-58 Metering UX improvements (#63)
* indicate EV value error

* allow nullable ev100 in `CameraContainerBloc`

* log exif keys

* wip

* removed `UserPreferencesService` from `MeteringBloc`

* added error toast

* conflicts

* lints

* allow stop metering if `hasError`

* fixed `AnimatedDialogPicker` inability to close

* Update build.gradle
2023-05-16 11:47:53 +02:00

33 lines
718 B
Dart

abstract class MeteringCommunicationState {
const MeteringCommunicationState();
}
class InitState extends MeteringCommunicationState {
const InitState();
}
abstract class SourceState extends MeteringCommunicationState {
const SourceState();
}
abstract class ScreenState extends MeteringCommunicationState {
const ScreenState();
}
class MeasureState extends SourceState {
const MeasureState();
}
abstract class MeasuredState extends ScreenState {
final double? ev100;
const MeasuredState(this.ev100);
}
class MeteringInProgressState extends MeasuredState {
const MeteringInProgressState(super.ev100);
}
class MeteringEndedState extends MeasuredState {
const MeteringEndedState(super.ev100);
}