KickJava   Java API By Example, From Geeks To Geeks.

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


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  * GroupsDialog.java
28  *
29  * Created on 10 maggio 2003, 9.51
30  *
31  */

32
33 package it.businesslogic.ireport.gui;
34
35 import javax.swing.event.ListSelectionEvent JavaDoc;
36 import javax.swing.table.*;
37 import javax.swing.*;
38 import it.businesslogic.ireport.*;
39 import it.businesslogic.ireport.util.*;
40 import it.businesslogic.ireport.gui.event.*;
41 import java.awt.Point JavaDoc;
42
43 import java.util.*;
44 /**
45  *
46  * @author Administrator
47  */

48 public class GroupsDialog extends javax.swing.JDialog JavaDoc {
49     
50     
51     private JReportFrame jReportFrame=null;
52     
53     // Variables declaration - do not modify//GEN-BEGIN:variables
54
private javax.swing.JButton JavaDoc jButtonDeleteGroup;
55     private javax.swing.JButton JavaDoc jButtonModifyGroup;
56     private javax.swing.JButton JavaDoc jButtonMoveDownGroup;
57     private javax.swing.JButton JavaDoc jButtonMoveUpGroup;
58     private javax.swing.JButton JavaDoc jButtonNewGroup;
59     private javax.swing.JPanel JavaDoc jPanelButtons;
60     private javax.swing.JPanel JavaDoc jPanelFields;
61     private javax.swing.JScrollPane JavaDoc jScrollPane3;
62     private javax.swing.JTable JavaDoc jTableGroups;
63     // End of variables declaration//GEN-END:variables
64

65     /**
66      * Creates new form GroupsDialog
67      */

68     public GroupsDialog(java.awt.Frame JavaDoc parent, boolean modal) {
69         super(parent, modal);
70         initComponents();
71         this.setSize(420, 250);
72         applyI18n();
73         I18n.addOnLanguageChangedListener( new LanguageChangedListener() {
74             public void languageChanged(LanguageChangedEvent evt) {
75                 applyI18n();
76             }
77         } );
78         Misc.centerFrame(this);
79         
80         DefaultListSelectionModel dlsm = (DefaultListSelectionModel)this.jTableGroups.getSelectionModel();
81         dlsm.addListSelectionListener(new javax.swing.event.ListSelectionListener JavaDoc() {
82             public void valueChanged(ListSelectionEvent JavaDoc e) {
83                 jTableGroupsListSelectionValueChanged(e);
84             }
85         });
86         
87         
88         javax.swing.KeyStroke JavaDoc escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false);
89         javax.swing.Action JavaDoc escapeAction = new javax.swing.AbstractAction JavaDoc() {
90             public void actionPerformed(java.awt.event.ActionEvent JavaDoc e) {
91                 setVisible(false);
92             }
93         };
94        
95         getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE");
96         getRootPane().getActionMap().put("ESCAPE", escapeAction);
97
98     }
99     
100     public void jTableGroupsListSelectionValueChanged(javax.swing.event.ListSelectionEvent JavaDoc e) {
101         
102         /* Buttons Move Up and Move Down */
103         if (this.jTableGroups.getSelectedRowCount() == 1 && this.jTableGroups.getRowCount() > 1) {
104             int row= jTableGroups.getSelectedRows()[0];
105             this.jButtonMoveDownGroup.setEnabled( row != this.jTableGroups.getRowCount()-1);
106             this.jButtonMoveUpGroup.setEnabled( row != 0);
107         } else {
108             // Moving of multiple groups not allowed
109
this.jButtonMoveDownGroup.setEnabled(false);
110             this.jButtonMoveUpGroup.setEnabled(false);
111         }
112         
113         /* Other buttons*/
114         if (this.jTableGroups.getSelectedRowCount() > 0) {
115             this.jButtonModifyGroup.setEnabled(true);
116             this.jButtonDeleteGroup.setEnabled(true);
117         }
118         else {
119             this.jButtonModifyGroup.setEnabled(false);
120             this.jButtonDeleteGroup.setEnabled(false);
121         }
122     }
123     
124     public void updateGroups() {
125         
126         if (jReportFrame == null) {
127             return;
128         }
129         
130         DefaultTableModel dtm = (DefaultTableModel)jTableGroups.getModel();
131         dtm.setRowCount(0);
132         
133         for (Iterator i = jReportFrame.getReport().getGroups().iterator(); i.hasNext(); ) {
134             it.businesslogic.ireport.Group group = (it.businesslogic.ireport.Group) i.next();
135             Vector row = new Vector();
136             row.addElement( group );
137             
138             dtm.addRow(row);
139         }
140     }
141     
142     /** This method is called from within the constructor to
143      * initialize the form.
144      * WARNING: Do NOT modify this code. The content of this method is
145      * always regenerated by the Form Editor.
146      */

