mirror of
https://github.com/Shiewk/Widgets.git
synced 2026-04-28 11:34:17 +02:00
Add option to set widget width dynamically on Server IP widget
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
package de.shiewk.widgets.widgets;
|
||||
|
||||
import de.shiewk.widgets.WidgetSettings;
|
||||
import de.shiewk.widgets.widgets.settings.ToggleWidgetSetting;
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.network.ServerInfo;
|
||||
import net.minecraft.text.Text;
|
||||
@@ -9,12 +11,17 @@ import java.util.List;
|
||||
|
||||
public class ServerIPWidget extends BasicTextWidget {
|
||||
public ServerIPWidget(Identifier id) {
|
||||
super(id, List.of());
|
||||
super(id, List.of(
|
||||
new ToggleWidgetSetting("dynamicwidth", Text.translatable("widgets.widgets.serverIP.dynamicWidth"), true)
|
||||
));
|
||||
getSettings().optionById("width").setShowCondition(() -> !this.dynamicWidth);
|
||||
}
|
||||
|
||||
private int width;
|
||||
private int t = 0;
|
||||
|
||||
private boolean dynamicWidth = true;
|
||||
|
||||
@Override
|
||||
public void tickWidget() {
|
||||
final ServerInfo serverEntry = MinecraftClient.getInstance().getCurrentServerEntry();
|
||||
@@ -32,7 +39,7 @@ public class ServerIPWidget extends BasicTextWidget {
|
||||
|
||||
@Override
|
||||
public int width() {
|
||||
return Math.max(super.width(), this.width);
|
||||
return dynamicWidth ? this.width : super.width();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -44,4 +51,10 @@ public class ServerIPWidget extends BasicTextWidget {
|
||||
public Text getDescription() {
|
||||
return Text.translatable("widgets.widgets.serverIP.description");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSettingsChanged(WidgetSettings settings) {
|
||||
super.onSettingsChanged(settings);
|
||||
this.dynamicWidth = ((ToggleWidgetSetting) settings.optionById("dynamicwidth")).getValue();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,5 +71,6 @@
|
||||
"widgets.widgets.memory.description": "Zeigt die momentane Arbeitsspeicherauslastung des Spiels an.",
|
||||
"widgets.widgets.memory.withLabel": "Arbeitsspeicher: %s",
|
||||
"widgets.widgets.memory.showPercentage": "Prozentsatz anzeigen",
|
||||
"widgets.widgets.memory.showLabel": "Beschriftung anzeigen"
|
||||
"widgets.widgets.memory.showLabel": "Beschriftung anzeigen",
|
||||
"widgets.widgets.serverIP.dynamicWidth": "Widget-Breite dynamisch festlegen"
|
||||
}
|
||||
|
||||
@@ -71,5 +71,6 @@
|
||||
"widgets.widgets.memory.description": "Shows the current memory usage of the game.",
|
||||
"widgets.widgets.memory.withLabel": "Memory: %s",
|
||||
"widgets.widgets.memory.showPercentage": "Show percentage",
|
||||
"widgets.widgets.memory.showLabel": "Show label"
|
||||
"widgets.widgets.memory.showLabel": "Show label",
|
||||
"widgets.widgets.serverIP.dynamicWidth": "Dynamically set widget width"
|
||||
}
|
||||
Reference in New Issue
Block a user