KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > it > businesslogic > ireport > chart > XYSeriesDialog


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  * XYSeriesDialog.java
28  *
29  * Created on 17 agosto 2005, 11.19
30  *
31  */

32
33 package it.businesslogic.ireport.chart;
34
35 import it.businesslogic.ireport.SubDataset;
36 import it.businesslogic.ireport.util.I18n;
37
38 /**
39  *
40  * @author Administrator
41  */

42 public class XYSeriesDialog extends javax.swing.JDialog JavaDoc {
43     
44     private String JavaDoc seriesExpression = "";
45     private String JavaDoc xValueExpression = "";
46     private String JavaDoc yValueExpression = "";
47     private String JavaDoc labelExpression = "";
48     
49     private int dialogResult = javax.swing.JOptionPane.CANCEL_OPTION;
50     
51     /** Creates new form CategorySeriesDialog */
52     public XYSeriesDialog(java.awt.Frame JavaDoc parent, boolean modal) {
53         super(parent, modal);
54         initComponents();
55         applyI18n();
56         
57         this.setSize(500,500);
58         it.businesslogic.ireport.util.Misc.centerFrame(this);
59         
60         javax.swing.KeyStroke JavaDoc escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false);
61         javax.swing.Action JavaDoc escapeAction = new javax.swing.AbstractAction JavaDoc() {
62             public void actionPerformed(java.awt.event.ActionEvent JavaDoc e) {
63                 jButtonCancelActionPerformed(e);
64             }
65         };
66        
67         getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE");
68         getRootPane().getActionMap().put("ESCAPE", escapeAction);
69
70
71         //to make the default button ...
72
this.getRootPane().setDefaultButton(this.jButtonOK);
73     }
74     
75     /**
76      * this method is used to pass the correct subdataset to the expression editor
77      */

78     public void setSubDataset( SubDataset sds )
79     {
80         jRTextExpressionLabel.setSubDataset(sds);
81         jRTextExpressionSeries.setSubDataset(sds);
82         jRTextExpressionXValue.setSubDataset(sds);
83         jRTextExpressionYValue.setSubDataset(sds);
84         sectionItemHyperlinkPanel1.setSubDataset( sds);
85     }
86     
87     /** This method is called from within the constructor to
88      * initialize the form.
89      * WARNING: Do NOT modify this code. The content of this method is
90      * always regenerated by the Form Editor.
91      */

