1 32 33 package it.businesslogic.ireport.crosstab.gui; 34 35 import it.businesslogic.ireport.SubDataset; 36 import it.businesslogic.ireport.crosstab.CrosstabColumnGroup; 37 import it.businesslogic.ireport.crosstab.CrosstabGroup; 38 import it.businesslogic.ireport.gui.MainFrame; 39 import it.businesslogic.ireport.gui.sheet.Tag; 40 import it.businesslogic.ireport.util.Misc; 41 import it.businesslogic.ireport.util.I18n; 42 43 44 47 public class CrosstabGroupDialog 48 extends javax.swing.JDialog 49 { 50 public static final int ROWGROUP = 0; 51 public static final int COLUMNGROUP = 1; 52 53 private CrosstabGroup tmpGroup = null; 54 private int groupType = 1; 55 56 63 public CrosstabGroupDialog(int groupType, java.awt.Frame parent, 64 boolean modal) 65 { 66 super(parent, modal); 67 initAll(groupType); 68 } 69 70 public CrosstabGroupDialog(int groupType, java.awt.Dialog parent, 71 boolean modal) 72 { 73 super(parent, modal); 74 initAll(groupType); 75 } 76 77 public void initAll(int groupType) 78 { 79 initComponents(); 80 81 jComboBoxBucketClass.addItem("java.lang.String"); 82 jComboBoxBucketClass.addItem("java.lang.Double"); 83 jComboBoxBucketClass.addItem("java.lang.Float"); 84 jComboBoxBucketClass.addItem("java.lang.Integer"); 85 jComboBoxBucketClass.addItem("java.lang.Long"); 86 jComboBoxBucketClass.addItem("java.lang.Short"); 87 jComboBoxBucketClass.addItem("java.math.BigDecimal"); 88 89 jComboBoxBucketClass.addItem("java.util.Date"); 90 jComboBoxBucketClass.addItem("java.sql.Timestamp"); 91 jComboBoxBucketClass.addItem("java.sql.Time"); 92 93 setGroupType(groupType); 94 95 Misc.centerFrame(this); 97 pack();javax.swing.KeyStroke escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false); 98 javax.swing.Action escapeAction = new javax.swing.AbstractAction () { 99 public void actionPerformed(java.awt.event.ActionEvent e) { 100 jButtonCancelActionPerformed(e); 101 } 102 }; 103 104 getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE"); 105 getRootPane().getActionMap().put("ESCAPE", escapeAction); 106 107 108 this.getRootPane().setDefaultButton(this.jButtonOK); 110 applyI18n(); 111 112 } 113 114 115 116 121 122 123 private void initComponents() { 125 java.awt.GridBagConstraints gridBagConstraints; 126 127 jLabel1 = new javax.swing.JLabel (); 128 jTextFieldName = new javax.swing.JTextField (); 129 jPanel1 = new javax.swing.JPanel (); 130 jPanel4 = new javax.swing.JPanel (); 131 jButtonOK = new javax.swing.JButton (); 132 jButtonCancel = new javax.swing.JButton (); 133 jLabelSize = new javax.swing.JLabel (); 134 jNumberFieldSize = new it.businesslogic.ireport.gui.JNumberField(); 135 jPanel2 = new javax.swing.JPanel (); 136 jLabel3 = new javax.swing.JLabel (); 137 jRTextExpressionAreaExpression = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 138 jLabel4 = new javax.swing.JLabel (); 139 jComboBoxOrder = new javax.swing.JComboBox (); 140 jLabel5 = new javax.swing.JLabel (); 141 jPanel5 = new javax.swing.JPanel (); 142 jLabel6 = new javax.swing.JLabel (); 143 jComboBoxBucketClass = new javax.swing.JComboBox (); 144 jRTextExpressionAreaComparatorExpression = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 145 jPanel3 = new javax.swing.JPanel (); 146 jComboBoxTotalPosition = new javax.swing.JComboBox (); 147 jComboBoxHeaderPosition = new javax.swing.JComboBox (); 148 jLabel2 = new javax.swing.JLabel (); 149 jLabel7 = new javax.swing.JLabel (); 150 151 getContentPane().setLayout(new java.awt.GridBagLayout ()); 152 153 setTitle("Add/modify crosstab group"); 154 setModal(true); 155 addWindowListener(new java.awt.event.WindowAdapter () { 156 public void windowClosing(java.awt.event.WindowEvent evt) { 157 closeDialog(evt); 158 } 159 }); 160 161 jLabel1.setText("Group name"); 162 gridBagConstraints = new java.awt.GridBagConstraints (); 163 gridBagConstraints.gridx = 0; 164 gridBagConstraints.gridy = 0; 165 gridBagConstraints.gridwidth = 3; 166 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 167 gridBagConstraints.insets = new java.awt.Insets (3, 3, 0, 3); 168 getContentPane().add(jLabel1, gridBagConstraints); 169 170 jTextFieldName.setPreferredSize(new java.awt.Dimension (360, 21)); 171 gridBagConstraints = new java.awt.GridBagConstraints (); 172 gridBagConstraints.gridx = 0; 173 gridBagConstraints.gridy = 1; 174 gridBagConstraints.gridwidth = 3; 175 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 176 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 177 gridBagConstraints.insets = new java.awt.Insets (0, 3, 3, 3); 178 getContentPane().add(jTextFieldName, gridBagConstraints); 179 180 jPanel1.setLayout(new java.awt.GridBagLayout ()); 181 182 jPanel1.setMinimumSize(new java.awt.Dimension (126, 40)); 183 jPanel1.setPreferredSize(new java.awt.Dimension (126, 40)); 184 gridBagConstraints = new java.awt.GridBagConstraints (); 185 gridBagConstraints.gridx = 0; 186 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 187 gridBagConstraints.weightx = 1.0; 188 gridBagConstraints.weighty = 1.0; 189 jPanel1.add(jPanel4, gridBagConstraints); 190 191 jButtonOK.setMnemonic('o'); 192 jButtonOK.setText("OK"); 193 jButtonOK.addActionListener(new java.awt.event.ActionListener () { 194 public void actionPerformed(java.awt.event.ActionEvent evt) { 195 jButtonOKActionPerformed(evt); 196 } 197 }); 198 199 gridBagConstraints = new java.awt.GridBagConstraints (); 200 gridBagConstraints.gridx = 1; 201 gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHEAST; 202 jPanel1.add(jButtonOK, gridBagConstraints); 203 204 jButtonCancel.setMnemonic('c'); 205 jButtonCancel.setText("Cancel"); 206 jButtonCancel.addActionListener(new java.awt.event.ActionListener () { 207 public void actionPerformed(java.awt.event.ActionEvent evt) { 208 jButtonCancelActionPerformed(evt); 209 } 210 }); 211 212 gridBagConstraints = new java.awt.GridBagConstraints (); 213 gridBagConstraints.gridx = 2; 214 gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHEAST; 215 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 216 jPanel1.add(jButtonCancel, gridBagConstraints); 217 218 gridBagConstraints = new java.awt.GridBagConstraints (); 219 gridBagConstraints.gridx = 0; 220 gridBagConstraints.gridy = 99; 221 gridBagConstraints.gridwidth = 3; 222 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 223 gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHEAST; 224 gridBagConstraints.weightx = 1.0; 225 gridBagConstraints.weighty = 1.0; 226 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 227 getContentPane().add(jPanel1, gridBagConstraints); 228 229 jLabelSize.setText("Group width / height"); 230 gridBagConstraints = new java.awt.GridBagConstraints (); 231 gridBagConstraints.gridx = 0; 232 gridBagConstraints.gridy = 2; 233 gridBagConstraints.gridwidth = 2; 234 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 235 getContentPane().add(jLabelSize, gridBagConstraints); 236 237 jNumberFieldSize.setColumns(4); 238 jNumberFieldSize.setHorizontalAlignment(javax.swing.JTextField.RIGHT); 239 try { 240 jNumberFieldSize.setDecimals(0); 241 } catch (java.beans.PropertyVetoException e1) { 242 e1.printStackTrace(); 243 } 244 jNumberFieldSize.setMinimumSize(new java.awt.Dimension (40, 21)); 245 jNumberFieldSize.setPreferredSize(new java.awt.Dimension (38, 21)); 246 gridBagConstraints = new java.awt.GridBagConstraints (); 247 gridBagConstraints.gridx = 2; 248 gridBagConstraints.gridy = 2; 249 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 250 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 251 getContentPane().add(jNumberFieldSize, gridBagConstraints); 252 253 jPanel2.setLayout(new java.awt.GridBagLayout ()); 254 255 jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Bucket", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font ("Dialog", 0, 11))); 256 jLabel3.setText("Bucket expression"); 257 gridBagConstraints = new java.awt.GridBagConstraints (); 258 gridBagConstraints.gridx = 0; 259 gridBagConstraints.gridy = 14; 260 gridBagConstraints.gridwidth = 2; 261 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 262 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 263 jPanel2.add(jLabel3, gridBagConstraints); 264 265 jRTextExpressionAreaExpression.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 266 jRTextExpressionAreaExpression.setCaretVisible(false); 267 jRTextExpressionAreaExpression.setElectricScroll(0); 268 jRTextExpressionAreaExpression.setMinimumSize(new java.awt.Dimension (657, 90)); 269 jRTextExpressionAreaExpression.setPreferredSize(new java.awt.Dimension (325, 100)); 270 gridBagConstraints = new java.awt.GridBagConstraints (); 271 gridBagConstraints.gridx = 0; 272 gridBagConstraints.gridy = 15; 273 gridBagConstraints.gridwidth = 2; 274 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 275 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 276 gridBagConstraints.weightx = 1.0; 277 gridBagConstraints.weighty = 1.0; 278 gridBagConstraints.insets = new java.awt.Insets (0, 3, 3, 3); 279 jPanel2.add(jRTextExpressionAreaExpression, gridBagConstraints); 280 281 jLabel4.setText("Order"); 282 gridBagConstraints = new java.awt.GridBagConstraints (); 283 gridBagConstraints.gridx = 0; 284 gridBagConstraints.gridy = 18; 285 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 286 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 287 jPanel2.add(jLabel4, gridBagConstraints); 288 289 gridBagConstraints = new java.awt.GridBagConstraints (); 290 gridBagConstraints.gridx = 1; 291 gridBagConstraints.gridy = 18; 292 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 293 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 294 gridBagConstraints.weightx = 1.0; 295 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 296 jPanel2.add(jComboBoxOrder, gridBagConstraints); 297 298 jLabel5.setText("Custom comparator expression"); 299 gridBagConstraints = new java.awt.GridBagConstraints (); 300 gridBagConstraints.gridx = 0; 301 gridBagConstraints.gridy = 20; 302 gridBagConstraints.gridwidth = 2; 303 gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHWEST; 304 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 305 jPanel2.add(jLabel5, gridBagConstraints); 306 307 jPanel5.setLayout(new java.awt.GridBagLayout ()); 308 309 jLabel6.setText("Class"); 310 gridBagConstraints = new java.awt.GridBagConstraints (); 311 gridBagConstraints.gridx = 0; 312 gridBagConstraints.gridy = 0; 313 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 314 gridBagConstraints.insets = new java.awt.Insets (0, 3, 0, 3); 315 jPanel5.add(jLabel6, gridBagConstraints); 316 317 jComboBoxBucketClass.setEditable(true); 318 gridBagConstraints = new java.awt.GridBagConstraints (); 319 gridBagConstraints.gridx = 1; 320 gridBagConstraints.gridy = 0; 321 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 322 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 323 gridBagConstraints.weightx = 1.0; 324 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 325 jPanel5.add(jComboBoxBucketClass, gridBagConstraints); 326 327 gridBagConstraints = new java.awt.GridBagConstraints (); 328 gridBagConstraints.gridx = 0; 329 gridBagConstraints.gridy = 1; 330 gridBagConstraints.gridwidth = 2; 331 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 332 gridBagConstraints.weightx = 1.0; 333 jPanel2.add(jPanel5, gridBagConstraints); 334 335 jRTextExpressionAreaComparatorExpression.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 336 jRTextExpressionAreaComparatorExpression.setCaretVisible(false); 337 jRTextExpressionAreaComparatorExpression.setElectricScroll(0); 338 jRTextExpressionAreaComparatorExpression.setMinimumSize(new java.awt.Dimension (657, 45)); 339 jRTextExpressionAreaComparatorExpression.setPreferredSize(new java.awt.Dimension (325, 45)); 340 gridBagConstraints = new java.awt.GridBagConstraints (); 341 gridBagConstraints.gridx = 0; 342 gridBagConstraints.gridy = 21; 343 gridBagConstraints.gridwidth = 2; 344 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 345 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 346 gridBagConstraints.weightx = 1.0; 347 gridBagConstraints.weighty = 1.0; 348 gridBagConstraints.insets = new java.awt.Insets (0, 3, 3, 3); 349 jPanel2.add(jRTextExpressionAreaComparatorExpression, gridBagConstraints); 350 351 gridBagConstraints = new java.awt.GridBagConstraints (); 352 gridBagConstraints.gridx = 0; 353 gridBagConstraints.gridy = 4; 354 gridBagConstraints.gridwidth = 3; 355 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 356 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 357 getContentPane().add(jPanel2, gridBagConstraints); 358 359 jPanel3.setLayout(new java.awt.GridBagLayout ()); 360 361 gridBagConstraints = new java.awt.GridBagConstraints (); 362 gridBagConstraints.gridx = 1; 363 gridBagConstraints.gridy = 4; 364 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 365 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 366 gridBagConstraints.weightx = 1.0; 367 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 368 jPanel3.add(jComboBoxTotalPosition, gridBagConstraints); 369 370 gridBagConstraints = new java.awt.GridBagConstraints (); 371 gridBagConstraints.gridx = 1; 372 gridBagConstraints.gridy = 1; 373 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 374 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 375 gridBagConstraints.weightx = 1.0; 376 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 377 jPanel3.add(jComboBoxHeaderPosition, gridBagConstraints); 378 379 jLabel2.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT); 380 jLabel2.setText("Print the group header on this position: "); 381 gridBagConstraints = new java.awt.GridBagConstraints (); 382 gridBagConstraints.gridx = 0; 383 gridBagConstraints.gridy = 1; 384 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 385 jPanel3.add(jLabel2, gridBagConstraints); 386 387 jLabel7.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT); 388 jLabel7.setText("Print the group total on this position: "); 389 gridBagConstraints = new java.awt.GridBagConstraints (); 390 gridBagConstraints.gridx = 0; 391 gridBagConstraints.gridy = 4; 392 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 393 jPanel3.add(jLabel7, gridBagConstraints); 394 395 gridBagConstraints = new java.awt.GridBagConstraints (); 396 gridBagConstraints.gridx = 0; 397 gridBagConstraints.gridwidth = 3; 398 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 399 gridBagConstraints.weightx = 1.0; 400 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 401 getContentPane().add(jPanel3, gridBagConstraints); 402 403 pack(); 404 java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); 405 java.awt.Dimension dialogSize = getSize(); 406 setLocation((screenSize.width-dialogSize.width)/2,(screenSize.height-dialogSize.height)/2); 407 } private void jButtonCancelActionPerformed(java.awt.event.ActionEvent evt) { 410 setVisible(false); 411 this.setDialogResult(javax.swing.JOptionPane.CANCEL_OPTION); 412 dispose(); 413 } 415 private void jButtonOKActionPerformed(java.awt.event.ActionEvent evt) { 417 418 if (this.jTextFieldName.getText().trim().length() <= 0) 419 { 420 javax.swing.JOptionPane.showMessageDialog(this, 421 I18n.getString("messages.crosstabGroupDialog.invalidGroup","Please insert a valid group name!"), 422 I18n.getString("messages.crosstabGroupDialog.invalidGroupCaption","Invalid group!"), 423 javax.swing.JOptionPane.WARNING_MESSAGE); 424 425 return; 426 } 427 428 if ((""+this.jComboBoxBucketClass.getSelectedItem()).trim().length() <= 0) 429 { 430 javax.swing.JOptionPane.showMessageDialog(this, 431 I18n.getString("messages.crosstabGroupDialog.invalidClassName","Please insert a valid class name for the bucket!"), 432 I18n.getString("messages.crosstabGroupDialog.invalidClassNameCaption","Invalid class!"), 433 javax.swing.JOptionPane.WARNING_MESSAGE); 434 435 return; 436 } 437 438 tmpGroup = new CrosstabGroup(); 439 440 tmpGroup.setName(jTextFieldName.getText().trim()); 441 442 443 tmpGroup.setBucketExpressionClass( 444 this.jComboBoxBucketClass.getSelectedItem() + ""); 445 446 tmpGroup.setSize((int)jNumberFieldSize.getValue()); 447 448 tmpGroup.setBucketExpression( jRTextExpressionAreaExpression.getText()); 449 tmpGroup.setBucketComparatorExpression( jRTextExpressionAreaComparatorExpression.getText()); 450 tmpGroup.setBucketOrder(""+((Tag)jComboBoxOrder.getSelectedItem()).getValue()); 451 452 453 tmpGroup.setTotalPosition(""+((Tag)jComboBoxTotalPosition.getSelectedItem()).getValue()); 454 tmpGroup.setHasTotal( !tmpGroup.getTotalPosition().equals("None") ); 455 tmpGroup.setHasHeader(true ); 456 tmpGroup.setHeaderPosition(""+((Tag)jComboBoxHeaderPosition.getSelectedItem()).getValue()); 457 458 setVisible(false); 459 this.setDialogResult(javax.swing.JOptionPane.OK_OPTION); 460 dispose(); 461 } 463 467 private void closeDialog(java.awt.event.WindowEvent evt) { 469 setVisible(false); 470 this.setDialogResult(javax.swing.JOptionPane.CLOSED_OPTION); 471 dispose(); 472 } 474 475 480 public int getDialogResult() 481 { 482 483 return dialogResult; 484 } 485 486 491 public void setDialogResult(int dialogResult) 492 { 493 this.dialogResult = dialogResult; 494 } 495 496 public void setExpressionContext(SubDataset sds) 497 { 498 if (sds == null) 499 { 500 sds = MainFrame.getMainInstance().getActiveReportFrame().getReport(); 501 } 502 this.jRTextExpressionAreaComparatorExpression.setSubDataset( sds); 503 this.jRTextExpressionAreaComparatorExpression.getCrosstabElements().removeAllElements(); 504 this.jRTextExpressionAreaExpression.setSubDataset( sds ); 505 this.jRTextExpressionAreaExpression.getCrosstabElements().removeAllElements(); 506 } 507 508 509 private javax.swing.JButton jButtonCancel; 511 private javax.swing.JButton jButtonOK; 512 private javax.swing.JComboBox jComboBoxBucketClass; 513 private javax.swing.JComboBox jComboBoxHeaderPosition; 514 private javax.swing.JComboBox jComboBoxOrder; 515 private javax.swing.JComboBox jComboBoxTotalPosition; 516 private javax.swing.JLabel jLabel1; 517 private javax.swing.JLabel jLabel2; 518 private javax.swing.JLabel jLabel3; 519 private javax.swing.JLabel jLabel4; 520 private javax.swing.JLabel jLabel5; 521 private javax.swing.JLabel jLabel6; 522 private javax.swing.JLabel jLabel7; 523 private javax.swing.JLabel jLabelSize; 524 private it.businesslogic.ireport.gui.JNumberField jNumberFieldSize; 525 private javax.swing.JPanel jPanel1; 526 private javax.swing.JPanel jPanel2; 527 private javax.swing.JPanel jPanel3; 528 private javax.swing.JPanel jPanel4; 529 private javax.swing.JPanel jPanel5; 530 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionAreaComparatorExpression; 531 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionAreaExpression; 532 private javax.swing.JTextField jTextFieldName; 533 private int dialogResult; 535 536 537 public CrosstabGroup getGroup() { 538 return tmpGroup; 539 } 540 541 public void setGroup(CrosstabGroup group) { 542 543 if (group instanceof CrosstabColumnGroup) 544 { 545 setGroupType(COLUMNGROUP); 546 } 547 else 548 { 549 setGroupType(ROWGROUP); 550 } 551 552 jTextFieldName.setText(group.getName()); 553 try { 554 555 jNumberFieldSize.setValue( group.getSize()); 556 } 557 catch (Exception ex) 558 { 559 } 560 561 Misc.setComboboxSelectedTagValue(jComboBoxTotalPosition, group.getTotalPosition()); 562 563 Misc.setComboboxSelectedTagValue(jComboBoxHeaderPosition, group.getHeaderPosition()); 564 565 jRTextExpressionAreaExpression.setText( group.getBucketExpression()); 566 Misc.setComboboxSelectedTagValue(jComboBoxOrder, group.getBucketOrder()); 567 jRTextExpressionAreaComparatorExpression.setText( group.getBucketComparatorExpression() ); 568 jComboBoxBucketClass.setSelectedItem(group.getBucketExpressionClass()); 569 570 } 571 572 public int getGroupType() { 573 return groupType; 574 } 575 576 public void setGroupType(int groupType) { 577 this.groupType = groupType; 578 579 this.jComboBoxOrder.removeAllItems(); 580 this.jComboBoxOrder.addItem(new Tag("Ascending", I18n.getString("order.Ascending", "Ascending")) ); 581 this.jComboBoxOrder.addItem(new Tag("Descending",I18n.getString("order.Descending", "Descending"))); 582 Misc.setComboboxSelectedTagValue(jComboBoxTotalPosition, "Ascending"); 583 584 585 this.jComboBoxTotalPosition.removeAllItems(); 586 this.jComboBoxTotalPosition.addItem(new Tag("None",I18n.getString("totalPosition.None", "None") )); 587 this.jComboBoxTotalPosition.addItem(new Tag("Start",I18n.getString("totalPosition.Start", "Start") )); 588 this.jComboBoxTotalPosition.addItem(new Tag("End",I18n.getString("totalPosition.End", "End") )); 589 Misc.setComboboxSelectedTagValue(jComboBoxTotalPosition, "None"); 590 591 if (groupType == this.COLUMNGROUP) 592 { 593 594 try { this.jNumberFieldSize.setValue(30); } catch (Exception ex) {} 595 596 this.jLabelSize.setText( I18n.getString("crosstabGroupDialog.labelSize.columnHeight","Group height") ); 597 this.jComboBoxHeaderPosition.removeAllItems(); 598 this.jComboBoxHeaderPosition.addItem(new Tag("Left", I18n.getString("headerPosition.Left", "Left") )); 599 this.jComboBoxHeaderPosition.addItem(new Tag("Center",I18n.getString("headerPosition.Center", "Center"))); 600 this.jComboBoxHeaderPosition.addItem(new Tag("Right",I18n.getString("headerPosition.Right", "Right"))); 601 this.jComboBoxHeaderPosition.addItem(new Tag("Stretch",I18n.getString("headerPosition.Stretch", "Stretch"))); 602 603 Misc.setComboboxSelectedTagValue(jComboBoxHeaderPosition, "Left"); 604 605 } 606 else 607 { 608 try { this.jNumberFieldSize.setValue(100); } catch (Exception ex) {} 609 610 this.jLabelSize.setText( I18n.getString("crosstabGroupDialog.labelSize.columnWidth","Group width") ); 611 this.jComboBoxHeaderPosition.removeAllItems(); 612 this.jComboBoxHeaderPosition.addItem(new Tag("Top", I18n.getString("headerPosition.Top", "Top"))); 613 this.jComboBoxHeaderPosition.addItem(new Tag("Middle",I18n.getString("headerPosition.Middle", "Middle"))); 614 this.jComboBoxHeaderPosition.addItem(new Tag("Bottom",I18n.getString("headerPosition.Bottom", "Bottom"))); 615 this.jComboBoxHeaderPosition.addItem(new Tag("Stretch",I18n.getString("headerPosition.Stretch", "Stretch"))); 616 617 Misc.setComboboxSelectedTagValue(jComboBoxHeaderPosition, "Top"); 618 } 619 620 } 621 public void applyI18n(){ 622 jButtonCancel.setText(I18n.getString("crosstabGroupDialog.buttonCancel","Cancel")); 624 jButtonOK.setText(I18n.getString("crosstabGroupDialog.buttonOK","OK")); 625 jLabel1.setText(I18n.getString("crosstabGroupDialog.label1","Group name")); 626 jLabel2.setText(I18n.getString("crosstabGroupDialog.label2","Print the group header on this position: ")); 627 jLabel3.setText(I18n.getString("crosstabGroupDialog.label3","Bucket expression")); 628 jLabel4.setText(I18n.getString("crosstabGroupDialog.label4","Order")); 629 jLabel5.setText(I18n.getString("crosstabGroupDialog.label5","Custom comparator expression")); 630 jLabel6.setText(I18n.getString("crosstabGroupDialog.label6","Class")); 631 jLabel7.setText(I18n.getString("crosstabGroupDialog.label7","Print the group total on this position: ")); 632 jLabelSize.setText(I18n.getString("crosstabGroupDialog.labelSize","Group width / height")); 633 ((javax.swing.border.TitledBorder )jPanel2.getBorder()).setTitle( I18n.getString("crosstabGroupDialog.panelBorder.Bucket","Bucket") ); 635 } 636 } 637 | Popular Tags |