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

Merge branch '36-use-activity-buttons-widgets-from-flutter_custom_toolbox' into 'master'

Resolve "Use activity buttons widgets from flutter_custom_toolbox"

Closes #36

See merge request !36
parents b64767bc eafd03b1
No related branches found
No related tags found
1 merge request!36Resolve "Use activity buttons widgets from flutter_custom_toolbox"
Pipeline #7006 passed
Showing
with 90 additions and 96 deletions
assets/skins/nature_1.png

11 KiB | W: | H:

assets/skins/nature_1.png

11 KiB | W: | H:

assets/skins/nature_1.png
assets/skins/nature_1.png
assets/skins/nature_1.png
assets/skins/nature_1.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/nature_2.png

7.22 KiB | W: | H:

assets/skins/nature_2.png

7.22 KiB | W: | H:

assets/skins/nature_2.png
assets/skins/nature_2.png
assets/skins/nature_2.png
assets/skins/nature_2.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/nature_3.png

11.1 KiB | W: | H:

assets/skins/nature_3.png

11.1 KiB | W: | H:

assets/skins/nature_3.png
assets/skins/nature_3.png
assets/skins/nature_3.png
assets/skins/nature_3.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/nature_4.png

9.8 KiB | W: | H:

assets/skins/nature_4.png

9.8 KiB | W: | H:

assets/skins/nature_4.png
assets/skins/nature_4.png
assets/skins/nature_4.png
assets/skins/nature_4.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/nature_5.png

11.8 KiB | W: | H:

assets/skins/nature_5.png

11.8 KiB | W: | H:

assets/skins/nature_5.png
assets/skins/nature_5.png
assets/skins/nature_5.png
assets/skins/nature_5.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/nature_6.png

7.54 KiB | W: | H:

assets/skins/nature_6.png

7.54 KiB | W: | H:

assets/skins/nature_6.png
assets/skins/nature_6.png
assets/skins/nature_6.png
assets/skins/nature_6.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/nature_7.png

10.4 KiB | W: | H:

assets/skins/nature_7.png

10.4 KiB | W: | H:

assets/skins/nature_7.png
assets/skins/nature_7.png
assets/skins/nature_7.png
assets/skins/nature_7.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/nature_8.png

9.76 KiB | W: | H:

assets/skins/nature_8.png

9.76 KiB | W: | H:

assets/skins/nature_8.png
assets/skins/nature_8.png
assets/skins/nature_8.png
assets/skins/nature_8.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/nature_found.png

6.9 KiB | W: | H:

assets/skins/nature_found.png

6.9 KiB | W: | H:

assets/skins/nature_found.png
assets/skins/nature_found.png
assets/skins/nature_found.png
assets/skins/nature_found.png
  • 2-up
  • Swipe
  • Onion skin
assets/skins/nature_unknown.png

8.34 KiB | W: | H:

assets/skins/nature_unknown.png

8.34 KiB | W: | H:

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

2.37 KiB

assets/ui/button_delete_saved_game.png

7.65 KiB

assets/ui/button_resume_game.png

3.35 KiB

assets/ui/button_start.png

2.99 KiB

