summaryrefslogtreecommitdiffhomepage
path: root/IDE/src/main/java/org/elmahrouss/CodeEditor.java
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-15 11:25:08 +0100
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-15 11:25:08 +0100
commitaa50be8e36a34a0d142918476cbf2b1f693e12da (patch)
treecda2537611d7ffa5c35d84155072468c75718219 /IDE/src/main/java/org/elmahrouss/CodeEditor.java
parent1632571d463a8c8731bb3e4559f78e4fdf329cb2 (diff)
IDE: Improve MetroWorks code editor class.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'IDE/src/main/java/org/elmahrouss/CodeEditor.java')
-rw-r--r--IDE/src/main/java/org/elmahrouss/CodeEditor.java34
1 files changed, 34 insertions, 0 deletions
diff --git a/IDE/src/main/java/org/elmahrouss/CodeEditor.java b/IDE/src/main/java/org/elmahrouss/CodeEditor.java
index cb78bd7..3d8b7f1 100644
--- a/IDE/src/main/java/org/elmahrouss/CodeEditor.java
+++ b/IDE/src/main/java/org/elmahrouss/CodeEditor.java
@@ -1,13 +1,47 @@
package org.elmahrouss;
+import javafx.beans.property.ObjectProperty;
+import javafx.collections.ObservableList;
+import javafx.event.EventHandler;
+import javafx.scene.Node;
+import javafx.scene.control.Label;
+import javafx.scene.control.TextField;
+import javafx.scene.input.KeyEvent;
import javafx.scene.layout.*;
public class CodeEditor extends Pane {
+ private Pane linePane;
+ private Label lines;
+
CodeEditor() {
super();
+ lines = new Label();
+ lines.setText("#include <iostream>\n\nint main()\n{\n\tstd::cout << \"Hello, world!\";\n}\n");
+ lines.setStyle("-fx-font-size: 15");
+ lines.setWrapText(true);
+ lines.setTranslateX(70);
+ lines.setTranslateY(30);
+
+ linePane = new Pane();
+
+ linePane.setStyle("-fx-background-color: #" + CodeEditorTheme.lineTheme + ";");
+ linePane.setMinSize(42, 720);
+ linePane.setMaxSize(42, 1080);
+
+ this.getChildren().addAll(linePane, lines);
+
this.setStyle("-fx-background-color: #" + CodeEditorTheme.backgroundTheme);
+
this.setMinSize(1280, 720);
this.setMaxSize(1920, 1080);
}
+
+ @Override
+ public ObservableList<Node> getChildren() {
+ return super.getChildren();
+ }
+
+ public String getContents() { return lines.getText(); }
+ public void setContents(String content) { lines.setText(content); }
}