add: confirmation of removing mods or datapacks. Closes #670.

This commit is contained in:
huanghongxun
2020-02-16 12:16:57 +08:00
parent 8b16e8be4d
commit 97a5d7e71a
7 changed files with 20 additions and 14 deletions

View File

@@ -32,6 +32,7 @@ import javafx.scene.control.SkinBase;
import javafx.scene.layout.BorderPane; import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox; import javafx.scene.layout.HBox;
import org.jackhuang.hmcl.mod.Datapack; import org.jackhuang.hmcl.mod.Datapack;
import org.jackhuang.hmcl.ui.Controllers;
import org.jackhuang.hmcl.ui.SVG; import org.jackhuang.hmcl.ui.SVG;
import org.jackhuang.hmcl.ui.construct.JFXCheckBoxTreeTableCell; import org.jackhuang.hmcl.ui.construct.JFXCheckBoxTreeTableCell;
import org.jackhuang.hmcl.ui.construct.SpinnerPane; import org.jackhuang.hmcl.ui.construct.SpinnerPane;
@@ -59,8 +60,11 @@ class DatapackListPageSkin extends SkinBase<DatapackListPage> {
toolbar.getChildren().add(createToolbarButton(i18n("button.refresh"), SVG::refresh, skinnable::refresh)); toolbar.getChildren().add(createToolbarButton(i18n("button.refresh"), SVG::refresh, skinnable::refresh));
toolbar.getChildren().add(createToolbarButton(i18n("datapack.add"), SVG::plus, skinnable::add)); toolbar.getChildren().add(createToolbarButton(i18n("datapack.add"), SVG::plus, skinnable::add));
toolbar.getChildren().add(createToolbarButton(i18n("mods.remove"), SVG::delete, () -> toolbar.getChildren().add(createToolbarButton(i18n("button.remove"), SVG::delete, () -> {
skinnable.removeSelected(tableView.getSelectionModel().getSelectedItems()))); Controllers.confirmDialog(i18n("button.remove.confirm"), i18n("button.remove"), () -> {
skinnable.removeSelected(tableView.getSelectionModel().getSelectedItems());
}, null);
}));
toolbar.getChildren().add(createToolbarButton(i18n("mods.enable"), SVG::check, () -> toolbar.getChildren().add(createToolbarButton(i18n("mods.enable"), SVG::check, () ->
skinnable.enableSelected(tableView.getSelectionModel().getSelectedItems()))); skinnable.enableSelected(tableView.getSelectionModel().getSelectedItems())));
toolbar.getChildren().add(createToolbarButton(i18n("mods.disable"), SVG::close, () -> toolbar.getChildren().add(createToolbarButton(i18n("mods.disable"), SVG::close, () ->

View File

@@ -34,6 +34,7 @@ import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox; import javafx.scene.layout.HBox;
import javafx.scene.layout.StackPane; import javafx.scene.layout.StackPane;
import org.jackhuang.hmcl.mod.ModInfo; import org.jackhuang.hmcl.mod.ModInfo;
import org.jackhuang.hmcl.ui.Controllers;
import org.jackhuang.hmcl.ui.FXUtils; import org.jackhuang.hmcl.ui.FXUtils;
import org.jackhuang.hmcl.ui.SVG; import org.jackhuang.hmcl.ui.SVG;
import org.jackhuang.hmcl.ui.construct.JFXCheckBoxTreeTableCell; import org.jackhuang.hmcl.ui.construct.JFXCheckBoxTreeTableCell;
@@ -65,8 +66,11 @@ class ModListPageSkin extends SkinBase<ModListPage> {
toolbar.getChildren().add(createToolbarButton(i18n("button.refresh"), SVG::refresh, skinnable::refresh)); toolbar.getChildren().add(createToolbarButton(i18n("button.refresh"), SVG::refresh, skinnable::refresh));
toolbar.getChildren().add(createToolbarButton(i18n("mods.add"), SVG::plus, skinnable::add)); toolbar.getChildren().add(createToolbarButton(i18n("mods.add"), SVG::plus, skinnable::add));
toolbar.getChildren().add(createToolbarButton(i18n("mods.remove"), SVG::delete, () -> toolbar.getChildren().add(createToolbarButton(i18n("button.remove"), SVG::delete, () -> {
skinnable.removeSelected(tableView.getSelectionModel().getSelectedItems()))); Controllers.confirmDialog(i18n("button.remove.confirm"), i18n("button.remove"), () -> {
skinnable.removeSelected(tableView.getSelectionModel().getSelectedItems());
}, null);
}));
toolbar.getChildren().add(createToolbarButton(i18n("mods.enable"), SVG::check, () -> toolbar.getChildren().add(createToolbarButton(i18n("mods.enable"), SVG::check, () ->
skinnable.enableSelected(tableView.getSelectionModel().getSelectedItems()))); skinnable.enableSelected(tableView.getSelectionModel().getSelectedItems())));
toolbar.getChildren().add(createToolbarButton(i18n("mods.disable"), SVG::close, () -> toolbar.getChildren().add(createToolbarButton(i18n("mods.disable"), SVG::close, () ->

View File

@@ -82,6 +82,8 @@ button.export=Export
button.no=No button.no=No
button.ok=OK button.ok=OK
button.refresh=Refresh button.refresh=Refresh
button.remove=Remove
button.remove.confirm=Are you sure you want to delete? You cannot roll back this operation!
button.save=Save button.save=Save
button.yes=Yes button.yes=Yes
@@ -291,7 +293,6 @@ mods.choose_mod=Choose your mods
mods.enable=Enable mods.enable=Enable
mods.disable=Disable mods.disable=Disable
mods.name=Name mods.name=Name
mods.remove=Remove
mods.not_modded=You should install a modloader first (Fabric, Forge or LiteLoader) mods.not_modded=You should install a modloader first (Fabric, Forge or LiteLoader)
datapack=Datapacks datapack=Datapacks
@@ -299,7 +300,6 @@ datapack.add=Install datapack
datapack.choose_datapack=Choose the datapack zip to import datapack.choose_datapack=Choose the datapack zip to import
datapack.extension=Datapack datapack.extension=Datapack
datapack.title=World %s - Datapacks datapack.title=World %s - Datapacks
datapack.remove=Remove
world=Worlds/Datapacks world=Worlds/Datapacks
world.add=Add world(.zip) world.add=Add world(.zip)

View File

@@ -81,6 +81,7 @@ button.export=Exportar
button.no=No button.no=No
button.ok=OK button.ok=OK
button.refresh=Refrescar button.refresh=Refrescar
button.remove=Borrar
button.save=Guardar button.save=Guardar
button.yes= button.yes=
@@ -277,7 +278,6 @@ mods.choose_mod=Escoja sus mods
mods.enable=Habilitar mods.enable=Habilitar
mods.disable=Deshabilitar mods.disable=Deshabilitar
mods.name=Nombre mods.name=Nombre
mods.remove=Borrar
mods.not_modded=Debes instalar un modloader primero (Fabric, Forge, o LiteLoader) mods.not_modded=Debes instalar un modloader primero (Fabric, Forge, o LiteLoader)
datapack=Data packs datapack=Data packs
@@ -285,7 +285,6 @@ datapack.add=Añadir data pack
datapack.choose_datapack=Escoja el datapack zip que será importado datapack.choose_datapack=Escoja el datapack zip que será importado
datapack.extension=Datapack datapack.extension=Datapack
datapack.title=Mundo %s - Datapacks datapack.title=Mundo %s - Datapacks
datapack.remove=Borrar
world=Worlds/Datapacks world=Worlds/Datapacks
world.add=Añadir mundo (.zip) world.add=Añadir mundo (.zip)

View File

@@ -81,6 +81,7 @@ button.export=Экспорт
button.no=Нет button.no=Нет
button.ok=Ок button.ok=Ок
button.refresh=Обновить button.refresh=Обновить
button.remove=Удалить
button.save=Сохранить button.save=Сохранить
button.yes=Да button.yes=Да
@@ -277,7 +278,6 @@ mods.choose_mod=Выберите свои моды
mods.enable=Включить mods.enable=Включить
mods.disable=Отключить mods.disable=Отключить
mods.name=Название mods.name=Название
mods.remove=Удалить
mods.not_modded=Сначала необходимо установить загрузчик модов (Forge, LiteLoader) mods.not_modded=Сначала необходимо установить загрузчик модов (Forge, LiteLoader)
datapack=Пакеты данных datapack=Пакеты данных
@@ -285,7 +285,6 @@ datapack.add=Добавить пакет данных
datapack.choose_datapack=Выберите zip-файл для импорта datapack.choose_datapack=Выберите zip-файл для импорта
datapack.extension=Пакет данных datapack.extension=Пакет данных
datapack.title=Мир %s - Пакеты данных datapack.title=Мир %s - Пакеты данных
datapack.remove=Удалить
world=Сохранения world=Сохранения
world.add=Добавить мир (.zip) world.add=Добавить мир (.zip)

View File

@@ -81,6 +81,8 @@ button.export=匯出
button.no= button.no=
button.ok=確定 button.ok=確定
button.refresh=重新整理 button.refresh=重新整理
button.remove=刪除
button.remove.confirm=您確認要刪除嗎?該操作無法撤銷!
button.save=儲存 button.save=儲存
button.yes= button.yes=
@@ -289,7 +291,6 @@ mods.choose_mod=選擇模組
mods.enable=啟用 mods.enable=啟用
mods.disable=停用 mods.disable=停用
mods.name=名稱 mods.name=名稱
mods.remove=刪除
mods.not_modded=你需要先在自動安裝頁面安裝 Fabric、Forge 或 LiteLoader 才能進行模組管理。 mods.not_modded=你需要先在自動安裝頁面安裝 Fabric、Forge 或 LiteLoader 才能進行模組管理。
datapack=資料包 datapack=資料包
@@ -297,7 +298,6 @@ datapack.add=加入資料包
datapack.choose_datapack=選擇要匯入的資料包壓縮檔 datapack.choose_datapack=選擇要匯入的資料包壓縮檔
datapack.extension=資料包 datapack.extension=資料包
datapack.title=世界 %s - 資料包 datapack.title=世界 %s - 資料包
datapack.remove=刪除
world=世界/資料包 world=世界/資料包
world.add=加入世界 world.add=加入世界

View File

@@ -81,6 +81,8 @@ button.export=导出
button.no= button.no=
button.ok=确定 button.ok=确定
button.refresh=刷新 button.refresh=刷新
button.remove=删除
button.remove.confirm=您确定要删除吗?该操作无法撤销!
button.save=保存 button.save=保存
button.yes= button.yes=
@@ -290,7 +292,6 @@ mods.choose_mod=选择模组
mods.enable=启用 mods.enable=启用
mods.disable=禁用 mods.disable=禁用
mods.name=名称 mods.name=名称
mods.remove=删除
mods.not_modded=你需要先在自动安装页面安装 Fabric、Forge 或 LiteLoader 才能进行模组管理。 mods.not_modded=你需要先在自动安装页面安装 Fabric、Forge 或 LiteLoader 才能进行模组管理。
datapack=数据包 datapack=数据包
@@ -298,7 +299,6 @@ datapack.add=添加数据包
datapack.choose_datapack=选择要导入的数据包压缩包 datapack.choose_datapack=选择要导入的数据包压缩包
datapack.extension=数据包 datapack.extension=数据包
datapack.title=世界 %s - 数据包 datapack.title=世界 %s - 数据包
datapack.remove=删除
world=世界/数据包 world=世界/数据包
world.add=添加世界 world.add=添加世界