Merge branch 'dev_please_be_alive' into 'main'
Puuush See merge request brausjonas/mensaapp!6
This commit is contained in:
@@ -2,6 +2,7 @@ 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/essenProvider.dart';
|
import 'package:mensaapp/providers/essenProvider.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() {
|
||||||
@@ -21,6 +22,9 @@ class MyApp extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
ChangeNotifierProvider(
|
ChangeNotifierProvider(
|
||||||
create: (context) => EssenProvider(),
|
create: (context) => EssenProvider(),
|
||||||
|
),
|
||||||
|
ChangeNotifierProvider(
|
||||||
|
create: (context) => SpezielleErnaehrungProvider(),
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
child: MaterialApp(
|
child: MaterialApp(
|
||||||
|
|||||||
@@ -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();
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user