import 'dart:io';
import 'package:flutter/services.dart';
import 'package:path/path.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:image_picker/image_picker.dart';
import 'package:path_provider/path_provider.dart';
import 'package:woofnwalk/widgets/profileWidget.dart';
import 'package:woofnwalk/widgets/textFieldWidget.dart';
import '../model/user.dart';
import '../model/userPreferences.dart';
import 'package:woofnwalk/widgets/nav_drawer.dart';
class EditProfile extends StatefulWidget{
@override
_EditProfileState createState() => _EditProfileState();
}
class _EditProfileState extends State<EditProfile>{
User user = UserPreferences.myUser;
//final imagePicker = ImagePicker();
late String image = 'images/dogProfile.png';
//File? _image = 'images/dogProfile.png' as File?;
Future getImageWithCamera() async {
//PickedFile? pickedFile =
final pickedFile = await ImagePicker.platform.getImage(source: ImageSource.camera);
if (pickedFile == null) {
return null;
}
final File file = File(pickedFile.path);
final Directory directory = await getApplicationDocumentsDirectory();
final path = directory.path;
final String fileName = basename(pickedFile.path);
File newImage = await file.copy('$path/$fileName');
setState(() {
//_image = newImage;
//_image = File(newImage.path);
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
drawer: NavDrawer(),
appBar: AppBar(
title: const Text('Profile'),
centerTitle: true,
),
body: ListView(
padding: EdgeInsets.symmetric(horizontal: 32),
physics: BouncingScrollPhysics(),
children: [
Center(
child: Stack(
children:[
ClipOval(
child:Material(
color: Colors.transparent,
child: GestureDetector(
child: Image.asset(image,
fit: BoxFit.cover,
width: 128,
height: 128,
),
onTap: () {
getImageWithCamera();
image = "images/cameraPicture.png";
},
),
),
),
Positioned(
bottom: 0,
right: 4,
child: Icon(
Icons.add_a_photo,
color: Theme.of(context).colorScheme.primary,
//color: Colors.white,
size: 20,
),
),
]
)
),
// ProfileWidget(
// imagePath: user.imagePath,
// isEdit: true,
// onClicked: () async {}
// ),
const SizedBox(height: 24),
TextFieldWidget(
label: 'First Name',
text: user.firstName,
onChanged: (firstName) {}
),
const SizedBox(height: 24),
TextFieldWidget(
label: 'Last Name',
text: user.lastName,
onChanged: (lastName) {}
),
const SizedBox(height: 24),
TextFieldWidget(
label: "Dog's Name",
text: user.dogName,
onChanged: (dogName) {}
),
const SizedBox(height: 24),
TextFieldWidget(
label: 'Address Location',
text: user.address,
onChanged: (address) {}
),
const SizedBox(height: 24),
TextFieldWidget(
label: "Dog's Trait 1",
text: user.hasTrait3,
onChanged: (hasTrait1) {}
),
const SizedBox(height: 24),
TextFieldWidget(
label: "Dog's Trait 2",
text: user.hasTrait2,
onChanged: (hasTrait2) {}
),
const SizedBox(height: 24),
TextFieldWidget(
label: "Dog's Trait 3",
text: user.hasTrait3,
onChanged: (hasTrait3) {}
),
],
)
);
}
}