drawerRowOption method
ListTile
drawerRowOption(
- AppDrawerMenu selectedMenu,
- Icon icon,
- BuildContext context, {
- bool isEnabled = true,
Implementation
ListTile drawerRowOption(AppDrawerMenu selectedMenu, Icon icon, BuildContext context, {bool isEnabled = true}) {
return ListTile(
onTap: () {
if(isEnabled) {
switch(selectedMenu) {
case AppDrawerMenu.profile:
Sint.toNamed(AppRouteConstants.profile);
break;
case AppDrawerMenu.instruments:
Sint.toNamed(AppRouteConstants.instrumentsFav);
break;
case AppDrawerMenu.genres:
if (isEnabled) Sint.toNamed(AppRouteConstants.genresFav);
break;
case AppDrawerMenu.collectives:
Sint.toNamed(AppRouteConstants.collectives);
break;
case AppDrawerMenu.events:
Sint.toNamed(AppRouteConstants.events);
break;
case AppDrawerMenu.inbox:
Sint.toNamed(AppRouteConstants.inbox);
break;
case AppDrawerMenu.calendar:
Sint.toNamed(AppRouteConstants.calendar);
break;
case AppDrawerMenu.services:
Sint.toNamed(AppRouteConstants.services);
break;
case AppDrawerMenu.requests:
Sint.toNamed(AppRouteConstants.request);
break;
case AppDrawerMenu.booking:
Sint.toNamed(AppRouteConstants.booking);
break;
case AppDrawerMenu.directory:
Sint.toNamed(AppRouteConstants.directory);
break;
///DEPRECATED
// case AppDrawerMenu.wallet:
// Sint.toNamed(AppRouteConstants.wallet);
// break;
case AppDrawerMenu.settings:
Sint.toNamed(AppRouteConstants.settingsPrivacy);
break;
case AppDrawerMenu.crowdfunding:
ExternalUtilities.launchURL(AppProperties.getCrowdfundingUrl());
break;
case AppDrawerMenu.appItemQuotation:
Sint.toNamed(AppRouteConstants.quotation);
break;
case AppDrawerMenu.logout:
Sint.toNamed(AppRouteConstants.logout,
arguments: [AppRouteConstants.logout]
);
break;
case AppDrawerMenu.releaseUpload:
if (kIsWeb && Sint.isRegistered<ReleaseUploadService>()) {
Navigator.pop(context);
Sint.find<ReleaseUploadService>().showUploadModal(context);
} else {
Sint.toNamed(AppRouteConstants.releaseUpload);
}
break;
case AppDrawerMenu.digitalLibrary:
// TODO: Handle this case.
break;
case AppDrawerMenu.frequencies:
Sint.toNamed(AppRouteConstants.frequencyFav);
break;
case AppDrawerMenu.presets:
Sint.toNamed(AppRouteConstants.chamber);
break;
case AppDrawerMenu.inspiration:
Sint.toNamed(AppRouteConstants.blog);
///DEPRECATED
/// case AppDrawerMenu.nupale:
/// Sint.toNamed(AppRouteConstants.nupaleHome);
/// case AppDrawerMenu.casete:
/// Sint.toNamed(AppRouteConstants.caseteHome);
case AppDrawerMenu.games:
Sint.toNamed(AppRouteConstants.games);
break;
case AppDrawerMenu.learning:
Sint.toNamed(AppRouteConstants.learning);
break;
case AppDrawerMenu.vst:
Sint.toNamed(AppRouteConstants.vstHome);
break;
case AppDrawerMenu.daw:
Sint.toNamed(AppRouteConstants.dawProjects);
break;
case AppDrawerMenu.erp:
Sint.toNamed(AppRouteConstants.erp);
break;
case AppDrawerMenu.dashboard:
Sint.toNamed(AppRouteConstants.shopHub);
break;
}
}
},
leading: Padding(
padding: const EdgeInsets.only(top: 5),
child: icon
),
title: customText(
selectedMenu.name.tr,
textAlign: TextAlign.start,
style: TextStyle(
fontSize: 20,
color: isEnabled ? AppColor.lightGrey : AppColor.secondary,
), context: context,
),
);
}