DebuggerMain.fxml 17.7 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
                            </items>
                        </Menu>
                        <Menu text="Edit">
                            <items>
Alexander Weigl's avatar
Alexander Weigl committed
63
                                <MenuItem text="Open in KeY" onAction="#openInKey"/>
Alexander Weigl's avatar
Alexander Weigl committed
64
                                <MenuItem text="Delete"/>
65
                                <MenuItem text="Reformat" accelerator="Ctrl+Shift+f" onAction="#reformatCurrentEditor"/>
Alexander Weigl's avatar
Alexander Weigl committed
66
67
68
                                <MenuItem text="Print Debug Information" onAction="#debugPrintDot"
                                          accelerator="Ctrl+d"
                                />
Alexander Weigl's avatar
Alexander Weigl committed
69
70
                            </items>
                        </Menu>
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
144
                        <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
145
146
                        <Menu text="View">
                            <items>
147
148
                                <CheckMenuItem fx:id="miCodeDock" onAction="#showCodeDock" text="Show Java Code window"
                                               accelerator="Ctrl+J">
Alexander Weigl's avatar
Alexander Weigl committed
149
150
151
                                    <graphic>
                                        <MaterialDesignIconView glyphName="CODE_TAGS" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
152
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
153
                                <CheckMenuItem fx:id="miWelcomeDock" onAction="#showWelcomeDock"
154
                                               text="Show Welcome window" accelerator="Ctrl+w">
Alexander Weigl's avatar
Alexander Weigl committed
155
156
157
                                    <graphic>
                                        <MaterialDesignIconView glyphName="HELP_CIRCLE" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
158
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
159
                                <CheckMenuItem fx:id="miActiveInspector" onAction="#showActiveInspector"
160
                                               text="Show Active Inspector window" accelerator="Ctrl+I">
Alexander Weigl's avatar
Alexander Weigl committed
161
162
163
                                    <graphic>
                                        <MaterialDesignIconView glyphName="MAGNIFY" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
164
                                </CheckMenuItem>
165
166
                                <CheckMenuItem fx:id="miProofTree" onAction="#showProofTree" text="Show Proof Tree"
                                               accelerator="Ctrl+t">
Alexander Weigl's avatar
Alexander Weigl committed
167
168
169
                                    <graphic>
                                        <MaterialDesignIconView glyphName="TREE" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
170
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
171
                                <CheckMenuItem fx:id="miCommandHelp" onAction="#showCommandHelp"
172
                                               accelerator="F1"
Alexander Weigl's avatar
Alexander Weigl committed
173
                                               text="Show Command Help">
Alexander Weigl's avatar
Alexander Weigl committed
174
175
176
                                    <graphic>
                                        <MaterialDesignIconView glyphName="STACKEXCHANGE" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
177
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
178
179
                            </items>
                        </Menu>
180
                        <Menu fx:id="examplesMenu" text="_Examples">
181
182
183
184
                            <items>
                                <MenuItem text="Examples not loaded" disable="true"/>
                            </items>
                        </Menu>
Alexander Weigl's avatar
Alexander Weigl committed
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
                        <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>
204
205
206
207
208
209
210
                                <!-- <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
211

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

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

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

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

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


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

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

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

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