From ce4b28ff4047fa50974c3c3d2e370db60a2b3553 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Tue, 27 May 2008 18:04:53 +0000 Subject: Pull down menu now sorted by protocol's shortnames --- sources/events/VSRegisteredEvents.java | 68 +++++++++++++++++++++------------- 1 file changed, 43 insertions(+), 25 deletions(-) (limited to 'sources/events/VSRegisteredEvents.java') diff --git a/sources/events/VSRegisteredEvents.java b/sources/events/VSRegisteredEvents.java index 997cc19..52cb042 100644 --- a/sources/events/VSRegisteredEvents.java +++ b/sources/events/VSRegisteredEvents.java @@ -16,16 +16,20 @@ import utils.*; public final class VSRegisteredEvents { private static final long serialVersionUID = 1L; - /** The event classnames. */ - private static HashMap eventClassnames = + /** The event classnames by eventnames. */ + private static HashMap eventClassnamesByNames = new HashMap(); - /** The event shortnames. */ - private static HashMap eventShortnames = + /** The event shortnames by classnames. */ + private static HashMap eventShortnamesByClassnames = new HashMap(); - /** The event names. */ - private static HashMap eventNames = + /** The event names by classnames. */ + private static HashMap eventNamesByClassnames = + new HashMap(); + + /** The event classnames by shortnames. */ + private static HashMap eventClassnamesByShortnames = new HashMap(); /** The editable protocols classnames. */ @@ -128,11 +132,11 @@ public final class VSRegisteredEvents { * @return the protocol names */ public static Vector getProtocolNames() { - Set set = eventClassnames.keySet(); + Set set = eventClassnamesByNames.keySet(); Vector vector = new Vector(); for (String eventName : set) - if (getClassname(eventName).startsWith("protocols.implementations")) + if (getClassnameByEventname(eventName).startsWith("protocols.implementations")) vector.add(eventName); Collections.sort(vector); @@ -146,14 +150,16 @@ public final class VSRegisteredEvents { * @return the protocol classnames */ public static Vector getProtocolClassnames() { - Set set = eventNames.keySet(); + ArrayList shortnames = new ArrayList(); + shortnames.addAll(eventClassnamesByShortnames.keySet()); + Collections.sort(shortnames); Vector vector = new Vector(); - for (String eventClassname : set) + for (String eventShortname : shortnames) { + String eventClassname = getClassnameByShortname(eventShortname); if (eventClassname.startsWith("protocols.implementations")) vector.add(eventClassname); - - Collections.sort(vector); + } return vector; } @@ -164,11 +170,11 @@ public final class VSRegisteredEvents { * @return the non protocol names */ public static Vector getNonProtocolNames() { - Set set = eventClassnames.keySet(); + Set set = eventClassnamesByNames.keySet(); Vector vector = new Vector(); for (String eventName : set) - if (getClassname(eventName).startsWith("events.implementations")) + if (getClassnameByEventname(eventName).startsWith("events.implementations")) vector.add(eventName); Collections.sort(vector); @@ -182,7 +188,7 @@ public final class VSRegisteredEvents { * @return the non protocol classnames */ public static Vector getNonProtocolClassnames() { - Set set = eventNames.keySet(); + Set set = eventNamesByClassnames.keySet(); Vector vector = new Vector(); for (String eventClassname : set) @@ -201,8 +207,8 @@ public final class VSRegisteredEvents { * * @return the classname */ - public static String getClassname(String eventName) { - return eventClassnames.get(eventName); + public static String getClassnameByEventname(String eventName) { + return eventClassnamesByNames.get(eventName); } /** @@ -212,8 +218,8 @@ public final class VSRegisteredEvents { * * @return the name */ - public static String getName(String eventClassname) { - return eventNames.get(eventClassname); + public static String getNameByClassname(String eventClassname) { + return eventNamesByClassnames.get(eventClassname); } /** @@ -223,8 +229,19 @@ public final class VSRegisteredEvents { * * @return the shortname */ - public static String getShortname(String eventClassname) { - return eventShortnames.get(eventClassname); + public static String getShortnameByClassname(String eventClassname) { + return eventShortnamesByClassnames.get(eventClassname); + } + + /** + * Gets the classname. + * + * @param eventShortname the event shortname + * + * @return the shortname + */ + public static String getClassnameByShortname(String eventShortname) { + return eventClassnamesByShortnames.get(eventShortname); } /** @@ -256,7 +273,7 @@ public final class VSRegisteredEvents { * @return the lang.process.removeevent */ public static VSAbstractEvent createEventInstanceByName(String eventName, VSProcess process) { - return createEventInstanceByClassname(eventClassnames.get(eventName), process); + return createEventInstanceByClassname(eventClassnamesByNames.get(eventName), process); } /** @@ -270,8 +287,9 @@ public final class VSRegisteredEvents { if (eventShortname == null) eventShortname = eventName; - eventNames.put(eventClassname, eventName); - eventShortnames.put(eventClassname, eventShortname); - eventClassnames.put(eventName, eventClassname); + eventNamesByClassnames.put(eventClassname, eventName); + eventShortnamesByClassnames.put(eventClassname, eventShortname); + eventClassnamesByNames.put(eventName, eventClassname); + eventClassnamesByShortnames.put(eventShortname, eventClassname); } } -- cgit v1.2.3