diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/panels/ResizingFlowPanel.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/panels/ResizingFlowPanel.java new file mode 100644 index 00000000000..d4c92a8c791 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/panels/ResizingFlowPanel.java @@ -0,0 +1,8 @@ +package com.sap.sailing.gwt.ui.client.shared.panels; + +import com.google.gwt.user.client.ui.FlowPanel; +import com.google.gwt.user.client.ui.RequiresResize; + +public abstract class ResizingFlowPanel extends FlowPanel implements RequiresResize { + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/panels/ResizingHorizontalPanel.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/panels/ResizingHorizontalPanel.java new file mode 100644 index 00000000000..8de0db09594 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/panels/ResizingHorizontalPanel.java @@ -0,0 +1,8 @@ +package com.sap.sailing.gwt.ui.client.shared.panels; + +import com.google.gwt.user.client.ui.HorizontalPanel; +import com.google.gwt.user.client.ui.RequiresResize; + +public abstract class ResizingHorizontalPanel extends HorizontalPanel implements RequiresResize { + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/panels/ResizingSimplePanel.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/panels/ResizingSimplePanel.java new file mode 100644 index 00000000000..78c7fdd543c --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/panels/ResizingSimplePanel.java @@ -0,0 +1,8 @@ +package com.sap.sailing.gwt.ui.client.shared.panels; + +import com.google.gwt.user.client.ui.RequiresResize; +import com.google.gwt.user.client.ui.SimplePanel; + +public abstract class ResizingSimplePanel extends SimplePanel implements RequiresResize { + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/datamining/presentation/ResultsChart.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/datamining/presentation/ResultsChart.java index 8016715ddd5..ddab8eee15a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/datamining/presentation/ResultsChart.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/datamining/presentation/ResultsChart.java @@ -22,16 +22,16 @@ import org.moxieapps.gwt.highcharts.client.labels.XAxisLabels; import org.moxieapps.gwt.highcharts.client.labels.YAxisLabels; import com.google.gwt.user.client.ui.HTML; -import com.google.gwt.user.client.ui.RequiresResize; import com.google.gwt.user.client.ui.SimplePanel; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.datamining.shared.GroupKey; import com.sap.sailing.datamining.shared.QueryResult; import com.sap.sailing.gwt.ui.client.StringMessages; +import com.sap.sailing.gwt.ui.client.shared.panels.ResizingSimplePanel; import com.sap.sailing.gwt.ui.datamining.ResultsPresenter; import com.sap.sailing.gwt.ui.datamining.UnitFormatter; -public class ResultsChart implements ResultsPresenter, RequiresResize { +public class ResultsChart implements ResultsPresenter { private StringMessages stringMessages; private SimplePanel mainPanel; @@ -47,7 +47,13 @@ public class ResultsChart implements ResultsPresenter, RequiresResize { public ResultsChart(StringMessages stringMessages) { super(); this.stringMessages = stringMessages; - mainPanel = new SimplePanel(); + mainPanel = new ResizingSimplePanel() { + @Override + public void onResize() { + chart.setSizeToMatchContainer(); + chart.redraw(); + } + }; series = new HashMap(); errorLabel = new HTML(); errorLabel.setStyleName("chart-importantMessage"); @@ -219,11 +225,5 @@ public class ResultsChart implements ResultsPresenter, RequiresResize { public Widget getWidget() { return mainPanel; } - - @Override - public void onResize() { - chart.setSizeToMatchContainer(); - chart.redraw(); - } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/datamining/selection/QueryDefinitionProviderWithControls.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/datamining/selection/QueryDefinitionProviderWithControls.java index 6e2af28b620..17083d56f13 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/datamining/selection/QueryDefinitionProviderWithControls.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/datamining/selection/QueryDefinitionProviderWithControls.java @@ -14,6 +14,7 @@ import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.FlowPanel; import com.google.gwt.user.client.ui.HorizontalPanel; import com.google.gwt.user.client.ui.Label; +import com.google.gwt.user.client.ui.RequiresResize; import com.google.gwt.user.client.ui.ValueListBox; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.datamining.shared.Components.AggregatorType; @@ -25,6 +26,7 @@ import com.sap.sailing.datamining.shared.SimpleQueryDefinition; import com.sap.sailing.gwt.ui.client.ErrorReporter; import com.sap.sailing.gwt.ui.client.SailingServiceAsync; import com.sap.sailing.gwt.ui.client.StringMessages; +import com.sap.sailing.gwt.ui.client.shared.panels.ResizingFlowPanel; import com.sap.sailing.gwt.ui.datamining.DataMiningControls; import com.sap.sailing.gwt.ui.datamining.SelectionChangedListener; import com.sap.sailing.gwt.ui.datamining.SelectionProvider; @@ -42,11 +44,18 @@ public class QueryDefinitionProviderWithControls extends AbstractQueryDefinition private GroupBySelectionPanel groupBySelectionPanel; - public QueryDefinitionProviderWithControls(StringMessages stringMessages, SailingServiceAsync sailingService, - ErrorReporter errorReporter) { + public QueryDefinitionProviderWithControls(StringMessages stringMessages, SailingServiceAsync sailingService, ErrorReporter errorReporter) { super(stringMessages, sailingService, errorReporter); - mainPanel = new FlowPanel(); + mainPanel = new ResizingFlowPanel() { + @Override + public void onResize() { + Widget selectionWidget = selectionProvider.getEntryWidget(); + if (selectionWidget instanceof RequiresResize) { + ((RequiresResize) selectionWidget).onResize(); + } + } + }; statisticsProvider = new SimpleStatisticsProvider(); mainPanel.add(createFunctionsPanel());