/** Notifies all listeners of the change (add, remove) and does the change. */
public void fireObjAttributeEvent(AttributeEvent e) {
setDirty(true);
for (EventListener listener : listenerList.getListeners(ObjAttributeListener.class)) {
ObjAttributeListener temp = (ObjAttributeListener) listener;
switch (e.getId()) {
case MapEvent.ADD:
temp.objAttributeAdded(e);
break;
case MapEvent.CHANGE:
temp.objAttributeChanged(e);
break;
case MapEvent.REMOVE:
temp.objAttributeRemoved(e);
break;
default:
throw new IllegalArgumentException("Invalid AttributeEvent type: " + e.getId());
}
}