]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.debug.graphical/src/org/simantics/debug/graphical/GraphicalDebugger.java
Introduce DebuggerCanvasProxy to avoid compile time AWT toolkit init
[simantics/platform.git] / bundles / org.simantics.debug.graphical / src / org / simantics / debug / graphical / GraphicalDebugger.java
index f2fc14990332b2befcffecdfd60036e98b316b00..81844e4aeb82f4310b4409eef9591ffad012b4a9 100644 (file)
@@ -1,57 +1,59 @@
-package org.simantics.debug.graphical;\r
-\r
-import java.awt.Toolkit;\r
-import java.awt.event.KeyAdapter;\r
-import java.awt.event.KeyEvent;\r
-import java.awt.event.WindowAdapter;\r
-import java.awt.event.WindowEvent;\r
-import java.util.Arrays;\r
-\r
-import javax.swing.JFrame;\r
-\r
-public class GraphicalDebugger {\r
-\r
-    public static void newGraphDebugger() {\r
-        final JFrame frame = new JFrame();\r
-        frame.setTitle("Graph debugger");\r
-        Toolkit tk = Toolkit.getDefaultToolkit();\r
-        frame.setIconImages(Arrays.asList(\r
-                tk.createImage(GraphicalDebugger.class.getResource("bug-icon1.png")),\r
-                tk.createImage(GraphicalDebugger.class.getResource("bug-icon2.png")),\r
-                tk.createImage(GraphicalDebugger.class.getResource("bug-icon3.png")),\r
-                tk.createImage(GraphicalDebugger.class.getResource("bug-icon4.png"))\r
-                ));\r
-        frame.setSize(800, 600);\r
-\r
-        final DebuggerCanvas canvas = new DebuggerCanvas();\r
-        frame.add(canvas);\r
-        \r
-        frame.addWindowListener(new WindowAdapter() {\r
-            @Override\r
-            public void windowGainedFocus(WindowEvent e) {\r
-                canvas.repaint();\r
-            }\r
-        });\r
-        frame.addKeyListener(new UsefulKeyAdapter(new KeyAdapter() {\r
-            @Override\r
-            public void keyPressed(KeyEvent e) {\r
-                canvas.keyPressed(e);\r
-            }\r
-            @Override\r
-            public void keyReleased(KeyEvent e) {\r
-                canvas.keyReleased(e);\r
-            }\r
-        }));\r
-        \r
-        frame.addWindowListener(new WindowAdapter() {\r
-            \r
-            @Override\r
-            public void windowClosing(WindowEvent e) {\r
-                frame.dispose();\r
-            }\r
-            \r
-        });        \r
-        frame.setVisible(true);\r
-    }\r
-    \r
-}\r
+package org.simantics.debug.graphical;
+
+import java.awt.Toolkit;
+import java.awt.event.KeyAdapter;
+import java.awt.event.KeyEvent;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.util.Arrays;
+
+import javax.swing.JFrame;
+
+public class GraphicalDebugger {
+
+    public static DebuggerCanvasProxy newGraphDebugger() {
+        final JFrame frame = new JFrame();
+        frame.setTitle("Graph debugger");
+        Toolkit tk = Toolkit.getDefaultToolkit();
+        frame.setIconImages(Arrays.asList(
+                tk.createImage(GraphicalDebugger.class.getResource("bug-icon1.png")),
+                tk.createImage(GraphicalDebugger.class.getResource("bug-icon2.png")),
+                tk.createImage(GraphicalDebugger.class.getResource("bug-icon3.png")),
+                tk.createImage(GraphicalDebugger.class.getResource("bug-icon4.png"))
+                ));
+        frame.setSize(800, 600);
+
+        final DebuggerCanvas canvas = new DebuggerCanvas();
+        frame.add(canvas);
+        
+        frame.addWindowListener(new WindowAdapter() {
+            @Override
+            public void windowGainedFocus(WindowEvent e) {
+                canvas.repaint();
+            }
+        });
+        frame.addKeyListener(new UsefulKeyAdapter(new KeyAdapter() {
+            @Override
+            public void keyPressed(KeyEvent e) {
+                canvas.keyPressed(e);
+            }
+            @Override
+            public void keyReleased(KeyEvent e) {
+                canvas.keyReleased(e);
+            }
+        }));
+        
+        frame.addWindowListener(new WindowAdapter() {
+            
+            @Override
+            public void windowClosing(WindowEvent e) {
+                frame.dispose();
+            }
+            
+        });        
+        frame.setVisible(true);
+        
+        return new DebuggerCanvasProxy(canvas);
+    }
+    
+}