class DeinObjekt {
//...
Vector m_vPropertyChangeListener = new Vector();
// fügt den Listener hinzu
public void addPropertyChangeListener(PropertyChangeListener p) {
m_vPropertyChangeListener.addElement(p);
}
// entfernt den Listener
public void removePropertyChangeListener(PropertyChangeListener p) {
m_vPropertyChangeListener.remove(p);
}
// teilt allen Listener mit, dass sich was geändert hat
private void firePropertyChange(Object source, String name, String oldValue, String newValue) {
PropertyChangeEvent e = new PropertyChangeEvent(source, name, oldValue, newValue);
for ( int i=0; i < m_vPropertyChangeListener.size(); i++ ) {
((PropertyChangeListener)m_vPropertyChangeListener.get(i)).propertyChange(e);
}
}
public void deineSetter(String sNew) {
String sOld = deinString;
deinString = sNew;
this.firePropertyChange(this, "deinString", sOld, deinString);
}
//...
}