/* * JasperReports - Free Java Reporting Library. * Copyright (C) 2001 - 2009 Jaspersoft Corporation. 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.engine.base; import net.sf.jasperreports.engine.JRAbstractObjectFactory; import net.sf.jasperreports.engine.JRConditionalStyle; import net.sf.jasperreports.engine.JRConstants; import net.sf.jasperreports.engine.JRExpression; import net.sf.jasperreports.engine.JRStyle; import net.sf.jasperreports.engine.util.JRCloneUtils; /** * @author Ionut Nedelcu (ionutned@users.sourceforge.net) * @version $Id: JRBaseConditionalStyle.java 3504 2010-03-04 12:41:19Z shertage $ */ public class JRBaseConditionalStyle extends JRBaseStyle implements JRConditionalStyle { /** * */ private static final long serialVersionUID = JRConstants.SERIAL_VERSION_UID; protected JRExpression conditionExpression = null; public JRBaseConditionalStyle() { super(); } public JRBaseConditionalStyle(JRConditionalStyle style, JRStyle parentStyle, JRAbstractObjectFactory factory) { this.parentStyle = parentStyle; modeValue = style.getOwnModeValue(); forecolor = style.getOwnForecolor(); backcolor = style.getOwnBackcolor(); linePen = style.getLinePen().clone(this); fillValue = style.getOwnFillValue(); radius = style.getOwnRadius(); scaleImageValue = style.getOwnScaleImageValue(); horizontalAlignmentValue = style.getOwnHorizontalAlignmentValue(); verticalAlignmentValue = style.getOwnVerticalAlignmentValue(); lineBox = style.getLineBox().clone(this); rotationValue = style.getOwnRotationValue(); lineSpacingValue = style.getOwnLineSpacingValue(); markup = style.getOwnMarkup(); pattern = style.getOwnPattern(); fontName = style.getOwnFontName(); isBold = style.isOwnBold(); isItalic = style.isOwnItalic(); isUnderline = style.isOwnUnderline(); isStrikeThrough = style.isOwnStrikeThrough(); fontSize = style.getOwnFontSize(); pdfFontName = style.getOwnPdfFontName(); pdfEncoding = style.getOwnPdfEncoding(); isPdfEmbedded = style.isOwnPdfEmbedded(); conditionExpression = factory.getExpression(style.getConditionExpression(), true); } public JRExpression getConditionExpression() { return conditionExpression; } public Object clone() { JRBaseConditionalStyle clone = (JRBaseConditionalStyle) super.clone(); clone.conditionExpression = (JRExpression) JRCloneUtils.nullSafeClone(conditionExpression); return clone; } }