Package org.bukkit.event.inventory

# Class InventoryInteractEvent

java.lang.Object
org.bukkit.event.Event
org.bukkit.event.inventory.InventoryEvent
org.bukkit.event.inventory.InventoryInteractEvent

All Implemented Interfaces:
  `Cancellable`

Direct Known Subclasses:
  `InventoryClickEvent`, `InventoryDragEvent`, `TradeSelectEvent`

public abstract class InventoryInteractEvent extends InventoryEvent implements Cancellable
An abstract base class for events that describe an interaction between a HumanEntity and the contents of an Inventory.

## Nested Class Summary

## Nested classes/interfaces inherited from class org.bukkit.event.Event

`Event.Result`

## Field Summary

### Fields inherited from class org.bukkit.event.inventory.InventoryEvent

`transaction`

## Constructor Summary

Constructors
Constructor
Description
`InventoryInteractEvent(@NotNull InventoryView transaction)`

## Method Summary

Modifier and Type
Method
Description
`@NotNull Event.Result`
`getResult()`
Gets the `Event.Result` of this event.
`@NotNull HumanEntity`
`getWhoClicked()`
Gets the player who performed the click.
`boolean`
`isCancelled()`
Gets whether or not this event is cancelled.
`void`
`setCancelled(boolean toCancel)`
Proxy method to `setResult(org.bukkit.event.Event.Result)` for the Cancellable interface.
`void`
`setResult(@NotNull Event.Result newResult)`
Sets the result of this event.

### Methods inherited from class org.bukkit.event.inventory.InventoryEvent

`getHandlerList, getHandlers, getInventory, getView, getViewers`

### Methods inherited from class org.bukkit.event.Event

`callEvent, getEventName, isAsynchronous`

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

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

## Constructor Details

### InventoryInteractEvent

public InventoryInteractEvent(@NotNull @NotNull InventoryView transaction)

## Method Details

### getWhoClicked

@NotNull public @NotNull HumanEntity getWhoClicked()
Gets the player who performed the click.

Returns:
  The clicking player.

### setResult

public void setResult(@NotNull @NotNull Event.Result newResult)
Sets the result of this event. This will change whether or not this event is considered cancelled.

Parameters:
  `newResult` - the new `Event.Result` for this event
See Also:
  - `isCancelled()`

### getResult

@NotNull public @NotNull Event.Result getResult()
Gets the `Event.Result` of this event. The Result describes the behavior that will be applied to the inventory in relation to this event.

Returns:
  the Result of this event.

### isCancelled

public boolean isCancelled()
Gets whether or not this event is cancelled. This is based off of the Result value returned by `getResult()`. Result.ALLOW and Result.DEFAULT will result in a returned value of false, but Result.DENY will result in a returned value of true.

Gets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins

Specified by:
  `isCancelled` in interface `Cancellable`
Returns:
  whether the event is cancelled

### setCancelled

public void setCancelled(boolean toCancel)
Proxy method to `setResult(org.bukkit.event.Event.Result)` for the Cancellable interface. `setResult(org.bukkit.event.Event.Result)` is preferred, as it allows you to specify the Result beyond Result.DENY and Result.ALLOW.

Sets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins.

Specified by:
  `setCancelled` in interface `Cancellable`
Parameters:
  `toCancel` - result becomes DENY if true, ALLOW if false