22#ifndef ULTIMA8_GUMPS_CONTAINERGUMP_H
23#define ULTIMA8_GUMPS_CONTAINERGUMP_H
25#include "ultima/ultima8/gumps/item_relative_gump.h"
26#include "ultima/ultima8/misc/classtype.h"
39 ENABLE_RUNTIME_CLASSTYPE()
43 uint32 flags = FLAG_DRAGGABLE, int32 layer = LAYER_NORMAL);
47 _itemArea = *itemArea;
51 void Close(
bool no_del =
false)
override;
67 int32 lerp_factor = 256)
override;
76 Gump *onMouseDown(
int button, int32 mx, int32 my)
override;
77 void onMouseClick(
int button, int32 mx, int32 my)
override;
78 void onMouseDouble(
int button, int32 mx, int32 my)
override;
84 void GetItemLocation(int32 lerp_factor)
override;
86 virtual Container *getTargetContainer(
Item *item,
int mx,
int my);
88 void getItemCoords(
Item *item, int32 &itemx, int32 &itemy);
92 bool _displayDragging;
93 uint32 _draggingShape;
94 uint32 _draggingFrame;
95 uint32 _draggingFlags;
96 int32 _draggingX, _draggingY;
Definition: container_gump.h:37
bool StartDraggingItem(Item *item, int mx, int my) override
void PaintThis(RenderSurface *, int32 lerp_factor, bool scaled) override
Overloadable method to Paint just this Gump (RenderSurface is relative to this)
void InitGump(Gump *newparent, bool take_focus=true) override
void DropItem(Item *item, int mx, int my) override
bool DraggingItem(Item *item, int mx, int my) override
uint16 TraceObjId(int32 mx, int32 my) override
Trace a click, and return ObjId.
void Close(bool no_del=false) override
void StopDraggingItem(Item *item, bool moved) override
void run() override
Run the gump.
void DraggingItemLeftGump(Item *item) override
Called when an item that was being dragged over the gump left the gump.
bool GetLocationOfItem(uint16 itemid, int32 &gx, int32 &gy, int32 lerp_factor=256) override
Definition: container.h:35
Definition: item_relative_gump.h:34
Definition: render_surface.h:37