net.minecraft.inventory

## Class ContainerWorkbench

- java.lang.Object
- - net.minecraft.inventory.Container
  - - net.minecraft.inventory.ContainerWorkbench

-     public class ContainerWorkbench
      extends Container

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `InventoryCrafting` | `craftMatrix` The crafting matrix inventory (3x3).
    `IInventory` | `craftResult`

    - ### Fields inherited from class net.minecraft.inventory.Container

      `inventoryItemStacks, inventorySlots, windowId`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ContainerWorkbench(InventoryPlayer par1InventoryPlayer, World par2World, int par3, int par4, int par5)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `canInteractWith(EntityPlayer par1EntityPlayer)`
    `boolean` | `func_94530_a(ItemStack par1ItemStack, Slot par2Slot)`
    `void` | `onCraftGuiClosed(EntityPlayer par1EntityPlayer)` Callback for when the crafting gui is closed.
    `void` | `onCraftMatrixChanged(IInventory par1IInventory)` Callback for when the crafting matrix is changed.
    `ItemStack` | `transferStackInSlot(EntityPlayer par1EntityPlayer, int par2)` Called when a player shift-clicks on a slot.

    - ### Methods inherited from class net.minecraft.inventory.Container

      `addCraftingToCrafters, calcRedstoneFromInventory, detectAndSendChanges, enchantItem, func_94525_a, func_94527_a, func_94528_d, func_94529_b, func_94531_b, func_94532_c, func_94534_d, getInventory, getNextTransactionID, getSlot, getSlotFromInventory, isPlayerNotUsingContainer, putStackInSlot, putStacksInSlots, removeCraftingFromCrafters, setPlayerIsPresent, slotClick, updateProgressBar`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### craftMatrix

          public InventoryCrafting craftMatrix

      The crafting matrix inventory (3x3).

    - #### craftResult

          public IInventory craftResult

  - ### Constructor Detail

    - #### ContainerWorkbench

          public ContainerWorkbench(InventoryPlayer par1InventoryPlayer,
                            World par2World,
                            int par3,
                            int par4,
                            int par5)

  - ### Method Detail

    - #### onCraftMatrixChanged

          public void onCraftMatrixChanged(IInventory par1IInventory)

      Callback for when the crafting matrix is changed.
      Overrides:
        `onCraftMatrixChanged` in class `Container`

    - #### onCraftGuiClosed

          public void onCraftGuiClosed(EntityPlayer par1EntityPlayer)

      Callback for when the crafting gui is closed.
      Overrides:
        `onCraftGuiClosed` in class `Container`

    - #### canInteractWith

          public boolean canInteractWith(EntityPlayer par1EntityPlayer)

      Specified by:
        `canInteractWith` in class `Container`

    - #### transferStackInSlot

          public ItemStack transferStackInSlot(EntityPlayer par1EntityPlayer,
                                      int par2)

      Called when a player shift-clicks on a slot. You must override this or you will crash when someone does that.
      Overrides:
        `transferStackInSlot` in class `Container`

    - #### func_94530_a

          public boolean func_94530_a(ItemStack par1ItemStack,
                             Slot par2Slot)

      Overrides:
        `func_94530_a` in class `Container`