!143 feaure: #I85IYZ 增加运行菜单

Merge pull request !143 from Luke/feature-I85IYZ
This commit is contained in:
Luke 2023-10-05 11:02:36 +00:00 committed by Gitee
commit 52672dcda8
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
7 changed files with 128 additions and 12 deletions

View File

@ -11,6 +11,9 @@ public class TextConstants {
public static final String TITLE = "title";
public static final String SAVE = "SAVE";
public static final String FILE = "FILE";
public static final String RUN = "RUN";
public static final String DE_BUG = "DE_BUG";
public static final String NEW = "NEW";
public static final String OPEN = "OPEN";
public static final String OPEN_DIRECTORY = "OPEN_DIRECTORY";

View File

@ -32,9 +32,12 @@ public class TopMenuBarManager extends AbstractManager<Menu> {
LanguageTopMenu languageTopMenu = LanguageTopMenu.getInstance();
SettingTopMenu settingTopMenu = SettingTopMenu.getInstance();
RunTopMenu runTopMenu=RunTopMenu.getInstance();
PluginTopMenu pluginTopMenu = PluginTopMenu.getInstance();
HelpTopMenu helpTopMenu = HelpTopMenu.getInstance();
PluginTopMenu pluginTopMenu = PluginTopMenu.getInstance();
private TopMenuBarManager() {
}
@ -61,6 +64,8 @@ public class TopMenuBarManager extends AbstractManager<Menu> {
// 初始化插件菜单
pluginTopMenu.initMenu();
runTopMenu.initMenu();
// 刷新顶部菜单栏
refreshTopMenuBar();
// 初始化快捷键
@ -73,12 +78,18 @@ public class TopMenuBarManager extends AbstractManager<Menu> {
public void registerTopMenuBar() {
// 文件菜单
registerNode(fileTopMenu.getMenu());
// 设置菜单
registerNode(topMenuBar.getSetMenu());
// 帮助菜单
registerNode(helpTopMenu.getMenu());
// 插件菜单
registerNode(topMenuBar.getPluginMenu());
// 运行菜单
registerNode(runTopMenu.getMenu());
// 帮助菜单
registerNode(helpTopMenu.getMenu());
}

View File

@ -32,16 +32,25 @@ public class TopMenuBar extends MenuBar {
*/
private final Menu setMenu = new Menu();
/**
* 帮助菜单
*/
private final Menu helpMenu = new Menu();
/// 菜单按钮
/**
* 插件菜单
*/
private final Menu pluginMenu = new Menu();
/**
* 运行菜单
*/
private final Menu runMenu = new Menu();
/**
* 调试菜单
*/
private final MenuItem deBugItem = new MenuItem();
/**
* 新建
*/
private final MenuItem newItem = new MenuItem();
/**
* 语言菜单
*/
@ -49,12 +58,9 @@ public class TopMenuBar extends MenuBar {
/**
* 新建
*/
private final MenuItem newItem = new MenuItem();
private final MenuItem runItem = new MenuItem();
/**
* 新建
*/
private final MenuItem aboutItem = new MenuItem();
/**
* 打开
*/
@ -106,6 +112,15 @@ public class TopMenuBar extends MenuBar {
*/
private final MenuItem pluginManagerItem = new MenuItem();
/**
* 帮助菜单
*/
private final Menu helpMenu = new Menu();
/**
* 关于
*/
private final MenuItem aboutItem = new MenuItem();
private TopMenuBar() {
}
@ -139,6 +154,10 @@ public class TopMenuBar extends MenuBar {
public Menu getPluginMenu() {
return pluginMenu;
}
public Menu getRunMenu() {
return runMenu;
}
public Menu getLanguageMenu() {
@ -152,6 +171,13 @@ public class TopMenuBar extends MenuBar {
public MenuItem getNewItem() {
return newItem;
}
public MenuItem getRunItem() {
return runItem;
}
public MenuItem getDeBugItem() {
return deBugItem;
}
public MenuItem getAboutItem() {

View File

@ -0,0 +1,70 @@
package org.jcnc.jnotepad.views.root.top.menubar.menu;
import javafx.scene.control.Menu;
import javafx.scene.control.MenuItem;
import org.jcnc.jnotepad.api.core.views.top.menu.AbstractTopMenu;
import java.util.HashMap;
import java.util.Map;
import static org.jcnc.jnotepad.common.constants.TextConstants.DE_BUG;
import static org.jcnc.jnotepad.common.constants.TextConstants.RUN;
/**
* 文件菜单
*
* @author gewuyou
*/
public class RunTopMenu extends AbstractTopMenu {
private static final RunTopMenu INSTANCE = new RunTopMenu();
private final Map<String, MenuItem> runMenuItems = new HashMap<>();
public static RunTopMenu getInstance() {
return INSTANCE;
}
/**
* 获取菜单名称
*
* @return 菜单名称
*/
@Override
public String getMenuName() {
return RUN;
}
/**
* 获取菜单
*
* @return 菜单
*/
@Override
public Menu getMenu() {
return topMenuBar.getRunMenu();
}
/**
* 获取菜单项集合
*
* @return 菜单项集合
*/
@Override
public Map<String, MenuItem> getMenuItems() {
return runMenuItems;
}
/**
* 注册顶部菜单
*/
@Override
protected void registerTopMenu() {
// 运行
registerMenuItem(topMenuBar.getRunItem(), RUN, "runItem", null);
// 调试
registerMenuItem(topMenuBar.getDeBugItem(), DE_BUG, "deBugItem", null);
}
}

View File

@ -9,8 +9,10 @@ PLUGIN=插件
CHINESE=中文
title=JNotepad
OPEN=打开
DE_BUG=调试
OPEN_DIRECTORY=打开文件夹
ABOUT=关于
RUN=运行
HELP=帮助
OPEN_CONFIGURATION_FILE=打开配置文件
RENAME=重命名

View File

@ -12,6 +12,8 @@ title=JNotepad
OPEN=Open
OPEN_DIRECTORY=Open Directory
HELP=Help
RUN=Run
DE_BUG=Debug
OPEN_CONFIGURATION_FILE=Open Configuration File
RENAME=Rename
TOP=Window Top

View File

@ -11,6 +11,8 @@ title=JNotepad
OPEN=打开
OPEN_DIRECTORY=打开文件夹
HELP=帮助
RUN=运行
DE_BUG=调试
ABOUT=关于
OPEN_CONFIGURATION_FILE=打开配置文件
RENAME=重命名