Activate Attachment Picker Dialog with a New Field (Pick From Files)

main_design2.0
zaid_daoud 2 years ago
parent 1eaf9a21fa
commit d277a28f54

@ -202,5 +202,6 @@
"department": "قسم",
"room": "غرفه",
"actions": "اجراءات",
"deviceFiles": "ملفات الجهاز"
"deviceFiles": "ملفات الجهاز",
"pickFromFiles" : "اختر من الملفات"
}

@ -202,5 +202,6 @@
"department": "Department",
"room": "Room",
"actions": "Actions",
"deviceFiles": "Asset Files"
"deviceFiles": "Asset Files",
"pickFromFiles" : "Pick From Files"
}

@ -237,6 +237,7 @@ class Subtitle {
String department;
String room;
String actions;
String pickFromFiles;
void setIssues(List<String> issues) {
issues.clear();
@ -449,6 +450,7 @@ class Subtitle {
@required this.department,
@required this.room,
@required this.actions,
@required this.pickFromFiles,
});
factory Subtitle.fromJson(Map<String, dynamic> parsedJson) {
@ -654,6 +656,7 @@ class Subtitle {
department: parsedJson["department"],
room: parsedJson["room"],
actions: parsedJson["actions"],
pickFromFiles: parsedJson["pickFromFiles"],
);
}
}

@ -143,7 +143,7 @@ class _MultiFilesPickerState extends State<MultiFilesPicker> with TickerProvider
);
}
onFilePicker(Subtitle subtitle) async {
fromFilePicker(Subtitle subtitle) async {
FilePickerResult result = await FilePicker.platform.pickFiles(
type: FileType.custom,
allowMultiple: true,
@ -157,29 +157,37 @@ class _MultiFilesPickerState extends State<MultiFilesPicker> with TickerProvider
}
}
onImagePick(Subtitle subtitle) async {
onFilePicker(Subtitle subtitle) async {
if (widget.files.length >= 5) {
Fluttertoast.showToast(msg: subtitle.maxImagesNumberIs5);
return;
}
ImageSource source = await showDialog(
context: context,
builder: (dialogContext) => CupertinoAlertDialog(
actions: <Widget>[
TextButton(
child: Text(subtitle.pickFromCamera),
onPressed: () {
Navigator.of(dialogContext).pop(ImageSource.camera);
},
),
TextButton(
child: Text(subtitle.pickFromGallery),
onPressed: () {
Navigator.of(dialogContext).pop(ImageSource.gallery);
},
),
],
));
context: context,
builder: (dialogContext) => CupertinoAlertDialog(
actions: <Widget>[
TextButton(
child: Text(subtitle.pickFromCamera),
onPressed: () {
Navigator.of(dialogContext).pop(ImageSource.camera);
},
),
TextButton(
child: Text(subtitle.pickFromGallery),
onPressed: () {
Navigator.of(dialogContext).pop(ImageSource.gallery);
},
),
TextButton(
child: Text(subtitle.pickFromFiles),
onPressed: () async {
await fromFilePicker(subtitle);
Navigator.pop(context);
},
),
],
),
);
if (source == null) return;
final pickedFile = await ImagePicker().pickImage(source: source, imageQuality: 70, maxWidth: 800, maxHeight: 800);

Loading…
Cancel
Save