opt.: display server func btns' name

This commit is contained in:
lollipopkit
2023-11-01 00:53:11 -06:00
parent 3d47390bf1
commit a363e97dd4
13 changed files with 138 additions and 36 deletions

View File

@@ -404,6 +404,12 @@ abstract class S {
/// **'Ignore path for disk'**
String get diskIgnorePath;
/// No description provided for @displayName.
///
/// In en, this message translates to:
/// **'Display name'**
String get displayName;
/// No description provided for @dl2Local.
///
/// In en, this message translates to:
@@ -800,6 +806,12 @@ abstract class S {
/// **'Loading files...'**
String get loadingFiles;
/// No description provided for @location.
///
/// In en, this message translates to:
/// **'Location'**
String get location;
/// No description provided for @log.
///
/// In en, this message translates to:
@@ -854,12 +866,6 @@ abstract class S {
/// **'Mission'**
String get mission;
/// No description provided for @moveOutServerFuncBtns.
///
/// In en, this message translates to:
/// **'Server function button location'**
String get moveOutServerFuncBtns;
/// No description provided for @moveOutServerFuncBtnsHelp.
///
/// In en, this message translates to:
@@ -1208,6 +1214,12 @@ abstract class S {
/// **'Detail page widget order'**
String get serverDetailOrder;
/// No description provided for @serverFuncBtns.
///
/// In en, this message translates to:
/// **'Server func buttons'**
String get serverFuncBtns;
/// No description provided for @serverOrder.
///
/// In en, this message translates to:

View File

@@ -159,6 +159,9 @@ class SDe extends S {
@override
String get diskIgnorePath => 'Pfad für Datenträger ignorieren';
@override
String get displayName => 'Name anzeigen';
@override
String dl2Local(Object fileName) {
return 'Datei \"$fileName\" herunterladen?';
@@ -375,6 +378,9 @@ class SDe extends S {
@override
String get loadingFiles => 'Lädt Dateien...';
@override
String get location => 'Standort';
@override
String get log => 'Log';
@@ -404,9 +410,6 @@ class SDe extends S {
@override
String get mission => 'Mission';
@override
String get moveOutServerFuncBtns => 'Position der Server-Funktionsschaltfläche';
@override
String get moveOutServerFuncBtnsHelp => 'Ein: kann unter jeder Karte auf der Registerkarte \"Server\" angezeigt werden. Aus: kann oben auf der Seite \"Serverdetails\" angezeigt werden.';
@@ -585,6 +588,9 @@ class SDe extends S {
@override
String get serverDetailOrder => 'Reihenfolge der Widgets auf der Detailseite';
@override
String get serverFuncBtns => 'Server-Funktionsschaltflächen';
@override
String get serverOrder => 'Server-Bestellung';

View File

@@ -159,6 +159,9 @@ class SEn extends S {
@override
String get diskIgnorePath => 'Ignore path for disk';
@override
String get displayName => 'Display name';
@override
String dl2Local(Object fileName) {
return 'Download $fileName to local?';
@@ -375,6 +378,9 @@ class SEn extends S {
@override
String get loadingFiles => 'Loading files...';
@override
String get location => 'Location';
@override
String get log => 'Log';
@@ -404,9 +410,6 @@ class SEn extends S {
@override
String get mission => 'Mission';
@override
String get moveOutServerFuncBtns => 'Server function button location';
@override
String get moveOutServerFuncBtnsHelp => 'On: can be displayed below each card on the Server Tab page. Off: can be displayed at the top of the Server Details page.';
@@ -585,6 +588,9 @@ class SEn extends S {
@override
String get serverDetailOrder => 'Detail page widget order';
@override
String get serverFuncBtns => 'Server func buttons';
@override
String get serverOrder => 'Server order';

View File

@@ -159,6 +159,9 @@ class SId extends S {
@override
String get diskIgnorePath => 'Abaikan jalan untuk disk';
@override
String get displayName => 'Nama tampilan';
@override
String dl2Local(Object fileName) {
return 'Unduh $fileName ke lokal?';
@@ -375,6 +378,9 @@ class SId extends S {
@override
String get loadingFiles => 'Memuat file ...';
@override
String get location => 'Lokasi';
@override
String get log => 'Catatan';
@@ -404,9 +410,6 @@ class SId extends S {
@override
String get mission => 'Misi';
@override
String get moveOutServerFuncBtns => 'Lokasi tombol fungsi server';
@override
String get moveOutServerFuncBtnsHelp => 'Aktif: dapat ditampilkan di bawah setiap kartu pada halaman Tab Server. Nonaktif: dapat ditampilkan di bagian atas halaman Rincian Server.';
@@ -585,6 +588,9 @@ class SId extends S {
@override
String get serverDetailOrder => 'Detail pesanan widget halaman';
@override
String get serverFuncBtns => 'Tombol fungsi server';
@override
String get serverOrder => 'Pesanan server';

View File

@@ -159,6 +159,9 @@ class SZh extends S {
@override
String get diskIgnorePath => '忽略的磁盘路径';
@override
String get displayName => '显示名称';
@override
String dl2Local(Object fileName) {
return '下载 $fileName 到本地?';
@@ -375,6 +378,9 @@ class SZh extends S {
@override
String get loadingFiles => '正在加载目录。。。';
@override
String get location => '位置';
@override
String get log => '日志';
@@ -404,9 +410,6 @@ class SZh extends S {
@override
String get mission => '任务';
@override
String get moveOutServerFuncBtns => '服务器功能按钮位置';
@override
String get moveOutServerFuncBtnsHelp => '开启:可以在服务器 Tab 页的每个卡片下方显示。关闭:在服务器详情页顶部显示。';
@@ -585,6 +588,9 @@ class SZh extends S {
@override
String get serverDetailOrder => '详情页部件顺序';
@override
String get serverFuncBtns => '服务器功能按钮';
@override
String get serverOrder => '服务器顺序';
@@ -933,6 +939,9 @@ class SZhTw extends SZh {
@override
String get diskIgnorePath => '忽略的磁盤路徑';
@override
String get displayName => '顯示名稱';
@override
String dl2Local(Object fileName) {
return '下載 $fileName 到本地?';
@@ -1149,6 +1158,9 @@ class SZhTw extends SZh {
@override
String get loadingFiles => '正在加載目錄。。。';
@override
String get location => '位置';
@override
String get log => '日誌';
@@ -1178,9 +1190,6 @@ class SZhTw extends SZh {
@override
String get mission => '任務';
@override
String get moveOutServerFuncBtns => '服務器功能按鈕位置';
@override
String get moveOutServerFuncBtnsHelp => '開啟:可以在服務器 Tab 頁的每個卡片下方顯示。關閉:在服務器詳情頁頂部顯示。';
@@ -1359,6 +1368,9 @@ class SZhTw extends SZh {
@override
String get serverDetailOrder => '詳情頁部件順序';
@override
String get serverFuncBtns => '服務器功能按鈕';
@override
String get serverOrder => '服務器順序';

View File

@@ -220,6 +220,10 @@ class SettingStore extends PersistentStore {
/// Show tip of suspend
late final showSuspendTip = StoreProperty(box, 'showSuspendTip', true);
/// Server func btns display name
late final serverFuncBtnsDisplayName =
StoreProperty(box, 'serverFuncBtnsDisplayName', true);
// Never show these settings for users
//
// ------BEGIN------

View File

@@ -51,6 +51,7 @@
"disconnected": "Disconnected",
"disk": "Festplatte",
"diskIgnorePath": "Pfad für Datenträger ignorieren",
"displayName": "Name anzeigen",
"dl2Local": "Datei \"{fileName}\" herunterladen?",
"dockerEditHost": "DOCKER_HOST bearbeiten",
"dockerEmptyRunningItems": "Keine aktiven Container.\n\nWomöglich wird die Umgebungsvariable DOCKER_HOST nicht richtig erkannt. Du kannst sie finden, indem du `echo $DOCKER_HOST` im Terminal ausführst.",
@@ -117,6 +118,7 @@
"license": "Lizenzen",
"light": "Hell",
"loadingFiles": "Lädt Dateien...",
"location": "Standort",
"log": "Log",
"loss": "loss",
"madeWithLove": "Erstellt mit ❤️ von {myGithub}",
@@ -126,7 +128,6 @@
"maxRetryCountEqual0": "Unbegrenzte Verbindungsversuche zum Server",
"min": "min",
"mission": "Mission",
"moveOutServerFuncBtns": "Position der Server-Funktionsschaltfläche",
"moveOutServerFuncBtnsHelp": "Ein: kann unter jeder Karte auf der Registerkarte \"Server\" angezeigt werden. Aus: kann oben auf der Seite \"Serverdetails\" angezeigt werden.",
"ms": "ms",
"name": "Name",
@@ -185,6 +186,7 @@
"sequence": "Sequenz",
"server": "Server",
"serverDetailOrder": "Reihenfolge der Widgets auf der Detailseite",
"serverFuncBtns": "Server-Funktionsschaltflächen",
"serverOrder": "Server-Bestellung",
"serverTabConnecting": "Verbinden...",
"serverTabEmpty": "Keine Server vorhanden.",

View File

@@ -51,6 +51,7 @@
"disconnected": "Disconnected",
"disk": "Disk",
"diskIgnorePath": "Ignore path for disk",
"displayName": "Display name",
"dl2Local": "Download {fileName} to local?",
"dockerEditHost": "Edit DOCKER_HOST",
"dockerEmptyRunningItems": "No running container. \nIt may be that the env DOCKER_HOST is not read correctly. You can found it by running `echo $DOCKER_HOST` in terminal.",
@@ -117,6 +118,7 @@
"license": "License",
"light": "Light",
"loadingFiles": "Loading files...",
"location": "Location",
"log": "Log",
"loss": "loss",
"madeWithLove": "Made with ❤️ by {myGithub}",
@@ -126,7 +128,6 @@
"maxRetryCountEqual0": "Will retry again and again.",
"min": "min",
"mission": "Mission",
"moveOutServerFuncBtns": "Server function button location",
"moveOutServerFuncBtnsHelp": "On: can be displayed below each card on the Server Tab page. Off: can be displayed at the top of the Server Details page.",
"ms": "ms",
"name": "Name",
@@ -185,6 +186,7 @@
"sequence": "Sequence",
"server": "Server",
"serverDetailOrder": "Detail page widget order",
"serverFuncBtns": "Server func buttons",
"serverOrder": "Server order",
"serverTabConnecting": "Connecting...",
"serverTabEmpty": "There is no server.\nClick the fab to add one.",

View File

@@ -51,6 +51,7 @@
"disconnected": "Terputus",
"disk": "Disk",
"diskIgnorePath": "Abaikan jalan untuk disk",
"displayName": "Nama tampilan",
"dl2Local": "Unduh {fileName} ke lokal?",
"dockerEditHost": "Edit Docker_host",
"dockerEmptyRunningItems": "Tidak ada wadah yang berjalan.\nMungkin saja env DOCKER_HOST tidak dibaca dengan benar. Anda dapat menemukannya dengan menjalankan `echo $DOCKER_HOST` di terminal.",
@@ -117,6 +118,7 @@
"license": "Lisensi",
"light": "Terang",
"loadingFiles": "Memuat file ...",
"location": "Lokasi",
"log": "Catatan",
"loss": "kehilangan",
"madeWithLove": "Dibuat dengan ❤️ oleh {myGithub}",
@@ -126,7 +128,6 @@
"maxRetryCountEqual0": "Akan mencoba lagi lagi dan lagi.",
"min": "Min",
"mission": "Misi",
"moveOutServerFuncBtns": "Lokasi tombol fungsi server",
"moveOutServerFuncBtnsHelp": "Aktif: dapat ditampilkan di bawah setiap kartu pada halaman Tab Server. Nonaktif: dapat ditampilkan di bagian atas halaman Rincian Server.",
"ms": "MS",
"name": "Nama",
@@ -185,6 +186,7 @@
"sequence": "Urutan",
"server": "Server",
"serverDetailOrder": "Detail pesanan widget halaman",
"serverFuncBtns": "Tombol fungsi server",
"serverOrder": "Pesanan server",
"serverTabConnecting": "Menghubungkan ...",
"serverTabEmpty": "Tidak ada server.\nKlik fab untuk menambahkan satu.",

View File

@@ -51,6 +51,7 @@
"disconnected": "连接断开",
"disk": "硬盘",
"diskIgnorePath": "忽略的磁盘路径",
"displayName": "显示名称",
"dl2Local": "下载 {fileName} 到本地?",
"dockerEditHost": "编辑 DOCKER_HOST",
"dockerEmptyRunningItems": "没有正在运行的容器。\n这可能是因为环境变量 DOCKER_HOST 没有被正确读取。你可以通过在终端内运行 `echo $DOCKER_HOST` 来获取。",
@@ -117,6 +118,7 @@
"license": "开源证书",
"light": "亮",
"loadingFiles": "正在加载目录。。。",
"location": "位置",
"log": "日志",
"loss": "丢包率",
"madeWithLove": "用❤️制作 by {myGithub}",
@@ -126,7 +128,6 @@
"maxRetryCountEqual0": "会无限重试",
"min": "最小",
"mission": "任务",
"moveOutServerFuncBtns": "服务器功能按钮位置",
"moveOutServerFuncBtnsHelp": "开启:可以在服务器 Tab 页的每个卡片下方显示。关闭:在服务器详情页顶部显示。",
"ms": "毫秒",
"name": "名称",
@@ -185,6 +186,7 @@
"sequence": "顺序",
"server": "服务器",
"serverDetailOrder": "详情页部件顺序",
"serverFuncBtns": "服务器功能按钮",
"serverOrder": "服务器顺序",
"serverTabConnecting": "连接中...",
"serverTabEmpty": "现在没有服务器。\n点击右下方按钮来添加。",

View File

@@ -51,6 +51,7 @@
"disconnected": "連接斷開",
"disk": "硬盤",
"diskIgnorePath": "忽略的磁盤路徑",
"displayName": "顯示名稱",
"dl2Local": "下載 {fileName} 到本地?",
"dockerEditHost": "編輯 DOCKER_HOST",
"dockerEmptyRunningItems": "沒有正在運行的容器。\n這可能是因為環境變量 DOCKER_HOST 沒有被正確讀取。你可以通過在終端內運行 `echo $DOCKER_HOST` 來獲取。",
@@ -117,6 +118,7 @@
"license": "開源證書",
"light": "亮",
"loadingFiles": "正在加載目錄。。。",
"location": "位置",
"log": "日誌",
"loss": "丟包率",
"madeWithLove": "用❤️製作 by {myGithub}",
@@ -126,7 +128,6 @@
"maxRetryCountEqual0": "會無限重試",
"min": "最小",
"mission": "任務",
"moveOutServerFuncBtns": "服務器功能按鈕位置",
"moveOutServerFuncBtnsHelp": "開啟:可以在服務器 Tab 頁的每個卡片下方顯示。關閉:在服務器詳情頁頂部顯示。",
"ms": "毫秒",
"name": "名稱",
@@ -185,6 +186,7 @@
"sequence": "順序",
"server": "服務器",
"serverDetailOrder": "詳情頁部件順序",
"serverFuncBtns": "服務器功能按鈕",
"serverOrder": "服務器順序",
"serverTabConnecting": "連接中...",
"serverTabEmpty": "現在沒有服務器。\n點擊右下方按鈕來新增。",

View File

@@ -927,10 +927,20 @@ class _SettingPageState extends State<SettingPage> {
}
Widget _buildMoveOutServerFuncBtns() {
return ListTile(
title: Text(l10n.moveOutServerFuncBtns),
subtitle: Text(l10n.moveOutServerFuncBtnsHelp, style: UIs.textSize13Grey),
trailing: StoreSwitch(prop: _setting.moveOutServerTabFuncBtns),
return ExpandTile(
title: Text(l10n.serverFuncBtns),
children: [
ListTile(
title: Text(l10n.location),
subtitle:
Text(l10n.moveOutServerFuncBtnsHelp, style: UIs.textSize13Grey),
trailing: StoreSwitch(prop: _setting.moveOutServerTabFuncBtns),
),
ListTile(
title: Text(l10n.displayName),
trailing: StoreSwitch(prop: _setting.serverFuncBtnsDisplayName),
),
],
);
}

View File

@@ -13,6 +13,7 @@ import 'package:toolbox/data/model/pkg/manager.dart';
import 'package:toolbox/data/model/server/dist.dart';
import 'package:toolbox/data/res/path.dart';
import 'package:toolbox/data/res/provider.dart';
import 'package:toolbox/data/res/store.dart';
import '../../core/route.dart';
import '../../core/utils/server.dart';
@@ -64,15 +65,50 @@ class ServerFuncBtns extends StatelessWidget {
@override
Widget build(BuildContext context) {
// return Row(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// children: ServerTabMenuType.values
// .map(
// (e) => Stores.setting.serverFuncBtnsDisplayName.fetch()
// ? Column(
// mainAxisSize: MainAxisSize.min,
// children: [
// IconButton(
// onPressed: () => _onTapMoreBtns(e, spi, context),
// padding: EdgeInsets.zero,
// tooltip: e.name,
// icon: Icon(e.icon, size: iconSize ?? 15),
// ),
// Text(e.toStr, style: UIs.textSize9Grey)
// ],
// )
// : IconButton(
// onPressed: () => _onTapMoreBtns(e, spi, context),
// padding: EdgeInsets.zero,
// tooltip: e.name,
// icon: Icon(e.icon, size: iconSize ?? 15),
// ),
// )
// .toList(),
// );
return Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: ServerTabMenuType.values
.map((e) => IconButton(
onPressed: () => _onTapMoreBtns(e, spi, context),
padding: EdgeInsets.zero,
tooltip: e.name,
icon: Icon(e.icon, size: iconSize ?? 15),
))
.map(
(e) => IconButton(
onPressed: () => _onTapMoreBtns(e, spi, context),
padding: EdgeInsets.zero,
tooltip: e.name,
icon: Stores.setting.serverFuncBtnsDisplayName.fetch()
? Column(
children: [
Icon(e.icon, size: iconSize ?? 15),
Text(e.toStr, style: const TextStyle(fontSize: 7, color: Colors.grey))
],
)
: Icon(e.icon, size: iconSize ?? 15),
),
)
.toList(),
);
}