aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/io/polyfrost/oneconfig/config/interfaces/BasicOption.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/io/polyfrost/oneconfig/config/interfaces/BasicOption.java')
-rw-r--r--src/main/java/io/polyfrost/oneconfig/config/interfaces/BasicOption.java81
1 files changed, 0 insertions, 81 deletions
diff --git a/src/main/java/io/polyfrost/oneconfig/config/interfaces/BasicOption.java b/src/main/java/io/polyfrost/oneconfig/config/interfaces/BasicOption.java
deleted file mode 100644
index 7b9a807..0000000
--- a/src/main/java/io/polyfrost/oneconfig/config/interfaces/BasicOption.java
+++ /dev/null
@@ -1,81 +0,0 @@
-package io.polyfrost.oneconfig.config.interfaces;
-
-import java.lang.reflect.Field;
-
-@SuppressWarnings({"unused"})
-public abstract class BasicOption {
- protected final Field field;
- protected final String name;
- public final int size;
-
- /**
- * Initialize option
- *
- * @param field variable attached to option (null for category)
- * @param name name of option
- * @param size size of option, 0 for single column, 1 for double.
- */
- public BasicOption(Field field, String name, int size) {
- this.field = field;
- this.name = name;
- this.size = size;
- if (field != null) field.setAccessible(true);
- }
-
- /**
- * @param object Java object to set the variable to
- */
- protected void set(Object object) throws IllegalAccessException {
- if (field == null) return;
- field.set(null, object);
- }
-
- /**
- * @return value of variable as Java object
- */
- protected Object get() throws IllegalAccessException {
- if (field == null) return null;
- return field.get(null);
- }
-
- /**
- * @return height of option to align other options accordingly
- */
- public abstract int getHeight();
-
- /**
- * Function that gets called when drawing option
- *
- * @param vg NanoVG context
- * @param x x position
- * @param y y position
- */
- public abstract void draw(long vg, int x, int y);
-
- /**
- * Function that gets called last drawing option,
- * should be used for things that draw above other options
- *
- * @param vg NanoVG context
- * @param x x position
- * @param y y position
- */
- public void drawLast(long vg, int x, int y) {
- }
-
- /**
- * Function that gets called when a key is typed
- *
- * @param key char that has been typed
- * @param keyCode code of key
- */
- public void keyTyped(char key, int keyCode) {
- }
-
- /**
- * @return If the component has an option to render at half size
- */
- public boolean hasHalfSize() {
- return true;
- }
-}