From 1c8f03c97bc9e13d0652698ec4970c53299d3dd6 Mon Sep 17 00:00:00 2001 From: Joshua Burman Date: Wed, 27 Nov 2024 08:21:12 -0500 Subject: [PATCH] activity categories --- lib/widgets/activity_view.dart | 42 +++++++++++++++++++++++++++++++--- lib/widgets/session_view.dart | 22 +++++++++--------- 2 files changed, 50 insertions(+), 14 deletions(-) diff --git a/lib/widgets/activity_view.dart b/lib/widgets/activity_view.dart index 68197ce..0f7ec07 100644 --- a/lib/widgets/activity_view.dart +++ b/lib/widgets/activity_view.dart @@ -9,26 +9,62 @@ class ActivityView extends StatelessWidget { @override Widget build(BuildContext context) { return Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.start, + // mainAxisSize: MainAxisSize.min, + // mainAxisAlignment: MainAxisAlignment.start, children: [ AppBar( centerTitle: true, title: Text(activity.title, style: const TextStyle(fontSize: 25)), ), + ActivityViewCategories(categories: activity.categories), Padding( padding: const EdgeInsets.only(top: 25, bottom: 10, left: 15, right: 15), child: Text( - textAlign: TextAlign.center, + textAlign: TextAlign.left, style: const TextStyle(fontSize: 20), activity.description)), const Padding( padding: EdgeInsets.only(top: 25, bottom: 10), child: Text( + textAlign: TextAlign.left, style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold), 'Actions:')), ], ); } } + +class ActivityViewCategories extends StatelessWidget { + const ActivityViewCategories({super.key, this.categories}); + + final List? categories; + + @override + Widget build(BuildContext context) { + return Column( + children: [ + Padding( + padding: const EdgeInsets.only(bottom: 10), + child: SizedBox( + height: 40, + child: ListView.builder( + shrinkWrap: true, + scrollDirection: Axis.horizontal, + padding: const EdgeInsets.fromLTRB(10, 0, 10, 0), + itemCount: categories?.length, + itemBuilder: (BuildContext context, int index) { + return Padding( + padding: const EdgeInsets.only(right: 5), + child: ActionChip( + visualDensity: VisualDensity.compact, + avatar: const Icon(Icons.check_circle_outline), + label: Text(maxLines: 1, '${categories?[index]}'), + onPressed: () {}, + )); + }, + ))), + ], + ); + } +} diff --git a/lib/widgets/session_view.dart b/lib/widgets/session_view.dart index 4eb74d0..f17aa82 100644 --- a/lib/widgets/session_view.dart +++ b/lib/widgets/session_view.dart @@ -22,19 +22,19 @@ class SessionView extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, children: [ AppBar( - centerTitle: true, - title: Text('Session @ ${dateFormat.format(data.date)}', + // centerTitle: false, + title: Text(data.title, style: const TextStyle(fontSize: 25)), ), - Padding( - padding: - const EdgeInsets.only(left: 20, right: 20, top: 15, bottom: 10), - child: Text( - textAlign: TextAlign.left, - maxLines: 1, - style: - const TextStyle(fontSize: 25, fontWeight: FontWeight.bold), - data.title)), + // Padding( + // padding: + // const EdgeInsets.only(left: 20, right: 20, top: 15, bottom: 10), + // child: Text( + // textAlign: TextAlign.left, + // maxLines: 1, + // style: + // const TextStyle(fontSize: 25, fontWeight: FontWeight.bold), + // data.title)), SessionViewAchievements(achievements: data.achievements), Padding( padding: const EdgeInsets.only(left: 15, right: 15),