gernotbelger@8892: /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde gernotbelger@8892: * Software engineering by gernotbelger@8892: * Björnsen Beratende Ingenieure GmbH gernotbelger@8892: * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt gernotbelger@8892: * gernotbelger@8892: * This file is Free Software under the GNU AGPL (>=v3) gernotbelger@8892: * and comes with ABSOLUTELY NO WARRANTY! Check out the gernotbelger@8892: * documentation coming with Dive4Elements River for details. gernotbelger@8892: */ gernotbelger@8892: package org.dive4elements.river.exports; gernotbelger@8892: gernotbelger@8892: import org.jfree.chart.plot.XYPlot; gernotbelger@8892: gernotbelger@8892: /** gernotbelger@8892: * Implementors of this class can be used to tweak some very application specific behaviour within the charts.
gernotbelger@8892: * Implementations should not have a state, because they are instantiated only once. gernotbelger@8892: * gernotbelger@8892: * @author Gernot Belger gernotbelger@8892: */ gernotbelger@8892: public interface ChartExtender { gernotbelger@8892: gernotbelger@8892: /** gernotbelger@8935: * Called before {@link DiagramGenerator#autoZoom(org.jfree.chart.plot.XYPlot)} is called, allows to tweak auto zoom gernotbelger@8935: * behavior. gernotbelger@8935: */ gernotbelger@8935: void beforeAutoZoom(DiagramGenerator generator); gernotbelger@8935: gernotbelger@8935: /** gernotbelger@8892: * Called after {@link DiagramGenerator#autoZoom(org.jfree.chart.plot.XYPlot)} was called, allows to tweak auto zoom gernotbelger@8892: * behavior. gernotbelger@8892: */ gernotbelger@8892: void afterAutoZoom(DiagramGenerator generator); gernotbelger@8892: gernotbelger@8892: /** gernotbelger@8892: * Called after the complete chart is generated. gernotbelger@8935: * gernotbelger@8892: * @param plot gernotbelger@8892: */ gernotbelger@8892: void afterGenerateChart(DiagramGenerator generator, XYPlot plot); gernotbelger@8892: }