]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.debug.graphical/src/org/simantics/debug/graphical/GraphicalDebugger.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.debug.graphical / src / org / simantics / debug / graphical / GraphicalDebugger.java
1 package org.simantics.debug.graphical;\r
2 \r
3 import java.awt.Toolkit;\r
4 import java.awt.event.KeyAdapter;\r
5 import java.awt.event.KeyEvent;\r
6 import java.awt.event.WindowAdapter;\r
7 import java.awt.event.WindowEvent;\r
8 import java.util.Arrays;\r
9 \r
10 import javax.swing.JFrame;\r
11 \r
12 public class GraphicalDebugger {\r
13 \r
14     public static void newGraphDebugger() {\r
15         final JFrame frame = new JFrame();\r
16         frame.setTitle("Graph debugger");\r
17         Toolkit tk = Toolkit.getDefaultToolkit();\r
18         frame.setIconImages(Arrays.asList(\r
19                 tk.createImage(GraphicalDebugger.class.getResource("bug-icon1.png")),\r
20                 tk.createImage(GraphicalDebugger.class.getResource("bug-icon2.png")),\r
21                 tk.createImage(GraphicalDebugger.class.getResource("bug-icon3.png")),\r
22                 tk.createImage(GraphicalDebugger.class.getResource("bug-icon4.png"))\r
23                 ));\r
24         frame.setSize(800, 600);\r
25 \r
26         final DebuggerCanvas canvas = new DebuggerCanvas();\r
27         frame.add(canvas);\r
28         \r
29         frame.addWindowListener(new WindowAdapter() {\r
30             @Override\r
31             public void windowGainedFocus(WindowEvent e) {\r
32                 canvas.repaint();\r
33             }\r
34         });\r
35         frame.addKeyListener(new UsefulKeyAdapter(new KeyAdapter() {\r
36             @Override\r
37             public void keyPressed(KeyEvent e) {\r
38                 canvas.keyPressed(e);\r
39             }\r
40             @Override\r
41             public void keyReleased(KeyEvent e) {\r
42                 canvas.keyReleased(e);\r
43             }\r
44         }));\r
45         \r
46         frame.addWindowListener(new WindowAdapter() {\r
47             \r
48             @Override\r
49             public void windowClosing(WindowEvent e) {\r
50                 frame.dispose();\r
51             }\r
52             \r
53         });        \r
54         frame.setVisible(true);\r
55     }\r
56     \r
57 }\r