Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
org.benoitharrault.random
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
android
org.benoitharrault.random
Merge requests
!91
Resolve "Use navigation widgets from flutter_custom_toolbox"
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Resolve "Use navigation widgets from flutter_custom_toolbox"
93-use-navigation-widgets-from-flutter_custom_toolbox
into
master
Overview
0
Commits
1
Pipelines
2
Changes
20
Merged
Benoît Harrault
requested to merge
93-use-navigation-widgets-from-flutter_custom_toolbox
into
master
4 months ago
Overview
0
Commits
1
Pipelines
2
Changes
20
Expand
Closes
#93 (closed)
0
0
Merge request reports
Compare
master
master (base)
and
latest version
latest version
18fe2f4b
1 commit,
4 months ago
20 files
+
150
−
485
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
Files
20
Search (e.g. *.vue) (Ctrl+P)
lib/common/config/activity_page.dart deleted
100644 → 0
+
0
−
115
Options
import
'package:flutter/material.dart'
;
import
'package:flutter_custom_toolbox/flutter_toolbox.dart'
;
import
'package:random/common/ui/pages/api.dart'
;
import
'package:random/common/ui/pages/camera.dart'
;
import
'package:random/common/ui/pages/demo.dart'
;
import
'package:random/common/ui/pages/game.dart'
;
import
'package:random/common/ui/pages/graph.dart'
;
import
'package:random/config/application_config.dart'
;
import
'package:random/cubit/activity/activity_cubit.dart'
;
import
'package:random/models/activity/activity.dart'
;
class
ActivityPageItem
{
final
String
code
;
final
Icon
icon
;
final
Widget
Function
({
required
Activity
currentActivity
})
?
builder
;
const
ActivityPageItem
({
required
this
.
code
,
required
this
.
icon
,
required
this
.
builder
,
});
}
class
ActivityPage
{
static
const
bool
displayBottomNavBar
=
true
;
static
const
indexHome
=
0
;
static
final
pageHome
=
ActivityPageItem
(
code:
'page_home'
,
icon:
Icon
(
UniconsLine
.
home
),
builder:
({
required
Activity
currentActivity
})
{
return
PageParameters
(
config:
ApplicationConfig
.
config
,
canBeResumed:
currentActivity
.
canBeResumed
,
);
},
);
static
const
indexDemo
=
1
;
static
final
pageDemo
=
ActivityPageItem
(
code:
'page_demo'
,
icon:
Icon
(
UniconsLine
.
eye
),
builder:
({
required
Activity
currentActivity
})
{
return
PageDemo
();
},
);
static
const
indexGame
=
2
;
static
final
pageGame
=
ActivityPageItem
(
code:
'page_game'
,
icon:
Icon
(
UniconsLine
.
star
),
builder:
({
required
Activity
currentActivity
})
{
return
PageGame
();
},
);
static
const
indexCamera
=
3
;
static
final
pageCamera
=
ActivityPageItem
(
code:
'page_camera'
,
icon:
Icon
(
UniconsLine
.
camera
),
builder:
({
required
Activity
currentActivity
})
{
return
PageCamera
();
},
);
static
const
indexGraph
=
4
;
static
final
pageGraph
=
ActivityPageItem
(
code:
'page_graph'
,
icon:
Icon
(
UniconsLine
.
pen
),
builder:
({
required
Activity
currentActivity
})
{
return
PageGraph
();
},
);
static
const
indexApi
=
5
;
static
final
pageApi
=
ActivityPageItem
(
code:
'page_api'
,
icon:
Icon
(
UniconsLine
.
link
),
builder:
({
required
Activity
currentActivity
})
{
return
PageApi
();
},
);
static
final
Map
<
int
,
ActivityPageItem
>
items
=
{
indexHome:
pageHome
,
indexDemo:
pageDemo
,
indexGame:
pageGame
,
indexCamera:
pageCamera
,
indexGraph:
pageGraph
,
indexApi:
pageApi
,
};
static
int
defaultPageIndex
=
indexDemo
;
static
bool
isIndexAllowed
(
int
pageIndex
)
{
return
items
.
keys
.
contains
(
pageIndex
);
}
static
Widget
getWidget
(
int
pageIndex
)
{
return
BlocBuilder
<
ActivityCubit
,
ActivityState
>(
builder:
(
BuildContext
context
,
ActivityState
activityState
)
{
final
Activity
currentActivity
=
activityState
.
currentActivity
;
if
(
items
.
keys
.
contains
(
pageIndex
))
{
return
items
[
pageIndex
]
?.
builder
!
(
currentActivity:
currentActivity
)
??
Text
(
'oups'
);
}
else
{
return
getWidget
(
defaultPageIndex
);
}
},
);
}
}
Loading