22#ifndef DIRECTOR_TYPES_H
23#define DIRECTOR_TYPES_H
27#define CONTINUATION (0xAC)
30 kFewFamesMaxCounter = 19,
34 kShotColorDiffThreshold = 2,
35 kShotPercentPixelThreshold = 1
38#define kQuirksCacheArchive "quirks"
39#define kSavedFilesArchive "saved"
42 kMovieFlagRemapPalettesWhenNeeded = (1 << 6),
43 kMovieFlagAllowOutdatedLingo = (1 << 8)
58 kCastDigitalVideo = 10,
59 kCastLingoScript = 11,
77enum EventHandlerSourceType {
87 kScriptFlagUnused = (1 << 0x0),
88 kScriptFlagFuncsGlobal = (1 << 0x1),
89 kScriptFlagVarsGlobal = (1 << 0x2),
90 kScriptFlagUnk3 = (1 << 0x3),
91 kScriptFlagFactoryDef = (1 << 0x4),
92 kScriptFlagUnk5 = (1 << 0x5),
93 kScriptFlagUnk6 = (1 << 0x6),
94 kScriptFlagUnk7 = (1 << 0x7),
95 kScriptFlagHasFactory = (1 << 0x8),
96 kScriptFlagEventScript = (1 << 0x9),
97 kScriptFlagEventScript2 = (1 << 0xa),
98 kScriptFlagUnkB = (1 << 0xb),
99 kScriptFlagUnkC = (1 << 0xc),
100 kScriptFlagUnkD = (1 << 0xd),
101 kScriptFlagUnkE = (1 << 0xe),
102 kScriptFlagUnkF = (1 << 0xf)
107 kFactoryObj = 1 << 0,
111 kAllObj = kFactoryObj | kXObj | kScriptObj | kXtraObj,
113 kCastMemberObj = 1 << 5
124 kTextTypeAdjustToFit,
136 kTextFlagEditable = (1 << 0),
137 kTextFlagAutoTab = (1 << 1),
138 kTextFlagDoNotWrap = (1 << 2)
148 kFrameRateDefault = -1,
149 kFrameRateNormal = 0,
150 kFrameRateFastest = 1,
157 kRectangleSprite = 2,
158 kRoundedRectangleSprite = 3,
160 kLineTopBottomSprite = 5,
161 kLineBottomTopSprite = 6,
165 kRadioButtonSprite = 10,
167 kOutlinedRectangleSprite = 12,
168 kOutlinedRoundedRectangleSprite = 13,
169 kOutlinedOvalSprite = 14,
170 kThickLineSprite = 15,
171 kCastMemberSprite = 16,
172 kFilmLoopSprite = 17,
192 kInkTypeBackgndTrans,
200 kEventPrepareMovie = 0,
218 kEventActivateWindow,
219 kEventDeactivateWindow,
231 kEventRightMouseDown,
234 kEventMouseUpOutSide,
241 kEventGetBehaviorDescription,
242 kEventGetPropertyDescriptionList,
243 kEventRunPropertyDialog,
254 kTransCenterOutHorizontal,
255 kTransEdgesInHorizontal,
256 kTransCenterOutVertical,
257 kTransEdgesInVertical,
258 kTransCenterOutSquare,
267 kTransRevealDownRight,
269 kTransRevealDownLeft,
272 kTransDissolvePixelsFast,
273 kTransDissolveBoxyRects,
274 kTransDissolveBoxySquares,
275 kTransDissolvePatterns,
280 kTransCoverDownRight,
288 kTransStripsBottomBuildLeft,
289 kTransStripsBottomBuildRight,
290 kTransStripsLeftBuildDown,
291 kTransStripsLeftBuildUp,
292 kTransStripsRightBuildDown,
293 kTransStripsRightBuildUp,
294 kTransStripsTopBuildLeft,
295 kTransStripsTopBuildRight,
299 kTransDissolveBitsFast,
300 kTransDissolvePixels,
320 kClutSystemWin = -101,
321 kClutSystemWinD5 = -102
339 kPlayPausedAfterLoading,
375 kFileVer1000 = 0x73B,
376 kFileVer1100 = 0x781,
377 kFileVer1150 = 0x782,
420 kLPPForceD2 = 1 << 1,
421 kLPPTrimGarbage = 1 << 2,
430 : member(memberID), castLib(castLibID) {}
433 return member == c.member && castLib == c.castLib;
436 return member != c.member || castLib != c.castLib;
439 bool isNull()
const {
return member == 0 && castLib == 0; }
443 uint hash()
const {
return ((castLib & 0xffff) << 16) + (member & 0xffff); }
451 int lib = multiplexID >> 16;
452 return CastMemberID(multiplexID % 0x10000, lib ? lib : 1);
458 return (member % 0x10000) + (castLib << 16);
463 kCompareLess = 1 << 0,
464 kCompareEqual = 1 << 1,
465 kCompareGreater = 1 << 2,
466 kCompareLessEqual = 1 << 3,
467 kCompareGreaterEqual = 1 << 4,
468 kCompareError = 1 << 5,
472 kDebugDrawCast = 1 << 0,
473 kDebugDrawFrame = 1 << 1,
481const char *scriptType2str(ScriptType scr);
482const char *castType2str(CastType type);
483const char *spriteType2str(SpriteType type);
484const char *inkType2str(InkType type);
485const char *symbolType2str(SymbolType type);
486const char *leventType2str(LEvent type);
487const char *eventHandlerSourceType2str(EventHandlerSourceType type);
505struct Hash<Director::CastMemberID> {
513 uint operator()(
const Director::LEvent &event)
const {
RenderMode
Definition: rendermode.h:48
@ kTextAlignCenter
Center the text.
Definition: font.h:52
@ kTextAlignRight
Align the text to the right.
Definition: font.h:54
@ kTextAlignLeft
Align the text to the left.
Definition: font.h:51
Definition: algorithm.h:29