Author SHA1 Message Date
Ali b6b596f4fb Puuush
Puuush it! PUUUUUSH IT
2024-11-21 16:10:22 +01:00
3 changed files with 76 additions and 2 deletions
+10
View File
@@ -1,6 +1,7 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:google_nav_bar/google_nav_bar.dart'; import 'package:google_nav_bar/google_nav_bar.dart';
import 'package:mensaapp/providers/pageProvider.dart'; import 'package:mensaapp/providers/pageProvider.dart';
import 'package:mensaapp/providers/spezielleErnaehrungProvider.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
void main() { void main() {
@@ -17,6 +18,15 @@ class MyApp extends StatelessWidget {
providers: [ providers: [
ChangeNotifierProvider( ChangeNotifierProvider(
create: (context) => PageProvider(), create: (context) => PageProvider(),
<<<<<<< Updated upstream
=======
),
ChangeNotifierProvider(
create: (context) => EssenProvider(),
),
ChangeNotifierProvider(
create: (context) => SpezielleErnaehrungProvider(),
>>>>>>> Stashed changes
) )
], ],
child: MaterialApp( child: MaterialApp(
+43 -2
View File
@@ -2,6 +2,9 @@ import 'package:flutter/material.dart';
import 'package:flutter_rating_bar/flutter_rating_bar.dart'; import 'package:flutter_rating_bar/flutter_rating_bar.dart';
import 'package:mensaapp/modules/ratingEmote.dart'; import 'package:mensaapp/modules/ratingEmote.dart';
import 'package:mensaapp/modules/ratingStars.dart'; import 'package:mensaapp/modules/ratingStars.dart';
import 'package:mensaapp/providers/spezielleErnaehrungProvider.dart';
import 'package:provider/provider.dart';
class PageSpezielleErnaehrung extends StatelessWidget { class PageSpezielleErnaehrung extends StatelessWidget {
const PageSpezielleErnaehrung({super.key}); const PageSpezielleErnaehrung({super.key});
@@ -13,6 +16,7 @@ class PageSpezielleErnaehrung extends StatelessWidget {
width: 800, width: 800,
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.center,
children: [ children: [
const SizedBox( const SizedBox(
height: 50, height: 50,
@@ -24,7 +28,13 @@ class PageSpezielleErnaehrung extends StatelessWidget {
"Sitzmöglichkeit*", "Sitzmöglichkeit*",
style: TextStyle(fontSize: 35), style: TextStyle(fontSize: 35),
), ),
RatingStars(onRate: () {}) Consumer<SpezielleErnaehrungProvider>(
builder: (context, spezielleErnaehrungProvider, child) {
return RatingStars(onRate: (value) {
spezielleErnaehrungProvider.setRatingSitzmoeglichkeit(value);
}, initRating: spezielleErnaehrungProvider.ratingSitzmoeglichkeit,);
},
)
], ],
), ),
Row( Row(
@@ -34,8 +44,39 @@ class PageSpezielleErnaehrung extends StatelessWidget {
"Keine Ahnung*", "Keine Ahnung*",
style: TextStyle(fontSize: 35), style: TextStyle(fontSize: 35),
), ),
RatingStars(onRate: () {}) Consumer<SpezielleErnaehrungProvider>(
builder: (context, spezielleErnaehrungProvider, child) {
return RatingStars(onRate: (value) {
spezielleErnaehrungProvider.setRatingKeineAhnung(value);
}, initRating: spezielleErnaehrungProvider.ratingKeineAhnung,);
},
),
], ],
),
const SizedBox(
height: 50,
),
Consumer<SpezielleErnaehrungProvider>(
builder: (context, spezielleErnaehrungProvider, child) {
return TextFormField(
initialValue: spezielleErnaehrungProvider.freiText,
onChanged: (value) {
spezielleErnaehrungProvider.setFreiText(value);
},
autofocus: false,
maxLength: 500,
maxLines: 5,
decoration: InputDecoration(
labelText: "Dein Feedback (optional)",
labelStyle: const TextStyle(fontSize: 20),
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(15)
),
),
style: TextStyle(fontSize: 20),
);
},
) )
], ],
), ),
@@ -0,0 +1,23 @@
import 'package:flutter/material.dart';
class SpezielleErnaehrungProvider extends ChangeNotifier {
double ratingSitzmoeglichkeit = 0;
double ratingKeineAhnung = 0;
String freiText = "";
void setRatingSitzmoeglichkeit(double rating) {
ratingSitzmoeglichkeit = rating;
notifyListeners();
}
void setRatingKeineAhnung(double rating) {
ratingKeineAhnung = rating;
notifyListeners();
}
void setFreiText(String text) {
freiText = text;
notifyListeners();
}
}