Skip to content

Commit

Permalink
Fix #1197 Truncate long recipe category titles so they fit in the gui
Browse files Browse the repository at this point in the history
  • Loading branch information
mezz committed Apr 22, 2018
1 parent 50d773f commit 6994209
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 1 deletion.
8 changes: 7 additions & 1 deletion src/main/java/mezz/jei/gui/recipes/RecipesGui.java
Expand Up @@ -22,6 +22,7 @@
import mezz.jei.input.MouseHelper;
import mezz.jei.transfer.RecipeTransferUtil;
import mezz.jei.util.ErrorUtil;
import mezz.jei.util.StringUtil;
import mezz.jei.util.Translator;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.FontRenderer;
Expand Down Expand Up @@ -412,7 +413,12 @@ private void updateLayout() {
logic.setRecipesPerPage(recipesPerPage);

title = recipeCategory.getTitle();
final int titleWidth = fontRenderer.getStringWidth(title);
int titleWidth = fontRenderer.getStringWidth(title);
final int availableTitleWidth = (nextPage.x - (previousPage.x + previousPage.width)) - (2 * innerPadding);
if (titleWidth > availableTitleWidth) {
title = StringUtil.truncateStringToWidth(title, availableTitleWidth, fontRenderer);
titleWidth = fontRenderer.getStringWidth(title);
}
final int titleX = guiLeft + (xSize - titleWidth) / 2;
final int titleY = guiTop + borderPadding;
titleHoverChecker = new HoverChecker(titleY, titleY + fontRenderer.FONT_HEIGHT, titleX, titleX + titleWidth, 0);
Expand Down
13 changes: 13 additions & 0 deletions src/main/java/mezz/jei/util/StringUtil.java
@@ -0,0 +1,13 @@
package mezz.jei.util;

import net.minecraft.client.gui.FontRenderer;

public final class StringUtil {
private StringUtil() {

}

public static String truncateStringToWidth(String string, int width, FontRenderer fontRenderer) {
return fontRenderer.trimStringToWidth(string, width - fontRenderer.getStringWidth("...")) + "...";
}
}

0 comments on commit 6994209

Please sign in to comment.