001: /*
002: * ============================================================================
003: * GNU Lesser General Public License
004: * ============================================================================
005: *
006: * JasperReports - Free Java report-generating library.
007: * Copyright (C) 2001-2006 JasperSoft Corporation http://www.jaspersoft.com
008: *
009: * This library is free software; you can redistribute it and/or
010: * modify it under the terms of the GNU Lesser General Public
011: * License as published by the Free Software Foundation; either
012: * version 2.1 of the License, or (at your option) any later version.
013: *
014: * This library is distributed in the hope that it will be useful,
015: * but WITHOUT ANY WARRANTY; without even the implied warranty of
016: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
017: * Lesser General Public 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
022: *
023: * JasperSoft Corporation
024: * 303 Second Street, Suite 450 North
025: * San Francisco, CA 94107
026: * http://www.jaspersoft.com
027: */
028: package net.sf.jasperreports.engine;
029:
030: /**
031: * An abstract representation of a report graphic element. It provides basic functionality for images, lines, rectangles
032: * and ellipses.
033: * @author Teodor Danciu (teodord@users.sourceforge.net)
034: * @version $Id: JRGraphicElement.java 1229 2006-04-19 10:27:35Z teodord $
035: */
036: public interface JRGraphicElement extends JRElement {
037:
038: /**
039: * Contant useful for specifying that the element border will not be drawn.
040: */
041: public static final byte PEN_NONE = 0;
042:
043: /**
044: * Contant useful for specifying that an element border of 1 pixel.
045: */
046: public static final byte PEN_1_POINT = 1;
047:
048: /**
049: * Contant useful for specifying that an element border of 2 pixels.
050: */
051: public static final byte PEN_2_POINT = 2;
052:
053: /**
054: * Contant useful for specifying that an element border of 4 pixels.
055: */
056: public static final byte PEN_4_POINT = 3;
057:
058: /**
059: * Contant useful for specifying that an element has a dashed border.
060: */
061: public static final byte PEN_DOTTED = 4;
062:
063: /**
064: * Contant useful for specifying that an element has a thin border (0.5 pixels)
065: */
066: public static final byte PEN_THIN = 5;
067:
068: /**
069: * Constant useful for specifying that the inside of an element should be drawn using the background color. It
070: * is ignored if the element draw mode is transparent.
071: */
072: public static final byte FILL_SOLID = 1;
073:
074: /**
075: * Indicates the pen type used for this element.
076: * @return one of the pen constants in this class
077: */
078: public byte getPen();
079:
080: public Byte getOwnPen();
081:
082: /**
083: * Sets the pen type that will used for this element.
084: * @param pen one of the pen constants in this class
085: */
086: public void setPen(byte pen);
087:
088: public void setPen(Byte pen);
089:
090: /**
091: * Indicates the fill type used for this element.
092: * @return one of the pen constants in this class
093: */
094: public byte getFill();
095:
096: public Byte getOwnFill();
097:
098: /**
099: * Sets the fill type used for this element.
100: * @param fill one of the pen constants in this class
101: */
102: public void setFill(byte fill);
103:
104: public void setFill(Byte fill);
105:
106: }
|