From 7e745797f9460bcf0ba50bc8c526e17b0a3d1a21 Mon Sep 17 00:00:00 2001 From: gewuyou <1063891901@qq.com> Date: Wed, 11 Oct 2023 22:09:19 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20=E5=B0=9D=E8=AF=95=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E6=96=87=E4=BB=B6=E5=9B=BE=E6=A0=87=E6=B8=B2=E6=9F=93?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/jcnc/jnotepad/app/utils/FileUtil.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/jcnc/jnotepad/app/utils/FileUtil.java b/src/main/java/org/jcnc/jnotepad/app/utils/FileUtil.java index 9b1fe76..b9fbc62 100644 --- a/src/main/java/org/jcnc/jnotepad/app/utils/FileUtil.java +++ b/src/main/java/org/jcnc/jnotepad/app/utils/FileUtil.java @@ -1,6 +1,7 @@ package org.jcnc.jnotepad.app.utils; import javafx.scene.Node; +import javafx.scene.image.ImageView; import org.jcnc.jnotepad.controller.event.handler.menuitem.OpenFile; import org.jcnc.jnotepad.controller.exception.AppException; import org.jcnc.jnotepad.model.entity.DirFileModel; @@ -165,7 +166,7 @@ public class FileUtil { dirFileModel.getChildFile().add(new DirFileModel( f.getAbsolutePath(), f.getName(), null, getIconCorrespondingToFileName(f.getName()), - getIconCorrespondingToFileName(f.getName()))); + null)); } } } @@ -306,7 +307,14 @@ public class FileUtil { public static Node getIconCorrespondingToFileName(String fileName) { // todo 在此根据文件缀名获取对应的图标 String fileExtension = fileName.substring(fileName.lastIndexOf(".") + 1); - return UiUtil.getIconMap().getOrDefault(fileExtension, FontIcon.of(FILE_UNKNOWN)); + Node orDefault = UiUtil.getIconMap().getOrDefault(fileExtension, FontIcon.of(FILE_UNKNOWN)); + if (orDefault instanceof FontIcon fontIcon) { + return new FontIcon(fontIcon.getIconLiteral()); + } + if (orDefault instanceof ImageView imageView) { + return new ImageView(imageView.getImage()); + } + return orDefault; } } -- Gitee