1 32 33 package it.businesslogic.ireport.gui.sheet; 34 35 import it.businesslogic.ireport.gui.FieldPatternDialog; 36 import it.businesslogic.ireport.gui.MainFrame; 37 import it.businesslogic.ireport.util.I18n; 38 39 43 public class PatternSheetPropertyComponent extends javax.swing.JPanel { 44 45 String expression = ""; 46 47 private boolean init = false; 48 49 52 public void setText(String fakeExpression) 53 { 54 setInit(true); 55 jTextField1.setText(fakeExpression); 56 jTextField1.setCaretPosition(0); 57 setInit(false); 58 } 59 60 public void setExpression(String expression) 61 { 62 this.expression = expression; 63 setInit(true); 64 jTextField1.setText(expression); 65 jTextField1.setCaretPosition(0); 66 setInit(false); 67 } 68 69 public String getExpression() 70 { 71 return expression; 72 } 73 74 75 public PatternSheetPropertyComponent() { 76 initComponents(); 77 78 jTextField1.getDocument().addDocumentListener( new javax.swing.event.DocumentListener () { 79 public void changedUpdate(javax.swing.event.DocumentEvent evt) { 80 try { 81 actionPerformed( evt.getDocument().getText(0, evt.getDocument().getLength() )); 82 } catch (Exception ex){} 83 } 84 public void insertUpdate(javax.swing.event.DocumentEvent evt) { 85 try { 86 actionPerformed( evt.getDocument().getText(0, evt.getDocument().getLength() )); 87 } catch (Exception ex){} 88 } 89 public void removeUpdate(javax.swing.event.DocumentEvent evt) { 90 try { 91 actionPerformed( evt.getDocument().getText(0, evt.getDocument().getLength() )); 92 } catch (Exception ex){} 93 } 94 }); 95 applyI18n(); 96 } 97 98 public void actionPerformed(String newText) 99 { 100 if (isInit()) return; 101 expression = newText; 102 java.awt.event.ActionEvent event = new java.awt.event.ActionEvent (this,0,expression); 103 fireActionListenerActionPerformed(event); 104 } 105 106 111 private void initComponents() { 113 java.awt.GridBagConstraints gridBagConstraints; 114 115 jTextField1 = new javax.swing.JTextField (); 116 jButton1 = new javax.swing.JButton (); 117 118 setLayout(new java.awt.GridBagLayout ()); 119 120 setBackground(new java.awt.Color (255, 255, 255)); 121 jTextField1.setBorder(null); 122 gridBagConstraints = new java.awt.GridBagConstraints (); 123 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 124 gridBagConstraints.weightx = 1.0; 125 add(jTextField1, gridBagConstraints); 126 127 jButton1.setText("..."); 128 jButton1.setMaximumSize(new java.awt.Dimension (19, 10)); 129 jButton1.setMinimumSize(new java.awt.Dimension (19, 10)); 130 jButton1.setPreferredSize(new java.awt.Dimension (19, 10)); 131 jButton1.addActionListener(new java.awt.event.ActionListener () { 132 public void actionPerformed(java.awt.event.ActionEvent evt) { 133 jButton1ActionPerformed(evt); 134 } 135 }); 136 137 gridBagConstraints = new java.awt.GridBagConstraints (); 138 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 139 gridBagConstraints.weighty = 1.0; 140 add(jButton1, gridBagConstraints); 141 142 } 144 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 146 FieldPatternDialog ptd = new FieldPatternDialog(MainFrame.getMainInstance(), true); 147 ptd.setPattern( expression ); 148 ptd.setVisible(true); 149 if (ptd.getDialogResult() == javax.swing.JOptionPane.OK_OPTION) 150 { 151 setInit(true); 152 setExpression( ptd.getPattern() ); 153 setInit(false); 154 actionPerformed( ptd.getPattern()); 155 } 156 157 } 159 160 private javax.swing.JButton jButton1; 162 private javax.swing.JTextField jTextField1; 163 165 168 private javax.swing.event.EventListenerList listenerList = null; 169 170 174 public synchronized void addActionListener(java.awt.event.ActionListener listener) { 175 176 if (listenerList == null ) { 177 listenerList = new javax.swing.event.EventListenerList (); 178 } 179 listenerList.add (java.awt.event.ActionListener .class, listener); 180 } 181 182 186 public synchronized void removeActionListener(java.awt.event.ActionListener listener) { 187 188 listenerList.remove (java.awt.event.ActionListener .class, listener); 189 } 190 191 196 private void fireActionListenerActionPerformed(java.awt.event.ActionEvent event) { 197 198 if (listenerList == null) return; 199 Object [] listeners = listenerList.getListenerList (); 200 for (int i = listeners.length - 2; i >= 0; i -= 2) { 201 if (listeners[i]==java.awt.event.ActionListener .class) { 202 ((java.awt.event.ActionListener )listeners[i+1]).actionPerformed (event); 203 } 204 } 205 } 206 207 public boolean isInit() { 208 return init; 209 } 210 211 public void setInit(boolean init) { 212 this.init = init; 213 } 214 215 public void applyI18n(){ 216 jButton1.setText(I18n.getString("patternSheetPropertyComponent.button1","...")); 218 } 220 } 221 | Popular Tags |