Item, and for each type of item having a derived type, e.g. Consumable and Equippable. These are then kept in a List<Item>, for example. The drop action could then be added to the right click menu (exact implementation not important) as it would apply to all items, and would perhaps be implemented in the Inventory class itself.Item?