DebuggerMain.fxml 17.6 KB
Newer Older
1
2
<?xml version="1.0" encoding="UTF-8"?>

Alexander Weigl's avatar
Alexander Weigl committed
3

Alexander Weigl's avatar
Alexander Weigl committed
4
<?import de.jensd.fx.glyphs.materialdesignicons.*?>
Alexander Weigl's avatar
Alexander Weigl committed
5
<?import edu.kit.iti.formal.psdbg.gui.controls.DebuggerStatusBar?>
6
<?import javafx.scene.control.*?>
7
<?import javafx.scene.layout.BorderPane?>
Alexander Weigl's avatar
Alexander Weigl committed
8
9
<?import javafx.scene.layout.HBox?>
<?import javafx.scene.layout.Pane?>
10
<?import javafx.scene.layout.VBox?>
Alexander Weigl's avatar
Alexander Weigl committed
11
<?import org.dockfx.DockPane?>
12
<BorderPane xmlns:fx="http://javafx.com/fxml/1" fx:id="rootPane" xmlns="http://javafx.com/javafx/8.0.112"
Alexander Weigl's avatar
Alexander Weigl committed
13
            fx:controller="edu.kit.iti.formal.psdbg.gui.controller.DebuggerMain"
Alexander Weigl's avatar
Alexander Weigl committed
14
            prefWidth="1024" prefHeight="640">
15
    <center>
Alexander Weigl's avatar
Alexander Weigl committed
16
17
18
19
20
21
22
        <!--  <DockStation fx:id="dockStation">

          </DockStation>-->

        <DockPane fx:id="dockStation"/>

        <!--
23
24
        <SplitPane fx:id="splitPane" dividerPositions="0.5" layoutY="29.0" prefHeight="371.0" prefWidth="600.0">
            <items>
25
26
                <VBox>
                    <children>
Alexander Weigl's avatar
Alexander Weigl committed
27
28
29
30
31

                     ScriptControllerPane fx:id="tabPane" side="left" styleClass="tab-pane"
                                       tabClosingPolicy="SELECTED_TAB" VBox.vgrow="ALWAYS"/>
                    </children>
                </VBox>
Alexander Weigl's avatar
Alexander Weigl committed
32
                <InspectionViewsController fx:id="inspectionViewsController"></InspectionViewsController>
Alexander Weigl's avatar
Alexander Weigl committed
33
34
35
36
37
38
39
40
41
            </items>
        </SplitPane>-->
    </center>
    <top>
        <VBox>
            <children>
                <MenuBar fx:id="menuBar">
                    <menus>
                        <Menu fx:id="fileMenu" text="File">
42
                            <items>
Alexander Weigl's avatar
Alexander Weigl committed
43
44
45
46
                                <MenuItem fx:id="newScriptMenuItem" onAction="#newScript" text="_New Script"
                                          accelerator="Shortcut+n"/>
                                <MenuItem fx:id="openScriptFileMenuItem" onAction="#openScript" text="_Open Script"
                                          accelerator="Shortcut+o"/>
Alexander Weigl's avatar
Alexander Weigl committed
47
                                <SeparatorMenuItem/>
Alexander Weigl's avatar
Alexander Weigl committed
48
49
50
51
                                <MenuItem fx:id="loadKeYFileMenuItem" onAction="#loadKeYFile" text="Load _KeY File"
                                          accelerator="Shortcut+Alt+o"/>
                                <MenuItem fx:id="loadJavaFileMenuItem" onAction="#loadJavaFile" text="Load _Java File"
                                          accelerator="Shortcut+Shift+o"/>
Alexander Weigl's avatar
Alexander Weigl committed
52
                                <SeparatorMenuItem/>
53
                                <MenuItem onAction="#saveScript" text="_Save Script" accelerator="Shortcut+s"/>
Alexander Weigl's avatar
Alexander Weigl committed
54
55
                                <MenuItem onAction="#saveAsScript" text="Save Script _As ..."
                                          accelerator="Shortcut+Shift+s"/>
56
                                <MenuItem onAction="#saveProof" text="_Save Proof" accelerator="Shortcut+Alt+s"/>
Alexander Weigl's avatar
Alexander Weigl committed
57
58
                                <MenuItem fx:id="closeMenuItem" onAction="#closeProgram" text="_Close"
                                          accelerator="Shortcut+q"/>
