From dde8d417e790fe1b51c74c63fef57a78495d7830 Mon Sep 17 00:00:00 2001 From: iMoHax Date: Wed, 3 Sep 2014 16:35:49 +0400 Subject: [PATCH] fix update controllers on change market --- .../ru/trader/controllers/MainController.java | 16 +++++++++++----- .../java/ru/trader/controllers/Screeners.java | 6 ++++++ 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/client/src/main/java/ru/trader/controllers/MainController.java b/client/src/main/java/ru/trader/controllers/MainController.java index 36664b8..55929f0 100644 --- a/client/src/main/java/ru/trader/controllers/MainController.java +++ b/client/src/main/java/ru/trader/controllers/MainController.java @@ -44,8 +44,8 @@ public class MainController { private OffersController offersController; @FXML private ItemsController itemsController; - - + @FXML + private RouterController routerController; @FXML private void initialize() { @@ -56,7 +56,7 @@ public class MainController { ToggleGroup toggleGroup = new ToggleGroup(); for (Locale locale : Localization.getLocales()) { ResourceBundle rb = Localization.getResources(locale); - RadioMenuItem mi = new RadioMenuItem(rb.getString("main.menu.file.language.item")); + RadioMenuItem mi = new RadioMenuItem(rb.getString("main.menu.settings.language.item")); mi.setToggleGroup(toggleGroup); mi.setUserData(locale); if (locale.equals(Localization.getCurrentLocale())) mi.setSelected(true); @@ -93,6 +93,13 @@ public class MainController { MarketModel old = MainController.market; MainController.market = market; MainController.market.addAllListener(old.getListeners()); + Screeners.reinitAll(); + } + + void init(){ + itemsController.init(); + offersController.init(); + routerController.init(); } public void save(ActionEvent actionEvent) { @@ -149,7 +156,6 @@ public class MainController { private void reload(){ world = new MarketModel(World.getMarket()); market = world; - itemsController.init(); - offersController.init(); + Screeners.reinitAll(); } } diff --git a/client/src/main/java/ru/trader/controllers/Screeners.java b/client/src/main/java/ru/trader/controllers/Screeners.java index f562605..54b7a49 100644 --- a/client/src/main/java/ru/trader/controllers/Screeners.java +++ b/client/src/main/java/ru/trader/controllers/Screeners.java @@ -8,6 +8,7 @@ import javafx.scene.Scene; import javafx.stage.Stage; import org.controlsfx.control.action.Action; import org.controlsfx.dialog.Dialogs; +import ru.trader.EMDNUpdater; import ru.trader.model.*; import ru.trader.view.support.CustomBuilderFactory; import ru.trader.view.support.Localization; @@ -179,4 +180,9 @@ public class Screeners { public static void showSettings() { settingsController.showDialog(mainScreen, settingsScreen); } + + public static void reinitAll() { + mainController.init(); + EMDNUpdater.setMarket(MainController.getMarket()); + } }