* @param listener The listener is added.
*/
public void addPropertyChangeListener(PropertyChangeListener listener) {
synchronized(listenersLock) {
PropertyChangeListener results[] = new PropertyChangeListener[listeners.length + 1];
System.arraycopy(listeners, 0, results, 0, listeners.length);
//Add the PropertyChangeListener to the new position.
results[listeners.length] = listener;
listeners = results;
}