From 0e786d15a898f3a30adca919190d3e57bc0121d3 Mon Sep 17 00:00:00 2001 From: Henri Date: Thu, 8 Oct 2020 18:11:34 +0300 Subject: [PATCH 1/3] Use card layout by default --- lib/main.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/main.dart b/lib/main.dart index 95a02f6..b4a010b 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -30,7 +30,7 @@ class MyHomePage extends StatefulWidget { class _MyHomePageState extends State { int startingLife = 20; int playerCount = 4; - bool useCardLayout = false; + bool useCardLayout = true; List players = [ PlayerStats(life: 20, playerNumber: 1), From 6a51d8f5cebd23870c6ba004f82175cef959f5db Mon Sep 17 00:00:00 2001 From: Henri Date: Thu, 8 Oct 2020 18:13:06 +0300 Subject: [PATCH 2/3] Make + and - button fill more area. Use IconButton instead of a regular one. --- lib/lifeCounter.dart | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/lib/lifeCounter.dart b/lib/lifeCounter.dart index e673156..4646da5 100644 --- a/lib/lifeCounter.dart +++ b/lib/lifeCounter.dart @@ -106,18 +106,12 @@ class _LifeCounterState extends State { }); } - Widget getSetHealthButton(String text, int healthMultiplier) => - RawMaterialButton( - onPressed: () => setHealth(healthMultiplier, widget.player), - padding: EdgeInsets.all(40), - shape: CircleBorder(), - child: Text( - text, - style: TextStyle( - shadows: [textShadow], - fontSize: 50, - color: widget.player.life > 0 ? usedColor.textColor : Colors.red, - ), + Widget getSetHealthButton(IconData icon, int healthMultiplier) => Expanded( + child: IconButton( + onPressed: () => setHealth(healthMultiplier, widget.player), + alignment: Alignment.center, + iconSize: 48, + icon: Icon(icon), ), ); @@ -136,12 +130,12 @@ class _LifeCounterState extends State { child: Container( decoration: getLifeCounterContainerDecoration(), child: Row( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.stretch, children: [ - getSetHealthButton('-', -1), + getSetHealthButton(Icons.remove, -1), Container( padding: EdgeInsets.symmetric(horizontal: 10, vertical: 10), - width: 130, alignment: Alignment.center, child: Stack( alignment: Alignment.center, @@ -167,7 +161,7 @@ class _LifeCounterState extends State { ), ], )), - getSetHealthButton('+', 1), + getSetHealthButton(Icons.add, 1), ], ), ), From 090c84a1e5f60d177e920c0b71a9d307e8bc44c1 Mon Sep 17 00:00:00 2001 From: Henri Date: Thu, 8 Oct 2020 18:45:37 +0300 Subject: [PATCH 3/3] Revert the use of icon buttons because they cant have shadows --- lib/lifeCounter.dart | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/lib/lifeCounter.dart b/lib/lifeCounter.dart index 4646da5..005148d 100644 --- a/lib/lifeCounter.dart +++ b/lib/lifeCounter.dart @@ -106,14 +106,23 @@ class _LifeCounterState extends State { }); } - Widget getSetHealthButton(IconData icon, int healthMultiplier) => Expanded( - child: IconButton( + Widget getSetHealthButton(int healthMultiplier) { + bool isPlus = healthMultiplier > 0; + String text = isPlus ? '+' : '-'; + return Expanded( + child: RawMaterialButton( onPressed: () => setHealth(healthMultiplier, widget.player), - alignment: Alignment.center, - iconSize: 48, - icon: Icon(icon), - ), - ); + child: Text( + text, + style: TextStyle( + shadows: [textShadow], + // - is smaller than + for some reason by default + fontSize: isPlus ? 48 : 60, + color: widget.player.life > 0 ? usedColor.textColor : Colors.red, + ), + )), + ); + } @override Widget build(BuildContext context) { @@ -133,7 +142,7 @@ class _LifeCounterState extends State { mainAxisAlignment: MainAxisAlignment.spaceBetween, crossAxisAlignment: CrossAxisAlignment.stretch, children: [ - getSetHealthButton(Icons.remove, -1), + getSetHealthButton(-1), Container( padding: EdgeInsets.symmetric(horizontal: 10, vertical: 10), alignment: Alignment.center, @@ -161,7 +170,7 @@ class _LifeCounterState extends State { ), ], )), - getSetHealthButton(Icons.add, 1), + getSetHealthButton(1), ], ), ),