inital add wool modal design

This commit is contained in:
Leandro 2024-05-19 22:50:43 +02:00
parent 2445de13af
commit 22aca9618e
4 changed files with 44 additions and 5 deletions

View file

@ -0,0 +1,19 @@
import 'package:flutter/material.dart';
import 'package:temperaturdecke/widgets/modal_wrapper.dart';
class AddWoolModal extends StatelessWidget {
const AddWoolModal({super.key});
@override
Widget build(BuildContext context) {
return ModalWrapper(
Column(
children: [
TextField(),
TextField(),
],
),
title: "Wolle hinzufügen",
);
}
}

View file

@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:temperaturdecke/database.dart';
import 'package:temperaturdecke/screens/add_wool_modal.dart';
import 'package:temperaturdecke/widgets/cards/wool_card.dart';
class WoolScreen extends StatelessWidget {
@ -22,7 +23,15 @@ class WoolScreen extends StatelessWidget {
// Hier können Sie den Inhalt basierend auf den geladenen Daten anzeigen
return Scaffold(
floatingActionButton: FloatingActionButton(
onPressed: () {},
onPressed: () {
showModalBottomSheet(
showDragHandle: true,
context: context,
builder: (context) {
return AddWoolModal();
},
);
},
child: Icon(Icons.add),
),
body: Column(

View file

@ -39,6 +39,7 @@ class Woolcard extends StatelessWidget {
child: IconButton(
onPressed: () {
showModalBottomSheet(
showDragHandle: true,
context: context,
builder: (context) {
return WoolModal(id);

View file

@ -1,10 +1,10 @@
import 'package:flutter/material.dart';
class ModalWrapper extends StatelessWidget {
ModalWrapper(this.child, {super.key});
ModalWrapper(this.child, {this.title, key});
Widget child;
String? title;
@override
Widget build(BuildContext context) {
return ClipRRect(
@ -12,8 +12,18 @@ class ModalWrapper extends StatelessWidget {
child: SizedBox(
width: 750,
child: Padding(
padding: EdgeInsets.all(10),
child: child,
padding: EdgeInsets.symmetric(horizontal: 25, vertical: 10),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
title ?? "",
textAlign: TextAlign.start,
style: Theme.of(context).textTheme.headlineMedium,
),
child
],
),
)));
}
}