KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > it > businesslogic > ireport > gui > JSQLTablesPane


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  * JSQLTablesPane.java
28  *
29  * Created on 21 maggio 2003, 19.03
30  *
31  */

32
33 package it.businesslogic.ireport.gui;
34 import java.awt.*;
35 import java.awt.image.*;
36 import javax.swing.*;
37 /**
38  *
39  * @author Administrator
40  */

41 public class JSQLTablesPane extends javax.swing.JDesktopPane JavaDoc {
42     
43     boolean repainting = false;
44     private Graphics2D offscreen = null;
45     private BufferedImage offscreenImage = null;
46     /** Creates a new instance of JSQLTablesPane */
47     public JSQLTablesPane() {
48         
49         Dimension offscreenDimension = Toolkit.getDefaultToolkit().getScreenSize();
50         offscreenImage = new java.awt.image.BufferedImage JavaDoc(offscreenDimension.width, offscreenDimension.height, java.awt.image.BufferedImage.TYPE_4BYTE_ABGR_PRE);
51         
52         offscreen = GraphicsEnvironment.getLocalGraphicsEnvironment().createGraphics(offscreenImage);
53         offscreen.setBackground(this.getBackground());
54         offscreen.setColor(Color.BLACK);
55         this.setDoubleBuffered(false);
56         
57     }
58     
59     public void paint(Graphics g)
60     {
61         if (repainting) return;
62         repainting = true;
63         //this.repaint();
64
//super.paint(g);
65
if (offscreen == null) return;
66         offscreen.clearRect(0,0, this.getWidth(), this.getHeight());
67         JInternalFrame[] frames = this.getAllFrames();
68         // Draw a line between two fields...
69
offscreen.drawLine( frames[0].getLocation().x+frames[0].getWidth()/2,
70                     frames[0].getLocation().y+frames[0].getHeight()/2,
71                     frames[1].getLocation().x+frames[1].getWidth()/2,
72                     frames[1].getLocation().y+frames[1].getHeight()/2);
73         
74         super.paintChildren(offscreen);
75         g.drawImage( offscreenImage,0,0,(ImageObserver)this);
76         repainting = false;
77     }
78     
79      public void repaint()
80     {
81         paint( this.getGraphics() );
82     }
83      /*
84     public void repaint(int x,int y, int width, int height)
85     {
86         super.repain
87         //paint(this.getGraphics() );
88     }
89       **/

90 }
91
Popular Tags