Skip to content

Commit bd72696

Browse files
committed
newui: 插件管理界面使用原生窗体
1 parent a47712e commit bd72696

1 file changed

Lines changed: 25 additions & 20 deletions

File tree

src/main/java/com/xwintop/xJavaFxTool/newui/NewLauncherController.java

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -14,25 +14,25 @@
1414
import com.xwintop.xcore.javafx.FxApp;
1515
import com.xwintop.xcore.javafx.dialog.FxAlerts;
1616
import com.xwintop.xcore.javafx.dialog.FxDialog;
17-
import com.xwintop.xcore.util.javafx.JavaFxViewUtil;
18-
import javafx.beans.Observable;
19-
import javafx.fxml.FXMLLoader;
20-
import javafx.scene.Parent;
21-
import javafx.scene.control.TextField;
22-
import javafx.scene.control.*;
23-
import javafx.scene.layout.VBox;
24-
import javafx.scene.web.WebView;
25-
import lombok.extern.slf4j.Slf4j;
26-
import org.apache.commons.lang3.StringUtils;
27-
28-
import java.awt.*;
17+
import java.awt.Desktop;
2918
import java.io.File;
3019
import java.io.IOException;
3120
import java.net.URI;
3221
import java.util.ArrayList;
3322
import java.util.HashMap;
3423
import java.util.List;
3524
import java.util.Map;
25+
import javafx.beans.Observable;
26+
import javafx.scene.control.ButtonType;
27+
import javafx.scene.control.CheckMenuItem;
28+
import javafx.scene.control.ContextMenu;
29+
import javafx.scene.control.Hyperlink;
30+
import javafx.scene.control.TabPane;
31+
import javafx.scene.control.TextField;
32+
import javafx.scene.layout.VBox;
33+
import javafx.scene.web.WebView;
34+
import lombok.extern.slf4j.Slf4j;
35+
import org.apache.commons.lang3.StringUtils;
3636

3737
@Slf4j
3838
public class NewLauncherController {
@@ -116,7 +116,12 @@ private void loadPlugins() {
116116
pluginList.forEach(this::loadPlugin);
117117
}
118118

119-
public void loadPlugin(PluginJarInfo jarInfo) {
119+
/**
120+
* 加载单个插件到界面,要求插件已经经过 {@link PluginParser#parse(File, PluginJarInfo)} 解析
121+
*
122+
* @param jarInfo 插件信息
123+
*/
124+
private void loadPlugin(PluginJarInfo jarInfo) {
120125
String menuParentTitle = jarInfo.getMenuParentTitle();
121126
if (menuParentTitle != null) {
122127

@@ -159,13 +164,13 @@ public void openConfigDialog() {
159164
}
160165

161166
public void openPluginManager() {
162-
try {
163-
FXMLLoader fXMLLoader = PluginManageController.getFXMLLoader();
164-
Parent root = fXMLLoader.load();
165-
JavaFxViewUtil.openNewWindow(Main.RESOURCE_BUNDLE.getString("plugin_manage"), root);
166-
} catch (IOException e) {
167-
FxAlerts.error("打开插件管理对话框失败", e);
168-
}
167+
new FxDialog<PluginManageController>()
168+
.setBodyFxml(PluginManageController.FXML)
169+
.setOwner(FxApp.primaryStage)
170+
.setResizable(true)
171+
.setTitle(Main.RESOURCE_BUNDLE.getString("plugin_manage"))
172+
.setPrefWidth(800)
173+
.show();
169174
}
170175

171176
public void openProjectUrl() {

0 commit comments

Comments
 (0)