DebuggerMain.fxml 19.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
                            </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
                        <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>

Sarah Grebing's avatar
Sarah Grebing committed
116
                            <MenuItem onAction="#stepOverReverse"
117 118
                                      accelerator="F7"

Sarah Grebing's avatar
Sarah Grebing committed
119 120 121 122 123 124 125 126 127 128 129
                                      text="Step Over Reverse"
                                      disable="${controller.stepNotPossible}">
                                <graphic>
                                    <MaterialDesignIconView glyphName="DEBUG_STEP_OVER" size="24.0" scaleX="-1"/>
                                </graphic>
                            </MenuItem>

                            <MenuItem onAction="#stepIntoReverse"
                                      accelerator="F8"

                                      text="Step Into Reverse"
130 131 132 133 134 135 136 137
                                      disable="${controller.stepNotPossible}">
                                <graphic>
                                    <MaterialDesignIconView glyphName="DEBUG_STEP_OVER" size="24.0" scaleX="-1"/>
                                </graphic>
                            </MenuItem>


                            <MenuItem disable="${controller.stepNotPossible}"
Sarah Grebing's avatar
Sarah Grebing committed
138
                                      accelerator="F9"
139 140 141 142 143 144 145 146
                                      text="Step Out">
                                <graphic>
                                    <MaterialDesignIconView glyphName="DEBUG_STEP_OUT" size="24.0"/>
                                </graphic>
                            </MenuItem>

                            <MenuItem onAction="#stopDebugMode"
                                      accelerator="F12"
Sarah Grebing's avatar
Sarah Grebing committed
147
                                      text="Stop Debugging"
148 149 150 151 152 153 154
                                      disable="${controller.stepNotPossible}">
                                <!--disable="${! controller.debugMode}"-->
                                <graphic>
                                    <MaterialDesignIconView glyphName="STOP" size="24.0"/>
                                </graphic>
                            </MenuItem>
                        </Menu>
Alexander Weigl's avatar
Alexander Weigl committed
155 156
                        <Menu text="View">
                            <items>
157 158
                                <CheckMenuItem fx:id="miCodeDock" onAction="#showCodeDock" text="Show Java Code window"
                                               accelerator="Ctrl+J">
Alexander Weigl's avatar
Alexander Weigl committed
159 160 161
                                    <graphic>
                                        <MaterialDesignIconView glyphName="CODE_TAGS" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
162
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
163
                                <CheckMenuItem fx:id="miWelcomeDock" onAction="#showWelcomeDock"
164
                                               text="Show Welcome window" accelerator="Ctrl+w">
Alexander Weigl's avatar
Alexander Weigl committed
165 166 167
                                    <graphic>
                                        <MaterialDesignIconView glyphName="HELP_CIRCLE" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
168
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
169
                                <CheckMenuItem fx:id="miActiveInspector" onAction="#showActiveInspector"
170
                                               text="Show Active Inspector window" accelerator="Ctrl+I">
Alexander Weigl's avatar
Alexander Weigl committed
171 172 173
                                    <graphic>
                                        <MaterialDesignIconView glyphName="MAGNIFY" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
174
                                </CheckMenuItem>
175 176
                                <CheckMenuItem fx:id="miProofTree" onAction="#showProofTree" text="Show Proof Tree"
                                               accelerator="Ctrl+t">
Alexander Weigl's avatar
Alexander Weigl committed
177 178 179
                                    <graphic>
                                        <MaterialDesignIconView glyphName="TREE" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
180
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
181
                                <CheckMenuItem fx:id="miCommandHelp" onAction="#showCommandHelp"
182
                                               accelerator="F1"
Alexander Weigl's avatar
Alexander Weigl committed
183
                                               text="Show Command Help">
Alexander Weigl's avatar
Alexander Weigl committed
184 185 186
                                    <graphic>
                                        <MaterialDesignIconView glyphName="STACKEXCHANGE" size="24.0"/>
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
187
                                </CheckMenuItem>