147     // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
148
private void initComponents() {
149         java.awt.GridBagConstraints JavaDoc gridBagConstraints;
150
151         jPanelFields = new javax.swing.JPanel JavaDoc();
152         jScrollPane3 = new javax.swing.JScrollPane JavaDoc();
153         jTableGroups = new javax.swing.JTable JavaDoc();
154         jPanelButtons = new javax.swing.JPanel JavaDoc();
155         jButtonNewGroup = new javax.swing.JButton JavaDoc();
156         jButtonModifyGroup = new javax.swing.JButton JavaDoc();
157         jButtonMoveUpGroup = new javax.swing.JButton JavaDoc();
158         jButtonMoveDownGroup = new javax.swing.JButton JavaDoc();
159         jButtonDeleteGroup = new javax.swing.JButton JavaDoc();
160
161         addWindowListener(new java.awt.event.WindowAdapter JavaDoc() {
162             public void windowClosing(java.awt.event.WindowEvent JavaDoc evt) {
163                 closeDialog(evt);
164             }
165         });
166
167         jPanelFields.setLayout(new java.awt.BorderLayout JavaDoc());
168
169         jScrollPane3.setBackground(new java.awt.Color JavaDoc(255, 255, 255));
170         jTableGroups.setModel(new javax.swing.table.DefaultTableModel JavaDoc(
171             new Object JavaDoc [][] {
172
173             },
174             new String JavaDoc [] {
175                 "Group name"
176             }
177         ) {
178             boolean[] canEdit = new boolean [] {
179                 false
180             };
181
182             public boolean isCellEditable(int rowIndex, int columnIndex) {
183                 return canEdit [columnIndex];
184             }
185         });
186         jTableGroups.addMouseListener(new java.awt.event.MouseAdapter JavaDoc() {
187             public void mouseClicked(java.awt.event.MouseEvent JavaDoc evt) {
188                 jTableGroupsMouseClicked(evt);
189             }
190         });
191
192         jScrollPane3.setViewportView(jTableGroups);
193
194         jPanelFields.add(jScrollPane3, java.awt.BorderLayout.CENTER);
195
196         jPanelButtons.setLayout(new java.awt.GridBagLayout JavaDoc());
197
198         jPanelButtons.setPreferredSize(new java.awt.Dimension JavaDoc(100, 10));
199         jPanelButtons.setMinimumSize(new java.awt.Dimension JavaDoc(100, 10));
200         jButtonNewGroup.setText("New");
201         jButtonNewGroup.addActionListener(new java.awt.event.ActionListener JavaDoc() {
202             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
203                 jButtonNewGroupActionPerformed(evt);
204             }
205         });
206
207         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
208         gridBagConstraints.gridx = 0;
209         gridBagConstraints.gridy = 0;
210         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
211         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
212         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 5, 3);
213         jPanelButtons.add(jButtonNewGroup, gridBagConstraints);
214
215         jButtonModifyGroup.setText("Modify");
216         jButtonModifyGroup.setEnabled(false);
217         jButtonModifyGroup.addActionListener(new java.awt.event.ActionListener JavaDoc() {
218             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
219                 jButtonModifyGroupActionPerformed(evt);
220             }
221         });
222
223         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
224         gridBagConstraints.gridx = 0;
225         gridBagConstraints.gridy = 1;
226         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
227         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
228         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 5, 3);
229         jPanelButtons.add(jButtonModifyGroup, gridBagConstraints);
230
231         jButtonMoveUpGroup.setText("Move Up");
232         jButtonMoveUpGroup.setEnabled(false);
233         jButtonMoveUpGroup.addActionListener(new java.awt.event.ActionListener JavaDoc() {
234             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
235                 jButtonMoveUpGroupActionPerformed(evt);
236             }
237         });
238
239         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
240         gridBagConstraints.gridx = 0;
241         gridBagConstraints.gridy = 2;
242         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
243         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
244         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 5, 3);
245         jPanelButtons.add(jButtonMoveUpGroup, gridBagConstraints);
246
247         jButtonMoveDownGroup.setText("Move Down");
248         jButtonMoveDownGroup.setEnabled(false);
249         jButtonMoveDownGroup.addActionListener(new java.awt.event.ActionListener JavaDoc() {
250             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
251                 jButtonMoveDownGroupActionPerformed(evt);
252             }
253         });
254
255         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
256         gridBagConstraints.gridx = 0;
257         gridBagConstraints.gridy = 3;
258         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
259         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
260         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 5, 3);
261         jPanelButtons.add(jButtonMoveDownGroup, gridBagConstraints);
262
263         jButtonDeleteGroup.setText("Delete");
264         jButtonDeleteGroup.setEnabled(false);
265         jButtonDeleteGroup.addActionListener(new java.awt.event.ActionListener JavaDoc() {
266             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
267                 jButtonDeleteGroupActionPerformed(evt);
268             }
269         });
270
271         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
272         gridBagConstraints.gridx = 0;
273         gridBagConstraints.gridy = 4;
274         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
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, 5, 3);
279         jPanelButtons.add(jButtonDeleteGroup, gridBagConstraints);
280
281         jPanelFields.add(jPanelButtons, java.awt.BorderLayout.EAST);
282
283         getContentPane().add(jPanelFields, java.awt.BorderLayout.CENTER);
284
285         pack();
286     }// </editor-fold>//GEN-END:initComponents
287