Alexander Weigl's avatar
Alexander Weigl committed
59
60
61
62
63
                            </items>
                        </Menu>
                        <Menu text="Edit">
                            <items>
                                <MenuItem text="Delete"/>
64
                                <MenuItem text="Reformat" accelerator="Ctrl+Shift+f" onAction="#reformatCurrentEditor"/>
Alexander Weigl's avatar
Alexander Weigl committed
65
66
67
                                <MenuItem text="Print Debug Information" onAction="#debugPrintDot"
                                          accelerator="Ctrl+d"
                                />
Alexander Weigl's avatar
Alexander Weigl committed
68
69
                            </items>
                        </Menu>
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
                        <Menu text="Debug">
                            <MenuItem onAction="#executeScript"
                                      text="Execute"
                                      accelerator="F2"
                                      disable="${controller.executeNotPossible}">
                                <graphic>
                                    <MaterialDesignIconView glyphName="PLAY" size="24.0"/>
                                </graphic>
                            </MenuItem>
                            <MenuItem text="Debug stepwise"
                                      accelerator="F3"
                                      onAction="#executeStepwise"
                                      disable="${controller.executeNotPossible}">
                                <graphic>
                                    <MaterialDesignIconView glyphName="PLAY_PAUSE" size="24.0"/>
                                </graphic>
                            </MenuItem>
                            <MenuItem
                                    accelerator="F4"
                                    text="Run to Breakpoint"
                                    onAction="#executeToBreakpoint"
                                    disable="${controller.executeNotPossible}">
                                <graphic>
                                    <MaterialDesignIconView glyphName="FAST_FORWARD" size="24.0"/>
                                </graphic>
                            </MenuItem>

                            <MenuItem onAction="#stepInto"
                                      accelerator="F5"
                                      text="Step Into"
                                      disable="${controller.stepNotPossible}">
                                <graphic>
                                    <MaterialDesignIconView glyphName="DEBUG_STEP_INTO" size="24.0"/>
                                </graphic>
                            </MenuItem>

                            <MenuItem onAction="#stepOver"
                                      accelerator="F6"
                                      text="Step Over"
                                      disable="${controller.stepNotPossible}">
                                <graphic>
                                    <MaterialDesignIconView glyphName="DEBUG_STEP_OVER" size="24.0"/>
                                </graphic>
                            </MenuItem>

                            <MenuItem onAction="#stepBack"
                                      accelerator="F7"

                                      text="Step Back"
                                      disable="${controller.stepNotPossible}">
                                <graphic>
                                    <MaterialDesignIconView glyphName="DEBUG_STEP_OVER" size="24.0" scaleX="-1"/>
                                </graphic>
                            </MenuItem>


                            <MenuItem disable="${controller.stepNotPossible}"
                                      accelerator="F8"
                                      text="Step Out">
                                <graphic>
                                    <MaterialDesignIconView glyphName="DEBUG_STEP_OUT" size="24.0"/>
                                </graphic>
                            </MenuItem>

                            <MenuItem onAction="#stopDebugMode"
                                      accelerator="F12"
                                      text="Stop"
                                      disable="${controller.stepNotPossible}">
                                <!--disable="${! controller.debugMode}"-->
                                <graphic>
                                    <MaterialDesignIconView glyphName="STOP" size="24.0"/>
                                </graphic>
                            </MenuItem>
                        </Menu>
Alexander Weigl's avatar
Alexander Weigl committed
144
145
                        <Menu text="View">
                            <items>
146
147
                                <CheckMenuItem fx:id="miCodeDock" onAction="#showCodeDock" text="Show Java Code window"
                                               accelerator="Ctrl+J">
Alexander Weigl's avatar
Alexander Weigl committed
148
149
150
                                    <graphic>
                                        <MaterialDesignIconView glyphName="CODE_TAGS" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
151
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
152
                                <CheckMenuItem fx:id="miWelcomeDock" onAction="#showWelcomeDock"
153
                                               text="Show Welcome window" accelerator="Ctrl+w">
Alexander Weigl's avatar
Alexander Weigl committed
154
155
156
                                    <graphic>
                                        <MaterialDesignIconView glyphName="HELP_CIRCLE" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
157
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
158
                                <CheckMenuItem fx:id="miActiveInspector" onAction="#showActiveInspector"
159
                                               text="Show Active Inspector window" accelerator="Ctrl+I">
