diff --git a/pom.xml b/pom.xml
index c79275d..74a1984 100644
--- a/pom.xml
+++ b/pom.xml
@@ -448,7 +448,11 @@
timi-fx
1.4.0
-
+
+ eu.mihosoft.monacofx
+ MonacoFX
+ 1.0-SNAPSHOT
+
diff --git a/src/main/java/com/zhangmeng/tools/controller/EditListController.java b/src/main/java/com/zhangmeng/tools/controller/EditListController.java
index 0976cd3..63e7212 100644
--- a/src/main/java/com/zhangmeng/tools/controller/EditListController.java
+++ b/src/main/java/com/zhangmeng/tools/controller/EditListController.java
@@ -4,6 +4,7 @@ import com.zhangmeng.tools.editors.ace.AceEditor;
import com.zhangmeng.tools.editors.monaco.MonacoEdit;
import com.zhangmeng.tools.utils.ImagePath;
import com.zhangmeng.tools.utils.ResourcesUtils;
+import eu.mihosoft.monacofx.MonacoFX;
import javafx.beans.property.SimpleDoubleProperty;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
@@ -38,7 +39,7 @@ public class EditListController {
private AnchorPane root;
private AceEditor acJsEditor;
- private MonacoEdit monacoEdit;
+ private AnchorPane monacoEdit;
public static final String color_cell = "#f4f4f4";
@@ -315,15 +316,29 @@ public class EditListController {
}
private void monacoEdit(boolean flag) {
+
+ MonacoFX monacoFX = new MonacoFX();
+ // set initial text
+ monacoFX.getEditor().getDocument().setText(
+ "#include \n" +
+ "int main() {\n" +
+ " // printf() displays the string inside quotation\n" +
+ " printf(\"Hello, World!\");\n" +
+ " return 0;\n" +
+ "}");
+
+ // use a predefined language like 'c'
+ monacoFX.getEditor().setCurrentLanguage("c");
+ monacoFX.getEditor().setCurrentTheme("vs-dark");
+
//默认选择第一个
listView.getSelectionModel().select(1);
-
if (!flag){
- monacoEdit = new MonacoEdit();
- root = monacoEdit;
- WebView webView = monacoEdit.getWebView();
+ root = new AnchorPane(monacoFX);
+ WebView webView = monacoFX.getView();
webView.prefWidthProperty().bind(root.widthProperty());
webView.prefHeightProperty().bind(root.heightProperty());
+ monacoEdit = root;
}else {
root = monacoEdit;
}
diff --git a/src/main/java/com/zhangmeng/tools/editors/monaco/MonacoEdit.java b/src/main/java/com/zhangmeng/tools/editors/monaco/MonacoEdit.java
index 8022720..711bf2e 100644
--- a/src/main/java/com/zhangmeng/tools/editors/monaco/MonacoEdit.java
+++ b/src/main/java/com/zhangmeng/tools/editors/monaco/MonacoEdit.java
@@ -89,15 +89,14 @@ public class MonacoEdit extends AnchorPane {
* @param value
*/
private void setMonacoText(String value) {
- JSObject editor = (JSObject) engine.executeScript("window");
- editor.call("setValue", value);
+ engine.executeScript("setValue()");
}
/**
* 设置模式
*/
private void setMonacoMode(MonacoMode mode) {
- window.call("setModelLanguage", mode.getName());
+ engine.executeScript("setModelLanguage()");
}
/**