288     private void jTableGroupsMouseClicked(java.awt.event.MouseEvent JavaDoc evt) {//GEN-FIRST:event_jTableGroupsMouseClicked
289

290         if (evt.getClickCount() == 2 && evt.getButton() == evt.BUTTON1 &&
291             jTableGroups.getSelectedRow() >= 0)
292         {
293             jButtonModifyGroupActionPerformed(new java.awt.event.ActionEvent JavaDoc(
294                                                       jButtonModifyGroup, 0,
295                                                       ""));
296         }
297         
298     }//GEN-LAST:event_jTableGroupsMouseClicked
299

300     private void jButtonMoveDownGroupActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonMoveDownGroupActionPerformed
301
if ( jTableGroups.getSelectedRows().length == 1 ) {
302             int[] rows= jTableGroups.getSelectedRows();
303             Group grp = (Group) jTableGroups.getValueAt( rows[0], 0) ;
304             this.getJReportFrame().getReport().moveGroup( grp , 1); // 1: Forward
305

306             // do some administration
307
((MainFrame)this.getParent()).getBandsDialog().updateBands();
308             ((MainFrame)this.getParent()).getElementPropertiesDialog().updateSelection();
309             this.getJReportFrame().setIsDocDirty(true);
310             this.getJReportFrame().repaint();
311             updateGroups();
312             
313             // find position of moved group in the updated list and set focus
314
for (int i=0; i <= jTableGroups.getRowCount()-1; i++ ) {
315                 if ( grp == (Group) jTableGroups.getValueAt(i , 0) ) {
316                     jTableGroups.changeSelection( i, 0, true, false );
317                     break;
318                 }
319             }
320             
321             ((MainFrame)this.getParent()).reportBandChanged( new ReportBandChangedEvent(this.getJReportFrame(), null, ReportBandChangedEvent.CHANGED ));
322         }
323     }//GEN-LAST:event_jButtonMoveDownGroupActionPerformed
324

325     private void jButtonMoveUpGroupActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonMoveUpGroupActionPerformed
326

