MainWindow.fxml 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <?import javafx.embed.swing.SwingNode?>
  3. <?import javafx.geometry.Insets?>
  4. <?import javafx.scene.control.Button?>
  5. <?import javafx.scene.control.CheckBox?>
  6. <?import javafx.scene.control.ChoiceBox?>
  7. <?import javafx.scene.control.ComboBox?>
  8. <?import javafx.scene.control.Menu?>
  9. <?import javafx.scene.control.MenuBar?>
  10. <?import javafx.scene.control.MenuItem?>
  11. <?import javafx.scene.control.ScrollPane?>
  12. <?import javafx.scene.control.SeparatorMenuItem?>
  13. <?import javafx.scene.control.SplitPane?>
  14. <?import javafx.scene.control.TableColumn?>
  15. <?import javafx.scene.control.TableView?>
  16. <?import javafx.scene.layout.AnchorPane?>
  17. <?import javafx.scene.layout.Pane?>
  18. <?import javafx.scene.layout.StackPane?>
  19. <?import javafx.scene.layout.VBox?>
  20. <?import javafx.scene.text.TextFlow?>
  21. <VBox minHeight="768.0" minWidth="1024.0" prefHeight="768.0" prefWidth="1024.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.tu_darmstadt.informatik.tk.scopviz.ui.GUIController">
  22. <children>
  23. <MenuBar VBox.vgrow="NEVER">
  24. <menus>
  25. <Menu mnemonicParsing="false" text="File">
  26. <items>
  27. <MenuItem fx:id="newItem" mnemonicParsing="false" text="New" />
  28. <MenuItem fx:id="open" mnemonicParsing="false" text="Open…" />
  29. <MenuItem fx:id="add" mnemonicParsing="false" text="Add…" />
  30. <SeparatorMenuItem mnemonicParsing="false" />
  31. <MenuItem fx:id="save" accelerator="Shortcut+S" mnemonicParsing="false" text="Save" />
  32. <MenuItem fx:id="saveAs" accelerator="Shortcut+Shift+S" mnemonicParsing="false" text="Save As…" />
  33. <SeparatorMenuItem mnemonicParsing="false" />
  34. <MenuItem fx:id="preferences" accelerator="Alt+ENTER" mnemonicParsing="false" text="Preferences" />
  35. <SeparatorMenuItem mnemonicParsing="false" />
  36. <MenuItem fx:id="quit" mnemonicParsing="false" text="Quit" />
  37. </items>
  38. </Menu>
  39. <Menu mnemonicParsing="false" text="Edit">
  40. <items>
  41. <SeparatorMenuItem mnemonicParsing="false" />
  42. <MenuItem fx:id="delete" accelerator="DELETE" mnemonicParsing="false" text="Delete" />
  43. <MenuItem fx:id="undelete" accelerator="Shortcut+Z" mnemonicParsing="false" text="Undelete" />
  44. <SeparatorMenuItem mnemonicParsing="false" />
  45. <MenuItem fx:id="operators" mnemonicParsing="false" text="Graph Operators" />
  46. <MenuItem fx:id="resetMapping" mnemonicParsing="false" text="Reset Mapping" />
  47. <MenuItem fx:id="updateMetricMI" accelerator="Shortcut+R" mnemonicParsing="false" text="Update metrics" />
  48. </items>
  49. </Menu>
  50. <Menu mnemonicParsing="false" text="Help">
  51. <items>
  52. <MenuItem fx:id="about" mnemonicParsing="false" text="About Scopviz" />
  53. </items>
  54. </Menu>
  55. </menus>
  56. </MenuBar>
  57. <AnchorPane maxHeight="-1.0" maxWidth="-1.0" prefHeight="-1.0" prefWidth="-1.0" VBox.vgrow="ALWAYS">
  58. <children>
  59. <SplitPane dividerPositions="0.15" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
  60. <items>
  61. <AnchorPane SplitPane.resizableWithParent="false">
  62. <children>
  63. <VBox fx:id="leftSide" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
  64. <children>
  65. <AnchorPane fx:id="topLeftAPane" VBox.vgrow="NEVER">
  66. <children>
  67. <TableView fx:id="toolbox" maxHeight="132.0" minHeight="0.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
  68. <columns>
  69. <TableColumn fx:id="toolboxObjectColumn" editable="false" maxWidth="30.0" minWidth="30.0" prefWidth="30.0" sortable="false" />
  70. <TableColumn fx:id="toolboxStringColumn" editable="false" maxWidth="-1.0" minWidth="90.0" prefWidth="-1.0" sortable="false" />
  71. </columns>
  72. <columnResizePolicy>
  73. <TableView fx:constant="CONSTRAINED_RESIZE_POLICY" />
  74. </columnResizePolicy>
  75. </TableView>
  76. <VBox fx:id="symbolToolVBox" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
  77. <children>
  78. <CheckBox fx:id="edgesVisibleCheckbox" mnemonicParsing="false" selected="true" text="Edges">
  79. <padding>
  80. <Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
  81. </padding>
  82. </CheckBox>
  83. <CheckBox fx:id="nodeLabelCheckbox" mnemonicParsing="false" selected="true" text="Labels">
  84. <padding>
  85. <Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
  86. </padding>
  87. </CheckBox>
  88. <CheckBox fx:id="edgeWeightCheckbox" mnemonicParsing="false" selected="true" text="Weights">
  89. <padding>
  90. <Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
  91. </padding>
  92. </CheckBox>
  93. </children></VBox>
  94. </children>
  95. </AnchorPane>
  96. <AnchorPane fx:id="resetMappingButtonAPane" prefHeight="25.0">
  97. <children>
  98. <Button fx:id="resetMappingButton" mnemonicParsing="false" prefHeight="25.0" text="Reset Mapping" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0" />
  99. </children>
  100. </AnchorPane>
  101. <AnchorPane VBox.vgrow="ALWAYS">
  102. <children>
  103. <TableView fx:id="properties" editable="true" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
  104. <columns>
  105. <TableColumn fx:id="propertiesStringColumn" editable="false" maxWidth="1920.0" minWidth="90.0" prefWidth="150.0" sortable="false" text="Property" />
  106. <TableColumn fx:id="propertiesObjectColumn" maxWidth="1920.0" minWidth="90.0" prefWidth="150.0" sortable="false" text="Value" />
  107. <TableColumn fx:id="propertiesTypeColumn" editable="false" maxWidth="1920.0" minWidth="90.0" prefWidth="150.0" sortable="false" text="Type" />
  108. </columns>
  109. <columnResizePolicy>
  110. <TableView fx:constant="CONSTRAINED_RESIZE_POLICY" />
  111. </columnResizePolicy>
  112. </TableView>
  113. </children>
  114. </AnchorPane>
  115. </children>
  116. </VBox>
  117. </children>
  118. </AnchorPane>
  119. <AnchorPane SplitPane.resizableWithParent="false">
  120. <children>
  121. <SplitPane dividerPositions="0.8" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
  122. <items>
  123. <AnchorPane styleClass="background" SplitPane.resizableWithParent="false">
  124. <children>
  125. <StackPane fx:id="stackPane" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
  126. <children>
  127. <SwingNode fx:id="swingNodeWorldView" />
  128. </children>
  129. </StackPane>
  130. <Pane fx:id="pane" focusTraversable="true" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
  131. <children>
  132. <SwingNode fx:id="swingNode" />
  133. </children>
  134. </Pane>
  135. <Button fx:id="zoomIn" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" prefHeight="30.0" prefWidth="30.0" text="+" textAlignment="JUSTIFY" AnchorPane.bottomAnchor="45.0" AnchorPane.rightAnchor="10.0" />
  136. <Button fx:id="zoomOut" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" prefHeight="30.0" prefWidth="30.0" text="-" textAlignment="JUSTIFY" AnchorPane.bottomAnchor="10.0" AnchorPane.rightAnchor="10.0" />
  137. <Button fx:id="centerMap" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" prefHeight="30.0" prefWidth="30.0" text="O" textAlignment="JUSTIFY" AnchorPane.bottomAnchor="10.0" AnchorPane.rightAnchor="45.0" />
  138. <Button fx:id="defaultMapView" layoutX="10.0" layoutY="10.0" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" prefHeight="30.0" prefWidth="30.0" text="D" textAlignment="JUSTIFY" AnchorPane.bottomAnchor="10.0" AnchorPane.leftAnchor="10.0" />
  139. <Button fx:id="roadMapView" layoutX="20.0" layoutY="20.0" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" prefHeight="30.0" prefWidth="30.0" text="R" textAlignment="JUSTIFY" AnchorPane.bottomAnchor="10.0" AnchorPane.leftAnchor="45.0" />
  140. <Button fx:id="satelliteMapView" layoutX="30.0" layoutY="30.0" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" prefHeight="30.0" prefWidth="30.0" text="S" textAlignment="JUSTIFY" AnchorPane.bottomAnchor="10.0" AnchorPane.leftAnchor="80.0" />
  141. <Button fx:id="hybridMapView" layoutX="40.0" layoutY="40.0" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" prefHeight="30.0" prefWidth="30.0" text="H" textAlignment="JUSTIFY" AnchorPane.bottomAnchor="10.0" AnchorPane.leftAnchor="115.0" />
  142. <Button fx:id="nextWaypoint" layoutX="10.0" layoutY="10.0" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" prefHeight="30.0" prefWidth="30.0" text="&gt;" textAlignment="JUSTIFY" AnchorPane.rightAnchor="10.0" AnchorPane.topAnchor="10.0" />
  143. <Button fx:id="previousWaypoint" layoutX="20.0" layoutY="20.0" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" prefHeight="30.0" prefWidth="30.0" text="&lt;" textAlignment="JUSTIFY" AnchorPane.rightAnchor="45.0" AnchorPane.topAnchor="10.0" />
  144. </children>
  145. </AnchorPane>
  146. <AnchorPane SplitPane.resizableWithParent="false">
  147. <children>
  148. <VBox fx:id="rightSide" prefWidth="100.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
  149. <children>
  150. <AnchorPane minWidth="169.0" prefWidth="169.0" VBox.vgrow="NEVER">
  151. <children>
  152. <Button fx:id="underlayButton" maxHeight="40.0" maxWidth="40.0" minHeight="40.0" minWidth="40.0" mnemonicParsing="false" prefHeight="40.0" prefWidth="40.0" styleClass="underlayButton" AnchorPane.leftAnchor="3.0" AnchorPane.topAnchor="3.0" />
  153. <Button fx:id="operatorButton" layoutX="30.0" maxHeight="40.0" maxWidth="40.0" minHeight="40.0" minWidth="40.0" mnemonicParsing="false" prefHeight="40.0" prefWidth="40.0" styleClass="operatorButton" AnchorPane.leftAnchor="44.0" AnchorPane.topAnchor="3.0" />
  154. <Button fx:id="mappingButton" layoutX="60.0" maxHeight="40.0" maxWidth="40.0" minHeight="40.0" minWidth="40.0" mnemonicParsing="false" prefHeight="40.0" prefWidth="40.0" styleClass="mappingButton" AnchorPane.leftAnchor="85.0" AnchorPane.topAnchor="3.0" />
  155. <Button fx:id="symbolRepButton" layoutX="85.0" maxHeight="40.0" maxWidth="40.0" minHeight="40.0" minWidth="40.0" mnemonicParsing="false" prefHeight="40.0" prefWidth="40.0" styleClass="symbolRepButton" AnchorPane.leftAnchor="126.0" AnchorPane.topAnchor="3.0" />
  156. </children>
  157. </AnchorPane>
  158. <AnchorPane VBox.vgrow="ALWAYS">
  159. <children>
  160. <ComboBox fx:id="opGraphSelectionBox" prefWidth="164.0" AnchorPane.leftAnchor="3.0" AnchorPane.topAnchor="3.0" />
  161. <TableView fx:id="metricbox" editable="true" prefWidth="170.0" tableMenuButtonVisible="true" visible="false" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="3.0">
  162. <columns>
  163. <TableColumn fx:id="metricBoxMetricColumn" editable="false" prefWidth="75.0" sortable="false" text="Metric" />
  164. <TableColumn fx:id="metricBoxValueColumn" editable="false" prefWidth="75.0" sortable="false" text="Value" />
  165. <TableColumn fx:id="metricBoxUpdateColumn" editable="true" maxWidth="35.0" minWidth="35.0" prefWidth="35.0" sortable="false" />
  166. </columns>
  167. <columnResizePolicy>
  168. <TableView fx:constant="CONSTRAINED_RESIZE_POLICY" />
  169. </columnResizePolicy>
  170. </TableView>
  171. </children>
  172. </AnchorPane>
  173. <AnchorPane fx:id="updateButtonAPane" prefHeight="25.0">
  174. <children>
  175. <Button fx:id="updateMetricButton" mnemonicParsing="false" prefHeight="25.0" text="Update metrics" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0" />
  176. </children>
  177. </AnchorPane>
  178. <ScrollPane fx:id="consoleScrollPane" fitToHeight="true" fitToWidth="true" hbarPolicy="NEVER" prefHeight="200.0" prefWidth="200.0" vbarPolicy="ALWAYS" vvalue="1.0">
  179. <content>
  180. <TextFlow fx:id="consoleWindow" lineSpacing="0.5" styleClass="consoleWindow">
  181. <padding>
  182. <Insets bottom="5.0" left="5.0" right="5.0" />
  183. </padding>
  184. </TextFlow>
  185. </content>
  186. </ScrollPane>
  187. </children>
  188. </VBox>
  189. </children>
  190. </AnchorPane>
  191. </items>
  192. </SplitPane>
  193. </children>
  194. </AnchorPane>
  195. </items>
  196. </SplitPane>
  197. </children>
  198. </AnchorPane>
  199. </children>
  200. </VBox>