Alexander Weigl's avatar
Alexander Weigl committed
188 189
                            </items>
                        </Menu>
190
                        <Menu fx:id="examplesMenu" text="_Examples">
191 192 193 194
                            <items>
                                <MenuItem text="Examples not loaded" disable="true"/>
                            </items>
                        </Menu>
Alexander Weigl's avatar
Alexander Weigl committed
195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213
                        <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>
214 215 216 217 218 219 220
                                <!-- <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
221

Alexander Weigl's avatar
Alexander Weigl committed
222
                                <MenuItem
223
                                        text="Execute Script Stepwise From Start"
224
                                        onAction="#executeStepwise"
Alexander Weigl's avatar
Alexander Weigl committed
225
                                        disable="${controller.executeNotPossible}">
Sarah Grebing's avatar
Sarah Grebing committed
226
                                    <graphic>
Alexander Weigl's avatar
Alexander Weigl committed
227
                                        <MaterialDesignIconView glyphName="PLAY_PAUSE" size="24.0"/>
Sarah Grebing's avatar
Sarah Grebing committed
228
                                    </graphic>
Alexander Weigl's avatar
Alexander Weigl committed
229
                                </MenuItem>
230 231 232 233 234 235 236 237
                                <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
238
                            </items>
Sarah Grebing's avatar
Sarah Grebing committed
239

Alexander Weigl's avatar
Alexander Weigl committed
240
                        </SplitMenuButton>
Sarah Grebing's avatar
Sarah Grebing committed
241

Sarah Grebing's avatar
Sarah Grebing committed
242 243 244 245 246 247 248 249
                        <!--      <Button onAction="#reloadProblem" disable="${controller.executeNotPossible}">
                                  <graphic>
                                      <MaterialDesignIconView glyphName="REFRESH" size="24.0"/>
                                  </graphic>
                                  <tooltip>
                                      <Tooltip text="Reload Problem"/>
                                  </tooltip>
                              </Button>-->
250 251 252 253 254 255 256 257 258 259 260

                        <Button onAction="#continueAfterRun" disable="${controller.executeNotPossible}">
                            <graphic>
                                <MaterialDesignIconView glyphName="PLAY_CIRCLE_OUTLINE" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Continue"/>
                            </tooltip>
                        </Button>


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

270
                        <Button onAction="#stepOver" disable="${controller.stepNotPossible}">
Alexander Weigl's avatar
Alexander Weigl committed
271 272 273 274 275 276 277 278
                            <graphic>
                                <MaterialDesignIconView glyphName="DEBUG_STEP_OVER" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Step Over"/>
                            </tooltip>
                        </Button>

Sarah Grebing's avatar
Sarah Grebing committed
279
                        <Button onAction="#stepOverReverse" disable="${controller.stepNotPossible}">
Alexander Weigl's avatar
Alexander Weigl committed
280 281 282 283
                            <graphic>
                                <MaterialDesignIconView glyphName="DEBUG_STEP_OVER" size="24.0" scaleX="-1"/>
                            </graphic>
                            <tooltip>
284
                                <Tooltip text="Step Over Reverse"/>
Alexander Weigl's avatar
Alexander Weigl committed
285 286 287 288
                            </tooltip>
                        </Button>


289
                        <Button onAction="#stepIntoReverse" disable="${controller.stepNotPossible}">
Alexander Weigl's avatar
Alexander Weigl committed
290 291 292 293
                            <graphic>
                                <MaterialDesignIconView glyphName="DEBUG_STEP_OUT" size="24.0"/>
                            </graphic>
                            <tooltip>
294
                                <Tooltip text="Step Into Reverse"/>
Alexander Weigl's avatar
Alexander Weigl committed
295 296 297
                            </tooltip>
                        </Button>

298
                        <Button onAction="#stopDebugMode" disable="${controller.stepNotPossible}">
