22 #ifndef NANCY_UI_INVENTORYPOPUP_H 23 #define NANCY_UI_INVENTORYPOPUP_H 25 #include "engines/nancy/commontypes.h" 26 #include "engines/nancy/renderobject.h" 51 bool isOpen()
const {
return _isVisible; }
56 void toggle() {
if (_isVisible) close();
else open(); }
76 static const uint kSlotsPerPage = 16;
77 static const uint kNumFilters = 3;
79 void drawBackground();
80 void drawSlot(uint slotIndex, int16 itemId,
bool highlighted =
false);
81 void drawFilterTabs();
82 void drawFilterTab(uint index,
bool drawHover =
false);
83 void drawFilterCaption();
84 void drawCloseButton(
bool hovered);
85 void drawScrollbar(UIButtonState state);
86 void rebuildVisibleList();
93 bool syncOrderWithInventory();
95 bool itemMatchesFilter(int16 itemID)
const;
96 void setActiveFilterIndex(uint index);
105 void updatePageFromScroll();
111 const UIIV *_uiivData =
nullptr;
112 const INV *_invData =
nullptr;
117 bool _closeButtonHovered =
false;
119 uint _activeFilterIndex = 0;
122 uint _currentPage = 0;
129 int16 _slotItemIDs[kSlotsPerPage];
133 int _hoveredSlot = -1;
136 float _scrollPos = 0.0f;
137 bool _scrollbarDragging =
false;
138 bool _scrollbarHovered =
false;
139 int _scrollbarGrabOffset = 0;
141 bool _filterHovered =
false;
147 #endif // NANCY_UI_INVENTORYPOPUP_H Definition: managed_surface.h:51
Definition: soundequalizerpuzzle.h:27
Definition: renderobject.h:36
Definition: enginedata.h:114
Definition: enginedata.h:769
Definition: actionmanager.h:32