Skip to content

Commit 8732efa

Browse files
authored
Add support for placeholders in StringSetting (#5590)
1 parent f14aef1 commit 8732efa

3 files changed

Lines changed: 12 additions & 4 deletions

File tree

src/main/java/meteordevelopment/meteorclient/gui/DefaultSettingsWidgetFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ private void doubleW(WTable table, DoubleSetting setting) {
188188

189189
private void stringW(WTable table, StringSetting setting) {
190190
CharFilter filter = setting.filter == null ? (text, c) -> true : setting.filter;
191-
Cell<WTextBox> cell = table.add(theme.textBox(setting.get(), filter, setting.renderer));
191+
Cell<WTextBox> cell = table.add(theme.textBox(setting.get(), setting.placeholder, filter, setting.renderer));
192192
if (setting.wide) cell.minWidth(Utils.getWindowWidth() - Utils.getWindowWidth() / 4.0);
193193

194194
WTextBox textBox = cell.expandX().widget();

src/main/java/meteordevelopment/meteorclient/settings/ProvidedStringSetting.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public class ProvidedStringSetting extends StringSetting {
1414
public final Supplier<String[]> supplier;
1515

1616
public ProvidedStringSetting(String name, String description, String defaultValue, Consumer<String> onChanged, Consumer<Setting<String>> onModuleActivated, IVisible visible, Class<? extends WTextBox.Renderer> renderer, boolean wide, Supplier<String[]> supplier) {
17-
super(name, description, defaultValue, onChanged, onModuleActivated, visible, renderer, null, wide);
17+
super(name, description, defaultValue, onChanged, onModuleActivated, visible, "", renderer, null, wide);
1818

1919
this.supplier = supplier;
2020
}

src/main/java/meteordevelopment/meteorclient/settings/StringSetting.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,15 @@
1212
import java.util.function.Consumer;
1313

1414
public class StringSetting extends Setting<String> {
15+
public final String placeholder;
1516
public final Class<? extends WTextBox.Renderer> renderer;
1617
public final CharFilter filter;
1718
public final boolean wide;
1819

19-
public StringSetting(String name, String description, String defaultValue, Consumer<String> onChanged, Consumer<Setting<String>> onModuleActivated, IVisible visible, Class<? extends WTextBox.Renderer> renderer, CharFilter filter, boolean wide) {
20+
public StringSetting(String name, String description, String defaultValue, Consumer<String> onChanged, Consumer<Setting<String>> onModuleActivated, IVisible visible, String placeholder, Class<? extends WTextBox.Renderer> renderer, CharFilter filter, boolean wide) {
2021
super(name, description, defaultValue, onChanged, onModuleActivated, visible);
2122

23+
this.placeholder = placeholder;
2224
this.renderer = renderer;
2325
this.filter = filter;
2426
this.wide = wide;
@@ -49,6 +51,7 @@ public String load(NbtCompound tag) {
4951
}
5052

5153
public static class Builder extends SettingBuilder<Builder, String, StringSetting> {
54+
private String placeholder;
5255
private Class<? extends WTextBox.Renderer> renderer;
5356
private CharFilter filter;
5457
private boolean wide;
@@ -57,6 +60,11 @@ public Builder() {
5760
super("");
5861
}
5962

63+
public Builder placeholder(String placeholder) {
64+
this.placeholder = placeholder;
65+
return this;
66+
}
67+
6068
public Builder renderer(Class<? extends WTextBox.Renderer> renderer) {
6169
this.renderer = renderer;
6270
return this;
@@ -74,7 +82,7 @@ public Builder wide() {
7482

7583
@Override
7684
public StringSetting build() {
77-
return new StringSetting(name, description, defaultValue, onChanged, onModuleActivated, visible, renderer, filter, wide);
85+
return new StringSetting(name, description, defaultValue, onChanged, onModuleActivated, visible, placeholder, renderer, filter, wide);
7886
}
7987
}
8088
}

0 commit comments

Comments
 (0)