aboutsummaryrefslogtreecommitdiff
path: root/src/Java/binnie/craftgui/events
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-01-20 14:24:34 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-01-20 14:24:34 +1000
commit869c206c4fcc8001bd2e1d66f704290331813835 (patch)
tree96735ce8fe4665e2759c3374221d6f06f4527df2 /src/Java/binnie/craftgui/events
parentec2c72827f01dd4bb2174137f1ab162f9ddaab62 (diff)
downloadGT5-Unofficial-869c206c4fcc8001bd2e1d66f704290331813835.tar.gz
GT5-Unofficial-869c206c4fcc8001bd2e1d66f704290331813835.tar.bz2
GT5-Unofficial-869c206c4fcc8001bd2e1d66f704290331813835.zip
Initial Commit
Diffstat (limited to 'src/Java/binnie/craftgui/events')
-rw-r--r--src/Java/binnie/craftgui/events/Event.java23
-rw-r--r--src/Java/binnie/craftgui/events/EventButtonClicked.java21
-rw-r--r--src/Java/binnie/craftgui/events/EventCycleChanged.java20
-rw-r--r--src/Java/binnie/craftgui/events/EventHandler.java53
-rw-r--r--src/Java/binnie/craftgui/events/EventKey.java63
-rw-r--r--src/Java/binnie/craftgui/events/EventMouse.java156
-rw-r--r--src/Java/binnie/craftgui/events/EventTextEdit.java21
-rw-r--r--src/Java/binnie/craftgui/events/EventToggleButtonClicked.java20
-rw-r--r--src/Java/binnie/craftgui/events/EventValueChanged.java29
-rw-r--r--src/Java/binnie/craftgui/events/EventValuesChanged.java20
-rw-r--r--src/Java/binnie/craftgui/events/EventWidget.java272
11 files changed, 698 insertions, 0 deletions
diff --git a/src/Java/binnie/craftgui/events/Event.java b/src/Java/binnie/craftgui/events/Event.java
new file mode 100644
index 0000000000..0b4a39426a
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/Event.java
@@ -0,0 +1,23 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+
+public class Event
+{
+ IWidget origin;
+
+ public Event(IWidget origin)
+ {
+ this.origin = origin;
+ }
+
+ public IWidget getOrigin()
+ {
+ return this.origin;
+ }
+
+ public boolean isOrigin(IWidget widget)
+ {
+ return this.origin == widget;
+ }
+}
diff --git a/src/Java/binnie/craftgui/events/EventButtonClicked.java b/src/Java/binnie/craftgui/events/EventButtonClicked.java
new file mode 100644
index 0000000000..1823e6d430
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/EventButtonClicked.java
@@ -0,0 +1,21 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+
+public class EventButtonClicked
+ extends Event
+{
+ public EventButtonClicked(IWidget origin)
+ {
+ super(origin);
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventButtonClicked>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+}
diff --git a/src/Java/binnie/craftgui/events/EventCycleChanged.java b/src/Java/binnie/craftgui/events/EventCycleChanged.java
new file mode 100644
index 0000000000..628a177449
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/EventCycleChanged.java
@@ -0,0 +1,20 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+
+public class EventCycleChanged
+ extends Event
+{
+ public int value;
+
+ public EventCycleChanged(IWidget origin, int value)
+ {
+ super(origin);
+ this.value = value;
+ }
+
+ public int getValue()
+ {
+ return this.value;
+ }
+}
diff --git a/src/Java/binnie/craftgui/events/EventHandler.java b/src/Java/binnie/craftgui/events/EventHandler.java
new file mode 100644
index 0000000000..9d2e5d2ad3
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/EventHandler.java
@@ -0,0 +1,53 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+import java.util.List;
+
+public abstract class EventHandler<E extends Event>
+{
+ Class<E> eventClass;
+ Origin origin = Origin.Any;
+ IWidget relative = null;
+
+ public EventHandler(Class<E> eventClass)
+ {
+ this.eventClass = eventClass;
+ }
+
+ public EventHandler setOrigin(Origin origin, IWidget relative)
+ {
+ this.origin = origin;
+ this.relative = relative;
+ return this;
+ }
+
+ public abstract void onEvent(E paramE);
+
+ public final boolean handles(Event e)
+ {
+ return (this.eventClass.isInstance(e)) && (this.origin.isOrigin(e.getOrigin(), this.relative));
+ }
+
+ public static enum Origin
+ {
+ Any, Self, Parent, DirectChild;
+
+ private Origin() {}
+
+ public boolean isOrigin(IWidget origin, IWidget test)
+ {
+ switch (EventHandler.1.$SwitchMap$binnie$craftgui$events$EventHandler$Origin[ordinal()])
+ {
+ case 1:
+ return true;
+ case 2:
+ return test.getWidgets().contains(origin);
+ case 3:
+ return test.getParent() == origin;
+ case 4:
+ return test == origin;
+ }
+ return false;
+ }
+ }
+}
diff --git a/src/Java/binnie/craftgui/events/EventKey.java b/src/Java/binnie/craftgui/events/EventKey.java
new file mode 100644
index 0000000000..e49b736f43
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/EventKey.java
@@ -0,0 +1,63 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+
+public abstract class EventKey
+ extends Event
+{
+ char character;
+ int key;
+
+ public EventKey(IWidget origin, char character, int key)
+ {
+ super(origin);
+ this.character = character;
+ this.key = key;
+ }
+
+ public char getCharacter()
+ {
+ return this.character;
+ }
+
+ public int getKey()
+ {
+ return this.key;
+ }
+
+ public static class Down
+ extends EventKey
+ {
+ public Down(IWidget origin, char character, int key)
+ {
+ super(character, key);
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventKey.Down>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class Up
+ extends EventKey
+ {
+ public Up(IWidget origin, char character, int key)
+ {
+ super(character, key);
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventKey.Up>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+}
diff --git a/src/Java/binnie/craftgui/events/EventMouse.java b/src/Java/binnie/craftgui/events/EventMouse.java
new file mode 100644
index 0000000000..162552098a
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/EventMouse.java
@@ -0,0 +1,156 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+
+public abstract class EventMouse
+ extends Event
+{
+ public EventMouse(IWidget origin)
+ {
+ super(origin);
+ }
+
+ public static class Button
+ extends EventMouse
+ {
+ int x;
+ int y;
+ int button;
+
+ public int getX()
+ {
+ return this.x;
+ }
+
+ public int getY()
+ {
+ return this.y;
+ }
+
+ public int getButton()
+ {
+ return this.button;
+ }
+
+ public Button(IWidget currentMousedOverWidget, int x, int y, int button)
+ {
+ super();
+ this.x = x;
+ this.y = y;
+ this.button = button;
+ }
+ }
+
+ public static class Down
+ extends EventMouse.Button
+ {
+ public Down(IWidget currentMousedOverWidget, int x, int y, int button)
+ {
+ super(x, y, button);
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventMouse.Down>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class Up
+ extends EventMouse.Button
+ {
+ public Up(IWidget currentMousedOverWidget, int x, int y, int button)
+ {
+ super(x, y, button);
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventMouse.Up>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class Move
+ extends EventMouse
+ {
+ float dx;
+ float dy;
+
+ public float getDx()
+ {
+ return this.dx;
+ }
+
+ public float getDy()
+ {
+ return this.dy;
+ }
+
+ public Move(IWidget origin, float dx, float dy)
+ {
+ super();
+ this.dx = dx;
+ this.dy = dy;
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventMouse.Move>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class Drag
+ extends EventMouse.Move
+ {
+ public Drag(IWidget draggedWidget, float dx, float dy)
+ {
+ super(dx, dy);
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventMouse.Drag>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class Wheel
+ extends EventMouse
+ {
+ int dWheel = 0;
+
+ public Wheel(IWidget origin, int dWheel)
+ {
+ super();
+ this.dWheel = (dWheel / 28);
+ }
+
+ public int getDWheel()
+ {
+ return this.dWheel;
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventMouse.Wheel>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+}
diff --git a/src/Java/binnie/craftgui/events/EventTextEdit.java b/src/Java/binnie/craftgui/events/EventTextEdit.java
new file mode 100644
index 0000000000..d61ae34008
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/EventTextEdit.java
@@ -0,0 +1,21 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+
+public class EventTextEdit
+ extends EventValueChanged<String>
+{
+ public EventTextEdit(IWidget origin, String text)
+ {
+ super(origin, text);
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventTextEdit>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+}
diff --git a/src/Java/binnie/craftgui/events/EventToggleButtonClicked.java b/src/Java/binnie/craftgui/events/EventToggleButtonClicked.java
new file mode 100644
index 0000000000..79ff26fa59
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/EventToggleButtonClicked.java
@@ -0,0 +1,20 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+
+public class EventToggleButtonClicked
+ extends Event
+{
+ boolean toggled;
+
+ public EventToggleButtonClicked(IWidget origin, boolean toggled)
+ {
+ super(origin);
+ this.toggled = toggled;
+ }
+
+ public boolean isActive()
+ {
+ return this.toggled;
+ }
+}
diff --git a/src/Java/binnie/craftgui/events/EventValueChanged.java b/src/Java/binnie/craftgui/events/EventValueChanged.java
new file mode 100644
index 0000000000..df804cbfa5
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/EventValueChanged.java
@@ -0,0 +1,29 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+
+public class EventValueChanged<T>
+ extends Event
+{
+ public T value;
+
+ public EventValueChanged(IWidget origin, T value)
+ {
+ super(origin);
+ this.value = value;
+ }
+
+ public T getValue()
+ {
+ return this.value;
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventValueChanged>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+}
diff --git a/src/Java/binnie/craftgui/events/EventValuesChanged.java b/src/Java/binnie/craftgui/events/EventValuesChanged.java
new file mode 100644
index 0000000000..e102487f14
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/EventValuesChanged.java
@@ -0,0 +1,20 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+
+public class EventValuesChanged<T>
+ extends Event
+{
+ public T[] values;
+
+ public EventValuesChanged(IWidget origin, T[] values)
+ {
+ super(origin);
+ this.values = values;
+ }
+
+ public T[] getValues()
+ {
+ return this.values;
+ }
+}
diff --git a/src/Java/binnie/craftgui/events/EventWidget.java b/src/Java/binnie/craftgui/events/EventWidget.java
new file mode 100644
index 0000000000..87ca98521f
--- /dev/null
+++ b/src/Java/binnie/craftgui/events/EventWidget.java
@@ -0,0 +1,272 @@
+package binnie.craftgui.events;
+
+import binnie.craftgui.core.IWidget;
+
+public class EventWidget
+ extends Event
+{
+ public EventWidget(IWidget origin)
+ {
+ super(origin);
+ }
+
+ public static class Enable
+ extends EventWidget
+ {
+ public Enable(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.Enable>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class Disable
+ extends EventWidget
+ {
+ public Disable(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.Disable>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class Show
+ extends EventWidget
+ {
+ public Show(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.Show>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class Hide
+ extends EventWidget
+ {
+ public Hide(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.Hide>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class ChangePosition
+ extends EventWidget
+ {
+ public ChangePosition(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.ChangePosition>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class ChangeSize
+ extends EventWidget
+ {
+ public ChangeSize(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.ChangeSize>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class ChangeOffset
+ extends EventWidget
+ {
+ public ChangeOffset(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.ChangeOffset>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class ChangeColour
+ extends EventWidget
+ {
+ public ChangeColour(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.ChangeColour>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class StartMouseOver
+ extends EventWidget
+ {
+ public StartMouseOver(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.StartMouseOver>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class EndMouseOver
+ extends EventWidget
+ {
+ public EndMouseOver(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.EndMouseOver>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class StartDrag
+ extends EventWidget
+ {
+ int button;
+
+ public StartDrag(IWidget origin, int button)
+ {
+ super();
+ this.button = button;
+ }
+
+ public int getButton()
+ {
+ return this.button;
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.StartDrag>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class EndDrag
+ extends EventWidget
+ {
+ public EndDrag(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.EndDrag>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class GainFocus
+ extends EventWidget
+ {
+ public GainFocus(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.GainFocus>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+
+ public static class LoseFocus
+ extends EventWidget
+ {
+ public LoseFocus(IWidget origin)
+ {
+ super();
+ }
+
+ public static abstract class Handler
+ extends EventHandler<EventWidget.LoseFocus>
+ {
+ public Handler()
+ {
+ super();
+ }
+ }
+ }
+}