From cf441192fcfcf1ef18fe4050cb20f8c9693121dc Mon Sep 17 00:00:00 2001 From: Brendan Robert Date: Sun, 11 May 2014 02:08:49 -0500 Subject: [PATCH] Moved Map Editor UI into its own FXML and controller class -- tracking down some regressions but it is mostly still working OK. --- .../ApplicationMenuControllerImpl.java | 2 +- .../outlaweditor/ApplicationUIController.java | 135 +------- .../ApplicationUIControllerImpl.java | 308 +---------------- .../outlaweditor/MapEditorTabController.java | 134 +++++++ .../MapEditorTabControllerImpl.java | 327 ++++++++++++++++++ .../badvision/outlaweditor/MythosEditor.java | 2 +- .../org/badvision/outlaweditor/UIAction.java | 12 +- .../src/main/resources/ApplicationUI.fxml | 89 +---- .../src/main/resources/mapEditorTab.fxml | 84 +++++ 9 files changed, 585 insertions(+), 508 deletions(-) create mode 100644 OutlawEditor/src/main/java/org/badvision/outlaweditor/MapEditorTabController.java create mode 100644 OutlawEditor/src/main/java/org/badvision/outlaweditor/MapEditorTabControllerImpl.java create mode 100644 OutlawEditor/src/main/resources/mapEditorTab.fxml diff --git a/OutlawEditor/src/main/java/org/badvision/outlaweditor/ApplicationMenuControllerImpl.java b/OutlawEditor/src/main/java/org/badvision/outlaweditor/ApplicationMenuControllerImpl.java index 6dacfad8..e84d4f3f 100644 --- a/OutlawEditor/src/main/java/org/badvision/outlaweditor/ApplicationMenuControllerImpl.java +++ b/OutlawEditor/src/main/java/org/badvision/outlaweditor/ApplicationMenuControllerImpl.java @@ -75,7 +75,7 @@ public class ApplicationMenuControllerImpl extends ApplicationMenuController { try { UIAction.actionPerformed(UIAction.MAIN_ACTIONS.Load); mainController.rebuildImageSelector(); - mainController.rebuildMapSelectors(); + mainController.mapController.rebuildMapSelectors(); mainController.rebuildTileSelectors(); } catch (IOException ex) { Logger.getLogger(ApplicationUIControllerImpl.class.getName()).log(Level.SEVERE, null, ex); diff --git a/OutlawEditor/src/main/java/org/badvision/outlaweditor/ApplicationUIController.java b/OutlawEditor/src/main/java/org/badvision/outlaweditor/ApplicationUIController.java index a56d0dc2..262ec7b3 100644 --- a/OutlawEditor/src/main/java/org/badvision/outlaweditor/ApplicationUIController.java +++ b/OutlawEditor/src/main/java/org/badvision/outlaweditor/ApplicationUIController.java @@ -5,33 +5,33 @@ import java.util.ResourceBundle; import javafx.event.ActionEvent; import javafx.event.Event; import javafx.fxml.FXML; -import javafx.scene.control.CheckBox; import javafx.scene.control.ComboBox; -import javafx.scene.control.ListView; import javafx.scene.control.Menu; import javafx.scene.control.TextField; import javafx.scene.layout.AnchorPane; import org.badvision.outlaweditor.data.xml.Image; -import org.badvision.outlaweditor.data.xml.Map; -import org.badvision.outlaweditor.data.xml.Script; -import org.badvision.outlaweditor.data.xml.Tile; public abstract class ApplicationUIController { + public static ApplicationUIController getController() { return Application.instance.controller; } - abstract void rebuildMapSelectors(); abstract void rebuildTileSelectors(); + abstract void rebuildImageSelector(); - abstract Editor getVisibleEditor(); - + abstract Editor getVisibleEditor(); + @FXML // ResourceBundle that was given to the FXMLLoader protected ResourceBundle resources; - @FXML ApplicationMenuController menuController; - @FXML TileEditorTabController tileEditorController; - + @FXML + ApplicationMenuController menuController; + @FXML + TileEditorTabController tileController; + @FXML + MapEditorTabController mapController; + @FXML // URL location of the FXML file that was given to the FXMLLoader protected URL location; @FXML // fx:id="imageCategoryField" @@ -48,24 +48,8 @@ public abstract class ApplicationUIController { protected ComboBox imageSelector; // Value injected by FXMLLoader @FXML // fx:id="imageWidthField" protected TextField imageWidthField; // Value injected by FXMLLoader - @FXML // fx:id="mapEditorAnchorPane" - protected AnchorPane mapEditorAnchorPane; // Value injected by FXMLLoader - @FXML // fx:id="mapHeightField" - protected TextField mapHeightField; // Value injected by FXMLLoader - @FXML // fx:id="mapNameField" - protected TextField mapNameField; // Value injected by FXMLLoader - @FXML // fx:id="mapScriptsList" - protected ListView