aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/dev/isxander/yacl/impl
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/dev/isxander/yacl/impl')
-rw-r--r--src/main/java/dev/isxander/yacl/impl/ButtonOptionImpl.java5
-rw-r--r--src/main/java/dev/isxander/yacl/impl/OptionImpl.java8
2 files changed, 13 insertions, 0 deletions
diff --git a/src/main/java/dev/isxander/yacl/impl/ButtonOptionImpl.java b/src/main/java/dev/isxander/yacl/impl/ButtonOptionImpl.java
index d3fbaa6..b531dec 100644
--- a/src/main/java/dev/isxander/yacl/impl/ButtonOptionImpl.java
+++ b/src/main/java/dev/isxander/yacl/impl/ButtonOptionImpl.java
@@ -64,6 +64,11 @@ public class ButtonOptionImpl implements ButtonOption {
}
@Override
+ public boolean requiresRestart() {
+ return false;
+ }
+
+ @Override
public boolean changed() {
return false;
}
diff --git a/src/main/java/dev/isxander/yacl/impl/OptionImpl.java b/src/main/java/dev/isxander/yacl/impl/OptionImpl.java
index 2d66aee..d63f20b 100644
--- a/src/main/java/dev/isxander/yacl/impl/OptionImpl.java
+++ b/src/main/java/dev/isxander/yacl/impl/OptionImpl.java
@@ -16,6 +16,7 @@ public class OptionImpl<T> implements Option<T> {
private final Text tooltip;
private final Controller<T> controller;
private final Binding<T> binding;
+ private final boolean requiresRestart;
private final Class<T> typeClass;
@@ -26,12 +27,14 @@ public class OptionImpl<T> implements Option<T> {
@Nullable Text tooltip,
@NotNull Function<Option<T>, Controller<T>> controlGetter,
@NotNull Binding<T> binding,
+ boolean requiresRestart,
@NotNull Class<T> typeClass
) {
this.name = name;
this.tooltip = tooltip;
this.controller = controlGetter.apply(this);
this.binding = binding;
+ this.requiresRestart = requiresRestart;
this.typeClass = typeClass;
this.pendingValue = binding().getValue();
}
@@ -62,6 +65,11 @@ public class OptionImpl<T> implements Option<T> {
}
@Override
+ public boolean requiresRestart() {
+ return requiresRestart;
+ }
+
+ @Override
public boolean changed() {
return !binding().getValue().equals(pendingValue);
}