Skip to content

Commit 61ec6d3

Browse files
committed
Update algorithm that choose between "Configure" and "Configure Mod"
1 parent 05c8f89 commit 61ec6d3

File tree

1 file changed

+15
-4
lines changed

1 file changed

+15
-4
lines changed

loader/src/main/java/com/fox2code/foxloader/client/gui/GuiModMenu.java

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -167,10 +167,6 @@ void updateActionButtons() {
167167
this.modActionButtons[0].enabled = false;
168168
buttonCount = 1;
169169
}
170-
if (buttonCount == 1 && this.modActionButtonsTypes[0] == ModActionButtonType.CONFIGURE) {
171-
this.modActionButtons[0].displayString =
172-
StringTranslate.getInstance().translateKey("mods.configureMod");
173-
}
174170
int leftMost = 240 - BUTTON_MARGIN;
175171
int rightMost = this.width + BUTTON_MARGIN - 10;
176172
int mostPossibleButtons = (rightMost - leftMost) / (50 + (BUTTON_MARGIN * 2));
@@ -192,6 +188,7 @@ void updateActionButtons() {
192188
if (i != 0) {
193189
guiButton.xPosition += ((leakingWidth * i) / (buttonCount - 1));
194190
}
191+
this.modActionButtonsTypes[i].updateTitle(guiButton, this.fontRenderer, buttonWidth - 4);
195192
}
196193
}
197194

@@ -246,6 +243,16 @@ void doAction(ModContainer modContainer, GuiModMenu guiModMenu) {
246243
guiModMenu.openModConfigScreen(modContainer);
247244
}
248245
}
246+
247+
@Override
248+
public void updateTitle(GuiButton guiButton, FontRenderer fontRenderer, int buttonWidth) {
249+
StringTranslate st = StringTranslate.getInstance();
250+
String buttonText = st.translateKey("mods.configureMod");
251+
if (fontRenderer.getStringWidth(buttonText) >= buttonWidth) {
252+
buttonText = st.translateKey(this.titleTranslate);
253+
}
254+
guiButton.displayString = buttonText;
255+
}
249256
}, WEBSITE("mods.website") {
250257
@Override
251258
void doAction(ModContainer modContainer, GuiModMenu guiModMenu) {
@@ -263,5 +270,9 @@ void doAction(ModContainer modContainer, GuiModMenu guiModMenu) {
263270
}
264271

265272
abstract void doAction(ModContainer modContainer, GuiModMenu guiModMenu);
273+
274+
public void updateTitle(GuiButton guiButton, FontRenderer fontRenderer, int buttonWidth) {
275+
guiButton.displayString = StringTranslate.getInstance().translateKey(this.titleTranslate);
276+
}
266277
}
267278
}

0 commit comments

Comments
 (0)