KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > it > businesslogic > ireport > crosstab > gui > CrosstabGroupDialog


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  * CrosstabGroupDialog.java
28  *
29  * Created on 9 maggio 2003, 17.25
30  *
31  */

32
33 package it.businesslogic.ireport.crosstab.gui;
34
35 import it.businesslogic.ireport.SubDataset;
36 import it.businesslogic.ireport.crosstab.CrosstabColumnGroup;
37 import it.businesslogic.ireport.crosstab.CrosstabGroup;
38 import it.businesslogic.ireport.gui.MainFrame;
39 import it.businesslogic.ireport.gui.sheet.Tag;
40 import it.businesslogic.ireport.util.Misc;
41 import it.businesslogic.ireport.util.I18n;
42
43
44 /**
45  * @author Administrator
46  */

47 public class CrosstabGroupDialog
48     extends javax.swing.JDialog JavaDoc
49 {
50     public static final int ROWGROUP = 0;
51     public static final int COLUMNGROUP = 1;
52     
53     private CrosstabGroup tmpGroup = null;
54     private int groupType = 1;
55
56     /**
57      * Creates a new CrosstabGroupDialog object.
58      *
59      * @param subDataset DOCUMENT ME!
60      * @param parent DOCUMENT ME!
61      * @param modal DOCUMENT ME!
62      */

63     public CrosstabGroupDialog(int groupType, java.awt.Frame JavaDoc parent,
64                             boolean modal)
65     {
66         super(parent, modal);
67         initAll(groupType);
68     }
69     
70     public CrosstabGroupDialog(int groupType, java.awt.Dialog JavaDoc parent,
71                             boolean modal)
72     {
73         super(parent, modal);
74         initAll(groupType);
75     }
76
77     public void initAll(int groupType)
78     {
79         initComponents();
80         
81         jComboBoxBucketClass.addItem("java.lang.String");
82         jComboBoxBucketClass.addItem("java.lang.Double");
83         jComboBoxBucketClass.addItem("java.lang.Float");
84         jComboBoxBucketClass.addItem("java.lang.Integer");
85         jComboBoxBucketClass.addItem("java.lang.Long");
86         jComboBoxBucketClass.addItem("java.lang.Short");
87         jComboBoxBucketClass.addItem("java.math.BigDecimal");
88         
89         jComboBoxBucketClass.addItem("java.util.Date");
90         jComboBoxBucketClass.addItem("java.sql.Timestamp");
91         jComboBoxBucketClass.addItem("java.sql.Time");
92         
93         setGroupType(groupType);
94         
95         //this.setSize(400, 400);
96
Misc.centerFrame(this);
97         pack();javax.swing.KeyStroke JavaDoc escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false);
98         javax.swing.Action JavaDoc escapeAction = new javax.swing.AbstractAction JavaDoc() {
99             public void actionPerformed(java.awt.event.ActionEvent JavaDoc e) {
100                 jButtonCancelActionPerformed(e);
101             }
102         };
103        
104         getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE");
105         getRootPane().getActionMap().put("ESCAPE", escapeAction);
106
107
108         //to make the default button ...
109
this.getRootPane().setDefaultButton(this.jButtonOK);
110         applyI18n();
111         
112     }
113
114
115
116     /**
117      * This method is called from within the constructor to initialize the
118      * form. WARNING: Do NOT modify this code. The content of this method is
119      * always regenerated by the Form Editor.
120      */

