/// <summary>
 /// Report a bound property update to any registered listeners. No event is
 /// fired if old and new are equal and non-null. </summary>
 /// <param name="name"> The programmatic name of the property that was changed </param>
 /// <param name="oldValue">  The old value of the property </param>
 /// <param name="newValue">  The new value of the property </param>
 public virtual void FirePropertyChange(String name, Object oldValue, Object newValue)
 {
     PcSupport.FirePropertyChange(name, oldValue, newValue);
 }
 /// <summary>
 /// Remove a PropertyChangeListener for a specific property.
 /// If <code>pcl</code> was added more than once to the same event
 /// source for the specified property, it will be notified one less time
 /// after being removed.
 /// If <code>name</code> is null, no exception is thrown
 /// and no action is taken.
 /// If <code>pcl</code> is null, or was never added for the specified
 /// property, no exception is thrown and no action is taken.
 /// </summary>
 /// <param name="name"> The name of the property that was listened on </param>
 /// <param name="pcl"> The PropertyChangeListener to be removed </param>
 public virtual void RemovePropertyChangeListener(String name, PropertyChangeListener pcl)
 {
     PcSupport.RemovePropertyChangeListener(name, pcl);
 }