svn commit: r13029 - trunk/src_new/org/argouml/application/events/ArgoEventPump.java
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: tfmorris
Date: 2007-07-10 11:02:00-0700
New Revision: 13029
Modified:
trunk/src_new/org/argouml/application/events/ArgoEventPump.java
Log:
Issue 4789 - Add status event to be used for communicating with status line in browser (and other interested listeners)
Modified: trunk/src_new/org/argouml/application/events/ArgoEventPump.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/org/argouml/application/events/ArgoEventPump.java?view=diff&rev=13029&p1=trunk/src_new/org/argouml/application/events/ArgoEventPump.java&p2=trunk/src_new/org/argouml/application/events/ArgoEventPump.java&r1=13028&r2=13029
==============================================================================
--- trunk/src_new/org/argouml/application/events/ArgoEventPump.java (original)
+++ trunk/src_new/org/argouml/application/events/ArgoEventPump.java 2007-07-10 11:02:00-0700
@@ -199,6 +199,42 @@
}
}
+
+ /**
+ * Handle firing a status text event.
+ *
+ * @param event The event to be fired.
+ * @param listener The listener.
+ */
+ private void handleFireStatusEvent(
+ ArgoStatusEvent event,
+ ArgoStatusEventListener listener) {
+ switch (event.getEventType()) {
+ case ArgoEventTypes.STATUS_TEXT :
+ listener.statusText(event);
+ break;
+
+ case ArgoEventTypes.STATUS_CLEARED :
+ listener.statusCleared(event);
+ break;
+
+ case ArgoEventTypes.STATUS_PROJECT_SAVED :
+ listener.projectSaved(event);
+ break;
+
+ case ArgoEventTypes.STATUS_PROJECT_LOADED :
+ listener.projectLoaded(event);
+ break;
+
+ case ArgoEventTypes.STATUS_PROJECT_MODIFIED :
+ listener.projectModified(event);
+ break;
+
+ default :
+ LOG.error("Invalid event:" + event.getEventType());
+ break;
+ }
+ }
/**
* Handle firing a generator event.
*
@@ -237,6 +273,10 @@
handleFireHelpEvent((ArgoHelpEvent) event,
(ArgoHelpEventListener) listener);
}
+ if (listener instanceof ArgoStatusEventListener) {
+ handleFireStatusEvent((ArgoStatusEvent) event,
+ (ArgoStatusEventListener) listener);
+ }
} else {
if (event.getEventType() >= ArgoEventTypes.ANY_NOTATION_EVENT
&& event.getEventType() < ArgoEventTypes.LAST_NOTATION_EVENT) {
@@ -259,6 +299,13 @@
(ArgoGeneratorEventListener) listener);
}
}
+ if (event.getEventType() >= ArgoEventTypes.ANY_STATUS_EVENT
+ && event.getEventType() < ArgoEventTypes.LAST_STATUS_EVENT) {
+ if (listener instanceof ArgoStatusEventListener) {
+ handleFireStatusEvent((ArgoStatusEvent) event,
+ (ArgoStatusEventListener) listener);
+ }
+ }
}
}