327         if ( jTableGroups.getSelectedRows().length == 1 ) {
328             int[] rows= jTableGroups.getSelectedRows();
329             Group grp = (Group) jTableGroups.getValueAt( rows[0], 0) ;
330             this.getJReportFrame().getReport().moveGroup( grp , -1); // -1: Backward
331

332             // do some administration
333
((MainFrame)this.getParent()).getBandsDialog().updateBands();
334             ((MainFrame)this.getParent()).getElementPropertiesDialog().updateSelection();
335             this.getJReportFrame().setIsDocDirty(true);
336             this.getJReportFrame().repaint();
337             updateGroups();
338             
339             // find position of moved group in the updated list and set focus
340
for (int i=0; i <= jTableGroups.getRowCount()-1; i++) {
341                 if ( grp == (Group) jTableGroups.getValueAt(i , 0) ) {
342                     jTableGroups.changeSelection( i, 0, true, false );
343                     break;
344                 }
345             }
346             
347             ((MainFrame)this.getParent()).reportBandChanged( new ReportBandChangedEvent(this.getJReportFrame(), null, ReportBandChangedEvent.CHANGED ));
348         }
349         
350     }//GEN-LAST:event_jButtonMoveUpGroupActionPerformed
351

352     private void jButtonDeleteGroupActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonDeleteGroupActionPerformed
353
// jTableGroups.getSelectedRows(); disabled by Robert, July 31, 2004
354

355         int[] rows= jTableGroups.getSelectedRows();
356         for (int i=rows.length-1; i>=0; --i) {
357             
358             // Adjust elements
359
Enumeration e = this.getJReportFrame().getReport().getElements().elements();
360             while (e.hasMoreElements()) {
361                 ReportElement re = (ReportElement)e.nextElement();
362                 if (re.printWhenGroupChanges.equals(""+(it.businesslogic.ireport.Group)jTableGroups.getValueAt( rows[i], 0)) ){
363                     re.printWhenGroupChanges = "";
364                 }
365             }
366             
367             // Adjust variables...
368
e = this.getJReportFrame().getReport().getVariables().elements();
369             while (e.hasMoreElements()) {
370                 JRVariable var = (JRVariable)e.nextElement();
371                 if (var.getResetType().equals("Group") && var.getResetGroup().equals(""+(it.businesslogic.ireport.Group)jTableGroups.getValueAt( rows[i], 0)) ) {
372                     var.setResetType("Report");
373                     var.setResetGroup("");
374                 }
375             }
376             
377             this.getJReportFrame().getReport().delGroup((it.businesslogic.ireport.Group)jTableGroups.getValueAt( rows[i], 0));
378         }
379         updateGroups();
380         
381         this.getJReportFrame().checkSelection(false);
382         ((MainFrame)this.getParent()).getBandsDialog().updateBands();
383         ((MainFrame)this.getParent()).getElementPropertiesDialog().updateSelection();
384         this.getJReportFrame().setIsDocDirty(true);
385         this.getJReportFrame().repaint();
386         ((MainFrame)this.getParent()).reportBandChanged( new ReportBandChangedEvent(this.getJReportFrame(), null, ReportBandChangedEvent.REMOVED ));
387     }//GEN-LAST:event_jButtonDeleteGroupActionPerformed
388

389     private void jButtonModifyGroupActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonModifyGroupActionPerformed
390
it.businesslogic.ireport.Group group = (it.businesslogic.ireport.Group)jTableGroups.getValueAt( jTableGroups.getSelectedRow(), 0);
391         
392         JRGroupDialog jrpd = new JRGroupDialog(getJReportFrame(), true);
393         jrpd.setGroup( group );
394         jrpd.setVisible(true);
395         
396         if (jrpd.getDialogResult() == javax.swing.JOptionPane.OK_OPTION) {
397             
398             String JavaDoc oldName = group.getName();
399             
400             group.setName( jrpd.getGroupName() );
401             group.setGroupExpression( jrpd.getExpression());
402             group.setIsReprintHeaderOnEachPage(jrpd.isPrintHeaderEachPage() );
403             group.setIsResetPageNumber( jrpd.isResetPageNumber() );
404             group.setIsStartNewColumn( jrpd.isStartNewColumn());
405             group.setIsStartNewPage( jrpd.isStartNewPage());
406             group.setMinHeightToStartNewPage( jrpd.getMinHeightStartNewPage() );
407             
408             group.getGroupHeader().setName( group.getName()+"Header");
409             group.getGroupFooter().setName( group.getName()+"Footer");
410             
411             int deltaHeader = jrpd.getHeaderBandHeight() - group.getGroupHeader().getHeight();
412             int deltaFooter = jrpd.getFooterBandHeight() - group.getGroupFooter().getHeight();
413             
414             int positionFooterBottom = getJReportFrame().getReport().getBandYLocation( group.getGroupFooter() ) + group.getGroupFooter().getHeight();
415             int positionHeaderBottom = getJReportFrame().getReport().getBandYLocation( group.getGroupHeader() ) + group.getGroupHeader().getHeight();
416             
417             // move down / up all modified bands...
418
Enumeration enumElements = getJReportFrame().getReport().getElements().elements();
419             while (enumElements.hasMoreElements())
420             {
421                 ReportElement re = (ReportElement)enumElements.nextElement();
422                 
423                 if (re.getPosition().getY() >= positionFooterBottom)
424                 {
425                     re.trasform( new Point JavaDoc(0,deltaHeader+deltaFooter), TransformationType.TRANSFORMATION_MOVE);
426                 }
427                 else if (re.getPosition().getY() >= positionHeaderBottom)
428                 {
429                     re.trasform( new Point JavaDoc(0,deltaHeader), TransformationType.TRANSFORMATION_MOVE);
430                 }
431             }
432
433             group.getGroupHeader().setHeight( jrpd.getHeaderBandHeight());
434             group.getGroupFooter().setHeight( jrpd.getFooterBandHeight());
435             
436             for (int k=getJReportFrame().getReport().getVariables().size()-1; k>=0; --k)
437             {
438                 JRVariable var = (JRVariable)getJReportFrame().getReport().getVariables().elementAt(k);
439                 if (var.isBuiltin() && var.getName().equalsIgnoreCase(oldName+"_COUNT"))
440                 {
441                     getJReportFrame().getReport().removeVariable(var);
442                     break;
443                 }
444             }
445             getJReportFrame().getReport().addVariable(new it.businesslogic.ireport.JRVariable(group.getName()+"_COUNT","java.lang.Integer", true));
446             
447             
448             // Update All variables...
449
Enumeration e = getJReportFrame().getReport().getVariables().elements();
450             while (e.hasMoreElements()) {
451                 JRVariable var = (JRVariable)e.nextElement();
452                 if (var.getResetGroup() != null &&
453                 var.getResetGroup().equals(oldName)) {
454                     var.setResetGroup( group.getName() );
455                 }
456             }
457             
458             // Adjust elements
459
e = this.getJReportFrame().getReport().getElements().elements();
460             while (e.hasMoreElements()) {
461                 ReportElement re = (ReportElement)e.nextElement();
462                 if (re.printWhenGroupChanges.equals(oldName) )
463                     re.printWhenGroupChanges = group.getName();
464                 
465                 if (re instanceof TextFieldReportElement &&
466                 ((TextFieldReportElement)re).getGroup().equals(oldName))
467                     ((TextFieldReportElement)re).setGroup(group.getName());
468             }
469             
470             
471             
472             // refersh bands frame....
473
((MainFrame)this.getParent()).getBandsDialog().updateBands();
474             ((MainFrame)this.getParent()).getElementPropertiesDialog().updateSelection();
475             this.getJReportFrame().setIsDocDirty(true);
476             this.getJReportFrame().repaint();
477             this.updateGroups();
478             ((MainFrame)this.getParent()).reportBandChanged( new ReportBandChangedEvent(this.getJReportFrame(), null, ReportBandChangedEvent.CHANGED ));
479         }
480         
481     }//GEN-LAST:event_jButtonModifyGroupActionPerformed
482

