KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > it > businesslogic > ireport > gui > prompt > JDateTimePicker


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  * JDateTimePicker.java
28  *
29  * Created on August 30, 2006, 12:33 PM
30  *
31  */

32
33 package it.businesslogic.ireport.gui.prompt;
34
35 import it.businesslogic.ireport.util.I18n;
36 import it.businesslogic.ireport.util.LanguageChangedEvent;
37 import it.businesslogic.ireport.util.LanguageChangedListener;
38 import java.awt.BorderLayout JavaDoc;
39 import java.util.GregorianCalendar JavaDoc;
40 import java.util.Locale JavaDoc;
41 import javax.swing.SpinnerNumberModel JavaDoc;
42
43 /**
44  *
45  * @author gtoffoli
46  */

47 public class JDateTimePicker extends javax.swing.JPanel JavaDoc implements LanguageChangedListener {
48     
49     private Locale JavaDoc locale = null;
50     private com.michaelbaranov.microba.calendar.DatePicker datePicker = null;
51     
52     /** Creates new form NewJPanel */
53     public JDateTimePicker() {
54         initComponents();
55         
56         jSpinnerH.setModel( new javax.swing.SpinnerNumberModel JavaDoc(0,0,23,1));
57         jSpinnerM.setModel( new javax.swing.SpinnerNumberModel JavaDoc(0,0,59,1));
58         jSpinnerS.setModel( new javax.swing.SpinnerNumberModel JavaDoc(0,0,59,1));
59         
60         datePicker = new com.michaelbaranov.microba.calendar.DatePicker();
61         jPanel1.add(datePicker, BorderLayout.CENTER);
62         setLocale( I18n.getCurrentLocale() );
63         setDate(new java.util.Date JavaDoc());
64         
65         it.businesslogic.ireport.util.I18n.addOnLanguageChangedListener(this);
66         applyI18n();
67     }
68
69     
70     public void setLocale(Locale JavaDoc locale) {
71         this.locale = locale;
72         datePicker.setLocale(locale );
73     }
74
75     public Locale JavaDoc getLocale() {
76         return locale;
77     }
78     
79     public void setDate(java.util.Date JavaDoc d)
80     {
81         if (d == null) return;
82         GregorianCalendar JavaDoc gc = null;
83         
84         if (getLocale() != null)
85          gc = new GregorianCalendar JavaDoc(getLocale());
86         else
87          gc = new GregorianCalendar JavaDoc();
88         
89         gc.setTime( d );
90         
91         jSpinnerH.setValue( new Integer JavaDoc(gc.get( gc.HOUR_OF_DAY)) );
92         jSpinnerM.setValue( new Integer JavaDoc(gc.get( gc.MINUTE)) );
93         jSpinnerS.setValue( new Integer JavaDoc(gc.get( gc.SECOND)) );
94         try {
95             datePicker.setDate( d );
96         } catch (Exception JavaDoc ex)
97         {
98             
99         }
100     }
101
102     public java.util.Date JavaDoc getDate()
103     {
104          if (datePicker.getDate() == null) return null;
105          GregorianCalendar JavaDoc gc = new GregorianCalendar JavaDoc();
106          gc.setTime( datePicker.getDate() );
107          gc.set( gc.HOUR_OF_DAY, ((SpinnerNumberModel JavaDoc)jSpinnerH.getModel()).getNumber().intValue() );
108          gc.set( gc.MINUTE, ((SpinnerNumberModel JavaDoc)jSpinnerM.getModel()).getNumber().intValue());
109          gc.set( gc.MINUTE, ((SpinnerNumberModel JavaDoc)jSpinnerS.getModel()).getNumber().intValue() );
110          
111          return gc.getTime();
112     }
113     
114     public void languageChanged(LanguageChangedEvent evt) {
115         applyI18n();
116     }
117     
118     public void applyI18n() {
119                 // Start autogenerated code ----------------------
120
jLabelMin.setText(I18n.getString("jDateTimePicker.labelMin",":"));
121                 jLabelSec.setText(I18n.getString("jDateTimePicker.labelSec",":"));
122                 // End autogenerated code ----------------------
123
jLabelH.setText(it.businesslogic.ireport.util.I18n.getString("time_picker", "Time"));
124       }
125         
126     
127     /** This method is called from within the constructor to
128      * initialize the form.
129      * WARNING: Do NOT modify this code. The content of this method is
130      * always regenerated by the Form Editor.
131      */

132     // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
133
private void initComponents() {
134         java.awt.GridBagConstraints JavaDoc gridBagConstraints;
135
136         jPanel1 = new javax.swing.JPanel JavaDoc();
137         jLabelH = new javax.swing.JLabel JavaDoc();
138         jSpinnerH = new javax.swing.JSpinner JavaDoc();
139         jLabelMin = new javax.swing.JLabel JavaDoc();
140         jSpinnerM = new javax.swing.JSpinner JavaDoc();
141         jLabelSec = new javax.swing.JLabel JavaDoc();
142         jSpinnerS = new javax.swing.JSpinner JavaDoc();
143
144         setLayout(new java.awt.GridBagLayout JavaDoc());
145
146         setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
147         jPanel1.setLayout(new java.awt.BorderLayout JavaDoc());
148
149         jPanel1.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
150         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
151         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
152         gridBagConstraints.weightx = 1.0;
153         gridBagConstraints.weighty = 1.0;
154         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 0, 0, 4);
155         add(jPanel1, gridBagConstraints);
156
157         jLabelH.setText("Time");
158         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
159         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 0, 0, 2);
160         add(jLabelH, gridBagConstraints);
161
162         jSpinnerH.setMinimumSize(new java.awt.Dimension JavaDoc(35, 18));
163         jSpinnerH.setPreferredSize(new java.awt.Dimension JavaDoc(35, 18));
164         add(jSpinnerH, new java.awt.GridBagConstraints JavaDoc());
165
166         jLabelMin.setText(":");
167         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
168         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 2, 0, 2);
169         add(jLabelMin, gridBagConstraints);
170
171         jSpinnerM.setMinimumSize(new java.awt.Dimension JavaDoc(35, 18));
172         jSpinnerM.setPreferredSize(new java.awt.Dimension JavaDoc(35, 18));
173         add(jSpinnerM, new java.awt.GridBagConstraints JavaDoc());
174
175         jLabelSec.setText(":");
176         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
177         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 2, 0, 2);
178         add(jLabelSec, gridBagConstraints);
179
180         jSpinnerS.setMinimumSize(new java.awt.Dimension JavaDoc(35, 18));
181         jSpinnerS.setPreferredSize(new java.awt.Dimension JavaDoc(35, 18));
182         add(jSpinnerS, new java.awt.GridBagConstraints JavaDoc());
183
184     }// </editor-fold>//GEN-END:initComponents
185

186     
187     
188     // Variables declaration - do not modify
189
//GEN-BEGIN:variables
190
private javax.swing.JLabel JavaDoc jLabelH;
191     private javax.swing.JLabel JavaDoc jLabelMin;
192     private javax.swing.JLabel JavaDoc jLabelSec;
193     private javax.swing.JPanel JavaDoc jPanel1;
194     private javax.swing.JSpinner JavaDoc jSpinnerH;
195     private javax.swing.JSpinner JavaDoc jSpinnerM;
196     private javax.swing.JSpinner JavaDoc jSpinnerS;
197     // End of variables declaration//GEN-END:variables
198

199 }
200
Popular Tags