summaryrefslogtreecommitdiff
path: root/sources/events
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2008-05-27 18:04:53 +0000
committerPaul Buetow <paul@buetow.org>2008-05-27 18:04:53 +0000
commitce4b28ff4047fa50974c3c3d2e370db60a2b3553 (patch)
treeaaea8717a26d504f14f54b389a379a8b02b88199 /sources/events
parent97a3a4f07cdc8437f73f4270b237e85c7739a6be (diff)
Pull down menu now sorted by protocol's shortnames
Diffstat (limited to 'sources/events')
-rw-r--r--sources/events/VSAbstractEvent.java4
-rw-r--r--sources/events/VSRegisteredEvents.java68
-rw-r--r--sources/events/internal/ProtocolEvent.java2
3 files changed, 46 insertions, 28 deletions
diff --git a/sources/events/VSAbstractEvent.java b/sources/events/VSAbstractEvent.java
index 27be457..22fb81c 100644
--- a/sources/events/VSAbstractEvent.java
+++ b/sources/events/VSAbstractEvent.java
@@ -72,7 +72,7 @@ abstract public class VSAbstractEvent extends VSPrefs {
* @return the name
*/
public String getName() {
- return VSRegisteredEvents.getName(eventClassname);
+ return VSRegisteredEvents.getNameByClassname(eventClassname);
}
/**
@@ -91,7 +91,7 @@ abstract public class VSAbstractEvent extends VSPrefs {
*/
public String getShortname() {
if (eventShortname == null)
- return VSRegisteredEvents.getShortname(eventClassname);
+ return VSRegisteredEvents.getShortnameByClassname(eventClassname);
return eventShortname;
}
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<String,String> eventClassnames =
+ /** The event classnames by eventnames. */
+ private static HashMap<String,String> eventClassnamesByNames =
new HashMap<String,String>();
- /** The event shortnames. */
- private static HashMap<String,String> eventShortnames =
+ /** The event shortnames by classnames. */
+ private static HashMap<String,String> eventShortnamesByClassnames =
new HashMap<String,String>();
- /** The event names. */
- private static HashMap<String,String> eventNames =
+ /** The event names by classnames. */
+ private static HashMap<String,String> eventNamesByClassnames =
+ new HashMap<String,String>();
+
+ /** The event classnames by shortnames. */
+ private static HashMap<String,String> eventClassnamesByShortnames =
new HashMap<String,String>();
/** The editable protocols classnames. */
@@ -128,11 +132,11 @@ public final class VSRegisteredEvents {
* @return the protocol names
*/
public static Vector<String> getProtocolNames() {
- Set<String> set = eventClassnames.keySet();
+ Set<String> set = eventClassnamesByNames.keySet();
Vector<String> vector = new Vector<String>();
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<String> getProtocolClassnames() {
- Set<String> set = eventNames.keySet();
+ ArrayList<String> shortnames = new ArrayList<String>();
+ shortnames.addAll(eventClassnamesByShortnames.keySet());
+ Collections.sort(shortnames);
Vector<String> vector = new Vector<String>();
- 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<String> getNonProtocolNames() {
- Set<String> set = eventClassnames.keySet();
+ Set<String> set = eventClassnamesByNames.keySet();
Vector<String> vector = new Vector<String>();
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<String> getNonProtocolClassnames() {
- Set<String> set = eventNames.keySet();
+ Set<String> set = eventNamesByClassnames.keySet();
Vector<String> vector = new Vector<String>();
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);
}
}
diff --git a/sources/events/internal/ProtocolEvent.java b/sources/events/internal/ProtocolEvent.java
index 108bfb8..4b9adc3 100644
--- a/sources/events/internal/ProtocolEvent.java
+++ b/sources/events/internal/ProtocolEvent.java
@@ -87,7 +87,7 @@ public class ProtocolEvent extends VSAbstractEvent {
protocol.isServer(isProtocolActivation);
StringBuffer buffer = new StringBuffer();
- buffer.append(VSRegisteredEvents.getShortname(protocolClassname));
+ buffer.append(VSRegisteredEvents.getShortnameByClassname(protocolClassname));
buffer.append(" ");
buffer.append(isClientProtocol
? prefs.getString("lang.client") : prefs.getString("lang.server"));