Alexander Weigl's avatar
Alexander Weigl committed
160
161
162
                                    <graphic>
                                        <MaterialDesignIconView glyphName="MAGNIFY" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
163
                                </CheckMenuItem>
164
165
                                <CheckMenuItem fx:id="miProofTree" onAction="#showProofTree" text="Show Proof Tree"
                                               accelerator="Ctrl+t">
Alexander Weigl's avatar
Alexander Weigl committed
166
167
168
                                    <graphic>
                                        <MaterialDesignIconView glyphName="TREE" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
169
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
170
                                <CheckMenuItem fx:id="miCommandHelp" onAction="#showCommandHelp"
171
                                               accelerator="F1"
Alexander Weigl's avatar
Alexander Weigl committed
172
                                               text="Show Command Help">
Alexander Weigl's avatar
Alexander Weigl committed
173
174
175
                                    <graphic>
                                        <MaterialDesignIconView glyphName="STACKEXCHANGE" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
176
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
177
178
                            </items>
                        </Menu>
179
                        <Menu fx:id="examplesMenu" text="_Examples">
180
181
182
183
                            <items>
                                <MenuItem text="Examples not loaded" disable="true"/>
                            </items>
                        </Menu>
Alexander Weigl's avatar
Alexander Weigl committed
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
                        <Menu text="Help">
                            <items>
                                <MenuItem text="About"/>
                            </items>
                        </Menu>
                    </menus>
                </MenuBar>
                <ToolBar fx:id="toolbar">
                    <items>
                        <SplitMenuButton fx:id="buttonStartInterpreter" onAction="#executeScript"
                                         disable="${controller.executeNotPossible}">
                            <graphic>
                                <MaterialDesignIconView glyphName="PLAY" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Execute Script"/>
                            </tooltip>

                            <items>
203
204
205
206
207
208
209
                                <!-- <MenuItem text="Execute from Cursor"
                                           onAction="#executeScriptFromCursor"
                                           disable="${controller.executeNotPossible}">
                                     <graphic>
                                         <MaterialDesignIconView glyphName="CURSOR_TEXT" size="24.0"/>
                                     </graphic>
                                 </MenuItem> -->
Alexander Weigl's avatar
Alexander Weigl committed
210

Alexander Weigl's avatar
Alexander Weigl committed
211
                                <MenuItem
212
                                        text="Execute Script Stepwise From Start"
213
                                        onAction="#executeStepwise"
Alexander Weigl's avatar
Alexander Weigl committed
214
                                        disable="${controller.executeNotPossible}">
Sarah Grebing's avatar
Sarah Grebing committed
215
                                    <graphic>
Alexander Weigl's avatar
Alexander Weigl committed
216
                                        <MaterialDesignIconView glyphName="PLAY_PAUSE" size="24.0"/>
Sarah Grebing's avatar
Sarah Grebing committed
217
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
218
                                </MenuItem>
219
220
221
222
223
224
225
226
                                <MenuItem
                                        text="Run to Breakpoint"
                                        onAction="#executeToBreakpoint"
                                        disable="${controller.executeNotPossible}">
                                    <graphic>
                                        <MaterialDesignIconView glyphName="FAST_FORWARD" size="24.0"/>
                                    </graphic>
                                </MenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
227
                            </items>
Sarah Grebing's avatar
Sarah Grebing committed
228

Alexander Weigl's avatar
Alexander Weigl committed
229
                        </SplitMenuButton>
Sarah Grebing's avatar
Sarah Grebing committed
230

Alexander Weigl's avatar
Alexander Weigl committed
231
                        <Button onAction="#stepInto" disable="${controller.stepNotPossible}">
Alexander Weigl's avatar
Alexander Weigl committed
232
233
234
235
236
237
238
239
                            <graphic>
                                <MaterialDesignIconView glyphName="DEBUG_STEP_INTO" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Step Into"/>
                            </tooltip>
                        </Button>

240
                        <Button onAction="#stepOver" disable="${controller.stepNotPossible}">
Alexander Weigl's avatar
Alexander Weigl committed
241
242
243
244
245
246
247
248
                            <graphic>
                                <MaterialDesignIconView glyphName="DEBUG_STEP_OVER" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Step Over"/>
                            </tooltip>
                        </Button>

249
                        <Button onAction="#stepBack" disable="${controller.stepNotPossible}">
