51 lines
1.3 KiB
Dart
51 lines
1.3 KiB
Dart
// SPDX-FileCopyrightText: 2019-Present Christian Kußowski
|
|
// SPDX-FileCopyrightText: 2019-Present Contributors to FluffyChat
|
|
//
|
|
// SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
import 'package:material_ui/material_ui.dart';
|
|
import 'package:tatchat/l10n/l10n.dart';
|
|
|
|
enum HomeTab { chats, channels, spaces, murals }
|
|
|
|
extension HomeTabExtension on HomeTab {
|
|
String label(BuildContext context) {
|
|
final l10n = L10n.of(context);
|
|
switch (this) {
|
|
case HomeTab.chats:
|
|
return l10n.chats;
|
|
case HomeTab.channels:
|
|
return l10n.channels;
|
|
case HomeTab.spaces:
|
|
return l10n.spaces;
|
|
case HomeTab.murals:
|
|
return l10n.murals;
|
|
}
|
|
}
|
|
|
|
IconData get icon {
|
|
switch (this) {
|
|
case HomeTab.chats:
|
|
return Icons.forum_outlined;
|
|
case HomeTab.channels:
|
|
return Icons.tag_outlined;
|
|
case HomeTab.spaces:
|
|
return Icons.workspaces_outlined;
|
|
case HomeTab.murals:
|
|
return Icons.dashboard_outlined;
|
|
}
|
|
}
|
|
|
|
IconData get selectedIcon {
|
|
switch (this) {
|
|
case HomeTab.chats:
|
|
return Icons.forum;
|
|
case HomeTab.channels:
|
|
return Icons.tag;
|
|
case HomeTab.spaces:
|
|
return Icons.workspaces;
|
|
case HomeTab.murals:
|
|
return Icons.dashboard;
|
|
}
|
|
}
|
|
} |