Source for org.jfree.chart.renderer.RendererState

   1: /* ===========================================================
   2:  * JFreeChart : a free chart library for the Java(tm) platform
   3:  * ===========================================================
   4:  *
   5:  * (C) Copyright 2000-2005, by Object Refinery Limited and Contributors.
   6:  *
   7:  * Project Info:  http://www.jfree.org/jfreechart/index.html
   8:  *
   9:  * This library is free software; you can redistribute it and/or modify it 
  10:  * under the terms of the GNU Lesser General Public License as published by 
  11:  * the Free Software Foundation; either version 2.1 of the License, or 
  12:  * (at your option) any later version.
  13:  *
  14:  * This library is distributed in the hope that it will be useful, but 
  15:  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
  16:  * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 
  17:  * License for more details.
  18:  *
  19:  * You should have received a copy of the GNU Lesser General Public
  20:  * License along with this library; if not, write to the Free Software
  21:  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, 
  22:  * USA.  
  23:  *
  24:  * [Java is a trademark or registered trademark of Sun Microsystems, Inc. 
  25:  * in the United States and other countries.]
  26:  *
  27:  * ------------------
  28:  * RendererState.java
  29:  * ------------------
  30:  * (C) Copyright 2003-2005, by Object Refinery Limited.
  31:  *
  32:  * Original Author:  David Gilbert (for Object Refinery Limited);
  33:  * Contributor(s):   -;
  34:  *
  35:  * $Id: RendererState.java,v 1.2.2.2 2005/10/25 20:53:40 mungady Exp $
  36:  *
  37:  * Changes:
  38:  * --------
  39:  * 07-Oct-2003 : Version 1 (DG);
  40:  * 09-Jun-2005 : Added a convenience method to access the entity 
  41:  *               collection (DG);
  42:  *
  43:  */
  44: 
  45: package org.jfree.chart.renderer;
  46: 
  47: import org.jfree.chart.ChartRenderingInfo;
  48: import org.jfree.chart.entity.EntityCollection;
  49: import org.jfree.chart.plot.PlotRenderingInfo;
  50: 
  51: /**
  52:  * Represents the current state of a renderer.
  53:  */
  54: public class RendererState {
  55:     
  56:     /** The plot rendering info. */
  57:     private PlotRenderingInfo info;
  58:     
  59:     /**
  60:      * Creates a new state object.
  61:      * 
  62:      * @param info  the plot rendering info.
  63:      */
  64:     public RendererState(PlotRenderingInfo info) {
  65:         this.info = info;
  66:     }
  67:     
  68:     /**
  69:      * Returns the plot rendering info.
  70:      * 
  71:      * @return The info.
  72:      */
  73:     public PlotRenderingInfo getInfo() {
  74:         return this.info;
  75:     }
  76:     
  77:     /**
  78:      * A convenience method that returns a reference to the entity
  79:      * collection (may be <code>null</code>) being used to record
  80:      * chart entities.
  81:      * 
  82:      * @return The entity collection (possibly <code>null</code>).
  83:      */
  84:     public EntityCollection getEntityCollection() {
  85:         EntityCollection result = null;
  86:         if (this.info != null) {
  87:             ChartRenderingInfo owner = this.info.getOwner();
  88:             if (owner != null) {
  89:                 result = owner.getEntityCollection(); 
  90:             }
  91:         }
  92:         return result;
  93:     }
  94:     
  95: }