Skip to content

Commit 2bccdb8

Browse files
committed
Separate ListEditEntryButtonType from WidgetVec3iListEditEntry
and use our i18n text Signed-off-by: Hendrix-Shen <[email protected]>
1 parent 6b6e507 commit 2bccdb8

File tree

4 files changed

+45
-29
lines changed

4 files changed

+45
-29
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package top.hendrixshen.magiclib.impl.malilib.config.gui.button;
2+
3+
import fi.dy.masa.malilib.gui.MaLiLibIcons;
4+
import lombok.AllArgsConstructor;
5+
import lombok.Getter;
6+
import top.hendrixshen.magiclib.api.i18n.I18n;
7+
8+
@AllArgsConstructor
9+
public enum ListEditEntryButtonType {
10+
ADD(MaLiLibIcons.PLUS, "magiclib.config.gui.button.hover_text.add"),
11+
REMOVE(MaLiLibIcons.MINUS, "magiclib.config.gui.button.hover_text.remove"),
12+
MOVE_UP(MaLiLibIcons.ARROW_UP, "magiclib.config.gui.button.hover_text.move_up"),
13+
MOVE_DOWN(MaLiLibIcons.ARROW_DOWN, "magiclib.config.gui.button.hover_text.move_down");
14+
15+
@Getter
16+
private final MaLiLibIcons icon;
17+
private final String hoverTextTrKey;
18+
19+
public String getDisplayName() {
20+
return I18n.tr(this.hoverTextTrKey);
21+
}
22+
}

magiclib-malilib-extra/src/main/java/top/hendrixshen/magiclib/impl/malilib/config/gui/widget/WidgetVec3iListEditEntry.java

Lines changed: 11 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,15 @@
11
package top.hendrixshen.magiclib.impl.malilib.config.gui.widget;
22

33
import fi.dy.masa.malilib.gui.GuiTextFieldGeneric;
4-
import fi.dy.masa.malilib.gui.MaLiLibIcons;
54
import fi.dy.masa.malilib.gui.button.ButtonBase;
65
import fi.dy.masa.malilib.gui.button.ButtonGeneric;
76
import fi.dy.masa.malilib.gui.button.IButtonActionListener;
87
import fi.dy.masa.malilib.gui.widgets.WidgetConfigOptionBase;
98
import fi.dy.masa.malilib.render.RenderUtils;
109
import lombok.AllArgsConstructor;
11-
import lombok.Getter;
1210
import net.minecraft.core.Vec3i;
13-
import top.hendrixshen.magiclib.api.i18n.I18n;
1411
import top.hendrixshen.magiclib.api.malilib.config.option.ConfigVec3iList;
12+
import top.hendrixshen.magiclib.impl.malilib.config.gui.button.ListEditEntryButtonType;
1513

1614
import java.util.Collections;
1715
import java.util.List;
@@ -49,31 +47,31 @@ public WidgetVec3iListEditEntry(int x, int y, int width, int height, int listInd
4947
this.vec3iEntry = new WidgetVec3iEntry(x, y, vec3iWidth, height, initialValue, defaultValue);
5048
this.vec3iEntry.getTextFields().forEach(this.parent::addTextField);
5149
x += vec3iWidth + 2;
52-
this.addListActionButton(x, iy, ButtonType.ADD);
50+
this.addListActionButton(x, iy, ListEditEntryButtonType.ADD);
5351
x += 18;
54-
this.addListActionButton(x, iy, ButtonType.REMOVE);
52+
this.addListActionButton(x, iy, ListEditEntryButtonType.REMOVE);
5553
x += 18;
5654

5755
if (this.canBeMoved(true)) {
58-
this.addListActionButton(x, iy, ButtonType.MOVE_DOWN);
56+
this.addListActionButton(x, iy, ListEditEntryButtonType.MOVE_DOWN);
5957
}
6058

6159
x += 18;
6260

6361
if (this.canBeMoved(false)) {
64-
this.addListActionButton(x, iy, ButtonType.MOVE_UP);
62+
this.addListActionButton(x, iy, ListEditEntryButtonType.MOVE_UP);
6563
}
6664
} else {
6765
this.vec3iEntry = null;
68-
this.addListActionButton(x, y + 3, ButtonType.ADD);
66+
this.addListActionButton(x, y + 3, ListEditEntryButtonType.ADD);
6967
}
7068
}
7169

