Add button to reveal world directory in explorer
This commit is contained in:
@@ -27,6 +27,7 @@ import javafx.scene.image.Image;
|
|||||||
import javafx.stage.FileChooser;
|
import javafx.stage.FileChooser;
|
||||||
import org.jackhuang.hmcl.game.World;
|
import org.jackhuang.hmcl.game.World;
|
||||||
import org.jackhuang.hmcl.ui.Controllers;
|
import org.jackhuang.hmcl.ui.Controllers;
|
||||||
|
import org.jackhuang.hmcl.ui.FXUtils;
|
||||||
import org.jackhuang.hmcl.ui.wizard.SinglePageWizardProvider;
|
import org.jackhuang.hmcl.ui.wizard.SinglePageWizardProvider;
|
||||||
import org.jackhuang.hmcl.util.versioning.VersionNumber;
|
import org.jackhuang.hmcl.util.versioning.VersionNumber;
|
||||||
|
|
||||||
@@ -81,6 +82,14 @@ public class WorldListItem extends Control {
|
|||||||
Controllers.getDecorator().startWizard(new SinglePageWizardProvider(controller -> new WorldExportPage(world, file.toPath(), controller::onFinish)));
|
Controllers.getDecorator().startWizard(new SinglePageWizardProvider(controller -> new WorldExportPage(world, file.toPath(), controller::onFinish)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void reveal() {
|
||||||
|
try {
|
||||||
|
FXUtils.openFolder(world.getFile().toFile());
|
||||||
|
} catch (UnsupportedOperationException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void manageDatapacks() {
|
public void manageDatapacks() {
|
||||||
if (world.getGameVersion() == null || // old game will not write game version to level.dat
|
if (world.getGameVersion() == null || // old game will not write game version to level.dat
|
||||||
(VersionNumber.isIntVersionNumber(world.getGameVersion()) // we don't parse snapshot version
|
(VersionNumber.isIntVersionNumber(world.getGameVersion()) // we don't parse snapshot version
|
||||||
|
|||||||
@@ -65,7 +65,8 @@ public class WorldListItemSkin extends SkinBase<WorldListItem> {
|
|||||||
|
|
||||||
menu.getContent().setAll(
|
menu.getContent().setAll(
|
||||||
new IconedMenuItem(FXUtils.limitingSize(SVG.gear(Theme.blackFillBinding(), 14, 14), 14, 14), i18n("world.datapack"), FXUtils.withJFXPopupClosing(skinnable::manageDatapacks, popup)),
|
new IconedMenuItem(FXUtils.limitingSize(SVG.gear(Theme.blackFillBinding(), 14, 14), 14, 14), i18n("world.datapack"), FXUtils.withJFXPopupClosing(skinnable::manageDatapacks, popup)),
|
||||||
new IconedMenuItem(FXUtils.limitingSize(SVG.export(Theme.blackFillBinding(), 14, 14), 14, 14), i18n("world.export"), FXUtils.withJFXPopupClosing(skinnable::export, popup)));
|
new IconedMenuItem(FXUtils.limitingSize(SVG.export(Theme.blackFillBinding(), 14, 14), 14, 14), i18n("world.export"), FXUtils.withJFXPopupClosing(skinnable::export, popup)),
|
||||||
|
new IconedMenuItem(FXUtils.limitingSize(SVG.folderOpen(Theme.blackFillBinding(), 14, 14), 14, 14), i18n("world.reveal"), FXUtils.withJFXPopupClosing(skinnable::reveal, popup)));
|
||||||
|
|
||||||
HBox right = new HBox();
|
HBox right = new HBox();
|
||||||
right.setAlignment(Pos.CENTER_RIGHT);
|
right.setAlignment(Pos.CENTER_RIGHT);
|
||||||
|
|||||||
@@ -275,6 +275,7 @@ world.import.failed=Unable to import this world: %s
|
|||||||
world.import.invalid=Not a valid world zip
|
world.import.invalid=Not a valid world zip
|
||||||
world.name=World Name
|
world.name=World Name
|
||||||
world.name.enter=Enter the world name
|
world.name.enter=Enter the world name
|
||||||
|
world.reveal=Reveal in Explorer
|
||||||
world.time=EEE, MMM d, yyyy HH:mm:ss
|
world.time=EEE, MMM d, yyyy HH:mm:ss
|
||||||
|
|
||||||
profile=Game Directories
|
profile=Game Directories
|
||||||
|
|||||||
@@ -274,6 +274,7 @@ world.import.invalid=無法識別的存檔壓縮包
|
|||||||
world.game_version=遊戲版本
|
world.game_version=遊戲版本
|
||||||
world.name=世界名稱
|
world.name=世界名稱
|
||||||
world.name.enter=輸入世界名稱
|
world.name.enter=輸入世界名稱
|
||||||
|
world.reveal=打開資料夾
|
||||||
world.time=yyyy 年 MM 月 dd 日 HH:mm:ss
|
world.time=yyyy 年 MM 月 dd 日 HH:mm:ss
|
||||||
|
|
||||||
profile=遊戲目錄
|
profile=遊戲目錄
|
||||||
|
|||||||
@@ -274,6 +274,7 @@ world.import.failed=无法导入此世界:%s
|
|||||||
world.import.invalid=无法识别的存档压缩包
|
world.import.invalid=无法识别的存档压缩包
|
||||||
world.name=世界名称
|
world.name=世界名称
|
||||||
world.name.enter=输入世界名称
|
world.name.enter=输入世界名称
|
||||||
|
world.reveal=打开文件夹
|
||||||
world.time=yyyy 年 MM 月 dd 日 HH:mm:ss
|
world.time=yyyy 年 MM 月 dd 日 HH:mm:ss
|
||||||
|
|
||||||
profile=游戏目录
|
profile=游戏目录
|
||||||
|
|||||||
Reference in New Issue
Block a user