26 #include "common/scummsys.h" 27 #include "common/hashmap.h" 34 #define CLICK_THRESHOLD 10 36 #define USEON_THRESHOLD 5 38 #define HOTSPOT_FADEOUT 36 40 #define HOTSPOT_DIM 36 42 #define HOTSPOT_EXIT_DIM (HOTSPOT_DIM >> 1) 44 #define HOTSPOT_YOFF 48 46 #define HOTSPOT_EXIT_YOFF 48 49 #define HOTSPOT_USE_ON_YOFF (-55) 52 #define HOTSPOT_INVX (TOP_LEFT_X + 40) 53 #define HOTSPOT_INVY (TOP_LEFT_Y + FULL_SCREEN_HEIGHT-35) 56 #define HOTSPOT_OPTIONSX (TOP_LEFT_X + 30) 57 #define HOTSPOT_OPTIONSY (TOP_LEFT_Y + 30) 60 #define HOTSPOT_helpx (TOP_LEFT_X + FULL_SCREEN_WIDTH-30) 61 #define HOTSPOT_helpy (TOP_LEFT_Y + 30) 66 #define USE_ON_DIST 40 69 #define TWEEKY_EXIT_ADJUST (FULL_SCREEN_HEIGHT + TOP_LEFT_Y - 40) 77 #define ACTION_FLASH_TIME 7 96 void mouseEngineIBASS();
97 void replaceMouseCursors(uint16 fileNo);
100 void fnOpenCloseHand(
bool open);
101 uint16 findMouseCursor(uint32 itemNum);
104 void restoreMouseData(uint16 frameNum);
106 void spriteMouse(uint16 frameNum, uint8 mouseX, uint8 mouseY);
107 void useLogicInstance(
Logic *skyLogic) { _skyLogic = skyLogic; }
108 void useControlInstance(
Control *control) { _skyControl = control; }
109 void buttonPressed(uint8 button);
110 void mouseMoved(uint16 mouseX, uint16 mouseY);
111 void waitMouseNotPressed(
int minDelay = 0);
112 uint16 giveMouseX() {
return _mouseX; }
113 uint16 giveMouseY() {
return _mouseY; }
114 uint16 giveCurrentMouseType() {
return _currentCursor; }
116 void logicClick() { _logicClick =
true; }
118 void setInvDims(uint16 x, uint16 y, uint16 w, uint16 h) {
125 void setTextChooserMode() {
126 _mMode = TEXT_CHOOSER;
132 int doProximityHighlights(uint16 xPos, uint16 yPos);
133 uint16 giveXCood(
Compact *itemData, uint32
id);
134 uint16 giveYCood(
Compact *itemData, uint32
id);
135 void setLincInv(
bool inv) {
141 void incLincMenuRef() {
144 void pushInvY(uint16 y) {
150 UIIcon getInteractIcon(uint32
id);
151 bool hasSingleInteractIcon(uint32
id);
152 void updateHotspotCoordinate(uint16 xPos);
153 int touchingFloor(uint16 xPos, uint16 yPos);
157 void pointerEngine(uint16 xPos, uint16 yPos);
158 void pointerEngineIBASS(uint16 xPos, uint16 yPos);
159 void buttonEngine1();
160 void invMouse(uint16 xPos, uint16 yPos);
161 void lincInvMouse(uint16 xPos, uint16 yPos);
162 void invUseOn(uint16 xPos, uint16 yPos);
163 void textChooser(uint16 xPos, uint16 yPos);
178 uint16 _touchIdLegacy;
187 int _nearestProximityIconId;
195 bool _actionFlash =
false;
196 int _actionFlashTime = 0;
197 int _actionFlashIcon = 0;
198 int _actionFlashX = 0;
199 int _actionFlashY = 0;
200 void initExitIcon(uint32 type,
int iconx,
int icony);
203 uint16 _currentCursor;
206 byte *_objectMouseData;
214 static uint32 _mouseMainObjects[24];
215 static uint32 _mouseLincObjects[21];
Definition: atari-screen.h:58
Definition: autoroute.h:28
Definition: control.h:181