diff --git a/Builder/.gitignore b/Builder/.gitignore new file mode 100644 index 0000000..ae3c172 --- /dev/null +++ b/Builder/.gitignore @@ -0,0 +1 @@ +/bin/ diff --git a/Builder/src/fmon/builder/App.fxml b/Builder/src/fmon/builder/App.fxml new file mode 100644 index 0000000..1d8b168 --- /dev/null +++ b/Builder/src/fmon/builder/App.fxml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Builder/src/fmon/builder/App.scala b/Builder/src/fmon/builder/App.scala new file mode 100644 index 0000000..f33da58 --- /dev/null +++ b/Builder/src/fmon/builder/App.scala @@ -0,0 +1,54 @@ +package fmon.builder + +import java.io.File + +import javafx.fxml.FXML +import javafx.fxml.FXMLLoader +import javafx.fxml.JavaFXBuilderFactory +import javafx.scene.{control => jfxsc, layout => jfxsl} + +import scalafx.Includes._ +import scalafx.stage.FileChooser +import FileChooser.ExtensionFilter + +trait Savable { + def saveTo(file: File): Unit + def openFrom(file: File): Unit +} + +class App { + @FXML var pane: jfxsl.Pane = _ + + var builder: Savable = _ + + + def open(): Unit = { + val fileChooser = new FileChooser { + title = "Open Resource File" + extensionFilters ++= Seq( + new ExtensionFilter("YAML Files", "*.yaml"), + new ExtensionFilter("All Files", "*.*") + ) + } + + val selectedFile = fileChooser.showOpenDialog(null) + if (selectedFile != null) { + builder openFrom selectedFile + } + } + + def saveAs(): Unit = { + val fileChooser = new FileChooser { + title = "Open Resource File" + extensionFilters ++= Seq( + new ExtensionFilter("YAML Files", "*.yaml"), + new ExtensionFilter("All Files", "*.*") + ) + } + + val selectedFile = fileChooser.showSaveDialog(null) + if (selectedFile != null) { + builder saveTo selectedFile + } + } +} \ No newline at end of file diff --git a/Builder/src/fmon/builder/ElementBuilder.fxml b/Builder/src/fmon/builder/ElementBuilder.fxml new file mode 100644 index 0000000..b59180f --- /dev/null +++ b/Builder/src/fmon/builder/ElementBuilder.fxml @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + +