[Scummvm-git-logs] scummvm master -> 9c537a87445c65e7579d251c6aeb175669064b9b
djsrv
dservilla at gmail.com
Wed Aug 5 03:54:49 UTC 2020
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
9c537a8744 DIRECTOR: Rename Stage to more general Window
Commit: 9c537a87445c65e7579d251c6aeb175669064b9b
https://github.com/scummvm/scummvm/commit/9c537a87445c65e7579d251c6aeb175669064b9b
Author: djsrv (dservilla at gmail.com)
Date: 2020-08-04T23:54:09-04:00
Commit Message:
DIRECTOR: Rename Stage to more general Window
The stage and windows are the same type of thing, but the stage only
refers to one particular window.
Changed paths:
A engines/director/window.cpp
A engines/director/window.h
R engines/director/stage.cpp
R engines/director/stage.h
engines/director/castmember.cpp
engines/director/director.cpp
engines/director/director.h
engines/director/events.cpp
engines/director/frame.h
engines/director/lingo/lingo-builtins.cpp
engines/director/lingo/lingo-code.cpp
engines/director/lingo/lingo-funcs.cpp
engines/director/lingo/lingo-object.cpp
engines/director/lingo/lingo-the.cpp
engines/director/lingo/lingo.cpp
engines/director/module.mk
engines/director/movie.cpp
engines/director/movie.h
engines/director/resource.cpp
engines/director/score.cpp
engines/director/score.h
engines/director/tests.cpp
engines/director/transitions.cpp
diff --git a/engines/director/castmember.cpp b/engines/director/castmember.cpp
index 7c3945f95a..ae331bea05 100644
--- a/engines/director/castmember.cpp
+++ b/engines/director/castmember.cpp
@@ -27,7 +27,7 @@
#include "director/director.h"
#include "director/castmember.h"
#include "director/movie.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/stxt.h"
namespace Director {
@@ -169,7 +169,7 @@ Graphics::MacWidget *BitmapCastMember::createWidget(Common::Rect &bbox) {
return nullptr;
}
- Graphics::MacWidget *widget = new Graphics::MacWidget(g_director->getCurrentStage(), bbox.left, bbox.top, bbox.width(), bbox.height(), g_director->_wm, false);
+ Graphics::MacWidget *widget = new Graphics::MacWidget(g_director->getCurrentWindow(), bbox.left, bbox.top, bbox.width(), bbox.height(), g_director->_wm, false);
widget->getSurface()->blitFrom(*_img->getSurface());
return widget;
}
@@ -482,7 +482,7 @@ Graphics::MacWidget *TextCastMember::createWidget(Common::Rect &bbox) {
switch (_type) {
case kCastText:
- widget = new Graphics::MacText(g_director->getCurrentStage(), bbox.left, bbox.top, bbox.width(), bbox.height(), g_director->_wm, _ftext, macFont, getForeColor(), getBackColor(), bbox.width(), getAlignment(), 0, _borderSize, _gutterSize, _boxShadow, _textShadow);
+ widget = new Graphics::MacText(g_director->getCurrentWindow(), bbox.left, bbox.top, bbox.width(), bbox.height(), g_director->_wm, _ftext, macFont, getForeColor(), getBackColor(), bbox.width(), getAlignment(), 0, _borderSize, _gutterSize, _boxShadow, _textShadow);
((Graphics::MacText *)widget)->draw();
((Graphics::MacText *)widget)->_focusable = _editable;
((Graphics::MacText *)widget)->setEditable(_editable);
@@ -492,7 +492,7 @@ Graphics::MacWidget *TextCastMember::createWidget(Common::Rect &bbox) {
case kCastButton:
// note that we use _initialRect for the dimensions of the button;
// the values provided in the sprite bounding box are ignored
- widget = new Graphics::MacButton(Graphics::MacButtonType(_buttonType), getAlignment(), g_director->getCurrentStage(), bbox.left, bbox.top, _initialRect.width(), _initialRect.height(), g_director->_wm, _ftext, macFont, getForeColor(), 0xff);
+ widget = new Graphics::MacButton(Graphics::MacButtonType(_buttonType), getAlignment(), g_director->getCurrentWindow(), bbox.left, bbox.top, _initialRect.width(), _initialRect.height(), g_director->_wm, _ftext, macFont, getForeColor(), 0xff);
((Graphics::MacButton *)widget)->draw();
widget->_focusable = true;
diff --git a/engines/director/director.cpp b/engines/director/director.cpp
index 2c7f7885dc..fc2a2a1b20 100644
--- a/engines/director/director.cpp
+++ b/engines/director/director.cpp
@@ -33,7 +33,7 @@
#include "director/movie.h"
#include "director/score.h"
#include "director/sound.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/lingo/lingo.h"
namespace Director {
@@ -80,11 +80,11 @@ DirectorEngine::DirectorEngine(OSystem *syst, const DirectorGameDescription *gam
_soundManager = nullptr;
_currentPalette = nullptr;
_currentPaletteLength = 0;
- _mainStage = nullptr;
+ _stage = nullptr;
_windowList = new Datum;
_windowList->type = ARRAY;
_windowList->u.farr = new DatumArray;
- _currentStage = nullptr;
+ _currentWindow = nullptr;
_lingo = nullptr;
_version = getDescriptionVersion();
@@ -122,14 +122,14 @@ DirectorEngine::~DirectorEngine() {
clearPalettes();
}
-Archive *DirectorEngine::getMainArchive() const { return _currentStage->getMainArchive(); }
-Movie *DirectorEngine::getCurrentMovie() const { return _currentStage->getCurrentMovie(); }
-Common::String DirectorEngine::getCurrentPath() const { return _currentStage->getCurrentPath(); }
+Archive *DirectorEngine::getMainArchive() const { return _currentWindow->getMainArchive(); }
+Movie *DirectorEngine::getCurrentMovie() const { return _currentWindow->getCurrentMovie(); }
+Common::String DirectorEngine::getCurrentPath() const { return _currentWindow->getCurrentPath(); }
static void buildbotErrorHandler(const char *msg) { }
void DirectorEngine::setCurrentMovie(Movie *movie) {
- _currentStage = movie->getStage();
+ _currentWindow = movie->getWindow();
}
Common::Error DirectorEngine::run() {
@@ -152,30 +152,30 @@ Common::Error DirectorEngine::run() {
_wm->setEngine(this);
- _mainStage = new Stage(_wm->getNextId(), false, false, false, _wm, this);
- *_mainStage->_refCount += 1;
+ _stage = new Window(_wm->getNextId(), false, false, false, _wm, this);
+ *_stage->_refCount += 1;
if (debugChannelSet(-1, kDebugDesktop))
- _mainStage->setBorderType(3);
+ _stage->setBorderType(3);
else
- _mainStage->disableBorder();
+ _stage->disableBorder();
_surface = new Graphics::ManagedSurface;
_wm->setScreen(_surface);
- _wm->addWindowInitialized(_mainStage);
- _wm->setActiveWindow(_mainStage->getId());
+ _wm->addWindowInitialized(_stage);
+ _wm->setActiveWindow(_stage->getId());
setPalette(-1);
- _currentStage = _mainStage;
+ _currentWindow = _stage;
_lingo = new Lingo(this);
_soundManager = new DirectorSound(this);
if (getGameGID() == GID_TEST) {
- _currentStage->runTests();
+ _currentWindow->runTests();
return Common::kNoError;
} else if (getGameGID() == GID_TESTALL) {
- _currentStage->enqueueAllMovies();
+ _currentWindow->enqueueAllMovies();
}
if (getPlatform() == Common::kPlatformWindows)
@@ -195,18 +195,18 @@ Common::Error DirectorEngine::run() {
_sharedCastFile = "Shared.dir";
}
- Common::Error err = _currentStage->loadInitialMovie();
+ Common::Error err = _currentWindow->loadInitialMovie();
if (err.getCode() != Common::kNoError)
return err;
bool loop = true;
while (loop) {
- if (_mainStage->getCurrentMovie())
+ if (_stage->getCurrentMovie())
processEvents();
- _currentStage = _mainStage;
- loop = _currentStage->step();
+ _currentWindow = _stage;
+ loop = _currentWindow->step();
if (loop) {
DatumArray *windowList = g_lingo->_windowList.u.farr;
@@ -214,8 +214,8 @@ Common::Error DirectorEngine::run() {
if ((*windowList)[i].type != OBJECT || (*windowList)[i].u.obj->getObjType() != kWindowObj)
continue;
- _currentStage = static_cast<Stage *>((*windowList)[i].u.obj);
- _currentStage->step();
+ _currentWindow = static_cast<Window *>((*windowList)[i].u.obj);
+ _currentWindow->step();
}
}
diff --git a/engines/director/director.h b/engines/director/director.h
index c3e41bc17f..78a8467c87 100644
--- a/engines/director/director.h
+++ b/engines/director/director.h
@@ -63,7 +63,7 @@ struct DirectorGameDescription;
class DirectorSound;
class Lingo;
class Movie;
-class Stage;
+class Window;
class Score;
class Channel;
class CastMember;
@@ -182,9 +182,9 @@ public:
Graphics::MacWindowManager *getMacWindowManager() const { return _wm; }
Archive *getMainArchive() const;
Lingo *getLingo() const { return _lingo; }
- Stage *getMainStage() const { return _mainStage; }
- Stage *getCurrentStage() const { return _currentStage; }
- void setCurrentStage(Stage *stage) { _currentStage = stage; };
+ Window *getStage() const { return _stage; }
+ Window *getCurrentWindow() const { return _currentWindow; }
+ void setCurrentWindow(Window *window) { _currentWindow = window; };
Movie *getCurrentMovie() const;
void setCurrentMovie(Movie *movie);
Common::String getCurrentPath() const;
@@ -245,9 +245,9 @@ private:
Lingo *_lingo;
uint16 _version;
- Stage *_mainStage;
+ Window *_stage;
Datum *_windowList; // Lingo list
- Stage *_currentStage;
+ Window *_currentWindow;
Graphics::MacPatterns _director3Patterns;
Graphics::MacPatterns _director3QuickDrawPatterns;
diff --git a/engines/director/events.cpp b/engines/director/events.cpp
index 2723cd070c..c4d71b283a 100644
--- a/engines/director/events.cpp
+++ b/engines/director/events.cpp
@@ -30,7 +30,7 @@
#include "director/cursor.h"
#include "director/channel.h"
#include "director/sprite.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/castmember.h"
#include "director/lingo/lingo.h"
@@ -74,7 +74,7 @@ void DirectorEngine::processEvents() {
switch (event.type) {
case Common::EVENT_QUIT:
- _mainStage->getCurrentMovie()->getScore()->_playState = kPlayStopped;
+ _stage->getCurrentMovie()->getScore()->_playState = kPlayStopped;
break;
default:
break;
@@ -85,7 +85,7 @@ void DirectorEngine::processEvents() {
}
}
-bool Stage::processEvent(Common::Event &event) {
+bool Window::processEvent(Common::Event &event) {
if (MacWindow::processEvent(event))
return true;
@@ -107,7 +107,7 @@ bool Movie::processEvent(Common::Event &event) {
switch (event.type) {
case Common::EVENT_MOUSEMOVE:
- pos = _stage->getMousePos();
+ pos = _window->getMousePos();
_lastEventTime = g_director->getMacTicks();
_lastRollTime = _lastEventTime;
@@ -116,7 +116,7 @@ bool Movie::processEvent(Common::Event &event) {
if (_currentDraggedChannel) {
if (_currentDraggedChannel->_sprite->_moveable) {
- pos = _stage->getMousePos();
+ pos = _window->getMousePos();
_currentDraggedChannel->addDelta(pos - _draggingSpritePos);
_draggingSpritePos = pos;
@@ -131,7 +131,7 @@ bool Movie::processEvent(Common::Event &event) {
sc->_waitForClick = false;
_vm->setCursor(kCursorDefault);
} else {
- pos = _stage->getMousePos();
+ pos = _window->getMousePos();
// D3 doesn't have both mouse up and down.
// But we still want to know if the mouse is down for press effects.
@@ -139,7 +139,7 @@ bool Movie::processEvent(Common::Event &event) {
_currentClickOnSpriteId = sc->getActiveSpriteIDFromPos(pos);
if (spriteId > 0 && sc->_channels[spriteId]->_sprite->shouldHilite())
- g_director->getCurrentStage()->invertChannel(sc->_channels[spriteId]);
+ g_director->getCurrentWindow()->invertChannel(sc->_channels[spriteId]);
_lastEventTime = g_director->getMacTicks();
_lastClickTime = _lastEventTime;
@@ -149,7 +149,7 @@ bool Movie::processEvent(Common::Event &event) {
registerEvent(kEventMouseDown, spriteId);
if (sc->_channels[spriteId]->_sprite->_moveable) {
- _draggingSpritePos = _stage->getMousePos();
+ _draggingSpritePos = _window->getMousePos();
_currentDraggedChannel = sc->_channels[spriteId];
}
}
@@ -157,13 +157,13 @@ bool Movie::processEvent(Common::Event &event) {
return true;
case Common::EVENT_LBUTTONUP:
- pos = _stage->getMousePos();
+ pos = _window->getMousePos();
spriteId = sc->getMouseSpriteIDFromPos(pos);
_currentClickOnSpriteId = sc->getActiveSpriteIDFromPos(pos);
if (spriteId > 0 && sc->_channels[spriteId]->_sprite->shouldHilite())
- g_director->getCurrentStage()->invertChannel(sc->_channels[spriteId]);
+ g_director->getCurrentWindow()->invertChannel(sc->_channels[spriteId]);
debugC(3, kDebugEvents, "event: Button Up @(%d, %d), movie '%s', sprite id: %d", pos.x, pos.y, _macName.c_str(), spriteId);
diff --git a/engines/director/frame.h b/engines/director/frame.h
index 75d3ba7e38..ddc3e9862f 100644
--- a/engines/director/frame.h
+++ b/engines/director/frame.h
@@ -103,7 +103,7 @@ public:
byte _channelData[kChannelDataSize];
uint16 _actionId;
uint16 _transDuration;
- uint8 _transArea; // 1 - Whole Stage, 0 - Changing Area
+ uint8 _transArea; // 1 - Whole Window, 0 - Changing Area
uint8 _transChunkSize;
TransitionType _transType;
PaletteInfo _palette;
diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index f55f89c811..6a2bdaebf0 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -35,7 +35,7 @@
#include "director/sprite.h"
#include "director/cursor.h"
#include "director/channel.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/stxt.h"
#include "director/util.h"
#include "director/lingo/lingo.h"
@@ -1053,7 +1053,7 @@ void LB::b_closeDA(int nargs) {
void LB::b_closeResFile(int nargs) {
Datum d = g_lingo->pop();
- Common::String resFileName = g_director->getCurrentStage()->getCurrentPath() + d.asString();
+ Common::String resFileName = g_director->getCurrentWindow()->getCurrentPath() + d.asString();
g_director->_openResFiles.erase(resFileName);
}
@@ -1086,7 +1086,7 @@ void LB::b_openDA(int nargs) {
void LB::b_openResFile(int nargs) {
Datum d = g_lingo->pop();
- Common::String resPath = g_director->getCurrentStage()->getCurrentPath() + d.asString();
+ Common::String resPath = g_director->getCurrentWindow()->getCurrentPath() + d.asString();
if (g_director->getPlatform() == Common::kPlatformWindows) {
warning("STUB: BUILDBOT: b_openResFile(%s) on Windows", d.asString().c_str());
@@ -1862,7 +1862,7 @@ void LB::b_puppetTempo(int nargs) {
void LB::b_puppetTransition(int nargs) {
// puppetTransition whichTransition [, time] [, chunkSize] [, changeArea]
- Stage *stage = g_director->getCurrentStage();
+ Window *stage = g_director->getCurrentWindow();
uint16 duration = 250, area = 1, chunkSize = 1, type = 0;
switch (nargs) {
@@ -1918,7 +1918,7 @@ void LB::b_rollOver(int nargs) {
return;
}
- Common::Point pos = g_director->getCurrentStage()->getMousePos();
+ Common::Point pos = g_director->getCurrentWindow()->getMousePos();
if (score->checkSpriteIntersection(arg, pos))
res.u.i = 1; // TRUE
@@ -1939,7 +1939,7 @@ void LB::b_spriteBox(int nargs) {
if (!channel)
return;
- g_director->getCurrentStage()->addDirtyRect(channel->getBbox());
+ g_director->getCurrentWindow()->addDirtyRect(channel->getBbox());
channel->setBbox(l, t, r, b);
channel->_dirty = true;
}
@@ -2035,7 +2035,7 @@ void LB::b_updateStage(int nargs) {
}
Score *score = movie->getScore();
- if (movie->getStage()->render())
+ if (movie->getWindow()->render())
g_director->draw();
if (debugChannelSet(-1, kDebugFewFramesOnly)) {
@@ -2335,7 +2335,7 @@ void LB::b_window(int nargs) {
if ((*windowList)[i].type != OBJECT || (*windowList)[i].u.obj->getObjType() != kWindowObj)
continue;
- Stage *window = static_cast<Stage *>((*windowList)[i].u.obj);
+ Window *window = static_cast<Window *>((*windowList)[i].u.obj);
if (window->getName().equalsIgnoreCase(windowName)) {
g_lingo->push(window);
return;
@@ -2343,7 +2343,7 @@ void LB::b_window(int nargs) {
}
Graphics::MacWindowManager *wm = g_director->getMacWindowManager();
- Stage *window = new Stage(wm->getNextId(), false, false, false, wm, g_director);
+ Window *window = new Window(wm->getNextId(), false, false, false, wm, g_director);
window->setName(windowName);
window->setTitle(windowName);
window->resize(1, 1, true);
diff --git a/engines/director/lingo/lingo-code.cpp b/engines/director/lingo/lingo-code.cpp
index e74e3d73ae..98f9d30979 100644
--- a/engines/director/lingo/lingo-code.cpp
+++ b/engines/director/lingo/lingo-code.cpp
@@ -47,7 +47,7 @@
#include "director/movie.h"
#include "director/score.h"
#include "director/sprite.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/cursor.h"
#include "director/channel.h"
#include "director/util.h"
@@ -1406,18 +1406,18 @@ void LC::c_whencode() {
}
void LC::c_tell() {
- // swap out current stage
+ // swap out current window
Datum window = g_lingo->pop();
- g_lingo->push(g_director->getCurrentStage());
+ g_lingo->push(g_director->getCurrentWindow());
if (window.type != OBJECT || window.u.obj->getObjType() != kWindowObj) {
warning("LC::c_tell(): wrong argument type: %s", window.type2str());
return;
}
- if (static_cast<Stage *>(window.u.obj)->getCurrentMovie() == nullptr) {
+ if (static_cast<Window *>(window.u.obj)->getCurrentMovie() == nullptr) {
warning("LC::c_tell(): window has no movie");
return;
}
- g_director->setCurrentStage(static_cast<Stage *>(window.u.obj));
+ g_director->setCurrentWindow(static_cast<Window *>(window.u.obj));
}
@@ -1427,7 +1427,7 @@ void LC::c_telldone() {
warning("LC::c_telldone(): wrong return window type: %s", returnWindow.type2str());
return;
}
- g_director->setCurrentStage(static_cast<Stage *>(returnWindow.u.obj));
+ g_director->setCurrentWindow(static_cast<Window *>(returnWindow.u.obj));
}
diff --git a/engines/director/lingo/lingo-funcs.cpp b/engines/director/lingo/lingo-funcs.cpp
index 427103f18a..df986a7946 100644
--- a/engines/director/lingo/lingo-funcs.cpp
+++ b/engines/director/lingo/lingo-funcs.cpp
@@ -34,7 +34,7 @@
#include "director/movie.h"
#include "director/score.h"
#include "director/sound.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/util.h"
#include "director/lingo/lingo.h"
@@ -190,7 +190,7 @@ void Lingo::func_goto(Datum &frame, Datum &movie) {
if (movie.type != VOID) {
Common::String movieFilenameRaw = movie.asString();
- Stage *stage = _vm->getCurrentStage();
+ Window *stage = _vm->getCurrentWindow();
if (!stage->setNextMovie(movieFilenameRaw))
return;
@@ -257,7 +257,7 @@ void Lingo::func_gotoprevious() {
void Lingo::func_play(Datum &frame, Datum &movie) {
MovieReference ref;
- Stage *stage = _vm->getCurrentStage();
+ Window *stage = _vm->getCurrentWindow();
// play #done
diff --git a/engines/director/lingo/lingo-object.cpp b/engines/director/lingo/lingo-object.cpp
index d3b89ac141..0af98b5212 100644
--- a/engines/director/lingo/lingo-object.cpp
+++ b/engines/director/lingo/lingo-object.cpp
@@ -23,7 +23,7 @@
#include "common/endian.h"
#include "director/director.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/util.h"
#include "director/lingo/lingo.h"
#include "director/lingo/lingo-code.h"
@@ -89,7 +89,7 @@ void Lingo::initMethods() {
sym.u.bltin = mtd->func;
_methods[mtd->name] = sym;
}
- Stage::initMethods(windowMethods);
+ Window::initMethods(windowMethods);
}
static struct XLibProto {
@@ -331,36 +331,36 @@ void LM::m_respondsTo(int nargs) {
// Window
-Common::String Stage::asString() {
+Common::String Window::asString() {
return "window \"" + getName() + "\"";
}
-bool Stage::hasProp(const Common::String &propName) {
+bool Window::hasProp(const Common::String &propName) {
Common::String fieldName = Common::String::format("%d%s", kTheWindow, propName.c_str());
return g_lingo->_theEntityFields.contains(fieldName);
}
-Datum Stage::getProp(const Common::String &propName) {
+Datum Window::getProp(const Common::String &propName) {
Common::String fieldName = Common::String::format("%d%s", kTheWindow, propName.c_str());
if (g_lingo->_theEntityFields.contains(fieldName)) {
return getField(g_lingo->_theEntityFields[fieldName]->field);
}
- warning("Stage::getProp: unknown property '%s'", propName.c_str());
+ warning("Window::getProp: unknown property '%s'", propName.c_str());
return Datum();
}
-bool Stage::setProp(const Common::String &propName, const Datum &value) {
+bool Window::setProp(const Common::String &propName, const Datum &value) {
Common::String fieldName = Common::String::format("%d%s", kTheWindow, propName.c_str());
if (g_lingo->_theEntityFields.contains(fieldName)) {
return setField(g_lingo->_theEntityFields[fieldName]->field, value);
}
- warning("Stage::setProp: unknown property '%s'", propName.c_str());
+ warning("Window::setProp: unknown property '%s'", propName.c_str());
return false;
}
-Datum Stage::getField(int field) {
+Datum Window::getField(int field) {
switch (field) {
case kTheTitle:
return getTitle();
@@ -369,12 +369,12 @@ Datum Stage::getField(int field) {
case kTheVisible:
return isVisible();
default:
- warning("Stage::getField: unhandled field '%s'", g_lingo->field2str(field));
+ warning("Window::getField: unhandled field '%s'", g_lingo->field2str(field));
return Datum();
}
}
-bool Stage::setField(int field, const Datum &value) {
+bool Window::setField(int field, const Datum &value) {
switch (field) {
case kTheTitle:
setTitle(value.asString());
@@ -386,18 +386,18 @@ bool Stage::setField(int field, const Datum &value) {
setVisible(value.asInt());
return true;
default:
- warning("Stage::setField: unhandled field '%s'", g_lingo->field2str(field));
+ warning("Window::setField: unhandled field '%s'", g_lingo->field2str(field));
return false;
}
}
void LM::m_close(int nargs) {
- Stage *me = static_cast<Stage *>(g_lingo->_currentMe.u.obj);
+ Window *me = static_cast<Window *>(g_lingo->_currentMe.u.obj);
me->setVisible(false);
}
void LM::m_forget(int nargs) {
- Stage *me = static_cast<Stage *>(g_lingo->_currentMe.u.obj);
+ Window *me = static_cast<Window *>(g_lingo->_currentMe.u.obj);
DatumArray *windowList = g_lingo->_windowList.u.farr;
uint i;
@@ -405,7 +405,7 @@ void LM::m_forget(int nargs) {
if ((*windowList)[i].type != OBJECT || (*windowList)[i].u.obj->getObjType() != kWindowObj)
continue;
- Stage *window = static_cast<Stage *>((*windowList)[i].u.obj);
+ Window *window = static_cast<Window *>((*windowList)[i].u.obj);
if (window == me)
break;
}
@@ -418,14 +418,14 @@ void LM::m_forget(int nargs) {
if (it->_value.type != OBJECT || it->_value.u.obj->getObjType() != kWindowObj)
continue;
- Stage *window = static_cast<Stage *>((*windowList)[i].u.obj);
+ Window *window = static_cast<Window *>((*windowList)[i].u.obj);
if (window == me)
g_lingo->_globalvars[it->_key] = 0;
}
}
void LM::m_open(int nargs) {
- Stage *me = static_cast<Stage *>(g_lingo->_currentMe.u.obj);
+ Window *me = static_cast<Window *>(g_lingo->_currentMe.u.obj);
me->setVisible(true);
}
diff --git a/engines/director/lingo/lingo-the.cpp b/engines/director/lingo/lingo-the.cpp
index 3f9a5eadc7..9bebc592ab 100644
--- a/engines/director/lingo/lingo-the.cpp
+++ b/engines/director/lingo/lingo-the.cpp
@@ -31,7 +31,7 @@
#include "director/sound.h"
#include "director/sprite.h"
#include "director/score.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/lingo/lingo.h"
#include "director/lingo/lingo-builtins.h"
#include "director/lingo/lingo-code.h"
@@ -566,7 +566,7 @@ Datum Lingo::getTheEntity(int entity, Datum &id, int field) {
break;
case kTheMouseCast:
{
- Common::Point pos = g_director->getCurrentStage()->getMousePos();
+ Common::Point pos = g_director->getCurrentWindow()->getMousePos();
uint16 spriteId = score->getSpriteIDFromPos(pos);
d.type = INT;
d.u.i = score->getSpriteById(spriteId)->_castId;
@@ -590,7 +590,7 @@ Datum Lingo::getTheEntity(int entity, Datum &id, int field) {
break;
case kTheMouseH:
d.type = INT;
- d.u.i = g_director->getCurrentStage()->getMousePos().x;
+ d.u.i = g_director->getCurrentWindow()->getMousePos().x;
break;
case kTheMouseItem:
getTheEntitySTUB(kTheMouseItem);
@@ -611,7 +611,7 @@ Datum Lingo::getTheEntity(int entity, Datum &id, int field) {
break;
case kTheMouseV:
d.type = INT;
- d.u.i = g_director->getCurrentStage()->getMousePos().y;
+ d.u.i = g_director->getCurrentWindow()->getMousePos().y;
break;
case kTheMouseWord:
getTheEntitySTUB(kTheMouseWord);
@@ -743,7 +743,7 @@ Datum Lingo::getTheEntity(int entity, Datum &id, int field) {
d = getTheSprite(id, field);
break;
case kTheStage:
- d = _vm->getMainStage();
+ d = _vm->getStage();
break;
case kTheStageBottom:
d.type = INT;
@@ -998,7 +998,7 @@ void Lingo::setTheEntity(int entity, Datum &id, int field, Datum &d) {
setTheEntitySTUB(kTheStage);
break;
case kTheStageColor:
- g_director->getCurrentStage()->setStageColor(d.asInt());
+ g_director->getCurrentWindow()->setStageColor(d.asInt());
// Queue an immediate update of the stage
if (!score->getNextFrame())
@@ -1258,7 +1258,7 @@ void Lingo::setTheSprite(Datum &id1, int field, Datum &d) {
break;
case kTheCastNum:
if (d.asInt() != sprite->_castId) {
- g_director->getCurrentStage()->addDirtyRect(channel->getBbox());
+ g_director->getCurrentWindow()->addDirtyRect(channel->getBbox());
channel->setCast(d.asInt());
channel->_dirty = true;
}
@@ -1296,7 +1296,7 @@ void Lingo::setTheSprite(Datum &id1, int field, Datum &d) {
break;
case kTheHeight:
if (d.asInt() != channel->_height) {
- g_director->getCurrentStage()->addDirtyRect(channel->getBbox());
+ g_director->getCurrentWindow()->addDirtyRect(channel->getBbox());
channel->setHeight(d.asInt());
channel->_dirty = true;
}
@@ -1321,14 +1321,14 @@ void Lingo::setTheSprite(Datum &id1, int field, Datum &d) {
break;
case kTheLocH:
if (d.asInt() != channel->_currentPoint.x) {
- g_director->getCurrentMovie()->getStage()->addDirtyRect(channel->getBbox());
+ g_director->getCurrentMovie()->getWindow()->addDirtyRect(channel->getBbox());
channel->_currentPoint.x = d.asInt();
channel->_dirty = true;
}
break;
case kTheLocV:
if (d.asInt() != channel->_currentPoint.y) {
- g_director->getCurrentMovie()->getStage()->addDirtyRect(channel->getBbox());
+ g_director->getCurrentMovie()->getWindow()->addDirtyRect(channel->getBbox());
channel->_currentPoint.y = d.asInt();
channel->_dirty = true;
}
@@ -1367,7 +1367,7 @@ void Lingo::setTheSprite(Datum &id1, int field, Datum &d) {
channel->_dirty = true;
if (sprite->_stretch) {
- g_director->getCurrentStage()->addDirtyRect(channel->getBbox());
+ g_director->getCurrentWindow()->addDirtyRect(channel->getBbox());
channel->_width = sprite->_width;
channel->_height = sprite->_height;
@@ -1396,7 +1396,7 @@ void Lingo::setTheSprite(Datum &id1, int field, Datum &d) {
break;
case kTheWidth:
if (d.asInt() != channel->_width) {
- g_director->getCurrentStage()->addDirtyRect(channel->getBbox());
+ g_director->getCurrentWindow()->addDirtyRect(channel->getBbox());
channel->setWidth(d.asInt());
channel->_dirty = true;
}
@@ -1406,7 +1406,7 @@ void Lingo::setTheSprite(Datum &id1, int field, Datum &d) {
}
if (channel->_dirty && g_director->getCurrentMovie())
- g_director->getCurrentMovie()->getStage()->addDirtyRect(channel->getBbox());
+ g_director->getCurrentMovie()->getWindow()->addDirtyRect(channel->getBbox());
}
Datum Lingo::getTheCast(Datum &id1, int field) {
diff --git a/engines/director/lingo/lingo.cpp b/engines/director/lingo/lingo.cpp
index 9191801676..d58996950d 100644
--- a/engines/director/lingo/lingo.cpp
+++ b/engines/director/lingo/lingo.cpp
@@ -32,7 +32,7 @@
#include "director/movie.h"
#include "director/score.h"
#include "director/sprite.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/util.h"
#include "director/lingo/lingo.h"
@@ -795,7 +795,7 @@ void Datum::reset() {
break;
case OBJECT:
if (u.obj->getObjType() == kWindowObj) {
- Stage *window = static_cast<Stage *>(u.obj);
+ Window *window = static_cast<Window *>(u.obj);
g_director->_wm->removeWindow(window);
g_director->_wm->removeMarked();
} else {
diff --git a/engines/director/module.mk b/engines/director/module.mk
index bb1e6d2619..5bba39a0b0 100644
--- a/engines/director/module.mk
+++ b/engines/director/module.mk
@@ -14,7 +14,6 @@ MODULE_OBJS = \
images.o \
movie.o \
resource.o \
- stage.o \
score.o \
sound.o \
sprite.o \
@@ -23,6 +22,7 @@ MODULE_OBJS = \
transitions.o \
util.o \
video.o \
+ window.o \
lingo/lingo.o \
lingo/lingo-builtins.o \
lingo/lingo-bytecode.o \
diff --git a/engines/director/movie.cpp b/engines/director/movie.cpp
index 5d43f4bfd3..945f0b262a 100644
--- a/engines/director/movie.cpp
+++ b/engines/director/movie.cpp
@@ -30,15 +30,15 @@
#include "director/cast.h"
#include "director/movie.h"
#include "director/score.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/lingo/lingo.h"
#include "director/lingo/lingo-object.h"
namespace Director {
-Movie::Movie(Stage *stage) {
- _stage = stage;
- _vm = _stage->getVM();
+Movie::Movie(Window *window) {
+ _window = window;
+ _vm = _window->getVM();
_lingo = _vm->getLingo();
_flags = 0;
@@ -110,11 +110,11 @@ bool Movie::loadArchive() {
// If the stage dimensions are different, delete it and start again.
// Otherwise, do not clear it so there can be a nice transition.
- if (_stage->getSurface()->w != _movieRect.width() || _stage->getSurface()->h != _movieRect.height()) {
- _stage->resize(_movieRect.width(), _movieRect.height(), true);
+ if (_window->getSurface()->w != _movieRect.width() || _window->getSurface()->h != _movieRect.height()) {
+ _window->resize(_movieRect.width(), _movieRect.height(), true);
}
// TODO: Add more options for desktop dimensions
- if (_stage == _vm->getMainStage()) {
+ if (_window == _vm->getStage()) {
uint16 windowWidth = debugChannelSet(-1, kDebugDesktop) ? 1024 : _movieRect.width();
uint16 windowHeight = debugChannelSet(-1, kDebugDesktop) ? 768 : _movieRect.height();
if (_vm->_surface->w != windowWidth || _vm->_surface->h != windowHeight) {
@@ -124,7 +124,7 @@ bool Movie::loadArchive() {
initGraphics(windowWidth, windowHeight);
}
- _stage->setStageColor(_stageColor);
+ _window->setStageColor(_stageColor);
// Score
if (!_movieArchive->hasResource(MKTAG('V', 'W', 'S', 'C'), -1)) {
diff --git a/engines/director/movie.h b/engines/director/movie.h
index 6a8d75000a..cca70445f4 100644
--- a/engines/director/movie.h
+++ b/engines/director/movie.h
@@ -40,7 +40,7 @@ class Lingo;
struct LingoArchive;
struct LingoEvent;
class ScriptContext;
-class Stage;
+class Window;
struct Symbol;
struct InfoEntry {
@@ -83,7 +83,7 @@ struct InfoEntries {
class Movie {
public:
- Movie(Stage *stage);
+ Movie(Window *window);
~Movie();
static Common::Rect readRect(Common::ReadStreamEndian &stream);
@@ -93,7 +93,7 @@ public:
void setArchive(Archive *archive);
Archive *getArchive() const { return _movieArchive; };
Common::String getMacName() const { return _macName; }
- Stage *getStage() const { return _stage; }
+ Window *getWindow() const { return _window; }
DirectorEngine *getVM() const { return _vm; }
Cast *getCast() const { return _cast; }
Cast *getSharedCast() const { return _sharedCast; }
@@ -152,7 +152,7 @@ public:
byte _keyFlags;
private:
- Stage *_stage;
+ Window *_window;
DirectorEngine *_vm;
Lingo *_lingo;
Cast *_cast;
diff --git a/engines/director/resource.cpp b/engines/director/resource.cpp
index a723a29e90..25df8fd339 100644
--- a/engines/director/resource.cpp
+++ b/engines/director/resource.cpp
@@ -31,7 +31,7 @@
#include "director/cast.h"
#include "director/castmember.h"
#include "director/movie.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/lingo/lingo.h"
#include "director/util.h"
@@ -51,7 +51,7 @@ Archive *DirectorEngine::createArchive() {
}
}
-Common::Error Stage::loadInitialMovie() {
+Common::Error Window::loadInitialMovie() {
debug(0, "\n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@");
debug(0, "@@@@ Loading initial movie");
debug(0, "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n");
@@ -77,7 +77,7 @@ Common::Error Stage::loadInitialMovie() {
return Common::kNoError;
}
-void Stage::probeProjector(const Common::String &movie) {
+void Window::probeProjector(const Common::String &movie) {
if (g_director->getPlatform() == Common::kPlatformWindows)
return;
@@ -144,7 +144,7 @@ void Stage::probeProjector(const Common::String &movie) {
delete archive;
}
-Archive *Stage::openMainArchive(const Common::String movie) {
+Archive *Window::openMainArchive(const Common::String movie) {
debug(1, "openMainArchive(\"%s\")", movie.c_str());
_mainArchive = g_director->createArchive();
@@ -160,7 +160,7 @@ Archive *Stage::openMainArchive(const Common::String movie) {
return _mainArchive;
}
-void Stage::loadEXE(const Common::String movie) {
+void Window::loadEXE(const Common::String movie) {
Common::SeekableReadStream *iniStream = SearchMan.createReadStreamForMember("LINGO.INI");
if (iniStream) {
char *script = (char *)calloc(iniStream->size() + 1, 1);
@@ -236,7 +236,7 @@ void Stage::loadEXE(const Common::String movie) {
_mainArchive->setPathName(movie);
}
-void Stage::loadEXEv3(Common::SeekableReadStream *stream) {
+void Window::loadEXEv3(Common::SeekableReadStream *stream) {
uint16 entryCount = stream->readUint16LE();
if (entryCount != 1)
error("Unhandled multiple entry v3 EXE");
@@ -266,7 +266,7 @@ void Stage::loadEXEv3(Common::SeekableReadStream *stream) {
if (!out.open(fname.c_str(), true)) {
- warning("Stage::loadEXEv3(): Can not open dump file %s", fname.c_str());
+ warning("Window::loadEXEv3(): Can not open dump file %s", fname.c_str());
} else {
out.write(buf, mmmSize);
@@ -289,7 +289,7 @@ void Stage::loadEXEv3(Common::SeekableReadStream *stream) {
openMainArchive(mmmFileName);
}
-void Stage::loadEXEv4(Common::SeekableReadStream *stream) {
+void Window::loadEXEv4(Common::SeekableReadStream *stream) {
if (stream->readUint32BE() != MKTAG('P', 'J', '9', '3'))
error("Invalid projector tag found in v4 EXE");
@@ -307,7 +307,7 @@ void Stage::loadEXEv4(Common::SeekableReadStream *stream) {
loadEXERIFX(stream, rifxOffset);
}
-void Stage::loadEXEv5(Common::SeekableReadStream *stream) {
+void Window::loadEXEv5(Common::SeekableReadStream *stream) {
uint32 ver = stream->readUint32LE();
if (ver != MKTAG('P', 'J', '9', '5'))
@@ -329,7 +329,7 @@ void Stage::loadEXEv5(Common::SeekableReadStream *stream) {
loadEXERIFX(stream, rifxOffset);
}
-void Stage::loadEXEv7(Common::SeekableReadStream *stream) {
+void Window::loadEXEv7(Common::SeekableReadStream *stream) {
if (stream->readUint32LE() != MKTAG('P', 'J', '0', '0'))
error("Invalid projector tag found in v7 EXE");
@@ -343,14 +343,14 @@ void Stage::loadEXEv7(Common::SeekableReadStream *stream) {
loadEXERIFX(stream, rifxOffset);
}
-void Stage::loadEXERIFX(Common::SeekableReadStream *stream, uint32 offset) {
+void Window::loadEXERIFX(Common::SeekableReadStream *stream, uint32 offset) {
_mainArchive = new RIFXArchive();
if (!_mainArchive->openStream(stream, offset))
error("Failed to load RIFX from EXE");
}
-void Stage::loadMac(const Common::String movie) {
+void Window::loadMac(const Common::String movie) {
if (g_director->getVersion() < 4) {
// The data is part of the resource fork of the executable
openMainArchive(movie);
diff --git a/engines/director/score.cpp b/engines/director/score.cpp
index 0d14f7e55a..9a1c401d86 100644
--- a/engines/director/score.cpp
+++ b/engines/director/score.cpp
@@ -41,7 +41,7 @@
#include "director/cursor.h"
#include "director/channel.h"
#include "director/sprite.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/util.h"
#include "director/lingo/lingo.h"
@@ -49,7 +49,7 @@ namespace Director {
Score::Score(Movie *movie) {
_movie = movie;
- _stage = movie->getStage();
+ _window = movie->getWindow();
_vm = _movie->getVM();
_lingo = _vm->getLingo();
@@ -391,9 +391,9 @@ void Score::update() {
// TODO: Director 6 step: send prepareFrame event to all sprites and the script channel in upcoming frame
}
- // Stage is drawn between the prepareFrame and enterFrame events (Lingo in a Nutshell, p.100)
+ // Window is drawn between the prepareFrame and enterFrame events (Lingo in a Nutshell, p.100)
renderFrame(_currentFrame);
- _stage->_newMovieStarted = false;
+ _window->_newMovieStarted = false;
// Enter and exit from previous frame
if (!_vm->_playbackPaused) {
@@ -457,7 +457,7 @@ void Score::renderFrame(uint16 frameId, RenderMode mode) {
g_director->setPalette(resolvePaletteId(currentPalette));
}
- _stage->render();
+ _window->render();
if (_frames[frameId]->_sound1 || _frames[frameId]->_sound2)
playSoundChannel(frameId);
@@ -465,16 +465,16 @@ void Score::renderFrame(uint16 frameId, RenderMode mode) {
bool Score::renderTransition(uint16 frameId) {
Frame *currentFrame = _frames[frameId];
- TransParams *tp = _stage->_puppetTransition;
+ TransParams *tp = _window->_puppetTransition;
if (tp) {
- _stage->playTransition(tp->duration, tp->area, tp->chunkSize, tp->type, frameId);
+ _window->playTransition(tp->duration, tp->area, tp->chunkSize, tp->type, frameId);
- delete _stage->_puppetTransition;;
- _stage->_puppetTransition = nullptr;
+ delete _window->_puppetTransition;;
+ _window->_puppetTransition = nullptr;
return true;
} else if (currentFrame->_transType) {
- _stage->playTransition(currentFrame->_transDuration, currentFrame->_transArea, currentFrame->_transChunkSize, currentFrame->_transType, frameId);
+ _window->playTransition(currentFrame->_transDuration, currentFrame->_transArea, currentFrame->_transChunkSize, currentFrame->_transType, frameId);
return true;
} else {
return false;
@@ -482,7 +482,7 @@ bool Score::renderTransition(uint16 frameId) {
}
void Score::renderSprites(uint16 frameId, RenderMode mode) {
- if (_stage->_newMovieStarted)
+ if (_window->_newMovieStarted)
mode = kRenderForceUpdate;
for (uint16 i = 0; i < _channels.size(); i++) {
@@ -499,10 +499,10 @@ void Score::renderSprites(uint16 frameId, RenderMode mode) {
if (channel->isDirty(nextSprite) || widgetRedrawn || mode == kRenderForceUpdate) {
if (!currentSprite->_trails)
- _stage->addDirtyRect(channel->getBbox());
+ _window->addDirtyRect(channel->getBbox());
channel->setClean(nextSprite, i);
- _stage->addDirtyRect(channel->getBbox());
+ _window->addDirtyRect(channel->getBbox());
debugC(2, kDebugImages, "Score::renderSprites(): CH: %-3d castId: %03d(%s) [ink: %x, puppet: %d, moveable: %d, visible: %d] [bbox: %d,%d,%d,%d] [type: %d fg: %d bg: %d] [script: %d]", i, currentSprite->_castId, numToCastNum(currentSprite->_castId), currentSprite->_ink, currentSprite->_puppet, currentSprite->_moveable, channel->_visible, PRINT_RECT(channel->getBbox()), currentSprite->_spriteType, currentSprite->_foreColor, currentSprite->_backColor, currentSprite->_scriptId);
} else {
channel->setClean(nextSprite, i, true);
@@ -533,7 +533,7 @@ void Score::renderCursor(uint spriteId) {
}
void Score::screenShot() {
- Graphics::Surface rawSurface = _stage->getSurface()->rawSurface();
+ Graphics::Surface rawSurface = _window->getSurface()->rawSurface();
const Graphics::PixelFormat requiredFormat_4byte(4, 8, 8, 8, 8, 0, 8, 16, 24);
Graphics::Surface *newSurface = rawSurface.convertTo(requiredFormat_4byte, _vm->getPalette());
Common::String currentPath = _vm->getCurrentPath().c_str();
diff --git a/engines/director/score.h b/engines/director/score.h
index a1155ec64c..b1c6239c74 100644
--- a/engines/director/score.h
+++ b/engines/director/score.h
@@ -40,7 +40,7 @@ namespace Common {
namespace Director {
-class Stage;
+class Window;
class Archive;
class DirectorEngine;
class DirectorSound;
@@ -148,7 +148,7 @@ private:
DirectorEngine *_vm;
Lingo *_lingo;
Movie *_movie;
- Stage *_stage;
+ Window *_window;
uint16 _currentFrame;
uint16 _nextFrame;
diff --git a/engines/director/tests.cpp b/engines/director/tests.cpp
index 5967e16214..5e54cbe865 100644
--- a/engines/director/tests.cpp
+++ b/engines/director/tests.cpp
@@ -36,7 +36,7 @@
#include "director/director.h"
#include "director/archive.h"
#include "director/movie.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/lingo/lingo.h"
namespace Director {
@@ -44,7 +44,7 @@ namespace Director {
//////////////////////
// Graphics tests
//////////////////////
-void Stage::testFontScaling() {
+void Window::testFontScaling() {
int x = 10;
int y = 10;
int w = g_system->getWidth();
@@ -111,7 +111,7 @@ void Stage::testFontScaling() {
}
}
-void Stage::testFonts() {
+void Window::testFonts() {
Common::String fontName("Helvetica");
Common::MacResManager *fontFile = new Common::MacResManager();
@@ -137,7 +137,7 @@ void Stage::testFonts() {
//////////////////////
// Movie iteration
//////////////////////
-Common::HashMap<Common::String, Movie *> *Stage::scanMovies(const Common::String &folder) {
+Common::HashMap<Common::String, Movie *> *Window::scanMovies(const Common::String &folder) {
Common::FSNode directory(folder);
Common::FSList movies;
const char *sharedMMMname;
@@ -178,7 +178,7 @@ Common::HashMap<Common::String, Movie *> *Stage::scanMovies(const Common::String
return nameMap;
}
-void Stage::enqueueAllMovies() {
+void Window::enqueueAllMovies() {
Common::FSNode dir(ConfMan.get("path"));
Common::FSList files;
if (!dir.getChildren(files, Common::FSNode::kListFilesOnly)) {
@@ -194,7 +194,7 @@ void Stage::enqueueAllMovies() {
debug(1, "=========> Enqueued %d movies", _movieQueue.size());
}
-MovieReference Stage::getNextMovieFromQueue() {
+MovieReference Window::getNextMovieFromQueue() {
MovieReference res;
if (_movieQueue.empty())
@@ -272,7 +272,7 @@ const byte testMovie[] = {
0x00, 0x00
};
-void Stage::runTests() {
+void Window::runTests() {
Common::MemoryReadStream *movie = new Common::MemoryReadStream(testMovie, ARRAYSIZE(testMovie));
Common::SeekableReadStream *stream = Common::wrapCompressedReadStream(movie);
diff --git a/engines/director/transitions.cpp b/engines/director/transitions.cpp
index a8135d6b88..52aae17314 100644
--- a/engines/director/transitions.cpp
+++ b/engines/director/transitions.cpp
@@ -28,7 +28,7 @@
#include "director/director.h"
#include "director/movie.h"
#include "director/score.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/util.h"
#include "director/lingo/lingo.h"
@@ -131,12 +131,12 @@ struct {
TRANS(kTransDissolveBits, kTransAlgoDissolve, kTransDirNone)
};
-void Stage::exitTransition(Graphics::ManagedSurface *nextFrame, Common::Rect clipRect) {
+void Window::exitTransition(Graphics::ManagedSurface *nextFrame, Common::Rect clipRect) {
_composeSurface->blitFrom(*nextFrame, clipRect, Common::Point(clipRect.left, clipRect.top));
g_system->copyRectToScreen(_composeSurface->getBasePtr(clipRect.left, clipRect.top), _composeSurface->pitch, clipRect.left, clipRect.top, clipRect.width(), clipRect.height());
}
-void Stage::playTransition(uint16 transDuration, uint8 transArea, uint8 transChunkSize, TransitionType transType, uint frame) {
+void Window::playTransition(uint16 transDuration, uint8 transArea, uint8 transChunkSize, TransitionType transType, uint frame) {
// Play a transition and return the number of subframes rendered
TransParams t;
@@ -551,7 +551,7 @@ static uint32 randomSeed[33] = {
0x14000000UL, 0x32800000UL, 0x48000000UL, 0xa3000000UL
};
-void Stage::dissolveTrans(TransParams &t, Common::Rect &clipRect, Graphics::ManagedSurface *nextFrame) {
+void Window::dissolveTrans(TransParams &t, Common::Rect &clipRect, Graphics::ManagedSurface *nextFrame) {
uint w = clipRect.width();
uint h = clipRect.height();
uint realw = w, realh = h;
@@ -783,7 +783,7 @@ static byte dissolvePatterns[][8] = {
{ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }
};
-void Stage::dissolvePatternsTrans(TransParams &t, Common::Rect &clipRect, Graphics::ManagedSurface *nextFrame) {
+void Window::dissolvePatternsTrans(TransParams &t, Common::Rect &clipRect, Graphics::ManagedSurface *nextFrame) {
t.steps = 64;
t.stepDuration = t.duration / t.steps;
@@ -820,7 +820,7 @@ void Stage::dissolvePatternsTrans(TransParams &t, Common::Rect &clipRect, Graphi
}
}
-void Stage::transMultiPass(TransParams &t, Common::Rect &clipRect, Graphics::ManagedSurface *nextFrame) {
+void Window::transMultiPass(TransParams &t, Common::Rect &clipRect, Graphics::ManagedSurface *nextFrame) {
Common::Rect rto;
uint w = clipRect.width();
uint h = clipRect.height();
@@ -996,7 +996,7 @@ void Stage::transMultiPass(TransParams &t, Common::Rect &clipRect, Graphics::Man
}
}
-void Stage::transZoom(TransParams &t, Common::Rect &clipRect, Graphics::ManagedSurface *nextFrame) {
+void Window::transZoom(TransParams &t, Common::Rect &clipRect, Graphics::ManagedSurface *nextFrame) {
Common::Rect r = clipRect;
uint w = clipRect.width();
uint h = clipRect.height();
@@ -1045,7 +1045,7 @@ void Stage::transZoom(TransParams &t, Common::Rect &clipRect, Graphics::ManagedS
}
}
-void Stage::initTransParams(TransParams &t, Common::Rect &clipRect) {
+void Window::initTransParams(TransParams &t, Common::Rect &clipRect) {
int w = clipRect.width();
int h = clipRect.height();
int m = MIN(w, h);
diff --git a/engines/director/stage.cpp b/engines/director/window.cpp
similarity index 90%
rename from engines/director/stage.cpp
rename to engines/director/window.cpp
index 31348167f7..473e3801e6 100644
--- a/engines/director/stage.cpp
+++ b/engines/director/window.cpp
@@ -31,7 +31,7 @@
#include "director/cast.h"
#include "director/lingo/lingo.h"
#include "director/movie.h"
-#include "director/stage.h"
+#include "director/window.h"
#include "director/score.h"
#include "director/castmember.h"
#include "director/cursor.h"
@@ -41,8 +41,8 @@
namespace Director {
-Stage::Stage(int id, bool scrollable, bool resizable, bool editable, Graphics::MacWindowManager *wm, DirectorEngine *vm)
- : MacWindow(id, scrollable, resizable, editable, wm), Object<Stage>("Stage") {
+Window::Window(int id, bool scrollable, bool resizable, bool editable, Graphics::MacWindowManager *wm, DirectorEngine *vm)
+ : MacWindow(id, scrollable, resizable, editable, wm), Object<Window>("Window") {
_vm = vm;
_stageColor = 0;
_puppetTransition = nullptr;
@@ -57,7 +57,7 @@ Stage::Stage(int id, bool scrollable, bool resizable, bool editable, Graphics::M
_startFrame = _vm->getStartMovie().startFrame;
}
-Stage::~Stage() {
+Window::~Window() {
delete _currentMovie;
if (_macBinary) {
delete _macBinary;
@@ -65,7 +65,7 @@ Stage::~Stage() {
}
}
-void Stage::invertChannel(Channel *channel) {
+void Window::invertChannel(Channel *channel) {
const Graphics::Surface *mask = channel->getMask(true);
Common::Rect destRect = channel->getBbox();
@@ -79,7 +79,7 @@ void Stage::invertChannel(Channel *channel) {
}
}
-bool Stage::render(bool forceRedraw, Graphics::ManagedSurface *blitTo) {
+bool Window::render(bool forceRedraw, Graphics::ManagedSurface *blitTo) {
if (!_currentMovie)
return false;
@@ -113,7 +113,7 @@ bool Stage::render(bool forceRedraw, Graphics::ManagedSurface *blitTo) {
return true;
}
-void Stage::setStageColor(uint stageColor) {
+void Window::setStageColor(uint stageColor) {
if (stageColor != _stageColor) {
_stageColor = stageColor;
reset();
@@ -121,12 +121,12 @@ void Stage::setStageColor(uint stageColor) {
}
}
-void Stage::reset() {
+void Window::reset() {
_composeSurface->clear(_stageColor);
_contentIsDirty = true;
}
-void Stage::addDirtyRect(const Common::Rect &r) {
+void Window::addDirtyRect(const Common::Rect &r) {
if (!r.isValidRect())
return;
@@ -137,12 +137,12 @@ void Stage::addDirtyRect(const Common::Rect &r) {
_dirtyRects.push_back(bounds);
}
-void Stage::markAllDirty() {
+void Window::markAllDirty() {
_dirtyRects.clear();
_dirtyRects.push_back(Common::Rect(_composeSurface->w, _composeSurface->h));
}
-void Stage::mergeDirtyRects() {
+void Window::mergeDirtyRects() {
Common::List<Common::Rect>::iterator rOuter, rInner;
// Process the dirty rect list to find any rects to merge
@@ -164,7 +164,7 @@ void Stage::mergeDirtyRects() {
}
}
-void Stage::inkBlitFrom(Channel *channel, Common::Rect destRect, Graphics::ManagedSurface *blitTo) {
+void Window::inkBlitFrom(Channel *channel, Common::Rect destRect, Graphics::ManagedSurface *blitTo) {
Common::Rect srcRect = channel->getBbox();
destRect.clip(srcRect);
@@ -182,11 +182,11 @@ void Stage::inkBlitFrom(Channel *channel, Common::Rect destRect, Graphics::Manag
inkBlitSurface(&pd, srcRect, channel->getMask());
}
} else {
- warning("Stage::inkBlitFrom: No source surface");
+ warning("Window::inkBlitFrom: No source surface");
}
}
-void Stage::inkBlitShape(DirectorPlotData *pd, Common::Rect &srcRect) {
+void Window::inkBlitShape(DirectorPlotData *pd, Common::Rect &srcRect) {
if (!pd->ms)
return;
@@ -246,11 +246,11 @@ void Stage::inkBlitShape(DirectorPlotData *pd, Common::Rect &srcRect) {
Graphics::drawLine(strokeRect.left, strokeRect.top, strokeRect.right, strokeRect.bottom, pd->ms->foreColor, inkDrawPixel, pd);
break;
default:
- warning("Stage::inkBlitFrom: Expected shape type but got type %d", pd->ms->spriteType);
+ warning("Window::inkBlitFrom: Expected shape type but got type %d", pd->ms->spriteType);
}
}
-void Stage::inkBlitSurface(DirectorPlotData *pd, Common::Rect &srcRect, const Graphics::Surface *mask) {
+void Window::inkBlitSurface(DirectorPlotData *pd, Common::Rect &srcRect, const Graphics::Surface *mask) {
if (!pd->srf)
return;
@@ -272,7 +272,7 @@ void Stage::inkBlitSurface(DirectorPlotData *pd, Common::Rect &srcRect, const Gr
}
}
-void Stage::inkBlitStretchSurface(DirectorPlotData *pd, Common::Rect &srcRect, const Graphics::Surface *mask) {
+void Window::inkBlitStretchSurface(DirectorPlotData *pd, Common::Rect &srcRect, const Graphics::Surface *mask) {
if (!pd->srf)
return;
@@ -298,7 +298,7 @@ void Stage::inkBlitStretchSurface(DirectorPlotData *pd, Common::Rect &srcRect, c
}
}
-int Stage::preprocessColor(DirectorPlotData *p, int src) {
+int Window::preprocessColor(DirectorPlotData *p, int src) {
// HACK: Right now this method is just used for adjusting the colourization on text
// sprites, as it would be costly to colourize the chunks on the fly each
// time a section needs drawing. It's ugly but mostly works.
@@ -333,11 +333,11 @@ int Stage::preprocessColor(DirectorPlotData *p, int src) {
return src;
}
-Common::Point Stage::getMousePos() {
+Common::Point Window::getMousePos() {
return g_system->getEventManager()->getMousePos() - Common::Point(_innerDims.left, _innerDims.top);
}
-void Stage::setVisible(bool visible, bool silent) {
+void Window::setVisible(bool visible, bool silent) {
// setting visible triggers movie load
if (!_currentMovie && !silent) {
Common::String movieName = getName();
@@ -347,7 +347,7 @@ void Stage::setVisible(bool visible, bool silent) {
BaseMacWindow::setVisible(visible);
}
-bool Stage::setNextMovie(Common::String &movieFilenameRaw) {
+bool Window::setNextMovie(Common::String &movieFilenameRaw) {
Common::String movieFilename = pathMakeRelative(movieFilenameRaw);
Common::String cleanedFilename;
@@ -378,7 +378,7 @@ bool Stage::setNextMovie(Common::String &movieFilenameRaw) {
}
}
- debug(1, "Stage::setNextMovie: '%s' -> '%s' -> '%s' -> '%s'", movieFilenameRaw.c_str(), convertPath(movieFilenameRaw).c_str(),
+ debug(1, "Window::setNextMovie: '%s' -> '%s' -> '%s' -> '%s'", movieFilenameRaw.c_str(), convertPath(movieFilenameRaw).c_str(),
movieFilename.c_str(), cleanedFilename.c_str());
if (!fileExists) {
@@ -390,7 +390,7 @@ bool Stage::setNextMovie(Common::String &movieFilenameRaw) {
return true;
}
-bool Stage::step() {
+bool Window::step() {
// finish last movie
if (_currentMovie && _currentMovie->getScore()->_playState == kPlayStopped) {
debugC(3, kDebugEvents, "\n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@");
diff --git a/engines/director/stage.h b/engines/director/window.h
similarity index 96%
rename from engines/director/stage.h
rename to engines/director/window.h
index 8a434d688b..9dd803c029 100644
--- a/engines/director/stage.h
+++ b/engines/director/window.h
@@ -86,10 +86,10 @@ struct TransParams {
}
};
-class Stage : public Graphics::MacWindow, public Object<Stage> {
+class Window : public Graphics::MacWindow, public Object<Window> {
public:
- Stage(int id, bool scrollable, bool resizable, bool editable, Graphics::MacWindowManager *wm, DirectorEngine *vm);
- ~Stage();
+ Window(int id, bool scrollable, bool resizable, bool editable, Graphics::MacWindowManager *wm, DirectorEngine *vm);
+ ~Window();
bool render(bool forceRedraw = false, Graphics::ManagedSurface *blitTo = nullptr);
void invertChannel(Channel *channel);
More information about the Scummvm-git-logs
mailing list