mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-21 19:50:01 +00:00
Merge remote branch 'origin/riccardo-selenium'
This commit is contained in:
commit
25b2389b1c
52 files changed
+1584
-442
No files matched your search
@@ -27,7 +27,6 @@
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/org.json.simple/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.server/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.tractracadapter/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.tractrac.clientmodule/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.expeditionconnector/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.declination/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.declination/resources" path="3" type="2"/> "/>
|
||||
@@ -46,7 +45,6 @@
|
||||
</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"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/sapjvm_7"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="com.google.gwt.dev.DevMode"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-war "${project_loc:com.sap.sailing.gwt.ui}" -noserver -remoteUI "${gwt_remote_ui_server_port}:${unique_id}" -logLevel INFO -codeServerPort 9997 -startupUrl /gwt/AdminConsole.html com.sap.sailing.gwt.ui.AdminConsole -startupUrl /gwt/LeaderboardEditing.html com.sap.sailing.gwt.ui.LeaderboardEditing -startupUrl /gwt/UserManagement.html com.sap.sailing.gwt.ui.UserManagement -startupUrl /gwt/Leaderboard.html com.sap.sailing.gwt.ui.Leaderboard -startupUrl /gwt/Spectator.html com.sap.sailing.gwt.ui.Spectator -startupUrl /gwt/RaceBoard.html com.sap.sailing.gwt.ui.RaceBoard -startupUrl /gwt/PolarSheets.html com.sap.sailing.gwt.ui.PolarSheets -startupUrl /gwt/RegattaOverview.html com.sap.sailing.gwt.ui.RegattaOverview"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="com.sap.sailing.gwt.ui"/>
|
||||
|
||||
@@ -1,55 +1,59 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="com.google.gdt.eclipse.suite.webapp">
|
||||
<booleanAttribute key="com.google.gdt.eclipse.core.RUN_SERVER" value="false"/>
|
||||
<stringAttribute key="com.google.gdt.eclipse.suiteMainTypeProcessor.PREVIOUSLY_SET_MAIN_TYPE_NAME" value="com.google.gwt.dev.GWTShell"/>
|
||||
<booleanAttribute key="com.google.gdt.eclipse.suiteWarArgumentProcessor.IS_WAR_FROM_PROJECT_PROPERTIES" value="true"/>
|
||||
<listAttribute key="com.google.gwt.eclipse.core.ENTRY_POINT_MODULES">
|
||||
<listEntry value="com.sap.sailing.gwt.ui.VideoPopup"/>
|
||||
</listAttribute>
|
||||
<stringAttribute key="com.google.gwt.eclipse.core.URL" value="/gwt/AdminConsole.html"/>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||
<listEntry value="/com.sap.sailing.gwt.ui"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||
<listEntry value="4"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
|
||||
<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
|
||||
<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.jdt.launching.CLASSPATH">
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry containerPath="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6" javaProject="com.sap.sailing.gwt.ui" path="1" type="4"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.gwt.ui/src/main/resources" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.gwt.ui/src/main/java" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.googlecode.java-diff-utils/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.common/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/org.json.simple/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.server/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.tractracadapter/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.expeditionconnector/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.declination/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.declination/resources" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.udpconnector/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.mongodb/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.swisstimingadapter/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.persistence/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.swisstimingadapter.persistence/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.operationaltransformation/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.tractracadapter.persistence/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/org.moxieapps.gwt.highcharts/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.geocoding/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.server.replication/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.datamining.shared/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.google.gwt.osgi/lib/gwt-user.jar" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry id="org.eclipse.jdt.launching.classpathentry.defaultClasspath"> <memento exportedEntriesOnly="false" project="com.sap.sailing.gwt.ui"/> </runtimeClasspathEntry> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sse.common/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sse.gwt/src" path="3" type="2"/> "/>
|
||||
</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"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="com.google.gwt.dev.DevMode"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-war "${project_loc:com.sap.sailing.gwt.ui}" -noserver -remoteUI "${gwt_remote_ui_server_port}:${unique_id}" -logLevel INFO -codeServerPort 9997 -startupUrl /gwt/AdminConsole.html com.sap.sailing.gwt.ui.AdminConsole -startupUrl /gwt/LeaderboardEditing.html com.sap.sailing.gwt.ui.LeaderboardEditing -startupUrl /gwt/UserManagement.html com.sap.sailing.gwt.ui.UserManagement -startupUrl /gwt/Leaderboard.html com.sap.sailing.gwt.ui.Leaderboard -startupUrl /gwt/Spectator.html com.sap.sailing.gwt.ui.Spectator -startupUrl /gwt/RaceBoard.html com.sap.sailing.gwt.ui.RaceBoard -startupUrl /gwt/TvView.html com.sap.sailing.gwt.ui.TvView -startupUrl /gwt/PolarSheets.html com.sap.sailing.gwt.ui.PolarSheets -startupUrl /gwt/RegattaOverview.html com.sap.sailing.gwt.ui.RegattaOverview -startupUrl /gwt/Simulator.html com.sap.sailing.gwt.ui.Simulator -startupUrl /gwt/YoutubePopup.html com.sap.sailing.gwt.ui.YoutubePopup -startupUrl /gwt/DataMining.html com.sap.sailing.gwt.ui.DataMining -startupUrl /gwt/VideoPopup.html com.sap.sailing.gwt.ui.VideoPopup"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="com.sap.sailing.gwt.ui"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx2048m -XX:MaxPermSize=512m"/>
|
||||
</launchConfiguration>
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="com.google.gdt.eclipse.suite.webapp">
|
||||
<booleanAttribute key="com.google.gdt.eclipse.core.RUN_SERVER" value="false"/>
|
||||
<stringAttribute key="com.google.gdt.eclipse.suiteMainTypeProcessor.PREVIOUSLY_SET_MAIN_TYPE_NAME" value="com.google.gwt.dev.GWTShell"/>
|
||||
<booleanAttribute key="com.google.gdt.eclipse.suiteWarArgumentProcessor.IS_WAR_FROM_PROJECT_PROPERTIES" value="true"/>
|
||||
<listAttribute key="com.google.gwt.eclipse.core.ENTRY_POINT_MODULES">
|
||||
<listEntry value="com.sap.sailing.gwt.ui.VideoPopup"/>
|
||||
<listEntry value="com.sap.sailing.gwt.ui.Simulator"/>
|
||||
</listAttribute>
|
||||
<stringAttribute key="com.google.gwt.eclipse.core.URL" value="/gwt/AdminConsole.html"/>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||
<listEntry value="/com.sap.sailing.gwt.ui"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||
<listEntry value="4"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
|
||||
<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
|
||||
<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.jdt.launching.CLASSPATH">
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry containerPath="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6" javaProject="com.sap.sailing.gwt.ui" path="1" type="4"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.gwt.ui/src/main/resources" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.gwt.ui/src/main/java" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.googlecode.java-diff-utils/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.common/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/org.json.simple/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.server/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.tractracadapter/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.expeditionconnector/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.declination/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.declination/resources" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.udpconnector/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.mongodb/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.swisstimingadapter/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.persistence/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.swisstimingadapter.persistence/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.operationaltransformation/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.domain.tractracadapter.persistence/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/org.moxieapps.gwt.highcharts/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.geocoding/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.server.replication/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sailing.datamining.shared/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sse.common/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sse.datamining.shared/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sse.gwt/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.google.gwt.osgi/lib/gwt-user.jar" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry id="org.eclipse.jdt.launching.classpathentry.defaultClasspath"> <memento exportedEntriesOnly="false" project="com.sap.sailing.gwt.ui"/> </runtimeClasspathEntry> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sse.common/src" path="3" type="2"/> "/>
|
||||
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/com.sap.sse.gwt/src" path="3" type="2"/> "/>
|
||||
</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"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="com.google.gwt.dev.DevMode"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-war "${project_loc:com.sap.sailing.gwt.ui}" -noserver -remoteUI "${gwt_remote_ui_server_port}:${unique_id}" -logLevel INFO -codeServerPort 9997 -startupUrl /gwt/AdminConsole.html com.sap.sailing.gwt.ui.AdminConsole -startupUrl /gwt/LeaderboardEditing.html com.sap.sailing.gwt.ui.LeaderboardEditing -startupUrl /gwt/UserManagement.html com.sap.sailing.gwt.ui.UserManagement -startupUrl /gwt/Leaderboard.html com.sap.sailing.gwt.ui.Leaderboard -startupUrl /gwt/Spectator.html com.sap.sailing.gwt.ui.Spectator -startupUrl /gwt/RaceBoard.html com.sap.sailing.gwt.ui.RaceBoard -startupUrl /gwt/TvView.html com.sap.sailing.gwt.ui.TvView -startupUrl /gwt/PolarSheets.html com.sap.sailing.gwt.ui.PolarSheets -startupUrl /gwt/RegattaOverview.html com.sap.sailing.gwt.ui.RegattaOverview -startupUrl /gwt/DataMining.html com.sap.sailing.gwt.ui.DataMining -startupUrl /gwt/Simulator.html com.sap.sailing.gwt.ui.Simulator com.sap.sailing.gwt.ui.VideoPopup"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="com.sap.sailing.gwt.ui"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx2048m -XX:MaxPermSize=512m"/>
|
||||
</launchConfiguration>
|
||||
+15
-13
@@ -36,6 +36,7 @@ import com.sap.sailing.gwt.ui.masterdataimport.MasterDataImportPanel;
|
||||
import com.sap.sailing.gwt.ui.shared.BetterDateTimeBox;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sse.gwt.client.async.AsyncActionsExecutor;
|
||||
import com.sap.sse.gwt.client.async.MarkedAsyncCallback;
|
||||
|
||||
public class AdminConsoleEntryPoint extends AbstractEntryPoint implements RegattaRefresher {
|
||||
private Set<RegattaDisplayer> regattaDisplayers;
|
||||
@@ -207,18 +208,19 @@ public class AdminConsoleEntryPoint extends AbstractEntryPoint implements Regatt
|
||||
|
||||
@Override
|
||||
public void fillRegattas() {
|
||||
sailingService.getRegattas(new AsyncCallback<List<RegattaDTO>>() {
|
||||
@Override
|
||||
public void onSuccess(List<RegattaDTO> result) {
|
||||
for (RegattaDisplayer regattaDisplayer : regattaDisplayers) {
|
||||
regattaDisplayer.fillRegattas(result);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
reportError("Remote Procedure Call getRegattas() - Failure");
|
||||
}
|
||||
});
|
||||
sailingService.getRegattas(new MarkedAsyncCallback<List<RegattaDTO>>(
|
||||
new AsyncCallback<List<RegattaDTO>>() {
|
||||
@Override
|
||||
public void onSuccess(List<RegattaDTO> result) {
|
||||
for (RegattaDisplayer regattaDisplayer : regattaDisplayers) {
|
||||
regattaDisplayer.fillRegattas(result);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
reportError("Remote Procedure Call getRegattas() - Failure");
|
||||
}
|
||||
}));
|
||||
}
|
||||
}
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
package com.sap.sailing.gwt.ui.client;
|
||||
|
||||
/**
|
||||
* <p>Helper class for generating debug identifiers.</p>
|
||||
*
|
||||
* @author
|
||||
* Riccardo Nimser
|
||||
*/
|
||||
public class DebugIdHelper {
|
||||
/**
|
||||
* <p>Creates a debug identifier for the given enum value. The identifier is the camel cased name of the enum value
|
||||
* as declared in its enum declaration. The name is split into single words using the underscore.</p>
|
||||
*
|
||||
* @param value
|
||||
* The enum value for which the identfier should be created.
|
||||
* @return
|
||||
* A debug identifier for the given enum value.
|
||||
*/
|
||||
public static <T extends Enum<?>> String createDebugId(T value) {
|
||||
return createDebugId(value.name(), "_");
|
||||
}
|
||||
|
||||
/**
|
||||
* <p>Creates a debug identifier for the given name. The name is splited into single words using all whitespace
|
||||
* characters.</p>
|
||||
*
|
||||
* @param value
|
||||
* The name for which the identifier should be created.
|
||||
* @return
|
||||
* A debug identifier for the given enum value.
|
||||
*/
|
||||
public static String createDebugId(String name) {
|
||||
return createDebugId(name, "\\s");
|
||||
}
|
||||
|
||||
private static String createDebugId(String name, String splitRegex) {
|
||||
StringBuilder builder = new StringBuilder();
|
||||
|
||||
for (String token : name.split(splitRegex)) {
|
||||
builder.append(token.substring(0, 1).toUpperCase());
|
||||
builder.append(token.substring(1, token.length()).toLowerCase());
|
||||
}
|
||||
return builder.toString();
|
||||
}
|
||||
}
|
||||
+1
@@ -159,6 +159,7 @@ public abstract class AbstractCompetitorLeaderboardChart<SettingsType> extends A
|
||||
break;
|
||||
}
|
||||
chart.setTitle(new ChartTitle().setText(DetailTypeFormatter.format(selectedDetailType)), null);
|
||||
chart.ensureDebugId("CompetitorChart");
|
||||
final String unit = DetailTypeFormatter.getUnit(getSelectedDetailType());
|
||||
final String label = unit.isEmpty() ? "" : "[" + unit + "]";
|
||||
chart.getYAxis().setAxisTitleText(label);
|
||||
|
||||
+1
@@ -49,6 +49,7 @@ public class MultiCompetitorLeaderboardChartSettingsDialogComponent implements S
|
||||
Label chartSelectionLabel = new Label(stringMessages.chooseChart());
|
||||
mainPanel.add(chartSelectionLabel);
|
||||
chartTypeSelectionListBox = dialog.createListBox(/* isMultiSelect */false);
|
||||
chartTypeSelectionListBox.ensureDebugId("ChartTypeListBox");
|
||||
int i = 0;
|
||||
for (DetailType detailType : availableDetailsTypes) {
|
||||
chartTypeSelectionListBox.addItem(DetailTypeFormatter.format(detailType), detailType.name());
|
||||
|
||||
+3
-2
@@ -30,7 +30,8 @@ public abstract class ExpandedListEditorUi<ValueType> extends ListEditorUi<Value
|
||||
@Override
|
||||
public Widget initWidget() {
|
||||
expandedValuesGrid = new Grid(0, 2);
|
||||
|
||||
expandedValuesGrid.ensureDebugId("ExpandedValuesGrid");
|
||||
|
||||
VerticalPanel panel = new VerticalPanel();
|
||||
panel.add(createAddWidget());
|
||||
panel.add(expandedValuesGrid);
|
||||
@@ -55,6 +56,7 @@ public abstract class ExpandedListEditorUi<ValueType> extends ListEditorUi<Value
|
||||
|
||||
if (canRemoveItems) {
|
||||
PushButton removeButton = new PushButton(new Image(removeImage));
|
||||
removeButton.ensureDebugId("RemoveButton");
|
||||
removeButton.setTitle(stringMessages.remove());
|
||||
removeButton.addClickHandler(new ClickHandler() {
|
||||
|
||||
@@ -66,7 +68,6 @@ public abstract class ExpandedListEditorUi<ValueType> extends ListEditorUi<Value
|
||||
});
|
||||
expandedValuesGrid.setWidget(rowIndex, 1, removeButton);
|
||||
}
|
||||
|
||||
expandedValuesGrid.setWidget(rowIndex, 0, createValueWidget(rowIndex, newValue));
|
||||
}
|
||||
|
||||
|
||||
+1
@@ -105,6 +105,7 @@ public class StringListInlineEditorComposite extends StringListEditorComposite {
|
||||
@Override
|
||||
protected Widget createValueWidget(final int rowIndex, String newValue) {
|
||||
final TextBox textBox = new TextBox();
|
||||
textBox.ensureDebugId("ValueTextBox");
|
||||
textBox.setValue(newValue);
|
||||
|
||||
textBox.addKeyUpHandler(new KeyUpHandler() {
|
||||
|
||||
+45
-51
@@ -11,6 +11,7 @@ import com.google.gwt.user.client.ui.CheckBox;
|
||||
import com.google.gwt.user.client.ui.FlowPanel;
|
||||
import com.google.gwt.user.client.ui.SimplePanel;
|
||||
import com.sap.sailing.gwt.ui.client.CompetitorSelectionModel;
|
||||
import com.sap.sailing.gwt.ui.client.DebugIdHelper;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.shared.components.Component;
|
||||
import com.sap.sailing.gwt.ui.client.shared.components.SettingsDialog;
|
||||
@@ -20,8 +21,8 @@ import com.sap.sse.gwt.client.player.Timer;
|
||||
|
||||
/**
|
||||
* A base class for a leaderboard viewer.
|
||||
*
|
||||
* @author Frank Mittag (c163874)
|
||||
*
|
||||
*/
|
||||
public abstract class AbstractLeaderboardViewer extends SimplePanel {
|
||||
protected final StringMessages stringMessages;
|
||||
@@ -49,69 +50,62 @@ public abstract class AbstractLeaderboardViewer extends SimplePanel {
|
||||
protected FlowPanel createViewerPanel() {
|
||||
FlowPanel mainPanel = new FlowPanel();
|
||||
mainPanel.setSize("100%", "100%");
|
||||
|
||||
getElement().getStyle().setMarginLeft(12, Unit.PX);
|
||||
getElement().getStyle().setMarginRight(12, Unit.PX);
|
||||
|
||||
if(!hideToolbar) {
|
||||
if (!hideToolbar) {
|
||||
componentsNavigationPanel = new FlowPanel();
|
||||
componentsNavigationPanel.addStyleName(STYLE_VIEWER_TOOLBAR);
|
||||
mainPanel.add(componentsNavigationPanel);
|
||||
}
|
||||
|
||||
return mainPanel;
|
||||
}
|
||||
|
||||
protected <SettingsType> void addComponentToNavigationMenu(final Component<SettingsType> component, boolean isCheckboxEnabled,
|
||||
String componentDisplayName, final boolean hasSettingsWhenComponentIsInvisible) {
|
||||
if(hideToolbar) {
|
||||
return;
|
||||
}
|
||||
|
||||
final String componentName = componentDisplayName != null ? componentDisplayName : component.getLocalizedShortName();
|
||||
final CheckBox checkBox= new CheckBox(componentName);
|
||||
final Button settingsButton = new Button("");
|
||||
|
||||
checkBox.getElement().getStyle().setFloat(Style.Float.LEFT);
|
||||
|
||||
checkBox.setEnabled(isCheckboxEnabled);
|
||||
checkBox.setValue(component.isVisible());
|
||||
checkBox.setTitle(stringMessages.showHideComponent(componentName));
|
||||
checkBox.addStyleName(STYLE_VIEWER_TOOLBAR_INNERELEMENT);
|
||||
|
||||
checkBox.addValueChangeHandler(new ValueChangeHandler<Boolean>() {
|
||||
@Override
|
||||
public void onValueChange(ValueChangeEvent<Boolean> newValue) {
|
||||
boolean visible = checkBox.getValue();
|
||||
component.setVisible(visible);
|
||||
|
||||
if (visible && component instanceof TimeListener) {
|
||||
// trigger the component to update its data
|
||||
((TimeListener) component).timeChanged(timer.getTime(), null);
|
||||
}
|
||||
if(component.hasSettings() && !hasSettingsWhenComponentIsInvisible) {
|
||||
settingsButton.setEnabled(visible);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
componentsNavigationPanel.add(checkBox);
|
||||
|
||||
if(component.hasSettings()) {
|
||||
settingsButton.addClickHandler(new ClickHandler() {
|
||||
if (!hideToolbar) {
|
||||
final String componentName = componentDisplayName != null ? componentDisplayName : component.getLocalizedShortName();
|
||||
final String debugIdPrefix = DebugIdHelper.createDebugId(componentName);
|
||||
final CheckBox checkBox = new CheckBox(componentName);
|
||||
checkBox.ensureDebugId(debugIdPrefix + "DisplayCheckBox");
|
||||
final Button settingsButton = new Button("");
|
||||
settingsButton.ensureDebugId(debugIdPrefix + "SettingsButton");
|
||||
checkBox.getElement().getStyle().setFloat(Style.Float.LEFT);
|
||||
checkBox.setEnabled(isCheckboxEnabled);
|
||||
checkBox.setValue(component.isVisible());
|
||||
checkBox.setTitle(stringMessages.showHideComponent(componentName));
|
||||
checkBox.addStyleName(STYLE_VIEWER_TOOLBAR_INNERELEMENT);
|
||||
checkBox.addValueChangeHandler(new ValueChangeHandler<Boolean>() {
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
new SettingsDialog<SettingsType>(component, stringMessages).show();
|
||||
}
|
||||
public void onValueChange(ValueChangeEvent<Boolean> newValue) {
|
||||
boolean visible = checkBox.getValue();
|
||||
component.setVisible(visible);
|
||||
if (visible && component instanceof TimeListener) {
|
||||
// trigger the component to update its data
|
||||
((TimeListener) component).timeChanged(timer.getTime(), null);
|
||||
}
|
||||
if (component.hasSettings() && !hasSettingsWhenComponentIsInvisible) {
|
||||
settingsButton.setEnabled(visible);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
settingsButton.setEnabled(component.hasSettings() && hasSettingsWhenComponentIsInvisible);
|
||||
settingsButton.addStyleName(STYLE_VIEWER_TOOLBAR_SETTINGS_BUTTON);
|
||||
settingsButton.getElement().getStyle().setFloat(Style.Float.LEFT);
|
||||
settingsButton.setTitle(stringMessages.settingsForComponent(componentName));
|
||||
|
||||
componentsNavigationPanel.add(settingsButton);
|
||||
componentsNavigationPanel.add(checkBox);
|
||||
if (component.hasSettings()) {
|
||||
settingsButton.addClickHandler(new ClickHandler() {
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
SettingsDialog<SettingsType> dialog = new SettingsDialog<SettingsType>(component,
|
||||
stringMessages);
|
||||
dialog.ensureDebugId(debugIdPrefix + "SettingsDialog");
|
||||
dialog.show();
|
||||
}
|
||||
});
|
||||
}
|
||||
settingsButton.setEnabled(component.hasSettings() && hasSettingsWhenComponentIsInvisible);
|
||||
settingsButton.addStyleName(STYLE_VIEWER_TOOLBAR_SETTINGS_BUTTON);
|
||||
settingsButton.getElement().getStyle().setFloat(Style.Float.LEFT);
|
||||
settingsButton.setTitle(stringMessages.settingsForComponent(componentName));
|
||||
componentsNavigationPanel.add(settingsButton);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+19
-17
@@ -33,6 +33,7 @@ import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.URLEncoder;
|
||||
import com.sap.sailing.gwt.ui.leaderboard.LeaderboardSettings.RaceColumnSelectionStrategies;
|
||||
import com.sap.sse.gwt.client.async.AsyncActionsExecutor;
|
||||
import com.sap.sse.gwt.client.async.MarkedAsyncCallback;
|
||||
import com.sap.sse.gwt.client.dialog.DataEntryDialog;
|
||||
import com.sap.sse.gwt.client.player.Timer;
|
||||
import com.sap.sse.gwt.client.player.Timer.PlayModes;
|
||||
@@ -95,23 +96,24 @@ public class LeaderboardEntryPoint extends AbstractEntryPoint {
|
||||
leaderboardGroupName = Window.Location.getParameter(PARAM_LEADERBOARD_GROUP_NAME);
|
||||
|
||||
if (leaderboardName != null) {
|
||||
sailingService.checkLeaderboardName(leaderboardName, new AsyncCallback<Pair<String, LeaderboardType>>() {
|
||||
@Override
|
||||
public void onSuccess(Pair<String, LeaderboardType> leaderboardNameAndType) {
|
||||
if (leaderboardNameAndType != null && leaderboardName.equals(leaderboardNameAndType.getA())) {
|
||||
Window.setTitle(leaderboardName);
|
||||
leaderboardType = leaderboardNameAndType.getB();
|
||||
createUI(showRaceDetails, embedded, hideToolbar);
|
||||
} else {
|
||||
RootPanel.get().add(new Label(stringMessages.noSuchLeaderboard()));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable t) {
|
||||
reportError("Error trying to obtain list of leaderboard names: " + t.getMessage());
|
||||
}
|
||||
});
|
||||
sailingService.checkLeaderboardName(leaderboardName, new MarkedAsyncCallback<Pair<String, LeaderboardType>>(
|
||||
new AsyncCallback<Pair<String, LeaderboardType>>() {
|
||||
@Override
|
||||
public void onSuccess(Pair<String, LeaderboardType> leaderboardNameAndType) {
|
||||
if (leaderboardNameAndType != null && leaderboardName.equals(leaderboardNameAndType.getA())) {
|
||||
Window.setTitle(leaderboardName);
|
||||
leaderboardType = leaderboardNameAndType.getB();
|
||||
createUI(showRaceDetails, embedded, hideToolbar);
|
||||
} else {
|
||||
RootPanel.get().add(new Label(stringMessages.noSuchLeaderboard()));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable t) {
|
||||
reportError("Error trying to obtain list of leaderboard names: " + t.getMessage());
|
||||
}
|
||||
}));
|
||||
} else {
|
||||
RootPanel.get().add(new Label(stringMessages.noSuchLeaderboard()));
|
||||
}
|
||||
|
||||
+24
-18
@@ -86,6 +86,7 @@ import com.sap.sailing.gwt.ui.leaderboard.DetailTypeColumn.LegDetailField;
|
||||
import com.sap.sailing.gwt.ui.leaderboard.LeaderboardSettings.RaceColumnSelectionStrategies;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceTimesInfoDTO;
|
||||
import com.sap.sse.gwt.client.async.AsyncActionsExecutor;
|
||||
import com.sap.sse.gwt.client.async.MarkedAsyncCallback;
|
||||
import com.sap.sse.gwt.client.controls.busyindicator.BusyIndicator;
|
||||
import com.sap.sse.gwt.client.controls.busyindicator.SimpleBusyIndicator;
|
||||
import com.sap.sse.gwt.client.player.PlayStateListener;
|
||||
@@ -790,20 +791,21 @@ public class LeaderboardPanel extends SimplePanel implements TimeListener, PlayS
|
||||
getSailingService().getLeaderboardByName(getLeaderboardName(),
|
||||
timer.getPlayMode() == PlayModes.Live ? null : getLeaderboardDisplayDate(),
|
||||
/* namesOfRacesForWhichToLoadLegDetails */getNamesOfExpandedRaces(),
|
||||
previousLeaderboard.getId(), new AsyncCallback<IncrementalOrFullLeaderboardDTO>() {
|
||||
@Override
|
||||
public void onSuccess(IncrementalOrFullLeaderboardDTO result) {
|
||||
updateLeaderboard(result.getLeaderboardDTO(previousLeaderboard));
|
||||
callWhenExpansionDataIsLoaded.run();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
getErrorReporter().reportError(
|
||||
stringMessages.errorTryingToObtainLeaderboardContents(caught.getMessage()),
|
||||
true /* silentMode */);
|
||||
}
|
||||
});
|
||||
previousLeaderboard.getId(), new MarkedAsyncCallback<IncrementalOrFullLeaderboardDTO>(
|
||||
new AsyncCallback<IncrementalOrFullLeaderboardDTO>() {
|
||||
@Override
|
||||
public void onSuccess(IncrementalOrFullLeaderboardDTO result) {
|
||||
updateLeaderboard(result.getLeaderboardDTO(previousLeaderboard));
|
||||
callWhenExpansionDataIsLoaded.run();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
getErrorReporter().reportError(
|
||||
stringMessages.errorTryingToObtainLeaderboardContents(caught.getMessage()),
|
||||
true /* silentMode */);
|
||||
}
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1435,7 +1437,7 @@ public class LeaderboardPanel extends SimplePanel implements TimeListener, PlayS
|
||||
TOTAL_COLUMN_STYLE = tableResources.cellTableStyle().cellTableTotalColumn();
|
||||
leaderboardTable = new SortedCellTableWithStylableHeaders<LeaderboardRowDTO>(
|
||||
/* pageSize */10000, tableResources);
|
||||
leaderboardTable.ensureDebugId("LeaderboardTable");
|
||||
leaderboardTable.ensureDebugId("LeaderboardCellTable");
|
||||
getLeaderboardTable().setWidth("100%");
|
||||
leaderboardSelectionModel = new MultiSelectionModel<LeaderboardRowDTO>();
|
||||
leaderboardSelectionModel.addSelectionChangeHandler(new Handler() {
|
||||
@@ -1470,7 +1472,7 @@ public class LeaderboardPanel extends SimplePanel implements TimeListener, PlayS
|
||||
|
||||
// the information panel
|
||||
informationPanel = new FlowPanel();
|
||||
informationPanel.setStyleName(STYLE_LEADERBOARD_INFO);
|
||||
informationPanel.setStyleName(STYLE_LEADERBOARD_INFO);
|
||||
scoreCorrectionLastUpdateTimeLabel = new Label("");
|
||||
scoreCorrectionCommentLabel = new Label("");
|
||||
informationPanel.add(scoreCorrectionCommentLabel);
|
||||
@@ -1485,8 +1487,10 @@ public class LeaderboardPanel extends SimplePanel implements TimeListener, PlayS
|
||||
|
||||
// the toolbar panel
|
||||
DockPanel toolbarPanel = new DockPanel();
|
||||
toolbarPanel.setStyleName(STYLE_LEADERBOARD_TOOLBAR);
|
||||
toolbarPanel.ensureDebugId("ToolbarPanel");
|
||||
toolbarPanel.setStyleName(STYLE_LEADERBOARD_TOOLBAR);
|
||||
busyIndicator = new SimpleBusyIndicator(false, 0.8f);
|
||||
busyIndicator.ensureDebugId("BusyIndicator");
|
||||
if (!isEmbedded) {
|
||||
toolbarPanel.add(informationPanel, DockPanel.WEST);
|
||||
toolbarPanel.add(busyIndicator, DockPanel.WEST);
|
||||
@@ -1507,12 +1511,14 @@ public class LeaderboardPanel extends SimplePanel implements TimeListener, PlayS
|
||||
pauseIcon = resources.autoRefreshEnabledIcon();
|
||||
playIcon = resources.autoRefreshDisabledIcon();
|
||||
refreshAndSettingsPanel = new HorizontalPanel();
|
||||
refreshAndSettingsPanel.ensureDebugId("RefreshAndSettingsPanel");
|
||||
refreshAndSettingsPanel.setVerticalAlignment(HasVerticalAlignment.ALIGN_MIDDLE);
|
||||
FlowPanel refreshPanel = new FlowPanel();
|
||||
refreshPanel.addStyleName("refreshPanel");
|
||||
toolbarPanel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT);
|
||||
toolbarPanel.addStyleName("refreshAndSettings");
|
||||
playPause = new Anchor(getPlayPauseImgHtml(timer.getPlayState()));
|
||||
playPause.ensureDebugId("PlayAndPauseAnchor");
|
||||
playPause.addClickHandler(playPauseHandler);
|
||||
playStateChanged(timer.getPlayState(), timer.getPlayMode());
|
||||
refreshPanel.add(playPause);
|
||||
@@ -1750,7 +1756,7 @@ public class LeaderboardPanel extends SimplePanel implements TimeListener, PlayS
|
||||
getLeaderboardName(), timer.getPlayMode() == PlayModes.Live ? null : date,
|
||||
/* namesOfRacesForWhichToLoadLegDetails */getNamesOfExpandedRaces(),
|
||||
/* previousLeaderboard */ getLeaderboard(), timer, errorReporter, stringMessages);
|
||||
asyncActionsExecutor.execute(getLeaderboardByNameAction, LOAD_LEADERBOARD_DATA_CATEGORY,
|
||||
this.asyncActionsExecutor.execute(getLeaderboardByNameAction, LOAD_LEADERBOARD_DATA_CATEGORY,
|
||||
new AsyncCallback<LeaderboardDTO>() {
|
||||
@Override
|
||||
public void onSuccess(LeaderboardDTO result) {
|
||||
|
||||
+54
-23
@@ -22,6 +22,7 @@ import com.google.gwt.user.client.ui.Widget;
|
||||
import com.sap.sailing.domain.common.DetailType;
|
||||
import com.sap.sailing.domain.common.dto.RaceColumnDTO;
|
||||
import com.sap.sailing.domain.common.impl.Util;
|
||||
import com.sap.sailing.gwt.ui.client.DebugIdHelper;
|
||||
import com.sap.sailing.gwt.ui.client.DetailTypeFormatter;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.shared.components.SettingsDialogComponent;
|
||||
@@ -90,19 +91,19 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
dialogPanel.add(createTimingDetailsPanel(dialog));
|
||||
return dialogPanel;
|
||||
}
|
||||
|
||||
|
||||
private FlowPanel createManeuverDetailsPanel(DataEntryDialog<?> dialog) {
|
||||
FlowPanel meneuverPanel = new FlowPanel();
|
||||
meneuverPanel.ensureDebugId("ManeuverSettingsPanel");
|
||||
meneuverPanel.add(dialog.createHeadline(stringMessages.maneuverTypes(), true));
|
||||
meneuverPanel.addStyleName("SettingsDialogComponent");
|
||||
FlowPanel meneuverContent = new FlowPanel();
|
||||
meneuverContent.addStyleName("dialogInnerContent");
|
||||
List<DetailType> currentMeneuverDetailSelection = maneuverDetailSelection;
|
||||
for (DetailType detailType : ManeuverCountRaceColumn.getAvailableManeuverDetailColumnTypes()) {
|
||||
CheckBox checkbox = dialog.createCheckbox(DetailTypeFormatter.format(detailType));
|
||||
dialog.addTooltip(checkbox, DetailTypeFormatter.getTooltip(detailType));
|
||||
checkbox.setValue(currentMeneuverDetailSelection.contains(detailType));
|
||||
maneuverDetailCheckboxes.put(detailType, checkbox);
|
||||
CheckBox checkbox = createAndRegisterCheckbox(dialog, detailType,
|
||||
currentMeneuverDetailSelection.contains(detailType), maneuverDetailCheckboxes);
|
||||
|
||||
meneuverContent.add(checkbox);
|
||||
}
|
||||
meneuverPanel.add(meneuverContent);
|
||||
@@ -111,7 +112,9 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
|
||||
private FlowPanel createTimingDetailsPanel(DataEntryDialog<?> dialog) {
|
||||
FlowPanel timingPanel = new FlowPanel();
|
||||
timingPanel.ensureDebugId("TimingSettingsPanel");
|
||||
refreshIntervalInSecondsBox = dialog.createLongBox(delayBetweenAutoAdvancesInMilliseconds / 1000l, 4);
|
||||
refreshIntervalInSecondsBox.ensureDebugId("RefreshIntervalLongBox");
|
||||
|
||||
timingPanel.add(dialog.createHeadline(stringMessages.timing(), true));
|
||||
timingPanel.addStyleName("SettingsDialogComponent");
|
||||
@@ -132,6 +135,7 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
|
||||
private FlowPanel createRaceDetailPanel(DataEntryDialog<?> dialog) {
|
||||
FlowPanel raceDetailDialog = new FlowPanel();
|
||||
raceDetailDialog.ensureDebugId("RaceDetailsSettingsPanel");
|
||||
raceDetailDialog.add(dialog.createHeadline(stringMessages.raceDetailsToShow(), true));
|
||||
raceDetailDialog.addStyleName("SettingsDialogComponent");
|
||||
int detailCountInCurrentFlowPanel = 0;
|
||||
@@ -143,10 +147,8 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
raceDetailDialogContent.addStyleName("dialogInnerContent");
|
||||
raceDetailDialog.add(raceDetailDialogContent);
|
||||
}
|
||||
CheckBox checkbox = dialog.createCheckbox(DetailTypeFormatter.format(type));
|
||||
checkbox.setValue(currentRaceDetailSelection.contains(type));
|
||||
dialog.addTooltip(checkbox, DetailTypeFormatter.getTooltip(type));
|
||||
raceDetailCheckboxes.put(type, checkbox);
|
||||
CheckBox checkbox = createAndRegisterCheckbox(dialog, type, currentRaceDetailSelection.contains(type),
|
||||
raceDetailCheckboxes);
|
||||
raceDetailDialogContent.add(checkbox);
|
||||
detailCountInCurrentFlowPanel++;
|
||||
}
|
||||
@@ -163,16 +165,15 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
|
||||
private FlowPanel createOverallDetailPanel(DataEntryDialog<?> dialog) {
|
||||
FlowPanel overallDetailDialog = new FlowPanel();
|
||||
overallDetailDialog.ensureDebugId("OverallDetailsSettingsPanel");
|
||||
overallDetailDialog.add(dialog.createHeadline(stringMessages.overallDetailsToShow(), true));
|
||||
overallDetailDialog.addStyleName("SettingsDialogComponent overallDetailSettings");
|
||||
FlowPanel overallDetailDialogContent = new FlowPanel();
|
||||
overallDetailDialogContent.addStyleName("dialogInnerContent");
|
||||
List<DetailType> currentOverallDetailSelection = overallDetailSelection;
|
||||
for (DetailType type : LeaderboardPanel.getAvailableOverallDetailColumnTypes()) {
|
||||
CheckBox checkbox = dialog.createCheckbox(DetailTypeFormatter.format(type));
|
||||
dialog.addTooltip(checkbox, DetailTypeFormatter.getTooltip(type));
|
||||
checkbox.setValue(currentOverallDetailSelection.contains(type));
|
||||
overallDetailCheckboxes.put(type, checkbox);
|
||||
CheckBox checkbox = createAndRegisterCheckbox(dialog, type, currentOverallDetailSelection.contains(type),
|
||||
overallDetailCheckboxes);
|
||||
overallDetailDialogContent.add(checkbox);
|
||||
}
|
||||
overallDetailDialog.add(overallDetailDialogContent);
|
||||
@@ -181,6 +182,7 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
|
||||
private FlowPanel createLegDetailsPanel(DataEntryDialog<?> dialog) {
|
||||
FlowPanel legDetailsToShow = new FlowPanel();
|
||||
legDetailsToShow.ensureDebugId("LegDetailsSettingsPanel");
|
||||
legDetailsToShow.add(dialog.createHeadline(stringMessages.legDetailsToShow(), true));
|
||||
legDetailsToShow.addStyleName("SettingsDialogComponent");
|
||||
FlowPanel legDetailsContent = null;
|
||||
@@ -192,10 +194,8 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
legDetailsContent.addStyleName("dialogInnerContent");
|
||||
legDetailsToShow.add(legDetailsContent);
|
||||
}
|
||||
CheckBox checkbox = dialog.createCheckbox(DetailTypeFormatter.format(type));
|
||||
dialog.addTooltip(checkbox, DetailTypeFormatter.getTooltip(type));
|
||||
checkbox.setValue(currentLegDetailSelection.contains(type));
|
||||
legDetailCheckboxes.put(type, checkbox);
|
||||
CheckBox checkbox = createAndRegisterCheckbox(dialog, type, currentLegDetailSelection.contains(type),
|
||||
legDetailCheckboxes);
|
||||
legDetailsContent.add(checkbox);
|
||||
detailCountInCurrentFlowPanel++;
|
||||
}
|
||||
@@ -204,6 +204,7 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
|
||||
private FlowPanel createSelectedRacesPanel(DataEntryDialog<?> dialog) {
|
||||
FlowPanel selectedRacesPanel = new FlowPanel();
|
||||
selectedRacesPanel.ensureDebugId("RaceSelectionSettingsPanel");
|
||||
selectedRacesPanel.addStyleName("SettingsDialogComponent");
|
||||
selectedRacesPanel.add(dialog.createHeadline(stringMessages.selectedRaces(), true));
|
||||
// race selection strategy elements
|
||||
@@ -218,12 +219,16 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
int racesCount = raceAllRaceColumns.size();
|
||||
if (racesCount > 0) {
|
||||
final FlowPanel explicitRaceSelectionContent = new FlowPanel();
|
||||
explicitRaceSelectionContent.ensureDebugId("ExplicitRaceSelectionPanel");
|
||||
final FlowPanel lastNRacesSelectionContent = new FlowPanel();
|
||||
lastNRacesSelectionContent.ensureDebugId("MostCurrentRacesSelectionPanel");
|
||||
|
||||
String radioButtonGroupName = "raceSelectionStrategyGroup";
|
||||
Label raceSelectionWayLabel = new Label(stringMessages.chooseTheWayYouSelectRaces() + ":");
|
||||
raceSelectionWayLabel.getElement().getStyle().setPaddingRight(5, Unit.PX);
|
||||
racesSelectionStrategyPanel.add(raceSelectionWayLabel);
|
||||
explicitRaceColumnSelectionRadioBtn = dialog.createRadioButton(radioButtonGroupName, stringMessages.selectFromAllRaces());
|
||||
explicitRaceColumnSelectionRadioBtn.ensureDebugId("ExplicitRaceSelectionRadioButton");
|
||||
racesSelectionStrategyPanel.setVerticalAlignment(HasVerticalAlignment.ALIGN_MIDDLE);
|
||||
explicitRaceColumnSelectionRadioBtn.setValue(activeRaceColumnSelectionStrategy == RaceColumnSelectionStrategies.EXPLICIT);
|
||||
explicitRaceColumnSelectionRadioBtn.addClickHandler(new ClickHandler() {
|
||||
@@ -246,8 +251,8 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
}
|
||||
Grid grid = new Grid(rowCount, maxRacesPerRow);
|
||||
for (RaceColumnDTO expandableSortableColumn : raceAllRaceColumns) {
|
||||
CheckBox checkbox = dialog.createCheckbox(expandableSortableColumn.getRaceColumnName());
|
||||
checkbox.setValue(Util.contains(raceColumnSelection, expandableSortableColumn));
|
||||
CheckBox checkbox = createCheckbox(dialog, expandableSortableColumn.getRaceColumnName(),
|
||||
Util.contains(raceColumnSelection, expandableSortableColumn), null);
|
||||
raceColumnCheckboxes.put(expandableSortableColumn, checkbox);
|
||||
grid.setWidget(rowIndex, columnIndex++, checkbox);
|
||||
if(columnIndex == maxRacesPerRow) {
|
||||
@@ -260,6 +265,7 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
selectedRacesContent.add(explicitRaceSelectionContent);
|
||||
|
||||
lastNRacesColumnSelectionRadioBtn = dialog.createRadioButton(radioButtonGroupName, stringMessages.selectANumberOfRaces());
|
||||
lastNRacesColumnSelectionRadioBtn.ensureDebugId("MostCurrentRacesSelectionRadioButton");
|
||||
lastNRacesColumnSelectionRadioBtn.setValue(activeRaceColumnSelectionStrategy == RaceColumnSelectionStrategies.LAST_N);
|
||||
lastNRacesColumnSelectionRadioBtn.addClickHandler(new ClickHandler() {
|
||||
@Override
|
||||
@@ -279,6 +285,7 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
numberOfLastRacesLabel.getElement().getStyle().setPaddingRight(10, Unit.PX);
|
||||
hPanel.add(numberOfLastRacesLabel);
|
||||
numberOfLastRacesToShowBox = dialog.createIntegerBox(numberOfLastRacesToShow != null ? numberOfLastRacesToShow : racesCount, 3);
|
||||
numberOfLastRacesToShowBox.ensureDebugId("NumberOfMostCurrentRacesIntegerBox");
|
||||
hPanel.add(numberOfLastRacesToShowBox);
|
||||
dialog.alignAllPanelWidgetsVertically(hPanel, HasVerticalAlignment.ALIGN_MIDDLE);
|
||||
lastNRacesSelectionContent.setVisible(activeRaceColumnSelectionStrategy == RaceColumnSelectionStrategies.LAST_N);
|
||||
@@ -288,6 +295,28 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
}
|
||||
return selectedRacesPanel;
|
||||
}
|
||||
|
||||
private CheckBox createAndRegisterCheckbox(DataEntryDialog<?> dialog, DetailType detailType, boolean selected,
|
||||
Map<DetailType, CheckBox> registry) {
|
||||
CheckBox checkbox = createCheckbox(dialog, detailType, selected);
|
||||
registry.put(detailType, checkbox);
|
||||
return checkbox;
|
||||
}
|
||||
|
||||
private CheckBox createCheckbox(DataEntryDialog<?> dialog, DetailType detailType, boolean selected) {
|
||||
CheckBox checkbox = createCheckbox(dialog, DetailTypeFormatter.format(detailType), selected,
|
||||
DetailTypeFormatter.getTooltip(detailType));
|
||||
checkbox.ensureDebugId(DebugIdHelper.createDebugId(detailType) + "CheckBox");
|
||||
return checkbox;
|
||||
}
|
||||
|
||||
private CheckBox createCheckbox(DataEntryDialog<?> dialog, String label, boolean selected, String tooltip) {
|
||||
CheckBox checkbox = dialog.createCheckbox(label);
|
||||
checkbox.ensureDebugId(DebugIdHelper.createDebugId(label) + "CheckBox");
|
||||
checkbox.setValue(selected);
|
||||
dialog.addTooltip(checkbox, tooltip);
|
||||
return checkbox;
|
||||
}
|
||||
|
||||
@Override
|
||||
public LeaderboardSettings getResult() {
|
||||
@@ -341,16 +370,18 @@ public class LeaderboardSettingsDialogComponent implements SettingsDialogCompone
|
||||
return new Validator<LeaderboardSettings>() {
|
||||
@Override
|
||||
public String getErrorMessage(LeaderboardSettings valueToValidate) {
|
||||
final String result;
|
||||
if (valueToValidate.getLegDetailsToShow().isEmpty()) {
|
||||
return stringMessages.selectAtLeastOneLegDetail();
|
||||
result = stringMessages.selectAtLeastOneLegDetail();
|
||||
} else if (valueToValidate.getDelayBetweenAutoAdvancesInMilliseconds() < 1000) {
|
||||
return stringMessages.chooseUpdateIntervalOfAtLeastOneSecond();
|
||||
result = stringMessages.chooseUpdateIntervalOfAtLeastOneSecond();
|
||||
} else if (valueToValidate.getActiveRaceColumnSelectionStrategy() == RaceColumnSelectionStrategies.LAST_N
|
||||
&& (numberOfLastRacesToShowBox.getValue() == null || numberOfLastRacesToShowBox.getValue() < 0)) {
|
||||
return stringMessages.numberOfRacesMustBeNonNegativeNumber();
|
||||
result = stringMessages.numberOfRacesMustBeNonNegativeNumber();
|
||||
} else {
|
||||
return null;
|
||||
result = null;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
Regular → Executable
+22
-20
@@ -13,6 +13,7 @@ import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.shared.charts.MultiCompetitorLeaderboardChart;
|
||||
import com.sap.sse.gwt.client.async.AsyncActionsExecutor;
|
||||
import com.sap.sse.gwt.client.async.MarkedAsyncCallback;
|
||||
import com.sap.sse.gwt.client.player.Timer;
|
||||
import com.sap.sse.gwt.client.player.Timer.PlayModes;
|
||||
import com.sap.sse.gwt.client.useragent.UserAgentDetails;
|
||||
@@ -63,26 +64,27 @@ public class LeaderboardViewer extends AbstractLeaderboardViewer {
|
||||
|
||||
overallLeaderboardPanel = null;
|
||||
if(showOverallLeaderboard) {
|
||||
sailingService.getOverallLeaderboardNamesContaining(leaderboardName, new AsyncCallback<List<String>>() {
|
||||
@Override
|
||||
public void onSuccess(List<String> result) {
|
||||
if(result.size() == 1) {
|
||||
String overallLeaderboardName = result.get(0);
|
||||
overallLeaderboardPanel = new LeaderboardPanel(sailingService, asyncActionsExecutor,
|
||||
leaderboardSettings, preselectedRace, competitorSelectionProvider, timer,
|
||||
leaderboardGroupName, overallLeaderboardName, errorReporter, stringMessages, userAgent,
|
||||
false, /* raceTimesInfoProvider */null, false, /* adjustTimerDelay */ true);
|
||||
mainPanel.add(overallLeaderboardPanel);
|
||||
addComponentToNavigationMenu(overallLeaderboardPanel, true, stringMessages.seriesLeaderboard(),
|
||||
/* hasSettingsWhenComponentIsInvisible*/ true);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
// DO NOTHING
|
||||
}
|
||||
});
|
||||
sailingService.getOverallLeaderboardNamesContaining(leaderboardName, new MarkedAsyncCallback<List<String>>(
|
||||
new AsyncCallback<List<String>>() {
|
||||
@Override
|
||||
public void onSuccess(List<String> result) {
|
||||
if(result.size() == 1) {
|
||||
String overallLeaderboardName = result.get(0);
|
||||
overallLeaderboardPanel = new LeaderboardPanel(sailingService, asyncActionsExecutor,
|
||||
leaderboardSettings, preselectedRace, competitorSelectionProvider, timer,
|
||||
leaderboardGroupName, overallLeaderboardName, errorReporter, stringMessages, userAgent,
|
||||
false, /* raceTimesInfoProvider */null, false, /* adjustTimerDelay */ true);
|
||||
mainPanel.add(overallLeaderboardPanel);
|
||||
addComponentToNavigationMenu(overallLeaderboardPanel, true, stringMessages.seriesLeaderboard(),
|
||||
/* hasSettingsWhenComponentIsInvisible*/ true);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
// DO NOTHING
|
||||
}
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
-1
@@ -6,7 +6,9 @@
|
||||
<stylesheet src="../reset.css" />
|
||||
<!-- Inherit the core Web Toolkit stuff. -->
|
||||
<inherits name='com.google.gwt.user.User'/>
|
||||
|
||||
|
||||
<inherits name='com.google.gwt.debug.Debug'/>
|
||||
|
||||
<!-- Inherit the default GWT style sheet. You can change -->
|
||||
<!-- the theme of your GWT application by uncommenting -->
|
||||
<!-- any one of the following lines. -->
|
||||
|
||||
Reference in new issue
Block a user