KickJava   Java API By Example, From Geeks To Geeks.

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


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  * TimeSeriesDialog.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 TimeSeriesDialog extends javax.swing.JDialog JavaDoc {
43     
44     private String JavaDoc seriesExpression = "";
45     private String JavaDoc timePeriodExpression = "";
46     private String JavaDoc valueExpression = "";
47     private String JavaDoc labelExpression = "";
48     
49     private int dialogResult = javax.swing.JOptionPane.CANCEL_OPTION;
50     
51     /** Creates new form CategorySeriesDialog */
52     public TimeSeriesDialog(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     /**
77      * this method is used to pass the correct subdataset to the expression editor
78      */

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

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

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

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

266         seriesExpression = jRTextExpressionSeries.getText();
267         setTimePeriodExpression(jRTextExpressionTimePeriod.getText());
268         valueExpression = jRTextExpressionValue.getText();
269         labelExpression = jRTextExpressionLabel.getText();
270          
271        
272         java.text.MessageFormat JavaDoc formatter = new java.text.MessageFormat JavaDoc( it.businesslogic.ireport.util.I18n.getString("gui.notvalidexp","{0} cannot be blank!") );
273
274         if (seriesExpression.trim().length() == 0) {
275             
276            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);
277            return;
278         }
279         
280         if (getTimePeriodExpression().trim().length() == 0) {
281            javax.swing.JOptionPane.showMessageDialog(this, formatter.format(new Object JavaDoc[]{it.businesslogic.ireport.util.I18n.getString("charts.timePeriodExpression","Time period expression")}) ,I18n.getString("message.title.invalidExpression","Invalid expression"),javax.swing.JOptionPane.ERROR_MESSAGE);
282            return;
283         }
284                 
285         if (valueExpression.trim().length() == 0) {
286            javax.swing.JOptionPane.showMessageDialog(this, formatter.format(new Object JavaDoc[]{it.businesslogic.ireport.util.I18n.getString("charts.valueExpression","Value expression")}) ,I18n.getString("message.title.invalidExpression","Invalid expression"),javax.swing.JOptionPane.ERROR_MESSAGE);
287            return;
288         }
289         
290         this.setDialogResult(javax.swing.JOptionPane.OK_OPTION);
291         this.setVisible(false);
292         this.dispose();
293     }//GEN-LAST:event_jButtonOKActionPerformed
294

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

359         public void applyI18n()
360         {
361                 // Start autogenerated code ----------------------
362
// End autogenerated code ----------------------
363
jButtonOK.setText( it.businesslogic.ireport.util.I18n.getString("ok","Ok"));
364             jButtonCancel.setText( it.businesslogic.ireport.util.I18n.getString("cancel","Cancel"));
365              
366             jLabelTimePeriodExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.timePeriodExpression","Time period expression"));
367             jLabelSeriesExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.seriesExpression","Series expression"));
368             jLabelValueExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.valueExpression","Value expression"));
369             jLabelLabelExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.labelExpression","Label expression"));
370             
371             jTabbedPane1.setTitleAt(0,I18n.getString("chartSeries.tab.Data","Data"));
372             jTabbedPane1.setTitleAt(1,I18n.getString("chartSeries.tab.ItemHyperlink","Item hyperlink"));
373             
374             this.getRootPane().updateUI();
375         }
376
377     public String JavaDoc getTimePeriodExpression() {
378         return timePeriodExpression;
379     }
380
381     public void setTimePeriodExpression(String JavaDoc timePeriodExpression) {
382         this.timePeriodExpression = timePeriodExpression;
383         jRTextExpressionTimePeriod.setText( timePeriodExpression );
384     }
385 }
386
Popular Tags