diff options
Diffstat (limited to 'sources/events/VSEvent.java')
| -rw-r--r-- | sources/events/VSEvent.java | 47 |
1 files changed, 44 insertions, 3 deletions
diff --git a/sources/events/VSEvent.java b/sources/events/VSEvent.java index 2223d22..e84e3aa 100644 --- a/sources/events/VSEvent.java +++ b/sources/events/VSEvent.java @@ -1,8 +1,49 @@ package events; import core.VSProcess; +import prefs.VSPrefs; -public interface VSEvent { - public void init(VSProcess process); - public void logg(String message); +abstract public class VSEvent extends VSPrefs { + protected VSPrefs prefs; + protected VSProcess process; + private String eventClassname; + + public void init(VSProcess process) { + this.process = process; + this.prefs = process.getPrefs(); + } + + protected final void setClassname(String eventClassname) { + if (eventClassname.startsWith("class ")) + eventClassname = eventClassname.substring(6); + + this.eventClassname = eventClassname; + } + + public final String getClassname() { + return eventClassname; + } + + public String getName() { + return VSRegisteredEvents.getName(eventClassname); + } + + public final String getShortname() { + return VSRegisteredEvents.getShortname(eventClassname); + } + + public final VSProcess getProcess() { + return process; + } + + public void logg(String message) { + process.logg(toString() + "; " + message); + } + + public boolean equals(VSEvent event) { + return super.getID() == event.getID(); + } + + abstract protected void onInit(); + abstract public void onStart(); } |
