Skip to content
Snippets Groups Projects
Commit 1d0ab83f authored by Benoît Harrault's avatar Benoît Harrault
Browse files

Merge branch '30-clean-improve-update-code' into 'master'

Resolve "Clean / improve / update code"

Closes #30

See merge request !29
parents 0da6f3fc f0dbed94
No related branches found
No related tags found
1 merge request!29Resolve "Clean / improve / update code"
Pipeline #6155 passed
Showing
with 214 additions and 12 deletions
org.gradle.jvmargs=-Xmx1536M org.gradle.jvmargs=-Xmx1536M
android.useAndroidX=true android.useAndroidX=true
android.enableJetifier=true android.enableJetifier=true
app.versionName=1.0.24 app.versionName=1.0.25
app.versionCode=25 app.versionCode=26
assets/skins/default_1.png

15.5 KiB | W: | H:

assets/skins/default_1.png

15.5 KiB | W: | H:

assets/skins/default_1.png
assets/skins/default_1.png
assets/skins/default_1.png
assets/skins/default_1.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/default_2.png

21.6 KiB | W: | H:

assets/skins/default_2.png

21.6 KiB | W: | H:

assets/skins/default_2.png
assets/skins/default_2.png
assets/skins/default_2.png
assets/skins/default_2.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/default_3.png

14.4 KiB | W: | H:

assets/skins/default_3.png

14.4 KiB | W: | H:

assets/skins/default_3.png
assets/skins/default_3.png
assets/skins/default_3.png
assets/skins/default_3.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/default_4.png

21.5 KiB | W: | H:

assets/skins/default_4.png

21.5 KiB | W: | H:

assets/skins/default_4.png
assets/skins/default_4.png
assets/skins/default_4.png
assets/skins/default_4.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/default_5.png

19.5 KiB | W: | H:

assets/skins/default_5.png

19.5 KiB | W: | H:

assets/skins/default_5.png
assets/skins/default_5.png
assets/skins/default_5.png
assets/skins/default_5.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/default_6.png

18.5 KiB | W: | H:

assets/skins/default_6.png

18.5 KiB | W: | H:

assets/skins/default_6.png
assets/skins/default_6.png
assets/skins/default_6.png
assets/skins/default_6.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/default_7.png

18.7 KiB | W: | H:

assets/skins/default_7.png

18.7 KiB | W: | H:

assets/skins/default_7.png
assets/skins/default_7.png
assets/skins/default_7.png
assets/skins/default_7.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/default_8.png

19 KiB | W: | H:

assets/skins/default_8.png

19 KiB | W: | H:

assets/skins/default_8.png
assets/skins/default_8.png
assets/skins/default_8.png
assets/skins/default_8.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/default_found.png

6.9 KiB | W: | H:

assets/skins/default_found.png

6.9 KiB | W: | H:

assets/skins/default_found.png
assets/skins/default_found.png
assets/skins/default_found.png
assets/skins/default_found.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/default_unknown.png

8.34 KiB | W: | H:

assets/skins/default_unknown.png

8.34 KiB | W: | H:

assets/skins/default_unknown.png
assets/skins/default_unknown.png
assets/skins/default_unknown.png
assets/skins/default_unknown.png
  • 2-up
  • Swipe
  • Onion skin
assets/ui/button_back.png

3.68 KiB | W: | H:

assets/ui/button_back.png

2.37 KiB | W: | H:

assets/ui/button_back.png
assets/ui/button_back.png
assets/ui/button_back.png
assets/ui/button_back.png
  • 2-up
  • Swipe
  • Onion skin
assets/ui/button_delete_saved_game.png

5.68 KiB | W: | H:

assets/ui/button_delete_saved_game.png

7.65 KiB | W: | H:

assets/ui/button_delete_saved_game.png
assets/ui/button_delete_saved_game.png
assets/ui/button_delete_saved_game.png
assets/ui/button_delete_saved_game.png
  • 2-up
  • Swipe
  • Onion skin
assets/ui/button_resume_game.png

3.57 KiB | W: | H:

assets/ui/button_resume_game.png

3.35 KiB | W: | H:

assets/ui/button_resume_game.png
assets/ui/button_resume_game.png
assets/ui/button_resume_game.png
assets/ui/button_resume_game.png
  • 2-up
  • Swipe
  • Onion skin
assets/ui/button_start.png

3.91 KiB | W: | H:

assets/ui/button_start.png

2.99 KiB | W: | H:

assets/ui/button_start.png
assets/ui/button_start.png
assets/ui/button_start.png
assets/ui/button_start.png
  • 2-up
  • Swipe
  • Onion skin
