Skip to content

Commit

Permalink
同步
Browse files Browse the repository at this point in the history
  • Loading branch information
zedoCN committed Mar 10, 2024
1 parent f363072 commit 616171c
Show file tree
Hide file tree
Showing 6 changed files with 88 additions and 9 deletions.
1 change: 1 addition & 0 deletions config/zxnoterUI/TitleBarConfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package team.zxorg.zxnoter.ui.behavior;

import team.zxorg.zxnoter.ui.ProjectView;

/**
* 菜单行为
*/
public interface MenuBehavior {
void action(ProjectView projectView);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package team.zxorg.zxnoter.ui.component.menu;

import team.zxorg.fxcl.component.menu.LangMenuItem;
import team.zxorg.zxnoter.ui.ProjectView;
import team.zxorg.zxnoter.ui.behavior.MenuBehavior;

public class FileMenu extends LangMenuItem {
private ProjectView projectView;

}
Original file line number Diff line number Diff line change
@@ -1,26 +1,74 @@
package team.zxorg.zxnoter.ui.component.titlebar;

import javafx.geometry.Pos;
import javafx.scene.control.Menu;
import javafx.scene.control.MenuBar;
import javafx.scene.control.MenuItem;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Priority;
import team.zxorg.extensionloader.core.Language;
import team.zxorg.extensionloader.core.Logger;
import team.zxorg.fxcl.component.Icon;
import team.zxorg.fxcl.component.LangLabel;
import team.zxorg.fxcl.component.menu.LangCheckMenuItem;
import team.zxorg.fxcl.component.menu.LangMenuItem;
import team.zxorg.zxnoter.ui.ProjectView;
import team.zxorg.zxnoter.ui.ZXNoter;
import team.zxorg.zxnoter.ui.component.activitypane.ActivityBarConfig;
import team.zxorg.zxnoter.ui.component.activitypane.ActivityPaneSkin;
import team.zxorg.zxnoter.ui.factory.MenuFactory;

import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.nio.file.*;
import java.nio.file.attribute.UserPrincipalLookupService;
import java.nio.file.spi.FileSystemProvider;
import java.util.LinkedHashMap;
import java.util.Set;

/**
* 标题栏定义
*/
public final class TitleBar extends HBox {

private static final LinkedHashMap<String, LinkedHashMap<String, LinkedHashMap<String, LangMenuItem>>> register = new LinkedHashMap<>();
private static final LinkedHashMap<String, Class<? extends LangMenuItem>> activityMenuClassMap = new LinkedHashMap<>();
private static final TitleBarConfig config = ZXNoter.config.get(TitleBarConfig.class);

public static void register(Class<? extends LangMenuItem> activityMenuClass) {
LangMenuItem activityPaneSkin;
try {
activityPaneSkin = activityMenuClass.getDeclaredConstructor().newInstance();
} catch (InstantiationException | IllegalAccessException | InvocationTargetException |
NoSuchMethodException e) {
Logger.warning("注册失败: " + activityMenuClass.getSimpleName());
return;
}

activityMenuClassMap.put(activityPaneSkin.getId(), activityMenuClass);
config.save();
}

/**
* 注册一个菜单
*
* @param menuId 菜单id
* @param sort 菜单排序 越小越靠前
*/
public static void registerMenu(String path, int sort, String group) {

}

/**
* 注册一个菜单项目
*
* @param parentId 菜单id
* @param itemId 菜单id
* @param sort 菜单排序 越小越靠前
* @param group 菜单组名
*/
public static void registerMenuItem(String path, int sort, String group) {

}

private final ProjectView projectView;

Expand All @@ -34,7 +82,7 @@ public TitleBar(ProjectView projectView) {
getStyleClass().add("title-icon");
}
};
private final MenuBar menuBar = new MenuBar(MenuFactory.getMenu(LANG + "menuBar.file",MenuFactory.getMenu(LANG + "menuBar.file")), MenuFactory.getMenu(LANG + "menuBar.edit"), MenuFactory.getMenu(LANG + "menuBar.help"));
private final MenuBar menuBar = new MenuBar();
private final LangLabel titleLabel = new LangLabel(LANG + "title") {
{
HBox.setHgrow(this, Priority.ALWAYS);
Expand All @@ -44,6 +92,9 @@ public TitleBar(ProjectView projectView) {
};

{
Menu menu = new Menu();
menu.getItems().addAll(new Menu());

getChildren().addAll(titleIcon, menuBar, titleLabel);
getStyleClass().addAll("title-bar");
}
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package team.zxorg.zxnoter.ui.component.zxnoter;

import javafx.scene.input.KeyCode;
import team.zxorg.zxnoter.ui.ProjectView;

import java.util.List;

public class BaseMenu {
private ProjectView projectView;
private int sort;
private String id;
private String group;
private List<KeyCode> hotKey;
}

0 comments on commit 616171c

Please sign in to comment.