comparison flys-artifacts/src/main/java/de/intevation/flys/exports/XYChartGenerator.java @ 2034:7bc9293de4e6

Fix malcondition where first renderer is StableXYDifferenceRenderer. flys-artifacts/trunk@3499 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Tue, 20 Dec 2011 15:14:54 +0000
parents 4f7f781e4481
children 0318fa6f0844
comparison
equal deleted inserted replaced
2033:76cedac30d35 2034:7bc9293de4e6
948 948
949 /** 949 /**
950 * Get renderer, from plot or cloned default renderer otherwise. 950 * Get renderer, from plot or cloned default renderer otherwise.
951 */ 951 */
952 protected XYLineAndShapeRenderer getRenderer(XYPlot plot, int idx) { 952 protected XYLineAndShapeRenderer getRenderer(XYPlot plot, int idx) {
953 // !TODO what if its a differencerenderer?!
954 logger.debug("getRenderer: " + idx); 953 logger.debug("getRenderer: " + idx);
954
955 XYLineAndShapeRenderer r = 955 XYLineAndShapeRenderer r =
956 (XYLineAndShapeRenderer) plot.getRenderer(idx); 956 (XYLineAndShapeRenderer) plot.getRenderer(idx);
957 957
958 if (r != null) { 958 if (r != null) {
959 return r; 959 return r;
960 } 960 }
961 961
962 // Need a new renderer.
962 if (idx == 0) { 963 if (idx == 0) {
963 logger.warn("No default renderer set!"); 964 logger.warn("No default renderer set!");
964 return new XYLineAndShapeRenderer(); 965 return new XYLineAndShapeRenderer();
965 } 966 }
966 967
967 r = (XYLineAndShapeRenderer) plot.getRenderer(0); 968 // 'Default' (first) renderer is an area-renderer.
969 XYItemRenderer renderer = (XYItemRenderer) plot.getRenderer(0);
970 if (renderer instanceof StableXYDifferenceRenderer) {
971 return new XYLineAndShapeRenderer();
972 }
973
974 r = (XYLineAndShapeRenderer) renderer;
968 975
969 try { 976 try {
970 return (XYLineAndShapeRenderer) r.clone(); 977 return (XYLineAndShapeRenderer) r.clone();
971 } 978 }
972 catch (CloneNotSupportedException cnse) { 979 catch (CloneNotSupportedException cnse) {

http://dive4elements.wald.intevation.org