mirror of
https://github.com/scummvm/scummvm.git
synced 2026-06-20 05:45:29 +00:00
PINK: implement OnMouseOverWithItem for LeadActor
This commit is contained in:
committed by
Eugene Sandulenko
parent
a9c3826b0f
commit
ffcaf74b08
@@ -95,7 +95,7 @@ void Actor::onMouseOver(const Common::Point point, CursorMgr *mgr) {
|
||||
mgr->setCursor(kDefaultCursor, point, Common::String());
|
||||
}
|
||||
|
||||
void Actor::onHover(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) {
|
||||
void Actor::onMouseOverWithItem(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) {
|
||||
cursorMgr->setCursor(kHoldingItemCursor, point, itemName);
|
||||
}
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ public:
|
||||
virtual bool isUseClickHandlers(InventoryItem *item) { return false; }
|
||||
|
||||
virtual void onMouseOver(const Common::Point point, CursorMgr *mgr);
|
||||
virtual void onHover(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr);
|
||||
virtual void onMouseOverWithItem(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr);
|
||||
|
||||
virtual void onClick() {}
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ void AudioInfoPDAButton::onMouseOver(const Common::Point point, CursorMgr *mgr)
|
||||
mgr->setCursor(kClickableFirstFrameCursor, point, Common::String());
|
||||
}
|
||||
|
||||
void AudioInfoPDAButton::onHover(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) {
|
||||
void AudioInfoPDAButton::onMouseOverWithItem(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) {
|
||||
onMouseOver(point, cursorMgr);
|
||||
}
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ public:
|
||||
void toConsole();
|
||||
|
||||
void onMouseOver(const Common::Point point, CursorMgr *mgr);
|
||||
void onHover(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) override;
|
||||
void onMouseOverWithItem(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) override;
|
||||
|
||||
bool onLeftClickMessage() override;
|
||||
};
|
||||
|
||||
@@ -250,7 +250,6 @@ void LeadActor::onRightButtonClick(const Common::Point point) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void LeadActor::onMouseMove(const Common::Point point) {
|
||||
if (_state != kPDA)
|
||||
updateCursor(point);
|
||||
@@ -258,6 +257,10 @@ void LeadActor::onMouseMove(const Common::Point point) {
|
||||
_page->getGame()->getPdaMgr().onMouseMove(point);
|
||||
}
|
||||
|
||||
void LeadActor::onMouseOverWithItem(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) {
|
||||
_cursorMgr->setCursor(kHoldingItemCursor, point, itemName + kClickable);
|
||||
}
|
||||
|
||||
void LeadActor::onMouseOver(const Common::Point point, CursorMgr *mgr) {
|
||||
if (getInventoryMgr()->isPinkOwnsAnyItems())
|
||||
_cursorMgr->setCursor(kClickableFirstFrameCursor, point, Common::String());
|
||||
@@ -339,7 +342,7 @@ void LeadActor::updateCursor(const Common::Point point) {
|
||||
InventoryItem *item = getInventoryMgr()->getCurrentItem();
|
||||
if (_isHaveItem) {
|
||||
if (actor) {
|
||||
actor->onHover(point, item->getName(), _cursorMgr);
|
||||
actor->onMouseOverWithItem(point, item->getName(), _cursorMgr);
|
||||
} else
|
||||
_cursorMgr->setCursor(kHoldingItemCursor, point, item->getName());
|
||||
} else if (actor)
|
||||
|
||||
@@ -75,6 +75,7 @@ public:
|
||||
|
||||
void onMouseMove(const Common::Point point);
|
||||
|
||||
void onMouseOverWithItem(const Common::Point point, const Common::String &itemName, Pink::CursorMgr *cursorMgr) override;
|
||||
void onMouseOver(const Common::Point point, CursorMgr *mgr) override;
|
||||
|
||||
virtual void onClick();
|
||||
|
||||
@@ -64,11 +64,11 @@ void SupportingActor::onMouseOver(const Common::Point point, CursorMgr *mgr) {
|
||||
Actor::onMouseOver(point, mgr);
|
||||
}
|
||||
|
||||
void SupportingActor::onHover(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) {
|
||||
void SupportingActor::onMouseOverWithItem(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) {
|
||||
Common::String item = itemName;
|
||||
if (_handlerMgr.isUseClickHandler(this, itemName))
|
||||
item += kClickable;
|
||||
Actor::onHover(point, item, cursorMgr);
|
||||
cursorMgr->setCursor(kHoldingItemCursor, point, item);
|
||||
}
|
||||
|
||||
void SupportingActor::onTimerMessage() {
|
||||
|
||||
@@ -41,7 +41,7 @@ public:
|
||||
bool isUseClickHandlers(InventoryItem *item) override;
|
||||
|
||||
void onMouseOver(const Common::Point point, CursorMgr *mgr) override;
|
||||
void onHover(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) override;
|
||||
void onMouseOverWithItem(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) override;
|
||||
|
||||
void onTimerMessage() override;
|
||||
bool onLeftClickMessage() override;
|
||||
|
||||
Reference in New Issue
Block a user