KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > krysalis > jcharts > test > SwingTest


1 /***********************************************************************************************
2  * File Info: $Id: SwingTest.java,v 1.1 2003/05/17 17:01:14 nathaniel_auvil Exp $
3  * Copyright (C) 2002
4  * Author: Nathaniel G. Auvil
5  * Contributor(s):
6  *
7  * Copyright 2002 (C) Nathaniel G. Auvil. All Rights Reserved.
8  *
9  * Redistribution and use of this software and associated documentation ("Software"), with or
10  * without modification, are permitted provided that the following conditions are met:
11  *
12  * 1. Redistributions of source code must retain copyright statements and notices.
13  * Redistributions must also contain a copy of this document.
14  *
15  * 2. Redistributions in binary form must reproduce the above copyright notice, this list of
16  * conditions and the following disclaimer in the documentation and/or other materials
17  * provided with the distribution.
18  *
19  * 3. The name "jCharts" or "Nathaniel G. Auvil" must not be used to endorse or promote
20  * products derived from this Software without prior written permission of Nathaniel G.
21  * Auvil. For written permission, please contact nathaniel_auvil@users.sourceforge.net
22  *
23  * 4. Products derived from this Software may not be called "jCharts" nor may "jCharts" appear
24  * in their names without prior written permission of Nathaniel G. Auvil. jCharts is a
25  * registered trademark of Nathaniel G. Auvil.
26  *
27  * 5. Due credit should be given to the jCharts Project (http://jcharts.sourceforge.net/).
28  *
29  * THIS SOFTWARE IS PROVIDED BY Nathaniel G. Auvil AND CONTRIBUTORS ``AS IS'' AND ANY
30  * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
31  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
32  * jCharts OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
33  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
34  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
35  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,STRICT LIABILITY, OR TORT
36  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
37  * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
38  ************************************************************************************************/

39
40
41 package org.krysalis.jcharts.test;
42
43
44 import org.krysalis.jcharts.chartData.ChartDataException;
45 import org.krysalis.jcharts.chartData.PieChartDataSet;
46 import org.krysalis.jcharts.nonAxisChart.PieChart2D;
47 import org.krysalis.jcharts.properties.*;
48
49 import javax.swing.*;
50 import java.awt.*;
51 import java.awt.event.WindowEvent JavaDoc;
52
53
54 public class SwingTest extends JFrame
55 {
56     private JPanel panel;
57
58
59     /*******************************************************************************
60      *
61      ********************************************************************************/

62     public SwingTest() throws ChartDataException, PropertyException
63     {
64         initComponents();
65     }
66
67
68     /*******************************************************************************
69      *
70      ********************************************************************************/

71     private void initComponents() throws ChartDataException, PropertyException
72     {
73         this.setSize( 500, 500 );
74         this.panel=new JPanel( true );
75         this.panel.setSize( 500, 500 );
76         this.getContentPane().add( this.panel );
77         this.setVisible( true );
78
79
80         String JavaDoc[] labels={"BMW", "Audi", "Lexus"};
81         String JavaDoc title="Cars that Own";
82         Paint[] paints={Color.blue, Color.gray, Color.red};
83         double[] data={50d, 30d, 20d};
84
85         PieChart2DProperties pieChart2DProperties=new PieChart2DProperties();
86         PieChartDataSet pieChartDataSet=new PieChartDataSet( title, data, labels, paints, pieChart2DProperties );
87
88         PieChart2D pieChart2D=new PieChart2D( pieChartDataSet, new LegendProperties(), new ChartProperties(), 450, 450 );
89
90         //BufferedImage bufferedImage=new BufferedImage( 450, 450, BufferedImage.TYPE_INT_RGB );
91
//pieChart2D.setGraphics2D( bufferedImage.createGraphics() );
92

93         pieChart2D.setGraphics2D( (Graphics2D) this.panel.getGraphics() );
94         pieChart2D.render();
95
96
97         //this.panel.getGraphics().drawImage( bufferedImage, 0, 0, this );
98

99
100         addWindowListener( new java.awt.event.WindowAdapter JavaDoc()
101         {
102             public void windowClosing( WindowEvent JavaDoc windowEvent )
103             {
104                 exitForm( windowEvent );
105             }
106         }
107         );
108     }
109
110
111     /*********************************************************************************
112      * Exit the Application
113      *
114      * @param windowEvent
115      ***********************************************************************************/

116     private void exitForm( WindowEvent JavaDoc windowEvent )
117     {
118         System.exit( 0 );
119     }
120
121
122     /*********************************************************************************
123      *
124      *
125      ***********************************************************************************/

126     public static void main( String JavaDoc args[] ) throws ChartDataException, PropertyException
127     {
128         new SwingTest();
129     }
130
131
132 }
133
Popular Tags