92     // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
93
private void initComponents() {
94         java.awt.GridBagConstraints JavaDoc gridBagConstraints;
95
96         jTabbedPane1 = new javax.swing.JTabbedPane JavaDoc();
97         jPanel1 = new javax.swing.JPanel JavaDoc();
98         jLabelSeriesExpression = new javax.swing.JLabel JavaDoc();
99         jLabelXValueExpression = new javax.swing.JLabel JavaDoc();
100         jLabelYValueExpression = new javax.swing.JLabel JavaDoc();
101         jLabelLabelExpression = new javax.swing.JLabel JavaDoc();
102         jRTextExpressionSeries = new it.businesslogic.ireport.gui.JRTextExpressionArea();
103         jRTextExpressionXValue = new it.businesslogic.ireport.gui.JRTextExpressionArea();
104         jRTextExpressionYValue = new it.businesslogic.ireport.gui.JRTextExpressionArea();
105         jRTextExpressionLabel = new it.businesslogic.ireport.gui.JRTextExpressionArea();
106         sectionItemHyperlinkPanel1 = new it.businesslogic.ireport.chart.gui.SectionItemHyperlinkPanel();
107         jPanel6 = new javax.swing.JPanel JavaDoc();
108         jPanel7 = new javax.swing.JPanel JavaDoc();
109         jButtonOK = new javax.swing.JButton JavaDoc();
110         jButtonCancel = new javax.swing.JButton JavaDoc();
111
112         getContentPane().setLayout(new java.awt.GridBagLayout JavaDoc());
113
114         setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
115         setTitle("XY series");
116         jPanel1.setLayout(new java.awt.GridBagLayout JavaDoc());
117
118         jLabelSeriesExpression.setText("Series expression (required)");
119         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
120         gridBagConstraints.gridx = 0;
121         gridBagConstraints.gridy = 0;
122         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
123         gridBagConstraints.weightx = 1.0;
124         jPanel1.add(jLabelSeriesExpression, gridBagConstraints);
125
126         jLabelXValueExpression.setText("X value expression (required)");
127         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
128         gridBagConstraints.gridx = 0;
129         gridBagConstraints.gridy = 2;
130         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
131         gridBagConstraints.weightx = 1.0;
132         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 0, 0, 0);
133         jPanel1.add(jLabelXValueExpression, gridBagConstraints);
134
135         jLabelYValueExpression.setText("Y value expression (required)");
136         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
137         gridBagConstraints.gridx = 0;
138         gridBagConstraints.gridy = 10;
139         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
140         gridBagConstraints.weightx = 1.0;
141         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 0, 0, 0);
142         jPanel1.add(jLabelYValueExpression, gridBagConstraints);
143
144         jLabelLabelExpression.setText("Label expression");
145         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
146         gridBagConstraints.gridx = 0;
147         gridBagConstraints.gridy = 14;
148         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
149         gridBagConstraints.weightx = 1.0;
150         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 0, 0, 0);
151         jPanel1.add(jLabelLabelExpression, gridBagConstraints);
152
153         jRTextExpressionSeries.setBorder(javax.swing.BorderFactory.createEtchedBorder());
154         jRTextExpressionSeries.setElectricScroll(0);
155         jRTextExpressionSeries.setMinimumSize(new java.awt.Dimension JavaDoc(10, 10));
156         jRTextExpressionSeries.setPreferredSize(new java.awt.Dimension JavaDoc(10, 10));
157         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
158         gridBagConstraints.gridx = 0;
159         gridBagConstraints.gridy = 1;
160         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
161         gridBagConstraints.weightx = 1.0;
162         gridBagConstraints.weighty = 1.0;
163         jPanel1.add(jRTextExpressionSeries, gridBagConstraints);
164
165         jRTextExpressionXValue.setBorder(javax.swing.BorderFactory.createEtchedBorder());
166         jRTextExpressionXValue.setElectricScroll(0);
167         jRTextExpressionXValue.setMinimumSize(new java.awt.Dimension JavaDoc(10, 10));
168         jRTextExpressionXValue.setPreferredSize(new java.awt.Dimension JavaDoc(10, 10));
169         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
170         gridBagConstraints.gridx = 0;
171         gridBagConstraints.gridy = 3;
172         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
173         gridBagConstraints.weightx = 1.0;
174         gridBagConstraints.weighty = 1.0;
175         jPanel1.add(jRTextExpressionXValue, gridBagConstraints);
176
177         jRTextExpressionYValue.setBorder(javax.swing.BorderFactory.createEtchedBorder());
178         jRTextExpressionYValue.setElectricScroll(0);
179         jRTextExpressionYValue.setMinimumSize(new java.awt.Dimension JavaDoc(10, 10));
180         jRTextExpressionYValue.setPreferredSize(new java.awt.Dimension JavaDoc(10, 10));
181         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
182         gridBagConstraints.gridx = 0;
183         gridBagConstraints.gridy = 11;
184         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
185         gridBagConstraints.weightx = 1.0;
186         gridBagConstraints.weighty = 1.0;
187         jPanel1.add(jRTextExpressionYValue, gridBagConstraints);
188
189         jRTextExpressionLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
190         jRTextExpressionLabel.setElectricScroll(0);
191         jRTextExpressionLabel.setMinimumSize(new java.awt.Dimension JavaDoc(10, 10));
192         jRTextExpressionLabel.setPreferredSize(new java.awt.Dimension JavaDoc(10, 10));
193         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
194         gridBagConstraints.gridx = 0;
195         gridBagConstraints.gridy = 15;
196         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
197         gridBagConstraints.weightx = 1.0;
198         gridBagConstraints.weighty = 1.0;
199         jPanel1.add(jRTextExpressionLabel, gridBagConstraints);
200
201         jTabbedPane1.addTab("Data", jPanel1);
202
203         jTabbedPane1.addTab("Item hyperlink", sectionItemHyperlinkPanel1);
204
205         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
206         gridBagConstraints.gridwidth = 2;
207         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
208         gridBagConstraints.weightx = 1.0;
209         gridBagConstraints.weighty = 1.0;
210         getContentPane().add(jTabbedPane1, gridBagConstraints);
211
212         jPanel6.setLayout(new java.awt.GridBagLayout JavaDoc());
213
214         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
215         gridBagConstraints.gridheight = 2;
216         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
217         gridBagConstraints.weightx = 1.0;
218         gridBagConstraints.weighty = 1.0;
219         jPanel6.add(jPanel7, gridBagConstraints);
220
221         jButtonOK.setMnemonic('o');
222         jButtonOK.setText("OK");
223         jButtonOK.addActionListener(new java.awt.event.ActionListener JavaDoc() {
224             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
225                 jButtonOKActionPerformed(evt);
226             }
227         });
228
229         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
230         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
231         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
232         jPanel6.add(jButtonOK, gridBagConstraints);
233
234         jButtonCancel.setMnemonic('c');
235         jButtonCancel.setText("Cancel");
236         jButtonCancel.addActionListener(new java.awt.event.ActionListener JavaDoc() {
237             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
238                 jButtonCancelActionPerformed(evt);
239             }
240         });
241
242         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
243         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
244         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 0, 4, 0);
245         jPanel6.add(jButtonCancel, gridBagConstraints);
246
247         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
248         gridBagConstraints.gridx = 0;
249         gridBagConstraints.gridy = 18;
250         gridBagConstraints.gridwidth = 2;
251         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
252         gridBagConstraints.weightx = 1.0;
253         getContentPane().add(jPanel6, gridBagConstraints);
254
255         pack();
256     }// </editor-fold>//GEN-END:initComponents
257

