22 #ifndef SCI_GRAPHICS_MENU_H 23 #define SCI_GRAPHICS_MENU_H 28 SCI_MENU_ATTRIBUTE_SAID = 0x6d,
29 SCI_MENU_ATTRIBUTE_TEXT = 0x6e,
30 SCI_MENU_ATTRIBUTE_KEYPRESS = 0x6f,
31 SCI_MENU_ATTRIBUTE_ENABLED = 0x70,
32 SCI_MENU_ATTRIBUTE_TAG = 0x71
36 SCI_MENU_REPLACE_ONCONTROL = 0x03,
37 SCI_MENU_REPLACE_ONALT = 0x02,
38 SCI_MENU_REPLACE_ONFUNCTION =
'F' 48 : id(curId), textWidth(0) { }
66 int16 textRightAlignedWidth;
69 : menuId(curMenuId), id(curId),
70 enabled(
true), tag(0), keyPress(0), keyModifier(0), separatorLine(
false), textWidth(0), textRightAlignedWidth(0) {
87 void kernelSetAttribute(uint16 menuId, uint16 itemId, uint16 attributeId,
reg_t value);
88 reg_t kernelGetAttribute(uint16 menuId, uint16 itemId, uint16 attributeId);
91 reg_t kernelSelect(
reg_t eventObject,
bool pauseSound);
93 void kernelDrawStatus(
const char *text, int16 colorPen, int16 colorBack);
94 void kernelDrawMenuBar(
bool clear);
98 void calculateMenuWidth();
99 void calculateMenuAndItemWidth();
100 void drawMenu(uint16 oldMenuId, uint16 newMenuId);
101 void invertMenuSelection(uint16 itemId);
102 void interactiveStart(
bool pauseSound);
103 void interactiveEnd(
bool pauseSound);
107 uint16 mouseFindMenuItemSelection(
Common::Point mousePosition, uint16 menuId);
108 GuiMenuItemEntry *interactiveGetItem(uint16 menuId, uint16 itemId,
bool menuChanged);
119 GuiMenuItemList _itemList;
125 reg_t _barSaveHandle;
126 reg_t _menuSaveHandle;
134 #endif // SCI_GRAPHICS_MENU_H
Definition: seg_manager.h:48
Definition: vm_types.h:39