Use activity buttons widgets from flutter_custom_toolbox.
Utilisation des boutons d'activité à partir du package flutter_custom_toolbox.
......@@ -22,17 +22,12 @@ class GlobalAppBar extends StatelessWidget implements PreferredSizeWidget {
final List<Widget> menuActions = [];
if (currentActivity.isRunning && !currentActivity.isFinished) {
menuActions.add(StyledButton(
color: Colors.red,
menuActions.add(ActivityButtonQuit(
onPressed: () {},
onLongPress: () {
BlocProvider.of<ActivityCubit>(context).quitActivity();
BlocProvider.of<NavCubitPage>(context).goToPageHome();
},
child: const Image(
image: AssetImage('assets/ui/button_back.png'),
fit: BoxFit.fill,
),
));
} else {
if (pageIndex == Screen.indexActivity) {
......
import 'package:flutter/material.dart';
import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
import 'package:memory/common/cubit/nav/nav_cubit_pages.dart';
import 'package:memory/common/ui/parameters/parameter_widget.dart';
import 'package:memory/config/default_activity_settings.dart';
......@@ -9,9 +10,6 @@ import 'package:memory/cubit/activity/activity_cubit.dart';
import 'package:memory/cubit/settings/settings_activity_cubit.dart';
import 'package:memory/cubit/settings/settings_global_cubit.dart';
import 'package:memory/models/activity/activity.dart';
import 'package:memory/ui/widgets/actions/button_delete_saved_game.dart';
import 'package:memory/ui/widgets/actions/button_game_start_new.dart';
import 'package:memory/ui/widgets/actions/button_resume_saved_game.dart';
class PageParameters extends StatelessWidget {
const PageParameters({super.key});
......@@ -20,13 +18,17 @@ class PageParameters extends StatelessWidget {
@override
Widget build(BuildContext context) {
return BlocBuilder<ActivitySettingsCubit, ActivitySettingsState>(
builder: (BuildContext context, ActivitySettingsState activitySettingsState) {
return BlocBuilder<GlobalSettingsCubit, GlobalSettingsState>(
builder: (BuildContext context, GlobalSettingsState globalSettingsState) {
return BlocBuilder<ActivityCubit, ActivityState>(
builder: (BuildContext context, ActivityState activityState) {
final Activity currentActivity = activityState.currentActivity;
final List<Widget> lines = [];
// Game settings
// Activity settings
for (String code in DefaultActivitySettings.availableParameters) {
lines.add(Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
......@@ -44,23 +46,40 @@ class PageParameters extends StatelessWidget {
));
if (currentActivity.canBeResumed == false) {
// Start new game
// Start new activity
lines.add(
const AspectRatio(
AspectRatio(
aspectRatio: 3,
child: StartNewGameButton(),
child: ActivityButtonStartNew(
onPressed: () {
BlocProvider.of<ActivityCubit>(context).startNewActivity(
activitySettings: activitySettingsState.settings,
globalSettings: globalSettingsState.settings,
);
BlocProvider.of<NavCubitPage>(context).goToPageGame();
},
),
),
);
} else {
// Resume game
lines.add(const AspectRatio(
// Resume activity
lines.add(AspectRatio(
aspectRatio: 3,
child: ResumeSavedGameButton(),
child: ActivityButtonResumeSaved(
onPressed: () {
BlocProvider.of<ActivityCubit>(context).resumeSavedActivity();
BlocProvider.of<NavCubitPage>(context).goToPageGame();
},
),
));
// Delete saved game
// Delete saved activity
lines.add(SizedBox.square(
dimension: MediaQuery.of(context).size.width / 5,
child: const DeleteSavedGameButton(),
child: ActivityButtonDeleteSaved(
onPressed: () {
BlocProvider.of<ActivityCubit>(context).deleteSavedActivity();
},
),
));
}
......@@ -84,6 +103,10 @@ class PageParameters extends StatelessWidget {
);
},
);
},
);
},
);
}
List<Widget> buildParametersLine({
......
......@@ -94,10 +94,6 @@ class MyApp extends StatelessWidget {
final List<String> assets = [];
const List<String> gameImages = [
'button_back',
'button_delete_saved_game',
'button_resume_game',
'button_start',
'game_win',
'placeholder',
];
......
import 'package:flutter/material.dart';
import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
import 'package:memory/cubit/activity/activity_cubit.dart';
class DeleteSavedGameButton extends StatelessWidget {
const DeleteSavedGameButton({super.key});
@override
Widget build(BuildContext context) {
return StyledButton(
color: Colors.grey,
onPressed: () {
BlocProvider.of<ActivityCubit>(context).deleteSavedActivity();
},
child: const Image(
image: AssetImage('assets/ui/button_delete_saved_game.png'),
fit: BoxFit.fill,
),
);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment