package crazypants.enderio.machines.integration.jei.sagmill;

import javax.annotation.Nonnull;
import javax.annotation.Nullable;

import mezz.jei.api.gui.IGuiFluidStackGroup;
import mezz.jei.api.gui.IGuiIngredientGroup;
import mezz.jei.api.gui.IGuiItemStackGroup;
import mezz.jei.api.gui.IRecipeLayout;
import mezz.jei.api.recipe.IFocus;
import mezz.jei.api.recipe.IRecipeCategory;

public class SagMillRecipeLayout implements IRecipeLayout {

  private final @Nonnull IRecipeLayout recipeLayout;

  public SagMillRecipeLayout(@Nonnull IRecipeLayout recipeLayout) {
    this.recipeLayout = recipeLayout;
  }

  @Override
  public @Nonnull IGuiItemStackGroup getItemStacks() {
    return new SagMillGuiItemStackGroup(recipeLayout.getItemStacks());
  }

  @Override
  public @Nonnull IGuiFluidStackGroup getFluidStacks() {
    return recipeLayout.getFluidStacks();
  }

  @Override
  public @Nonnull <T> IGuiIngredientGroup<T> getIngredientsGroup(@Nonnull Class<T> ingredientClass) {
    return recipeLayout.getIngredientsGroup(ingredientClass);
  }

  @Override
  @Nullable
  public IFocus<?> getFocus() {
    return recipeLayout.getFocus();
  }

  @Override
  public void setRecipeTransferButton(int posX, int posY) {
    recipeLayout.setRecipeTransferButton(posX, posY);
  }

  @Override
  public void setShapeless() {
    recipeLayout.setShapeless();
  }

  @Override
  public @Nonnull IRecipeCategory<?> getRecipeCategory() {
    return recipeLayout.getRecipeCategory();
  }

}
@@ -331,16 +331,60 @@
 IFocus;%0A
+import mezz.jei.api.recipe.IIngredientType;%0A
 import m
@@ -419,16 +419,16 @@
 tegory;%0A
-
 %0Apublic 
@@ -896,33 +896,70 @@
 idStacks();%0A  %7D%0A
+  %0A  @SuppressWarnings(%22deprecation%22)
 %0A
-
   @Override%0A  pu
@@ -1115,32 +1115,221 @@
 entClass);%0A  %7D%0A%0A
+  @Override%0A  public @Nonnull %3CT%3E IGuiIngredientGroup%3CT%3E getIngredientsGroup(@Nonnull IIngredientType%3CT%3E ingredientType) %7B%0A    return recipeLayout.getIngredientsGroup(ingredientType);%0A  %7D%0A%0A
   @Override%0A  @N
@@ -1737,14 +1737,13 @@
 gory();%0A
+
   %7D%0A
-%0A
 %7D

Fix JEI integration compile error