From cb4eaadd688d1ebce9ec46334966d8bb0f0fd199 Mon Sep 17 00:00:00 2001 From: Jack Jansen Date: Thu, 30 Nov 1995 15:03:59 +0000 Subject: QuickTime support (not yet functional) --- Mac/Lib/toolbox/QuickTime.py | 234 +++++++++++ Mac/Modules/qt/qtgen.py | 949 +++++++++++++++++++++++++++++++++++++++++++ Mac/Modules/qt/qtscan.py | 78 ++++ Mac/Modules/qt/qtsupport.py | 79 ++++ 4 files changed, 1340 insertions(+) create mode 100644 Mac/Lib/toolbox/QuickTime.py create mode 100644 Mac/Modules/qt/qtgen.py create mode 100644 Mac/Modules/qt/qtscan.py create mode 100644 Mac/Modules/qt/qtsupport.py diff --git a/Mac/Lib/toolbox/QuickTime.py b/Mac/Lib/toolbox/QuickTime.py new file mode 100644 index 0000000..f4e0259 --- /dev/null +++ b/Mac/Lib/toolbox/QuickTime.py @@ -0,0 +1,234 @@ +# Generated from 'Sap:CodeWarrior7:Metrowerks CodeWarrior:MacOS Support:Headers:Universal Headers:Movies.h' + +MovieFileType = 'MooV' +MediaHandlerType = 'mhlr' +DataHandlerType = 'dhlr' +VideoMediaType = 'vide' +SoundMediaType = 'soun' +TextMediaType = 'text' +BaseMediaType = 'gnrc' +MPEGMediaType = 'MPEG' +MusicMediaType = 'musi' +TimeCodeMediaType = 'tmcd' +HandleDataHandlerSubType = 'hndl' +VisualMediaCharacteristic = 'eyes' +AudioMediaCharacteristic = 'ears' +DoTheRightThing = 0 +dfDontDisplay = 1 << 0 +dfDontAutoScale = 1 << 1 +dfClipToTextBox = 1 << 2 +dfUseMovieBGColor = 1 << 3 +dfShrinkTextBoxToFit = 1 << 4 +dfScrollIn = 1 << 5 +dfScrollOut = 1 << 6 +dfHorizScroll = 1 << 7 +dfReverseScroll = 1 << 8 +dfContinuousScroll = 1 << 9 +dfFlowHoriz = 1 << 10 +dfDropShadow = 1 << 12 +dfAntiAlias = 1 << 13 +dfKeyedText = 1 << 14 +dfInverseHilite = 1 << 15 +searchTextDontGoToFoundTime = 1L << 16 +searchTextDontHiliteFoundText = 1L << 17 +searchTextOneTrackOnly = 1L << 18 +searchTextEnabledTracksOnly = 1L << 19 +movieProgressOpen = 0 +movieProgressUpdatePercent = 1 +movieProgressClose = 2 +progressOpFlatten = 1 +mediaQualityDraft = 0x0000 +mediaQualityNormal = 0x0040 +mediaQualityBetter = 0x0080 +mediaQualityBest = 0x00C0 +loopTimeBase = 1 +palindromeLoopTimeBase = 2 +maintainTimeBaseZero = 4 +triggerTimeFwd = 0x0001 +triggerTimeBwd = 0x0002 +triggerTimeEither = 0x0003 +triggerRateLT = 0x0004 +triggerRateGT = 0x0008 +triggerRateEqual = 0x0010 +triggerRateChange = 0 +triggerAtStart = 0x0001 +triggerAtStop = 0x0002 +timeBaseBeforeStartTime = 1 +timeBaseAfterStopTime = 2 +callBackAtTime = 1 +callBackAtRate = 2 +callBackAtTimeJump = 3 +callBackAtExtremes = 4 +callBackAtInterrupt = 0x8000 +callBackAtDeferredTask = 0x4000 +qtcbNeedsRateChanges = 1 +qtcbNeedsTimeChanges = 2 +qtcbNeedsStartStopChanges = 4 +keepInRam = 1 << 0 +unkeepInRam = 1 << 1 +flushFromRam = 1 << 2 +loadForwardTrackEdits = 1 << 3 +loadBackwardTrackEdits = 1 << 4 +newMovieActive = 1 << 0 +newMovieDontResolveDataRefs = 1 << 1 +newMovieDontAskUnresolvedDataRefs = 1 << 2 +newMovieDontAutoAlternates = 1 << 3 +trackUsageInMovie = 1 << 1 +trackUsageInPreview = 1 << 2 +trackUsageInPoster = 1 << 3 +mediaSampleNotSync = 1 << 0 +mediaSampleShadowSync = 1 << 1 +pasteInParallel = 1 +showUserSettingsDialog = 2 +movieToFileOnlyExport = 4 +nextTimeMediaSample = 1 << 0 +nextTimeMediaEdit = 1 << 1 +nextTimeTrackEdit = 1 << 2 +nextTimeSyncSample = 1 << 3 +nextTimeEdgeOK = 1 << 14 +nextTimeIgnoreActiveSegment = 1 << 15 +createMovieFileDeleteCurFile = 1L << 31 +createMovieFileDontCreateMovie = 1L << 30 +createMovieFileDontOpenFile = 1L << 29 +flattenAddMovieToDataFork = 1L << 0 +flattenActiveTracksOnly = 1L << 2 +flattenDontInterleaveFlatten = 1L << 3 +movieInDataForkResID = -1 +mcTopLeftMovie = 1 << 0 +mcScaleMovieToFit = 1 << 1 +mcWithBadge = 1 << 2 +mcNotVisible = 1 << 3 +mcWithFrame = 1 << 4 +movieScrapDontZeroScrap = 1 << 0 +movieScrapOnlyPutMovie = 1 << 1 +dataRefSelfReference = 1 << 0 +dataRefWasNotResolved = 1 << 1 +hintsScrubMode = 1 << 0 +hintsLoop = 1 << 1 +hintsDontPurge = 1 << 2 +hintsUseScreenBuffer = 1 << 5 +hintsAllowInterlace = 1 << 6 +hintsUseSoundInterp = 1 << 7 +hintsHighQuality = 1 << 8 +hintsPalindrome = 1 << 9 +hintsInactive = 1 << 11 +mediaHandlerFlagBaseClient = 1 +movieTrackMediaType = 1 << 0 +movieTrackCharacteristic = 1 << 1 +movieTrackEnabledOnly = 1 << 2 +movieDrawingCallWhenChanged = 0 +movieDrawingCallAlways = 1 +txtProcDefaultDisplay = 0 +txtProcDontDisplay = 1 +txtProcDoDisplay = 2 +findTextEdgeOK = 1 << 0 +findTextCaseSensitive = 1 << 1 +findTextReverseSearch = 1 << 2 +findTextWrapAround = 1 << 3 +findTextUseOffset = 1 << 4 +dropShadowOffsetType = 'drpo' +dropShadowTranslucencyType = 'drpt' +preloadAlways = 1L << 0 +preloadOnlyIfEnabled = 1L << 1 +MovieControllerComponentType = 'play' +mcActionIdle = 1 +mcActionDraw = 2 +mcActionActivate = 3 +mcActionDeactivate = 4 +mcActionMouseDown = 5 +mcActionKey = 6 +mcActionPlay = 8 +mcActionGoToTime = 12 +mcActionSetVolume = 14 +mcActionGetVolume = 15 +mcActionStep = 18 +mcActionSetLooping = 21 +mcActionGetLooping = 22 +mcActionSetLoopIsPalindrome = 23 +mcActionGetLoopIsPalindrome = 24 +mcActionSetGrowBoxBounds = 25 +mcActionControllerSizeChanged = 26 +mcActionSetSelectionBegin = 29 +mcActionSetSelectionDuration = 30 +mcActionSetKeysEnabled = 32 +mcActionGetKeysEnabled = 33 +mcActionSetPlaySelection = 34 +mcActionGetPlaySelection = 35 +mcActionSetUseBadge = 36 +mcActionGetUseBadge = 37 +mcActionSetFlags = 38 +mcActionGetFlags = 39 +mcActionSetPlayEveryFrame = 40 +mcActionGetPlayEveryFrame = 41 +mcActionGetPlayRate = 42 +mcActionShowBalloon = 43 +mcActionBadgeClick = 44 +mcActionMovieClick = 45 +mcActionSuspend = 46 +mcActionResume = 47 +mcActionSetControllerKeysEnabled = 48 +mcActionGetTimeSliderRect = 49 +mcActionMovieEdited = 50 +mcActionGetDragEnabled = 51 +mcActionSetDragEnabled = 52 +mcFlagSuppressMovieFrame = 1 << 0 +mcFlagSuppressStepButtons = 1 << 1 +mcFlagSuppressSpeakerButton = 1 << 2 +mcFlagsUseWindowPalette = 1 << 3 +mcFlagsDontInvalidate = 1 << 4 +mcPositionDontInvalidate = 1 << 5 +mcInfoUndoAvailable = 1 << 0 +mcInfoCutAvailable = 1 << 1 +mcInfoCopyAvailable = 1 << 2 +mcInfoPasteAvailable = 1 << 3 +mcInfoClearAvailable = 1 << 4 +mcInfoHasSound = 1 << 5 +mcInfoIsPlaying = 1 << 6 +mcInfoIsLooping = 1 << 7 +mcInfoIsInPalindrome = 1 << 8 +mcInfoEditingEnabled = 1 << 9 +mcMenuUndo = 1 +mcMenuCut = 3 +mcMenuCopy = 4 +mcMenuPaste = 5 +mcMenuClear = 6 +kMCSetMovieSelect = 0x2 +kMCGetIndMovieSelect = 0x5 +kMCRemoveMovieSelect = 0x6 +kMCIsPlayerEventSelect = 0x7 +kMCSetActionFilterSelect = 0x8 +kMCDoActionSelect = 0x9 +kMCSetControllerAttachedSelect = 0xA +kMCIsControllerAttachedSelect = 0xB +kMCSetControllerPortSelect = 0xC +kMCGetControllerPortSelect = 0xD +kMCSetVisibleSelect = 0xE +kMCGetVisibleSelect = 0xF +kMCGetControllerBoundsRectSelect = 0x10 +kMCSetControllerBoundsRectSelect = 0x11 +kMCGetControllerBoundsRgnSelect = 0x12 +kMCGetWindowRgnSelect = 0x13 +kMCMovieChangedSelect = 0x14 +kMCSetDurationSelect = 0x15 +kMCGetCurrentTimeSelect = 0x16 +kMCNewAttachedControllerSelect = 0x17 +kMCDrawSelect = 0x18 +kMCActivateSelect = 0x19 +kMCIdleSelect = 0x1A +kMCKeySelect = 0x1B +kMCClickSelect = 0x1C +kMCEnableEditingSelect = 0x1D +kMCIsEditingEnabledSelect = 0x1E +kMCCopySelect = 0x1F +kMCCutSelect = 0x20 +kMCPasteSelect = 0x21 +kMCClearSelect = 0x22 +kMCUndoSelect = 0x23 +kMCPositionControllerSelect = 0x24 +kMCGetControllerInfoSelect = 0x25 +kMCSetClipSelect = 0x28 +kMCGetClipSelect = 0x29 +kMCDrawBadgeSelect = 0x2A +kMCSetUpEditMenuSelect = 0x2B +kMCGetMenuStringSelect = 0x2C +kMCSetActionFilterWithRefConSelect = 0x2D diff --git a/Mac/Modules/qt/qtgen.py b/Mac/Modules/qt/qtgen.py new file mode 100644 index 0000000..5b9e5a7 --- /dev/null +++ b/Mac/Modules/qt/qtgen.py @@ -0,0 +1,949 @@ +# Generated from 'Sap:CodeWarrior7:Metrowerks CodeWarrior:MacOS Support:Headers:Universal Headers:Movies.h' + +f = Function(OSErr, 'EnterMovies', +) +functions.append(f) + +f = Function(void, 'ExitMovies', +) +functions.append(f) + +f = Function(OSErr, 'GetMoviesError', +) +functions.append(f) + +f = Function(void, 'ClearMoviesStickyError', +) +functions.append(f) + +f = Function(OSErr, 'GetMoviesStickyError', +) +functions.append(f) + +f = Method(void, 'MoviesTask', + (Movie, 'theMovie', InMode), + (long, 'maxMilliSecToUse', InMode), +) +methods.append(f) + +f = Method(OSErr, 'PrerollMovie', + (Movie, 'theMovie', InMode), + (TimeValue, 'time', InMode), + (Fixed, 'Rate', InMode), +) +methods.append(f) + +f = Method(OSErr, 'LoadMovieIntoRam', + (Movie, 'theMovie', InMode), + (TimeValue, 'time', InMode), + (TimeValue, 'duration', InMode), + (long, 'flags', InMode), +) +methods.append(f) + +f = Method(void, 'SetMovieActive', + (Movie, 'theMovie', InMode), + (Boolean, 'active', InMode), +) +methods.append(f) + +f = Method(Boolean, 'GetMovieActive', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'StartMovie', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'StopMovie', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'GoToBeginningOfMovie', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'GoToEndOfMovie', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(Boolean, 'IsMovieDone', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(Boolean, 'GetMoviePreviewMode', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'SetMoviePreviewMode', + (Movie, 'theMovie', InMode), + (Boolean, 'usePreview', InMode), +) +methods.append(f) + +f = Method(void, 'ShowMoviePoster', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(PicHandle, 'GetMoviePict', + (Movie, 'theMovie', InMode), + (TimeValue, 'time', InMode), +) +methods.append(f) + +f = Method(PicHandle, 'GetMoviePosterPict', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(OSErr, 'UpdateMovie', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'GetMovieBox', + (Movie, 'theMovie', InMode), + (Rect, 'boxRect', OutMode), +) +methods.append(f) + +f = Method(void, 'SetMovieBox', + (Movie, 'theMovie', InMode), + (Rect_ptr, 'boxRect', InMode), +) +methods.append(f) + +f = Method(RgnHandle, 'GetMovieDisplayClipRgn', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'SetMovieDisplayClipRgn', + (Movie, 'theMovie', InMode), + (RgnHandle, 'theClip', InMode), +) +methods.append(f) + +f = Method(RgnHandle, 'GetMovieClipRgn', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'SetMovieClipRgn', + (Movie, 'theMovie', InMode), + (RgnHandle, 'theClip', InMode), +) +methods.append(f) + +f = Method(RgnHandle, 'GetMovieDisplayBoundsRgn', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(RgnHandle, 'GetMovieBoundsRgn', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Function(Movie, 'NewMovie', + (long, 'flags', InMode), +) +functions.append(f) + +f = Method(OSErr, 'PutMovieIntoHandle', + (Movie, 'theMovie', InMode), + (Handle, 'publicMovie', InMode), +) +methods.append(f) + +f = Method(OSErr, 'PutMovieIntoDataFork', + (Movie, 'theMovie', InMode), + (short, 'fRefNum', InMode), + (long, 'offset', InMode), + (long, 'maxSize', InMode), +) +methods.append(f) + +f = Method(TimeScale, 'GetMovieTimeScale', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'SetMovieTimeScale', + (Movie, 'theMovie', InMode), + (TimeScale, 'timeScale', InMode), +) +methods.append(f) + +f = Method(TimeValue, 'GetMovieDuration', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(Fixed, 'GetMovieRate', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'SetMovieRate', + (Movie, 'theMovie', InMode), + (Fixed, 'rate', InMode), +) +methods.append(f) + +f = Method(Fixed, 'GetMoviePreferredRate', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'SetMoviePreferredRate', + (Movie, 'theMovie', InMode), + (Fixed, 'rate', InMode), +) +methods.append(f) + +f = Method(short, 'GetMoviePreferredVolume', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'SetMoviePreferredVolume', + (Movie, 'theMovie', InMode), + (short, 'volume', InMode), +) +methods.append(f) + +f = Method(short, 'GetMovieVolume', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'SetMovieVolume', + (Movie, 'theMovie', InMode), + (short, 'volume', InMode), +) +methods.append(f) + +f = Method(void, 'GetMoviePreviewTime', + (Movie, 'theMovie', InMode), + (TimeValue, 'previewTime', OutMode), + (TimeValue, 'previewDuration', OutMode), +) +methods.append(f) + +f = Method(void, 'SetMoviePreviewTime', + (Movie, 'theMovie', InMode), + (TimeValue, 'previewTime', InMode), + (TimeValue, 'previewDuration', InMode), +) +methods.append(f) + +f = Method(TimeValue, 'GetMoviePosterTime', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'SetMoviePosterTime', + (Movie, 'theMovie', InMode), + (TimeValue, 'posterTime', InMode), +) +methods.append(f) + +f = Method(void, 'GetMovieSelection', + (Movie, 'theMovie', InMode), + (TimeValue, 'selectionTime', OutMode), + (TimeValue, 'selectionDuration', OutMode), +) +methods.append(f) + +f = Method(void, 'SetMovieSelection', + (Movie, 'theMovie', InMode), + (TimeValue, 'selectionTime', InMode), + (TimeValue, 'selectionDuration', InMode), +) +methods.append(f) + +f = Method(void, 'SetMovieActiveSegment', + (Movie, 'theMovie', InMode), + (TimeValue, 'startTime', InMode), + (TimeValue, 'duration', InMode), +) +methods.append(f) + +f = Method(void, 'GetMovieActiveSegment', + (Movie, 'theMovie', InMode), + (TimeValue, 'startTime', OutMode), + (TimeValue, 'duration', OutMode), +) +methods.append(f) + +f = Method(void, 'SetMovieTimeValue', + (Movie, 'theMovie', InMode), + (TimeValue, 'newtime', InMode), +) +methods.append(f) + +f = Method(long, 'GetMovieTrackCount', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'SetAutoTrackAlternatesEnabled', + (Movie, 'theMovie', InMode), + (Boolean, 'enable', InMode), +) +methods.append(f) + +f = Method(void, 'SelectMovieAlternates', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(OSErr, 'InsertMovieSegment', + (Movie, 'srcMovie', InMode), + (Movie, 'dstMovie', InMode), + (TimeValue, 'srcIn', InMode), + (TimeValue, 'srcDuration', InMode), + (TimeValue, 'dstIn', InMode), +) +methods.append(f) + +f = Method(OSErr, 'InsertEmptyMovieSegment', + (Movie, 'dstMovie', InMode), + (TimeValue, 'dstIn', InMode), + (TimeValue, 'dstDuration', InMode), +) +methods.append(f) + +f = Method(OSErr, 'DeleteMovieSegment', + (Movie, 'theMovie', InMode), + (TimeValue, 'startTime', InMode), + (TimeValue, 'duration', InMode), +) +methods.append(f) + +f = Method(OSErr, 'ScaleMovieSegment', + (Movie, 'theMovie', InMode), + (TimeValue, 'startTime', InMode), + (TimeValue, 'oldDuration', InMode), + (TimeValue, 'newDuration', InMode), +) +methods.append(f) + +f = Method(Movie, 'CutMovieSelection', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(Movie, 'CopyMovieSelection', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'PasteMovieSelection', + (Movie, 'theMovie', InMode), + (Movie, 'src', InMode), +) +methods.append(f) + +f = Method(void, 'AddMovieSelection', + (Movie, 'theMovie', InMode), + (Movie, 'src', InMode), +) +methods.append(f) + +f = Method(void, 'ClearMovieSelection', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Function(OSErr, 'PasteHandleIntoMovie', + (Handle, 'h', InMode), + (OSType, 'handleType', InMode), + (Movie, 'theMovie', InMode), + (long, 'flags', InMode), + (ComponentInstance, 'userComp', InMode), +) +functions.append(f) + +f = Method(OSErr, 'CopyMovieSettings', + (Movie, 'srcMovie', InMode), + (Movie, 'dstMovie', InMode), +) +methods.append(f) + +f = Method(long, 'GetMovieDataSize', + (Movie, 'theMovie', InMode), + (TimeValue, 'startTime', InMode), + (TimeValue, 'duration', InMode), +) +methods.append(f) + +f = Method(Boolean, 'PtInMovie', + (Movie, 'theMovie', InMode), + (Point, 'pt', InMode), +) +methods.append(f) + +f = Method(void, 'SetMovieLanguage', + (Movie, 'theMovie', InMode), + (long, 'language', InMode), +) +methods.append(f) + +f = Method(void, 'GetMovieNextInterestingTime', + (Movie, 'theMovie', InMode), + (short, 'interestingTimeFlags', InMode), + (short, 'numMediaTypes', InMode), + (OSType_ptr, 'whichMediaTypes', InMode), + (TimeValue, 'time', InMode), + (Fixed, 'rate', InMode), + (TimeValue, 'interestingTime', OutMode), + (TimeValue, 'interestingDuration', OutMode), +) +methods.append(f) + +f = Function(OSErr, 'CreateMovieFile', + (FSSpec_ptr, 'fileSpec', InMode), + (OSType, 'creator', InMode), + (ScriptCode, 'scriptTag', InMode), + (long, 'createMovieFileFlags', InMode), + (short, 'resRefNum', OutMode), + (Movie, 'newmovie', OutMode), +) +functions.append(f) + +f = Function(OSErr, 'OpenMovieFile', + (FSSpec_ptr, 'fileSpec', InMode), + (short, 'resRefNum', OutMode), + (SInt8, 'permission', InMode), +) +functions.append(f) + +f = Function(OSErr, 'CloseMovieFile', + (short, 'resRefNum', InMode), +) +functions.append(f) + +f = Function(OSErr, 'DeleteMovieFile', + (FSSpec_ptr, 'fileSpec', InMode), +) +functions.append(f) + +f = Function(OSErr, 'NewMovieFromFile', + (Movie, 'theMovie', OutMode), + (short, 'resRefNum', InMode), + (short, 'resId', OutMode), + (StringPtr, 'resName', InMode), + (short, 'newMovieFlags', InMode), + (Boolean, 'dataRefWasChanged', OutMode), +) +functions.append(f) + +f = Function(OSErr, 'NewMovieFromHandle', + (Movie, 'theMovie', OutMode), + (Handle, 'h', InMode), + (short, 'newMovieFlags', InMode), + (Boolean, 'dataRefWasChanged', OutMode), +) +functions.append(f) + +f = Function(OSErr, 'NewMovieFromDataFork', + (Movie, 'theMovie', OutMode), + (short, 'fRefNum', InMode), + (long, 'fileOffset', InMode), + (short, 'newMovieFlags', InMode), + (Boolean, 'dataRefWasChanged', OutMode), +) +functions.append(f) + +f = Function(OSErr, 'NewMovieFromUserProc', + (Movie, 'm', OutMode), + (short, 'flags', InMode), + (Boolean, 'dataRefWasChanged', OutMode), + (GetMovieUPP, 'getProc', InMode), + (void, 'refCon', OutMode), + (Handle, 'defaultDataRef', InMode), + (OSType, 'dataRefType', InMode), +) +functions.append(f) + +f = Method(OSErr, 'AddMovieResource', + (Movie, 'theMovie', InMode), + (short, 'resRefNum', InMode), + (short, 'resId', OutMode), + (ConstStr255Param, 'resName', InMode), +) +methods.append(f) + +f = Method(OSErr, 'UpdateMovieResource', + (Movie, 'theMovie', InMode), + (short, 'resRefNum', InMode), + (short, 'resId', InMode), + (ConstStr255Param, 'resName', InMode), +) +methods.append(f) + +f = Function(OSErr, 'RemoveMovieResource', + (short, 'resRefNum', InMode), + (short, 'resId', InMode), +) +functions.append(f) + +f = Method(Boolean, 'HasMovieChanged', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(void, 'ClearMovieChanged', + (Movie, 'theMovie', InMode), +) +methods.append(f) + +f = Method(OSErr, 'SetMovieDefaultDataRef', + (Movie, 'theMovie', InMode), + (Handle, 'dataRef', InMode), + (OSType, 'dataRefType', InMode), +) +methods.append(f) + +f = Method(OSErr, 'GetMovieDefaultDataRef', + (Movie, 'theMovie', InMode), + (Handle, 'dataRef', OutMode), + (OSType, 'dataRefType', OutMode), +) +methods.append(f) + +f = Method(OSErr, 'SetMovieColorTable', + (Movie, 'theMovie', InMode), + (CTabHandle, 'ctab', InMode), +) +methods.append(f) + +f = Method(OSErr, 'GetMovieColorTable', + (Movie, 'theMovie', InMode), + (CTabHandle, 'ctab', OutMode), +) +methods.append(f) + +f = Method(void, 'FlattenMovie', + (Movie, 'theMovie', InMode), + (long, 'movieFlattenFlags', InMode), + (FSSpec_ptr, 'theFile', InMode), + (OSType, 'creator', InMode), + (ScriptCode, 'scriptTag', InMode), + (long, 'createMovieFileFlags', InMode), + (short, 'resId', OutMode), + (ConstStr255Param, 'resName', InMode), +) +methods.append(f) + +f = Method(Movie, 'FlattenMovieData', + (Movie, 'theMovie', InMode), + (long, 'movieFlattenFlags', InMode), + (FSSpec_ptr, 'theFile', InMode), + (OSType, 'creator', InMode), + (ScriptCode, 'scriptTag', InMode), + (long, 'createMovieFileFlags', InMode), +) +methods.append(f) + +f = Function(HandlerError, 'GetVideoMediaGraphicsMode', + (MediaHandler, 'mh', InMode), + (long, 'graphicsMode', OutMode), + (RGBColor, 'opColor', OutMode), +) +functions.append(f) + +f = Function(HandlerError, 'SetVideoMediaGraphicsMode', + (MediaHandler, 'mh', InMode), + (long, 'graphicsMode', InMode), + (RGBColor_ptr, 'opColor', InMode), +) +functions.append(f) + +f = Function(HandlerError, 'GetSoundMediaBalance', + (MediaHandler, 'mh', InMode), + (short, 'balance', OutMode), +) +functions.append(f) + +f = Function(HandlerError, 'SetSoundMediaBalance', + (MediaHandler, 'mh', InMode), + (short, 'balance', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'AddTextSample', + (MediaHandler, 'mh', InMode), + (Ptr, 'text', InMode), + (unsigned_long, 'size', InMode), + (short, 'fontNumber', InMode), + (short, 'fontSize', InMode), + (short, 'textFace', InMode), + (RGBColor, 'textColor', OutMode), + (RGBColor, 'backColor', OutMode), + (short, 'textJustification', InMode), + (Rect, 'textBox', OutMode), + (long, 'displayFlags', InMode), + (TimeValue, 'scrollDelay', InMode), + (short, 'hiliteStart', InMode), + (short, 'hiliteEnd', InMode), + (RGBColor, 'rgbHiliteColor', OutMode), + (TimeValue, 'duration', InMode), + (TimeValue, 'sampleTime', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'AddTESample', + (MediaHandler, 'mh', InMode), + (TEHandle, 'hTE', InMode), + (RGBColor, 'backColor', OutMode), + (short, 'textJustification', InMode), + (Rect, 'textBox', OutMode), + (long, 'displayFlags', InMode), + (TimeValue, 'scrollDelay', InMode), + (short, 'hiliteStart', InMode), + (short, 'hiliteEnd', InMode), + (RGBColor, 'rgbHiliteColor', OutMode), + (TimeValue, 'duration', InMode), + (TimeValue, 'sampleTime', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'AddHiliteSample', + (MediaHandler, 'mh', InMode), + (short, 'hiliteStart', InMode), + (short, 'hiliteEnd', InMode), + (RGBColor, 'rgbHiliteColor', OutMode), + (TimeValue, 'duration', InMode), + (TimeValue, 'sampleTime', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'FindNextText', + (MediaHandler, 'mh', InMode), + (Ptr, 'text', InMode), + (long, 'size', InMode), + (short, 'findFlags', InMode), + (TimeValue, 'startTime', InMode), + (TimeValue, 'foundTime', OutMode), + (TimeValue, 'foundDuration', OutMode), + (long, 'offset', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'HiliteTextSample', + (MediaHandler, 'mh', InMode), + (TimeValue, 'sampleTime', InMode), + (short, 'hiliteStart', InMode), + (short, 'hiliteEnd', InMode), + (RGBColor, 'rgbHiliteColor', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'SetTextSampleData', + (MediaHandler, 'mh', InMode), + (void, 'data', OutMode), + (OSType, 'dataType', InMode), +) +functions.append(f) + +f = Method(void, 'GetPosterBox', + (Movie, 'theMovie', InMode), + (Rect, 'boxRect', OutMode), +) +methods.append(f) + +f = Method(void, 'SetPosterBox', + (Movie, 'theMovie', InMode), + (Rect_ptr, 'boxRect', InMode), +) +methods.append(f) + +f = Method(RgnHandle, 'GetMovieSegmentDisplayBoundsRgn', + (Movie, 'theMovie', InMode), + (TimeValue, 'time', InMode), + (TimeValue, 'duration', InMode), +) +methods.append(f) + +f = Method(ComponentInstance, 'NewMovieController', + (Movie, 'theMovie', InMode), + (Rect_ptr, 'movieRect', InMode), + (long, 'someFlags', InMode), +) +methods.append(f) + +f = Function(void, 'DisposeMovieController', + (ComponentInstance, 'mc', InMode), +) +functions.append(f) + +f = Method(void, 'ShowMovieInformation', + (Movie, 'theMovie', InMode), + (ModalFilterUPP, 'filterProc', InMode), + (long, 'refCon', InMode), +) +methods.append(f) + +f = Method(OSErr, 'PutMovieOnScrap', + (Movie, 'theMovie', InMode), + (long, 'movieScrapFlags', InMode), +) +methods.append(f) + +f = Function(Movie, 'NewMovieFromScrap', + (long, 'newMovieFlags', InMode), +) +functions.append(f) + +f = Method(void, 'SetMoviePlayHints', + (Movie, 'theMovie', InMode), + (long, 'flags', InMode), + (long, 'flagsMask', InMode), +) +methods.append(f) + +f = Function(ComponentResult, 'MCSetMovie', + (MovieController, 'mc', InMode), + (Movie, 'theMovie', InMode), + (WindowPtr, 'movieWindow', InMode), + (Point, 'where', InMode), +) +functions.append(f) + +f = Function(Movie, 'MCGetIndMovie', + (MovieController, 'mc', InMode), + (short, 'index', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCRemoveMovie', + (MovieController, 'mc', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCIsPlayerEvent', + (MovieController, 'mc', InMode), + (EventRecord_ptr, 'e', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCDoAction', + (MovieController, 'mc', InMode), + (short, 'action', InMode), + (void, 'params', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCSetControllerAttached', + (MovieController, 'mc', InMode), + (Boolean, 'attach', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCIsControllerAttached', + (MovieController, 'mc', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCSetVisible', + (MovieController, 'mc', InMode), + (Boolean, 'visible', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCGetVisible', + (MovieController, 'mc', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCGetControllerBoundsRect', + (MovieController, 'mc', InMode), + (Rect, 'bounds', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCSetControllerBoundsRect', + (MovieController, 'mc', InMode), + (Rect_ptr, 'bounds', InMode), +) +functions.append(f) + +f = Function(RgnHandle, 'MCGetControllerBoundsRgn', + (MovieController, 'mc', InMode), +) +functions.append(f) + +f = Function(RgnHandle, 'MCGetWindowRgn', + (MovieController, 'mc', InMode), + (WindowPtr, 'w', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCMovieChanged', + (MovieController, 'mc', InMode), + (Movie, 'm', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCSetDuration', + (MovieController, 'mc', InMode), + (TimeValue, 'duration', InMode), +) +functions.append(f) + +f = Function(TimeValue, 'MCGetCurrentTime', + (MovieController, 'mc', InMode), + (TimeScale, 'scale', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCNewAttachedController', + (MovieController, 'mc', InMode), + (Movie, 'theMovie', InMode), + (WindowPtr, 'w', InMode), + (Point, 'where', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCDraw', + (MovieController, 'mc', InMode), + (WindowPtr, 'w', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCActivate', + (MovieController, 'mc', InMode), + (WindowPtr, 'w', InMode), + (Boolean, 'activate', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCIdle', + (MovieController, 'mc', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCKey', + (MovieController, 'mc', InMode), + (SInt8, 'key', InMode), + (long, 'modifiers', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCClick', + (MovieController, 'mc', InMode), + (WindowPtr, 'w', InMode), + (Point, 'where', InMode), + (long, 'when', InMode), + (long, 'modifiers', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCEnableEditing', + (MovieController, 'mc', InMode), + (Boolean, 'enabled', InMode), +) +functions.append(f) + +f = Function(long, 'MCIsEditingEnabled', + (MovieController, 'mc', InMode), +) +functions.append(f) + +f = Function(Movie, 'MCCopy', + (MovieController, 'mc', InMode), +) +functions.append(f) + +f = Function(Movie, 'MCCut', + (MovieController, 'mc', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCPaste', + (MovieController, 'mc', InMode), + (Movie, 'srcMovie', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCClear', + (MovieController, 'mc', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCUndo', + (MovieController, 'mc', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCPositionController', + (MovieController, 'mc', InMode), + (Rect_ptr, 'movieRect', InMode), + (Rect_ptr, 'controllerRect', InMode), + (long, 'someFlags', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCGetControllerInfo', + (MovieController, 'mc', InMode), + (long, 'someFlags', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCSetClip', + (MovieController, 'mc', InMode), + (RgnHandle, 'theClip', InMode), + (RgnHandle, 'movieClip', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCGetClip', + (MovieController, 'mc', InMode), + (RgnHandle, 'theClip', OutMode), + (RgnHandle, 'movieClip', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCDrawBadge', + (MovieController, 'mc', InMode), + (RgnHandle, 'movieRgn', InMode), + (RgnHandle, 'badgeRgn', OutMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCSetUpEditMenu', + (MovieController, 'mc', InMode), + (long, 'modifiers', InMode), + (MenuHandle, 'mh', InMode), +) +functions.append(f) + +f = Function(ComponentResult, 'MCGetMenuString', + (MovieController, 'mc', InMode), + (long, 'modifiers', InMode), + (short, 'item', InMode), + (Str255, 'aString', InMode), +) +functions.append(f) + +f = Function(OSErr, 'QueueSyncTask', + (QTSyncTaskPtr, 'task', InMode), +) +functions.append(f) + +f = Function(OSErr, 'DequeueSyncTask', + (QTSyncTaskPtr, 'qElem', InMode), +) +functions.append(f) + diff --git a/Mac/Modules/qt/qtscan.py b/Mac/Modules/qt/qtscan.py new file mode 100644 index 0000000..4a715d6 --- /dev/null +++ b/Mac/Modules/qt/qtscan.py @@ -0,0 +1,78 @@ +# Scan an Apple header file, generating a Python file of generator calls. + +import addpack +addpack.addpack(':tools:bgen:bgen') +from scantools import Scanner + +LONG = "QuickTime" +SHORT = "qt" +OBJECT = "Movie" + +def main(): + input = "Movies.h" + output = SHORT + "gen.py" + defsoutput = LONG + ".py" + scanner = MyScanner(input, output, defsoutput) + scanner.scan() + scanner.close() + print "=== Done scanning and generating, now importing the generated code... ===" + exec "import " + SHORT + "support" + print "=== Done. It's up to you to compile it now! ===" + +class MyScanner(Scanner): + + def destination(self, type, name, arglist): + classname = "Function" + listname = "functions" + if arglist: + t, n, m = arglist[0] + if t == OBJECT and m == "InMode": + classname = "Method" + listname = "methods" + return classname, listname + + def makeblacklistnames(self): + return [ + "DisposeMovie", # Done on python-object disposal + "GetMovieCreationTime", # type "unsigned long" in C, inparseable + "GetMovieModificationTime", # Ditto + ] + + def makeblacklisttypes(self): + return [ + "MoviesErrorUPP", + "Track", # XXXX To be done in the future + "Media", + "UserData", + "TimeBase", + "QTCallBack", + "Component", + "TimeRecord", + "TimeRecord_ptr", + "TrackEditState", + "MovieEditState", + "MoviePreviewCallOutUPP", + "CGrafPtr", + "GDHandle", + "MovieDrawingCompleteUPP", + "PixMapHandle", + "MatrixRecord", + "MatrixRecord_ptr", + "QTCallBackUPP", + "TextMediaUPP", + "MovieProgressUPP", + "MovieRgnCoverUPP", + "MCActionFilterUPP", + "MCActionFilterWithRefConUPP", + "SampleDescription", + "SoundDescription", + "TextDescription", + "MusicDescription", + ] + + def makerepairinstructions(self): + return [ + ] + +if __name__ == "__main__": + main() diff --git a/Mac/Modules/qt/qtsupport.py b/Mac/Modules/qt/qtsupport.py new file mode 100644 index 0000000..5c29b75 --- /dev/null +++ b/Mac/Modules/qt/qtsupport.py @@ -0,0 +1,79 @@ +# This script generates a Python interface for an Apple Macintosh Manager. +# It uses the "bgen" package to generate C code. +# The function specifications are generated by scanning the mamager's header file, +# using the "scantools" package (customized for this particular manager). + +import string + +# Declarations that change for each manager +MACHEADERFILE = 'Movies.h' # The Apple header file +MODNAME = 'qt' # The name of the module +OBJECTNAME = 'Movie' # The basic name of the objects used here + +# The following is *usually* unchanged but may still require tuning +MODPREFIX = MODNAME # The prefix for module-wide routines +OBJECTTYPE = "Movie" # The C type used to represent them +OBJECTPREFIX = MODPREFIX + 'Obj' # The prefix for object methods +INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner +OUTPUTFILE = MODNAME + "module.c" # The file generated by this program + +from macsupport import * + +# Create the type objects + +includestuff = includestuff + """ +#include <%s>""" % MACHEADERFILE + """ +""" + +Movie = OpaqueByValueType(OBJECTTYPE, OBJECTPREFIX) +TimeValue = Type("TimeValue", "l") +TimeScale = Type("TimeScale", "l") +TimeBaseFlags = Type("TimeBaseFlags", "l") +QTCallBackFlags = Type("QTCallBackFlags", "h") +TimeBaseStatus = Type("TimeBaseStatus", "l") +QTCallBackType = Type("QTCallBackType", "h") +nextTimeFlagsEnum = Type("nextTimeFlagsEnum", "h") +createMovieFileFlagsEnum = Type("createMovieFileFlagsEnum", "l") +movieFlattenFlagsEnum = Type("movieFlattenFlagsEnum", "l") +dataRefAttributesFlags = Type("dataRefAttributesFlags", "l") +playHintsEnum = Type("playHintsEnum", "l") +mediaHandlerFlagsEnum = Type("mediaHandlerFlagsEnum", "l") + +RgnHandle = OpaqueByValueType("RgnHandle", "ResObj") +PicHandle = OpaqueByValueType("PicHandle", "ResObj") + + +class MyObjectDefinition(GlobalObjectDefinition): + def outputCheckNewArg(self): + Output("""if (itself == NULL) { + PyErr_SetString(Qt_Error,"Cannot create null Movie"); + return NULL; + }""") + def outputFreeIt(self, itselfname): + Output("DisposeMovie(%s);", itselfname) + +# From here on it's basically all boiler plate... + +# Create the generator groups and link them +module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff) +object = MyObjectDefinition(OBJECTNAME, OBJECTPREFIX, OBJECTTYPE) +module.addobject(object) + +# Create the generator classes used to populate the lists +Function = FunctionGenerator +Method = MethodGenerator + +# Create and populate the lists +functions = [] +methods = [] +execfile(INPUTFILE) + +# add the populated lists to the generator groups +# (in a different wordl the scan program would generate this) +for f in functions: module.add(f) +for f in methods: object.add(f) + +# generate output (open the output file as late as possible) +SetOutputFileName(OUTPUTFILE) +module.generate() + -- cgit v0.12