121
122
123     // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
124
private void initComponents() {
125         java.awt.GridBagConstraints JavaDoc gridBagConstraints;
126
127         jLabel1 = new javax.swing.JLabel JavaDoc();
128         jTextFieldName = new javax.swing.JTextField JavaDoc();
129         jPanel1 = new javax.swing.JPanel JavaDoc();
130         jPanel4 = new javax.swing.JPanel JavaDoc();
131         jButtonOK = new javax.swing.JButton JavaDoc();
132         jButtonCancel = new javax.swing.JButton JavaDoc();
133         jLabelSize = new javax.swing.JLabel JavaDoc();
134         jNumberFieldSize = new it.businesslogic.ireport.gui.JNumberField();
135         jPanel2 = new javax.swing.JPanel JavaDoc();
136         jLabel3 = new javax.swing.JLabel JavaDoc();
137         jRTextExpressionAreaExpression = new it.businesslogic.ireport.gui.JRTextExpressionArea();
138         jLabel4 = new javax.swing.JLabel JavaDoc();
139         jComboBoxOrder = new javax.swing.JComboBox JavaDoc();
140         jLabel5 = new javax.swing.JLabel JavaDoc();
141         jPanel5 = new javax.swing.JPanel JavaDoc();
142         jLabel6 = new javax.swing.JLabel JavaDoc();
143         jComboBoxBucketClass = new javax.swing.JComboBox JavaDoc();
144         jRTextExpressionAreaComparatorExpression = new it.businesslogic.ireport.gui.JRTextExpressionArea();
145         jPanel3 = new javax.swing.JPanel JavaDoc();
146         jComboBoxTotalPosition = new javax.swing.JComboBox JavaDoc();
147         jComboBoxHeaderPosition = new javax.swing.JComboBox JavaDoc();
148         jLabel2 = new javax.swing.JLabel JavaDoc();
149         jLabel7 = new javax.swing.JLabel JavaDoc();
150
151         getContentPane().setLayout(new java.awt.GridBagLayout JavaDoc());
152
153         setTitle("Add/modify crosstab group");
154         setModal(true);
155         addWindowListener(new java.awt.event.WindowAdapter JavaDoc() {
156             public void windowClosing(java.awt.event.WindowEvent JavaDoc evt) {
157                 closeDialog(evt);
158             }
159         });
160
161         jLabel1.setText("Group name");
162         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
163         gridBagConstraints.gridx = 0;
164         gridBagConstraints.gridy = 0;
165         gridBagConstraints.gridwidth = 3;
166         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
167         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 0, 3);
168         getContentPane().add(jLabel1, gridBagConstraints);
169
170         jTextFieldName.setPreferredSize(new java.awt.Dimension JavaDoc(360, 21));
171         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
172         gridBagConstraints.gridx = 0;
173         gridBagConstraints.gridy = 1;
174         gridBagConstraints.gridwidth = 3;
175         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
176         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
177         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 3, 3);
178         getContentPane().add(jTextFieldName, gridBagConstraints);
179
180         jPanel1.setLayout(new java.awt.GridBagLayout JavaDoc());
181
182         jPanel1.setMinimumSize(new java.awt.Dimension JavaDoc(126, 40));
183         jPanel1.setPreferredSize(new java.awt.Dimension JavaDoc(126, 40));
184         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
185         gridBagConstraints.gridx = 0;
186         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
187         gridBagConstraints.weightx = 1.0;
188         gridBagConstraints.weighty = 1.0;
189         jPanel1.add(jPanel4, gridBagConstraints);
190
191         jButtonOK.setMnemonic('o');
192         jButtonOK.setText("OK");
193         jButtonOK.addActionListener(new java.awt.event.ActionListener JavaDoc() {
194             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
195                 jButtonOKActionPerformed(evt);
196             }
197         });
198
199         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
200         gridBagConstraints.gridx = 1;
201         gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHEAST;
202         jPanel1.add(jButtonOK, gridBagConstraints);
203
204         jButtonCancel.setMnemonic('c');
205         jButtonCancel.setText("Cancel");
206         jButtonCancel.addActionListener(new java.awt.event.ActionListener JavaDoc() {
207             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
208                 jButtonCancelActionPerformed(evt);
209             }
210         });
211
212         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
213         gridBagConstraints.gridx = 2;
214         gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHEAST;
215         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 0, 3);
216         jPanel1.add(jButtonCancel, gridBagConstraints);
217
218         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
219         gridBagConstraints.gridx = 0;
220         gridBagConstraints.gridy = 99;
221         gridBagConstraints.gridwidth = 3;
222         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
223         gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHEAST;
224         gridBagConstraints.weightx = 1.0;
225         gridBagConstraints.weighty = 1.0;
226         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
227         getContentPane().add(jPanel1, gridBagConstraints);
228
229         jLabelSize.setText("Group width / height");
230         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
231         gridBagConstraints.gridx = 0;
232         gridBagConstraints.gridy = 2;
233         gridBagConstraints.gridwidth = 2;
234         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
235         getContentPane().add(jLabelSize, gridBagConstraints);
236
237         jNumberFieldSize.setColumns(4);
238         jNumberFieldSize.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
239         try {
240             jNumberFieldSize.setDecimals(0);
241         } catch (java.beans.PropertyVetoException JavaDoc e1) {
242             e1.printStackTrace();
243         }
244         jNumberFieldSize.setMinimumSize(new java.awt.Dimension JavaDoc(40, 21));
245         jNumberFieldSize.setPreferredSize(new java.awt.Dimension JavaDoc(38, 21));
246         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
247         gridBagConstraints.gridx = 2;
248         gridBagConstraints.gridy = 2;
249         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
250         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
251         getContentPane().add(jNumberFieldSize, gridBagConstraints);
252
253         jPanel2.setLayout(new java.awt.GridBagLayout JavaDoc());
254
255         jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Bucket", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font JavaDoc("Dialog", 0, 11)));
256         jLabel3.setText("Bucket expression");
257         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
258         gridBagConstraints.gridx = 0;
259         gridBagConstraints.gridy = 14;
260         gridBagConstraints.gridwidth = 2;
261         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
262         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 0, 3);
263         jPanel2.add(jLabel3, gridBagConstraints);
264
265         jRTextExpressionAreaExpression.setBorder(javax.swing.BorderFactory.createEtchedBorder());
266         jRTextExpressionAreaExpression.setCaretVisible(false);
267         jRTextExpressionAreaExpression.setElectricScroll(0);
268         jRTextExpressionAreaExpression.setMinimumSize(new java.awt.Dimension JavaDoc(657, 90));
269         jRTextExpressionAreaExpression.setPreferredSize(new java.awt.Dimension JavaDoc(325, 100));
270         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
271         gridBagConstraints.gridx = 0;
272         gridBagConstraints.gridy = 15;
273         gridBagConstraints.gridwidth = 2;
274         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
275         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
276         gridBagConstraints.weightx = 1.0;
277         gridBagConstraints.weighty = 1.0;
278         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 3, 3);
279         jPanel2.add(jRTextExpressionAreaExpression, gridBagConstraints);
280
281         jLabel4.setText("Order");
282         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
283         gridBagConstraints.gridx = 0;
284         gridBagConstraints.gridy = 18;
285         gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
286         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 0, 3);
287         jPanel2.add(jLabel4, gridBagConstraints);
288
289         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
290         gridBagConstraints.gridx = 1;
291         gridBagConstraints.gridy = 18;
292         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
293         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
294         gridBagConstraints.weightx = 1.0;
295         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
296         jPanel2.add(jComboBoxOrder, gridBagConstraints);
297
298         jLabel5.setText("Custom comparator expression");
299         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
300         gridBagConstraints.gridx = 0;
301         gridBagConstraints.gridy = 20;
302         gridBagConstraints.gridwidth = 2;
303         gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHWEST;
304         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 0, 3);
305         jPanel2.add(jLabel5, gridBagConstraints);
306
307         jPanel5.setLayout(new java.awt.GridBagLayout JavaDoc());
308
309         jLabel6.setText("Class");
310         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
311         gridBagConstraints.gridx = 0;
312         gridBagConstraints.gridy = 0;
313         gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
314         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 0, 3);
315         jPanel5.add(jLabel6, gridBagConstraints);
316
317         jComboBoxBucketClass.setEditable(true);
318         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
319         gridBagConstraints.gridx = 1;
320         gridBagConstraints.gridy = 0;
321         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
322         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
323         gridBagConstraints.weightx = 1.0;
324         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
325         jPanel5.add(jComboBoxBucketClass, gridBagConstraints);
326
327         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
328         gridBagConstraints.gridx = 0;
329         gridBagConstraints.gridy = 1;
330         gridBagConstraints.gridwidth = 2;
331         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
332         gridBagConstraints.weightx = 1.0;
333         jPanel2.add(jPanel5, gridBagConstraints);
334
335         jRTextExpressionAreaComparatorExpression.setBorder(javax.swing.BorderFactory.createEtchedBorder());
336         jRTextExpressionAreaComparatorExpression.setCaretVisible(false);
337         jRTextExpressionAreaComparatorExpression.setElectricScroll(0);
338         jRTextExpressionAreaComparatorExpression.setMinimumSize(new java.awt.Dimension JavaDoc(657, 45));
339         jRTextExpressionAreaComparatorExpression.setPreferredSize(new java.awt.Dimension JavaDoc(325, 45));
340         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
341         gridBagConstraints.gridx = 0;
342         gridBagConstraints.gridy = 21;
343         gridBagConstraints.gridwidth = 2;
344         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
345         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
346         gridBagConstraints.weightx = 1.0;
347         gridBagConstraints.weighty = 1.0;
348         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 3, 3);
349         jPanel2.add(jRTextExpressionAreaComparatorExpression, gridBagConstraints);
350
351         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
352         gridBagConstraints.gridx = 0;
353         gridBagConstraints.gridy = 4;
354         gridBagConstraints.gridwidth = 3;
355         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
356         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
357         getContentPane().add(jPanel2, gridBagConstraints);
358
359         jPanel3.setLayout(new java.awt.GridBagLayout JavaDoc());
360
361         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
362         gridBagConstraints.gridx = 1;
363         gridBagConstraints.gridy = 4;
364         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
365         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
366         gridBagConstraints.weightx = 1.0;
367         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
368         jPanel3.add(jComboBoxTotalPosition, gridBagConstraints);
369
370         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
371         gridBagConstraints.gridx = 1;
372         gridBagConstraints.gridy = 1;
373         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
374         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
375         gridBagConstraints.weightx = 1.0;
376         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
377         jPanel3.add(jComboBoxHeaderPosition, gridBagConstraints);
378
379         jLabel2.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
380         jLabel2.setText("Print the group header on this position: ");
381         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
382         gridBagConstraints.gridx = 0;
383         gridBagConstraints.gridy = 1;
384         gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
385         jPanel3.add(jLabel2, gridBagConstraints);
386
387         jLabel7.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
388         jLabel7.setText("Print the group total on this position: ");
389         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
390         gridBagConstraints.gridx = 0;
391         gridBagConstraints.gridy = 4;
392         gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
393         jPanel3.add(jLabel7, gridBagConstraints);
394
395         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
396         gridBagConstraints.gridx = 0;
397         gridBagConstraints.gridwidth = 3;
398         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
399         gridBagConstraints.weightx = 1.0;
400         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
401         getContentPane().add(jPanel3, gridBagConstraints);
402
403         pack();
404         java.awt.Dimension JavaDoc screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
405         java.awt.Dimension JavaDoc dialogSize = getSize();
406         setLocation((screenSize.width-dialogSize.width)/2,(screenSize.height-dialogSize.height)/2);
407     }// </editor-fold>//GEN-END:initComponents
408
private void jButtonCancelActionPerformed(java.awt.event.ActionEvent JavaDoc evt)//GEN-FIRST:event_jButtonCancelActionPerformed
409
{
410         setVisible(false);
411         this.setDialogResult(javax.swing.JOptionPane.CANCEL_OPTION);
412         dispose();
413     }//GEN-LAST:event_jButtonCancelActionPerformed
414

