1 19 package org.netbeans.modules.xml.tax.beans.customizer; 20 21 import java.beans.PropertyChangeEvent ; 22 23 import org.netbeans.tax.TreeException; 24 import org.netbeans.tax.TreeCharacterReference; 25 26 import org.netbeans.modules.xml.tax.util.TAXUtil; 27 28 33 public class TreeCharacterReferenceCustomizer extends AbstractTreeCustomizer { 34 35 36 private static final long serialVersionUID =-7799211701822931611L; 37 38 39 43 44 public TreeCharacterReferenceCustomizer () { 45 super (); 46 47 initComponents (); 48 nameLabel.setDisplayedMnemonic (Util.THIS.getChar ("MNE_CharRef_name")); 50 initAccessibility (); 51 } 52 53 54 58 protected TreeCharacterReference getCharacterReference () { 59 return (TreeCharacterReference)getTreeObject (); 60 } 61 62 65 protected final void safePropertyChange (PropertyChangeEvent pche) { 66 super.safePropertyChange (pche); 67 68 if (pche.getPropertyName ().equals (TreeCharacterReference.PROP_NAME)) { 69 updateNameComponent (); 70 } 71 } 72 73 75 protected void updateNameComponent () { 76 nameField.setText (getCharacterReference ().getName ()); 77 } 78 79 81 protected void updateCharacterReferenceName () { 82 try { 83 getCharacterReference ().setName (nameField.getText ()); 84 } catch (TreeException exc) { 85 updateNameComponent (); 86 TAXUtil.notifyTreeException (exc); 87 } 88 } 89 90 92 protected void initComponentValues () { 93 updateNameComponent (); 94 } 95 96 98 protected void updateReadOnlyStatus (boolean editable) { 99 nameField.setEditable (editable); 100 } 101 102 107 private void initComponents() { java.awt.GridBagConstraints gridBagConstraints; 109 110 nameLabel = new javax.swing.JLabel (); 111 nameField = new javax.swing.JTextField (); 112 fillPanel = new javax.swing.JPanel (); 113 114 setLayout(new java.awt.GridBagLayout ()); 115 116 nameLabel.setText(Util.THIS.getString ("PROP_CharRef_name")); 117 nameLabel.setLabelFor(nameField); 118 gridBagConstraints = new java.awt.GridBagConstraints (); 119 gridBagConstraints.gridx = 0; 120 gridBagConstraints.gridy = 0; 121 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; 122 gridBagConstraints.insets = new java.awt.Insets (12, 12, 0, 0); 123 add(nameLabel, gridBagConstraints); 124 125 nameField.setColumns(20); 126 nameField.addActionListener(new java.awt.event.ActionListener () { 127 public void actionPerformed(java.awt.event.ActionEvent evt) { 128 nameFieldActionPerformed(evt); 129 } 130 }); 131 132 nameField.addFocusListener(new java.awt.event.FocusAdapter () { 133 public void focusGained(java.awt.event.FocusEvent evt) { 134 nameFieldFocusGained(evt); 135 } 136 public void focusLost(java.awt.event.FocusEvent evt) { 137 nameFieldFocusLost(evt); 138 } 139 }); 140 141 gridBagConstraints = new java.awt.GridBagConstraints (); 142 gridBagConstraints.gridx = 1; 143 gridBagConstraints.gridy = 0; 144 gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 145 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 146 gridBagConstraints.weightx = 1.0; 147 gridBagConstraints.insets = new java.awt.Insets (12, 12, 0, 11); 148 add(nameField, gridBagConstraints); 149 150 fillPanel.setPreferredSize(new java.awt.Dimension (0, 0)); 151 gridBagConstraints = new java.awt.GridBagConstraints (); 152 gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 153 gridBagConstraints.gridheight = java.awt.GridBagConstraints.REMAINDER; 154 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 155 gridBagConstraints.weightx = 1.0; 156 gridBagConstraints.weighty = 1.0; 157 add(fillPanel, gridBagConstraints); 158 159 } 161 private void nameFieldFocusGained(java.awt.event.FocusEvent evt) { if ("new".equals(getClientProperty("xml-edit-mode"))) { nameField.selectAll(); 164 } 165 } 167 private void nameFieldFocusLost(java.awt.event.FocusEvent evt) { updateCharacterReferenceName (); 170 } 172 private void nameFieldActionPerformed(java.awt.event.ActionEvent evt) { updateCharacterReferenceName (); 175 } 177 private javax.swing.JLabel nameLabel; 179 private javax.swing.JTextField nameField; 180 private javax.swing.JPanel fillPanel; 181 183 185 public void initAccessibility (){ 186 187 this.getAccessibleContext ().setAccessibleDescription (Util.THIS.getString ("ACSD_TreeCharacterReferenceCustomizer")); 188 nameField.getAccessibleContext ().setAccessibleDescription (Util.THIS.getString ("ACSD_nameField5")); 189 } 190 } 191 | Popular Tags |