258     private void jButtonCancelActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonCancelActionPerformed
259
this.setVisible(false);
260         this.dispose();
261     }//GEN-LAST:event_jButtonCancelActionPerformed
262

263     private void jButtonOKActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonOKActionPerformed
264

265         seriesExpression = jRTextExpressionSeries.getText();
266         setXValueExpression(jRTextExpressionXValue.getText());
267         setYValueExpression(jRTextExpressionYValue.getText());
268         labelExpression = jRTextExpressionLabel.getText();
269          
270        
271         java.text.MessageFormat JavaDoc formatter = new java.text.MessageFormat JavaDoc( it.businesslogic.ireport.util.I18n.getString("gui.notvalidexp","{0} cannot be blank!") );
272
273         if (seriesExpression.trim().length() == 0) {
274             
275            javax.swing.JOptionPane.showMessageDialog(this, formatter.format(new Object JavaDoc[]{it.businesslogic.ireport.util.I18n.getString("charts.seriesExpression","Series expression")}) ,I18n.getString("message.title.invalidExpression","Invalid expression"),javax.swing.JOptionPane.ERROR_MESSAGE);
276            return;
277         }
278         
279         if (xValueExpression.trim().length() == 0) {
280            javax.swing.JOptionPane.showMessageDialog(this, formatter.format(new Object JavaDoc[]{it.businesslogic.ireport.util.I18n.getString("charts.yValueExpression","X Value expression")}) ,I18n.getString("message.title.invalidExpression","Invalid expression"),javax.swing.JOptionPane.ERROR_MESSAGE);
281            return;
282         }
283         
284         if (yValueExpression.trim().length() == 0) {
285            javax.swing.JOptionPane.showMessageDialog(this, formatter.format(new Object JavaDoc[]{it.businesslogic.ireport.util.I18n.getString("charts.yValueExpression","Y Value expression")}) ,I18n.getString("message.title.invalidExpression","Invalid expression"),javax.swing.JOptionPane.ERROR_MESSAGE);
286            return;
287         }
288         
289         this.setDialogResult(javax.swing.JOptionPane.OK_OPTION);
290         this.setVisible(false);
291         this.dispose();
292     }//GEN-LAST:event_jButtonOKActionPerformed
293

294     /**
295      * @param args the command line arguments
296      */

