1 package io.github.magwas.inez.ui.editor;
2
3 import org.eclipse.core.runtime.IProgressMonitor;
4 import org.eclipse.gef.fx.anchors.ChopBoxStrategy;
5 import org.eclipse.gef.fx.anchors.DynamicAnchor;
6 import org.eclipse.gef.fx.nodes.Connection;
7 import org.eclipse.swt.SWT;
8 import org.eclipse.swt.widgets.Composite;
9 import org.eclipse.ui.IEditorInput;
10 import org.eclipse.ui.IEditorSite;
11 import org.eclipse.ui.PartInitException;
12 import org.eclipse.ui.part.EditorPart;
13
14 import io.github.magwas.inez.ui.mindmap.visuals.MindMapConnectionVisual;
15 import io.github.magwas.inez.ui.mindmap.visuals.MindMapNodeVisual;
16 import javafx.embed.swt.FXCanvas;
17 import javafx.scene.Scene;
18 import javafx.scene.layout.Pane;
19 import javafx.scene.paint.Color;
20
21 public class ModelEditorView extends EditorPart {
22
23 public static String ID = "io.github.magwas.inez.ui.editor";
24
25 @Override
26 public void createPartControl(Composite parent) {
27 final FXCanvas fxCanvas = new FXCanvas(parent, SWT.NONE);
28 Pane root = new Pane();
29
30
31 MindMapNodeVisual node = new MindMapNodeVisual();
32 node.setTitle("Test Node");
33 node.setDescription("This is just a test node, to see, how it looks :)");
34 node.relocate(50, 50);
35
36 MindMapNodeVisual node2 = new MindMapNodeVisual();
37 node2.setTitle("Test Node 2");
38 node2.setDescription("This is just a test node, to see, how it looks :)");
39 node2.relocate(150, 250);
40 node2.setColor(Color.ALICEBLUE);
41
42 Connection conn = new MindMapConnectionVisual();
43 conn.setStartAnchor(new DynamicAnchor(node, new ChopBoxStrategy()));
44 conn.setEndAnchor(new DynamicAnchor(node2, new ChopBoxStrategy()));
45
46 root.getChildren().addAll(conn, node, node2);
47
48 fxCanvas.setScene(new Scene(root, 1024, 768));
49 }
50
51 @Override
52 public void doSave(IProgressMonitor monitor) {
53
54
55 }
56
57 @Override
58 public void doSaveAs() {
59
60
61 }
62
63 @Override
64 public boolean isSaveAsAllowed() {
65
66 return false;
67 }
68
69 @Override
70 public void init(IEditorSite site, IEditorInput input)
71 throws PartInitException {
72 setSite(site);
73 setInput(input);
74 }
75
76 @Override
77 public boolean isDirty() {
78
79 return false;
80 }
81
82 @Override
83 public void setFocus() {
84
85
86 }
87
88 }