415     private void jButtonOKActionPerformed(java.awt.event.ActionEvent JavaDoc evt)//GEN-FIRST:event_jButtonOKActionPerformed
416
{
417
418         if (this.jTextFieldName.getText().trim().length() <= 0)
419         {
420             javax.swing.JOptionPane.showMessageDialog(this,
421                                                       I18n.getString("messages.crosstabGroupDialog.invalidGroup","Please insert a valid group name!"),
422                                                       I18n.getString("messages.crosstabGroupDialog.invalidGroupCaption","Invalid group!"),
423                                                       javax.swing.JOptionPane.WARNING_MESSAGE);
424
425             return;
426         }
427         
428         if ((""+this.jComboBoxBucketClass.getSelectedItem()).trim().length() <= 0)
429         {
430             javax.swing.JOptionPane.showMessageDialog(this,
431                                                       I18n.getString("messages.crosstabGroupDialog.invalidClassName","Please insert a valid class name for the bucket!"),
432                                                       I18n.getString("messages.crosstabGroupDialog.invalidClassNameCaption","Invalid class!"),
433                                                       javax.swing.JOptionPane.WARNING_MESSAGE);
434
435             return;
436         }
437
438         tmpGroup = new CrosstabGroup();
439         
440         tmpGroup.setName(jTextFieldName.getText().trim());
441         
442         
443         tmpGroup.setBucketExpressionClass(
444                 this.jComboBoxBucketClass.getSelectedItem() + "");
445         
446         tmpGroup.setSize((int)jNumberFieldSize.getValue());
447         
448         tmpGroup.setBucketExpression( jRTextExpressionAreaExpression.getText());
449         tmpGroup.setBucketComparatorExpression( jRTextExpressionAreaComparatorExpression.getText());
450         tmpGroup.setBucketOrder(""+((Tag)jComboBoxOrder.getSelectedItem()).getValue());
451
452         
453         tmpGroup.setTotalPosition(""+((Tag)jComboBoxTotalPosition.getSelectedItem()).getValue());
454         tmpGroup.setHasTotal( !tmpGroup.getTotalPosition().equals("None") );
455         tmpGroup.setHasHeader(true );
456         tmpGroup.setHeaderPosition(""+((Tag)jComboBoxHeaderPosition.getSelectedItem()).getValue());
457         
458         setVisible(false);
459         this.setDialogResult(javax.swing.JOptionPane.OK_OPTION);
460         dispose();
461     }//GEN-LAST:event_jButtonOKActionPerformed
462

