Class GGInventoryActionStrategy extends Resource
Responsible for user input handling delegated from the [GGInventoryController].
Handles mouse, focus, and GUI [InputEvent]s for inventory slots which are delegated to this class by the [GGInventoryController]. This separation of concerns allows the [GGInventorySlotItemUI] to focus exclusively on displaying items, while an action strategy handles all the player input.
Note: This class only defines the methods, effectively acting as an interface. Please see the [GGInventoryActionStrategyDefault] which implements the default action strategy.
Note: This class only defines the methods, effectively acting as an interface. Please see the [GGInventoryActionStrategyDefault] which implements the default action strategy.
# Methods
## Called by the [param controller] for each [InputEvent] the slot described by [param event_args] receives. The inventory [param slot] and [param item] are provided for convenience. [br][br]If the [param event] is handled, use [method Viewport.set_input_as_handled] to mark it as such.func on_slot_gui_input(controller: GGInventoryControllerevent_args: GGInventoryEventArgs) -> void## Called when an inventory slot described by [param event_args] is focused.func on_focus_entered(controller: GGInventoryControllerevent_args: GGInventoryEventArgs) -> void## Called when an inventory slot described by [param event_args] loses focus.func on_focus_exited(controller: GGInventoryControllerevent_args: GGInventoryEventArgs) -> void## Called when the mouse hovers over the inventory slot described by [param event_args].func on_mouse_entered(controller: GGInventoryControllerevent_args: GGInventoryEventArgs) -> void## Called when the mouse no longer hovers over the inventory slot described by [param event_args].func on_mouse_exited(controller: GGInventoryControllerevent_args: GGInventoryEventArgs) -> void