1 32 33 package it.businesslogic.ireport.gui.subdataset; 34 import it.businesslogic.ireport.SubDataset; 35 import it.businesslogic.ireport.gui.JRParameterDialog; 36 import it.businesslogic.ireport.util.I18n; 37 41 public class GroupDialog extends javax.swing.JDialog { 42 43 private String groupName; 44 private String expression; 45 private int minHeightStartNewPage = 0; 46 private int headerBandHeight = 0; 47 private int footerBandHeight = 0; 48 private boolean startNewPage = false; 49 private boolean startNewColumn = false; 50 private boolean printHeaderEachPage = false; 51 private boolean resetPageNumber = false; 52 53 private SubDataset subDataset = null; 54 55 public GroupDialog(java.awt.Dialog dialog, boolean modal) { 56 super( dialog, modal); 57 initComponents(); 58 applyI18n(); 59 this.jRTextExpressionArea.setText(""); 60 61 javax.swing.KeyStroke escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false); 62 javax.swing.Action escapeAction = new javax.swing.AbstractAction () { 63 public void actionPerformed(java.awt.event.ActionEvent e) { 64 jButtonCancelActionPerformed(e); 65 } 66 }; 67 68 getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE"); 69 getRootPane().getActionMap().put("ESCAPE", escapeAction); 70 71 72 this.getRootPane().setDefaultButton(this.jButtonOK); 74 } 75 76 77 82 private void initComponents() { 84 java.awt.GridBagConstraints gridBagConstraints; 85 86 jLabel1 = new javax.swing.JLabel (); 87 jTextFieldName = new javax.swing.JTextField (); 88 jLabel3 = new javax.swing.JLabel (); 89 jRTextExpressionArea = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 90 jPanel1 = new javax.swing.JPanel (); 91 jButtonOK = new javax.swing.JButton (); 92 jButtonCancel = new javax.swing.JButton (); 93 94 getContentPane().setLayout(new java.awt.GridBagLayout ()); 95 96 setTitle("Add/modify group"); 97 setModal(true); 98 setResizable(false); 99 addWindowListener(new java.awt.event.WindowAdapter () { 100 public void windowClosing(java.awt.event.WindowEvent evt) { 101 closeDialog(evt); 102 } 103 }); 104 105 jLabel1.setText("Group name"); 106 gridBagConstraints = new java.awt.GridBagConstraints (); 107 gridBagConstraints.gridx = 0; 108 gridBagConstraints.gridy = 0; 109 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 110 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 111 getContentPane().add(jLabel1, gridBagConstraints); 112 113 gridBagConstraints = new java.awt.GridBagConstraints (); 114 gridBagConstraints.gridx = 0; 115 gridBagConstraints.gridy = 1; 116 gridBagConstraints.gridwidth = 2; 117 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 118 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 119 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 120 getContentPane().add(jTextFieldName, gridBagConstraints); 121 122 jLabel3.setText("Group expression"); 123 gridBagConstraints = new java.awt.GridBagConstraints (); 124 gridBagConstraints.gridx = 0; 125 gridBagConstraints.gridy = 5; 126 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 127 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 128 getContentPane().add(jLabel3, gridBagConstraints); 129 130 jRTextExpressionArea.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 131 jRTextExpressionArea.setPreferredSize(new java.awt.Dimension (300, 70)); 132 gridBagConstraints = new java.awt.GridBagConstraints (); 133 gridBagConstraints.gridx = 0; 134 gridBagConstraints.gridy = 6; 135 gridBagConstraints.gridwidth = 2; 136 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 137 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 138 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 139 getContentPane().add(jRTextExpressionArea, gridBagConstraints); 140 141 jPanel1.setLayout(new java.awt.FlowLayout (java.awt.FlowLayout.RIGHT)); 142 143 jButtonOK.setText("OK"); 144 jButtonOK.setMnemonic('o'); 145 jButtonOK.addActionListener(new java.awt.event.ActionListener () { 146 public void actionPerformed(java.awt.event.ActionEvent evt) { 147 jButtonOKActionPerformed(evt); 148 } 149 }); 150 151 jPanel1.add(jButtonOK); 152 153 jButtonCancel.setText("Cancel"); 154 jButtonCancel.setMnemonic('c'); 155 jButtonCancel.addActionListener(new java.awt.event.ActionListener () { 156 public void actionPerformed(java.awt.event.ActionEvent evt) { 157 jButtonCancelActionPerformed(evt); 158 } 159 }); 160 161 jPanel1.add(jButtonCancel); 162 163 gridBagConstraints = new java.awt.GridBagConstraints (); 164 gridBagConstraints.gridx = 0; 165 gridBagConstraints.gridy = 9; 166 gridBagConstraints.gridwidth = 2; 167 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 168 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; 169 gridBagConstraints.weightx = 1.0; 170 gridBagConstraints.weighty = 1.0; 171 gridBagConstraints.insets = new java.awt.Insets (3, 3, 3, 3); 172 getContentPane().add(jPanel1, gridBagConstraints); 173 174 pack(); 175 java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); 176 java.awt.Dimension dialogSize = getSize(); 177 setLocation((screenSize.width-dialogSize.width)/2,(screenSize.height-dialogSize.height)/2); 178 } 180 private void jButtonCancelActionPerformed(java.awt.event.ActionEvent evt) { setVisible(false); 182 this.setDialogResult( javax.swing.JOptionPane.CANCEL_OPTION); 183 dispose(); 184 } 186 private void jButtonOKActionPerformed(java.awt.event.ActionEvent evt) { 188 if (this.jTextFieldName.getText().trim().length() <= 0) 189 { 190 javax.swing.JOptionPane.showMessageDialog(this, 191 I18n.getString( "messages.jRGroupDialog.notValidGroupName","Please insert a valid group name!"), 192 I18n.getString( "messages.jRGroupDialog.notValidGroupNameCaption","Invalid name!"), 193 javax.swing.JOptionPane.WARNING_MESSAGE ); 194 return; 195 } 196 197 setGroupName( this.jTextFieldName.getText() ); 198 209 setExpression( jRTextExpressionArea.getText() ); 210 211 setVisible(false); 212 this.setDialogResult( javax.swing.JOptionPane.OK_OPTION); 213 dispose(); 214 } 216 217 private void closeDialog(java.awt.event.WindowEvent evt) { setVisible(false); 219 this.setDialogResult( javax.swing.JOptionPane.CLOSED_OPTION); 220 dispose(); 221 } 223 226 public static void main(String args[]) { 227 new JRParameterDialog(new javax.swing.JFrame (), true).setVisible(true); 228 } 229 230 234 public void setGroup(it.businesslogic.ireport.Group group) { 235 this.jTextFieldName.setText( new String (group.getName() )); 236 242 if (group.getGroupExpression() != null) 243 { 244 this.jRTextExpressionArea.setText( new String (group.getGroupExpression()).trim()); 245 } 246 else 247 { 248 this.jRTextExpressionArea.setText( ""); 249 } 250 251 258 } 259 260 264 public int getDialogResult() { 265 return dialogResult; 266 } 267 268 272 public void setDialogResult(int dialogResult) { 273 this.dialogResult = dialogResult; 274 } 275 276 280 public java.lang.String getExpression() { 281 return expression; 282 } 283 284 288 public void setExpression(java.lang.String expression) { 289 this.expression = expression; 290 } 291 292 296 public int getFooterBandHeight() { 297 return footerBandHeight; 298 } 299 300 304 public void setFooterBandHeight(int footerBandHeight) { 305 this.footerBandHeight = footerBandHeight; 306 } 307 308 312 public java.lang.String getGroupName() { 313 return groupName; 314 } 315 316 320 public void setGroupName(java.lang.String groupName) { 321 this.groupName = groupName; 322 } 323 324 328 public int getHeaderBandHeight() { 329 return headerBandHeight; 330 } 331 332 336 public void setHeaderBandHeight(int headerBandHeight) { 337 this.headerBandHeight = headerBandHeight; 338 } 339 340 344 public int getMinHeightStartNewPage() { 345 return minHeightStartNewPage; 346 } 347 348 352 public void setMinHeightStartNewPage(int minHeightStartNewPage) { 353 this.minHeightStartNewPage = minHeightStartNewPage; 354 } 355 356 360 public boolean isPrintHeaderEachPage() { 361 return printHeaderEachPage; 362 } 363 364 368 public void setPrintHeaderEachPage(boolean printHeaderEachPage) { 369 this.printHeaderEachPage = printHeaderEachPage; 370 } 371 372 376 public boolean isResetPageNumber() { 377 return resetPageNumber; 378 } 379 380 384 public void setResetPageNumber(boolean resetPageNumber) { 385 this.resetPageNumber = resetPageNumber; 386 } 387 388 392 public boolean isStartNewColumn() { 393 return startNewColumn; 394 } 395 396 400 public void setStartNewColumn(boolean startNewColumn) { 401 this.startNewColumn = startNewColumn; 402 } 403 404 408 public boolean isStartNewPage() { 409 return startNewPage; 410 } 411 412 416 public void setStartNewPage(boolean startNewPage) { 417 this.startNewPage = startNewPage; 418 } 419 420 private javax.swing.JButton jButtonCancel; 422 private javax.swing.JButton jButtonOK; 423 private javax.swing.JLabel jLabel1; 424 private javax.swing.JLabel jLabel3; 425 private javax.swing.JPanel jPanel1; 426 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionArea; 427 private javax.swing.JTextField jTextFieldName; 428 430 private int dialogResult; 431 432 public SubDataset getSubDataset() { 433 return subDataset; 434 } 435 436 public void setSubDataset(SubDataset subDataset) { 437 this.subDataset = subDataset; 438 jRTextExpressionArea.setSubDataset( subDataset); 439 } 440 441 public void applyI18n(){ 442 jButtonCancel.setText(I18n.getString("groupDialog.buttonCancel","Cancel")); 444 jButtonOK.setText(I18n.getString("groupDialog.buttonOK","OK")); 445 jLabel1.setText(I18n.getString("groupDialog.label1","Group name")); 446 jLabel3.setText(I18n.getString("groupDialog.label3","Group expression")); 447 } 449 } 450 | Popular Tags |