22 #ifndef DIRECTOR_STAGE_H 23 #define DIRECTOR_STAGE_H 25 #include "director/lingo/lingo-object.h" 34 class MacWindowManager;
61 const byte *sourcePal;
62 uint16 sourcePalLength;
63 const byte *targetPal;
64 uint16 targetPalLength;
77 xStepSize = yStepSize = 0;
86 TransParams(uint16 d, uint16 a, uint16 c, TransitionType t) :
87 duration(d), area(a), chunkSize(c), type(t), tempPal() {
93 xStepSize = yStepSize = 0;
108 void decRefCount()
override;
113 void setStageColor(uint32 stageColor,
bool forceReset =
false);
114 uint32 getStageColor() {
return _stageColor; }
121 void playTransition(uint frame, RenderMode mode, uint16 transDuration, uint8 transArea, uint8 transChunkSize, TransitionType transType,
CastMemberID paletteId);
132 Archive *getMainArchive()
const {
return _mainArchive; }
133 Movie *getCurrentMovie()
const {
return _currentMovie; }
135 DirectorSound *getSoundManager()
const {
return _soundManager; }
137 void setVisible(
bool visible,
bool silent =
false)
override;
140 void ensureMovieIsLoaded();
142 void setWindowType(
int type) { _windowType = type; updateBorderType(); }
143 int getWindowType()
const {
return _windowType; }
144 void setTitleVisible(
bool titleVisible)
override;
145 Datum getStageRect();
146 bool setStageRect(
Datum datum);
147 void setModal(
bool modal);
148 bool getModal() {
return _isModal; };
150 Common::String getFileName() {
return _fileName.toString(g_director->_dirSeparator); }
152 void updateBorderType();
155 bool loadNextMovie();
156 void loadNewSharedCast(
Cast *previousSharedCast);
160 LingoState *getLingoState() {
return _lingoState; };
161 LingoState *getLingoPlayState() {
return _lingoPlayState; };
162 uint32 frozenLingoStateCount() {
return _frozenLingoStates.size(); };
163 uint32 frozenLingoRecursionCount();
164 void freezeLingoState();
165 void thawLingoState();
166 void freezeLingoPlayState();
167 bool thawLingoPlayState();
168 LingoState *getLastFrozenLingoState() {
return _frozenLingoStates.empty() ? nullptr : _frozenLingoStates[_frozenLingoStates.size() - 1]; }
175 void testFontScaling();
177 void enqueueAllMovies();
183 void probeResources(
Archive *archive);
184 void loadINIStream();
185 void loadStartMovieXLibs();
191 bool setProp(
const Common::String &propName,
const Datum &value,
bool force =
false)
override;
192 bool hasField(
int field)
override;
193 Datum getField(
int field)
override;
194 bool setField(
int field,
const Datum &value)
override;
204 bool _newMovieStarted;
216 Movie *_currentMovie;
Definition: managed_surface.h:51
Definition: director.h:99
Definition: macwindow.h:192
Definition: macwindowmanager.h:148
Definition: lingo-object.h:71
Definition: algorithm.h:29
Definition: formatinfo.h:28
Definition: director.h:150
Definition: director.h:330