1 32 33 package it.businesslogic.ireport.chart; 34 35 import it.businesslogic.ireport.SubDataset; 36 import it.businesslogic.ireport.util.I18n; 37 38 42 public class TimeSeriesDialog extends javax.swing.JDialog { 43 44 private String seriesExpression = ""; 45 private String timePeriodExpression = ""; 46 private String valueExpression = ""; 47 private String labelExpression = ""; 48 49 private int dialogResult = javax.swing.JOptionPane.CANCEL_OPTION; 50 51 52 public TimeSeriesDialog(java.awt.Frame parent, boolean modal) { 53 super(parent, modal); 54 initComponents(); 55 applyI18n(); 56 57 this.setSize(500,500); 58 it.businesslogic.ireport.util.Misc.centerFrame(this); 59 60 javax.swing.KeyStroke escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false); 61 javax.swing.Action escapeAction = new javax.swing.AbstractAction () { 62 public void actionPerformed(java.awt.event.ActionEvent e) { 63 jButtonCancelActionPerformed(e); 64 } 65 }; 66 67 getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE"); 68 getRootPane().getActionMap().put("ESCAPE", escapeAction); 69 70 71 this.getRootPane().setDefaultButton(this.jButtonOK); 73 } 74 75 76 79 public void setSubDataset( SubDataset sds ) 80 { 81 jRTextExpressionLabel.setSubDataset(sds); 82 jRTextExpressionSeries.setSubDataset(sds); 83 jRTextExpressionTimePeriod.setSubDataset(sds); 84 jRTextExpressionValue.setSubDataset(sds); 85 sectionItemHyperlinkPanel1.setSubDataset( sds); 86 } 87 88 93 private void initComponents() { 95 java.awt.GridBagConstraints gridBagConstraints; 96 97 jTabbedPane1 = new javax.swing.JTabbedPane (); 98 jPanel1 = new javax.swing.JPanel (); 99 jLabelSeriesExpression = new javax.swing.JLabel (); 100 jLabelTimePeriodExpression = new javax.swing.JLabel (); 101 jLabelValueExpression = new javax.swing.JLabel (); 102 jLabelLabelExpression = new javax.swing.JLabel (); 103 jRTextExpressionSeries = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 104 jRTextExpressionTimePeriod = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 105 jRTextExpressionValue = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 106 jRTextExpressionLabel = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 107 sectionItemHyperlinkPanel1 = new it.businesslogic.ireport.chart.gui.SectionItemHyperlinkPanel(); 108 jPanel6 = new javax.swing.JPanel (); 109 jPanel7 = new javax.swing.JPanel (); 110 jButtonOK = new javax.swing.JButton (); 111 jButtonCancel = new javax.swing.JButton (); 112 113 getContentPane().setLayout(new java.awt.GridBagLayout ()); 114 115 setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); 116 setTitle("Time series"); 117 jPanel1.setLayout(new java.awt.GridBagLayout ()); 118 119 jLabelSeriesExpression.setText("Series expression (required)"); 120 gridBagConstraints = new java.awt.GridBagConstraints (); 121 gridBagConstraints.gridx = 0; 122 gridBagConstraints.gridy = 0; 123 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 124 gridBagConstraints.weightx = 1.0; 125 jPanel1.add(jLabelSeriesExpression, gridBagConstraints); 126 127 jLabelTimePeriodExpression.setText("Time period expression"); 128 gridBagConstraints = new java.awt.GridBagConstraints (); 129 gridBagConstraints.gridx = 0; 130 gridBagConstraints.gridy = 2; 131 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 132 gridBagConstraints.weightx = 1.0; 133 gridBagConstraints.insets = new java.awt.Insets (4, 0, 0, 0); 134 jPanel1.add(jLabelTimePeriodExpression, gridBagConstraints); 135 136 jLabelValueExpression.setText("Value expression (required)"); 137 gridBagConstraints = new java.awt.GridBagConstraints (); 138 gridBagConstraints.gridx = 0; 139 gridBagConstraints.gridy = 10; 140 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 141 gridBagConstraints.weightx = 1.0; 142 gridBagConstraints.insets = new java.awt.Insets (4, 0, 0, 0); 143 jPanel1.add(jLabelValueExpression, gridBagConstraints); 144 145 jLabelLabelExpression.setText("Label expression"); 146 gridBagConstraints = new java.awt.GridBagConstraints (); 147 gridBagConstraints.gridx = 0; 148 gridBagConstraints.gridy = 14; 149 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 150 gridBagConstraints.weightx = 1.0; 151 gridBagConstraints.insets = new java.awt.Insets (4, 0, 0, 0); 152 jPanel1.add(jLabelLabelExpression, gridBagConstraints); 153 154 jRTextExpressionSeries.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 155 jRTextExpressionSeries.setElectricScroll(0); 156 jRTextExpressionSeries.setMinimumSize(new java.awt.Dimension (10, 10)); 157 jRTextExpressionSeries.setPreferredSize(new java.awt.Dimension (10, 10)); 158 gridBagConstraints = new java.awt.GridBagConstraints (); 159 gridBagConstraints.gridx = 0; 160 gridBagConstraints.gridy = 1; 161 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 162 gridBagConstraints.weightx = 1.0; 163 gridBagConstraints.weighty = 1.0; 164 jPanel1.add(jRTextExpressionSeries, gridBagConstraints); 165 166 jRTextExpressionTimePeriod.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 167 jRTextExpressionTimePeriod.setElectricScroll(0); 168 jRTextExpressionTimePeriod.setMinimumSize(new java.awt.Dimension (10, 10)); 169 jRTextExpressionTimePeriod.setPreferredSize(new java.awt.Dimension (10, 10)); 170 gridBagConstraints = new java.awt.GridBagConstraints (); 171 gridBagConstraints.gridx = 0; 172 gridBagConstraints.gridy = 3; 173 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 174 gridBagConstraints.weightx = 1.0; 175 gridBagConstraints.weighty = 1.0; 176 jPanel1.add(jRTextExpressionTimePeriod, gridBagConstraints); 177 178 jRTextExpressionValue.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 179 jRTextExpressionValue.setElectricScroll(0); 180 jRTextExpressionValue.setMinimumSize(new java.awt.Dimension (10, 10)); 181 jRTextExpressionValue.setPreferredSize(new java.awt.Dimension (10, 10)); 182 gridBagConstraints = new java.awt.GridBagConstraints (); 183 gridBagConstraints.gridx = 0; 184 gridBagConstraints.gridy = 11; 185 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 186 gridBagConstraints.weightx = 1.0; 187 gridBagConstraints.weighty = 1.0; 188 jPanel1.add(jRTextExpressionValue, gridBagConstraints); 189 190 jRTextExpressionLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 191 jRTextExpressionLabel.setElectricScroll(0); 192 jRTextExpressionLabel.setMinimumSize(new java.awt.Dimension (10, 10)); 193 jRTextExpressionLabel.setPreferredSize(new java.awt.Dimension (10, 10)); 194 gridBagConstraints = new java.awt.GridBagConstraints (); 195 gridBagConstraints.gridx = 0; 196 gridBagConstraints.gridy = 15; 197 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 198 gridBagConstraints.weightx = 1.0; 199 gridBagConstraints.weighty = 1.0; 200 jPanel1.add(jRTextExpressionLabel, gridBagConstraints); 201 202 jTabbedPane1.addTab("Data", jPanel1); 203 204 jTabbedPane1.addTab("Item hyperlink", sectionItemHyperlinkPanel1); 205 206 gridBagConstraints = new java.awt.GridBagConstraints (); 207 gridBagConstraints.gridwidth = 2; 208 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 209 gridBagConstraints.weightx = 1.0; 210 gridBagConstraints.weighty = 1.0; 211 getContentPane().add(jTabbedPane1, gridBagConstraints); 212 213 jPanel6.setLayout(new java.awt.GridBagLayout ()); 214 215 gridBagConstraints = new java.awt.GridBagConstraints (); 216 gridBagConstraints.gridheight = 2; 217 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 218 gridBagConstraints.weightx = 1.0; 219 gridBagConstraints.weighty = 1.0; 220 jPanel6.add(jPanel7, gridBagConstraints); 221 222 jButtonOK.setMnemonic('o'); 223 jButtonOK.setText("OK"); 224 jButtonOK.addActionListener(new java.awt.event.ActionListener () { 225 public void actionPerformed(java.awt.event.ActionEvent evt) { 226 jButtonOKActionPerformed(evt); 227 } 228 }); 229 230 gridBagConstraints = new java.awt.GridBagConstraints (); 231 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 232 gridBagConstraints.insets = new java.awt.Insets (4, 4, 4, 4); 233 jPanel6.add(jButtonOK, gridBagConstraints); 234 235 jButtonCancel.setMnemonic('c'); 236 jButtonCancel.setText("Cancel"); 237 jButtonCancel.addActionListener(new java.awt.event.ActionListener () { 238 public void actionPerformed(java.awt.event.ActionEvent evt) { 239 jButtonCancelActionPerformed(evt); 240 } 241 }); 242 243 gridBagConstraints = new java.awt.GridBagConstraints (); 244 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 245 gridBagConstraints.insets = new java.awt.Insets (4, 0, 4, 0); 246 jPanel6.add(jButtonCancel, gridBagConstraints); 247 248 gridBagConstraints = new java.awt.GridBagConstraints (); 249 gridBagConstraints.gridx = 0; 250 gridBagConstraints.gridy = 18; 251 gridBagConstraints.gridwidth = 2; 252 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 253 gridBagConstraints.weightx = 1.0; 254 getContentPane().add(jPanel6, gridBagConstraints); 255 256 pack(); 257 } 259 private void jButtonCancelActionPerformed(java.awt.event.ActionEvent evt) { this.setVisible(false); 261 this.dispose(); 262 } 264 private void jButtonOKActionPerformed(java.awt.event.ActionEvent evt) { 266 seriesExpression = jRTextExpressionSeries.getText(); 267 setTimePeriodExpression(jRTextExpressionTimePeriod.getText()); 268 valueExpression = jRTextExpressionValue.getText(); 269 labelExpression = jRTextExpressionLabel.getText(); 270 271 272 java.text.MessageFormat formatter = new java.text.MessageFormat ( it.businesslogic.ireport.util.I18n.getString("gui.notvalidexp","{0} cannot be blank!") ); 273 274 if (seriesExpression.trim().length() == 0) { 275 276 javax.swing.JOptionPane.showMessageDialog(this, formatter.format(new Object []{it.businesslogic.ireport.util.I18n.getString("charts.seriesExpression","Series expression")}) ,I18n.getString("message.title.invalidExpression","Invalid expression"),javax.swing.JOptionPane.ERROR_MESSAGE); 277 return; 278 } 279 280 if (getTimePeriodExpression().trim().length() == 0) { 281 javax.swing.JOptionPane.showMessageDialog(this, formatter.format(new Object []{it.businesslogic.ireport.util.I18n.getString("charts.timePeriodExpression","Time period expression")}) ,I18n.getString("message.title.invalidExpression","Invalid expression"),javax.swing.JOptionPane.ERROR_MESSAGE); 282 return; 283 } 284 285 if (valueExpression.trim().length() == 0) { 286 javax.swing.JOptionPane.showMessageDialog(this, formatter.format(new Object []{it.businesslogic.ireport.util.I18n.getString("charts.valueExpression","Value expression")}) ,I18n.getString("message.title.invalidExpression","Invalid expression"),javax.swing.JOptionPane.ERROR_MESSAGE); 287 return; 288 } 289 290 this.setDialogResult(javax.swing.JOptionPane.OK_OPTION); 291 this.setVisible(false); 292 this.dispose(); 293 } 295 public String getSeriesExpression() { 296 return seriesExpression; 297 } 298 299 public void setSeriesExpression(String seriesExpression) { 300 this.seriesExpression = seriesExpression; 301 jRTextExpressionSeries.setText( seriesExpression ); 302 } 303 304 305 public String getValueExpression() { 306 return valueExpression; 307 } 308 309 public void setValueExpression(String valueExpression) { 310 this.valueExpression = valueExpression; 311 jRTextExpressionValue.setText( valueExpression ); 312 } 313 314 public String getLabelExpression() { 315 return labelExpression; 316 } 317 318 public void setLabelExpression(String labelExpression) { 319 this.labelExpression = labelExpression; 320 jRTextExpressionLabel.setText( labelExpression ); 321 } 322 323 public void setSectionItemHyperlink(SectionItemHyperlink sectionItemHyperlink) 324 { 325 sectionItemHyperlinkPanel1.setSectionItemHyperlink( sectionItemHyperlink.cloneMe()); 326 } 327 328 public SectionItemHyperlink getSectionItemHyperlink() 329 { 330 return sectionItemHyperlinkPanel1.getSectionItemHyperlink(); 331 } 332 333 public int getDialogResult() { 334 return dialogResult; 335 } 336 337 public void setDialogResult(int dialogResult) { 338 this.dialogResult = dialogResult; 339 } 340 341 private javax.swing.JButton jButtonCancel; 343 private javax.swing.JButton jButtonOK; 344 private javax.swing.JLabel jLabelLabelExpression; 345 private javax.swing.JLabel jLabelSeriesExpression; 346 private javax.swing.JLabel jLabelTimePeriodExpression; 347 private javax.swing.JLabel jLabelValueExpression; 348 private javax.swing.JPanel jPanel1; 349 private javax.swing.JPanel jPanel6; 350 private javax.swing.JPanel jPanel7; 351 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionLabel; 352 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionSeries; 353 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionTimePeriod; 354 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionValue; 355 private javax.swing.JTabbedPane jTabbedPane1; 356 private it.businesslogic.ireport.chart.gui.SectionItemHyperlinkPanel sectionItemHyperlinkPanel1; 357 359 public void applyI18n() 360 { 361 jButtonOK.setText( it.businesslogic.ireport.util.I18n.getString("ok","Ok")); 364 jButtonCancel.setText( it.businesslogic.ireport.util.I18n.getString("cancel","Cancel")); 365 366 jLabelTimePeriodExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.timePeriodExpression","Time period expression")); 367 jLabelSeriesExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.seriesExpression","Series expression")); 368 jLabelValueExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.valueExpression","Value expression")); 369 jLabelLabelExpression.setText( it.businesslogic.ireport.util.I18n.getString("charts.labelExpression","Label expression")); 370 371 jTabbedPane1.setTitleAt(0,I18n.getString("chartSeries.tab.Data","Data")); 372 jTabbedPane1.setTitleAt(1,I18n.getString("chartSeries.tab.ItemHyperlink","Item hyperlink")); 373 374 this.getRootPane().updateUI(); 375 } 376 377 public String getTimePeriodExpression() { 378 return timePeriodExpression; 379 } 380 381 public void setTimePeriodExpression(String timePeriodExpression) { 382 this.timePeriodExpression = timePeriodExpression; 383 jRTextExpressionTimePeriod.setText( timePeriodExpression ); 384 } 385 } 386 | Popular Tags |