gt: 		return JRStyleResolver.getValueAxisLabelColor(this, this);
context: /*
   * JasperReports - Free Java Reporting Library.
   * Copyright (C) 2001 - 2014 TIBCO Software Inc. All rights reserved.
   * http://www.jaspersoft.com
   *
   * Unless you have purchased a commercial license agreement from Jaspersoft,
   * the following license terms apply:
   *
   * This program is part of JasperReports.
   *
   * JasperReports is free software: you can redistribute it and/or modify
   * it under the terms of the GNU Lesser General Public License as published by
   * the Free Software Foundation, either version 3 of the License, or
   * (at your option) any later version.
   *
   * JasperReports is distributed in the hope that it will be useful,
   * but WITHOUT ANY WARRANTY; without even the implied warranty of
   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
   * GNU Lesser General Public License for more details.
   *
   * You should have received a copy of the GNU Lesser General Public License
   * along with JasperReports. If not, see <http://www.gnu.org/licenses/>.
   */
  package net.sf.jasperreports.charts.base;
  
  import java.awt.Color;
  
  import net.sf.jasperreports.charts.JRAreaPlot;
  import net.sf.jasperreports.engine.JRChart;
  import net.sf.jasperreports.engine.JRChartPlot;
  import net.sf.jasperreports.engine.JRConstants;
  import net.sf.jasperreports.engine.JRExpression;
  import net.sf.jasperreports.engine.JRExpressionCollector;
  import net.sf.jasperreports.engine.JRFont;
  import net.sf.jasperreports.engine.base.JRBaseChartPlot;
  import net.sf.jasperreports.engine.base.JRBaseObjectFactory;
  import net.sf.jasperreports.engine.util.JRCloneUtils;
  import net.sf.jasperreports.engine.util.JRStyleResolver;
  
  /**
   * @author Flavius Sana (flavius_sana@users.sourceforge.net)
   */
  public class JRBaseAreaPlot extends JRBaseChartPlot implements JRAreaPlot 
  {
  	private static final long serialVersionUID = JRConstants.SERIAL_VERSION_UID;
  	
  	protected JRExpression categoryAxisLabelExpression;
  	protected JRFont categoryAxisLabelFont;
  	protected Color categoryAxisLabelColor;
  	protected JRFont categoryAxisTickLabelFont;
  	protected Color categoryAxisTickLabelColor;
  	protected String categoryAxisTickLabelMask;
  	protected Boolean categoryAxisVerticalTickLabels;
  	protected Color categoryAxisLineColor;
  
  	protected JRExpression valueAxisLabelExpression;
  	protected JRExpression rangeAxisMinValueExpression;
  	protected JRExpression rangeAxisMaxValueExpression;
  	protected JRExpression domainAxisMinValueExpression;
  	protected JRExpression domainAxisMaxValueExpression;
  	protected JRFont valueAxisLabelFont;
  	protected Color valueAxisLabelColor;
  	protected JRFont valueAxisTickLabelFont;
  	protected Color valueAxisTickLabelColor;
  	protected String valueAxisTickLabelMask;
  	protected Boolean valueAxisVerticalTickLabels;
  	protected Color valueAxisLineColor;
  	
  
  	/**
  	 * 
  	 */
  	public JRBaseAreaPlot(JRChartPlot plot, JRChart chart)
  	{
  		super(plot, chart);
  		
  		JRAreaPlot areaPlot = plot instanceof JRAreaPlot ? (JRAreaPlot)plot : null;
  		if (areaPlot != null)//FIXMECHART make a common interface and try copy props that are common to different plots
  		{
  			categoryAxisLabelFont = areaPlot.getCategoryAxisLabelFont(); 
  			categoryAxisTickLabelFont = areaPlot.getCategoryAxisTickLabelFont();
  			valueAxisLabelFont = areaPlot.getValueAxisLabelFont();
  			valueAxisTickLabelFont = areaPlot.getValueAxisTickLabelFont();
  		}
  	}
  
  
  	/**
  	 * 
  	 */
  	public JRBaseAreaPlot( JRAreaPlot areaPlot, JRBaseObjectFactory factory )
  	{
  		super( areaPlot, factory );
  		
  		categoryAxisLabelExpression = factory.getExpression( areaPlot.getCategoryAxisLabelExpression() );
  		categoryAxisLabelFont = factory.getFont(chart, areaPlot.getCategoryAxisLabelFont()); 
  		categoryAxisLabelColor = areaPlot.getOwnCategoryAxisLabelColor();
  		categoryAxisTickLabelFont = factory.getFont(chart, areaPlot.getCategoryAxisTickLabelFont());
  		categoryAxisTickLabelColor = areaPlot.getOwnCategoryAxisTickLabelColor();
  		categoryAxisTickLabelMask = areaPlot.getCategoryAxisTickLabelMask();
  		categoryAxisVerticalTickLabels = areaPlot.getCategoryAxisVerticalTickLabels();
  		categoryAxisLineColor = areaPlot.getOwnCategoryAxisLineColor();
  		labelRotationDouble = areaPlot.getCategoryAxisTickLabelRotation();
  		
  		valueAxisLabelExpression = factory.getExpression( areaPlot.getValueAxisLabelExpression() );
  		domainAxisMinValueExpression = factory.getExpression( areaPlot.getDomainAxisMinValueExpression() );
  		domainAxisMaxValueExpression = factory.getExpression( areaPlot.getDomainAxisMaxValueExpression() );
  		rangeAxisMinValueExpression = factory.getExpression( areaPlot.getRangeAxisMinValueExpression() );
  		rangeAxisMaxValueExpression = factory.getExpression( areaPlot.getRangeAxisMaxValueExpression() );
  		valueAxisLabelFont = factory.getFont(chart, areaPlot.getValueAxisLabelFont());
  		valueAxisLabelColor = areaPlot.getOwnValueAxisLabelColor();
  		valueAxisTickLabelFont = factory.getFont(chart, areaPlot.getValueAxisTickLabelFont());
  		valueAxisTickLabelColor = areaPlot.getOwnValueAxisTickLabelColor();
  		valueAxisTickLabelMask = areaPlot.getValueAxisTickLabelMask();
  		valueAxisVerticalTickLabels = areaPlot.getValueAxisVerticalTickLabels();
  		valueAxisLineColor = areaPlot.getOwnValueAxisLineColor();
  	}
  	
  	/**
  	 * 
  	 */
  	public JRExpression getCategoryAxisLabelExpression(){
  		return categoryAxisLabelExpression;
  	}
  	
  	/**
  	 * 
  	 */
  	public JRFont getCategoryAxisLabelFont()
  	{
  		return categoryAxisLabelFont;
  	}
  	
  	/**
  	 * 
  	 */
  	public Color getCategoryAxisLabelColor()
  	{
  		return JRStyleResolver.getCategoryAxisLabelColor(this, this);
  	}
  	
  	/**
  	 * 
  	 */
  	public Color getOwnCategoryAxisLabelColor()
  	{
  		return categoryAxisLabelColor;
  	}
  	
  	/**
  	 * 
  	 */
  	public JRFont getCategoryAxisTickLabelFont()
  	{
  		return categoryAxisTickLabelFont;
  	}
  	
  	/**
  	 * 
  	 */
  	public Color getCategoryAxisTickLabelColor()
  	{
  		return JRStyleResolver.getCategoryAxisTickLabelColor(this, this);
  	}
  
  	/**
  	 * 
  	 */
  	public Color getOwnCategoryAxisTickLabelColor()
  	{
  		return categoryAxisTickLabelColor;
  	}
  
  	/**
  	 * 
  	 */
  	public String getCategoryAxisTickLabelMask()
  	{
  		return categoryAxisTickLabelMask;
  	}
  
  	/**
  	 * 
  	 */
  	public Boolean getCategoryAxisVerticalTickLabels()
  	{
  		return categoryAxisVerticalTickLabels;
  	}
  
  	/**
  	 * 
  	 */
  	public Double getCategoryAxisTickLabelRotation()
  	{
  		return labelRotationDouble;
  	}
  
  	/**
  	 * 
  	 */
  	public void setCategoryAxisTickLabelRotation(Double labelRotationDouble)
  	{
  		Object old = this.labelRotationDouble;
  		this.labelRotationDouble = labelRotationDouble;
  		getEventSupport().firePropertyChange(PROPERTY_CATEGORY_AXIS_TICK_LABEL_ROTATION, old, this.labelRotationDouble);
  	}
  
  	/**
  	 * 
  	 */
  	public Color getCategoryAxisLineColor()
  	{
  		return JRStyleResolver.getCategoryAxisLineColor(this, this);
  	}
  		
  	/**
  	 * 
  	 */
  	public Color getOwnCategoryAxisLineColor()
  	{
  		return categoryAxisLineColor;
  	}
  		
  	/**
  	 * 
  	 */
  	public JRExpression getValueAxisLabelExpression(){
  		return valueAxisLabelExpression;
  	}
  
  	/**
  	 * 
  	 */
  	public JRExpression getDomainAxisMinValueExpression(){
  		return domainAxisMinValueExpression;
  	}
  
  	/**
  	 * 
  	 */
  	public JRExpression getDomainAxisMaxValueExpression(){
  		return domainAxisMaxValueExpression;
  	}
  
  	/**
  	 * 
  	 */
  	public JRExpression getRangeAxisMinValueExpression(){
  		return rangeAxisMinValueExpression;
  	}
  
  	/**
  	 * 
  	 */
  	public JRExpression getRangeAxisMaxValueExpression(){
  		return rangeAxisMaxValueExpression;
  	}
  
  	/**
  	 * 
  	 */
  	public JRFont getValueAxisLabelFont()
  	{
  		return valueAxisLabelFont;
  	}
  	
  	/**
  	 * 
  	 */
  	public Color getValueAxisLabelColor()
  	{
  