mirror of
https://github.com/vodemn/m3_lightmeter.git
synced 2025-03-12 13:20:42 +00:00
indicate push/pull
This commit is contained in:
parent
0d530b240b
commit
f1d58e839d
5 changed files with 35 additions and 5 deletions
|
@ -41,6 +41,8 @@
|
||||||
"meteringScreenFeatureFilmPicker": "Film picker",
|
"meteringScreenFeatureFilmPicker": "Film picker",
|
||||||
"meteringScreenFeatureHistogram": "Histogram",
|
"meteringScreenFeatureHistogram": "Histogram",
|
||||||
"film": "Film",
|
"film": "Film",
|
||||||
|
"filmPush": "Film (push)",
|
||||||
|
"filmPull": "Film (pull)",
|
||||||
"equipment": "Equipment",
|
"equipment": "Equipment",
|
||||||
"equipmentProfileName": "Equipment profile name",
|
"equipmentProfileName": "Equipment profile name",
|
||||||
"equipmentProfileNameHint": "Praktica MTL5B",
|
"equipmentProfileNameHint": "Praktica MTL5B",
|
||||||
|
|
|
@ -41,6 +41,8 @@
|
||||||
"meteringScreenFeatureFilmPicker": "Sélecteur de film",
|
"meteringScreenFeatureFilmPicker": "Sélecteur de film",
|
||||||
"meteringScreenFeatureHistogram": "Histogramme",
|
"meteringScreenFeatureHistogram": "Histogramme",
|
||||||
"film": "Pellicule",
|
"film": "Pellicule",
|
||||||
|
"filmPush": "Pellicule (push)",
|
||||||
|
"filmPull": "Pellicule (pull)",
|
||||||
"equipment": "Équipement",
|
"equipment": "Équipement",
|
||||||
"equipmentProfileName": "Nom du profil de l'équipement",
|
"equipmentProfileName": "Nom du profil de l'équipement",
|
||||||
"tapToAdd": "Appuie pour ajouter",
|
"tapToAdd": "Appuie pour ajouter",
|
||||||
|
|
|
@ -41,6 +41,8 @@
|
||||||
"meteringScreenFeatureFilmPicker": "Выбор пленки",
|
"meteringScreenFeatureFilmPicker": "Выбор пленки",
|
||||||
"meteringScreenFeatureHistogram": "Гистограмма",
|
"meteringScreenFeatureHistogram": "Гистограмма",
|
||||||
"film": "Пленка",
|
"film": "Пленка",
|
||||||
|
"filmPush": "Пленка (push)",
|
||||||
|
"filmPull": "Пленка (pull)",
|
||||||
"equipment": "Оборудование",
|
"equipment": "Оборудование",
|
||||||
"equipmentProfileName": "Название профиля",
|
"equipmentProfileName": "Название профиля",
|
||||||
"equipmentProfileNameHint": "Praktica MTL5B",
|
"equipmentProfileNameHint": "Praktica MTL5B",
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
"thirdStops": "1/3",
|
"thirdStops": "1/3",
|
||||||
"calibration": "校准",
|
"calibration": "校准",
|
||||||
"calibrationMessage": "此应用测量读数的准确性完全取决于设备的硬件。因此,请考虑测试此应用并手动设置 EV 校准,以获得准确的测量结果。",
|
"calibrationMessage": "此应用测量读数的准确性完全取决于设备的硬件。因此,请考虑测试此应用并手动设置 EV 校准,以获得准确的测量结果。",
|
||||||
"calibrationMessageCameraOnly": "此应用程序测量读数的准确性完全取决于设备的后置摄像头。因此,请考虑测试此应用并手动设置 EV 校准,以获得准确的测量结果。",
|
"calibrationMessageCameraOnly": "此应用程序测量读数的准确s性完全取决于设备的后置摄像头。因此,请考虑测试此应用并手动设置 EV 校准,以获得准确的测量结果。",
|
||||||
"camera": "摄像头",
|
"camera": "摄像头",
|
||||||
"lightSensor": "光传感器",
|
"lightSensor": "光传感器",
|
||||||
"meteringScreenLayout": "布局",
|
"meteringScreenLayout": "布局",
|
||||||
|
@ -41,6 +41,8 @@
|
||||||
"meteringScreenFeatureFilmPicker": "胶片选择",
|
"meteringScreenFeatureFilmPicker": "胶片选择",
|
||||||
"meteringScreenFeatureHistogram": "直方图",
|
"meteringScreenFeatureHistogram": "直方图",
|
||||||
"film": "胶片",
|
"film": "胶片",
|
||||||
|
"filmPush": "胶片 (push)",
|
||||||
|
"filmPull": "胶片 (pull)",
|
||||||
"equipment": "设备",
|
"equipment": "设备",
|
||||||
"equipmentProfileName": "设备配置名称",
|
"equipmentProfileName": "设备配置名称",
|
||||||
"equipmentProfileNameHint": "Praktica MTL5B",
|
"equipmentProfileNameHint": "Praktica MTL5B",
|
||||||
|
|
|
@ -61,7 +61,7 @@ class ReadingsContainer extends StatelessWidget {
|
||||||
context,
|
context,
|
||||||
MeteringScreenLayoutFeature.filmPicker,
|
MeteringScreenLayoutFeature.filmPicker,
|
||||||
)) ...[
|
)) ...[
|
||||||
const _FilmPicker(),
|
_FilmPicker(selectedIso: iso),
|
||||||
const _InnerPadding(),
|
const _InnerPadding(),
|
||||||
],
|
],
|
||||||
Row(
|
Row(
|
||||||
|
@ -117,7 +117,9 @@ class _EquipmentProfilePicker extends StatelessWidget {
|
||||||
}
|
}
|
||||||
|
|
||||||
class _FilmPicker extends StatelessWidget {
|
class _FilmPicker extends StatelessWidget {
|
||||||
const _FilmPicker();
|
final IsoValue selectedIso;
|
||||||
|
|
||||||
|
const _FilmPicker({required this.selectedIso});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
@ -130,7 +132,7 @@ class _FilmPicker extends StatelessWidget {
|
||||||
onChanged: FilmsProvider.of(context).setFilm,
|
onChanged: FilmsProvider.of(context).setFilm,
|
||||||
closedChild: ReadingValueContainer.singleValue(
|
closedChild: ReadingValueContainer.singleValue(
|
||||||
value: ReadingValue(
|
value: ReadingValue(
|
||||||
label: S.of(context).film,
|
label: _label(context),
|
||||||
value: Films.selectedOf(context).name.isEmpty
|
value: Films.selectedOf(context).name.isEmpty
|
||||||
? S.of(context).none
|
? S.of(context).none
|
||||||
: Films.selectedOf(context).name,
|
: Films.selectedOf(context).name,
|
||||||
|
@ -138,6 +140,26 @@ class _FilmPicker extends StatelessWidget {
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String _label(BuildContext context) {
|
||||||
|
if (Films.selectedOf(context) == const Film.other() ||
|
||||||
|
Films.selectedOf(context).iso == selectedIso.value) {
|
||||||
|
return S.of(context).film;
|
||||||
|
}
|
||||||
|
|
||||||
|
final evDiff = IsoValue(
|
||||||
|
Films.selectedOf(context).iso,
|
||||||
|
StopType.full,
|
||||||
|
).difference(selectedIso);
|
||||||
|
|
||||||
|
if (evDiff > 0) {
|
||||||
|
return S.of(context).filmPush;
|
||||||
|
} else if (evDiff < 0) {
|
||||||
|
return S.of(context).filmPull;
|
||||||
|
} else {
|
||||||
|
return S.of(context).film;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class _IsoValuePicker extends StatelessWidget {
|
class _IsoValuePicker extends StatelessWidget {
|
||||||
|
|
Loading…
Reference in a new issue