Fixed ui bug in TabbedResultsPresenter

This commit is contained in:
Frederik Petersen committed 2015-09-17 13:10:09 +02:00
1 parent e15255a39d
commit 7fde7a0c8e
6 files changed
+20 -11

No files matched your search

@@ -68,6 +68,7 @@
<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/com.sap.sse.gwt.adminconsole/src&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#13;&#10;"/>
<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/com.sap.sse.security.common/src&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#13;&#10;"/>
<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/com.sap.sailing.polars.datamining.shared/src&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#13;&#10;"/>
<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/com.sap.sse.datamining.annotations/src&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#13;&#10;"/>
</listAttribute>
<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="com.google.gwt.eclipse.core.moduleClasspathProvider"/>
<booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="false"/>
@@ -69,6 +69,12 @@ public class TabbedResultsPresenter implements ResultsPresenter<Object> {
CloseableTabHeader oldHeader = getSelectedHeader();
addPolarTabAndFocus();
removeTab(oldHeader);
} else {
if (!(getSelectedPresenter() instanceof MultiResultsPresenter)) {
CloseableTabHeader oldHeader = getSelectedHeader();
addTabAndFocus();
removeTab(oldHeader);
}
}
getSelectedHeader().setText(result.getResultSignifier());
getSelectedPresenter().showResult(result);
@@ -26,7 +26,8 @@ import com.sap.sailing.gwt.ui.datamining.DataMiningEntryPoint;
import com.sap.sailing.gwt.ui.datamining.DataMiningServiceAsync;
import com.sap.sailing.gwt.ui.datamining.DataRetrieverChainDefinitionChangedListener;
import com.sap.sailing.gwt.ui.datamining.DataRetrieverChainDefinitionProvider;
import com.sap.sailing.gwt.ui.polarsheets.PolarSheetGenerationSettingsDialogComponent;
import com.sap.sailing.gwt.ui.polarmining.PolarDataMiningSettingsDialogComponent;
import com.sap.sailing.polars.datamining.shared.PolarDataMiningSettings;
import com.sap.sse.common.settings.SerializableSettings;
import com.sap.sse.common.settings.Settings;
import com.sap.sse.datamining.shared.dto.StatisticQueryDefinitionDTO;
@@ -49,7 +50,7 @@ public class SimpleDataRetrieverChainDefinitionProvider implements DataRetriever
private Anchor settingsAnchor;
// TODO FIXME This is currently the only use case for processors with settings. That's why it's hard coded.
private Map<DataRetrieverChainDefinitionDTO, PolarSheetGenerationSettings> settingsMappedByRetrieverChain;
private Map<DataRetrieverChainDefinitionDTO, PolarDataMiningSettings> settingsMappedByRetrieverChain;
public SimpleDataRetrieverChainDefinitionProvider(final StringMessages stringMessages, DataMiningServiceAsync dataMiningService, ErrorReporter errorReporter) {
this.stringMessages = stringMessages;
@@ -153,8 +154,8 @@ public class SimpleDataRetrieverChainDefinitionProvider implements DataRetriever
if (retrieverChain.hasSettings()) {
// TODO FIXME This is currently the only use case for processors with settings. That's why it's hard coded.
for (SerializableSettings settings : retrieverChain.getDefaultSettings().values()) {
if (settings instanceof PolarSheetGenerationSettings) {
settingsMappedByRetrieverChain.put(retrieverChain, (PolarSheetGenerationSettings) settings);
if (settings instanceof PolarDataMiningSettings) {
settingsMappedByRetrieverChain.put(retrieverChain, (PolarDataMiningSettings) settings);
}
}
}
@@ -235,7 +236,7 @@ public class SimpleDataRetrieverChainDefinitionProvider implements DataRetriever
public SettingsDialogComponent<SerializableSettings> getSettingsDialogComponent() {
SettingsDialogComponent<? extends Settings> result = null;
if (settingsMappedByRetrieverChain.containsKey(getDataRetrieverChainDefinition())) {
result = new PolarSheetGenerationSettingsDialogComponent(settingsMappedByRetrieverChain.get(getDataRetrieverChainDefinition()));
result = new PolarDataMiningSettingsDialogComponent(settingsMappedByRetrieverChain.get(getDataRetrieverChainDefinition()));
}
return (SettingsDialogComponent<SerializableSettings>) result;
}
@@ -243,7 +244,7 @@ public class SimpleDataRetrieverChainDefinitionProvider implements DataRetriever
@Override
public void updateSettings(SerializableSettings newSettings) {
// TODO FIXME This is currently the only use case for processors with settings. That's why it's hard coded.
settingsMappedByRetrieverChain.put(getDataRetrieverChainDefinition(), (PolarSheetGenerationSettings) newSettings);
settingsMappedByRetrieverChain.put(getDataRetrieverChainDefinition(), (PolarDataMiningSettings) newSettings);
notifyListeners();
}
@@ -35,6 +35,7 @@
<set-property name="gwt.logging.enabled" value="FALSE"/>
<source path="datamining" />
<source path="polarsheets" />
<source path="polarmining" />
<inherits name='com.sap.sailing.gwt.ui.SourceCommon'/>
@@ -3,8 +3,6 @@ package com.sap.sailing.polars.datamining;
import java.util.ArrayList;
import java.util.Collection;
import com.sap.sailing.domain.common.PolarSheetGenerationSettings;
import com.sap.sailing.domain.common.impl.PolarSheetGenerationSettingsImpl;
import com.sap.sailing.polars.datamining.components.PolarCompetitorRetrievalProcessor;
import com.sap.sailing.polars.datamining.components.PolarFleetRetrievalProcessor;
import com.sap.sailing.polars.datamining.components.PolarGPSFixRetrievalProcessor;
@@ -19,6 +17,8 @@ import com.sap.sailing.polars.datamining.data.HasLeaderboardGroupPolarContext;
import com.sap.sailing.polars.datamining.data.HasLeaderboardPolarContext;
import com.sap.sailing.polars.datamining.data.HasLegPolarContext;
import com.sap.sailing.polars.datamining.data.HasRaceColumnPolarContext;
import com.sap.sailing.polars.datamining.shared.PolarDataMiningSettings;
import com.sap.sailing.polars.datamining.shared.PolarDataMiningSettingsImpl;
import com.sap.sailing.server.RacingEventService;
import com.sap.sse.datamining.components.DataRetrieverChainDefinition;
import com.sap.sse.datamining.impl.components.SimpleDataRetrieverChainDefinition;
@@ -44,7 +44,7 @@ public class PolarsDataRetrievalChainDefinitions {
definition1.addAfter(PolarLegRetrievalProcessor.class, PolarCompetitorRetrievalProcessor.class,
HasCompetitorPolarContext.class, "Competitor");
definition1.endWith(PolarCompetitorRetrievalProcessor.class, PolarGPSFixRetrievalProcessor.class,
HasGPSFixPolarContext.class, PolarSheetGenerationSettings.class, PolarSheetGenerationSettingsImpl.createStandardPolarSettings(), "GPSFix");
HasGPSFixPolarContext.class, PolarDataMiningSettings.class, PolarDataMiningSettingsImpl.createStandardPolarSettings(), "GPSFix");
dataRetrieverChainDefinitions.add(definition1);
}
@@ -29,10 +29,10 @@ import com.sap.sse.datamining.impl.components.AbstractRetrievalProcessor;
public class PolarGPSFixRetrievalProcessor extends AbstractRetrievalProcessor<HasCompetitorPolarContext, HasGPSFixPolarContext> {
private final PolarSheetGenerationSettings settings;
private final PolarDataMiningSettings settings;
public PolarGPSFixRetrievalProcessor(ExecutorService executor, Collection<Processor<HasGPSFixPolarContext, ?>> resultReceivers,
PolarSheetGenerationSettings settings, int retrievalLevel) {
PolarDataMiningSettings settings, int retrievalLevel) {
super(HasCompetitorPolarContext.class, HasGPSFixPolarContext.class, executor, resultReceivers, retrievalLevel);
this.settings = settings;
}