add image in update image

This commit is contained in:
Valentin CZERYBA 2024-09-01 22:27:18 +02:00
parent 70d18ea980
commit 99fbdfae89
2 changed files with 12 additions and 6 deletions

View File

@ -84,7 +84,7 @@ class DisplayPictureScreenState extends State<DisplayPictureScreen>
"L'IA de Google n'a pas su analyser l'image. Recommecer avec une autre");
}
Future<void> searchEvents(String json) async {
Future<void> searchEvents(String json, String imagePath) async {
print(json);
SharedPreferences prefs = await SharedPreferences.getInstance();
@ -105,7 +105,8 @@ class DisplayPictureScreenState extends State<DisplayPictureScreen>
Navigator.push(
context,
MaterialPageRoute(
builder: (_) => UpdateeventImage(events: jsonData)));
builder: (_) => UpdateeventImage(
events: jsonData, imagePath: imagePath)));
} else {
Navigator.push(
context,
@ -134,7 +135,8 @@ class DisplayPictureScreenState extends State<DisplayPictureScreen>
"Peux-tu donner le nom, la date avec l'année actuelle ou d'une année future proche et le lieu de l'évènement sous format JSON avec les valeurs suivantes : name, address, city, zip_code, country, date sous le format en YYYY-MM-DD HH:mm:ssZ, et sans la présence du mot json dans la chaîne de caractère",
images: [file.readAsBytesSync()],
modelName: "models/gemini-1.5-pro-latest")
.then((value) => searchEvents(value?.content?.parts?.last.text ?? ''))
.then((value) => searchEvents(
value?.content?.parts?.last.text ?? '', widget.imagePath))
.catchError((e) => displayError);
}

View File

@ -22,18 +22,22 @@ void main() {
class MyApp extends StatelessWidget {
Map<String, dynamic> events = {};
String imagePath = "";
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: UpdateeventImage(events: events),
home: UpdateeventImage(events: events, imagePath: imagePath),
);
}
}
class UpdateeventImage extends StatefulWidget {
const UpdateeventImage({Key? key, required this.events}) : super(key: key);
const UpdateeventImage(
{Key? key, required this.events, required this.imagePath})
: super(key: key);
final Map<String, dynamic> events;
final String imagePath;
@override
_UpdateeventImageState createState() => _UpdateeventImageState();
@ -210,7 +214,7 @@ class _UpdateeventImageState extends State<UpdateeventImage>
decoration: BoxDecoration(
color: Colors.red,
borderRadius: BorderRadius.circular(50.0)),
child: Image.asset('./images/flutter.png')),
child: Image.file(File(widget.imagePath))),
),
),
Padding(