From 864c21b77c54ebbc15a97b767f6edd62e04eacbe Mon Sep 17 00:00:00 2001 From: Felix Kirchner Date: Sun, 20 Jul 2025 22:49:35 +0200 Subject: [PATCH] Replaced tenary operator with Visibility Widget --- lib/presentation/views/graph_view.dart | 100 +++++++++++++------------ 1 file changed, 52 insertions(+), 48 deletions(-) diff --git a/lib/presentation/views/graph_view.dart b/lib/presentation/views/graph_view.dart index 23137cd..4147f51 100644 --- a/lib/presentation/views/graph_view.dart +++ b/lib/presentation/views/graph_view.dart @@ -25,60 +25,64 @@ class _GraphViewState extends State { @override Widget build(BuildContext context) { + print('roundNumber: ${widget.gameSession.roundNumber}'); return CupertinoPageScaffold( navigationBar: CupertinoNavigationBar( middle: Text(AppLocalizations.of(context).scoring_history), previousPageTitle: AppLocalizations.of(context).back, ), - child: widget.gameSession.roundNumber > 1 - ? Padding( - padding: const EdgeInsets.fromLTRB(0, 100, 0, 0), - child: SfCartesianChart( - enableAxisAnimation: true, - legend: const Legend( - overflowMode: LegendItemOverflowMode.wrap, - isVisible: true, - position: LegendPosition.bottom), - primaryXAxis: const NumericAxis( - labelStyle: TextStyle(fontWeight: FontWeight.bold), - interval: 1, - decimalPlaces: 0, - ), - primaryYAxis: NumericAxis( - labelStyle: const TextStyle(fontWeight: FontWeight.bold), - labelAlignment: LabelAlignment.center, - labelPosition: ChartDataLabelPosition.inside, - interval: 1, - decimalPlaces: 0, - axisLabelFormatter: (AxisLabelRenderDetails details) { - if (details.value == 0) { - return ChartAxisLabel('', const TextStyle()); - } - return ChartAxisLabel( - '${details.value.toInt()}', const TextStyle()); - }, - ), - series: getCumulativeScores(), + child: Visibility( + visible: widget.gameSession.roundNumber > 1 || + widget.gameSession.isGameFinished, + replacement: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + const Center( + child: Icon(CupertinoIcons.chart_bar_alt_fill, size: 60), + ), + const SizedBox(height: 10), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 40), + child: Text( + AppLocalizations.of(context).empty_graph_text, + textAlign: TextAlign.center, + style: const TextStyle(fontSize: 16), ), - ) - : Column( - mainAxisAlignment: MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - const Center( - child: Icon(CupertinoIcons.chart_bar_alt_fill, size: 60), - ), - const SizedBox(height: 10), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 40), - child: Text( - AppLocalizations.of(context).empty_graph_text, - textAlign: TextAlign.center, - style: const TextStyle(fontSize: 16), - ), - ), - ], - )); + ), + ], + ), + child: Padding( + padding: const EdgeInsets.fromLTRB(0, 100, 0, 0), + child: SfCartesianChart( + enableAxisAnimation: true, + legend: const Legend( + overflowMode: LegendItemOverflowMode.wrap, + isVisible: true, + position: LegendPosition.bottom), + primaryXAxis: const NumericAxis( + labelStyle: TextStyle(fontWeight: FontWeight.bold), + interval: 1, + decimalPlaces: 0, + ), + primaryYAxis: NumericAxis( + labelStyle: const TextStyle(fontWeight: FontWeight.bold), + labelAlignment: LabelAlignment.center, + labelPosition: ChartDataLabelPosition.inside, + interval: 1, + decimalPlaces: 0, + axisLabelFormatter: (AxisLabelRenderDetails details) { + if (details.value == 0) { + return ChartAxisLabel('', const TextStyle()); + } + return ChartAxisLabel( + '${details.value.toInt()}', const TextStyle()); + }, + ), + series: getCumulativeScores(), + ), + ), + )); } /// Returns a list of LineSeries representing the cumulative scores of each player.