diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/SimulatorMainPanel.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/SimulatorMainPanel.java index 3656a9e76e0..dd6da917538 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/SimulatorMainPanel.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/SimulatorMainPanel.java @@ -41,6 +41,7 @@ import com.sap.sailing.gwt.ui.shared.BoatClassDTO; import com.sap.sailing.gwt.ui.shared.WindFieldGenParamsDTO; import com.sap.sailing.gwt.ui.shared.WindPatternDTO; import com.sap.sailing.gwt.ui.shared.controls.slider.SliderBar; +import com.sap.sailing.gwt.ui.shared.panels.SimpleBusyIndicator; import com.sap.sailing.gwt.ui.shared.windpattern.WindPatternDisplay; import com.sap.sailing.gwt.ui.shared.windpattern.WindPatternSetting; @@ -71,6 +72,7 @@ public class SimulatorMainPanel extends SplitLayoutPanel { private WindFieldGenParamsDTO windParams; private final Timer timer; + private SimpleBusyIndicator busyIndicator; private static Logger logger = Logger.getLogger("com.sap.sailing"); private SimulatorMap simulatorMap; @@ -203,7 +205,7 @@ public class SimulatorMainPanel extends SplitLayoutPanel { //fp.add(timePanel); timePanel.setVisible(false); resetTimer(); - + busyIndicator = new SimpleBusyIndicator(false, 0.8f); LogoAndTitlePanel logoAndTitlePanel = new LogoAndTitlePanel( stringMessages.simulator(), stringMessages); logoAndTitlePanel.addStyleName("LogoAndTitlePanel"); @@ -429,11 +431,12 @@ public class SimulatorMainPanel extends SplitLayoutPanel { initCourseInputButton(); mapOptions.add(courseInputButton); + //mapOptions.add(busyIndicator); rightPanel.add(mapOptions); - + initDisplayOptions(mapOptions); - simulatorMap = new SimulatorMap(simulatorSvc, stringMessages, errorReporter, xRes, yRes, timer, windParams); + simulatorMap = new SimulatorMap(simulatorSvc, stringMessages, errorReporter, xRes, yRes, timer, windParams, busyIndicator); // FlowPanel mapPanel = new FlowPanel(); // mapPanel.setTitle("Map"); @@ -547,7 +550,7 @@ public class SimulatorMainPanel extends SplitLayoutPanel { }); HorizontalPanel p = new HorizontalPanel(); - + p.add(busyIndicator); DecoratorPanel d = new DecoratorPanel(); p.add(summaryButton); p.add(replayButton); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/SimulatorMap.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/SimulatorMap.java index 3e9889837d0..1816b56ac6e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/SimulatorMap.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/SimulatorMap.java @@ -28,6 +28,7 @@ import com.sap.sailing.gwt.ui.shared.PositionDTO; import com.sap.sailing.gwt.ui.shared.SimulatorResultsDTO; import com.sap.sailing.gwt.ui.shared.WindFieldDTO; import com.sap.sailing.gwt.ui.shared.WindFieldGenParamsDTO; +import com.sap.sailing.gwt.ui.shared.panels.SimpleBusyIndicator; import com.sap.sailing.gwt.ui.shared.windpattern.WindPatternDisplay; import com.sap.sailing.gwt.ui.simulator.util.ColorPalette; import com.sap.sailing.gwt.ui.simulator.util.ColorPaletteGenerator; @@ -50,7 +51,8 @@ public class SimulatorMap extends AbsolutePanel implements RequiresDataInitializ private final StringMessages stringMessages; private final ErrorReporter errorReporter; private final Timer timer; - + private final SimpleBusyIndicator busyIndicator; + private ColorPalette colorPalette; private static Logger logger = Logger.getLogger("com.sap.sailing"); @@ -122,11 +124,12 @@ public class SimulatorMap extends AbsolutePanel implements RequiresDataInitializ timeListeners.add(replayPathCanvasOverlays.get(i)); } } + busyIndicator.setBusy(false); } } public SimulatorMap(SimulatorServiceAsync simulatorSvc, StringMessages stringMessages, ErrorReporter errorReporter, - int xRes, int yRes, Timer timer, WindFieldGenParamsDTO windParams) { + int xRes, int yRes, Timer timer, WindFieldGenParamsDTO windParams, SimpleBusyIndicator busyIndicator) { this.simulatorSvc = simulatorSvc; this.stringMessages = stringMessages; this.errorReporter = errorReporter; @@ -135,6 +138,7 @@ public class SimulatorMap extends AbsolutePanel implements RequiresDataInitializ this.timer = timer; timer.addTimeListener(this); this.windParams = windParams; + this.busyIndicator = busyIndicator; colorPalette = new ColorPaletteGenerator(); dataInitialized = false; @@ -214,7 +218,7 @@ public class SimulatorMap extends AbsolutePanel implements RequiresDataInitializ windParams.setSouthEast(endPointDTO); windParams.setxRes(xRes); windParams.setyRes(yRes); - + busyIndicator.setBusy(true); simulatorSvc.getWindField(windParams, windPatternDisplay, new AsyncCallback() { @Override public void onFailure(Throwable message) { @@ -232,6 +236,7 @@ public class SimulatorMap extends AbsolutePanel implements RequiresDataInitializ refreshWindFieldOverlay(wl); timeListeners.clear(); timeListeners.add(windFieldCanvasOverlay); + busyIndicator.setBusy(false); } }); @@ -258,7 +263,7 @@ public class SimulatorMap extends AbsolutePanel implements RequiresDataInitializ windParams.setSouthEast(endPointDTO); windParams.setxRes(xRes); windParams.setyRes(yRes); - + busyIndicator.setBusy(true); //simulatorSvc.getPaths(windParams, windPatternDisplay, new PathManager(windPatternDisplay, summaryView)); simulatorSvc.getSimulatorResults(windParams, windPatternDisplay, !summaryView, new ResultManager(summaryView));