rework ui

This commit is contained in:
verboomp
2026-01-29 07:08:44 +01:00
parent ca514eea67
commit 38979c99e5
19 changed files with 457 additions and 293 deletions

View File

@@ -1,8 +1,14 @@
import 'package:flutter/material.dart';
import 'package:fotodocumentation/utils/login_credentials.dart';
import 'package:go_router/go_router.dart';
import 'package:fotodocumentation/pages/ui_utils/general_style.dart';
import 'package:fotodocumentation/utils/di_container.dart';
import 'package:fotodocumentation/utils/global_router.dart';
class PageHeaderWidget extends StatelessWidget {
LoginCredentials get loginCredentials => DiContainer.get();
final String text;
final String subText;
@@ -13,7 +19,7 @@ class PageHeaderWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Padding(
padding: const EdgeInsets.only(top:24.0, bottom: 24.0),
padding: const EdgeInsets.only(top: 24.0, bottom: 24.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
@@ -30,6 +36,7 @@ class PageHeaderWidget extends StatelessWidget {
),
),
const Spacer(),
_logoutButton(context),
Image.asset(
'assets/images/logo.png',
height: 48,
@@ -52,4 +59,34 @@ class PageHeaderWidget extends StatelessWidget {
),
);
}
Widget _logoutButton(BuildContext context) {
return ElevatedButton.icon(
onPressed: () {
loginCredentials.logout();
context.go(GlobalRouter.pathLogin);
},
icon: Icon(
Icons.logout_rounded,
color: _generalStyle.secondaryTextLabelColor,
size: 24,
),
label: Text(
"logout",
style: TextStyle(
fontFamily: _generalStyle.fontFamily,
fontWeight: FontWeight.normal,
fontSize: 16,
color: _generalStyle.secondaryTextLabelColor,
),
),
style: ElevatedButton.styleFrom(
backgroundColor: Colors.white,
elevation: 0,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(8),
),
),
);
}
}

View File

@@ -1,7 +1,16 @@
import 'package:flutter/material.dart';
abstract interface class GeneralStyle {
Color? evaluationColor({int value = 0});
Color get evaluationGoodColor;
Color get evaluationMiddleColor;
Color get evaluationBadColor;
Color get nextTextColor;
Color get loginFormTextLabelColor;
Color get primaryTextLabelColor;
Color get secondaryTextLabelColor;
@@ -18,24 +27,52 @@ abstract interface class GeneralStyle {
}
class GeneralStyleImpl implements GeneralStyle {
@override
Color? evaluationColor({int value = 0}) {
switch (value) {
case 1:
return evaluationGoodColor;
case 2:
return evaluationMiddleColor;
case 3:
return evaluationBadColor;
}
return null;
}
@override
Color get evaluationGoodColor => Colors.green;
@override
Color get evaluationMiddleColor => Colors.yellow;
@override
Color get evaluationBadColor => Colors.red;
@override
Color get loginFormTextLabelColor => const Color(0xFF001689);
@override
Color get primaryTextLabelColor => const Color(0xFF0045FF);
@override
Color get secondaryTextLabelColor => const Color(0xFF2F2F2F);
Color get secondaryTextLabelColor => const Color(0xFF5B5B5B); //2F2F2F
@override
Color get primaryButtonBackgroundColor => const Color(0xFF0045FF);
@override
Color get secondaryWidgetBackgroundColor => const Color(0xFF001689);
@override
Color get primaryButtonTextColor => Colors.white;
@override
Color get pageBackgroundColor => const Color(0xFFF5F5F5);
@override
Color get nextTextColor => const Color(0xFF757575);
@override
Color get errorColor => const Color(0xFFFF0000);