1 32 33 package it.businesslogic.ireport.gui.locale; 34 import it.businesslogic.ireport.util.I18n; 35 36 40 public class TimeZoneDialog extends javax.swing.JDialog { 41 42 private int dialogResult = javax.swing.JOptionPane.CANCEL_OPTION; 43 44 private String reportTimeZoneId = null; 45 46 47 public TimeZoneDialog(java.awt.Dialog parent, boolean modal) { 48 super(parent, modal); 49 initAll(); 50 } 51 52 public TimeZoneDialog(java.awt.Frame parent, boolean modal) { 53 super(parent, modal); 54 initAll(); 55 } 56 57 public void initAll() 58 { 59 initComponents(); 60 61 62 String [] tzids = java.util.TimeZone.getAvailableIDs(); 63 64 java.util.Arrays.sort( tzids ); 65 66 jComboBox1.addItem(I18n.getString("timezone.default","Default") ); 67 for (int i=0; i<tzids.length; ++i) 68 { 69 System.out.println(""+tzids[i]); 70 java.util.TimeZone tz = java.util.TimeZone.getTimeZone(tzids[i]); 71 jComboBox1.addItem(new TimeZoneWrapper(tz)); 72 } 73 74 jComboBox1.setSelectedIndex(0); 75 76 it.businesslogic.ireport.util.Misc.centerFrame(this); 77 78 javax.swing.KeyStroke escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false); 79 javax.swing.Action escapeAction = new javax.swing.AbstractAction () { 80 public void actionPerformed(java.awt.event.ActionEvent e) { 81 jButton2ActionPerformed(e); 82 } 83 }; 84 85 getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE"); 86 getRootPane().getActionMap().put("ESCAPE", escapeAction); 87 88 applyI18n(); 89 this.getRootPane().setDefaultButton(this.jButton1); 91 } 92 93 public int getDialogResult() { 94 return dialogResult; 95 } 96 97 public void setDialogResult(int dialogResult) { 98 this.dialogResult = dialogResult; 99 } 100 101 public String getReportTimeZoneId() { 102 return reportTimeZoneId; 103 } 104 105 110 private void initComponents() { 112 java.awt.GridBagConstraints gridBagConstraints; 113 114 jPanel2 = new javax.swing.JPanel (); 115 jComboBox1 = new javax.swing.JComboBox (); 116 jPanel1 = new javax.swing.JPanel (); 117 jButton1 = new javax.swing.JButton (); 118 jButton2 = new javax.swing.JButton (); 119 120 getContentPane().setLayout(new java.awt.GridBagLayout ()); 121 122 setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); 123 setResizable(false); 124 jPanel2.setLayout(new java.awt.GridBagLayout ()); 125 126 jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Time Zone", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font ("Dialog", 0, 11))); 127 jPanel2.setMinimumSize(new java.awt.Dimension (350, 80)); 128 jPanel2.setPreferredSize(new java.awt.Dimension (400, 50)); 129 jComboBox1.setMaximumRowCount(15); 130 jComboBox1.setMinimumSize(new java.awt.Dimension (23, 23)); 131 jComboBox1.setPreferredSize(new java.awt.Dimension (27, 23)); 132 gridBagConstraints = new java.awt.GridBagConstraints (); 133 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 134 gridBagConstraints.weightx = 1.0; 135 gridBagConstraints.insets = new java.awt.Insets (0, 4, 0, 4); 136 jPanel2.add(jComboBox1, gridBagConstraints); 137 138 gridBagConstraints = new java.awt.GridBagConstraints (); 139 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 140 gridBagConstraints.ipadx = 4; 141 gridBagConstraints.ipady = 4; 142 gridBagConstraints.insets = new java.awt.Insets (4, 4, 4, 4); 143 getContentPane().add(jPanel2, gridBagConstraints); 144 145 jPanel1.setLayout(new java.awt.GridBagLayout ()); 146 147 jButton1.setText("OK"); 148 jButton1.addActionListener(new java.awt.event.ActionListener () { 149 public void actionPerformed(java.awt.event.ActionEvent evt) { 150 jButton1ActionPerformed(evt); 151 } 152 }); 153 154 gridBagConstraints = new java.awt.GridBagConstraints (); 155 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 156 gridBagConstraints.weightx = 1.0; 157 gridBagConstraints.insets = new java.awt.Insets (4, 0, 4, 4); 158 jPanel1.add(jButton1, gridBagConstraints); 159 160 jButton2.setText("Cancel"); 161 jButton2.addActionListener(new java.awt.event.ActionListener () { 162 public void actionPerformed(java.awt.event.ActionEvent evt) { 163 jButton2ActionPerformed(evt); 164 } 165 }); 166 167 gridBagConstraints = new java.awt.GridBagConstraints (); 168 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 169 gridBagConstraints.insets = new java.awt.Insets (4, 0, 4, 4); 170 jPanel1.add(jButton2, gridBagConstraints); 171 172 gridBagConstraints = new java.awt.GridBagConstraints (); 173 gridBagConstraints.gridx = 0; 174 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 175 gridBagConstraints.weightx = 1.0; 176 gridBagConstraints.weighty = 1.0; 177 getContentPane().add(jPanel1, gridBagConstraints); 178 179 pack(); 180 } 182 private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { this.setDialogResult( javax.swing.JOptionPane.CANCEL_OPTION); 184 this.setVisible(false); 185 this.dispose(); 186 } 188 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 190 191 if (jComboBox1.getSelectedIndex() == 0) 192 { 193 this.reportTimeZoneId = null; 194 } 195 else 196 { 197 this.reportTimeZoneId = ((TimeZoneWrapper)jComboBox1.getSelectedItem()).getTimeZone().getID(); 198 } 199 200 this.setDialogResult(javax.swing.JOptionPane.OK_OPTION); 201 202 this.setVisible(false); 203 this.dispose(); 204 } 206 207 public void setReportTimeZoneId(String reportTimeZoneId) { 208 this.reportTimeZoneId = reportTimeZoneId; 209 210 for (int i=1; i<jComboBox1.getItemCount(); ++i) 211 { 212 TimeZoneWrapper tzw = (TimeZoneWrapper) jComboBox1.getItemAt(i); 213 if (tzw.getTimeZone().getID().equals(reportTimeZoneId)) 214 { 215 jComboBox1.setSelectedIndex(i); 216 return; 217 } 218 } 219 220 if (jComboBox1.getItemCount() > 0) jComboBox1.setSelectedIndex(0); 221 } 222 223 224 private javax.swing.JButton jButton1; 226 private javax.swing.JButton jButton2; 227 private javax.swing.JComboBox jComboBox1; 228 private javax.swing.JPanel jPanel1; 229 private javax.swing.JPanel jPanel2; 230 232 public void applyI18n(){ 233 jButton1.setText(I18n.getString("timeZoneDialog.button1","OK")); 235 jButton2.setText(I18n.getString("timeZoneDialog.button2","Cancel")); 236 ((javax.swing.border.TitledBorder )jPanel1.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("timeZoneDialog.panelBorder.TimeZone","Time Zone") ); 238 } 239 } 240 | Popular Tags |