Sarah Grebing's avatar
Sarah Grebing committed
299
                            <!--disable="${! controller.debugMode}"-->
Alexander Weigl's avatar
Alexander Weigl committed
300 301 302 303
                            <graphic>
                                <MaterialDesignIconView glyphName="STOP" size="24.0"/>
                            </graphic>
                            <tooltip>
Sarah Grebing's avatar
Sarah Grebing committed
304
                                <Tooltip text="Stop Debugging"/>
Alexander Weigl's avatar
Alexander Weigl committed
305
                            </tooltip>
Sarah Grebing's avatar
Sarah Grebing committed
306
                        </Button>
Alexander Weigl's avatar
Alexander Weigl committed
307

308
                        <ToggleButton fx:id="btnInteractiveMode" onAction="#interactiveMode" disable="true">
309 310 311 312 313 314 315
                            <!--disable="${! controller.debugMode}"-->
                            <graphic>
                                <MaterialDesignIconView glyphName="HAND_POINTING_RIGHT" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Start/Stop Interactive Mode"/>
                            </tooltip>
316
                        </ToggleButton>
317

LULUDBR\Lulu's avatar
LULUDBR\Lulu committed
318 319 320 321 322 323 324 325 326 327
                        <Button fx:id="interactive_undo" onAction="#undo" disable="true">
                            <graphic>
                                <MaterialDesignIconView glyphName="UNDO" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Undo"/>
                            </tooltip>
                        </Button>


Alexander Weigl's avatar
Alexander Weigl committed
328 329
                        <Pane HBox.hgrow="ALWAYS"/>
                        <Label text="Windows:"/>
Alexander Weigl's avatar
Alexander Weigl committed
330
                        <ToggleButton fx:id="togBtnCodeDock" onAction="#showCodeDock">
Alexander Weigl's avatar
Alexander Weigl committed
331 332 333 334 335 336 337
                            <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
338
                        <ToggleButton fx:id="togBtnWelcome" onAction="#showWelcomeDock">
Alexander Weigl's avatar
Alexander Weigl committed
339 340 341 342 343 344 345
                            <graphic>
                                <MaterialDesignIconView glyphName="HELP_CIRCLE" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Show Welcome window"/>
                            </tooltip>
                        </ToggleButton>
Alexander Weigl's avatar
Alexander Weigl committed
346
                        <ToggleButton fx:id="togBtnActiveInspector" onAction="#showActiveInspector">
Alexander Weigl's avatar
Alexander Weigl committed
347 348 349 350 351 352 353
                            <graphic>
                                <MaterialDesignIconView glyphName="MAGNIFY" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Show Active Inspector window"/>
                            </tooltip>
                        </ToggleButton>
Alexander Weigl's avatar
Alexander Weigl committed
354
                        <ToggleButton fx:id="togBtnProofTree" onAction="#showProofTree">
Alexander Weigl's avatar
Alexander Weigl committed
355 356 357 358 359 360 361 362
                            <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
363
                        <ToggleButton fx:id="togBtnCommandHelp" onAction="#showCommandHelp">
Alexander Weigl's avatar
Alexander Weigl committed
364 365 366 367 368 369 370
                            <graphic>
                                <MaterialDesignIconView glyphName="STACKEXCHANGE" size="24.0"/>
                            </graphic>
                            <tooltip>
                                <Tooltip text="Show Command Help"/>
                            </tooltip>
                        </ToggleButton>
371
                    </items>
Alexander Weigl's avatar
Alexander Weigl committed
372 373 374
                </ToolBar>
            </children>
        </VBox>
375
    </top>
Alexander Weigl's avatar
Alexander Weigl committed
376
    <bottom>
377
        <DebuggerStatusBar fx:id="statusBar"/>
Alexander Weigl's avatar
Alexander Weigl committed
378
    </bottom>
379
</BorderPane>