7270
protected boolean isDummy() {
7371
return this.listIndex < 0;
7472
}
7573

76-
protected void addListActionButton(int x, int y, ButtonType type) {
74+
protected void addListActionButton(int x, int y, ListEditEntryButtonType type) {
7775
ButtonGeneric button = new ButtonGeneric(x, y, type.getIcon(), type.getDisplayName());
7876
ListenerListActions listener = new ListenerListActions(type, this);
7977
this.addButton(button, listener);
@@ -237,34 +235,18 @@ protected boolean onCharTypedImpl(char charIn, int modifiers) {
237235
return this.vec3iEntry.onCharTypedImpl(charIn, modifiers);
238236
}
239237

240-
@AllArgsConstructor
241-
private enum ButtonType {
242-
ADD(MaLiLibIcons.PLUS, "malilib.gui.button.hovertext.add"),
243-
REMOVE(MaLiLibIcons.MINUS, "malilib.gui.button.hovertext.remove"),
244-
MOVE_UP(MaLiLibIcons.ARROW_UP, "malilib.gui.button.hovertext.move_up"),
245-
MOVE_DOWN(MaLiLibIcons.ARROW_DOWN, "malilib.gui.button.hovertext.move_down");
246-
247-
@Getter
248-
private final MaLiLibIcons icon;
249-
private final String hoverTextTrKey;
250-
251-
public String getDisplayName() {
252-
return I18n.tr(this.hoverTextTrKey);
253-
}
254-
}
255-
256238
@AllArgsConstructor
257239
private static class ListenerListActions implements IButtonActionListener {
258-
private final WidgetVec3iListEditEntry.ButtonType type;
240+
private final ListEditEntryButtonType type;
259241
private final WidgetVec3iListEditEntry parent;
260242

261243
public void actionPerformedWithButton(ButtonBase button, int mouseButton) {
262-
if (this.type == WidgetVec3iListEditEntry.ButtonType.ADD) {
244+
if (this.type == ListEditEntryButtonType.ADD) {
263245
this.parent.insertEntryBefore();
264-
} else if (this.type == WidgetVec3iListEditEntry.ButtonType.REMOVE) {
246+
} else if (this.type == ListEditEntryButtonType.REMOVE) {
265247
this.parent.removeEntry();
266248
} else {
267-
this.parent.moveEntry(this.type == WidgetVec3iListEditEntry.ButtonType.MOVE_DOWN);
249+
this.parent.moveEntry(this.type == ListEditEntryButtonType.MOVE_DOWN);
268250
}
269251
}
270252
}

magiclib-malilib-extra/src/main/resources/assets/magiclib-malilib-extra/lang/en_us.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@ magiclib:
1212
gui:
1313
bottom_line:
1414
stat: "Total: %1$s (Available: %2$s + Unavailable: %3$s), Modified: %4$s"
15+
button:
16+
hover_text:
17+
add: Add
18+
remove: Remove
19+
move_up: MoveUp
20+
move_down: MoveDown
1521
dependencies_footer: "Dependencies:"
1622
element:
1723
config_button_boolean_switch:

magiclib-malilib-extra/src/main/resources/assets/magiclib-malilib-extra/lang/zh_cn.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@ magiclib:
1212
gui:
1313
bottom_line:
1414
stat: "总计: %1$s (可用: %2$s + 不可用: %3$s), 已修改: %4$s"
15+
button:
16+
hover_text:
17+
add: 添加
18+
remove: 移除
19+
move_up: 上移
20+
move_down: 下移
1521
dependencies_footer: "依赖:"
1622
element:
1723
config_button_boolean_switch:

0 commit comments

Comments
 (0)