22 #ifndef MACS2_ACTIONBAR_H 23 #define MACS2_ACTIONBAR_H 25 #include "common/rect.h" 26 #include "common/str.h" 27 #include "graphics/managed_surface.h" 28 #include "macs2/macs2_constants.h" 29 #include "macs2/scriptexecutor.h" 48 bool handleClick(
const Common::Point &pos,
bool scriptsRunning =
false);
52 void clearSentenceObject();
54 void syncActiveVerbFromCursorMode();
55 void resetInventoryAfterLoad();
57 bool useScummSkin()
const;
58 bool useNativeSkin()
const;
63 static constexpr
int kSentenceH = 14;
64 static constexpr
int kUITop = kGameHeight;
65 static constexpr
int kSentenceY = kGameHeight;
66 static constexpr
int kVerbY = kGameHeight + kSentenceH;
67 static constexpr
int kBarPadX = 6;
68 static constexpr
int kVerbW = 78;
69 static constexpr
int kVerbH = 25;
70 static constexpr
int kVerbCols = 2;
71 static constexpr
int kVerbRows = 2;
72 static constexpr
int kVerbInvGap = 4;
73 static constexpr
int kInvItemH = 25;
74 static constexpr
int kInvIconInset = 1;
75 static constexpr
int kInvCols = 4;
76 static constexpr
int kInvRows = 2;
80 Script::MouseMode mode;
82 static const VerbDef kVerbs[4];
86 bool handleClickScumm(
const Common::Point &pos,
bool scriptsRunning);
88 void actionBarFont(
const GlyphData *&font, uint16 &glyphCount,
int &glyphH)
const;
94 void rebuildProtagonistItems();
96 int getScrollButtonWidth()
const;
97 int getInvArrowX()
const;
98 int getInvItemWidth()
const;
107 bool isPointInInventoryStrip(
const Common::Point &pos)
const;
113 void refreshSaveSlotNames();
120 int _activeVerbIndex;
122 int _hoveredItemIndex;
123 int _hoveredScrollButton;
124 int _inventoryScrollOffset;
128 uint16 _hoveredButtonId = 0;
129 uint16 _pressedButtonId = 0;
134 #endif // MACS2_ACTIONBAR_H Definition: managed_surface.h:51
int gameAreaBottomY() const
Definition: actionbar.h:31
Definition: actionbar.h:43