Alexander Weigl's avatar
Alexander Weigl committed
250
251
252
253
254
255
256
257
258
                            <graphic>
                                <MaterialDesignIconView glyphName="DEBUG_STEP_OVER" size="24.0" scaleX="-1"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Step Back"/>
                            </tooltip>
                        </Button>


259
                        <Button disable="${controller.stepNotPossible}">
Alexander Weigl's avatar
Alexander Weigl committed
260
261
262
263
264
265
266
267
                            <graphic>
                                <MaterialDesignIconView glyphName="DEBUG_STEP_OUT" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Step Out"/>
                            </tooltip>
                        </Button>

268
                        <Button onAction="#stopDebugMode" disable="${controller.stepNotPossible}">
Sarah Grebing's avatar
Sarah Grebing committed
269
                            <!--disable="${! controller.debugMode}"-->
Alexander Weigl's avatar
Alexander Weigl committed
270
271
272
273
274
275
                            <graphic>
                                <MaterialDesignIconView glyphName="STOP" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Stop"/>
                            </tooltip>
Sarah Grebing's avatar
Sarah Grebing committed
276
                        </Button>
Alexander Weigl's avatar
Alexander Weigl committed
277

278
                        <ToggleButton fx:id="btnInteractiveMode" onAction="#interactiveMode" disable="true">
279
280
281
282
283
284
285
                            <!--disable="${! controller.debugMode}"-->
                            <graphic>
                                <MaterialDesignIconView glyphName="HAND_POINTING_RIGHT" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Start/Stop Interactive Mode"/>
                            </tooltip>
286
                        </ToggleButton>
287

Alexander Weigl's avatar
Alexander Weigl committed
288
289
                        <Pane HBox.hgrow="ALWAYS"/>
                        <Label text="Windows:"/>
Alexander Weigl's avatar
Alexander Weigl committed
290
                        <ToggleButton fx:id="togBtnCodeDock" onAction="#showCodeDock">
Alexander Weigl's avatar
Alexander Weigl committed
291
292
293
294
295
296
297
                            <graphic>
                                <MaterialDesignIconView glyphName="CODE_TAGS" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Shows the Java Source Code"/>
                            </tooltip>
                        </ToggleButton>
Alexander Weigl's avatar
Alexander Weigl committed
298
                        <ToggleButton fx:id="togBtnWelcome" onAction="#showWelcomeDock">
Alexander Weigl's avatar
Alexander Weigl committed
299
300
301
302
303
304
305
                            <graphic>
                                <MaterialDesignIconView glyphName="HELP_CIRCLE" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Show Welcome window"/>
                            </tooltip>
                        </ToggleButton>
Alexander Weigl's avatar
Alexander Weigl committed
306
                        <ToggleButton fx:id="togBtnActiveInspector" onAction="#showActiveInspector">
Alexander Weigl's avatar
Alexander Weigl committed
307
308
309
310
311
312
313
                            <graphic>
                                <MaterialDesignIconView glyphName="MAGNIFY" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Show Active Inspector window"/>
                            </tooltip>
                        </ToggleButton>
Alexander Weigl's avatar
Alexander Weigl committed
314
                        <ToggleButton fx:id="togBtnProofTree" onAction="#showProofTree">
Alexander Weigl's avatar
Alexander Weigl committed
315
316
317
318
319
320
321
322
                            <graphic>
                                <!-- FILE-TREE-->
                                <MaterialDesignIconView glyphName="TREE" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Show Proof Tree"/>
                            </tooltip>
                        </ToggleButton>
Alexander Weigl's avatar
Alexander Weigl committed
323
                        <ToggleButton fx:id="togBtnCommandHelp" onAction="#showCommandHelp">
Alexander Weigl's avatar
Alexander Weigl committed
324
325
326
327
328
329
330
                            <graphic>
                                <MaterialDesignIconView glyphName="STACKEXCHANGE" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Show Command Help"/>
                            </tooltip>
                        </ToggleButton>
331
                    </items>
Alexander Weigl's avatar
Alexander Weigl committed
332
333
334
                </ToolBar>
            </children>
        </VBox>
335
    </top>
Alexander Weigl's avatar
Alexander Weigl committed
336
    <bottom>
337
        <DebuggerStatusBar fx:id="statusBar"/>
Alexander Weigl's avatar
Alexander Weigl committed
338
    </bottom>
339
</BorderPane>