Clean / improve / update code and UI.
Nettoyage / amélioration / mise à jour de code et de l'interface.
...@@ -25,9 +25,4 @@ class DefaultGameSettings { ...@@ -25,9 +25,4 @@ class DefaultGameSettings {
printlog('Did not find any available value for game parameter "$parameterCode".'); printlog('Did not find any available value for game parameter "$parameterCode".');
return []; return [];
} }
// parameters displayed with assets (instead of painter)
static List<String> displayedWithAssets = [
//
];
} }
...@@ -25,9 +25,4 @@ class DefaultGlobalSettings { ...@@ -25,9 +25,4 @@ class DefaultGlobalSettings {
printlog('Did not find any available value for global parameter "$parameterCode".'); printlog('Did not find any available value for global parameter "$parameterCode".');
return []; return [];
} }
// parameters displayed with assets (instead of painter)
static List<String> displayedWithAssets = [
//
];
} }
import 'package:auto_size_text/auto_size_text.dart';
import 'package:flutter/material.dart';
import 'package:memory/utils/color_extensions.dart';
class StyledButton extends StatelessWidget {
const StyledButton({
super.key,
required this.color,
required this.onPressed,
this.onLongPress,
required this.child,
});
final Color color;
final VoidCallback? onPressed;
final VoidCallback? onLongPress;
final Widget child;
factory StyledButton.text({
Key? key,
required VoidCallback? onPressed,
VoidCallback? onLongPress,
required String caption,
required Color color,
}) {
final Widget captionWidget = AutoSizeText(
caption,
maxLines: 1,
style: TextStyle(
inherit: true,
fontWeight: FontWeight.w900,
color: color.darken(60),
shadows: [
Shadow(
blurRadius: 5.0,
color: color.lighten(60),
offset: const Offset(2, 2),
),
Shadow(
blurRadius: 5.0,
color: color.lighten(60),
offset: const Offset(2, -2),
),
Shadow(
blurRadius: 5.0,
color: color.lighten(60),
offset: const Offset(-2, 2),
),
Shadow(
blurRadius: 5.0,
color: color.lighten(60),
offset: const Offset(-2, -2),
),
],
),
);
return StyledButton(
color: color,
onPressed: onPressed,
onLongPress: onLongPress,
child: captionWidget,
);
}
factory StyledButton.icon({
Key? key,
required VoidCallback? onPressed,
VoidCallback? onLongPress,
required Icon icon,
required Color color,
required double iconSize,
}) {
return StyledButton(
color: color,
onPressed: onPressed,
onLongPress: onLongPress,
child: Icon(
icon.icon,
color: icon.color ?? color.darken(60),
size: iconSize,
shadows: [
Shadow(
blurRadius: 5.0,
color: color.lighten(60),
offset: const Offset(2, 2),
),
Shadow(
blurRadius: 5.0,
color: color.lighten(60),
offset: const Offset(2, -2),
),
Shadow(
blurRadius: 5.0,
color: color.lighten(60),
offset: const Offset(-2, 2),
),
Shadow(
blurRadius: 5.0,
color: color.lighten(60),
offset: const Offset(-2, -2),
),
],
),
);
}
@override
Widget build(BuildContext context) {
const double borderWidth = 4;
final Color borderColor = color.darken(40);
const double borderRadius = 10;
return Container(
margin: const EdgeInsets.all(2),
padding: const EdgeInsets.all(2),
decoration: BoxDecoration(
color: color,
border: Border.all(
color: borderColor,
width: borderWidth,
),
borderRadius: BorderRadius.circular(borderRadius),
),
child: CustomPaint(
painter: StyledButtonPainter(
baseColor: color,
),
child: MaterialButton(
onPressed: onPressed,
onLongPress: onLongPress,
padding: const EdgeInsets.all(8),
materialTapTargetSize: MaterialTapTargetSize.shrinkWrap,
minWidth: 40,
child: child,
),
),
);
}
}
class StyledButtonPainter extends CustomPainter {
StyledButtonPainter({
required this.baseColor,
});
final Color baseColor;
@override
void paint(Canvas canvas, Size size) {
final Color lightColor = baseColor.lighten(20);
final Color darkColor = baseColor.darken(20);
final Paint paint = Paint()..style = PaintingStyle.fill;
const double cornerRadius = 6;
Path topPath = Path()
..moveTo(cornerRadius, 0)
..lineTo(size.width - cornerRadius, 0)
..arcToPoint(
Offset(size.width, cornerRadius),
radius: const Radius.circular(cornerRadius),
)
..lineTo(size.width, size.height * .35)
..quadraticBezierTo(
size.width * .4,
size.height * .1,
0,
size.height * .3,
)
..lineTo(0, cornerRadius)
..arcToPoint(
const Offset(cornerRadius, 0),
radius: const Radius.circular(cornerRadius),
);
Path bottomPath = Path()
..moveTo(cornerRadius, size.height)
..lineTo(size.width - cornerRadius, size.height)
..arcToPoint(
Offset(size.width, size.height - cornerRadius),
radius: const Radius.circular(cornerRadius),
clockwise: false,
)
..lineTo(size.width, size.height * .7)
..quadraticBezierTo(
size.width * .6,
size.height * .9,
0,
size.height * .7,
)
..lineTo(0, size.height - cornerRadius)
..arcToPoint(
Offset(cornerRadius, size.height),
radius: const Radius.circular(cornerRadius),
clockwise: false,
);
paint.color = lightColor;
canvas.drawPath(topPath, paint);
paint.color = darkColor;
canvas.drawPath(bottomPath, paint);
}
@override
bool shouldRepaint(CustomPainter oldDelegate) => false;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment