KickJava   Java API By Example, From Geeks To Geeks.

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


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  * MaxRecordsDialog.java
28  *
29  * Created on 17 novembre 2004, 1.07
30  *
31  */

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

40 public class MaxRecordsDialog extends javax.swing.JDialog JavaDoc {
41     
42     private int dialogResult = javax.swing.JOptionPane.CANCEL_OPTION;
43     
44     private int maxRecords = 0;
45     
46     /** Creates new form NewLocaleFileDialog */
47     public MaxRecordsDialog(java.awt.Dialog JavaDoc parent, boolean modal) {
48         super(parent, modal);
49         
50         initAll();
51     }
52     
53      public MaxRecordsDialog(java.awt.Frame JavaDoc parent, boolean modal) {
54         super(parent, modal);
55         
56         
57         initAll();
58     }
59      
60      public void initAll()
61      {
62          initComponents();
63          applyI18n();
64          this.setSize(400,150);
65         it.businesslogic.ireport.util.Misc.centerFrame(this);
66         javax.swing.KeyStroke JavaDoc escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false);
67         javax.swing.Action JavaDoc escapeAction = new javax.swing.AbstractAction JavaDoc() {
68             public void actionPerformed(java.awt.event.ActionEvent JavaDoc e) {
69                 jButton2ActionPerformed(e);
70             }
71         };
72        
73         getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE");
74         getRootPane().getActionMap().put("ESCAPE", escapeAction);
75
76
77         //to make the default button ...
78
this.getRootPane().setDefaultButton(this.jButton1);
79      }
80     
81     public int getDialogResult() {
82         return dialogResult;
83     }
84
85     public void setDialogResult(int dialogResult) {
86         this.dialogResult = dialogResult;
87     }
88     
89     /** This method is called from within the constructor to
90      * initialize the form.
91      * WARNING: Do NOT modify this code. The content of this method is
92      * always regenerated by the Form Editor.
93      */

94     // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
95
private void initComponents() {
96         java.awt.GridBagConstraints JavaDoc gridBagConstraints;
97
98         jPanel2 = new javax.swing.JPanel JavaDoc();
99         jCheckBox1 = new javax.swing.JCheckBox JavaDoc();
100         jLabel1 = new javax.swing.JLabel JavaDoc();
101         jNumberFieldTop = new it.businesslogic.ireport.gui.JNumberField();
102         jPanel1 = new javax.swing.JPanel JavaDoc();
103         jButton1 = new javax.swing.JButton JavaDoc();
104         jButton2 = new javax.swing.JButton JavaDoc();
105
106         getContentPane().setLayout(new java.awt.GridBagLayout JavaDoc());
107
108         setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
109         setResizable(false);
110         jPanel2.setLayout(new java.awt.GridBagLayout JavaDoc());
111
112         jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "REPORT MAX COUNT", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font JavaDoc("Dialog", 0, 11)));
113         jPanel2.setMinimumSize(new java.awt.Dimension JavaDoc(350, 80));
114         jPanel2.setPreferredSize(new java.awt.Dimension JavaDoc(350, 80));
115         jCheckBox1.setText("Limit number of records from the report data source");
116         jCheckBox1.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
117         jCheckBox1.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
118         jCheckBox1.addItemListener(new java.awt.event.ItemListener JavaDoc() {
119             public void itemStateChanged(java.awt.event.ItemEvent JavaDoc evt) {
120                 jCheckBox1ItemStateChanged(evt);
121             }
122         });
123
124         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
125         gridBagConstraints.gridwidth = 2;
126         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
127         gridBagConstraints.weightx = 1.0;
128         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
129         jPanel2.add(jCheckBox1, gridBagConstraints);
130
131         jLabel1.setText("Max number of records");
132         jLabel1.setEnabled(false);
133         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
134         gridBagConstraints.gridy = 1;
135         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 20, 0, 0);
136         jPanel2.add(jLabel1, gridBagConstraints);
137
138         jNumberFieldTop.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
139         jNumberFieldTop.setText("0");
140         try {
141             jNumberFieldTop.setDecimals(0);
142         } catch (java.beans.PropertyVetoException JavaDoc e1) {
143             e1.printStackTrace();
144         }
145         jNumberFieldTop.setEnabled(false);
146         try {
147             jNumberFieldTop.setInteger(true);
148         } catch (java.beans.PropertyVetoException JavaDoc e1) {
149             e1.printStackTrace();
150         }
151         jNumberFieldTop.setMinimumSize(new java.awt.Dimension JavaDoc(60, 21));
152         jNumberFieldTop.setPreferredSize(new java.awt.Dimension JavaDoc(60, 21));
153         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
154         gridBagConstraints.gridx = 1;
155         gridBagConstraints.gridy = 1;
156         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
157         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 5, 2, 0);
158         jPanel2.add(jNumberFieldTop, gridBagConstraints);
159
160         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
161         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
162         gridBagConstraints.ipadx = 4;
163         gridBagConstraints.ipady = 4;
164         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
165         getContentPane().add(jPanel2, gridBagConstraints);
166
167         jPanel1.setLayout(new java.awt.GridBagLayout JavaDoc());
168
169         jButton1.setText("OK");
170         jButton1.addActionListener(new java.awt.event.ActionListener JavaDoc() {
171             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
172                 jButton1ActionPerformed(evt);
173             }
174         });
175
176         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
177         gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
178         gridBagConstraints.weightx = 1.0;
179         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 0, 4, 4);
180         jPanel1.add(jButton1, gridBagConstraints);
181
182         jButton2.setText("Cancel");
183         jButton2.addActionListener(new java.awt.event.ActionListener JavaDoc() {
184             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
185                 jButton2ActionPerformed(evt);
186             }
187         });
188
189         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
190         gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
191         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 0, 4, 4);
192         jPanel1.add(jButton2, gridBagConstraints);
193
194         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
195         gridBagConstraints.gridx = 0;
196         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
197         gridBagConstraints.weightx = 1.0;
198         gridBagConstraints.weighty = 1.0;
199         getContentPane().add(jPanel1, gridBagConstraints);
200
201         pack();
202     }// </editor-fold>//GEN-END:initComponents
203

204     private void jCheckBox1ItemStateChanged(java.awt.event.ItemEvent JavaDoc evt) {//GEN-FIRST:event_jCheckBox1ItemStateChanged
205

206         if (jCheckBox1.isSelected())
207         {
208             jLabel1.setEnabled(true);
209             jNumberFieldTop.setEnabled(true);
210         }
211         else
212         {
213             jLabel1.setEnabled(false);
214             jNumberFieldTop.setEnabled(false);
215         }
216     }//GEN-LAST:event_jCheckBox1ItemStateChanged
217

218     private void jButton2ActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButton2ActionPerformed
219
this.setDialogResult( javax.swing.JOptionPane.CANCEL_OPTION);
220         this.setVisible(false);
221         this.dispose();
222     }//GEN-LAST:event_jButton2ActionPerformed
223

224     private void jButton1ActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButton1ActionPerformed
225

226         this.maxRecords = 0;
227         if (jCheckBox1.isSelected())
228         {
229             int max_count = (int)jNumberFieldTop.getValue();
230             if (max_count <= 0)
231             {
232                 javax.swing.JOptionPane.showMessageDialog(this,
233                         I18n.getString("messages.maxRecordsDialog.invalidNumber",
234                         "The number of records must be greater than 0.") );
235                 return;
236             }
237             this.maxRecords = max_count;
238         }
239                 
240         this.setDialogResult( javax.swing.JOptionPane.OK_OPTION);
241         this.setVisible(false);
242         this.dispose();
243     }//GEN-LAST:event_jButton1ActionPerformed
244

245
246
247     public int getMaxRecords() {
248         return maxRecords;
249     }
250
251     public void setMaxRecords(int maxRecords) {
252         this.maxRecords = maxRecords;
253         if (maxRecords > 0)
254         {
255             jCheckBox1.setSelected(true);
256             try {
257             jNumberFieldTop.setValue( maxRecords );
258             } catch (Exception JavaDoc ex){}
259         }
260         else
261         {
262             jCheckBox1.setSelected(false);
263             jNumberFieldTop.setEnabled(false);
264             try {
265             jNumberFieldTop.setValue( 0 );
266             } catch (Exception JavaDoc ex){}
267         }
268     }
269     
270     // Variables declaration - do not modify//GEN-BEGIN:variables
271
private javax.swing.JButton JavaDoc jButton1;
272     private javax.swing.JButton JavaDoc jButton2;
273     private javax.swing.JCheckBox JavaDoc jCheckBox1;
274     private javax.swing.JLabel JavaDoc jLabel1;
275     private it.businesslogic.ireport.gui.JNumberField jNumberFieldTop;
276     private javax.swing.JPanel JavaDoc jPanel1;
277     private javax.swing.JPanel JavaDoc jPanel2;
278     // End of variables declaration//GEN-END:variables
279

280     public void applyI18n(){
281                 // Start autogenerated code ----------------------
282
jCheckBox1.setText(I18n.getString("maxRecordsDialog.checkBox1","Limit number of records from the report data source"));
283                 // End autogenerated code ----------------------
284
// Start autogenerated code ----------------------
285
jButton1.setText(I18n.getString("maxRecordsDialog.button1","OK"));
286                 jButton2.setText(I18n.getString("maxRecordsDialog.button2","Cancel"));
287                 jLabel1.setText(I18n.getString("maxRecordsDialog.label1","Max number of records"));
288                 // End autogenerated code ----------------------
289
((javax.swing.border.TitledBorder JavaDoc)jPanel2.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("maxRecordsDialog.panelBorder.ReportMaxCount","REPORT MAX COUNT") );
290     }
291 }
292
Popular Tags