diff options
author | Martin Kiewitz | 2009-10-14 11:23:46 +0000 |
---|---|---|
committer | Martin Kiewitz | 2009-10-14 11:23:46 +0000 |
commit | d6d2b0b6bb5677a950e47959ff5c475f99905b81 (patch) | |
tree | 3ead94008534cb50c6322e0cb97d859c1aa37169 | |
parent | 1aa2cb8e61252b4bc333674d20ffa4054697bdd9 (diff) | |
download | scummvm-rg350-d6d2b0b6bb5677a950e47959ff5c475f99905b81.tar.gz scummvm-rg350-d6d2b0b6bb5677a950e47959ff5c475f99905b81.tar.bz2 scummvm-rg350-d6d2b0b6bb5677a950e47959ff5c475f99905b81.zip |
SCI/newgui: SciGuiTransitions now gets picRect
svn-id: r45068
-rw-r--r-- | engines/sci/gui/gui.cpp | 11 | ||||
-rw-r--r-- | engines/sci/gui/gui.h | 1 | ||||
-rw-r--r-- | engines/sci/gui/gui_transitions.cpp | 2 | ||||
-rw-r--r-- | engines/sci/gui/gui_transitions.h | 2 |
4 files changed, 12 insertions, 4 deletions
diff --git a/engines/sci/gui/gui.cpp b/engines/sci/gui/gui.cpp index cca014ae0c..7a63252a8d 100644 --- a/engines/sci/gui/gui.cpp +++ b/engines/sci/gui/gui.cpp @@ -504,13 +504,20 @@ uint16 SciGui::onControl(byte screenMask, Common::Rect rect) { return result; } +void SciGui::animateShowPic() { + GuiPort *oldPort = _gfx->SetPort((GuiPort *)_windowMgr->_picWind); + + _transitions->doit(_gfx->GetPort()->rect); + _gfx->SetPort(oldPort); +} + void SciGui::animate(reg_t listReference, bool cycle, int argc, reg_t *argv) { byte old_picNotValid = _screen->_picNotValid; if (listReference.isNull()) { _animate->disposeLastCast(); if (_screen->_picNotValid) - _transitions->doit(); + animateShowPic(); return; } @@ -536,7 +543,7 @@ void SciGui::animate(reg_t listReference, bool cycle, int argc, reg_t *argv) { _animate->drawCels(); if (_screen->_picNotValid) - _transitions->doit(); + animateShowPic(); _animate->updateScreen(old_picNotValid); _animate->restoreAndDelete(argc, argv); diff --git a/engines/sci/gui/gui.h b/engines/sci/gui/gui.h index 85c5fa51ca..47ba512b18 100644 --- a/engines/sci/gui/gui.h +++ b/engines/sci/gui/gui.h @@ -138,6 +138,7 @@ protected: private: virtual void initPriorityBands(); + virtual void animateShowPic(); SciGuiGfx *_gfx; SciGuiresources *_resources; diff --git a/engines/sci/gui/gui_transitions.cpp b/engines/sci/gui/gui_transitions.cpp index ea36bbb71d..6f9d0a313b 100644 --- a/engines/sci/gui/gui_transitions.cpp +++ b/engines/sci/gui/gui_transitions.cpp @@ -51,7 +51,7 @@ void SciGuiTransitions::setup(int16 number) { _number = number; } -void SciGuiTransitions::doit() { +void SciGuiTransitions::doit(Common::Rect picRect) { // TODO: Implement animations warning("SciGuiTransitions: animation %d not implemented", _number); _palette->setOnScreen(); diff --git a/engines/sci/gui/gui_transitions.h b/engines/sci/gui/gui_transitions.h index f2f1e798ca..2cc2757edc 100644 --- a/engines/sci/gui/gui_transitions.h +++ b/engines/sci/gui/gui_transitions.h @@ -37,7 +37,7 @@ public: ~SciGuiTransitions(); void setup(int16 number); - void doit(); + void doit(Common::Rect picRect); private: void init(void); |