Skip to content

Commit

Permalink
fix color option saving
Browse files Browse the repository at this point in the history
  • Loading branch information
moehreag committed Jan 13, 2025
1 parent 1d2430b commit fcafe87
Show file tree
Hide file tree
Showing 15 changed files with 37 additions and 26 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,11 @@ public void init() {

chroma = new BooleanOption("option.chroma", option.getOriginal().isChroma(), option.getOriginal()::setChroma);
speed = new FloatOption("option.speed", option.getOriginal().getChromaSpeed(), option.getOriginal()::setChromaSpeed, 0f, 4f);
alpha = new IntegerOption("option.alpha", option.get().getAlpha(), val -> {
alpha = new IntegerOption("option.alpha", option.getOriginal().getAlpha(), val -> {
option.getOriginal().setAlpha(val);
children().forEach(e -> {
if (e instanceof TextFieldWidget) {
((TextFieldWidget) e).setText(option.get().toString().split(";")[0]);
((TextFieldWidget) e).setText(option.getOriginal().toString().split(";")[0]);
}
});
}, 0, 255);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,11 +73,11 @@ public void init() {

chroma = new BooleanOption("option.chroma", option.getOriginal().isChroma(), option.getOriginal()::setChroma);
speed = new FloatOption("option.speed", option.getOriginal().getChromaSpeed(), option.getOriginal()::setChromaSpeed, 0f, 4f);
alpha = new IntegerOption("option.alpha", option.get().getAlpha(), val -> {
alpha = new IntegerOption("option.alpha", option.getOriginal().getAlpha(), val -> {
option.getOriginal().setAlpha(val);
children().forEach(e -> {
if (e instanceof TextFieldWidget) {
((TextFieldWidget) e).setText(option.get().toString().split(";")[0]);
((TextFieldWidget) e).setText(option.getOriginal().toString().split(";")[0]);
}
});
}, 0, 255);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,11 +77,11 @@ public void init() {

chroma = new BooleanOption("option.chroma", option.getOriginal().isChroma(), option.getOriginal()::setChroma);
speed = new FloatOption("option.speed", option.getOriginal().getChromaSpeed(), option.getOriginal()::setChromaSpeed, 0f, 4f);
alpha = new IntegerOption("option.alpha", option.get().getAlpha(), val -> {
alpha = new IntegerOption("option.alpha", option.getOriginal().getAlpha(), val -> {
option.getOriginal().setAlpha(val);
children().forEach(e -> {
if (e instanceof TextFieldWidget) {
((TextFieldWidget) e).setText(option.get().toString().split(";")[0]);
((TextFieldWidget) e).setText(option.getOriginal().toString().split(";")[0]);
}
});
}, 0, 255);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,11 +72,11 @@ public void init() {

chroma = new BooleanOption("option.chroma", option.getOriginal().isChroma(), option.getOriginal()::setChroma);
speed = new FloatOption("option.speed", option.getOriginal().getChromaSpeed(), option.getOriginal()::setChromaSpeed, 0f, 4f);
alpha = new IntegerOption("option.alpha", option.get().getAlpha(), val -> {
alpha = new IntegerOption("option.alpha", option.getOriginal().getAlpha(), val -> {
option.getOriginal().setAlpha(val);
children().forEach(e -> {
if (e instanceof TextFieldWidget) {
((TextFieldWidget) e).setText(option.get().toString().split(";")[0]);
((TextFieldWidget) e).setText(option.getOriginal().toString().split(";")[0]);
}
});
}, 0, 255);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,11 +77,11 @@ public void init() {

chroma = new BooleanOption("option.chroma", option.getOriginal().isChroma(), option.getOriginal()::setChroma);
speed = new FloatOption("option.speed", option.getOriginal().getChromaSpeed(), option.getOriginal()::setChromaSpeed, 0f, 4f);
alpha = new IntegerOption("option.alpha", option.get().getAlpha(), val -> {
alpha = new IntegerOption("option.alpha", option.getOriginal().getAlpha(), val -> {
option.getOriginal().setAlpha(val);
children().forEach(e -> {
if (e instanceof TextFieldWidget) {
((TextFieldWidget) e).setText(option.get().toString().split(";")[0]);
((TextFieldWidget) e).setText(option.getOriginal().toString().split(";")[0]);
}
});
}, 0, 255);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,11 +72,11 @@ public void init() {

chroma = new BooleanOption("option.chroma", option.getOriginal().isChroma(), option.getOriginal()::setChroma);
speed = new FloatOption("option.speed", option.getOriginal().getChromaSpeed(), option.getOriginal()::setChromaSpeed, 0f, 4f);
alpha = new IntegerOption("option.alpha", option.get().getAlpha(), val -> {
alpha = new IntegerOption("option.alpha", option.getOriginal().getAlpha(), val -> {
option.getOriginal().setAlpha(val);
children().forEach(e -> {
if (e instanceof EditBox) {
((EditBox) e).setValue(option.get().toString().split(";")[0]);
((EditBox) e).setValue(option.getOriginal().toString().split(";")[0]);
}
});
}, 0, 255);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,11 +77,11 @@ public void init() {

chroma = new BooleanOption("option.chroma", option.getOriginal().isChroma(), option.getOriginal()::setChroma);
speed = new FloatOption("option.speed", option.getOriginal().getChromaSpeed(), option.getOriginal()::setChromaSpeed, 0f, 4f);
alpha = new IntegerOption("option.alpha", option.get().getAlpha(), val -> {
alpha = new IntegerOption("option.alpha", option.getOriginal().getAlpha(), val -> {
option.getOriginal().setAlpha(val);
children().forEach(e -> {
if (e instanceof TextFieldWidget) {
((TextFieldWidget) e).setText(option.get().toString().split(";")[0]);
((TextFieldWidget) e).setText(option.getOriginal().toString().split(";")[0]);
}
});
}, 0, 255);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,11 +72,11 @@ public void init() {

chroma = new BooleanOption("option.chroma", option.getOriginal().isChroma(), option.getOriginal()::setChroma);
speed = new FloatOption("option.speed", option.getOriginal().getChromaSpeed(), option.getOriginal()::setChromaSpeed, 0f, 4f);
alpha = new IntegerOption("option.alpha", option.get().getAlpha(), val -> {
alpha = new IntegerOption("option.alpha", option.getOriginal().getAlpha(), val -> {
option.getOriginal().setAlpha(val);
children().forEach(e -> {
if (e instanceof TextFieldWidget) {
((TextFieldWidget) e).setText(option.get().toString().split(";")[0]);
((TextFieldWidget) e).setText(option.getOriginal().toString().split(";")[0]);
}
});
}, 0, 255);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,11 +78,11 @@ public void init() {
speed = new FloatOption("option.speed", option.getOriginal().getChromaSpeed(), val -> {
option.getOriginal().setChromaSpeed(val);
}, 0f, 4f);
alpha = new IntegerOption("option.alpha", option.get().getAlpha(), val -> {
alpha = new IntegerOption("option.alpha", option.getOriginal().getAlpha(), val -> {
option.getOriginal().setAlpha(val);
children().forEach(e -> {
if (e instanceof TextFieldWidget) {
((TextFieldWidget) e).setText(option.get().toString().split(";")[0]);
((TextFieldWidget) e).setText(option.getOriginal().toString().split(";")[0]);
}
});
}, 0, 255);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,11 +73,11 @@ public void init() {
speed = new FloatOption("option.speed", option.getOriginal().getChromaSpeed(), val -> {
option.getOriginal().setChromaSpeed(val);
}, 0f, 4f);
alpha = new IntegerOption("option.alpha", option.get().getAlpha(), val -> {
alpha = new IntegerOption("option.alpha", option.getOriginal().getAlpha(), val -> {
option.getOriginal().setAlpha(val);
children().forEach(e -> {
if (e instanceof TextFieldWidget) {
((TextFieldWidget) e).setText(option.get().toString().split(";")[0]);
((TextFieldWidget) e).setText(option.getOriginal().toString().split(";")[0]);
}
});
}, 0, 255);
Expand Down
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,3 +47,11 @@ dependencies {
```java
AxolotlClientConfig.register(ConfigManager manager);
```

### Creating your own options

You'll need to implement the `Option<T>` interface. The `OptionBase<T>` class may be helpful
for many cases. Note though that widgets are specific for each Option/Category implementation meaning
that if you create your own option you will also have to create a widget for it.

If you want an option to not be saved to the config file, return `null` in `toSerializedValue`
6 changes: 3 additions & 3 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ repositories {
}

subprojects {
apply plugin: "java"
apply plugin: "maven-publish"
apply plugin: "io.freefair.lombok"
apply plugin: "dev.yumi.gradle.licenser"
Expand All @@ -30,9 +31,8 @@ subprojects {
maven { url 'https://jitpack.io' }
}

java {

withSourcesJar()
project.extensions.configure(JavaPluginExtension.class) {
it.withSourcesJar()
}

jar {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,10 @@ protected void save(JsonObject object, OptionCategory category) {
}
}

category.getOptions().forEach(o -> object.addProperty(o.getName(), o.toSerializedValue()));
category.getOptions().forEach(o -> {
String value = o.toSerializedValue();
if (value != null) object.addProperty(o.getName(), value);
});
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ public Color getOriginal(){

@Override
public String toSerializedValue() {
return get().toString();
return getOriginal().toString();
}

@Override
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ org.gradle.jvmargs=-Xmx1G
org.gradle.parallel=true

# Mod Properties
version=3.0.0
version=3.0.1
maven_group=io.github.axolotlclient
archives_base_name=AxolotlClientConfig

Expand Down

0 comments on commit fcafe87

Please sign in to comment.