001/* =========================================================== 002 * JFreeChart : a free chart library for the Java(tm) platform 003 * =========================================================== 004 * 005 * (C) Copyright 2000-2013, by Object Refinery Limited and Contributors. 006 * 007 * Project Info: http://www.jfree.org/jfreechart/index.html 008 * 009 * This library is free software; you can redistribute it and/or modify it 010 * under the terms of the GNU Lesser General Public License as published by 011 * the Free Software Foundation; either version 2.1 of the License, or 012 * (at your option) any later version. 013 * 014 * This library is distributed in the hope that it will be useful, but 015 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 016 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 017 * License for more details. 018 * 019 * You should have received a copy of the GNU Lesser General Public 020 * License along with this library; if not, write to the Free Software 021 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, 022 * USA. 023 * 024 * [Oracle and Java are registered trademarks of Oracle and/or its affiliates. 025 * Other names may be trademarks of their respective owners.] 026 * 027 * ------------------------ 028 * RendererChangeEvent.java 029 * ------------------------ 030 * (C) Copyright 2003-2009, by Object Refinery Limited. 031 * 032 * Original Author: David Gilbert (for Object Refinery Limited); 033 * Contributor(s): -; 034 * 035 * Changes 036 * ------- 037 * 23-Oct-2003 : Version 1 (DG); 038 * ------------- JFREECHART 1.0.x --------------------------------------------- 039 * 04-Apr-2007 : Fixed typo in API docs (DG); 040 * 26-Mar-2009 : Added flag to signal visible series change (DG); 041 * 042 */ 043 044package org.jfree.chart.event; 045 046/** 047 * An event that can be forwarded to any {@link RendererChangeListener} to 048 * signal a change to a renderer. 049 */ 050public class RendererChangeEvent extends ChartChangeEvent { 051 052 /** The renderer that generated the event. */ 053 private Object renderer; 054 055 /** 056 * A flag that indicates whether this event relates to a change in the 057 * series visibility. If so, the receiver (if it is a plot) may want to 058 * update the axis bounds. 059 * 060 * @since 1.0.13 061 */ 062 private boolean seriesVisibilityChanged; 063 064 /** 065 * Creates a new event. 066 * 067 * @param renderer the renderer that generated the event. 068 */ 069 public RendererChangeEvent(Object renderer) { 070 this(renderer, false); 071 } 072 073 /** 074 * Creates a new event. 075 * 076 * @param renderer the renderer that generated the event. 077 * @param seriesVisibilityChanged a flag that indicates whether or not 078 * the event relates to a change in the series visibility flags. 079 */ 080 public RendererChangeEvent(Object renderer, 081 boolean seriesVisibilityChanged) { 082 super(renderer); 083 this.renderer = renderer; 084 this.seriesVisibilityChanged = seriesVisibilityChanged; 085 } 086 087 /** 088 * Returns the renderer that generated the event. 089 * 090 * @return The renderer that generated the event. 091 */ 092 public Object getRenderer() { 093 return this.renderer; 094 } 095 096 /** 097 * Returns the flag that indicates whether or not the event relates to 098 * a change in series visibility. 099 * 100 * @return A boolean. 101 * 102 * @since 1.0.13 103 */ 104 public boolean getSeriesVisibilityChanged() { 105 return this.seriesVisibilityChanged; 106 } 107 108}