Files
workavia-mail-front/lib/features/mailbox/presentation/model/mailbox_actions.dart
T
2022-07-01 08:39:41 +07:00

72 lines
1.9 KiB
Dart

import 'package:core/core.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
enum MailboxActions {
create,
moveEmail,
select,
delete,
rename,
move,
markAsRead,
}
extension MailboxActionsExtension on MailboxActions {
String getTitle(BuildContext context) {
switch(this) {
case MailboxActions.create:
return AppLocalizations.of(context).mailbox_location;
case MailboxActions.moveEmail:
return AppLocalizations.of(context).move_message;
case MailboxActions.select:
return AppLocalizations.of(context).selectMailbox;
case MailboxActions.move:
return AppLocalizations.of(context).allMailboxes;
default:
return '';
}
}
String getTitleContextMenu(BuildContext context) {
switch(this) {
case MailboxActions.markAsRead:
return AppLocalizations.of(context).mark_as_read;
case MailboxActions.move:
return AppLocalizations.of(context).moveMailbox;
case MailboxActions.rename:
return AppLocalizations.of(context).rename_mailbox;
case MailboxActions.delete:
return AppLocalizations.of(context).deleteMailbox;
default:
return '';
}
}
String getContextMenuIcon(ImagePaths imagePaths) {
switch(this) {
case MailboxActions.markAsRead:
return imagePaths.icRead;
case MailboxActions.move:
return imagePaths.icMove;
case MailboxActions.rename:
return imagePaths.icRenameMailbox;
case MailboxActions.delete:
return imagePaths.icDelete;
default:
return '';
}
}
Color getColorContextMenuIcon() {
switch(this) {
case MailboxActions.delete:
return AppColor.colorActionDeleteConfirmDialog;
default:
return Colors.black;
}
}
}