463     /**
464      * Closes the dialog
465      * @param evt DOCUMENT ME!
466      */

467     private void closeDialog(java.awt.event.WindowEvent JavaDoc evt)//GEN-FIRST:event_closeDialog
468
{
469         setVisible(false);
470         this.setDialogResult(javax.swing.JOptionPane.CLOSED_OPTION);
471         dispose();
472     }//GEN-LAST:event_closeDialog
473

474
475     /**
476      * Getter for property dialogResult.
477      *
478      * @return Value of property dialogResult.
479      */

480     public int getDialogResult()
481     {
482
483         return dialogResult;
484     }
485
486     /**
487      * Setter for property dialogResult.
488      *
489      * @param dialogResult New value of property dialogResult.
490      */

491     public void setDialogResult(int dialogResult)
492     {
493         this.dialogResult = dialogResult;
494     }
495     
496     public void setExpressionContext(SubDataset sds)
497     {
498         if (sds == null)
499         {
500             sds = MainFrame.getMainInstance().getActiveReportFrame().getReport();
501         }
502         this.jRTextExpressionAreaComparatorExpression.setSubDataset( sds);
503         this.jRTextExpressionAreaComparatorExpression.getCrosstabElements().removeAllElements();
504         this.jRTextExpressionAreaExpression.setSubDataset( sds );
505         this.jRTextExpressionAreaExpression.getCrosstabElements().removeAllElements();
506     }
507
508
509     // Variables declaration - do not modify//GEN-BEGIN:variables
510
private javax.swing.JButton JavaDoc jButtonCancel;
511     private javax.swing.JButton JavaDoc jButtonOK;
512     private javax.swing.JComboBox JavaDoc jComboBoxBucketClass;
513     private javax.swing.JComboBox JavaDoc jComboBoxHeaderPosition;
514     private javax.swing.JComboBox JavaDoc jComboBoxOrder;
515     private javax.swing.JComboBox JavaDoc jComboBoxTotalPosition;
516     private javax.swing.JLabel JavaDoc jLabel1;
517     private javax.swing.JLabel JavaDoc jLabel2;
518     private javax.swing.JLabel JavaDoc jLabel3;
519     private javax.swing.JLabel JavaDoc jLabel4;
520     private javax.swing.JLabel JavaDoc jLabel5;
521     private javax.swing.JLabel JavaDoc jLabel6;
522     private javax.swing.JLabel JavaDoc jLabel7;
523     private javax.swing.JLabel JavaDoc jLabelSize;
524     private it.businesslogic.ireport.gui.JNumberField jNumberFieldSize;
525     private javax.swing.JPanel JavaDoc jPanel1;
526     private javax.swing.JPanel JavaDoc jPanel2;
527     private javax.swing.JPanel JavaDoc jPanel3;
528     private javax.swing.JPanel JavaDoc jPanel4;
529     private javax.swing.JPanel JavaDoc jPanel5;
530     private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionAreaComparatorExpression;
531     private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionAreaExpression;
532     private javax.swing.JTextField JavaDoc jTextFieldName;
533     // End of variables declaration//GEN-END:variables
534
private int dialogResult;
535
536
537     public CrosstabGroup getGroup() {
538         return tmpGroup;
539     }
540
541     public void setGroup(CrosstabGroup group) {
542
543         if (group instanceof CrosstabColumnGroup)
544         {
545             setGroupType(COLUMNGROUP);
546         }
547         else
548         {
549             setGroupType(ROWGROUP);
550         }
551         
552         jTextFieldName.setText(group.getName());
553         try {
554             
555             jNumberFieldSize.setValue( group.getSize());
556         }
557         catch (Exception JavaDoc ex)
558         {
559         }
560         
561         Misc.setComboboxSelectedTagValue(jComboBoxTotalPosition, group.getTotalPosition());
562         
563         Misc.setComboboxSelectedTagValue(jComboBoxHeaderPosition, group.getHeaderPosition());
564         
565         jRTextExpressionAreaExpression.setText( group.getBucketExpression());
566         Misc.setComboboxSelectedTagValue(jComboBoxOrder, group.getBucketOrder());
567         jRTextExpressionAreaComparatorExpression.setText( group.getBucketComparatorExpression() );
568         jComboBoxBucketClass.setSelectedItem(group.getBucketExpressionClass());
569        
570     }
571
572     public int getGroupType() {
573         return groupType;
574     }
575
576     public void setGroupType(int groupType) {
577         this.groupType = groupType;
578             
579         this.jComboBoxOrder.removeAllItems();
580         this.jComboBoxOrder.addItem(new Tag("Ascending", I18n.getString("order.Ascending", "Ascending")) );
581         this.jComboBoxOrder.addItem(new Tag("Descending",I18n.getString("order.Descending", "Descending")));
582         Misc.setComboboxSelectedTagValue(jComboBoxTotalPosition, "Ascending");
583         
584         
585         this.jComboBoxTotalPosition.removeAllItems();
586          this.jComboBoxTotalPosition.addItem(new Tag("None",I18n.getString("totalPosition.None", "None") ));
587         this.jComboBoxTotalPosition.addItem(new Tag("Start",I18n.getString("totalPosition.Start", "Start") ));
588         this.jComboBoxTotalPosition.addItem(new Tag("End",I18n.getString("totalPosition.End", "End") ));
589         Misc.setComboboxSelectedTagValue(jComboBoxTotalPosition, "None");
590             
591         if (groupType == this.COLUMNGROUP)
592         {
593             
594             try { this.jNumberFieldSize.setValue(30); } catch (Exception JavaDoc ex) {}
595             
596             this.jLabelSize.setText( I18n.getString("crosstabGroupDialog.labelSize.columnHeight","Group height") );
597             this.jComboBoxHeaderPosition.removeAllItems();
598             this.jComboBoxHeaderPosition.addItem(new Tag("Left", I18n.getString("headerPosition.Left", "Left") ));
599             this.jComboBoxHeaderPosition.addItem(new Tag("Center",I18n.getString("headerPosition.Center", "Center")));
600             this.jComboBoxHeaderPosition.addItem(new Tag("Right",I18n.getString("headerPosition.Right", "Right")));
601             this.jComboBoxHeaderPosition.addItem(new Tag("Stretch",I18n.getString("headerPosition.Stretch", "Stretch")));
602             
603             Misc.setComboboxSelectedTagValue(jComboBoxHeaderPosition, "Left");
604             
605         }
606         else
607         {
608             try { this.jNumberFieldSize.setValue(100); } catch (Exception JavaDoc ex) {}
609             
610             this.jLabelSize.setText( I18n.getString("crosstabGroupDialog.labelSize.columnWidth","Group width") );
611             this.jComboBoxHeaderPosition.removeAllItems();
612             this.jComboBoxHeaderPosition.addItem(new Tag("Top", I18n.getString("headerPosition.Top", "Top")));
613             this.jComboBoxHeaderPosition.addItem(new Tag("Middle",I18n.getString("headerPosition.Middle", "Middle")));
614             this.jComboBoxHeaderPosition.addItem(new Tag("Bottom",I18n.getString("headerPosition.Bottom", "Bottom")));
615             this.jComboBoxHeaderPosition.addItem(new Tag("Stretch",I18n.getString("headerPosition.Stretch", "Stretch")));
616             
617             Misc.setComboboxSelectedTagValue(jComboBoxHeaderPosition, "Top");
618         }
619         
620     }
621     public void applyI18n(){
622                 // Start autogenerated code ----------------------
623
jButtonCancel.setText(I18n.getString("crosstabGroupDialog.buttonCancel","Cancel"));
624                 jButtonOK.setText(I18n.getString("crosstabGroupDialog.buttonOK","OK"));
625                 jLabel1.setText(I18n.getString("crosstabGroupDialog.label1","Group name"));
626                 jLabel2.setText(I18n.getString("crosstabGroupDialog.label2","Print the group header on this position: "));
627                 jLabel3.setText(I18n.getString("crosstabGroupDialog.label3","Bucket expression"));
628                 jLabel4.setText(I18n.getString("crosstabGroupDialog.label4","Order"));
629                 jLabel5.setText(I18n.getString("crosstabGroupDialog.label5","Custom comparator expression"));
630                 jLabel6.setText(I18n.getString("crosstabGroupDialog.label6","Class"));
631                 jLabel7.setText(I18n.getString("crosstabGroupDialog.label7","Print the group total on this position: "));
632                 jLabelSize.setText(I18n.getString("crosstabGroupDialog.labelSize","Group width / height"));
633                 // End autogenerated code ----------------------
634
((javax.swing.border.TitledBorder JavaDoc)jPanel2.getBorder()).setTitle( I18n.getString("crosstabGroupDialog.panelBorder.Bucket","Bucket") );
635     }
636 }
637
Popular Tags