297     public static void main(String JavaDoc args[]) {
298         java.awt.EventQueue.invokeLater(new Runnable JavaDoc() {
299             public void run() {
300                 new CategorySeriesDialog(new javax.swing.JFrame JavaDoc(), true).setVisible(true);
301             }
302         });
303     }
304
305     public String JavaDoc getSeriesExpression() {
306         return seriesExpression;
307     }
308
309     public void setSeriesExpression(String JavaDoc seriesExpression) {
310         this.seriesExpression = seriesExpression;
311         jRTextExpressionSeries.setText( seriesExpression );
312     }
313
314  
315     public String JavaDoc getLabelExpression() {
316         return labelExpression;
317     }
318
319     public void setLabelExpression(String JavaDoc labelExpression) {
320         this.labelExpression = labelExpression;
321         jRTextExpressionLabel.setText( labelExpression );
322     }
323     
324     public void setSectionItemHyperlink(SectionItemHyperlink sectionItemHyperlink)
325     {
326         sectionItemHyperlinkPanel1.setSectionItemHyperlink( sectionItemHyperlink.cloneMe());
327     }
328     
329     public SectionItemHyperlink getSectionItemHyperlink()
330     {
331         return sectionItemHyperlinkPanel1.getSectionItemHyperlink();
332     }
333
334     public int getDialogResult() {
335         return dialogResult;
336     }
337
338     public void setDialogResult(int dialogResult) {
339         this.dialogResult = dialogResult;
340     }
341     
342     // Variables declaration - do not modify//GEN-BEGIN:variables
343
private javax.swing.JButton JavaDoc jButtonCancel;
344     private javax.swing.JButton JavaDoc jButtonOK;
345     private javax.swing.JLabel JavaDoc jLabelLabelExpression;
346     private javax.swing.JLabel JavaDoc jLabelSeriesExpression;
347     private javax.swing.JLabel JavaDoc jLabelXValueExpression;
348     private javax.swing.JLabel JavaDoc jLabelYValueExpression;
349     private javax.swing.JPanel JavaDoc jPanel1;
350     private javax.swing.JPanel JavaDoc jPanel6;
351     private javax.swing.JPanel JavaDoc jPanel7;
352     private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionLabel;
353     private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionSeries;
354     private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionXValue;
355     private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionYValue;
356     private javax.swing.JTabbedPane JavaDoc jTabbedPane1;
357     private it.businesslogic.ireport.chart.gui.SectionItemHyperlinkPanel sectionItemHyperlinkPanel1;
358     // End of variables declaration//GEN-END:variables
359

360         public void applyI18n()
361         {
362                 // Start autogenerated code ----------------------
363
// End autogenerated code ----------------------
364
jButtonOK.setText( it.businesslogic.ireport.util.I18n.getString("ok","Ok"));
365             jButtonCancel.setText( it.businesslogic.ireport.util.I18n.getString("cancel","Cancel"));
366              
367             jLabelSeriesExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.seriesExpression","Series expression"));
368             jLabelXValueExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.xValueExpression","X Value expression"));
369             jLabelYValueExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.yValueExpression","Y Value expression"));
370             
371             jLabelLabelExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.labelExpression","Label expression"));
372             
373             jTabbedPane1.setTitleAt(0,I18n.getString("chartSeries.tab.Data","Data"));
374             jTabbedPane1.setTitleAt(1,I18n.getString("chartSeries.tab.ItemHyperlink","Item hyperlink"));
375             
376             this.getRootPane().updateUI();
377         }
378
379     public String JavaDoc getXValueExpression() {
380         return xValueExpression;
381     }
382
383     public void setXValueExpression(String JavaDoc xValueExpression) {
384         this.xValueExpression = xValueExpression;
385         jRTextExpressionXValue.setText( xValueExpression );
386     }
387
388     public String JavaDoc getYValueExpression() {
389         return yValueExpression;
390     }
391
392     public void setYValueExpression(String JavaDoc yValueExpression) {
393         this.yValueExpression = yValueExpression;
394         jRTextExpressionYValue.setText( yValueExpression );
395     }
396 }
397
Popular Tags