diff options
Diffstat (limited to 'engines/sci/gui32')
-rw-r--r-- | engines/sci/gui32/gui32.cpp | 16 | ||||
-rw-r--r-- | engines/sci/gui32/gui32.h | 3 |
2 files changed, 19 insertions, 0 deletions
diff --git a/engines/sci/gui32/gui32.cpp b/engines/sci/gui32/gui32.cpp index 2248a58455..4fdffe3267 100644 --- a/engines/sci/gui32/gui32.cpp +++ b/engines/sci/gui32/gui32.cpp @@ -23,6 +23,7 @@ * */ +#include "graphics/cursorman.h" #include "common/util.h" #include "sci/sci.h" @@ -2002,6 +2003,21 @@ void SciGui32::setNowSeen(reg_t objectReference) { _k_set_now_seen(objectReference); } +void SciGui32::setCursorHide() { + CursorMan.showMouse(false); +} + +void SciGui32::setCursorShow() { + CursorMan.showMouse(true); +} + +void SciGui32::setCursorShape(GuiResourceId cursorId) { + if (cursorId == -1) + gfxop_set_pointer_cursor(s->gfx_state, GFXOP_NO_POINTER); + else + gfxop_set_pointer_cursor(s->gfx_state, cursorId); +} + void SciGui32::setCursorPos(Common::Point pos) { pos.y += s->port->_bounds.y; pos.x += s->port->_bounds.x; diff --git a/engines/sci/gui32/gui32.h b/engines/sci/gui32/gui32.h index 5af02a26f7..d9d5909b98 100644 --- a/engines/sci/gui32/gui32.h +++ b/engines/sci/gui32/gui32.h @@ -77,6 +77,9 @@ public: void addToPicView(GuiResourceId viewId, GuiViewLoopNo loopNo, GuiViewCelNo celNo, int16 leftPos, int16 topPos, int16 priority, int16 control); void setNowSeen(reg_t objectReference); + void setCursorHide(); + void setCursorShow(); + void setCursorShape(GuiResourceId cursorId); void setCursorPos(Common::Point pos); void moveCursor(Common::Point pos); |