aboutsummaryrefslogtreecommitdiff
path: root/src/Java/binnie/craftgui/controls/core
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/controls/core
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/controls/core')
-rw-r--r--src/Java/binnie/craftgui/controls/core/Control.java85
-rw-r--r--src/Java/binnie/craftgui/controls/core/IControlIndexed.java8
-rw-r--r--src/Java/binnie/craftgui/controls/core/IControlValue.java11
-rw-r--r--src/Java/binnie/craftgui/controls/core/IControlValues.java11
4 files changed, 115 insertions, 0 deletions
diff --git a/src/Java/binnie/craftgui/controls/core/Control.java b/src/Java/binnie/craftgui/controls/core/Control.java
new file mode 100644
index 0000000000..f5f7bddabb
--- /dev/null
+++ b/src/Java/binnie/craftgui/controls/core/Control.java
@@ -0,0 +1,85 @@
+package binnie.craftgui.controls.core;
+
+import binnie.craftgui.core.Attribute;
+import binnie.craftgui.core.ITooltip;
+import binnie.craftgui.core.ITooltipHelp;
+import binnie.craftgui.core.IWidget;
+import binnie.craftgui.core.Tooltip;
+import binnie.craftgui.core.Widget;
+import binnie.craftgui.core.geometry.IArea;
+import binnie.craftgui.core.geometry.IPoint;
+import binnie.craftgui.minecraft.Window;
+import java.util.ArrayList;
+import java.util.List;
+
+public class Control
+ extends Widget
+ implements ITooltipHelp, ITooltip
+{
+ public Control(IWidget parent, float x, float y, float w, float h)
+ {
+ super(parent);
+ setPosition(new IPoint(x, y));
+ setSize(new IPoint(w, h));
+ initialise();
+ }
+
+ public Control(IWidget parent, IArea area)
+ {
+ this(parent, area.x(), area.y(), area.w(), area.h());
+ }
+
+ List<String> helpStrings = new ArrayList();
+ List<String> tooltipStrings = new ArrayList();
+
+ protected void initialise() {}
+
+ public void onUpdateClient() {}
+
+ public void addHelp(String string)
+ {
+ this.helpStrings.add(string);
+ }
+
+ public void addHelp(String[] strings)
+ {
+ for (String string : strings) {
+ addHelp(string);
+ }
+ }
+
+ public void addTooltip(String string)
+ {
+ addAttribute(Attribute.MouseOver);
+ this.tooltipStrings.add(string);
+ }
+
+ public void addTooltip(String[] strings)
+ {
+ for (String string : strings) {
+ addTooltip(string);
+ }
+ }
+
+ public int extraLevel = 0;
+
+ public int getLevel()
+ {
+ return this.extraLevel + super.getLevel();
+ }
+
+ public void getHelpTooltip(Tooltip tooltip)
+ {
+ tooltip.add(this.helpStrings);
+ }
+
+ public void getTooltip(Tooltip tooltip)
+ {
+ tooltip.add(this.tooltipStrings);
+ }
+
+ public Window getWindow()
+ {
+ return (Window)getSuperParent();
+ }
+}
diff --git a/src/Java/binnie/craftgui/controls/core/IControlIndexed.java b/src/Java/binnie/craftgui/controls/core/IControlIndexed.java
new file mode 100644
index 0000000000..a30bceb76c
--- /dev/null
+++ b/src/Java/binnie/craftgui/controls/core/IControlIndexed.java
@@ -0,0 +1,8 @@
+package binnie.craftgui.controls.core;
+
+public abstract interface IControlIndexed
+{
+ public abstract int getIndex();
+
+ public abstract void setIndex(int paramInt);
+}
diff --git a/src/Java/binnie/craftgui/controls/core/IControlValue.java b/src/Java/binnie/craftgui/controls/core/IControlValue.java
new file mode 100644
index 0000000000..9d44b8ad17
--- /dev/null
+++ b/src/Java/binnie/craftgui/controls/core/IControlValue.java
@@ -0,0 +1,11 @@
+package binnie.craftgui.controls.core;
+
+import binnie.craftgui.core.IWidget;
+
+public abstract interface IControlValue<T>
+ extends IWidget
+{
+ public abstract T getValue();
+
+ public abstract void setValue(T paramT);
+}
diff --git a/src/Java/binnie/craftgui/controls/core/IControlValues.java b/src/Java/binnie/craftgui/controls/core/IControlValues.java
new file mode 100644
index 0000000000..92bb5d1f13
--- /dev/null
+++ b/src/Java/binnie/craftgui/controls/core/IControlValues.java
@@ -0,0 +1,11 @@
+package binnie.craftgui.controls.core;
+
+import java.util.Collection;
+
+public abstract interface IControlValues<T>
+ extends IControlValue<T>
+{
+ public abstract Collection<T> getValues();
+
+ public abstract void setValues(Collection<T> paramCollection);
+}