Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/1.12' into 1.13-pre
Browse files Browse the repository at this point in the history
  • Loading branch information
mezz committed Mar 4, 2019
2 parents 0cd15aa + 650cf1e commit c6f76d6
Show file tree
Hide file tree
Showing 7 changed files with 45 additions and 6 deletions.
4 changes: 2 additions & 2 deletions gradle.properties
Expand Up @@ -7,5 +7,5 @@ mcp_mappings=20180921-1.13
curse_project_id=238222

version_major=4
version_minor=14
version_patch=4
version_minor=15
version_patch=0
16 changes: 16 additions & 0 deletions src/api/java/mezz/jei/api/IBookmarkOverlay.java
@@ -0,0 +1,16 @@
package mezz.jei.api;

import javax.annotation.Nullable;

/**
* The {@link IBookmarkOverlay} is JEI's gui that displays all the bookmarked ingredients next to an open container gui.
* Use this interface to get information from it.
* Get the instance from {@link IJeiRuntime#getBookmarkOverlay()}.
*/
public interface IBookmarkOverlay {
/**
* @return the ingredient that's currently under the mouse, or null if there is none.
*/
@Nullable
Object getIngredientUnderMouse();
}
2 changes: 2 additions & 0 deletions src/api/java/mezz/jei/api/IJeiRuntime.java
Expand Up @@ -17,5 +17,7 @@ public interface IJeiRuntime {

IIngredientListOverlay getIngredientListOverlay();

IBookmarkOverlay getBookmarkOverlay();

IIngredientManager getIngredientManager();
}
Expand Up @@ -10,11 +10,13 @@
import net.minecraft.client.util.InputMappings;
import net.minecraft.item.ItemStack;

import mezz.jei.api.IBookmarkOverlay;
import mezz.jei.bookmarks.BookmarkList;
import mezz.jei.config.ClientConfig;
import mezz.jei.config.IWorldConfig;
import mezz.jei.gui.GuiHelper;
import mezz.jei.gui.elements.GuiIconToggleButton;
import mezz.jei.gui.ingredients.IIngredientListElement;
import mezz.jei.gui.overlay.IngredientGrid;
import mezz.jei.gui.overlay.IngredientGridWithNavigation;
import mezz.jei.gui.recipes.RecipesGui;
Expand All @@ -24,7 +26,7 @@
import mezz.jei.util.MathUtil;
import org.lwjgl.glfw.GLFW;

public class BookmarkOverlay implements IShowsRecipeFocuses, ILeftAreaContent {
public class BookmarkOverlay implements IShowsRecipeFocuses, ILeftAreaContent, IBookmarkOverlay {
private static final int BUTTON_SIZE = 20;

// areas
Expand Down Expand Up @@ -179,4 +181,15 @@ public boolean handleMouseClicked(double mouseX, double mouseY, int mouseButton)
return false;
}

@Nullable
@Override
public Object getIngredientUnderMouse() {
if (isListDisplayed()) {
IIngredientListElement elementUnderMouse = this.contents.getElementUnderMouse();
if (elementUnderMouse != null) {
return elementUnderMouse.getIngredient();
}
}
return null;
}
}
2 changes: 1 addition & 1 deletion src/main/java/mezz/jei/gui/textures/Textures.java
Expand Up @@ -44,7 +44,7 @@ public Textures(JeiTextureMap textureMap) {
.slice(2, 2, 2, 2);
this.guiBackground = registerGuiSprite("gui_background", 64, 64)
.slice(16, 16, 16, 16);
this.recipeBackground = registerGuiSprite("recipe_background", 64, 64)
this.recipeBackground = registerGuiSprite("single_recipe_background", 64, 64)
.slice(16, 16, 16, 16);
this.searchBackground = registerGuiSprite("search_background", 20, 20)
.slice(4, 4, 4, 4);
Expand Down
10 changes: 9 additions & 1 deletion src/main/java/mezz/jei/runtime/JeiRuntime.java
@@ -1,6 +1,7 @@
package mezz.jei.runtime;

import mezz.jei.api.IIngredientFilter;
import mezz.jei.api.IBookmarkOverlay;
import mezz.jei.api.IJeiRuntime;
import mezz.jei.api.ingredients.IIngredientManager;
import mezz.jei.gui.overlay.IngredientListOverlay;
Expand All @@ -11,13 +12,15 @@ public class JeiRuntime implements IJeiRuntime {

private final RecipeManager recipeManager;
private final IngredientListOverlay ingredientListOverlay;
private final IBookmarkOverlay bookmarkOverlay;
private final RecipesGui recipesGui;
private final IIngredientFilter ingredientFilter;
private final IIngredientManager ingredientManager;

public JeiRuntime(RecipeManager recipeManager, IngredientListOverlay ingredientListOverlay, RecipesGui recipesGui, IIngredientFilter ingredientFilter, IIngredientManager ingredientManager) {
public JeiRuntime(RecipeManager recipeManager, IngredientListOverlay ingredientListOverlay, IBookmarkOverlay bookmarkOverlay, RecipesGui recipesGui, IIngredientFilter ingredientFilter, IIngredientManager ingredientManager) {
this.recipeManager = recipeManager;
this.ingredientListOverlay = ingredientListOverlay;
this.bookmarkOverlay = bookmarkOverlay;
this.recipesGui = recipesGui;
this.ingredientFilter = ingredientFilter;
this.ingredientManager = ingredientManager;
Expand Down Expand Up @@ -47,6 +50,11 @@ public IIngredientManager getIngredientManager() {
return ingredientManager;
}

@Override
public IBookmarkOverlay getBookmarkOverlay() {
return bookmarkOverlay;
}

@Override
public RecipesGui getRecipesGui() {
return recipesGui;
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/mezz/jei/startup/JeiStarter.java
Expand Up @@ -97,7 +97,7 @@ public void start(
BookmarkOverlay bookmarkOverlay = new BookmarkOverlay(bookmarkList, jeiHelpers.getGuiHelper(), bookmarkListGrid, worldConfig);
RecipesGui recipesGui = new RecipesGui(recipeManager, recipeTransferManager, ingredientManager);
IIngredientFilter ingredientFilterApi = new IngredientFilterApi(ingredientFilter, worldConfig);
JeiRuntime jeiRuntime = new JeiRuntime(recipeManager, ingredientListOverlay, recipesGui, ingredientFilterApi, ingredientManager);
JeiRuntime jeiRuntime = new JeiRuntime(recipeManager, ingredientListOverlay, bookmarkOverlay, recipesGui, ingredientFilterApi, ingredientManager);
Internal.setRuntime(jeiRuntime);
timer.stop();

Expand Down

0 comments on commit c6f76d6

Please sign in to comment.