KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > it > businesslogic > ireport > EllipseReportElement


1 /*
2  * Copyright (C) 2005 - 2006 JasperSoft Corporation. All rights reserved.
3  * http://www.jaspersoft.com.
4  *
5  * Unless you have purchased a commercial license agreement from JasperSoft,
6  * the following license terms apply:
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as published by
10  * the Free Software Foundation.
11  *
12  * This program is distributed WITHOUT ANY WARRANTY; and without the
13  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14  * See the GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
18  * or write to:
19  *
20  * Free Software Foundation, Inc.,
21  * 59 Temple Place - Suite 330,
22  * Boston, MA USA 02111-1307
23  *
24  *
25  *
26  *
27  * EllipseReportElement.java
28  *
29  * Created on 28 febbraio 2003, 22.42
30  *
31  */

32
33 package it.businesslogic.ireport;
34
35 import it.businesslogic.ireport.gui.*;
36 import it.businesslogic.ireport.util.*;
37 import java.awt.*;
38 import java.awt.image.*;
39 import java.awt.geom.*;
40
41
42 public class EllipseReportElement extends GraphicReportElement
43 {
44     public EllipseReportElement(int x, int y, int width, int height)
45     {
46         super(x,y,width,height);
47         //graphicElementPen = "Thin";
48
//this.bgcolor = Color.WHITE;
49
//this.fgcolor = Color.BLACK;
50
setKey("ellipse");
51     }
52     
53     public void drawObject(Graphics2D g,double zoom_factor, int x_shift_origin, int y_shift_origin)
54     {
55            
56                 position.x -= 10;
57         position.y -= 10;
58         x_shift_origin -= 10;
59         y_shift_origin -= 10;
60         
61         this.zoom_factor = zoom_factor;
62                 
63                 g.setColor( getBgcolor() );
64                 if (!getTransparent().equalsIgnoreCase("Transparent"))
65                     g.fillOval( getZoomedDim(position.x)-x_shift_origin,
66                 getZoomedDim(position.y)-y_shift_origin,
67                 getZoomedDim(width),
68                 getZoomedDim(height));
69                 
70         position.x += 10;
71         position.y += 10;
72         x_shift_origin += 10;
73         y_shift_origin += 10;
74                 
75                 drawGraphicsElement(g,this.getGraphicElementPen(), zoom_factor, x_shift_origin,y_shift_origin);
76     }
77     
78     public ReportElement cloneMe()
79     {
80         EllipseReportElement newReportElement = new EllipseReportElement(position.x, position.y, width, height);
81         copyBaseReportElement(newReportElement, this);
82         
83         return newReportElement;
84     }
85     
86     public void drawGraphicsElement(Graphics2D g, String JavaDoc pen, double zoom_factor, int x_shift_origin, int y_shift_origin)
87     {
88         
89         Stroke stroke = getPenStroke( pen,zoom_factor );
90         g.setColor( getFgcolor() );
91                 
92         this.zoom_factor = zoom_factor;
93         if (stroke==null || pen.equalsIgnoreCase("None")) return;
94         
95         position.x -= 10;
96         position.y -= 10;
97         x_shift_origin -= 10;
98         y_shift_origin -= 10;
99                 
100                 Stroke oldStroke = g.getStroke();
101                 g.setStroke(stroke);
102         g.drawOval(
103                     getZoomedDim(position.x)-x_shift_origin,
104             getZoomedDim(position.y)-y_shift_origin,
105                     getZoomedDim(width),getZoomedDim(height));
106
107         position.x += 10;
108         position.y += 10;
109                 
110                 g.setStroke(oldStroke);
111         }
112 }
113
Popular Tags