483     private void jButtonNewGroupActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonNewGroupActionPerformed
484
JRGroupDialog jrpd = new JRGroupDialog(this.getJReportFrame(), true);
485         jrpd.setVisible(true);
486         
487         if (jrpd.getDialogResult() == javax.swing.JOptionPane.OK_OPTION) {
488             Group g = new it.businesslogic.ireport.Group(this.getJReportFrame().getReport(), jrpd.getGroupName());
489             g.setGroupExpression( jrpd.getExpression());
490             g.setIsReprintHeaderOnEachPage(jrpd.isPrintHeaderEachPage() );
491             g.setIsResetPageNumber( jrpd.isResetPageNumber() );
492             g.setIsStartNewColumn( jrpd.isStartNewColumn());
493             g.setIsStartNewPage( jrpd.isStartNewPage());
494             g.setMinHeightToStartNewPage( jrpd.getMinHeightStartNewPage() );
495             
496             g.getGroupHeader().setHeight( jrpd.getHeaderBandHeight());
497             g.getGroupFooter().setHeight( jrpd.getFooterBandHeight());
498             
499             this.getJReportFrame().getReport().addGroup(g);
500             this.getJReportFrame().setIsDocDirty(true);
501             this.getJReportFrame().repaint();
502             this.updateGroups();
503             
504             // refersh bands frame....
505
((MainFrame)this.getParent()).getBandsDialog().updateBands();
506             ((MainFrame)this.getParent()).getElementPropertiesDialog().updateBands();
507             ((MainFrame)this.getParent()).getElementPropertiesDialog().updateGroups();
508             ((MainFrame)this.getParent()).reportBandChanged( new ReportBandChangedEvent(this.getJReportFrame(), null, ReportBandChangedEvent.ADDED ));
509         }
510     }//GEN-LAST:event_jButtonNewGroupActionPerformed
511

512     /** Closes the dialog */
513     private void closeDialog(java.awt.event.WindowEvent JavaDoc evt) {//GEN-FIRST:event_closeDialog
514
setVisible(false);
515         dispose();
516     }//GEN-LAST:event_closeDialog
517

518     /**
519      * @param args the command line arguments
520      */

521     public static void main(String JavaDoc args[]) {
522         new GroupsDialog(new javax.swing.JFrame JavaDoc(), true).setVisible(true);
523     }
524     
525     /** Getter for property jReportFrame.
526      * @return Value of property jReportFrame.
527      *
528      */

529     public it.businesslogic.ireport.gui.JReportFrame getJReportFrame() {
530         return jReportFrame;
531     }
532     
533     /** Setter for property jReportFrame.
534      * @param jReportFrame New value of property jReportFrame.
535      *
536      */

537     public void setJReportFrame(it.businesslogic.ireport.gui.JReportFrame jReportFrame) {
538         this.jReportFrame = jReportFrame;
539         
540         // Update all...
541
if (jReportFrame == null) {
542             setVisible(false);
543             return;
544         }
545         
546         this.setTitle(jReportFrame.getReport().getName()+" groups...");
547         if (isVisible()) {
548             updateGroups();
549         }
550     }
551     
552     
553     public void setVisible(boolean visible) {
554         if (visible == isVisible()) return;
555         super.setVisible(visible);
556         if (visible == true) {
557             this.setJReportFrame(jReportFrame);
558         }
559     }
560     public void applyI18n(){
561                 // Start autogenerated code ----------------------
562
jButtonDeleteGroup.setText(I18n.getString("groupsDialog.buttonDeleteGroup","Delete"));
563                 jButtonModifyGroup.setText(I18n.getString("groupsDialog.buttonModifyGroup","Modify"));
564                 jButtonMoveDownGroup.setText(I18n.getString("groupsDialog.buttonMoveDownGroup","Move Down"));
565                 jButtonMoveUpGroup.setText(I18n.getString("groupsDialog.buttonMoveUpGroup","Move Up"));
566                 jButtonNewGroup.setText(I18n.getString("groupsDialog.buttonNewGroup","New"));
567                 // End autogenerated code ----------------------
568

569                 jTableGroups.getColumnModel().getColumn(0).setHeaderValue( I18n.getString("groupsDialog.tablecolumn.groupName","Group name") );
570                         
571     }
572 }
573
Popular Tags