From 0f2eee7d5cd0cec6b8dd26aed588f743c949501d Mon Sep 17 00:00:00 2001 From: gewuyou <1063891901@qq.com> Date: Sat, 23 Sep 2023 16:29:09 +0800 Subject: [PATCH] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20=E9=87=8D=E6=9E=84?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=20=E9=87=8D=E6=9E=84=E9=A1=B6=E9=83=A8?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E6=A0=8F=E4=B8=8E=E4=BE=A7=E8=BE=B9=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E6=A0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../views/manager/TopMenuBarManager.java | 26 +++++++++++++------ .../views/root/top/menu/TopMenuBar.java | 18 +++++++------ 2 files changed, 28 insertions(+), 16 deletions(-) diff --git a/src/main/java/org/jcnc/jnotepad/views/manager/TopMenuBarManager.java b/src/main/java/org/jcnc/jnotepad/views/manager/TopMenuBarManager.java index f5fd135..68bab63 100644 --- a/src/main/java/org/jcnc/jnotepad/views/manager/TopMenuBarManager.java +++ b/src/main/java/org/jcnc/jnotepad/views/manager/TopMenuBarManager.java @@ -5,6 +5,7 @@ import javafx.collections.ObservableList; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.geometry.Insets; +import javafx.scene.Scene; import javafx.scene.control.*; import javafx.scene.input.KeyCombination; import javafx.stage.Stage; @@ -13,7 +14,7 @@ import org.jcnc.jnotepad.controller.config.AppConfigController; import org.jcnc.jnotepad.controller.event.handler.menubar.*; import org.jcnc.jnotepad.controller.i18n.LocalizationController; import org.jcnc.jnotepad.model.entity.ShortcutKey; -import org.jcnc.jnotepad.plugin.PluginManagerInterface; +import org.jcnc.jnotepad.ui.pluginstage.PluginManagementPane; import org.jcnc.jnotepad.util.LogUtil; import org.jcnc.jnotepad.util.UiUtil; import org.jcnc.jnotepad.views.root.center.main.center.tab.CenterTabPane; @@ -111,12 +112,18 @@ public class TopMenuBarManager { registerSetMenuItem(topMenuBar.getLanguageMenu(), LANGUAGE, "languageMenu", actionEvent -> { }); - //插件菜单 - registerPluginMenuItem(topMenuBar.getAddItem(), ADD_PLUGIN, "addItem", event -> { - PluginManagerInterface pluginManagerInterface = PluginManagerInterface.getInstance(); - Stage stage = new Stage(); - stage.getIcons().add(UiUtil.getAppIcon()); - pluginManagerInterface.start(stage); +// //插件菜单 + + registerPluginMenuItem(topMenuBar.getPluginManagerItem(), MANAGER_PLUGIN, "pluginManagerItem", event -> { + Stage newStage = new Stage(); + newStage.getIcons().add(UiUtil.getAppIcon()); + newStage.setTitle("插件管理"); + + PluginManagementPane pluginManagementPane = new PluginManagementPane(); + + Scene scene = new Scene(pluginManagementPane, 900, 500); + newStage.setScene(scene); + newStage.show(); }); registerPluginMenuItem(topMenuBar.getCountItem(), STATISTICS, "countItem", event -> { }); @@ -260,7 +267,10 @@ public class TopMenuBarManager { // 保证json的key必须和变量名一致 MenuItem menuItem = topMenuBar.getItemMap().get(shortcutKey.getButtonName()); String shortKeyValue = shortcutKey.getShortcutKeyValue(); - if (Objects.isNull(menuItem) || "".equals(shortKeyValue)) { + if (Objects.isNull(menuItem)) { + continue; + } + if ("".equals(shortKeyValue)) { itemsToUnbind.add(menuItem); continue; } diff --git a/src/main/java/org/jcnc/jnotepad/views/root/top/menu/TopMenuBar.java b/src/main/java/org/jcnc/jnotepad/views/root/top/menu/TopMenuBar.java index e3d721e..a5c0cd7 100644 --- a/src/main/java/org/jcnc/jnotepad/views/root/top/menu/TopMenuBar.java +++ b/src/main/java/org/jcnc/jnotepad/views/root/top/menu/TopMenuBar.java @@ -61,11 +61,7 @@ public class TopMenuBar extends MenuBar { * 重命名 */ private final MenuItem renameItem = new MenuItem(); - /** - * 增加 - */ - private final MenuItem addItem = new MenuItem(); - private MenuItem pluginManagerItem; + /** * 查看 */ @@ -91,6 +87,11 @@ public class TopMenuBar extends MenuBar { */ private final RadioMenuItem englishItem = new RadioMenuItem(); + /** + * 插件管理菜单项 + */ + private final MenuItem pluginManagerItem = new MenuItem(); + private TopMenuBar() { } @@ -147,9 +148,6 @@ public class TopMenuBar extends MenuBar { return renameItem; } - public MenuItem getAddItem() { - return addItem; - } public MenuItem getCountItem() { return countItem; @@ -174,4 +172,8 @@ public class TopMenuBar extends MenuBar { public RadioMenuItem getEnglishItem() { return englishItem; } + + public MenuItem getPluginManagerItem() { + return pluginManagerItem; + } }