1 32 33 package it.businesslogic.ireport.chart.gui; 34 35 import it.businesslogic.ireport.JRLinkParameter; 36 import it.businesslogic.ireport.SubDataset; 37 import it.businesslogic.ireport.chart.SectionItemHyperlink; 38 import it.businesslogic.ireport.gui.JRLinkParameterDialog; 39 import java.util.Vector ; 40 import javax.swing.SwingUtilities ; 41 import it.businesslogic.ireport.util.I18n; 42 43 47 public class SectionItemHyperlinkPanel extends javax.swing.JPanel { 48 49 private SectionItemHyperlink sectionItemHyperlink = null; 50 51 private boolean init = false; 52 53 54 55 public SectionItemHyperlinkPanel() { 56 initComponents(); 57 sectionItemHyperlink = new SectionItemHyperlink(); 58 59 jComboBoxLinkType.addItem("None"); 60 jComboBoxLinkType.addItem("Reference"); 61 jComboBoxLinkType.addItem("LocalAnchor"); 62 jComboBoxLinkType.addItem("LocalPage"); 63 jComboBoxLinkType.addItem("RemoteAnchor"); 64 jComboBoxLinkType.addItem("RemotePage"); 65 66 jComboBoxLinkTarget.addItem("Self"); 68 jComboBoxLinkTarget.addItem("Blank"); 69 70 this.jRTextExpressionAreaAnchor.getDocument().addDocumentListener( new javax.swing.event.DocumentListener () { 71 public void changedUpdate(javax.swing.event.DocumentEvent evt) { 72 jRTextExpressionAreaAnchorTextChanged(); 73 } 74 public void insertUpdate(javax.swing.event.DocumentEvent evt) { 75 jRTextExpressionAreaAnchorTextChanged(); 76 } 77 public void removeUpdate(javax.swing.event.DocumentEvent evt) { 78 jRTextExpressionAreaAnchorTextChanged(); 79 } 80 }); 81 82 this.jRTextExpressionAreaPage.getDocument().addDocumentListener( new javax.swing.event.DocumentListener () { 83 public void changedUpdate(javax.swing.event.DocumentEvent evt) { 84 jRTextExpressionAreaPageTextChanged(); 85 } 86 public void insertUpdate(javax.swing.event.DocumentEvent evt) { 87 jRTextExpressionAreaPageTextChanged(); 88 } 89 public void removeUpdate(javax.swing.event.DocumentEvent evt) { 90 jRTextExpressionAreaPageTextChanged(); 91 } 92 }); 93 94 this.jRTextExpressionAreaReference.getDocument().addDocumentListener( new javax.swing.event.DocumentListener () { 95 public void changedUpdate(javax.swing.event.DocumentEvent evt) { 96 jRTextExpressionAreaReferenceTextChanged(); 97 } 98 public void insertUpdate(javax.swing.event.DocumentEvent evt) { 99 jRTextExpressionAreaReferenceTextChanged(); 100 } 101 public void removeUpdate(javax.swing.event.DocumentEvent evt) { 102 jRTextExpressionAreaReferenceTextChanged(); 103 } 104 }); 105 106 this.jRTextExpressionAreaTooltip.getDocument().addDocumentListener( new javax.swing.event.DocumentListener () { 107 public void changedUpdate(javax.swing.event.DocumentEvent evt) { 108 jRTextExpressionAreaTooltipTextChanged(); 109 } 110 public void insertUpdate(javax.swing.event.DocumentEvent evt) { 111 jRTextExpressionAreaTooltipTextChanged(); 112 } 113 public void removeUpdate(javax.swing.event.DocumentEvent evt) { 114 jRTextExpressionAreaTooltipTextChanged(); 115 } 116 }); 117 118 javax.swing.DefaultListSelectionModel dlsm = (javax.swing.DefaultListSelectionModel )this.jTableLinkParameters.getSelectionModel(); 119 dlsm.addListSelectionListener(new javax.swing.event.ListSelectionListener () { 120 public void valueChanged(javax.swing.event.ListSelectionEvent e) { 121 jTableLinkParametersListSelectionValueChanged(e); 122 } 123 }); 124 125 applyI18n(); 126 } 127 128 public SectionItemHyperlink getSectionItemHyperlink() { 129 return sectionItemHyperlink; 130 } 131 132 133 public void setSubDataset( SubDataset sds ) 134 { 135 jRTextExpressionAreaReference.setSubDataset(sds); 136 jRTextExpressionAreaAnchor.setSubDataset(sds); 137 jRTextExpressionAreaPage.setSubDataset(sds); 138 jRTextExpressionAreaTooltip.setSubDataset(sds); 139 } 140 141 public void setSectionItemHyperlink(SectionItemHyperlink sectionItemHyperlink) { 142 try { 143 setInit(true); 144 145 this.sectionItemHyperlink = sectionItemHyperlink; 146 147 148 jComboBoxLinkTarget.setSelectedItem( sectionItemHyperlink.getHyperlinkTarget() ); 150 jComboBoxLinkType.setSelectedItem( sectionItemHyperlink.getHyperlinkType() ); 151 jRTextExpressionAreaReference.setText( sectionItemHyperlink.getHyperlinkReferenceExpression() ); 152 jRTextExpressionAreaAnchor.setText( sectionItemHyperlink.getHyperlinkAnchorExpression() ); 153 jRTextExpressionAreaPage.setText( sectionItemHyperlink.getHyperlinkPageExpression() ); 154 jRTextExpressionAreaTooltip.setText( sectionItemHyperlink.getHyperlinkTooltipExpression() ); 155 156 jTabbedPane2.removeAll(); 157 158 if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("None")) { 160 this.jRTextExpressionAreaAnchor.setEnabled(false); 161 this.jLabelAnchor.setEnabled(false); 162 this.jRTextExpressionAreaPage.setEnabled(false); 163 this.jLabelPage.setEnabled(false); 164 this.jRTextExpressionAreaReference.setEnabled(false); 165 this.jLabelReference.setEnabled(false); 166 } else if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("Reference")) { 167 this.jRTextExpressionAreaAnchor.setEnabled(false); 168 this.jLabelAnchor.setEnabled(false); 169 this.jRTextExpressionAreaPage.setEnabled(false); 170 this.jLabelPage.setEnabled(false); 171 this.jRTextExpressionAreaReference.setEnabled(true); 172 this.jLabelReference.setEnabled(true); 173 174 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Reference","Reference"),this.jPanelReference); 175 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 176 } else if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("LocalAnchor")) { 177 this.jRTextExpressionAreaAnchor.setEnabled(true); 178 this.jLabelAnchor.setEnabled(true); 179 this.jRTextExpressionAreaPage.setEnabled(false); 180 this.jLabelPage.setEnabled(false); 181 this.jRTextExpressionAreaReference.setEnabled(false); 182 this.jLabelReference.setEnabled(false); 183 184 186 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Anchor","Anchor"), this.jPanelAnchor); 187 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 189 } else if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("LocalPage")) { 190 this.jRTextExpressionAreaAnchor.setEnabled(false); 191 this.jLabelAnchor.setEnabled(false); 192 this.jRTextExpressionAreaPage.setEnabled(true); 193 this.jLabelPage.setEnabled(true); 194 this.jRTextExpressionAreaReference.setEnabled(false); 195 this.jLabelReference.setEnabled(false); 196 197 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Page","Page"),this.jPanelPage); 200 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 201 } 202 else if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("RemoteAnchor")) { 203 this.jRTextExpressionAreaAnchor.setEnabled(true); 204 this.jLabelAnchor.setEnabled(true); 205 this.jRTextExpressionAreaPage.setEnabled(false); 206 this.jLabelPage.setEnabled(false); 207 this.jRTextExpressionAreaReference.setEnabled(true); 208 this.jLabelReference.setEnabled(true); 209 210 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Reference","Reference"),this.jPanelReference); 211 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Anchor","Anchor"), this.jPanelAnchor); 212 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 214 } else if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("RemotePage")) { 215 this.jRTextExpressionAreaAnchor.setEnabled(false); 216 this.jLabelAnchor.setEnabled(false); 217 this.jRTextExpressionAreaPage.setEnabled(true); 218 this.jLabelPage.setEnabled(true); 219 this.jRTextExpressionAreaReference.setEnabled(true); 220 this.jLabelReference.setEnabled(true); 221 222 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Reference","Reference"),this.jPanelReference); 223 225 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Page","Page"),this.jPanelPage); 226 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 227 } else { 228 this.jRTextExpressionAreaAnchor.setEnabled(true); 229 this.jLabelAnchor.setEnabled(true); 230 this.jRTextExpressionAreaPage.setEnabled(true); 231 this.jLabelPage.setEnabled(true); 232 this.jRTextExpressionAreaReference.setEnabled(true); 233 this.jLabelReference.setEnabled(true); 234 235 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Reference","Reference"),this.jPanelReference); 236 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Anchor","Anchor"), this.jPanelAnchor); 237 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Page","Page"),this.jPanelPage); 238 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 239 } 240 241 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Tooltip","Tooltip"), this.jPanelTooltip); 242 243 java.util.Iterator enum_parameters = sectionItemHyperlink.getHyperlinkParameters().iterator(); 245 246 javax.swing.table.DefaultTableModel dtmLinkParams = (javax.swing.table.DefaultTableModel )jTableLinkParameters.getModel(); 247 dtmLinkParams.setRowCount(0); 248 249 while (enum_parameters.hasNext()) { 250 it.businesslogic.ireport.JRLinkParameter parameter = (it.businesslogic.ireport.JRLinkParameter)enum_parameters.next(); 251 Vector row = new Vector (); 252 row.addElement(parameter); 253 row.addElement(parameter.getExpression()); 254 dtmLinkParams.addRow(row); 255 } 256 } finally { 257 258 setInit(false); 259 } 260 } 261 262 263 public void jTableLinkParametersListSelectionValueChanged(javax.swing.event.ListSelectionEvent e) { 264 if (this.jTableLinkParameters.getSelectedRowCount() > 0) { 265 this.jButtonModLinkParameter.setEnabled(true); 266 this.jButtonRemLinkParameter.setEnabled(true); 267 } else { 268 this.jButtonModLinkParameter.setEnabled(false); 269 this.jButtonRemLinkParameter.setEnabled(false); 270 } 271 } 272 273 public boolean isInit() { 274 return init; 275 } 276 277 public void setInit(boolean init) { 278 this.init = init; 279 } 280 281 286 private void initComponents() { 288 java.awt.GridBagConstraints gridBagConstraints; 289 290 jLabelTarget = new javax.swing.JLabel (); 291 jComboBoxLinkTarget = new javax.swing.JComboBox (); 292 jLabel36 = new javax.swing.JLabel (); 293 jComboBoxLinkType = new javax.swing.JComboBox (); 294 jPanel1 = new javax.swing.JPanel (); 295 jTabbedPane2 = new javax.swing.JTabbedPane (); 296 jPanelReference = new javax.swing.JPanel (); 297 jLabelReference = new javax.swing.JLabel (); 298 jRTextExpressionAreaReference = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 299 jPanelAnchor = new javax.swing.JPanel (); 300 jLabelAnchor = new javax.swing.JLabel (); 301 jRTextExpressionAreaAnchor = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 302 jPanelPage = new javax.swing.JPanel (); 303 jLabelPage = new javax.swing.JLabel (); 304 jRTextExpressionAreaPage = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 305 jPanelLinkParams = new javax.swing.JPanel (); 306 jScrollPane1 = new javax.swing.JScrollPane (); 307 jTableLinkParameters = new javax.swing.JTable (); 308 jPanel3 = new javax.swing.JPanel (); 309 jButtonAddLinkParameter = new javax.swing.JButton (); 310 jButtonModLinkParameter = new javax.swing.JButton (); 311 jButtonRemLinkParameter = new javax.swing.JButton (); 312 jPanelTooltip = new javax.swing.JPanel (); 313 jLabelReference1 = new javax.swing.JLabel (); 314 jRTextExpressionAreaTooltip = new it.businesslogic.ireport.gui.JRTextExpressionArea(); 315 316 setLayout(new java.awt.GridBagLayout ()); 317 318 jLabelTarget.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT); 319 jLabelTarget.setText("Hyperlink target"); 320 jLabelTarget.setMaximumSize(new java.awt.Dimension (200, 25)); 321 jLabelTarget.setMinimumSize(new java.awt.Dimension (100, 20)); 322 jLabelTarget.setPreferredSize(new java.awt.Dimension (100, 20)); 323 gridBagConstraints = new java.awt.GridBagConstraints (); 324 gridBagConstraints.gridx = 0; 325 gridBagConstraints.gridy = 7; 326 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 327 gridBagConstraints.ipadx = 22; 328 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 329 gridBagConstraints.insets = new java.awt.Insets (8, 8, 5, 0); 330 add(jLabelTarget, gridBagConstraints); 331 332 jComboBoxLinkTarget.setMinimumSize(new java.awt.Dimension (180, 20)); 333 jComboBoxLinkTarget.setPreferredSize(new java.awt.Dimension (180, 20)); 334 jComboBoxLinkTarget.addActionListener(new java.awt.event.ActionListener () { 335 public void actionPerformed(java.awt.event.ActionEvent evt) { 336 jComboBoxLinkTargetActionPerformed1(evt); 337 } 338 }); 339 340 gridBagConstraints = new java.awt.GridBagConstraints (); 341 gridBagConstraints.gridx = 1; 342 gridBagConstraints.gridy = 7; 343 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 344 gridBagConstraints.weightx = 1.0; 345 gridBagConstraints.insets = new java.awt.Insets (8, 6, 0, 2); 346 add(jComboBoxLinkTarget, gridBagConstraints); 347 348 jLabel36.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT); 349 jLabel36.setText("Hyperlink type"); 350 jLabel36.setMaximumSize(new java.awt.Dimension (200, 25)); 351 jLabel36.setMinimumSize(new java.awt.Dimension (100, 20)); 352 jLabel36.setPreferredSize(new java.awt.Dimension (100, 20)); 353 gridBagConstraints = new java.awt.GridBagConstraints (); 354 gridBagConstraints.gridx = 0; 355 gridBagConstraints.gridy = 8; 356 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 357 gridBagConstraints.ipadx = 22; 358 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 359 gridBagConstraints.insets = new java.awt.Insets (0, 8, 5, 0); 360 add(jLabel36, gridBagConstraints); 361 362 jComboBoxLinkType.setEditable(true); 363 jComboBoxLinkType.setMinimumSize(new java.awt.Dimension (180, 20)); 364 jComboBoxLinkType.setPreferredSize(new java.awt.Dimension (180, 20)); 365 jComboBoxLinkType.addActionListener(new java.awt.event.ActionListener () { 366 public void actionPerformed(java.awt.event.ActionEvent evt) { 367 jComboBoxLinkTypeActionPerformed1(evt); 368 } 369 }); 370 371 gridBagConstraints = new java.awt.GridBagConstraints (); 372 gridBagConstraints.gridx = 1; 373 gridBagConstraints.gridy = 8; 374 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 375 gridBagConstraints.weightx = 1.0; 376 gridBagConstraints.insets = new java.awt.Insets (0, 6, 0, 6); 377 add(jComboBoxLinkType, gridBagConstraints); 378 379 jPanel1.setLayout(new java.awt.GridBagLayout ()); 380 381 jPanelReference.setLayout(new java.awt.GridBagLayout ()); 382 383 jLabelReference.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 384 jLabelReference.setText("Hyperlink Reference Expression"); 385 jLabelReference.setEnabled(false); 386 gridBagConstraints = new java.awt.GridBagConstraints (); 387 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 388 gridBagConstraints.insets = new java.awt.Insets (2, 2, 2, 2); 389 jPanelReference.add(jLabelReference, gridBagConstraints); 390 391 jRTextExpressionAreaReference.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 392 jRTextExpressionAreaReference.setEnabled(false); 393 jRTextExpressionAreaReference.setMinimumSize(new java.awt.Dimension (300, 50)); 394 jRTextExpressionAreaReference.setPreferredSize(new java.awt.Dimension (300, 50)); 395 jRTextExpressionAreaReference.setViewScrollbars(false); 396 gridBagConstraints = new java.awt.GridBagConstraints (); 397 gridBagConstraints.gridx = 0; 398 gridBagConstraints.gridy = 11; 399 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 400 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 401 gridBagConstraints.weightx = 1.0; 402 gridBagConstraints.weighty = 1.0; 403 gridBagConstraints.insets = new java.awt.Insets (2, 2, 2, 2); 404 jPanelReference.add(jRTextExpressionAreaReference, gridBagConstraints); 405 406 jTabbedPane2.addTab("Reference", jPanelReference); 407 408 jPanelAnchor.setLayout(new java.awt.GridBagLayout ()); 409 410 jLabelAnchor.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 411 jLabelAnchor.setText("Hyperlink Anchor Expression"); 412 jLabelAnchor.setEnabled(false); 413 gridBagConstraints = new java.awt.GridBagConstraints (); 414 gridBagConstraints.gridx = 0; 415 gridBagConstraints.gridy = 0; 416 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 417 gridBagConstraints.insets = new java.awt.Insets (2, 2, 2, 2); 418 jPanelAnchor.add(jLabelAnchor, gridBagConstraints); 419 420 jRTextExpressionAreaAnchor.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 421 jRTextExpressionAreaAnchor.setEnabled(false); 422 jRTextExpressionAreaAnchor.setMinimumSize(new java.awt.Dimension (300, 50)); 423 jRTextExpressionAreaAnchor.setPreferredSize(new java.awt.Dimension (300, 50)); 424 jRTextExpressionAreaAnchor.setViewScrollbars(false); 425 gridBagConstraints = new java.awt.GridBagConstraints (); 426 gridBagConstraints.gridx = 0; 427 gridBagConstraints.gridy = 1; 428 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 429 gridBagConstraints.weightx = 1.0; 430 gridBagConstraints.weighty = 1.0; 431 gridBagConstraints.insets = new java.awt.Insets (2, 2, 2, 2); 432 jPanelAnchor.add(jRTextExpressionAreaAnchor, gridBagConstraints); 433 434 jTabbedPane2.addTab("Anchor", jPanelAnchor); 435 436 jPanelPage.setLayout(new java.awt.GridBagLayout ()); 437 438 jLabelPage.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 439 jLabelPage.setText("Hyperlink Page Expression"); 440 jLabelPage.setEnabled(false); 441 gridBagConstraints = new java.awt.GridBagConstraints (); 442 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 443 gridBagConstraints.insets = new java.awt.Insets (2, 2, 2, 2); 444 jPanelPage.add(jLabelPage, gridBagConstraints); 445 446 jRTextExpressionAreaPage.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 447 jRTextExpressionAreaPage.setEnabled(false); 448 jRTextExpressionAreaPage.setMinimumSize(new java.awt.Dimension (300, 50)); 449 jRTextExpressionAreaPage.setPreferredSize(new java.awt.Dimension (300, 50)); 450 jRTextExpressionAreaPage.setViewScrollbars(false); 451 gridBagConstraints = new java.awt.GridBagConstraints (); 452 gridBagConstraints.gridx = 0; 453 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 454 gridBagConstraints.weightx = 1.0; 455 gridBagConstraints.weighty = 1.0; 456 gridBagConstraints.insets = new java.awt.Insets (2, 2, 2, 2); 457 jPanelPage.add(jRTextExpressionAreaPage, gridBagConstraints); 458 459 jTabbedPane2.addTab("Page", jPanelPage); 460 461 jPanelLinkParams.setLayout(new java.awt.GridBagLayout ()); 462 463 jTableLinkParameters.setModel(new javax.swing.table.DefaultTableModel ( 464 new Object [][] { 465 466 }, 467 new String [] { 468 "Parameter name", "Expression" 469 } 470 ) { 471 boolean[] canEdit = new boolean [] { 472 false, false 473 }; 474 475 public boolean isCellEditable(int rowIndex, int columnIndex) { 476 return canEdit [columnIndex]; 477 } 478 }); 479 jTableLinkParameters.addMouseListener(new java.awt.event.MouseAdapter () { 480 public void mouseClicked(java.awt.event.MouseEvent evt) { 481 jTableLinkParametersMouseClicked(evt); 482 } 483 }); 484 485 jScrollPane1.setViewportView(jTableLinkParameters); 486 487 gridBagConstraints = new java.awt.GridBagConstraints (); 488 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 489 gridBagConstraints.weightx = 1.0; 490 gridBagConstraints.weighty = 1.0; 491 jPanelLinkParams.add(jScrollPane1, gridBagConstraints); 492 493 jPanel3.setLayout(new java.awt.GridBagLayout ()); 494 495 jButtonAddLinkParameter.setText("Add"); 496 jButtonAddLinkParameter.addActionListener(new java.awt.event.ActionListener () { 497 public void actionPerformed(java.awt.event.ActionEvent evt) { 498 jButtonAddLinkParameterActionPerformed(evt); 499 } 500 }); 501 502 gridBagConstraints = new java.awt.GridBagConstraints (); 503 gridBagConstraints.gridx = 0; 504 gridBagConstraints.gridy = 0; 505 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 506 gridBagConstraints.insets = new java.awt.Insets (4, 0, 6, 0); 507 jPanel3.add(jButtonAddLinkParameter, gridBagConstraints); 508 509 jButtonModLinkParameter.setText("Modify"); 510 jButtonModLinkParameter.setEnabled(false); 511 jButtonModLinkParameter.addActionListener(new java.awt.event.ActionListener () { 512 public void actionPerformed(java.awt.event.ActionEvent evt) { 513 jButtonModLinkParameterActionPerformed(evt); 514 } 515 }); 516 517 gridBagConstraints = new java.awt.GridBagConstraints (); 518 gridBagConstraints.gridx = 1; 519 gridBagConstraints.gridy = 0; 520 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 521 gridBagConstraints.insets = new java.awt.Insets (4, 6, 6, 0); 522 jPanel3.add(jButtonModLinkParameter, gridBagConstraints); 523 524 jButtonRemLinkParameter.setText("Remove"); 525 jButtonRemLinkParameter.setEnabled(false); 526 jButtonRemLinkParameter.addActionListener(new java.awt.event.ActionListener () { 527 public void actionPerformed(java.awt.event.ActionEvent evt) { 528 jButtonRemLinkParameterActionPerformed(evt); 529 } 530 }); 531 532 gridBagConstraints = new java.awt.GridBagConstraints (); 533 gridBagConstraints.gridx = 2; 534 gridBagConstraints.gridy = 0; 535 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 536 gridBagConstraints.weightx = 1.0; 537 gridBagConstraints.insets = new java.awt.Insets (4, 6, 6, 0); 538 jPanel3.add(jButtonRemLinkParameter, gridBagConstraints); 539 540 gridBagConstraints = new java.awt.GridBagConstraints (); 541 gridBagConstraints.gridx = 0; 542 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 543 gridBagConstraints.weightx = 1.0; 544 gridBagConstraints.insets = new java.awt.Insets (0, 6, 0, 6); 545 jPanelLinkParams.add(jPanel3, gridBagConstraints); 546 547 jTabbedPane2.addTab("Link parameters", jPanelLinkParams); 548 549 jPanelTooltip.setLayout(new java.awt.GridBagLayout ()); 550 551 jLabelReference1.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 552 jLabelReference1.setText("Tooltip Expression"); 553 gridBagConstraints = new java.awt.GridBagConstraints (); 554 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 555 gridBagConstraints.insets = new java.awt.Insets (2, 2, 2, 2); 556 jPanelTooltip.add(jLabelReference1, gridBagConstraints); 557 558 jRTextExpressionAreaTooltip.setBorder(javax.swing.BorderFactory.createEtchedBorder()); 559 jRTextExpressionAreaTooltip.setMinimumSize(new java.awt.Dimension (300, 50)); 560 jRTextExpressionAreaTooltip.setPreferredSize(new java.awt.Dimension (300, 50)); 561 jRTextExpressionAreaTooltip.setViewScrollbars(false); 562 gridBagConstraints = new java.awt.GridBagConstraints (); 563 gridBagConstraints.gridx = 0; 564 gridBagConstraints.gridy = 11; 565 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 566 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 567 gridBagConstraints.weightx = 1.0; 568 gridBagConstraints.weighty = 1.0; 569 gridBagConstraints.insets = new java.awt.Insets (2, 2, 2, 2); 570 jPanelTooltip.add(jRTextExpressionAreaTooltip, gridBagConstraints); 571 572 jTabbedPane2.addTab("Tooltip", jPanelTooltip); 573 574 gridBagConstraints = new java.awt.GridBagConstraints (); 575 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 576 gridBagConstraints.weightx = 1.0; 577 gridBagConstraints.weighty = 1.0; 578 jPanel1.add(jTabbedPane2, gridBagConstraints); 579 580 gridBagConstraints = new java.awt.GridBagConstraints (); 581 gridBagConstraints.gridy = 9; 582 gridBagConstraints.gridwidth = 2; 583 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 584 gridBagConstraints.weightx = 1.0; 585 gridBagConstraints.weighty = 1.0; 586 gridBagConstraints.insets = new java.awt.Insets (4, 4, 4, 4); 587 add(jPanel1, gridBagConstraints); 588 589 } 591 private void jTableLinkParametersMouseClicked(java.awt.event.MouseEvent evt) { 593 594 if (evt.getClickCount() == 2 && evt.getButton() == evt.BUTTON1 && jTableLinkParameters.getSelectedRowCount() > 0) 595 { 596 jButtonModLinkParameterActionPerformed(null); 597 } 598 599 } 601 private void jButtonRemLinkParameterActionPerformed(java.awt.event.ActionEvent evt) { if (this.isInit()) return; 603 604 javax.swing.table.DefaultTableModel dtm = (javax.swing.table.DefaultTableModel )jTableLinkParameters.getModel(); 605 int[] rows= jTableLinkParameters.getSelectedRows(); 606 for (int i=rows.length-1; i>=0; --i) { 607 getSectionItemHyperlink().getHyperlinkParameters().remove( jTableLinkParameters.getValueAt( rows[i], 0) ); 608 dtm.removeRow(rows[i]); 609 } 610 } 612 private void jButtonModLinkParameterActionPerformed(java.awt.event.ActionEvent evt) { if (this.isInit()) return; 614 615 if (jTableLinkParameters.getSelectedRowCount() <= 0) return; 616 617 JRLinkParameter parameter = (JRLinkParameter)jTableLinkParameters.getValueAt( jTableLinkParameters.getSelectedRow(), 0); 618 619 JRLinkParameterDialog jrpd = new JRLinkParameterDialog((javax.swing.JDialog )SwingUtilities.getWindowAncestor(this), true); 620 jrpd.setParameter( parameter ); 621 jrpd.setVisible(true); 622 623 if (jrpd.getDialogResult() == javax.swing.JOptionPane.OK_OPTION) { 624 parameter.setName( jrpd.getParameter().getName() ); 625 parameter.setExpression( jrpd.getParameter().getExpression()); 626 javax.swing.table.DefaultTableModel dtm = (javax.swing.table.DefaultTableModel )jTableLinkParameters.getModel(); 627 628 dtm.setValueAt(parameter,jTableLinkParameters.getSelectedRow(),0); 629 dtm.setValueAt(parameter.getExpression(),jTableLinkParameters.getSelectedRow(),1); 630 631 jTableLinkParameters.updateUI(); 632 } 633 } 635 private void jButtonAddLinkParameterActionPerformed(java.awt.event.ActionEvent evt) { if (this.isInit()) return; 637 638 JRLinkParameterDialog jrpd = new JRLinkParameterDialog((javax.swing.JDialog )SwingUtilities.getWindowAncestor(this), true); 639 jrpd.setVisible(true); 640 641 if (jrpd.getDialogResult() == javax.swing.JOptionPane.OK_OPTION) { 642 it.businesslogic.ireport.JRLinkParameter parameter = jrpd.getParameter(); 643 644 getSectionItemHyperlink().getHyperlinkParameters().add( parameter ); 645 javax.swing.table.DefaultTableModel dtm = (javax.swing.table.DefaultTableModel )jTableLinkParameters.getModel(); 646 dtm.addRow(new Object []{parameter, parameter.getExpression()}); 647 } 648 } 650 private void jComboBoxLinkTypeActionPerformed1(java.awt.event.ActionEvent evt) { if (this.isInit()) return; 652 653 jTabbedPane2.removeAll(); 654 655 if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("None")) { 656 getSectionItemHyperlink().setHyperlinkType( ""+jComboBoxLinkType.getSelectedItem()); 658 getSectionItemHyperlink().setHyperlinkReferenceExpression(""); 659 getSectionItemHyperlink().setHyperlinkAnchorExpression(""); 660 getSectionItemHyperlink().setHyperlinkPageExpression(""); 661 getSectionItemHyperlink().getHyperlinkParameters().clear(); 662 this.jRTextExpressionAreaAnchor.setText(""); 663 this.jRTextExpressionAreaAnchor.setEnabled(false); 664 this.jLabelAnchor.setEnabled(false); 665 this.jRTextExpressionAreaPage.setText(""); 666 this.jRTextExpressionAreaPage.setEnabled(false); 667 this.jLabelPage.setEnabled(false); 668 this.jRTextExpressionAreaReference.setText(""); 669 this.jRTextExpressionAreaReference.setEnabled(false); 670 this.jLabelReference.setEnabled(false); 671 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 675 } else if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("Reference")) { 676 getSectionItemHyperlink().setHyperlinkType( ""+jComboBoxLinkType.getSelectedItem()); 678 getSectionItemHyperlink().setHyperlinkReferenceExpression(""); 679 getSectionItemHyperlink().setHyperlinkAnchorExpression(""); 680 getSectionItemHyperlink().setHyperlinkPageExpression(""); 681 this.jRTextExpressionAreaAnchor.setText(""); 682 this.jRTextExpressionAreaAnchor.setEnabled(false); 683 this.jLabelAnchor.setEnabled(false); 684 this.jRTextExpressionAreaPage.setText(""); 685 this.jRTextExpressionAreaPage.setEnabled(false); 686 this.jLabelPage.setEnabled(false); 687 this.jRTextExpressionAreaReference.setText(""); 688 this.jRTextExpressionAreaReference.setEnabled(true); 689 this.jLabelReference.setEnabled(true); 690 691 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Reference","Reference"), this.jPanelReference); 692 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 695 696 697 } else if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("LocalAnchor")) { 698 getSectionItemHyperlink().setHyperlinkType( ""+jComboBoxLinkType.getSelectedItem()); 700 getSectionItemHyperlink().setHyperlinkReferenceExpression(""); 701 getSectionItemHyperlink().setHyperlinkAnchorExpression(""); 702 getSectionItemHyperlink().setHyperlinkPageExpression(""); 703 this.jRTextExpressionAreaAnchor.setText(""); 704 this.jRTextExpressionAreaAnchor.setEnabled(true); 705 this.jLabelAnchor.setEnabled(true); 706 this.jRTextExpressionAreaPage.setText(""); 707 this.jRTextExpressionAreaPage.setEnabled(false); 708 this.jLabelPage.setEnabled(false); 709 this.jRTextExpressionAreaReference.setText(""); 710 this.jRTextExpressionAreaReference.setEnabled(false); 711 this.jLabelReference.setEnabled(false); 712 713 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Anchor","Anchor"), this.jPanelAnchor); 715 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 717 718 } else if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("LocalPage")) { 719 getSectionItemHyperlink().setHyperlinkType( ""+jComboBoxLinkType.getSelectedItem()); 721 getSectionItemHyperlink().setHyperlinkReferenceExpression(""); 722 getSectionItemHyperlink().setHyperlinkAnchorExpression(""); 723 getSectionItemHyperlink().setHyperlinkPageExpression(""); 724 this.jRTextExpressionAreaAnchor.setText(""); 725 this.jRTextExpressionAreaAnchor.setEnabled(false); 726 this.jLabelAnchor.setEnabled(false); 727 this.jRTextExpressionAreaPage.setText(""); 728 this.jRTextExpressionAreaPage.setEnabled(true); 729 this.jLabelPage.setEnabled(true); 730 this.jRTextExpressionAreaReference.setText(""); 731 this.jRTextExpressionAreaReference.setEnabled(false); 732 this.jLabelReference.setEnabled(false); 733 734 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Page","Page"),this.jPanelPage); 737 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 738 } 739 740 else if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("RemoteAnchor")) { 741 getSectionItemHyperlink().setHyperlinkType( ""+jComboBoxLinkType.getSelectedItem()); 743 getSectionItemHyperlink().setHyperlinkReferenceExpression(""); 744 getSectionItemHyperlink().setHyperlinkAnchorExpression(""); 745 getSectionItemHyperlink().setHyperlinkPageExpression(""); 746 this.jRTextExpressionAreaAnchor.setText(""); 747 this.jRTextExpressionAreaAnchor.setEnabled(true); 748 this.jLabelAnchor.setEnabled(true); 749 this.jRTextExpressionAreaPage.setText(""); 750 this.jRTextExpressionAreaPage.setEnabled(false); 751 this.jLabelPage.setEnabled(false); 752 this.jRTextExpressionAreaReference.setText(""); 753 this.jRTextExpressionAreaReference.setEnabled(true); 754 this.jLabelReference.setEnabled(true); 755 756 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Reference","Reference"),this.jPanelReference); 757 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Anchor","Anchor"), this.jPanelAnchor); 758 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 760 } else if (((String )this.jComboBoxLinkType.getSelectedItem()).equals("RemotePage")) { 761 763 getSectionItemHyperlink().setHyperlinkType( ""+jComboBoxLinkType.getSelectedItem()); 764 getSectionItemHyperlink().setHyperlinkReferenceExpression(""); 765 getSectionItemHyperlink().setHyperlinkAnchorExpression(""); 766 getSectionItemHyperlink().setHyperlinkPageExpression(""); 767 this.jRTextExpressionAreaAnchor.setText(""); 768 this.jRTextExpressionAreaAnchor.setEnabled(false); 769 this.jLabelAnchor.setEnabled(false); 770 this.jRTextExpressionAreaPage.setText(""); 771 this.jRTextExpressionAreaPage.setEnabled(true); 772 this.jLabelPage.setEnabled(true); 773 this.jRTextExpressionAreaReference.setText(""); 774 this.jRTextExpressionAreaReference.setEnabled(true); 775 this.jLabelReference.setEnabled(true); 776 777 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Reference","Reference"),this.jPanelReference); 778 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Page","Page"),this.jPanelPage); 780 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"), this.jPanelLinkParams); 781 } else { 782 784 getSectionItemHyperlink().setHyperlinkType( ""+jComboBoxLinkType.getSelectedItem()); 785 this.jRTextExpressionAreaAnchor.setEnabled(true); 790 this.jLabelAnchor.setEnabled(true); 791 this.jRTextExpressionAreaPage.setEnabled(true); 793 this.jLabelPage.setEnabled(true); 794 this.jRTextExpressionAreaReference.setEnabled(true); 796 this.jLabelReference.setEnabled(true); 797 798 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Reference","Reference"),this.jPanelReference); 799 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Anchor","Anchor"), this.jPanelAnchor); 800 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Page","Page"),this.jPanelPage); 801 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.LinkParameters","Link parameters"),this.jPanelLinkParams); 802 } 803 804 jTabbedPane2.addTab(I18n.getString("sectionItemHyperlinkPanel.tab.Tooltip","Tooltip"), this.jPanelTooltip); 805 } 807 private void jComboBoxLinkTargetActionPerformed1(java.awt.event.ActionEvent evt) { if (this.isInit()) return; 809 810 getSectionItemHyperlink().setHyperlinkTarget( ""+jComboBoxLinkTarget.getSelectedItem()); 811 } 813 814 private javax.swing.JButton jButtonAddLinkParameter; 816 private javax.swing.JButton jButtonModLinkParameter; 817 private javax.swing.JButton jButtonRemLinkParameter; 818 private javax.swing.JComboBox jComboBoxLinkTarget; 819 private javax.swing.JComboBox jComboBoxLinkType; 820 private javax.swing.JLabel jLabel36; 821 private javax.swing.JLabel jLabelAnchor; 822 private javax.swing.JLabel jLabelPage; 823 private javax.swing.JLabel jLabelReference; 824 private javax.swing.JLabel jLabelReference1; 825 private javax.swing.JLabel jLabelTarget; 826 private javax.swing.JPanel jPanel1; 827 private javax.swing.JPanel jPanel3; 828 private javax.swing.JPanel jPanelAnchor; 829 private javax.swing.JPanel jPanelLinkParams; 830 private javax.swing.JPanel jPanelPage; 831 private javax.swing.JPanel jPanelReference; 832 private javax.swing.JPanel jPanelTooltip; 833 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionAreaAnchor; 834 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionAreaPage; 835 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionAreaReference; 836 private it.businesslogic.ireport.gui.JRTextExpressionArea jRTextExpressionAreaTooltip; 837 private javax.swing.JScrollPane jScrollPane1; 838 private javax.swing.JTabbedPane jTabbedPane2; 839 private javax.swing.JTable jTableLinkParameters; 840 842 843 public void jRTextExpressionAreaTooltipTextChanged() { 844 if (this.isInit()) return; 845 getSectionItemHyperlink().setHyperlinkTooltipExpression( ""+jRTextExpressionAreaTooltip.getText()); 846 } 847 848 public void jRTextExpressionAreaReferenceTextChanged() { 849 if (this.isInit()) return; 850 getSectionItemHyperlink().setHyperlinkReferenceExpression( ""+jRTextExpressionAreaReference.getText()); 851 } 852 853 public void jRTextExpressionAreaAnchorTextChanged() { 854 if (this.isInit()) return; 855 getSectionItemHyperlink().setHyperlinkAnchorExpression( ""+jRTextExpressionAreaAnchor.getText()); 856 } 857 858 public void jRTextExpressionAreaPageTextChanged() { 859 if (this.isInit()) return; 860 getSectionItemHyperlink().setHyperlinkPageExpression( ""+jRTextExpressionAreaPage.getText()); 861 } 862 public void applyI18n(){ 863 864 jButtonAddLinkParameter.setText(I18n.getString("sectionItemHyperlinkPanel.buttonAddLinkParameter","Add")); 866 jButtonModLinkParameter.setText(I18n.getString("sectionItemHyperlinkPanel.buttonModLinkParameter","Modify")); 867 jButtonRemLinkParameter.setText(I18n.getString("sectionItemHyperlinkPanel.buttonRemLinkParameter","Remove")); 868 jLabel36.setText(I18n.getString("sectionItemHyperlinkPanel.label36","Hyperlink type")); 869 jLabelAnchor.setText(I18n.getString("sectionItemHyperlinkPanel.labelAnchor","Hyperlink Anchor Expression")); 870 jLabelPage.setText(I18n.getString("sectionItemHyperlinkPanel.labelPage","Hyperlink Page Expression")); 871 jLabelReference.setText(I18n.getString("sectionItemHyperlinkPanel.labelReference","Hyperlink Reference Expression")); 872 jLabelReference1.setText(I18n.getString("sectionItemHyperlinkPanel.labelReference1","Tooltip Expression")); 873 jLabelTarget.setText(I18n.getString("sectionItemHyperlinkPanel.labelTarget","Hyperlink target")); 874 876 jTableLinkParameters.getColumnModel().getColumn(0).setHeaderValue( I18n.getString("sectionItemHyperlinkPanel.tablecolumn.parameterName","Parameter name") ); 877 jTableLinkParameters.getColumnModel().getColumn(1).setHeaderValue( I18n.getString("sectionItemHyperlinkPanel.tablecolumn.expression","Expression") ); 878 879 } 880 } 881 | Popular Tags |