# HG changeset patch # User Felix Wolfsteller # Date 1351590294 -3600 # Node ID c3ac330d9be4891484a566f78128440479664665 # Parent 8d3523bbb088f13e1100f395fa855b52623b8c12 NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts. diff -r 8d3523bbb088 -r c3ac330d9be4 flys-client/src/main/java/de/intevation/flys/client/client/ui/chart/NaviChartOutputTab.java --- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/chart/NaviChartOutputTab.java Tue Oct 30 10:35:37 2012 +0100 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/chart/NaviChartOutputTab.java Tue Oct 30 10:44:54 2012 +0100 @@ -34,13 +34,14 @@ import de.intevation.flys.client.shared.model.Artifact; import de.intevation.flys.client.shared.model.Collection; import de.intevation.flys.client.shared.model.FixAnalysisArtifact; +import de.intevation.flys.client.shared.model.FixFilter; import de.intevation.flys.client.shared.model.OutputMode; import java.util.Date; /** - * Tab representing and showing one Chart-output. + * Tab representing and showing one Chart-output with a "navi" thing. * * @author Ingo Weinzierl */ @@ -83,35 +84,52 @@ form.setFields(currentkm); form.setWidth(60); - FixAnalysisArtifact fix = (FixAnalysisArtifact) art; - String s = fix.getArtifactDescription().getDataValueAsString("step"); - try { - double ds = Double.parseDouble(s); - collectionView.setSteps(ds); + double fromKm; + double toKm; + + if (art instanceof FixAnalysisArtifact) { + FixAnalysisArtifact fix = (FixAnalysisArtifact) art; + FixFilter fixFilter = fix.getFilter(); + String s = fix.getArtifactDescription().getDataValueAsString("step"); + try { + double ds = Double.parseDouble(s); + collectionView.setSteps(ds); + } + catch(NumberFormatException nfe) { + collectionView.setSteps(100d); + } + fromKm = fixFilter.getFromKm(); + toKm = fixFilter.getToKm(); } - catch(NumberFormatException nfe) { + else { + // Probably WINFOArtifact kind of artifact. + // TODO Proper implementation + // collectionView set real steps. collectionView.setSteps(100d); + fromKm = 0d; + toKm = 93d; } - collectionView.setMinKm(fix.getFilter().getFromKm()); - collectionView.setMaxKm(fix.getFilter().getToKm()); + + collectionView.setMinKm(fromKm); + collectionView.setMaxKm(toKm); final NumberFormat nf = NumberFormat.getDecimalFormat(); if (collectionView.getCurrentKm() == -1d) { try { - double d = Double.valueOf(fix.getFilter().getFromKm()); + double d = Double.valueOf(fromKm); currentkm.setValue(nf.format(d)); } catch (NumberFormatException e) { - currentkm.setValue(fix.getFilter().getFromKm()); + currentkm.setValue(fromKm); } - collectionView.setCurrentKm(fix.getFilter().getFromKm()); + collectionView.setCurrentKm(fromKm); } else { try { - double d = Double.valueOf(fix.getFilter().getFromKm()); + double d = Double.valueOf(fromKm); currentkm.setValue(nf.format(d)); } catch (NumberFormatException e) { - currentkm.setValue(fix.getFilter().getFromKm()); + currentkm.setValue(fromKm); } currentkm.setValue(collectionView.getCurrentKm()); }