diff options
author | cinap_lenrek <cinap_lenrek@localhost> | 2011-05-03 11:25:13 +0000 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@localhost> | 2011-05-03 11:25:13 +0000 |
commit | 458120dd40db6b4df55a4e96b650e16798ef06a0 (patch) | |
tree | 8f82685be24fef97e715c6f5ca4c68d34d5074ee /sys/lib/python/plat-mac | |
parent | 3a742c699f6806c1145aea5149bf15de15a0afd7 (diff) |
add hg and python
Diffstat (limited to 'sys/lib/python/plat-mac')
151 files changed, 38904 insertions, 0 deletions
diff --git a/sys/lib/python/plat-mac/Audio_mac.py b/sys/lib/python/plat-mac/Audio_mac.py new file mode 100644 index 000000000..fd96095ad --- /dev/null +++ b/sys/lib/python/plat-mac/Audio_mac.py @@ -0,0 +1,121 @@ +QSIZE = 100000 +error='Audio_mac.error' + +class Play_Audio_mac: + + def __init__(self, qsize=QSIZE): + self._chan = None + self._qsize = qsize + self._outrate = 22254 + self._sampwidth = 1 + self._nchannels = 1 + self._gc = [] + self._usercallback = None + + def __del__(self): + self.stop() + self._usercallback = None + + def wait(self): + import time + while self.getfilled(): + time.sleep(0.1) + self._chan = None + self._gc = [] + + def stop(self, quietNow = 1): + ##chan = self._chan + self._chan = None + ##chan.SndDisposeChannel(1) + self._gc = [] + + def setoutrate(self, outrate): + self._outrate = outrate + + def setsampwidth(self, sampwidth): + self._sampwidth = sampwidth + + def setnchannels(self, nchannels): + self._nchannels = nchannels + + def writeframes(self, data): + import time + from Carbon.Sound import bufferCmd, callBackCmd, extSH + import struct + import MacOS + if not self._chan: + from Carbon import Snd + self._chan = Snd.SndNewChannel(5, 0, self._callback) + nframes = len(data) / self._nchannels / self._sampwidth + if len(data) != nframes * self._nchannels * self._sampwidth: + raise error, 'data is not a whole number of frames' + while self._gc and \ + self.getfilled() + nframes > \ + self._qsize / self._nchannels / self._sampwidth: + time.sleep(0.1) + if self._sampwidth == 1: + import audioop + data = audioop.add(data, '\x80'*len(data), 1) + h1 = struct.pack('llHhllbbl', + id(data)+MacOS.string_id_to_buffer, + self._nchannels, + self._outrate, 0, + 0, + 0, + extSH, + 60, + nframes) + h2 = 22*'\0' + h3 = struct.pack('hhlll', + self._sampwidth*8, + 0, + 0, + 0, + 0) + header = h1+h2+h3 + self._gc.append((header, data)) + self._chan.SndDoCommand((bufferCmd, 0, header), 0) + self._chan.SndDoCommand((callBackCmd, 0, 0), 0) + + def _callback(self, *args): + del self._gc[0] + if self._usercallback: + self._usercallback() + + def setcallback(self, callback): + self._usercallback = callback + + def getfilled(self): + filled = 0 + for header, data in self._gc: + filled = filled + len(data) + return filled / self._nchannels / self._sampwidth + + def getfillable(self): + return (self._qsize / self._nchannels / self._sampwidth) - self.getfilled() + + def ulaw2lin(self, data): + import audioop + return audioop.ulaw2lin(data, 2) + +def test(): + import aifc + import EasyDialogs + fn = EasyDialogs.AskFileForOpen(message="Select an AIFF soundfile", typeList=("AIFF",)) + if not fn: return + af = aifc.open(fn, 'r') + print af.getparams() + p = Play_Audio_mac() + p.setoutrate(af.getframerate()) + p.setsampwidth(af.getsampwidth()) + p.setnchannels(af.getnchannels()) + BUFSIZ = 10000 + while 1: + data = af.readframes(BUFSIZ) + if not data: break + p.writeframes(data) + print 'wrote', len(data), 'space', p.getfillable() + p.wait() + +if __name__ == '__main__': + test() diff --git a/sys/lib/python/plat-mac/Carbon/AE.py b/sys/lib/python/plat-mac/Carbon/AE.py new file mode 100644 index 000000000..0f4601773 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/AE.py @@ -0,0 +1 @@ +from _AE import * diff --git a/sys/lib/python/plat-mac/Carbon/AH.py b/sys/lib/python/plat-mac/Carbon/AH.py new file mode 100644 index 000000000..0701e7bd8 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/AH.py @@ -0,0 +1 @@ +from _AH import * diff --git a/sys/lib/python/plat-mac/Carbon/Alias.py b/sys/lib/python/plat-mac/Carbon/Alias.py new file mode 100644 index 000000000..cb612a66b --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Alias.py @@ -0,0 +1 @@ +from _Alias import * diff --git a/sys/lib/python/plat-mac/Carbon/Aliases.py b/sys/lib/python/plat-mac/Carbon/Aliases.py new file mode 100644 index 000000000..55e1a1f5a --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Aliases.py @@ -0,0 +1,18 @@ +# Generated from 'Aliases.h' + +def FOUR_CHAR_CODE(x): return x +true = True +false = False +rAliasType = FOUR_CHAR_CODE('alis') +kARMMountVol = 0x00000001 +kARMNoUI = 0x00000002 +kARMMultVols = 0x00000008 +kARMSearch = 0x00000100 +kARMSearchMore = 0x00000200 +kARMSearchRelFirst = 0x00000400 +asiZoneName = -3 +asiServerName = -2 +asiVolumeName = -1 +asiAliasName = 0 +asiParentName = 1 +kResolveAliasFileNoUI = 0x00000001 diff --git a/sys/lib/python/plat-mac/Carbon/App.py b/sys/lib/python/plat-mac/Carbon/App.py new file mode 100644 index 000000000..cc0d46d5d --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/App.py @@ -0,0 +1 @@ +from _App import * diff --git a/sys/lib/python/plat-mac/Carbon/Appearance.py b/sys/lib/python/plat-mac/Carbon/Appearance.py new file mode 100644 index 000000000..d99c6dce0 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Appearance.py @@ -0,0 +1,648 @@ +# Generated from 'Appearance.h' + +def FOUR_CHAR_CODE(x): return x +kAppearanceEventClass = FOUR_CHAR_CODE('appr') +kAEAppearanceChanged = FOUR_CHAR_CODE('thme') +kAESystemFontChanged = FOUR_CHAR_CODE('sysf') +kAESmallSystemFontChanged = FOUR_CHAR_CODE('ssfn') +kAEViewsFontChanged = FOUR_CHAR_CODE('vfnt') +kThemeDataFileType = FOUR_CHAR_CODE('thme') +kThemePlatinumFileType = FOUR_CHAR_CODE('pltn') +kThemeCustomThemesFileType = FOUR_CHAR_CODE('scen') +kThemeSoundTrackFileType = FOUR_CHAR_CODE('tsnd') +kThemeBrushDialogBackgroundActive = 1 +kThemeBrushDialogBackgroundInactive = 2 +kThemeBrushAlertBackgroundActive = 3 +kThemeBrushAlertBackgroundInactive = 4 +kThemeBrushModelessDialogBackgroundActive = 5 +kThemeBrushModelessDialogBackgroundInactive = 6 +kThemeBrushUtilityWindowBackgroundActive = 7 +kThemeBrushUtilityWindowBackgroundInactive = 8 +kThemeBrushListViewSortColumnBackground = 9 +kThemeBrushListViewBackground = 10 +kThemeBrushIconLabelBackground = 11 +kThemeBrushListViewSeparator = 12 +kThemeBrushChasingArrows = 13 +kThemeBrushDragHilite = 14 +kThemeBrushDocumentWindowBackground = 15 +kThemeBrushFinderWindowBackground = 16 +kThemeBrushScrollBarDelimiterActive = 17 +kThemeBrushScrollBarDelimiterInactive = 18 +kThemeBrushFocusHighlight = 19 +kThemeBrushPopupArrowActive = 20 +kThemeBrushPopupArrowPressed = 21 +kThemeBrushPopupArrowInactive = 22 +kThemeBrushAppleGuideCoachmark = 23 +kThemeBrushIconLabelBackgroundSelected = 24 +kThemeBrushStaticAreaFill = 25 +kThemeBrushActiveAreaFill = 26 +kThemeBrushButtonFrameActive = 27 +kThemeBrushButtonFrameInactive = 28 +kThemeBrushButtonFaceActive = 29 +kThemeBrushButtonFaceInactive = 30 +kThemeBrushButtonFacePressed = 31 +kThemeBrushButtonActiveDarkShadow = 32 +kThemeBrushButtonActiveDarkHighlight = 33 +kThemeBrushButtonActiveLightShadow = 34 +kThemeBrushButtonActiveLightHighlight = 35 +kThemeBrushButtonInactiveDarkShadow = 36 +kThemeBrushButtonInactiveDarkHighlight = 37 +kThemeBrushButtonInactiveLightShadow = 38 +kThemeBrushButtonInactiveLightHighlight = 39 +kThemeBrushButtonPressedDarkShadow = 40 +kThemeBrushButtonPressedDarkHighlight = 41 +kThemeBrushButtonPressedLightShadow = 42 +kThemeBrushButtonPressedLightHighlight = 43 +kThemeBrushBevelActiveLight = 44 +kThemeBrushBevelActiveDark = 45 +kThemeBrushBevelInactiveLight = 46 +kThemeBrushBevelInactiveDark = 47 +kThemeBrushNotificationWindowBackground = 48 +kThemeBrushMovableModalBackground = 49 +kThemeBrushSheetBackgroundOpaque = 50 +kThemeBrushDrawerBackground = 51 +kThemeBrushToolbarBackground = 52 +kThemeBrushSheetBackgroundTransparent = 53 +kThemeBrushMenuBackground = 54 +kThemeBrushMenuBackgroundSelected = 55 +kThemeBrushSheetBackground = kThemeBrushSheetBackgroundOpaque +kThemeBrushBlack = -1 +kThemeBrushWhite = -2 +kThemeBrushPrimaryHighlightColor = -3 +kThemeBrushSecondaryHighlightColor = -4 +kThemeTextColorDialogActive = 1 +kThemeTextColorDialogInactive = 2 +kThemeTextColorAlertActive = 3 +kThemeTextColorAlertInactive = 4 +kThemeTextColorModelessDialogActive = 5 +kThemeTextColorModelessDialogInactive = 6 +kThemeTextColorWindowHeaderActive = 7 +kThemeTextColorWindowHeaderInactive = 8 +kThemeTextColorPlacardActive = 9 +kThemeTextColorPlacardInactive = 10 +kThemeTextColorPlacardPressed = 11 +kThemeTextColorPushButtonActive = 12 +kThemeTextColorPushButtonInactive = 13 +kThemeTextColorPushButtonPressed = 14 +kThemeTextColorBevelButtonActive = 15 +kThemeTextColorBevelButtonInactive = 16 +kThemeTextColorBevelButtonPressed = 17 +kThemeTextColorPopupButtonActive = 18 +kThemeTextColorPopupButtonInactive = 19 +kThemeTextColorPopupButtonPressed = 20 +kThemeTextColorIconLabel = 21 +kThemeTextColorListView = 22 +kThemeTextColorDocumentWindowTitleActive = 23 +kThemeTextColorDocumentWindowTitleInactive = 24 +kThemeTextColorMovableModalWindowTitleActive = 25 +kThemeTextColorMovableModalWindowTitleInactive = 26 +kThemeTextColorUtilityWindowTitleActive = 27 +kThemeTextColorUtilityWindowTitleInactive = 28 +kThemeTextColorPopupWindowTitleActive = 29 +kThemeTextColorPopupWindowTitleInactive = 30 +kThemeTextColorRootMenuActive = 31 +kThemeTextColorRootMenuSelected = 32 +kThemeTextColorRootMenuDisabled = 33 +kThemeTextColorMenuItemActive = 34 +kThemeTextColorMenuItemSelected = 35 +kThemeTextColorMenuItemDisabled = 36 +kThemeTextColorPopupLabelActive = 37 +kThemeTextColorPopupLabelInactive = 38 +kThemeTextColorTabFrontActive = 39 +kThemeTextColorTabNonFrontActive = 40 +kThemeTextColorTabNonFrontPressed = 41 +kThemeTextColorTabFrontInactive = 42 +kThemeTextColorTabNonFrontInactive = 43 +kThemeTextColorIconLabelSelected = 44 +kThemeTextColorBevelButtonStickyActive = 45 +kThemeTextColorBevelButtonStickyInactive = 46 +kThemeTextColorNotification = 47 +kThemeTextColorBlack = -1 +kThemeTextColorWhite = -2 +kThemeStateInactive = 0 +kThemeStateActive = 1 +kThemeStatePressed = 2 +kThemeStateRollover = 6 +kThemeStateUnavailable = 7 +kThemeStateUnavailableInactive = 8 +kThemeStateDisabled = 0 +kThemeStatePressedUp = 2 +kThemeStatePressedDown = 3 +kThemeArrowCursor = 0 +kThemeCopyArrowCursor = 1 +kThemeAliasArrowCursor = 2 +kThemeContextualMenuArrowCursor = 3 +kThemeIBeamCursor = 4 +kThemeCrossCursor = 5 +kThemePlusCursor = 6 +kThemeWatchCursor = 7 +kThemeClosedHandCursor = 8 +kThemeOpenHandCursor = 9 +kThemePointingHandCursor = 10 +kThemeCountingUpHandCursor = 11 +kThemeCountingDownHandCursor = 12 +kThemeCountingUpAndDownHandCursor = 13 +kThemeSpinningCursor = 14 +kThemeResizeLeftCursor = 15 +kThemeResizeRightCursor = 16 +kThemeResizeLeftRightCursor = 17 +kThemeMenuBarNormal = 0 +kThemeMenuBarSelected = 1 +kThemeMenuSquareMenuBar = (1 << 0) +kThemeMenuActive = 0 +kThemeMenuSelected = 1 +kThemeMenuDisabled = 3 +kThemeMenuTypePullDown = 0 +kThemeMenuTypePopUp = 1 +kThemeMenuTypeHierarchical = 2 +kThemeMenuTypeInactive = 0x0100 +kThemeMenuItemPlain = 0 +kThemeMenuItemHierarchical = 1 +kThemeMenuItemScrollUpArrow = 2 +kThemeMenuItemScrollDownArrow = 3 +kThemeMenuItemAtTop = 0x0100 +kThemeMenuItemAtBottom = 0x0200 +kThemeMenuItemHierBackground = 0x0400 +kThemeMenuItemPopUpBackground = 0x0800 +kThemeMenuItemHasIcon = 0x8000 +kThemeMenuItemNoBackground = 0x4000 +kThemeBackgroundTabPane = 1 +kThemeBackgroundPlacard = 2 +kThemeBackgroundWindowHeader = 3 +kThemeBackgroundListViewWindowHeader = 4 +kThemeBackgroundSecondaryGroupBox = 5 +kThemeNameTag = FOUR_CHAR_CODE('name') +kThemeVariantNameTag = FOUR_CHAR_CODE('varn') +kThemeVariantBaseTintTag = FOUR_CHAR_CODE('tint') +kThemeHighlightColorTag = FOUR_CHAR_CODE('hcol') +kThemeScrollBarArrowStyleTag = FOUR_CHAR_CODE('sbar') +kThemeScrollBarThumbStyleTag = FOUR_CHAR_CODE('sbth') +kThemeSoundsEnabledTag = FOUR_CHAR_CODE('snds') +kThemeDblClickCollapseTag = FOUR_CHAR_CODE('coll') +kThemeAppearanceFileNameTag = FOUR_CHAR_CODE('thme') +kThemeSystemFontTag = FOUR_CHAR_CODE('lgsf') +kThemeSmallSystemFontTag = FOUR_CHAR_CODE('smsf') +kThemeViewsFontTag = FOUR_CHAR_CODE('vfnt') +kThemeViewsFontSizeTag = FOUR_CHAR_CODE('vfsz') +kThemeDesktopPatternNameTag = FOUR_CHAR_CODE('patn') +kThemeDesktopPatternTag = FOUR_CHAR_CODE('patt') +kThemeDesktopPictureNameTag = FOUR_CHAR_CODE('dpnm') +kThemeDesktopPictureAliasTag = FOUR_CHAR_CODE('dpal') +kThemeDesktopPictureAlignmentTag = FOUR_CHAR_CODE('dpan') +kThemeHighlightColorNameTag = FOUR_CHAR_CODE('hcnm') +kThemeExamplePictureIDTag = FOUR_CHAR_CODE('epic') +kThemeSoundTrackNameTag = FOUR_CHAR_CODE('sndt') +kThemeSoundMaskTag = FOUR_CHAR_CODE('smsk') +kThemeUserDefinedTag = FOUR_CHAR_CODE('user') +kThemeSmoothFontEnabledTag = FOUR_CHAR_CODE('smoo') +kThemeSmoothFontMinSizeTag = FOUR_CHAR_CODE('smos') +kTiledOnScreen = 1 +kCenterOnScreen = 2 +kFitToScreen = 3 +kFillScreen = 4 +kUseBestGuess = 5 +kThemeCheckBoxClassicX = 0 +kThemeCheckBoxCheckMark = 1 +kThemeScrollBarArrowsSingle = 0 +kThemeScrollBarArrowsLowerRight = 1 +kThemeScrollBarThumbNormal = 0 +kThemeScrollBarThumbProportional = 1 +kThemeSystemFont = 0 +kThemeSmallSystemFont = 1 +kThemeSmallEmphasizedSystemFont = 2 +kThemeViewsFont = 3 +kThemeEmphasizedSystemFont = 4 +kThemeApplicationFont = 5 +kThemeLabelFont = 6 +kThemeMenuTitleFont = 100 +kThemeMenuItemFont = 101 +kThemeMenuItemMarkFont = 102 +kThemeMenuItemCmdKeyFont = 103 +kThemeWindowTitleFont = 104 +kThemePushButtonFont = 105 +kThemeUtilityWindowTitleFont = 106 +kThemeAlertHeaderFont = 107 +kThemeCurrentPortFont = 200 +kThemeTabNonFront = 0 +kThemeTabNonFrontPressed = 1 +kThemeTabNonFrontInactive = 2 +kThemeTabFront = 3 +kThemeTabFrontInactive = 4 +kThemeTabNonFrontUnavailable = 5 +kThemeTabFrontUnavailable = 6 +kThemeTabNorth = 0 +kThemeTabSouth = 1 +kThemeTabEast = 2 +kThemeTabWest = 3 +kThemeSmallTabHeight = 16 +kThemeLargeTabHeight = 21 +kThemeTabPaneOverlap = 3 +kThemeSmallTabHeightMax = 19 +kThemeLargeTabHeightMax = 24 +kThemeMediumScrollBar = 0 +kThemeSmallScrollBar = 1 +kThemeMediumSlider = 2 +kThemeMediumProgressBar = 3 +kThemeMediumIndeterminateBar = 4 +kThemeRelevanceBar = 5 +kThemeSmallSlider = 6 +kThemeLargeProgressBar = 7 +kThemeLargeIndeterminateBar = 8 +kThemeTrackActive = 0 +kThemeTrackDisabled = 1 +kThemeTrackNothingToScroll = 2 +kThemeTrackInactive = 3 +kThemeLeftOutsideArrowPressed = 0x01 +kThemeLeftInsideArrowPressed = 0x02 +kThemeLeftTrackPressed = 0x04 +kThemeThumbPressed = 0x08 +kThemeRightTrackPressed = 0x10 +kThemeRightInsideArrowPressed = 0x20 +kThemeRightOutsideArrowPressed = 0x40 +kThemeTopOutsideArrowPressed = kThemeLeftOutsideArrowPressed +kThemeTopInsideArrowPressed = kThemeLeftInsideArrowPressed +kThemeTopTrackPressed = kThemeLeftTrackPressed +kThemeBottomTrackPressed = kThemeRightTrackPressed +kThemeBottomInsideArrowPressed = kThemeRightInsideArrowPressed +kThemeBottomOutsideArrowPressed = kThemeRightOutsideArrowPressed +kThemeThumbPlain = 0 +kThemeThumbUpward = 1 +kThemeThumbDownward = 2 +kThemeTrackHorizontal = (1 << 0) +kThemeTrackRightToLeft = (1 << 1) +kThemeTrackShowThumb = (1 << 2) +kThemeTrackThumbRgnIsNotGhost = (1 << 3) +kThemeTrackNoScrollBarArrows = (1 << 4) +kThemeWindowHasGrow = (1 << 0) +kThemeWindowHasHorizontalZoom = (1 << 3) +kThemeWindowHasVerticalZoom = (1 << 4) +kThemeWindowHasFullZoom = kThemeWindowHasHorizontalZoom + kThemeWindowHasVerticalZoom +kThemeWindowHasCloseBox = (1 << 5) +kThemeWindowHasCollapseBox = (1 << 6) +kThemeWindowHasTitleText = (1 << 7) +kThemeWindowIsCollapsed = (1 << 8) +kThemeWindowHasDirty = (1 << 9) +kThemeDocumentWindow = 0 +kThemeDialogWindow = 1 +kThemeMovableDialogWindow = 2 +kThemeAlertWindow = 3 +kThemeMovableAlertWindow = 4 +kThemePlainDialogWindow = 5 +kThemeShadowDialogWindow = 6 +kThemePopupWindow = 7 +kThemeUtilityWindow = 8 +kThemeUtilitySideWindow = 9 +kThemeSheetWindow = 10 +kThemeDrawerWindow = 11 +kThemeWidgetCloseBox = 0 +kThemeWidgetZoomBox = 1 +kThemeWidgetCollapseBox = 2 +kThemeWidgetDirtyCloseBox = 6 +kThemeArrowLeft = 0 +kThemeArrowDown = 1 +kThemeArrowRight = 2 +kThemeArrowUp = 3 +kThemeArrow3pt = 0 +kThemeArrow5pt = 1 +kThemeArrow7pt = 2 +kThemeArrow9pt = 3 +kThemeGrowLeft = (1 << 0) +kThemeGrowRight = (1 << 1) +kThemeGrowUp = (1 << 2) +kThemeGrowDown = (1 << 3) +kThemePushButton = 0 +kThemeCheckBox = 1 +kThemeRadioButton = 2 +kThemeBevelButton = 3 +kThemeArrowButton = 4 +kThemePopupButton = 5 +kThemeDisclosureButton = 6 +kThemeIncDecButton = 7 +kThemeSmallBevelButton = 8 +kThemeMediumBevelButton = 3 +kThemeLargeBevelButton = 9 +kThemeListHeaderButton = 10 +kThemeRoundButton = 11 +kThemeLargeRoundButton = 12 +kThemeSmallCheckBox = 13 +kThemeSmallRadioButton = 14 +kThemeRoundedBevelButton = 15 +kThemeNormalCheckBox = kThemeCheckBox +kThemeNormalRadioButton = kThemeRadioButton +kThemeButtonOff = 0 +kThemeButtonOn = 1 +kThemeButtonMixed = 2 +kThemeDisclosureRight = 0 +kThemeDisclosureDown = 1 +kThemeDisclosureLeft = 2 +kThemeAdornmentNone = 0 +kThemeAdornmentDefault = (1 << 0) +kThemeAdornmentFocus = (1 << 2) +kThemeAdornmentRightToLeft = (1 << 4) +kThemeAdornmentDrawIndicatorOnly = (1 << 5) +kThemeAdornmentHeaderButtonLeftNeighborSelected = (1 << 6) +kThemeAdornmentHeaderButtonRightNeighborSelected = (1 << 7) +kThemeAdornmentHeaderButtonSortUp = (1 << 8) +kThemeAdornmentHeaderMenuButton = (1 << 9) +kThemeAdornmentHeaderButtonNoShadow = (1 << 10) +kThemeAdornmentHeaderButtonShadowOnly = (1 << 11) +kThemeAdornmentNoShadow = kThemeAdornmentHeaderButtonNoShadow +kThemeAdornmentShadowOnly = kThemeAdornmentHeaderButtonShadowOnly +kThemeAdornmentArrowLeftArrow = (1 << 6) +kThemeAdornmentArrowDownArrow = (1 << 7) +kThemeAdornmentArrowDoubleArrow = (1 << 8) +kThemeAdornmentArrowUpArrow = (1 << 9) +kThemeNoSounds = 0 +kThemeWindowSoundsMask = (1 << 0) +kThemeMenuSoundsMask = (1 << 1) +kThemeControlSoundsMask = (1 << 2) +kThemeFinderSoundsMask = (1 << 3) +kThemeDragSoundNone = 0 +kThemeDragSoundMoveWindow = FOUR_CHAR_CODE('wmov') +kThemeDragSoundGrowWindow = FOUR_CHAR_CODE('wgro') +kThemeDragSoundMoveUtilWindow = FOUR_CHAR_CODE('umov') +kThemeDragSoundGrowUtilWindow = FOUR_CHAR_CODE('ugro') +kThemeDragSoundMoveDialog = FOUR_CHAR_CODE('dmov') +kThemeDragSoundMoveAlert = FOUR_CHAR_CODE('amov') +kThemeDragSoundMoveIcon = FOUR_CHAR_CODE('imov') +kThemeDragSoundSliderThumb = FOUR_CHAR_CODE('slth') +kThemeDragSoundSliderGhost = FOUR_CHAR_CODE('slgh') +kThemeDragSoundScrollBarThumb = FOUR_CHAR_CODE('sbth') +kThemeDragSoundScrollBarGhost = FOUR_CHAR_CODE('sbgh') +kThemeDragSoundScrollBarArrowDecreasing = FOUR_CHAR_CODE('sbad') +kThemeDragSoundScrollBarArrowIncreasing = FOUR_CHAR_CODE('sbai') +kThemeDragSoundDragging = FOUR_CHAR_CODE('drag') +kThemeSoundNone = 0 +kThemeSoundMenuOpen = FOUR_CHAR_CODE('mnuo') +kThemeSoundMenuClose = FOUR_CHAR_CODE('mnuc') +kThemeSoundMenuItemHilite = FOUR_CHAR_CODE('mnui') +kThemeSoundMenuItemRelease = FOUR_CHAR_CODE('mnus') +kThemeSoundWindowClosePress = FOUR_CHAR_CODE('wclp') +kThemeSoundWindowCloseEnter = FOUR_CHAR_CODE('wcle') +kThemeSoundWindowCloseExit = FOUR_CHAR_CODE('wclx') +kThemeSoundWindowCloseRelease = FOUR_CHAR_CODE('wclr') +kThemeSoundWindowZoomPress = FOUR_CHAR_CODE('wzmp') +kThemeSoundWindowZoomEnter = FOUR_CHAR_CODE('wzme') +kThemeSoundWindowZoomExit = FOUR_CHAR_CODE('wzmx') +kThemeSoundWindowZoomRelease = FOUR_CHAR_CODE('wzmr') +kThemeSoundWindowCollapsePress = FOUR_CHAR_CODE('wcop') +kThemeSoundWindowCollapseEnter = FOUR_CHAR_CODE('wcoe') +kThemeSoundWindowCollapseExit = FOUR_CHAR_CODE('wcox') +kThemeSoundWindowCollapseRelease = FOUR_CHAR_CODE('wcor') +kThemeSoundWindowDragBoundary = FOUR_CHAR_CODE('wdbd') +kThemeSoundUtilWinClosePress = FOUR_CHAR_CODE('uclp') +kThemeSoundUtilWinCloseEnter = FOUR_CHAR_CODE('ucle') +kThemeSoundUtilWinCloseExit = FOUR_CHAR_CODE('uclx') +kThemeSoundUtilWinCloseRelease = FOUR_CHAR_CODE('uclr') +kThemeSoundUtilWinZoomPress = FOUR_CHAR_CODE('uzmp') +kThemeSoundUtilWinZoomEnter = FOUR_CHAR_CODE('uzme') +kThemeSoundUtilWinZoomExit = FOUR_CHAR_CODE('uzmx') +kThemeSoundUtilWinZoomRelease = FOUR_CHAR_CODE('uzmr') +kThemeSoundUtilWinCollapsePress = FOUR_CHAR_CODE('ucop') +kThemeSoundUtilWinCollapseEnter = FOUR_CHAR_CODE('ucoe') +kThemeSoundUtilWinCollapseExit = FOUR_CHAR_CODE('ucox') +kThemeSoundUtilWinCollapseRelease = FOUR_CHAR_CODE('ucor') +kThemeSoundUtilWinDragBoundary = FOUR_CHAR_CODE('udbd') +kThemeSoundWindowOpen = FOUR_CHAR_CODE('wopn') +kThemeSoundWindowClose = FOUR_CHAR_CODE('wcls') +kThemeSoundWindowZoomIn = FOUR_CHAR_CODE('wzmi') +kThemeSoundWindowZoomOut = FOUR_CHAR_CODE('wzmo') +kThemeSoundWindowCollapseUp = FOUR_CHAR_CODE('wcol') +kThemeSoundWindowCollapseDown = FOUR_CHAR_CODE('wexp') +kThemeSoundWindowActivate = FOUR_CHAR_CODE('wact') +kThemeSoundUtilWindowOpen = FOUR_CHAR_CODE('uopn') +kThemeSoundUtilWindowClose = FOUR_CHAR_CODE('ucls') +kThemeSoundUtilWindowZoomIn = FOUR_CHAR_CODE('uzmi') +kThemeSoundUtilWindowZoomOut = FOUR_CHAR_CODE('uzmo') +kThemeSoundUtilWindowCollapseUp = FOUR_CHAR_CODE('ucol') +kThemeSoundUtilWindowCollapseDown = FOUR_CHAR_CODE('uexp') +kThemeSoundUtilWindowActivate = FOUR_CHAR_CODE('uact') +kThemeSoundDialogOpen = FOUR_CHAR_CODE('dopn') +kThemeSoundDialogClose = FOUR_CHAR_CODE('dlgc') +kThemeSoundAlertOpen = FOUR_CHAR_CODE('aopn') +kThemeSoundAlertClose = FOUR_CHAR_CODE('altc') +kThemeSoundPopupWindowOpen = FOUR_CHAR_CODE('pwop') +kThemeSoundPopupWindowClose = FOUR_CHAR_CODE('pwcl') +kThemeSoundButtonPress = FOUR_CHAR_CODE('btnp') +kThemeSoundButtonEnter = FOUR_CHAR_CODE('btne') +kThemeSoundButtonExit = FOUR_CHAR_CODE('btnx') +kThemeSoundButtonRelease = FOUR_CHAR_CODE('btnr') +kThemeSoundDefaultButtonPress = FOUR_CHAR_CODE('dbtp') +kThemeSoundDefaultButtonEnter = FOUR_CHAR_CODE('dbte') +kThemeSoundDefaultButtonExit = FOUR_CHAR_CODE('dbtx') +kThemeSoundDefaultButtonRelease = FOUR_CHAR_CODE('dbtr') +kThemeSoundCancelButtonPress = FOUR_CHAR_CODE('cbtp') +kThemeSoundCancelButtonEnter = FOUR_CHAR_CODE('cbte') +kThemeSoundCancelButtonExit = FOUR_CHAR_CODE('cbtx') +kThemeSoundCancelButtonRelease = FOUR_CHAR_CODE('cbtr') +kThemeSoundCheckboxPress = FOUR_CHAR_CODE('chkp') +kThemeSoundCheckboxEnter = FOUR_CHAR_CODE('chke') +kThemeSoundCheckboxExit = FOUR_CHAR_CODE('chkx') +kThemeSoundCheckboxRelease = FOUR_CHAR_CODE('chkr') +kThemeSoundRadioPress = FOUR_CHAR_CODE('radp') +kThemeSoundRadioEnter = FOUR_CHAR_CODE('rade') +kThemeSoundRadioExit = FOUR_CHAR_CODE('radx') +kThemeSoundRadioRelease = FOUR_CHAR_CODE('radr') +kThemeSoundScrollArrowPress = FOUR_CHAR_CODE('sbap') +kThemeSoundScrollArrowEnter = FOUR_CHAR_CODE('sbae') +kThemeSoundScrollArrowExit = FOUR_CHAR_CODE('sbax') +kThemeSoundScrollArrowRelease = FOUR_CHAR_CODE('sbar') +kThemeSoundScrollEndOfTrack = FOUR_CHAR_CODE('sbte') +kThemeSoundScrollTrackPress = FOUR_CHAR_CODE('sbtp') +kThemeSoundSliderEndOfTrack = FOUR_CHAR_CODE('slte') +kThemeSoundSliderTrackPress = FOUR_CHAR_CODE('sltp') +kThemeSoundBalloonOpen = FOUR_CHAR_CODE('blno') +kThemeSoundBalloonClose = FOUR_CHAR_CODE('blnc') +kThemeSoundBevelPress = FOUR_CHAR_CODE('bevp') +kThemeSoundBevelEnter = FOUR_CHAR_CODE('beve') +kThemeSoundBevelExit = FOUR_CHAR_CODE('bevx') +kThemeSoundBevelRelease = FOUR_CHAR_CODE('bevr') +kThemeSoundLittleArrowUpPress = FOUR_CHAR_CODE('laup') +kThemeSoundLittleArrowDnPress = FOUR_CHAR_CODE('ladp') +kThemeSoundLittleArrowEnter = FOUR_CHAR_CODE('lare') +kThemeSoundLittleArrowExit = FOUR_CHAR_CODE('larx') +kThemeSoundLittleArrowUpRelease = FOUR_CHAR_CODE('laur') +kThemeSoundLittleArrowDnRelease = FOUR_CHAR_CODE('ladr') +kThemeSoundPopupPress = FOUR_CHAR_CODE('popp') +kThemeSoundPopupEnter = FOUR_CHAR_CODE('pope') +kThemeSoundPopupExit = FOUR_CHAR_CODE('popx') +kThemeSoundPopupRelease = FOUR_CHAR_CODE('popr') +kThemeSoundDisclosurePress = FOUR_CHAR_CODE('dscp') +kThemeSoundDisclosureEnter = FOUR_CHAR_CODE('dsce') +kThemeSoundDisclosureExit = FOUR_CHAR_CODE('dscx') +kThemeSoundDisclosureRelease = FOUR_CHAR_CODE('dscr') +kThemeSoundTabPressed = FOUR_CHAR_CODE('tabp') +kThemeSoundTabEnter = FOUR_CHAR_CODE('tabe') +kThemeSoundTabExit = FOUR_CHAR_CODE('tabx') +kThemeSoundTabRelease = FOUR_CHAR_CODE('tabr') +kThemeSoundDragTargetHilite = FOUR_CHAR_CODE('dthi') +kThemeSoundDragTargetUnhilite = FOUR_CHAR_CODE('dtuh') +kThemeSoundDragTargetDrop = FOUR_CHAR_CODE('dtdr') +kThemeSoundEmptyTrash = FOUR_CHAR_CODE('ftrs') +kThemeSoundSelectItem = FOUR_CHAR_CODE('fsel') +kThemeSoundNewItem = FOUR_CHAR_CODE('fnew') +kThemeSoundReceiveDrop = FOUR_CHAR_CODE('fdrp') +kThemeSoundCopyDone = FOUR_CHAR_CODE('fcpd') +kThemeSoundResolveAlias = FOUR_CHAR_CODE('fral') +kThemeSoundLaunchApp = FOUR_CHAR_CODE('flap') +kThemeSoundDiskInsert = FOUR_CHAR_CODE('dski') +kThemeSoundDiskEject = FOUR_CHAR_CODE('dske') +kThemeSoundFinderDragOnIcon = FOUR_CHAR_CODE('fdon') +kThemeSoundFinderDragOffIcon = FOUR_CHAR_CODE('fdof') +kThemePopupTabNormalPosition = 0 +kThemePopupTabCenterOnWindow = 1 +kThemePopupTabCenterOnOffset = 2 +kThemeMetricScrollBarWidth = 0 +kThemeMetricSmallScrollBarWidth = 1 +kThemeMetricCheckBoxHeight = 2 +kThemeMetricRadioButtonHeight = 3 +kThemeMetricEditTextWhitespace = 4 +kThemeMetricEditTextFrameOutset = 5 +kThemeMetricListBoxFrameOutset = 6 +kThemeMetricFocusRectOutset = 7 +kThemeMetricImageWellThickness = 8 +kThemeMetricScrollBarOverlap = 9 +kThemeMetricLargeTabHeight = 10 +kThemeMetricLargeTabCapsWidth = 11 +kThemeMetricTabFrameOverlap = 12 +kThemeMetricTabIndentOrStyle = 13 +kThemeMetricTabOverlap = 14 +kThemeMetricSmallTabHeight = 15 +kThemeMetricSmallTabCapsWidth = 16 +kThemeMetricDisclosureButtonHeight = 17 +kThemeMetricRoundButtonSize = 18 +kThemeMetricPushButtonHeight = 19 +kThemeMetricListHeaderHeight = 20 +kThemeMetricSmallCheckBoxHeight = 21 +kThemeMetricDisclosureButtonWidth = 22 +kThemeMetricSmallDisclosureButtonHeight = 23 +kThemeMetricSmallDisclosureButtonWidth = 24 +kThemeMetricDisclosureTriangleHeight = 25 +kThemeMetricDisclosureTriangleWidth = 26 +kThemeMetricLittleArrowsHeight = 27 +kThemeMetricLittleArrowsWidth = 28 +kThemeMetricPaneSplitterHeight = 29 +kThemeMetricPopupButtonHeight = 30 +kThemeMetricSmallPopupButtonHeight = 31 +kThemeMetricLargeProgressBarThickness = 32 +kThemeMetricPullDownHeight = 33 +kThemeMetricSmallPullDownHeight = 34 +kThemeMetricSmallPushButtonHeight = 35 +kThemeMetricSmallRadioButtonHeight = 36 +kThemeMetricRelevanceIndicatorHeight = 37 +kThemeMetricResizeControlHeight = 38 +kThemeMetricSmallResizeControlHeight = 39 +kThemeMetricLargeRoundButtonSize = 40 +kThemeMetricHSliderHeight = 41 +kThemeMetricHSliderTickHeight = 42 +kThemeMetricSmallHSliderHeight = 43 +kThemeMetricSmallHSliderTickHeight = 44 +kThemeMetricVSliderWidth = 45 +kThemeMetricVSliderTickWidth = 46 +kThemeMetricSmallVSliderWidth = 47 +kThemeMetricSmallVSliderTickWidth = 48 +kThemeMetricTitleBarControlsHeight = 49 +kThemeMetricCheckBoxWidth = 50 +kThemeMetricSmallCheckBoxWidth = 51 +kThemeMetricRadioButtonWidth = 52 +kThemeMetricSmallRadioButtonWidth = 53 +kThemeMetricSmallHSliderMinThumbWidth = 54 +kThemeMetricSmallVSliderMinThumbHeight = 55 +kThemeMetricSmallHSliderTickOffset = 56 +kThemeMetricSmallVSliderTickOffset = 57 +kThemeMetricNormalProgressBarThickness = 58 +kThemeMetricProgressBarShadowOutset = 59 +kThemeMetricSmallProgressBarShadowOutset = 60 +kThemeMetricPrimaryGroupBoxContentInset = 61 +kThemeMetricSecondaryGroupBoxContentInset = 62 +kThemeMetricMenuMarkColumnWidth = 63 +kThemeMetricMenuExcludedMarkColumnWidth = 64 +kThemeMetricMenuMarkIndent = 65 +kThemeMetricMenuTextLeadingEdgeMargin = 66 +kThemeMetricMenuTextTrailingEdgeMargin = 67 +kThemeMetricMenuIndentWidth = 68 +kThemeMetricMenuIconTrailingEdgeMargin = 69 +# appearanceBadBrushIndexErr = themeInvalidBrushErr +# appearanceProcessRegisteredErr = themeProcessRegisteredErr +# appearanceProcessNotRegisteredErr = themeProcessNotRegisteredErr +# appearanceBadTextColorIndexErr = themeBadTextColorErr +# appearanceThemeHasNoAccents = themeHasNoAccentsErr +# appearanceBadCursorIndexErr = themeBadCursorIndexErr +kThemeActiveDialogBackgroundBrush = kThemeBrushDialogBackgroundActive +kThemeInactiveDialogBackgroundBrush = kThemeBrushDialogBackgroundInactive +kThemeActiveAlertBackgroundBrush = kThemeBrushAlertBackgroundActive +kThemeInactiveAlertBackgroundBrush = kThemeBrushAlertBackgroundInactive +kThemeActiveModelessDialogBackgroundBrush = kThemeBrushModelessDialogBackgroundActive +kThemeInactiveModelessDialogBackgroundBrush = kThemeBrushModelessDialogBackgroundInactive +kThemeActiveUtilityWindowBackgroundBrush = kThemeBrushUtilityWindowBackgroundActive +kThemeInactiveUtilityWindowBackgroundBrush = kThemeBrushUtilityWindowBackgroundInactive +kThemeListViewSortColumnBackgroundBrush = kThemeBrushListViewSortColumnBackground +kThemeListViewBackgroundBrush = kThemeBrushListViewBackground +kThemeIconLabelBackgroundBrush = kThemeBrushIconLabelBackground +kThemeListViewSeparatorBrush = kThemeBrushListViewSeparator +kThemeChasingArrowsBrush = kThemeBrushChasingArrows +kThemeDragHiliteBrush = kThemeBrushDragHilite +kThemeDocumentWindowBackgroundBrush = kThemeBrushDocumentWindowBackground +kThemeFinderWindowBackgroundBrush = kThemeBrushFinderWindowBackground +kThemeActiveScrollBarDelimiterBrush = kThemeBrushScrollBarDelimiterActive +kThemeInactiveScrollBarDelimiterBrush = kThemeBrushScrollBarDelimiterInactive +kThemeFocusHighlightBrush = kThemeBrushFocusHighlight +kThemeActivePopupArrowBrush = kThemeBrushPopupArrowActive +kThemePressedPopupArrowBrush = kThemeBrushPopupArrowPressed +kThemeInactivePopupArrowBrush = kThemeBrushPopupArrowInactive +kThemeAppleGuideCoachmarkBrush = kThemeBrushAppleGuideCoachmark +kThemeActiveDialogTextColor = kThemeTextColorDialogActive +kThemeInactiveDialogTextColor = kThemeTextColorDialogInactive +kThemeActiveAlertTextColor = kThemeTextColorAlertActive +kThemeInactiveAlertTextColor = kThemeTextColorAlertInactive +kThemeActiveModelessDialogTextColor = kThemeTextColorModelessDialogActive +kThemeInactiveModelessDialogTextColor = kThemeTextColorModelessDialogInactive +kThemeActiveWindowHeaderTextColor = kThemeTextColorWindowHeaderActive +kThemeInactiveWindowHeaderTextColor = kThemeTextColorWindowHeaderInactive +kThemeActivePlacardTextColor = kThemeTextColorPlacardActive +kThemeInactivePlacardTextColor = kThemeTextColorPlacardInactive +kThemePressedPlacardTextColor = kThemeTextColorPlacardPressed +kThemeActivePushButtonTextColor = kThemeTextColorPushButtonActive +kThemeInactivePushButtonTextColor = kThemeTextColorPushButtonInactive +kThemePressedPushButtonTextColor = kThemeTextColorPushButtonPressed +kThemeActiveBevelButtonTextColor = kThemeTextColorBevelButtonActive +kThemeInactiveBevelButtonTextColor = kThemeTextColorBevelButtonInactive +kThemePressedBevelButtonTextColor = kThemeTextColorBevelButtonPressed +kThemeActivePopupButtonTextColor = kThemeTextColorPopupButtonActive +kThemeInactivePopupButtonTextColor = kThemeTextColorPopupButtonInactive +kThemePressedPopupButtonTextColor = kThemeTextColorPopupButtonPressed +kThemeIconLabelTextColor = kThemeTextColorIconLabel +kThemeListViewTextColor = kThemeTextColorListView +kThemeActiveDocumentWindowTitleTextColor = kThemeTextColorDocumentWindowTitleActive +kThemeInactiveDocumentWindowTitleTextColor = kThemeTextColorDocumentWindowTitleInactive +kThemeActiveMovableModalWindowTitleTextColor = kThemeTextColorMovableModalWindowTitleActive +kThemeInactiveMovableModalWindowTitleTextColor = kThemeTextColorMovableModalWindowTitleInactive +kThemeActiveUtilityWindowTitleTextColor = kThemeTextColorUtilityWindowTitleActive +kThemeInactiveUtilityWindowTitleTextColor = kThemeTextColorUtilityWindowTitleInactive +kThemeActivePopupWindowTitleColor = kThemeTextColorPopupWindowTitleActive +kThemeInactivePopupWindowTitleColor = kThemeTextColorPopupWindowTitleInactive +kThemeActiveRootMenuTextColor = kThemeTextColorRootMenuActive +kThemeSelectedRootMenuTextColor = kThemeTextColorRootMenuSelected +kThemeDisabledRootMenuTextColor = kThemeTextColorRootMenuDisabled +kThemeActiveMenuItemTextColor = kThemeTextColorMenuItemActive +kThemeSelectedMenuItemTextColor = kThemeTextColorMenuItemSelected +kThemeDisabledMenuItemTextColor = kThemeTextColorMenuItemDisabled +kThemeActivePopupLabelTextColor = kThemeTextColorPopupLabelActive +kThemeInactivePopupLabelTextColor = kThemeTextColorPopupLabelInactive +kAEThemeSwitch = kAEAppearanceChanged +kThemeNoAdornment = kThemeAdornmentNone +kThemeDefaultAdornment = kThemeAdornmentDefault +kThemeFocusAdornment = kThemeAdornmentFocus +kThemeRightToLeftAdornment = kThemeAdornmentRightToLeft +kThemeDrawIndicatorOnly = kThemeAdornmentDrawIndicatorOnly +kThemeBrushPassiveAreaFill = kThemeBrushStaticAreaFill +kThemeMetricCheckBoxGlyphHeight = kThemeMetricCheckBoxHeight +kThemeMetricRadioButtonGlyphHeight = kThemeMetricRadioButtonHeight +kThemeMetricDisclosureButtonSize = kThemeMetricDisclosureButtonHeight +kThemeMetricBestListHeaderHeight = kThemeMetricListHeaderHeight +kThemeMetricSmallProgressBarThickness = kThemeMetricNormalProgressBarThickness +kThemeMetricProgressBarThickness = kThemeMetricLargeProgressBarThickness +kThemeScrollBar = kThemeMediumScrollBar +kThemeSlider = kThemeMediumSlider +kThemeProgressBar = kThemeMediumProgressBar +kThemeIndeterminateBar = kThemeMediumIndeterminateBar diff --git a/sys/lib/python/plat-mac/Carbon/AppleEvents.py b/sys/lib/python/plat-mac/Carbon/AppleEvents.py new file mode 100644 index 000000000..e23c0797a --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/AppleEvents.py @@ -0,0 +1,960 @@ +# Generated from 'AEDataModel.h' + +def FOUR_CHAR_CODE(x): return x +typeBoolean = FOUR_CHAR_CODE('bool') +typeChar = FOUR_CHAR_CODE('TEXT') +typeSInt16 = FOUR_CHAR_CODE('shor') +typeSInt32 = FOUR_CHAR_CODE('long') +typeUInt32 = FOUR_CHAR_CODE('magn') +typeSInt64 = FOUR_CHAR_CODE('comp') +typeIEEE32BitFloatingPoint = FOUR_CHAR_CODE('sing') +typeIEEE64BitFloatingPoint = FOUR_CHAR_CODE('doub') +type128BitFloatingPoint = FOUR_CHAR_CODE('ldbl') +typeDecimalStruct = FOUR_CHAR_CODE('decm') +typeSMInt = typeSInt16 +typeShortInteger = typeSInt16 +typeInteger = typeSInt32 +typeLongInteger = typeSInt32 +typeMagnitude = typeUInt32 +typeComp = typeSInt64 +typeSMFloat = typeIEEE32BitFloatingPoint +typeShortFloat = typeIEEE32BitFloatingPoint +typeFloat = typeIEEE64BitFloatingPoint +typeLongFloat = typeIEEE64BitFloatingPoint +typeExtended = FOUR_CHAR_CODE('exte') +typeAEList = FOUR_CHAR_CODE('list') +typeAERecord = FOUR_CHAR_CODE('reco') +typeAppleEvent = FOUR_CHAR_CODE('aevt') +typeEventRecord = FOUR_CHAR_CODE('evrc') +typeTrue = FOUR_CHAR_CODE('true') +typeFalse = FOUR_CHAR_CODE('fals') +typeAlias = FOUR_CHAR_CODE('alis') +typeEnumerated = FOUR_CHAR_CODE('enum') +typeType = FOUR_CHAR_CODE('type') +typeAppParameters = FOUR_CHAR_CODE('appa') +typeProperty = FOUR_CHAR_CODE('prop') +typeFSS = FOUR_CHAR_CODE('fss ') +typeFSRef = FOUR_CHAR_CODE('fsrf') +typeFileURL = FOUR_CHAR_CODE('furl') +typeKeyword = FOUR_CHAR_CODE('keyw') +typeSectionH = FOUR_CHAR_CODE('sect') +typeWildCard = FOUR_CHAR_CODE('****') +typeApplSignature = FOUR_CHAR_CODE('sign') +typeQDRectangle = FOUR_CHAR_CODE('qdrt') +typeFixed = FOUR_CHAR_CODE('fixd') +typeProcessSerialNumber = FOUR_CHAR_CODE('psn ') +typeApplicationURL = FOUR_CHAR_CODE('aprl') +typeNull = FOUR_CHAR_CODE('null') +typeSessionID = FOUR_CHAR_CODE('ssid') +typeTargetID = FOUR_CHAR_CODE('targ') +typeDispatcherID = FOUR_CHAR_CODE('dspt') +keyTransactionIDAttr = FOUR_CHAR_CODE('tran') +keyReturnIDAttr = FOUR_CHAR_CODE('rtid') +keyEventClassAttr = FOUR_CHAR_CODE('evcl') +keyEventIDAttr = FOUR_CHAR_CODE('evid') +keyAddressAttr = FOUR_CHAR_CODE('addr') +keyOptionalKeywordAttr = FOUR_CHAR_CODE('optk') +keyTimeoutAttr = FOUR_CHAR_CODE('timo') +keyInteractLevelAttr = FOUR_CHAR_CODE('inte') +keyEventSourceAttr = FOUR_CHAR_CODE('esrc') +keyMissedKeywordAttr = FOUR_CHAR_CODE('miss') +keyOriginalAddressAttr = FOUR_CHAR_CODE('from') +keyAcceptTimeoutAttr = FOUR_CHAR_CODE('actm') +kAEDescListFactorNone = 0 +kAEDescListFactorType = 4 +kAEDescListFactorTypeAndSize = 8 +kAutoGenerateReturnID = -1 +kAnyTransactionID = 0 +kAEDataArray = 0 +kAEPackedArray = 1 +kAEDescArray = 3 +kAEKeyDescArray = 4 +kAEHandleArray = 2 +kAENormalPriority = 0x00000000 +kAEHighPriority = 0x00000001 +kAENoReply = 0x00000001 +kAEQueueReply = 0x00000002 +kAEWaitReply = 0x00000003 +kAEDontReconnect = 0x00000080 +kAEWantReceipt = 0x00000200 +kAENeverInteract = 0x00000010 +kAECanInteract = 0x00000020 +kAEAlwaysInteract = 0x00000030 +kAECanSwitchLayer = 0x00000040 +kAEDontRecord = 0x00001000 +kAEDontExecute = 0x00002000 +kAEProcessNonReplyEvents = 0x00008000 +kAEDefaultTimeout = -1 +kNoTimeOut = -2 +kAEInteractWithSelf = 0 +kAEInteractWithLocal = 1 +kAEInteractWithAll = 2 +kAEDoNotIgnoreHandler = 0x00000000 +kAEIgnoreAppPhacHandler = 0x00000001 +kAEIgnoreAppEventHandler = 0x00000002 +kAEIgnoreSysPhacHandler = 0x00000004 +kAEIgnoreSysEventHandler = 0x00000008 +kAEIngoreBuiltInEventHandler = 0x00000010 +# kAEDontDisposeOnResume = (long)0x80000000 +kAENoDispatch = 0 +# kAEUseStandardDispatch = (long)0xFFFFFFFF +keyDirectObject = FOUR_CHAR_CODE('----') +keyErrorNumber = FOUR_CHAR_CODE('errn') +keyErrorString = FOUR_CHAR_CODE('errs') +keyProcessSerialNumber = FOUR_CHAR_CODE('psn ') +keyPreDispatch = FOUR_CHAR_CODE('phac') +keySelectProc = FOUR_CHAR_CODE('selh') +keyAERecorderCount = FOUR_CHAR_CODE('recr') +keyAEVersion = FOUR_CHAR_CODE('vers') +kCoreEventClass = FOUR_CHAR_CODE('aevt') +kAEOpenApplication = FOUR_CHAR_CODE('oapp') +kAEOpenDocuments = FOUR_CHAR_CODE('odoc') +kAEPrintDocuments = FOUR_CHAR_CODE('pdoc') +kAEQuitApplication = FOUR_CHAR_CODE('quit') +kAEAnswer = FOUR_CHAR_CODE('ansr') +kAEApplicationDied = FOUR_CHAR_CODE('obit') +kAEShowPreferences = FOUR_CHAR_CODE('pref') +kAEStartRecording = FOUR_CHAR_CODE('reca') +kAEStopRecording = FOUR_CHAR_CODE('recc') +kAENotifyStartRecording = FOUR_CHAR_CODE('rec1') +kAENotifyStopRecording = FOUR_CHAR_CODE('rec0') +kAENotifyRecording = FOUR_CHAR_CODE('recr') +kAEUnknownSource = 0 +kAEDirectCall = 1 +kAESameProcess = 2 +kAELocalProcess = 3 +kAERemoteProcess = 4 +cAEList = FOUR_CHAR_CODE('list') +cApplication = FOUR_CHAR_CODE('capp') +cArc = FOUR_CHAR_CODE('carc') +cBoolean = FOUR_CHAR_CODE('bool') +cCell = FOUR_CHAR_CODE('ccel') +cChar = FOUR_CHAR_CODE('cha ') +cColorTable = FOUR_CHAR_CODE('clrt') +cColumn = FOUR_CHAR_CODE('ccol') +cDocument = FOUR_CHAR_CODE('docu') +cDrawingArea = FOUR_CHAR_CODE('cdrw') +cEnumeration = FOUR_CHAR_CODE('enum') +cFile = FOUR_CHAR_CODE('file') +cFixed = FOUR_CHAR_CODE('fixd') +cFixedPoint = FOUR_CHAR_CODE('fpnt') +cFixedRectangle = FOUR_CHAR_CODE('frct') +cGraphicLine = FOUR_CHAR_CODE('glin') +cGraphicObject = FOUR_CHAR_CODE('cgob') +cGraphicShape = FOUR_CHAR_CODE('cgsh') +cGraphicText = FOUR_CHAR_CODE('cgtx') +cGroupedGraphic = FOUR_CHAR_CODE('cpic') +cInsertionLoc = FOUR_CHAR_CODE('insl') +cInsertionPoint = FOUR_CHAR_CODE('cins') +cIntlText = FOUR_CHAR_CODE('itxt') +cIntlWritingCode = FOUR_CHAR_CODE('intl') +cItem = FOUR_CHAR_CODE('citm') +cLine = FOUR_CHAR_CODE('clin') +cLongDateTime = FOUR_CHAR_CODE('ldt ') +cLongFixed = FOUR_CHAR_CODE('lfxd') +cLongFixedPoint = FOUR_CHAR_CODE('lfpt') +cLongFixedRectangle = FOUR_CHAR_CODE('lfrc') +cLongInteger = FOUR_CHAR_CODE('long') +cLongPoint = FOUR_CHAR_CODE('lpnt') +cLongRectangle = FOUR_CHAR_CODE('lrct') +cMachineLoc = FOUR_CHAR_CODE('mLoc') +cMenu = FOUR_CHAR_CODE('cmnu') +cMenuItem = FOUR_CHAR_CODE('cmen') +cObject = FOUR_CHAR_CODE('cobj') +cObjectSpecifier = FOUR_CHAR_CODE('obj ') +cOpenableObject = FOUR_CHAR_CODE('coob') +cOval = FOUR_CHAR_CODE('covl') +cParagraph = FOUR_CHAR_CODE('cpar') +cPICT = FOUR_CHAR_CODE('PICT') +cPixel = FOUR_CHAR_CODE('cpxl') +cPixelMap = FOUR_CHAR_CODE('cpix') +cPolygon = FOUR_CHAR_CODE('cpgn') +cProperty = FOUR_CHAR_CODE('prop') +cQDPoint = FOUR_CHAR_CODE('QDpt') +cQDRectangle = FOUR_CHAR_CODE('qdrt') +cRectangle = FOUR_CHAR_CODE('crec') +cRGBColor = FOUR_CHAR_CODE('cRGB') +cRotation = FOUR_CHAR_CODE('trot') +cRoundedRectangle = FOUR_CHAR_CODE('crrc') +cRow = FOUR_CHAR_CODE('crow') +cSelection = FOUR_CHAR_CODE('csel') +cShortInteger = FOUR_CHAR_CODE('shor') +cTable = FOUR_CHAR_CODE('ctbl') +cText = FOUR_CHAR_CODE('ctxt') +cTextFlow = FOUR_CHAR_CODE('cflo') +cTextStyles = FOUR_CHAR_CODE('tsty') +cType = FOUR_CHAR_CODE('type') +cVersion = FOUR_CHAR_CODE('vers') +cWindow = FOUR_CHAR_CODE('cwin') +cWord = FOUR_CHAR_CODE('cwor') +enumArrows = FOUR_CHAR_CODE('arro') +enumJustification = FOUR_CHAR_CODE('just') +enumKeyForm = FOUR_CHAR_CODE('kfrm') +enumPosition = FOUR_CHAR_CODE('posi') +enumProtection = FOUR_CHAR_CODE('prtn') +enumQuality = FOUR_CHAR_CODE('qual') +enumSaveOptions = FOUR_CHAR_CODE('savo') +enumStyle = FOUR_CHAR_CODE('styl') +enumTransferMode = FOUR_CHAR_CODE('tran') +formUniqueID = FOUR_CHAR_CODE('ID ') +kAEAbout = FOUR_CHAR_CODE('abou') +kAEAfter = FOUR_CHAR_CODE('afte') +kAEAliasSelection = FOUR_CHAR_CODE('sali') +kAEAllCaps = FOUR_CHAR_CODE('alcp') +kAEArrowAtEnd = FOUR_CHAR_CODE('aren') +kAEArrowAtStart = FOUR_CHAR_CODE('arst') +kAEArrowBothEnds = FOUR_CHAR_CODE('arbo') +kAEAsk = FOUR_CHAR_CODE('ask ') +kAEBefore = FOUR_CHAR_CODE('befo') +kAEBeginning = FOUR_CHAR_CODE('bgng') +kAEBeginsWith = FOUR_CHAR_CODE('bgwt') +kAEBeginTransaction = FOUR_CHAR_CODE('begi') +kAEBold = FOUR_CHAR_CODE('bold') +kAECaseSensEquals = FOUR_CHAR_CODE('cseq') +kAECentered = FOUR_CHAR_CODE('cent') +kAEChangeView = FOUR_CHAR_CODE('view') +kAEClone = FOUR_CHAR_CODE('clon') +kAEClose = FOUR_CHAR_CODE('clos') +kAECondensed = FOUR_CHAR_CODE('cond') +kAEContains = FOUR_CHAR_CODE('cont') +kAECopy = FOUR_CHAR_CODE('copy') +kAECoreSuite = FOUR_CHAR_CODE('core') +kAECountElements = FOUR_CHAR_CODE('cnte') +kAECreateElement = FOUR_CHAR_CODE('crel') +kAECreatePublisher = FOUR_CHAR_CODE('cpub') +kAECut = FOUR_CHAR_CODE('cut ') +kAEDelete = FOUR_CHAR_CODE('delo') +kAEDoObjectsExist = FOUR_CHAR_CODE('doex') +kAEDoScript = FOUR_CHAR_CODE('dosc') +kAEDrag = FOUR_CHAR_CODE('drag') +kAEDuplicateSelection = FOUR_CHAR_CODE('sdup') +kAEEditGraphic = FOUR_CHAR_CODE('edit') +kAEEmptyTrash = FOUR_CHAR_CODE('empt') +kAEEnd = FOUR_CHAR_CODE('end ') +kAEEndsWith = FOUR_CHAR_CODE('ends') +kAEEndTransaction = FOUR_CHAR_CODE('endt') +kAEEquals = FOUR_CHAR_CODE('= ') +kAEExpanded = FOUR_CHAR_CODE('pexp') +kAEFast = FOUR_CHAR_CODE('fast') +kAEFinderEvents = FOUR_CHAR_CODE('FNDR') +kAEFormulaProtect = FOUR_CHAR_CODE('fpro') +kAEFullyJustified = FOUR_CHAR_CODE('full') +kAEGetClassInfo = FOUR_CHAR_CODE('qobj') +kAEGetData = FOUR_CHAR_CODE('getd') +kAEGetDataSize = FOUR_CHAR_CODE('dsiz') +kAEGetEventInfo = FOUR_CHAR_CODE('gtei') +kAEGetInfoSelection = FOUR_CHAR_CODE('sinf') +kAEGetPrivilegeSelection = FOUR_CHAR_CODE('sprv') +kAEGetSuiteInfo = FOUR_CHAR_CODE('gtsi') +kAEGreaterThan = FOUR_CHAR_CODE('> ') +kAEGreaterThanEquals = FOUR_CHAR_CODE('>= ') +kAEGrow = FOUR_CHAR_CODE('grow') +kAEHidden = FOUR_CHAR_CODE('hidn') +kAEHiQuality = FOUR_CHAR_CODE('hiqu') +kAEImageGraphic = FOUR_CHAR_CODE('imgr') +kAEIsUniform = FOUR_CHAR_CODE('isun') +kAEItalic = FOUR_CHAR_CODE('ital') +kAELeftJustified = FOUR_CHAR_CODE('left') +kAELessThan = FOUR_CHAR_CODE('< ') +kAELessThanEquals = FOUR_CHAR_CODE('<= ') +kAELowercase = FOUR_CHAR_CODE('lowc') +kAEMakeObjectsVisible = FOUR_CHAR_CODE('mvis') +kAEMiscStandards = FOUR_CHAR_CODE('misc') +kAEModifiable = FOUR_CHAR_CODE('modf') +kAEMove = FOUR_CHAR_CODE('move') +kAENo = FOUR_CHAR_CODE('no ') +kAENoArrow = FOUR_CHAR_CODE('arno') +kAENonmodifiable = FOUR_CHAR_CODE('nmod') +kAEOpen = FOUR_CHAR_CODE('odoc') +kAEOpenSelection = FOUR_CHAR_CODE('sope') +kAEOutline = FOUR_CHAR_CODE('outl') +kAEPageSetup = FOUR_CHAR_CODE('pgsu') +kAEPaste = FOUR_CHAR_CODE('past') +kAEPlain = FOUR_CHAR_CODE('plan') +kAEPrint = FOUR_CHAR_CODE('pdoc') +kAEPrintSelection = FOUR_CHAR_CODE('spri') +kAEPrintWindow = FOUR_CHAR_CODE('pwin') +kAEPutAwaySelection = FOUR_CHAR_CODE('sput') +kAEQDAddOver = FOUR_CHAR_CODE('addo') +kAEQDAddPin = FOUR_CHAR_CODE('addp') +kAEQDAdMax = FOUR_CHAR_CODE('admx') +kAEQDAdMin = FOUR_CHAR_CODE('admn') +kAEQDBic = FOUR_CHAR_CODE('bic ') +kAEQDBlend = FOUR_CHAR_CODE('blnd') +kAEQDCopy = FOUR_CHAR_CODE('cpy ') +kAEQDNotBic = FOUR_CHAR_CODE('nbic') +kAEQDNotCopy = FOUR_CHAR_CODE('ncpy') +kAEQDNotOr = FOUR_CHAR_CODE('ntor') +kAEQDNotXor = FOUR_CHAR_CODE('nxor') +kAEQDOr = FOUR_CHAR_CODE('or ') +kAEQDSubOver = FOUR_CHAR_CODE('subo') +kAEQDSubPin = FOUR_CHAR_CODE('subp') +kAEQDSupplementalSuite = FOUR_CHAR_CODE('qdsp') +kAEQDXor = FOUR_CHAR_CODE('xor ') +kAEQuickdrawSuite = FOUR_CHAR_CODE('qdrw') +kAEQuitAll = FOUR_CHAR_CODE('quia') +kAERedo = FOUR_CHAR_CODE('redo') +kAERegular = FOUR_CHAR_CODE('regl') +kAEReopenApplication = FOUR_CHAR_CODE('rapp') +kAEReplace = FOUR_CHAR_CODE('rplc') +kAERequiredSuite = FOUR_CHAR_CODE('reqd') +kAERestart = FOUR_CHAR_CODE('rest') +kAERevealSelection = FOUR_CHAR_CODE('srev') +kAERevert = FOUR_CHAR_CODE('rvrt') +kAERightJustified = FOUR_CHAR_CODE('rght') +kAESave = FOUR_CHAR_CODE('save') +kAESelect = FOUR_CHAR_CODE('slct') +kAESetData = FOUR_CHAR_CODE('setd') +kAESetPosition = FOUR_CHAR_CODE('posn') +kAEShadow = FOUR_CHAR_CODE('shad') +kAEShowClipboard = FOUR_CHAR_CODE('shcl') +kAEShutDown = FOUR_CHAR_CODE('shut') +kAESleep = FOUR_CHAR_CODE('slep') +kAESmallCaps = FOUR_CHAR_CODE('smcp') +kAESpecialClassProperties = FOUR_CHAR_CODE('c@#!') +kAEStrikethrough = FOUR_CHAR_CODE('strk') +kAESubscript = FOUR_CHAR_CODE('sbsc') +kAESuperscript = FOUR_CHAR_CODE('spsc') +kAETableSuite = FOUR_CHAR_CODE('tbls') +kAETextSuite = FOUR_CHAR_CODE('TEXT') +kAETransactionTerminated = FOUR_CHAR_CODE('ttrm') +kAEUnderline = FOUR_CHAR_CODE('undl') +kAEUndo = FOUR_CHAR_CODE('undo') +kAEWholeWordEquals = FOUR_CHAR_CODE('wweq') +kAEYes = FOUR_CHAR_CODE('yes ') +kAEZoom = FOUR_CHAR_CODE('zoom') +kAEMouseClass = FOUR_CHAR_CODE('mous') +kAEDown = FOUR_CHAR_CODE('down') +kAEUp = FOUR_CHAR_CODE('up ') +kAEMoved = FOUR_CHAR_CODE('move') +kAEStoppedMoving = FOUR_CHAR_CODE('stop') +kAEWindowClass = FOUR_CHAR_CODE('wind') +kAEUpdate = FOUR_CHAR_CODE('updt') +kAEActivate = FOUR_CHAR_CODE('actv') +kAEDeactivate = FOUR_CHAR_CODE('dact') +kAECommandClass = FOUR_CHAR_CODE('cmnd') +kAEKeyClass = FOUR_CHAR_CODE('keyc') +kAERawKey = FOUR_CHAR_CODE('rkey') +kAEVirtualKey = FOUR_CHAR_CODE('keyc') +kAENavigationKey = FOUR_CHAR_CODE('nave') +kAEAutoDown = FOUR_CHAR_CODE('auto') +kAEApplicationClass = FOUR_CHAR_CODE('appl') +kAESuspend = FOUR_CHAR_CODE('susp') +kAEResume = FOUR_CHAR_CODE('rsme') +kAEDiskEvent = FOUR_CHAR_CODE('disk') +kAENullEvent = FOUR_CHAR_CODE('null') +kAEWakeUpEvent = FOUR_CHAR_CODE('wake') +kAEScrapEvent = FOUR_CHAR_CODE('scrp') +kAEHighLevel = FOUR_CHAR_CODE('high') +keyAEAngle = FOUR_CHAR_CODE('kang') +keyAEArcAngle = FOUR_CHAR_CODE('parc') +keyAEBaseAddr = FOUR_CHAR_CODE('badd') +keyAEBestType = FOUR_CHAR_CODE('pbst') +keyAEBgndColor = FOUR_CHAR_CODE('kbcl') +keyAEBgndPattern = FOUR_CHAR_CODE('kbpt') +keyAEBounds = FOUR_CHAR_CODE('pbnd') +keyAECellList = FOUR_CHAR_CODE('kclt') +keyAEClassID = FOUR_CHAR_CODE('clID') +keyAEColor = FOUR_CHAR_CODE('colr') +keyAEColorTable = FOUR_CHAR_CODE('cltb') +keyAECurveHeight = FOUR_CHAR_CODE('kchd') +keyAECurveWidth = FOUR_CHAR_CODE('kcwd') +keyAEDashStyle = FOUR_CHAR_CODE('pdst') +keyAEData = FOUR_CHAR_CODE('data') +keyAEDefaultType = FOUR_CHAR_CODE('deft') +keyAEDefinitionRect = FOUR_CHAR_CODE('pdrt') +keyAEDescType = FOUR_CHAR_CODE('dstp') +keyAEDestination = FOUR_CHAR_CODE('dest') +keyAEDoAntiAlias = FOUR_CHAR_CODE('anta') +keyAEDoDithered = FOUR_CHAR_CODE('gdit') +keyAEDoRotate = FOUR_CHAR_CODE('kdrt') +keyAEDoScale = FOUR_CHAR_CODE('ksca') +keyAEDoTranslate = FOUR_CHAR_CODE('ktra') +keyAEEditionFileLoc = FOUR_CHAR_CODE('eloc') +keyAEElements = FOUR_CHAR_CODE('elms') +keyAEEndPoint = FOUR_CHAR_CODE('pend') +keyAEEventClass = FOUR_CHAR_CODE('evcl') +keyAEEventID = FOUR_CHAR_CODE('evti') +keyAEFile = FOUR_CHAR_CODE('kfil') +keyAEFileType = FOUR_CHAR_CODE('fltp') +keyAEFillColor = FOUR_CHAR_CODE('flcl') +keyAEFillPattern = FOUR_CHAR_CODE('flpt') +keyAEFlipHorizontal = FOUR_CHAR_CODE('kfho') +keyAEFlipVertical = FOUR_CHAR_CODE('kfvt') +keyAEFont = FOUR_CHAR_CODE('font') +keyAEFormula = FOUR_CHAR_CODE('pfor') +keyAEGraphicObjects = FOUR_CHAR_CODE('gobs') +keyAEID = FOUR_CHAR_CODE('ID ') +keyAEImageQuality = FOUR_CHAR_CODE('gqua') +keyAEInsertHere = FOUR_CHAR_CODE('insh') +keyAEKeyForms = FOUR_CHAR_CODE('keyf') +keyAEKeyword = FOUR_CHAR_CODE('kywd') +keyAELevel = FOUR_CHAR_CODE('levl') +keyAELineArrow = FOUR_CHAR_CODE('arro') +keyAEName = FOUR_CHAR_CODE('pnam') +keyAENewElementLoc = FOUR_CHAR_CODE('pnel') +keyAEObject = FOUR_CHAR_CODE('kobj') +keyAEObjectClass = FOUR_CHAR_CODE('kocl') +keyAEOffStyles = FOUR_CHAR_CODE('ofst') +keyAEOnStyles = FOUR_CHAR_CODE('onst') +keyAEParameters = FOUR_CHAR_CODE('prms') +keyAEParamFlags = FOUR_CHAR_CODE('pmfg') +keyAEPenColor = FOUR_CHAR_CODE('ppcl') +keyAEPenPattern = FOUR_CHAR_CODE('pppa') +keyAEPenWidth = FOUR_CHAR_CODE('ppwd') +keyAEPixelDepth = FOUR_CHAR_CODE('pdpt') +keyAEPixMapMinus = FOUR_CHAR_CODE('kpmm') +keyAEPMTable = FOUR_CHAR_CODE('kpmt') +keyAEPointList = FOUR_CHAR_CODE('ptlt') +keyAEPointSize = FOUR_CHAR_CODE('ptsz') +keyAEPosition = FOUR_CHAR_CODE('kpos') +keyAEPropData = FOUR_CHAR_CODE('prdt') +keyAEProperties = FOUR_CHAR_CODE('qpro') +keyAEProperty = FOUR_CHAR_CODE('kprp') +keyAEPropFlags = FOUR_CHAR_CODE('prfg') +keyAEPropID = FOUR_CHAR_CODE('prop') +keyAEProtection = FOUR_CHAR_CODE('ppro') +keyAERenderAs = FOUR_CHAR_CODE('kren') +keyAERequestedType = FOUR_CHAR_CODE('rtyp') +keyAEResult = FOUR_CHAR_CODE('----') +keyAEResultInfo = FOUR_CHAR_CODE('rsin') +keyAERotation = FOUR_CHAR_CODE('prot') +keyAERotPoint = FOUR_CHAR_CODE('krtp') +keyAERowList = FOUR_CHAR_CODE('krls') +keyAESaveOptions = FOUR_CHAR_CODE('savo') +keyAEScale = FOUR_CHAR_CODE('pscl') +keyAEScriptTag = FOUR_CHAR_CODE('psct') +keyAEShowWhere = FOUR_CHAR_CODE('show') +keyAEStartAngle = FOUR_CHAR_CODE('pang') +keyAEStartPoint = FOUR_CHAR_CODE('pstp') +keyAEStyles = FOUR_CHAR_CODE('ksty') +keyAESuiteID = FOUR_CHAR_CODE('suit') +keyAEText = FOUR_CHAR_CODE('ktxt') +keyAETextColor = FOUR_CHAR_CODE('ptxc') +keyAETextFont = FOUR_CHAR_CODE('ptxf') +keyAETextPointSize = FOUR_CHAR_CODE('ptps') +keyAETextStyles = FOUR_CHAR_CODE('txst') +keyAETextLineHeight = FOUR_CHAR_CODE('ktlh') +keyAETextLineAscent = FOUR_CHAR_CODE('ktas') +keyAETheText = FOUR_CHAR_CODE('thtx') +keyAETransferMode = FOUR_CHAR_CODE('pptm') +keyAETranslation = FOUR_CHAR_CODE('ptrs') +keyAETryAsStructGraf = FOUR_CHAR_CODE('toog') +keyAEUniformStyles = FOUR_CHAR_CODE('ustl') +keyAEUpdateOn = FOUR_CHAR_CODE('pupd') +keyAEUserTerm = FOUR_CHAR_CODE('utrm') +keyAEWindow = FOUR_CHAR_CODE('wndw') +keyAEWritingCode = FOUR_CHAR_CODE('wrcd') +keyMiscellaneous = FOUR_CHAR_CODE('fmsc') +keySelection = FOUR_CHAR_CODE('fsel') +keyWindow = FOUR_CHAR_CODE('kwnd') +keyWhen = FOUR_CHAR_CODE('when') +keyWhere = FOUR_CHAR_CODE('wher') +keyModifiers = FOUR_CHAR_CODE('mods') +keyKey = FOUR_CHAR_CODE('key ') +keyKeyCode = FOUR_CHAR_CODE('code') +keyKeyboard = FOUR_CHAR_CODE('keyb') +keyDriveNumber = FOUR_CHAR_CODE('drv#') +keyErrorCode = FOUR_CHAR_CODE('err#') +keyHighLevelClass = FOUR_CHAR_CODE('hcls') +keyHighLevelID = FOUR_CHAR_CODE('hid ') +pArcAngle = FOUR_CHAR_CODE('parc') +pBackgroundColor = FOUR_CHAR_CODE('pbcl') +pBackgroundPattern = FOUR_CHAR_CODE('pbpt') +pBestType = FOUR_CHAR_CODE('pbst') +pBounds = FOUR_CHAR_CODE('pbnd') +pClass = FOUR_CHAR_CODE('pcls') +pClipboard = FOUR_CHAR_CODE('pcli') +pColor = FOUR_CHAR_CODE('colr') +pColorTable = FOUR_CHAR_CODE('cltb') +pContents = FOUR_CHAR_CODE('pcnt') +pCornerCurveHeight = FOUR_CHAR_CODE('pchd') +pCornerCurveWidth = FOUR_CHAR_CODE('pcwd') +pDashStyle = FOUR_CHAR_CODE('pdst') +pDefaultType = FOUR_CHAR_CODE('deft') +pDefinitionRect = FOUR_CHAR_CODE('pdrt') +pEnabled = FOUR_CHAR_CODE('enbl') +pEndPoint = FOUR_CHAR_CODE('pend') +pFillColor = FOUR_CHAR_CODE('flcl') +pFillPattern = FOUR_CHAR_CODE('flpt') +pFont = FOUR_CHAR_CODE('font') +pFormula = FOUR_CHAR_CODE('pfor') +pGraphicObjects = FOUR_CHAR_CODE('gobs') +pHasCloseBox = FOUR_CHAR_CODE('hclb') +pHasTitleBar = FOUR_CHAR_CODE('ptit') +pID = FOUR_CHAR_CODE('ID ') +pIndex = FOUR_CHAR_CODE('pidx') +pInsertionLoc = FOUR_CHAR_CODE('pins') +pIsFloating = FOUR_CHAR_CODE('isfl') +pIsFrontProcess = FOUR_CHAR_CODE('pisf') +pIsModal = FOUR_CHAR_CODE('pmod') +pIsModified = FOUR_CHAR_CODE('imod') +pIsResizable = FOUR_CHAR_CODE('prsz') +pIsStationeryPad = FOUR_CHAR_CODE('pspd') +pIsZoomable = FOUR_CHAR_CODE('iszm') +pIsZoomed = FOUR_CHAR_CODE('pzum') +pItemNumber = FOUR_CHAR_CODE('itmn') +pJustification = FOUR_CHAR_CODE('pjst') +pLineArrow = FOUR_CHAR_CODE('arro') +pMenuID = FOUR_CHAR_CODE('mnid') +pName = FOUR_CHAR_CODE('pnam') +pNewElementLoc = FOUR_CHAR_CODE('pnel') +pPenColor = FOUR_CHAR_CODE('ppcl') +pPenPattern = FOUR_CHAR_CODE('pppa') +pPenWidth = FOUR_CHAR_CODE('ppwd') +pPixelDepth = FOUR_CHAR_CODE('pdpt') +pPointList = FOUR_CHAR_CODE('ptlt') +pPointSize = FOUR_CHAR_CODE('ptsz') +pProtection = FOUR_CHAR_CODE('ppro') +pRotation = FOUR_CHAR_CODE('prot') +pScale = FOUR_CHAR_CODE('pscl') +pScript = FOUR_CHAR_CODE('scpt') +pScriptTag = FOUR_CHAR_CODE('psct') +pSelected = FOUR_CHAR_CODE('selc') +pSelection = FOUR_CHAR_CODE('sele') +pStartAngle = FOUR_CHAR_CODE('pang') +pStartPoint = FOUR_CHAR_CODE('pstp') +pTextColor = FOUR_CHAR_CODE('ptxc') +pTextFont = FOUR_CHAR_CODE('ptxf') +pTextItemDelimiters = FOUR_CHAR_CODE('txdl') +pTextPointSize = FOUR_CHAR_CODE('ptps') +pTextStyles = FOUR_CHAR_CODE('txst') +pTransferMode = FOUR_CHAR_CODE('pptm') +pTranslation = FOUR_CHAR_CODE('ptrs') +pUniformStyles = FOUR_CHAR_CODE('ustl') +pUpdateOn = FOUR_CHAR_CODE('pupd') +pUserSelection = FOUR_CHAR_CODE('pusl') +pVersion = FOUR_CHAR_CODE('vers') +pVisible = FOUR_CHAR_CODE('pvis') +typeAEText = FOUR_CHAR_CODE('tTXT') +typeArc = FOUR_CHAR_CODE('carc') +typeBest = FOUR_CHAR_CODE('best') +typeCell = FOUR_CHAR_CODE('ccel') +typeClassInfo = FOUR_CHAR_CODE('gcli') +typeColorTable = FOUR_CHAR_CODE('clrt') +typeColumn = FOUR_CHAR_CODE('ccol') +typeDashStyle = FOUR_CHAR_CODE('tdas') +typeData = FOUR_CHAR_CODE('tdta') +typeDrawingArea = FOUR_CHAR_CODE('cdrw') +typeElemInfo = FOUR_CHAR_CODE('elin') +typeEnumeration = FOUR_CHAR_CODE('enum') +typeEPS = FOUR_CHAR_CODE('EPS ') +typeEventInfo = FOUR_CHAR_CODE('evin') +typeFinderWindow = FOUR_CHAR_CODE('fwin') +typeFixedPoint = FOUR_CHAR_CODE('fpnt') +typeFixedRectangle = FOUR_CHAR_CODE('frct') +typeGraphicLine = FOUR_CHAR_CODE('glin') +typeGraphicText = FOUR_CHAR_CODE('cgtx') +typeGroupedGraphic = FOUR_CHAR_CODE('cpic') +typeInsertionLoc = FOUR_CHAR_CODE('insl') +typeIntlText = FOUR_CHAR_CODE('itxt') +typeIntlWritingCode = FOUR_CHAR_CODE('intl') +typeLongDateTime = FOUR_CHAR_CODE('ldt ') +typeLongFixed = FOUR_CHAR_CODE('lfxd') +typeLongFixedPoint = FOUR_CHAR_CODE('lfpt') +typeLongFixedRectangle = FOUR_CHAR_CODE('lfrc') +typeLongPoint = FOUR_CHAR_CODE('lpnt') +typeLongRectangle = FOUR_CHAR_CODE('lrct') +typeMachineLoc = FOUR_CHAR_CODE('mLoc') +typeOval = FOUR_CHAR_CODE('covl') +typeParamInfo = FOUR_CHAR_CODE('pmin') +typePict = FOUR_CHAR_CODE('PICT') +typePixelMap = FOUR_CHAR_CODE('cpix') +typePixMapMinus = FOUR_CHAR_CODE('tpmm') +typePolygon = FOUR_CHAR_CODE('cpgn') +typePropInfo = FOUR_CHAR_CODE('pinf') +typePtr = FOUR_CHAR_CODE('ptr ') +typeQDPoint = FOUR_CHAR_CODE('QDpt') +typeQDRegion = FOUR_CHAR_CODE('Qrgn') +typeRectangle = FOUR_CHAR_CODE('crec') +typeRGB16 = FOUR_CHAR_CODE('tr16') +typeRGB96 = FOUR_CHAR_CODE('tr96') +typeRGBColor = FOUR_CHAR_CODE('cRGB') +typeRotation = FOUR_CHAR_CODE('trot') +typeRoundedRectangle = FOUR_CHAR_CODE('crrc') +typeRow = FOUR_CHAR_CODE('crow') +typeScrapStyles = FOUR_CHAR_CODE('styl') +typeScript = FOUR_CHAR_CODE('scpt') +typeStyledText = FOUR_CHAR_CODE('STXT') +typeSuiteInfo = FOUR_CHAR_CODE('suin') +typeTable = FOUR_CHAR_CODE('ctbl') +typeTextStyles = FOUR_CHAR_CODE('tsty') +typeTIFF = FOUR_CHAR_CODE('TIFF') +typeVersion = FOUR_CHAR_CODE('vers') +kAEMenuClass = FOUR_CHAR_CODE('menu') +kAEMenuSelect = FOUR_CHAR_CODE('mhit') +kAEMouseDown = FOUR_CHAR_CODE('mdwn') +kAEMouseDownInBack = FOUR_CHAR_CODE('mdbk') +kAEKeyDown = FOUR_CHAR_CODE('kdwn') +kAEResized = FOUR_CHAR_CODE('rsiz') +kAEPromise = FOUR_CHAR_CODE('prom') +keyMenuID = FOUR_CHAR_CODE('mid ') +keyMenuItem = FOUR_CHAR_CODE('mitm') +keyCloseAllWindows = FOUR_CHAR_CODE('caw ') +keyOriginalBounds = FOUR_CHAR_CODE('obnd') +keyNewBounds = FOUR_CHAR_CODE('nbnd') +keyLocalWhere = FOUR_CHAR_CODE('lwhr') +typeHIMenu = FOUR_CHAR_CODE('mobj') +typeHIWindow = FOUR_CHAR_CODE('wobj') +kBySmallIcon = 0 +kByIconView = 1 +kByNameView = 2 +kByDateView = 3 +kBySizeView = 4 +kByKindView = 5 +kByCommentView = 6 +kByLabelView = 7 +kByVersionView = 8 +kAEInfo = 11 +kAEMain = 0 +kAESharing = 13 +kAEZoomIn = 7 +kAEZoomOut = 8 +kTextServiceClass = FOUR_CHAR_CODE('tsvc') +kUpdateActiveInputArea = FOUR_CHAR_CODE('updt') +kShowHideInputWindow = FOUR_CHAR_CODE('shiw') +kPos2Offset = FOUR_CHAR_CODE('p2st') +kOffset2Pos = FOUR_CHAR_CODE('st2p') +kUnicodeNotFromInputMethod = FOUR_CHAR_CODE('unim') +kGetSelectedText = FOUR_CHAR_CODE('gtxt') +keyAETSMDocumentRefcon = FOUR_CHAR_CODE('refc') +keyAEServerInstance = FOUR_CHAR_CODE('srvi') +keyAETheData = FOUR_CHAR_CODE('kdat') +keyAEFixLength = FOUR_CHAR_CODE('fixl') +keyAEUpdateRange = FOUR_CHAR_CODE('udng') +keyAECurrentPoint = FOUR_CHAR_CODE('cpos') +keyAEBufferSize = FOUR_CHAR_CODE('buff') +keyAEMoveView = FOUR_CHAR_CODE('mvvw') +keyAENextBody = FOUR_CHAR_CODE('nxbd') +keyAETSMScriptTag = FOUR_CHAR_CODE('sclg') +keyAETSMTextFont = FOUR_CHAR_CODE('ktxf') +keyAETSMTextFMFont = FOUR_CHAR_CODE('ktxm') +keyAETSMTextPointSize = FOUR_CHAR_CODE('ktps') +keyAETSMEventRecord = FOUR_CHAR_CODE('tevt') +keyAETSMEventRef = FOUR_CHAR_CODE('tevr') +keyAETextServiceEncoding = FOUR_CHAR_CODE('tsen') +keyAETextServiceMacEncoding = FOUR_CHAR_CODE('tmen') +typeTextRange = FOUR_CHAR_CODE('txrn') +typeComponentInstance = FOUR_CHAR_CODE('cmpi') +typeOffsetArray = FOUR_CHAR_CODE('ofay') +typeTextRangeArray = FOUR_CHAR_CODE('tray') +typeLowLevelEventRecord = FOUR_CHAR_CODE('evtr') +typeEventRef = FOUR_CHAR_CODE('evrf') +typeText = typeChar +kTSMOutsideOfBody = 1 +kTSMInsideOfBody = 2 +kTSMInsideOfActiveInputArea = 3 +kNextBody = 1 +kPreviousBody = 2 +kCaretPosition = 1 +kRawText = 2 +kSelectedRawText = 3 +kConvertedText = 4 +kSelectedConvertedText = 5 +kBlockFillText = 6 +kOutlineText = 7 +kSelectedText = 8 +keyAEHiliteRange = FOUR_CHAR_CODE('hrng') +keyAEPinRange = FOUR_CHAR_CODE('pnrg') +keyAEClauseOffsets = FOUR_CHAR_CODE('clau') +keyAEOffset = FOUR_CHAR_CODE('ofst') +keyAEPoint = FOUR_CHAR_CODE('gpos') +keyAELeftSide = FOUR_CHAR_CODE('klef') +keyAERegionClass = FOUR_CHAR_CODE('rgnc') +keyAEDragging = FOUR_CHAR_CODE('bool') +keyAELeadingEdge = keyAELeftSide +typeUnicodeText = FOUR_CHAR_CODE('utxt') +typeStyledUnicodeText = FOUR_CHAR_CODE('sutx') +typeEncodedString = FOUR_CHAR_CODE('encs') +typeCString = FOUR_CHAR_CODE('cstr') +typePString = FOUR_CHAR_CODE('pstr') +typeMeters = FOUR_CHAR_CODE('metr') +typeInches = FOUR_CHAR_CODE('inch') +typeFeet = FOUR_CHAR_CODE('feet') +typeYards = FOUR_CHAR_CODE('yard') +typeMiles = FOUR_CHAR_CODE('mile') +typeKilometers = FOUR_CHAR_CODE('kmtr') +typeCentimeters = FOUR_CHAR_CODE('cmtr') +typeSquareMeters = FOUR_CHAR_CODE('sqrm') +typeSquareFeet = FOUR_CHAR_CODE('sqft') +typeSquareYards = FOUR_CHAR_CODE('sqyd') +typeSquareMiles = FOUR_CHAR_CODE('sqmi') +typeSquareKilometers = FOUR_CHAR_CODE('sqkm') +typeLiters = FOUR_CHAR_CODE('litr') +typeQuarts = FOUR_CHAR_CODE('qrts') +typeGallons = FOUR_CHAR_CODE('galn') +typeCubicMeters = FOUR_CHAR_CODE('cmet') +typeCubicFeet = FOUR_CHAR_CODE('cfet') +typeCubicInches = FOUR_CHAR_CODE('cuin') +typeCubicCentimeter = FOUR_CHAR_CODE('ccmt') +typeCubicYards = FOUR_CHAR_CODE('cyrd') +typeKilograms = FOUR_CHAR_CODE('kgrm') +typeGrams = FOUR_CHAR_CODE('gram') +typeOunces = FOUR_CHAR_CODE('ozs ') +typePounds = FOUR_CHAR_CODE('lbs ') +typeDegreesC = FOUR_CHAR_CODE('degc') +typeDegreesF = FOUR_CHAR_CODE('degf') +typeDegreesK = FOUR_CHAR_CODE('degk') +kFAServerApp = FOUR_CHAR_CODE('ssrv') +kDoFolderActionEvent = FOUR_CHAR_CODE('fola') +kFolderActionCode = FOUR_CHAR_CODE('actn') +kFolderOpenedEvent = FOUR_CHAR_CODE('fopn') +kFolderClosedEvent = FOUR_CHAR_CODE('fclo') +kFolderWindowMovedEvent = FOUR_CHAR_CODE('fsiz') +kFolderItemsAddedEvent = FOUR_CHAR_CODE('fget') +kFolderItemsRemovedEvent = FOUR_CHAR_CODE('flos') +kItemList = FOUR_CHAR_CODE('flst') +kNewSizeParameter = FOUR_CHAR_CODE('fnsz') +kFASuiteCode = FOUR_CHAR_CODE('faco') +kFAAttachCommand = FOUR_CHAR_CODE('atfa') +kFARemoveCommand = FOUR_CHAR_CODE('rmfa') +kFAEditCommand = FOUR_CHAR_CODE('edfa') +kFAFileParam = FOUR_CHAR_CODE('faal') +kFAIndexParam = FOUR_CHAR_CODE('indx') +kAEInternetSuite = FOUR_CHAR_CODE('gurl') +kAEISWebStarSuite = FOUR_CHAR_CODE('WWW\xbd') +kAEISGetURL = FOUR_CHAR_CODE('gurl') +KAEISHandleCGI = FOUR_CHAR_CODE('sdoc') +cURL = FOUR_CHAR_CODE('url ') +cInternetAddress = FOUR_CHAR_CODE('IPAD') +cHTML = FOUR_CHAR_CODE('html') +cFTPItem = FOUR_CHAR_CODE('ftp ') +kAEISHTTPSearchArgs = FOUR_CHAR_CODE('kfor') +kAEISPostArgs = FOUR_CHAR_CODE('post') +kAEISMethod = FOUR_CHAR_CODE('meth') +kAEISClientAddress = FOUR_CHAR_CODE('addr') +kAEISUserName = FOUR_CHAR_CODE('user') +kAEISPassword = FOUR_CHAR_CODE('pass') +kAEISFromUser = FOUR_CHAR_CODE('frmu') +kAEISServerName = FOUR_CHAR_CODE('svnm') +kAEISServerPort = FOUR_CHAR_CODE('svpt') +kAEISScriptName = FOUR_CHAR_CODE('scnm') +kAEISContentType = FOUR_CHAR_CODE('ctyp') +kAEISReferrer = FOUR_CHAR_CODE('refr') +kAEISUserAgent = FOUR_CHAR_CODE('Agnt') +kAEISAction = FOUR_CHAR_CODE('Kact') +kAEISActionPath = FOUR_CHAR_CODE('Kapt') +kAEISClientIP = FOUR_CHAR_CODE('Kcip') +kAEISFullRequest = FOUR_CHAR_CODE('Kfrq') +pScheme = FOUR_CHAR_CODE('pusc') +pHost = FOUR_CHAR_CODE('HOST') +pPath = FOUR_CHAR_CODE('FTPc') +pUserName = FOUR_CHAR_CODE('RAun') +pUserPassword = FOUR_CHAR_CODE('RApw') +pDNSForm = FOUR_CHAR_CODE('pDNS') +pURL = FOUR_CHAR_CODE('pURL') +pTextEncoding = FOUR_CHAR_CODE('ptxe') +pFTPKind = FOUR_CHAR_CODE('kind') +eScheme = FOUR_CHAR_CODE('esch') +eurlHTTP = FOUR_CHAR_CODE('http') +eurlHTTPS = FOUR_CHAR_CODE('htps') +eurlFTP = FOUR_CHAR_CODE('ftp ') +eurlMail = FOUR_CHAR_CODE('mail') +eurlFile = FOUR_CHAR_CODE('file') +eurlGopher = FOUR_CHAR_CODE('gphr') +eurlTelnet = FOUR_CHAR_CODE('tlnt') +eurlNews = FOUR_CHAR_CODE('news') +eurlSNews = FOUR_CHAR_CODE('snws') +eurlNNTP = FOUR_CHAR_CODE('nntp') +eurlMessage = FOUR_CHAR_CODE('mess') +eurlMailbox = FOUR_CHAR_CODE('mbox') +eurlMulti = FOUR_CHAR_CODE('mult') +eurlLaunch = FOUR_CHAR_CODE('laun') +eurlAFP = FOUR_CHAR_CODE('afp ') +eurlAT = FOUR_CHAR_CODE('at ') +eurlEPPC = FOUR_CHAR_CODE('eppc') +eurlRTSP = FOUR_CHAR_CODE('rtsp') +eurlIMAP = FOUR_CHAR_CODE('imap') +eurlNFS = FOUR_CHAR_CODE('unfs') +eurlPOP = FOUR_CHAR_CODE('upop') +eurlLDAP = FOUR_CHAR_CODE('uldp') +eurlUnknown = FOUR_CHAR_CODE('url?') +kConnSuite = FOUR_CHAR_CODE('macc') +cDevSpec = FOUR_CHAR_CODE('cdev') +cAddressSpec = FOUR_CHAR_CODE('cadr') +cADBAddress = FOUR_CHAR_CODE('cadb') +cAppleTalkAddress = FOUR_CHAR_CODE('cat ') +cBusAddress = FOUR_CHAR_CODE('cbus') +cEthernetAddress = FOUR_CHAR_CODE('cen ') +cFireWireAddress = FOUR_CHAR_CODE('cfw ') +cIPAddress = FOUR_CHAR_CODE('cip ') +cLocalTalkAddress = FOUR_CHAR_CODE('clt ') +cSCSIAddress = FOUR_CHAR_CODE('cscs') +cTokenRingAddress = FOUR_CHAR_CODE('ctok') +cUSBAddress = FOUR_CHAR_CODE('cusb') +pDeviceType = FOUR_CHAR_CODE('pdvt') +pDeviceAddress = FOUR_CHAR_CODE('pdva') +pConduit = FOUR_CHAR_CODE('pcon') +pProtocol = FOUR_CHAR_CODE('pprt') +pATMachine = FOUR_CHAR_CODE('patm') +pATZone = FOUR_CHAR_CODE('patz') +pATType = FOUR_CHAR_CODE('patt') +pDottedDecimal = FOUR_CHAR_CODE('pipd') +pDNS = FOUR_CHAR_CODE('pdns') +pPort = FOUR_CHAR_CODE('ppor') +pNetwork = FOUR_CHAR_CODE('pnet') +pNode = FOUR_CHAR_CODE('pnod') +pSocket = FOUR_CHAR_CODE('psoc') +pSCSIBus = FOUR_CHAR_CODE('pscb') +pSCSILUN = FOUR_CHAR_CODE('pslu') +eDeviceType = FOUR_CHAR_CODE('edvt') +eAddressSpec = FOUR_CHAR_CODE('eads') +eConduit = FOUR_CHAR_CODE('econ') +eProtocol = FOUR_CHAR_CODE('epro') +eADB = FOUR_CHAR_CODE('eadb') +eAnalogAudio = FOUR_CHAR_CODE('epau') +eAppleTalk = FOUR_CHAR_CODE('epat') +eAudioLineIn = FOUR_CHAR_CODE('ecai') +eAudioLineOut = FOUR_CHAR_CODE('ecal') +eAudioOut = FOUR_CHAR_CODE('ecao') +eBus = FOUR_CHAR_CODE('ebus') +eCDROM = FOUR_CHAR_CODE('ecd ') +eCommSlot = FOUR_CHAR_CODE('eccm') +eDigitalAudio = FOUR_CHAR_CODE('epda') +eDisplay = FOUR_CHAR_CODE('edds') +eDVD = FOUR_CHAR_CODE('edvd') +eEthernet = FOUR_CHAR_CODE('ecen') +eFireWire = FOUR_CHAR_CODE('ecfw') +eFloppy = FOUR_CHAR_CODE('efd ') +eHD = FOUR_CHAR_CODE('ehd ') +eInfrared = FOUR_CHAR_CODE('ecir') +eIP = FOUR_CHAR_CODE('epip') +eIrDA = FOUR_CHAR_CODE('epir') +eIRTalk = FOUR_CHAR_CODE('epit') +eKeyboard = FOUR_CHAR_CODE('ekbd') +eLCD = FOUR_CHAR_CODE('edlc') +eLocalTalk = FOUR_CHAR_CODE('eclt') +eMacIP = FOUR_CHAR_CODE('epmi') +eMacVideo = FOUR_CHAR_CODE('epmv') +eMicrophone = FOUR_CHAR_CODE('ecmi') +eModemPort = FOUR_CHAR_CODE('ecmp') +eModemPrinterPort = FOUR_CHAR_CODE('empp') +eModem = FOUR_CHAR_CODE('edmm') +eMonitorOut = FOUR_CHAR_CODE('ecmn') +eMouse = FOUR_CHAR_CODE('emou') +eNuBusCard = FOUR_CHAR_CODE('ednb') +eNuBus = FOUR_CHAR_CODE('enub') +ePCcard = FOUR_CHAR_CODE('ecpc') +ePCIbus = FOUR_CHAR_CODE('ecpi') +ePCIcard = FOUR_CHAR_CODE('edpi') +ePDSslot = FOUR_CHAR_CODE('ecpd') +ePDScard = FOUR_CHAR_CODE('epds') +ePointingDevice = FOUR_CHAR_CODE('edpd') +ePostScript = FOUR_CHAR_CODE('epps') +ePPP = FOUR_CHAR_CODE('eppp') +ePrinterPort = FOUR_CHAR_CODE('ecpp') +ePrinter = FOUR_CHAR_CODE('edpr') +eSvideo = FOUR_CHAR_CODE('epsv') +eSCSI = FOUR_CHAR_CODE('ecsc') +eSerial = FOUR_CHAR_CODE('epsr') +eSpeakers = FOUR_CHAR_CODE('edsp') +eStorageDevice = FOUR_CHAR_CODE('edst') +eSVGA = FOUR_CHAR_CODE('epsg') +eTokenRing = FOUR_CHAR_CODE('etok') +eTrackball = FOUR_CHAR_CODE('etrk') +eTrackpad = FOUR_CHAR_CODE('edtp') +eUSB = FOUR_CHAR_CODE('ecus') +eVideoIn = FOUR_CHAR_CODE('ecvi') +eVideoMonitor = FOUR_CHAR_CODE('edvm') +eVideoOut = FOUR_CHAR_CODE('ecvo') +cKeystroke = FOUR_CHAR_CODE('kprs') +pKeystrokeKey = FOUR_CHAR_CODE('kMsg') +pModifiers = FOUR_CHAR_CODE('kMod') +pKeyKind = FOUR_CHAR_CODE('kknd') +eModifiers = FOUR_CHAR_CODE('eMds') +eOptionDown = FOUR_CHAR_CODE('Kopt') +eCommandDown = FOUR_CHAR_CODE('Kcmd') +eControlDown = FOUR_CHAR_CODE('Kctl') +eShiftDown = FOUR_CHAR_CODE('Ksft') +eCapsLockDown = FOUR_CHAR_CODE('Kclk') +eKeyKind = FOUR_CHAR_CODE('ekst') +eEscapeKey = 0x6B733500 +eDeleteKey = 0x6B733300 +eTabKey = 0x6B733000 +eReturnKey = 0x6B732400 +eClearKey = 0x6B734700 +eEnterKey = 0x6B734C00 +eUpArrowKey = 0x6B737E00 +eDownArrowKey = 0x6B737D00 +eLeftArrowKey = 0x6B737B00 +eRightArrowKey = 0x6B737C00 +eHelpKey = 0x6B737200 +eHomeKey = 0x6B737300 +ePageUpKey = 0x6B737400 +ePageDownKey = 0x6B737900 +eForwardDelKey = 0x6B737500 +eEndKey = 0x6B737700 +eF1Key = 0x6B737A00 +eF2Key = 0x6B737800 +eF3Key = 0x6B736300 +eF4Key = 0x6B737600 +eF5Key = 0x6B736000 +eF6Key = 0x6B736100 +eF7Key = 0x6B736200 +eF8Key = 0x6B736400 +eF9Key = 0x6B736500 +eF10Key = 0x6B736D00 +eF11Key = 0x6B736700 +eF12Key = 0x6B736F00 +eF13Key = 0x6B736900 +eF14Key = 0x6B736B00 +eF15Key = 0x6B737100 +kAEAND = FOUR_CHAR_CODE('AND ') +kAEOR = FOUR_CHAR_CODE('OR ') +kAENOT = FOUR_CHAR_CODE('NOT ') +kAEFirst = FOUR_CHAR_CODE('firs') +kAELast = FOUR_CHAR_CODE('last') +kAEMiddle = FOUR_CHAR_CODE('midd') +kAEAny = FOUR_CHAR_CODE('any ') +kAEAll = FOUR_CHAR_CODE('all ') +kAENext = FOUR_CHAR_CODE('next') +kAEPrevious = FOUR_CHAR_CODE('prev') +keyAECompOperator = FOUR_CHAR_CODE('relo') +keyAELogicalTerms = FOUR_CHAR_CODE('term') +keyAELogicalOperator = FOUR_CHAR_CODE('logc') +keyAEObject1 = FOUR_CHAR_CODE('obj1') +keyAEObject2 = FOUR_CHAR_CODE('obj2') +keyAEDesiredClass = FOUR_CHAR_CODE('want') +keyAEContainer = FOUR_CHAR_CODE('from') +keyAEKeyForm = FOUR_CHAR_CODE('form') +keyAEKeyData = FOUR_CHAR_CODE('seld') +keyAERangeStart = FOUR_CHAR_CODE('star') +keyAERangeStop = FOUR_CHAR_CODE('stop') +keyDisposeTokenProc = FOUR_CHAR_CODE('xtok') +keyAECompareProc = FOUR_CHAR_CODE('cmpr') +keyAECountProc = FOUR_CHAR_CODE('cont') +keyAEMarkTokenProc = FOUR_CHAR_CODE('mkid') +keyAEMarkProc = FOUR_CHAR_CODE('mark') +keyAEAdjustMarksProc = FOUR_CHAR_CODE('adjm') +keyAEGetErrDescProc = FOUR_CHAR_CODE('indc') +formAbsolutePosition = FOUR_CHAR_CODE('indx') +formRelativePosition = FOUR_CHAR_CODE('rele') +formTest = FOUR_CHAR_CODE('test') +formRange = FOUR_CHAR_CODE('rang') +formPropertyID = FOUR_CHAR_CODE('prop') +formName = FOUR_CHAR_CODE('name') +typeObjectSpecifier = FOUR_CHAR_CODE('obj ') +typeObjectBeingExamined = FOUR_CHAR_CODE('exmn') +typeCurrentContainer = FOUR_CHAR_CODE('ccnt') +typeToken = FOUR_CHAR_CODE('toke') +typeRelativeDescriptor = FOUR_CHAR_CODE('rel ') +typeAbsoluteOrdinal = FOUR_CHAR_CODE('abso') +typeIndexDescriptor = FOUR_CHAR_CODE('inde') +typeRangeDescriptor = FOUR_CHAR_CODE('rang') +typeLogicalDescriptor = FOUR_CHAR_CODE('logi') +typeCompDescriptor = FOUR_CHAR_CODE('cmpd') +typeOSLTokenList = FOUR_CHAR_CODE('ostl') +kAEIDoMinimum = 0x0000 +kAEIDoWhose = 0x0001 +kAEIDoMarking = 0x0004 +kAEPassSubDescs = 0x0008 +kAEResolveNestedLists = 0x0010 +kAEHandleSimpleRanges = 0x0020 +kAEUseRelativeIterators = 0x0040 +typeWhoseDescriptor = FOUR_CHAR_CODE('whos') +formWhose = FOUR_CHAR_CODE('whos') +typeWhoseRange = FOUR_CHAR_CODE('wrng') +keyAEWhoseRangeStart = FOUR_CHAR_CODE('wstr') +keyAEWhoseRangeStop = FOUR_CHAR_CODE('wstp') +keyAEIndex = FOUR_CHAR_CODE('kidx') +keyAETest = FOUR_CHAR_CODE('ktst') diff --git a/sys/lib/python/plat-mac/Carbon/AppleHelp.py b/sys/lib/python/plat-mac/Carbon/AppleHelp.py new file mode 100644 index 000000000..3496d5926 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/AppleHelp.py @@ -0,0 +1,6 @@ +# Generated from 'AppleHelp.h' + +kAHInternalErr = -10790 +kAHInternetConfigPrefErr = -10791 +kAHTOCTypeUser = 0 +kAHTOCTypeDeveloper = 1 diff --git a/sys/lib/python/plat-mac/Carbon/CF.py b/sys/lib/python/plat-mac/Carbon/CF.py new file mode 100644 index 000000000..4a784c0f8 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/CF.py @@ -0,0 +1 @@ +from _CF import * diff --git a/sys/lib/python/plat-mac/Carbon/CG.py b/sys/lib/python/plat-mac/Carbon/CG.py new file mode 100755 index 000000000..96f577232 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/CG.py @@ -0,0 +1 @@ +from _CG import * diff --git a/sys/lib/python/plat-mac/Carbon/CarbonEvents.py b/sys/lib/python/plat-mac/Carbon/CarbonEvents.py new file mode 100755 index 000000000..357ee5d38 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/CarbonEvents.py @@ -0,0 +1,451 @@ +# Generated from 'CarbonEvents.h' + +def FOUR_CHAR_CODE(x): return x +def FOUR_CHAR_CODE(x): return x +false = 0 +true = 1 +keyAEEventClass = FOUR_CHAR_CODE('evcl') +keyAEEventID = FOUR_CHAR_CODE('evti') +eventAlreadyPostedErr = -9860 +eventTargetBusyErr = -9861 +eventClassInvalidErr = -9862 +eventClassIncorrectErr = -9864 +eventHandlerAlreadyInstalledErr = -9866 +eventInternalErr = -9868 +eventKindIncorrectErr = -9869 +eventParameterNotFoundErr = -9870 +eventNotHandledErr = -9874 +eventLoopTimedOutErr = -9875 +eventLoopQuitErr = -9876 +eventNotInQueueErr = -9877 +eventHotKeyExistsErr = -9878 +eventHotKeyInvalidErr = -9879 +kEventPriorityLow = 0 +kEventPriorityStandard = 1 +kEventPriorityHigh = 2 +kEventLeaveInQueue = false +kEventRemoveFromQueue = true +kTrackMouseLocationOptionDontConsumeMouseUp = (1 << 0) +kMouseTrackingMouseDown = 1 +kMouseTrackingMouseUp = 2 +kMouseTrackingMouseExited = 3 +kMouseTrackingMouseEntered = 4 +kMouseTrackingMouseDragged = 5 +kMouseTrackingKeyModifiersChanged = 6 +kMouseTrackingUserCancelled = 7 +kMouseTrackingTimedOut = 8 +kMouseTrackingMouseMoved = 9 +kEventAttributeNone = 0 +kEventAttributeUserEvent = (1 << 0) +kEventClassMouse = FOUR_CHAR_CODE('mous') +kEventClassKeyboard = FOUR_CHAR_CODE('keyb') +kEventClassTextInput = FOUR_CHAR_CODE('text') +kEventClassApplication = FOUR_CHAR_CODE('appl') +kEventClassAppleEvent = FOUR_CHAR_CODE('eppc') +kEventClassMenu = FOUR_CHAR_CODE('menu') +kEventClassWindow = FOUR_CHAR_CODE('wind') +kEventClassControl = FOUR_CHAR_CODE('cntl') +kEventClassCommand = FOUR_CHAR_CODE('cmds') +kEventClassTablet = FOUR_CHAR_CODE('tblt') +kEventClassVolume = FOUR_CHAR_CODE('vol ') +kEventClassAppearance = FOUR_CHAR_CODE('appm') +kEventClassService = FOUR_CHAR_CODE('serv') +kEventMouseDown = 1 +kEventMouseUp = 2 +kEventMouseMoved = 5 +kEventMouseDragged = 6 +kEventMouseWheelMoved = 10 +kEventMouseButtonPrimary = 1 +kEventMouseButtonSecondary = 2 +kEventMouseButtonTertiary = 3 +kEventMouseWheelAxisX = 0 +kEventMouseWheelAxisY = 1 +kEventTextInputUpdateActiveInputArea = 1 +kEventTextInputUnicodeForKeyEvent = 2 +kEventTextInputOffsetToPos = 3 +kEventTextInputPosToOffset = 4 +kEventTextInputShowHideBottomWindow = 5 +kEventTextInputGetSelectedText = 6 +kEventRawKeyDown = 1 +kEventRawKeyRepeat = 2 +kEventRawKeyUp = 3 +kEventRawKeyModifiersChanged = 4 +kEventHotKeyPressed = 5 +kEventHotKeyReleased = 6 +kEventKeyModifierNumLockBit = 16 +kEventKeyModifierFnBit = 17 +kEventKeyModifierNumLockMask = 1L << kEventKeyModifierNumLockBit +kEventKeyModifierFnMask = 1L << kEventKeyModifierFnBit +kEventAppActivated = 1 +kEventAppDeactivated = 2 +kEventAppQuit = 3 +kEventAppLaunchNotification = 4 +kEventAppLaunched = 5 +kEventAppTerminated = 6 +kEventAppFrontSwitched = 7 +kEventAppGetDockTileMenu = 20 +kEventAppleEvent = 1 +kEventWindowUpdate = 1 +kEventWindowDrawContent = 2 +kEventWindowActivated = 5 +kEventWindowDeactivated = 6 +kEventWindowGetClickActivation = 7 +kEventWindowShowing = 22 +kEventWindowHiding = 23 +kEventWindowShown = 24 +kEventWindowHidden = 25 +kEventWindowCollapsing = 86 +kEventWindowCollapsed = 67 +kEventWindowExpanding = 87 +kEventWindowExpanded = 70 +kEventWindowZoomed = 76 +kEventWindowBoundsChanging = 26 +kEventWindowBoundsChanged = 27 +kEventWindowResizeStarted = 28 +kEventWindowResizeCompleted = 29 +kEventWindowDragStarted = 30 +kEventWindowDragCompleted = 31 +kEventWindowClosed = 73 +kWindowBoundsChangeUserDrag = (1 << 0) +kWindowBoundsChangeUserResize = (1 << 1) +kWindowBoundsChangeSizeChanged = (1 << 2) +kWindowBoundsChangeOriginChanged = (1 << 3) +kWindowBoundsChangeZoom = (1 << 4) +kEventWindowClickDragRgn = 32 +kEventWindowClickResizeRgn = 33 +kEventWindowClickCollapseRgn = 34 +kEventWindowClickCloseRgn = 35 +kEventWindowClickZoomRgn = 36 +kEventWindowClickContentRgn = 37 +kEventWindowClickProxyIconRgn = 38 +kEventWindowClickToolbarButtonRgn = 41 +kEventWindowClickStructureRgn = 42 +kEventWindowCursorChange = 40 +kEventWindowCollapse = 66 +kEventWindowCollapseAll = 68 +kEventWindowExpand = 69 +kEventWindowExpandAll = 71 +kEventWindowClose = 72 +kEventWindowCloseAll = 74 +kEventWindowZoom = 75 +kEventWindowZoomAll = 77 +kEventWindowContextualMenuSelect = 78 +kEventWindowPathSelect = 79 +kEventWindowGetIdealSize = 80 +kEventWindowGetMinimumSize = 81 +kEventWindowGetMaximumSize = 82 +kEventWindowConstrain = 83 +kEventWindowHandleContentClick = 85 +kEventWindowProxyBeginDrag = 128 +kEventWindowProxyEndDrag = 129 +kEventWindowToolbarSwitchMode = 150 +kDockChangedUser = 1 +kDockChangedOrientation = 2 +kDockChangedAutohide = 3 +kDockChangedDisplay = 4 +kDockChangedItems = 5 +kDockChangedUnknown = 6 +kEventWindowFocusAcquired = 200 +kEventWindowFocusRelinquish = 201 +kEventWindowDrawFrame = 1000 +kEventWindowDrawPart = 1001 +kEventWindowGetRegion = 1002 +kEventWindowHitTest = 1003 +kEventWindowInit = 1004 +kEventWindowDispose = 1005 +kEventWindowDragHilite = 1006 +kEventWindowModified = 1007 +kEventWindowSetupProxyDragImage = 1008 +kEventWindowStateChanged = 1009 +kEventWindowMeasureTitle = 1010 +kEventWindowDrawGrowBox = 1011 +kEventWindowGetGrowImageRegion = 1012 +kEventWindowPaint = 1013 +kEventMenuBeginTracking = 1 +kEventMenuEndTracking = 2 +kEventMenuChangeTrackingMode = 3 +kEventMenuOpening = 4 +kEventMenuClosed = 5 +kEventMenuTargetItem = 6 +kEventMenuMatchKey = 7 +kEventMenuEnableItems = 8 +kEventMenuPopulate = 9 +kEventMenuMeasureItemWidth = 100 +kEventMenuMeasureItemHeight = 101 +kEventMenuDrawItem = 102 +kEventMenuDrawItemContent = 103 +kEventMenuDispose = 1001 +kMenuContextMenuBar = 1 << 0 +kMenuContextPullDown = 1 << 8 +kMenuContextPopUp = 1 << 9 +kMenuContextSubmenu = 1 << 10 +kMenuContextMenuBarTracking = 1 << 16 +kMenuContextPopUpTracking = 1 << 17 +kMenuContextKeyMatching = 1 << 18 +kMenuContextMenuEnabling = 1 << 19 +kMenuContextCommandIDSearch = 1 << 20 +kEventProcessCommand = 1 +kEventCommandProcess = 1 +kEventCommandUpdateStatus = 2 +kHICommandOK = FOUR_CHAR_CODE('ok ') +kHICommandCancel = FOUR_CHAR_CODE('not!') +kHICommandQuit = FOUR_CHAR_CODE('quit') +kHICommandUndo = FOUR_CHAR_CODE('undo') +kHICommandRedo = FOUR_CHAR_CODE('redo') +kHICommandCut = FOUR_CHAR_CODE('cut ') +kHICommandCopy = FOUR_CHAR_CODE('copy') +kHICommandPaste = FOUR_CHAR_CODE('past') +kHICommandClear = FOUR_CHAR_CODE('clea') +kHICommandSelectAll = FOUR_CHAR_CODE('sall') +kHICommandHide = FOUR_CHAR_CODE('hide') +kHICommandHideOthers = FOUR_CHAR_CODE('hido') +kHICommandShowAll = FOUR_CHAR_CODE('shal') +kHICommandPreferences = FOUR_CHAR_CODE('pref') +kHICommandZoomWindow = FOUR_CHAR_CODE('zoom') +kHICommandMinimizeWindow = FOUR_CHAR_CODE('mini') +kHICommandMinimizeAll = FOUR_CHAR_CODE('mina') +kHICommandMaximizeWindow = FOUR_CHAR_CODE('maxi') +kHICommandMaximizeAll = FOUR_CHAR_CODE('maxa') +kHICommandArrangeInFront = FOUR_CHAR_CODE('frnt') +kHICommandBringAllToFront = FOUR_CHAR_CODE('bfrt') +kHICommandWindowListSeparator = FOUR_CHAR_CODE('wldv') +kHICommandWindowListTerminator = FOUR_CHAR_CODE('wlst') +kHICommandSelectWindow = FOUR_CHAR_CODE('swin') +kHICommandAbout = FOUR_CHAR_CODE('abou') +kHICommandNew = FOUR_CHAR_CODE('new ') +kHICommandOpen = FOUR_CHAR_CODE('open') +kHICommandClose = FOUR_CHAR_CODE('clos') +kHICommandSave = FOUR_CHAR_CODE('save') +kHICommandSaveAs = FOUR_CHAR_CODE('svas') +kHICommandRevert = FOUR_CHAR_CODE('rvrt') +kHICommandPrint = FOUR_CHAR_CODE('prnt') +kHICommandPageSetup = FOUR_CHAR_CODE('page') +kHICommandAppHelp = FOUR_CHAR_CODE('ahlp') +kHICommandFromMenu = (1L << 0) +kHICommandFromControl = (1L << 1) +kHICommandFromWindow = (1L << 2) +kEventControlInitialize = 1000 +kEventControlDispose = 1001 +kEventControlGetOptimalBounds = 1003 +kEventControlDefInitialize = kEventControlInitialize +kEventControlDefDispose = kEventControlDispose +kEventControlHit = 1 +kEventControlSimulateHit = 2 +kEventControlHitTest = 3 +kEventControlDraw = 4 +kEventControlApplyBackground = 5 +kEventControlApplyTextColor = 6 +kEventControlSetFocusPart = 7 +kEventControlGetFocusPart = 8 +kEventControlActivate = 9 +kEventControlDeactivate = 10 +kEventControlSetCursor = 11 +kEventControlContextualMenuClick = 12 +kEventControlClick = 13 +kEventControlTrack = 51 +kEventControlGetScrollToHereStartPoint = 52 +kEventControlGetIndicatorDragConstraint = 53 +kEventControlIndicatorMoved = 54 +kEventControlGhostingFinished = 55 +kEventControlGetActionProcPart = 56 +kEventControlGetPartRegion = 101 +kEventControlGetPartBounds = 102 +kEventControlSetData = 103 +kEventControlGetData = 104 +kEventControlValueFieldChanged = 151 +kEventControlAddedSubControl = 152 +kEventControlRemovingSubControl = 153 +kEventControlBoundsChanged = 154 +kEventControlOwningWindowChanged = 159 +kEventControlArbitraryMessage = 201 +kControlBoundsChangeSizeChanged = (1 << 2) +kControlBoundsChangePositionChanged = (1 << 3) +kEventTabletPoint = 1 +kEventTabletProximity = 2 +kEventTabletPointer = 1 +kEventVolumeMounted = 1 +kEventVolumeUnmounted = 2 +typeFSVolumeRefNum = FOUR_CHAR_CODE('voln') +kEventAppearanceScrollBarVariantChanged = 1 +kEventServiceCopy = 1 +kEventServicePaste = 2 +kEventServiceGetTypes = 3 +kEventServicePerform = 4 +kEventParamDirectObject = FOUR_CHAR_CODE('----') +kEventParamPostTarget = FOUR_CHAR_CODE('ptrg') +typeEventTargetRef = FOUR_CHAR_CODE('etrg') +kEventParamWindowRef = FOUR_CHAR_CODE('wind') +kEventParamGrafPort = FOUR_CHAR_CODE('graf') +kEventParamDragRef = FOUR_CHAR_CODE('drag') +kEventParamMenuRef = FOUR_CHAR_CODE('menu') +kEventParamEventRef = FOUR_CHAR_CODE('evnt') +kEventParamControlRef = FOUR_CHAR_CODE('ctrl') +kEventParamRgnHandle = FOUR_CHAR_CODE('rgnh') +kEventParamEnabled = FOUR_CHAR_CODE('enab') +kEventParamDimensions = FOUR_CHAR_CODE('dims') +kEventParamAvailableBounds = FOUR_CHAR_CODE('avlb') +kEventParamAEEventID = keyAEEventID +kEventParamAEEventClass = keyAEEventClass +kEventParamCGContextRef = FOUR_CHAR_CODE('cntx') +kEventParamDeviceDepth = FOUR_CHAR_CODE('devd') +kEventParamDeviceColor = FOUR_CHAR_CODE('devc') +typeWindowRef = FOUR_CHAR_CODE('wind') +typeGrafPtr = FOUR_CHAR_CODE('graf') +typeGWorldPtr = FOUR_CHAR_CODE('gwld') +typeDragRef = FOUR_CHAR_CODE('drag') +typeMenuRef = FOUR_CHAR_CODE('menu') +typeControlRef = FOUR_CHAR_CODE('ctrl') +typeCollection = FOUR_CHAR_CODE('cltn') +typeQDRgnHandle = FOUR_CHAR_CODE('rgnh') +typeOSStatus = FOUR_CHAR_CODE('osst') +typeCFStringRef = FOUR_CHAR_CODE('cfst') +typeCFIndex = FOUR_CHAR_CODE('cfix') +typeCFTypeRef = FOUR_CHAR_CODE('cfty') +typeCGContextRef = FOUR_CHAR_CODE('cntx') +typeHIPoint = FOUR_CHAR_CODE('hipt') +typeHISize = FOUR_CHAR_CODE('hisz') +typeHIRect = FOUR_CHAR_CODE('hirc') +kEventParamMouseLocation = FOUR_CHAR_CODE('mloc') +kEventParamMouseButton = FOUR_CHAR_CODE('mbtn') +kEventParamClickCount = FOUR_CHAR_CODE('ccnt') +kEventParamMouseWheelAxis = FOUR_CHAR_CODE('mwax') +kEventParamMouseWheelDelta = FOUR_CHAR_CODE('mwdl') +kEventParamMouseDelta = FOUR_CHAR_CODE('mdta') +kEventParamMouseChord = FOUR_CHAR_CODE('chor') +kEventParamTabletEventType = FOUR_CHAR_CODE('tblt') +typeMouseButton = FOUR_CHAR_CODE('mbtn') +typeMouseWheelAxis = FOUR_CHAR_CODE('mwax') +kEventParamKeyCode = FOUR_CHAR_CODE('kcod') +kEventParamKeyMacCharCodes = FOUR_CHAR_CODE('kchr') +kEventParamKeyModifiers = FOUR_CHAR_CODE('kmod') +kEventParamKeyUnicodes = FOUR_CHAR_CODE('kuni') +kEventParamKeyboardType = FOUR_CHAR_CODE('kbdt') +typeEventHotKeyID = FOUR_CHAR_CODE('hkid') +kEventParamTextInputSendRefCon = FOUR_CHAR_CODE('tsrc') +kEventParamTextInputSendComponentInstance = FOUR_CHAR_CODE('tsci') +kEventParamTextInputSendSLRec = FOUR_CHAR_CODE('tssl') +kEventParamTextInputReplySLRec = FOUR_CHAR_CODE('trsl') +kEventParamTextInputSendText = FOUR_CHAR_CODE('tstx') +kEventParamTextInputReplyText = FOUR_CHAR_CODE('trtx') +kEventParamTextInputSendUpdateRng = FOUR_CHAR_CODE('tsup') +kEventParamTextInputSendHiliteRng = FOUR_CHAR_CODE('tshi') +kEventParamTextInputSendClauseRng = FOUR_CHAR_CODE('tscl') +kEventParamTextInputSendPinRng = FOUR_CHAR_CODE('tspn') +kEventParamTextInputSendFixLen = FOUR_CHAR_CODE('tsfx') +kEventParamTextInputSendLeadingEdge = FOUR_CHAR_CODE('tsle') +kEventParamTextInputReplyLeadingEdge = FOUR_CHAR_CODE('trle') +kEventParamTextInputSendTextOffset = FOUR_CHAR_CODE('tsto') +kEventParamTextInputReplyTextOffset = FOUR_CHAR_CODE('trto') +kEventParamTextInputReplyRegionClass = FOUR_CHAR_CODE('trrg') +kEventParamTextInputSendCurrentPoint = FOUR_CHAR_CODE('tscp') +kEventParamTextInputSendDraggingMode = FOUR_CHAR_CODE('tsdm') +kEventParamTextInputReplyPoint = FOUR_CHAR_CODE('trpt') +kEventParamTextInputReplyFont = FOUR_CHAR_CODE('trft') +kEventParamTextInputReplyFMFont = FOUR_CHAR_CODE('trfm') +kEventParamTextInputReplyPointSize = FOUR_CHAR_CODE('trpz') +kEventParamTextInputReplyLineHeight = FOUR_CHAR_CODE('trlh') +kEventParamTextInputReplyLineAscent = FOUR_CHAR_CODE('trla') +kEventParamTextInputReplyTextAngle = FOUR_CHAR_CODE('trta') +kEventParamTextInputSendShowHide = FOUR_CHAR_CODE('tssh') +kEventParamTextInputReplyShowHide = FOUR_CHAR_CODE('trsh') +kEventParamTextInputSendKeyboardEvent = FOUR_CHAR_CODE('tske') +kEventParamTextInputSendTextServiceEncoding = FOUR_CHAR_CODE('tsse') +kEventParamTextInputSendTextServiceMacEncoding = FOUR_CHAR_CODE('tssm') +kEventParamHICommand = FOUR_CHAR_CODE('hcmd') +typeHICommand = FOUR_CHAR_CODE('hcmd') +kEventParamWindowFeatures = FOUR_CHAR_CODE('wftr') +kEventParamWindowDefPart = FOUR_CHAR_CODE('wdpc') +kEventParamCurrentBounds = FOUR_CHAR_CODE('crct') +kEventParamOriginalBounds = FOUR_CHAR_CODE('orct') +kEventParamPreviousBounds = FOUR_CHAR_CODE('prct') +kEventParamClickActivation = FOUR_CHAR_CODE('clac') +kEventParamWindowRegionCode = FOUR_CHAR_CODE('wshp') +kEventParamWindowDragHiliteFlag = FOUR_CHAR_CODE('wdhf') +kEventParamWindowModifiedFlag = FOUR_CHAR_CODE('wmff') +kEventParamWindowProxyGWorldPtr = FOUR_CHAR_CODE('wpgw') +kEventParamWindowProxyImageRgn = FOUR_CHAR_CODE('wpir') +kEventParamWindowProxyOutlineRgn = FOUR_CHAR_CODE('wpor') +kEventParamWindowStateChangedFlags = FOUR_CHAR_CODE('wscf') +kEventParamWindowTitleFullWidth = FOUR_CHAR_CODE('wtfw') +kEventParamWindowTitleTextWidth = FOUR_CHAR_CODE('wttw') +kEventParamWindowGrowRect = FOUR_CHAR_CODE('grct') +kEventParamAttributes = FOUR_CHAR_CODE('attr') +kEventParamDockChangedReason = FOUR_CHAR_CODE('dcrs') +kEventParamPreviousDockRect = FOUR_CHAR_CODE('pdrc') +kEventParamCurrentDockRect = FOUR_CHAR_CODE('cdrc') +typeWindowRegionCode = FOUR_CHAR_CODE('wshp') +typeWindowDefPartCode = FOUR_CHAR_CODE('wdpt') +typeClickActivationResult = FOUR_CHAR_CODE('clac') +kEventParamControlPart = FOUR_CHAR_CODE('cprt') +kEventParamInitCollection = FOUR_CHAR_CODE('icol') +kEventParamControlMessage = FOUR_CHAR_CODE('cmsg') +kEventParamControlParam = FOUR_CHAR_CODE('cprm') +kEventParamControlResult = FOUR_CHAR_CODE('crsl') +kEventParamControlRegion = FOUR_CHAR_CODE('crgn') +kEventParamControlAction = FOUR_CHAR_CODE('caup') +kEventParamControlIndicatorDragConstraint = FOUR_CHAR_CODE('cidc') +kEventParamControlIndicatorRegion = FOUR_CHAR_CODE('cirn') +kEventParamControlIsGhosting = FOUR_CHAR_CODE('cgst') +kEventParamControlIndicatorOffset = FOUR_CHAR_CODE('ciof') +kEventParamControlClickActivationResult = FOUR_CHAR_CODE('ccar') +kEventParamControlSubControl = FOUR_CHAR_CODE('csub') +kEventParamControlOptimalBounds = FOUR_CHAR_CODE('cobn') +kEventParamControlOptimalBaselineOffset = FOUR_CHAR_CODE('cobo') +kEventParamControlDataTag = FOUR_CHAR_CODE('cdtg') +kEventParamControlDataBuffer = FOUR_CHAR_CODE('cdbf') +kEventParamControlDataBufferSize = FOUR_CHAR_CODE('cdbs') +kEventParamControlDrawDepth = FOUR_CHAR_CODE('cddp') +kEventParamControlDrawInColor = FOUR_CHAR_CODE('cdic') +kEventParamControlFeatures = FOUR_CHAR_CODE('cftr') +kEventParamControlPartBounds = FOUR_CHAR_CODE('cpbd') +kEventParamControlOriginalOwningWindow = FOUR_CHAR_CODE('coow') +kEventParamControlCurrentOwningWindow = FOUR_CHAR_CODE('ccow') +typeControlActionUPP = FOUR_CHAR_CODE('caup') +typeIndicatorDragConstraint = FOUR_CHAR_CODE('cidc') +typeControlPartCode = FOUR_CHAR_CODE('cprt') +kEventParamCurrentMenuTrackingMode = FOUR_CHAR_CODE('cmtm') +kEventParamNewMenuTrackingMode = FOUR_CHAR_CODE('nmtm') +kEventParamMenuFirstOpen = FOUR_CHAR_CODE('1sto') +kEventParamMenuItemIndex = FOUR_CHAR_CODE('item') +kEventParamMenuCommand = FOUR_CHAR_CODE('mcmd') +kEventParamEnableMenuForKeyEvent = FOUR_CHAR_CODE('fork') +kEventParamMenuEventOptions = FOUR_CHAR_CODE('meop') +kEventParamMenuContext = FOUR_CHAR_CODE('mctx') +kEventParamMenuItemBounds = FOUR_CHAR_CODE('mitb') +kEventParamMenuMarkBounds = FOUR_CHAR_CODE('mmkb') +kEventParamMenuIconBounds = FOUR_CHAR_CODE('micb') +kEventParamMenuTextBounds = FOUR_CHAR_CODE('mtxb') +kEventParamMenuTextBaseline = FOUR_CHAR_CODE('mtbl') +kEventParamMenuCommandKeyBounds = FOUR_CHAR_CODE('mcmb') +kEventParamMenuVirtualTop = FOUR_CHAR_CODE('mvrt') +kEventParamMenuVirtualBottom = FOUR_CHAR_CODE('mvrb') +kEventParamMenuDrawState = FOUR_CHAR_CODE('mdrs') +kEventParamMenuItemType = FOUR_CHAR_CODE('mitp') +kEventParamMenuItemWidth = FOUR_CHAR_CODE('mitw') +kEventParamMenuItemHeight = FOUR_CHAR_CODE('mith') +typeMenuItemIndex = FOUR_CHAR_CODE('midx') +typeMenuCommand = FOUR_CHAR_CODE('mcmd') +typeMenuTrackingMode = FOUR_CHAR_CODE('mtmd') +typeMenuEventOptions = FOUR_CHAR_CODE('meop') +typeThemeMenuState = FOUR_CHAR_CODE('tmns') +typeThemeMenuItemType = FOUR_CHAR_CODE('tmit') +kEventParamProcessID = FOUR_CHAR_CODE('psn ') +kEventParamLaunchRefCon = FOUR_CHAR_CODE('lref') +kEventParamLaunchErr = FOUR_CHAR_CODE('err ') +kEventParamTabletPointRec = FOUR_CHAR_CODE('tbrc') +kEventParamTabletProximityRec = FOUR_CHAR_CODE('tbpx') +typeTabletPointRec = FOUR_CHAR_CODE('tbrc') +typeTabletProximityRec = FOUR_CHAR_CODE('tbpx') +kEventParamTabletPointerRec = FOUR_CHAR_CODE('tbrc') +typeTabletPointerRec = FOUR_CHAR_CODE('tbrc') +kEventParamNewScrollBarVariant = FOUR_CHAR_CODE('nsbv') +kEventParamScrapRef = FOUR_CHAR_CODE('scrp') +kEventParamServiceCopyTypes = FOUR_CHAR_CODE('svsd') +kEventParamServicePasteTypes = FOUR_CHAR_CODE('svpt') +kEventParamServiceMessageName = FOUR_CHAR_CODE('svmg') +kEventParamServiceUserData = FOUR_CHAR_CODE('svud') +typeScrapRef = FOUR_CHAR_CODE('scrp') +typeCFMutableArrayRef = FOUR_CHAR_CODE('cfma') +# sHandler = NewEventHandlerUPP( x ) +kMouseTrackingMousePressed = kMouseTrackingMouseDown +kMouseTrackingMouseReleased = kMouseTrackingMouseUp diff --git a/sys/lib/python/plat-mac/Carbon/CarbonEvt.py b/sys/lib/python/plat-mac/Carbon/CarbonEvt.py new file mode 100755 index 000000000..63a779299 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/CarbonEvt.py @@ -0,0 +1 @@ +from _CarbonEvt import * diff --git a/sys/lib/python/plat-mac/Carbon/Cm.py b/sys/lib/python/plat-mac/Carbon/Cm.py new file mode 100644 index 000000000..3c8bc331b --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Cm.py @@ -0,0 +1 @@ +from _Cm import * diff --git a/sys/lib/python/plat-mac/Carbon/Components.py b/sys/lib/python/plat-mac/Carbon/Components.py new file mode 100644 index 000000000..75574cf6d --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Components.py @@ -0,0 +1,62 @@ +# Generated from 'Components.h' + +def FOUR_CHAR_CODE(x): return x +kAppleManufacturer = FOUR_CHAR_CODE('appl') +kComponentResourceType = FOUR_CHAR_CODE('thng') +kComponentAliasResourceType = FOUR_CHAR_CODE('thga') +kAnyComponentType = 0 +kAnyComponentSubType = 0 +kAnyComponentManufacturer = 0 +kAnyComponentFlagsMask = 0 +cmpIsMissing = 1L << 29 +cmpWantsRegisterMessage = 1L << 31 +kComponentOpenSelect = -1 +kComponentCloseSelect = -2 +kComponentCanDoSelect = -3 +kComponentVersionSelect = -4 +kComponentRegisterSelect = -5 +kComponentTargetSelect = -6 +kComponentUnregisterSelect = -7 +kComponentGetMPWorkFunctionSelect = -8 +kComponentExecuteWiredActionSelect = -9 +kComponentGetPublicResourceSelect = -10 +componentDoAutoVersion = (1 << 0) +componentWantsUnregister = (1 << 1) +componentAutoVersionIncludeFlags = (1 << 2) +componentHasMultiplePlatforms = (1 << 3) +componentLoadResident = (1 << 4) +defaultComponentIdentical = 0 +defaultComponentAnyFlags = 1 +defaultComponentAnyManufacturer = 2 +defaultComponentAnySubType = 4 +defaultComponentAnyFlagsAnyManufacturer = (defaultComponentAnyFlags + defaultComponentAnyManufacturer) +defaultComponentAnyFlagsAnyManufacturerAnySubType = (defaultComponentAnyFlags + defaultComponentAnyManufacturer + defaultComponentAnySubType) +registerComponentGlobal = 1 +registerComponentNoDuplicates = 2 +registerComponentAfterExisting = 4 +registerComponentAliasesOnly = 8 +platform68k = 1 +platformPowerPC = 2 +platformInterpreted = 3 +platformWin32 = 4 +platformPowerPCNativeEntryPoint = 5 +mpWorkFlagDoWork = (1 << 0) +mpWorkFlagDoCompletion = (1 << 1) +mpWorkFlagCopyWorkBlock = (1 << 2) +mpWorkFlagDontBlock = (1 << 3) +mpWorkFlagGetProcessorCount = (1 << 4) +mpWorkFlagGetIsRunning = (1 << 6) +cmpAliasNoFlags = 0 +cmpAliasOnlyThisFile = 1 +uppComponentFunctionImplementedProcInfo = 0x000002F0 +uppGetComponentVersionProcInfo = 0x000000F0 +uppComponentSetTargetProcInfo = 0x000003F0 +uppCallComponentOpenProcInfo = 0x000003F0 +uppCallComponentCloseProcInfo = 0x000003F0 +uppCallComponentCanDoProcInfo = 0x000002F0 +uppCallComponentVersionProcInfo = 0x000000F0 +uppCallComponentRegisterProcInfo = 0x000000F0 +uppCallComponentTargetProcInfo = 0x000003F0 +uppCallComponentUnregisterProcInfo = 0x000000F0 +uppCallComponentGetMPWorkFunctionProcInfo = 0x00000FF0 +uppCallComponentGetPublicResourceProcInfo = 0x00003BF0 diff --git a/sys/lib/python/plat-mac/Carbon/ControlAccessor.py b/sys/lib/python/plat-mac/Carbon/ControlAccessor.py new file mode 100644 index 000000000..099892538 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/ControlAccessor.py @@ -0,0 +1,56 @@ +# Accessor functions for control properties + +from Controls import * +import struct + +# These needn't go through this module, but are here for completeness +def SetControlData_Handle(control, part, selector, data): + control.SetControlData_Handle(part, selector, data) + +def GetControlData_Handle(control, part, selector): + return control.GetControlData_Handle(part, selector) + +_accessdict = { + kControlPopupButtonMenuHandleTag: (SetControlData_Handle, GetControlData_Handle), +} + +_codingdict = { + kControlPushButtonDefaultTag : ("b", None, None), + + kControlEditTextTextTag: (None, None, None), + kControlEditTextPasswordTag: (None, None, None), + + kControlPopupButtonMenuIDTag: ("h", None, None), + + kControlListBoxDoubleClickTag: ("b", None, None), +} + +def SetControlData(control, part, selector, data): + if _accessdict.has_key(selector): + setfunc, getfunc = _accessdict[selector] + setfunc(control, part, selector, data) + return + if not _codingdict.has_key(selector): + raise KeyError, ('Unknown control selector', selector) + structfmt, coder, decoder = _codingdict[selector] + if coder: + data = coder(data) + if structfmt: + data = struct.pack(structfmt, data) + control.SetControlData(part, selector, data) + +def GetControlData(control, part, selector): + if _accessdict.has_key(selector): + setfunc, getfunc = _accessdict[selector] + return getfunc(control, part, selector, data) + if not _codingdict.has_key(selector): + raise KeyError, ('Unknown control selector', selector) + structfmt, coder, decoder = _codingdict[selector] + data = control.GetControlData(part, selector) + if structfmt: + data = struct.unpack(structfmt, data) + if decoder: + data = decoder(data) + if type(data) == type(()) and len(data) == 1: + data = data[0] + return data diff --git a/sys/lib/python/plat-mac/Carbon/Controls.py b/sys/lib/python/plat-mac/Carbon/Controls.py new file mode 100644 index 000000000..6e5d8ea7f --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Controls.py @@ -0,0 +1,668 @@ +# Generated from 'Controls.h' + +def FOUR_CHAR_CODE(x): return x +from Carbon.TextEdit import * +from Carbon.QuickDraw import * +from Carbon.Dragconst import * +from Carbon.CarbonEvents import * +from Carbon.Appearance import * +kDataBrowserItemAnyState = -1 +kControlBevelButtonCenterPopupGlyphTag = -1 +kDataBrowserClientPropertyFlagsMask = 0xFF000000 + +kControlDefProcType = FOUR_CHAR_CODE('CDEF') +kControlTemplateResourceType = FOUR_CHAR_CODE('CNTL') +kControlColorTableResourceType = FOUR_CHAR_CODE('cctb') +kControlDefProcResourceType = FOUR_CHAR_CODE('CDEF') +controlNotifyNothing = FOUR_CHAR_CODE('nada') +controlNotifyClick = FOUR_CHAR_CODE('clik') +controlNotifyFocus = FOUR_CHAR_CODE('focu') +controlNotifyKey = FOUR_CHAR_CODE('key ') +kControlCanAutoInvalidate = 1L << 0 +staticTextProc = 256 +editTextProc = 272 +iconProc = 288 +userItemProc = 304 +pictItemProc = 320 +cFrameColor = 0 +cBodyColor = 1 +cTextColor = 2 +cThumbColor = 3 +kNumberCtlCTabEntries = 4 +kControlNoVariant = 0 +kControlUsesOwningWindowsFontVariant = 1 << 3 +kControlNoPart = 0 +kControlIndicatorPart = 129 +kControlDisabledPart = 254 +kControlInactivePart = 255 +kControlEntireControl = 0 +kControlStructureMetaPart = -1 +kControlContentMetaPart = -2 +kControlFocusNoPart = 0 +kControlFocusNextPart = -1 +kControlFocusPrevPart = -2 +kControlCollectionTagBounds = FOUR_CHAR_CODE('boun') +kControlCollectionTagValue = FOUR_CHAR_CODE('valu') +kControlCollectionTagMinimum = FOUR_CHAR_CODE('min ') +kControlCollectionTagMaximum = FOUR_CHAR_CODE('max ') +kControlCollectionTagViewSize = FOUR_CHAR_CODE('view') +kControlCollectionTagVisibility = FOUR_CHAR_CODE('visi') +kControlCollectionTagRefCon = FOUR_CHAR_CODE('refc') +kControlCollectionTagTitle = FOUR_CHAR_CODE('titl') +kControlCollectionTagUnicodeTitle = FOUR_CHAR_CODE('uttl') +kControlCollectionTagIDSignature = FOUR_CHAR_CODE('idsi') +kControlCollectionTagIDID = FOUR_CHAR_CODE('idid') +kControlCollectionTagCommand = FOUR_CHAR_CODE('cmd ') +kControlCollectionTagVarCode = FOUR_CHAR_CODE('varc') +kControlContentTextOnly = 0 +kControlNoContent = 0 +kControlContentIconSuiteRes = 1 +kControlContentCIconRes = 2 +kControlContentPictRes = 3 +kControlContentICONRes = 4 +kControlContentIconSuiteHandle = 129 +kControlContentCIconHandle = 130 +kControlContentPictHandle = 131 +kControlContentIconRef = 132 +kControlContentICON = 133 +kControlKeyScriptBehaviorAllowAnyScript = FOUR_CHAR_CODE('any ') +kControlKeyScriptBehaviorPrefersRoman = FOUR_CHAR_CODE('prmn') +kControlKeyScriptBehaviorRequiresRoman = FOUR_CHAR_CODE('rrmn') +kControlFontBigSystemFont = -1 +kControlFontSmallSystemFont = -2 +kControlFontSmallBoldSystemFont = -3 +kControlFontViewSystemFont = -4 +kControlUseFontMask = 0x0001 +kControlUseFaceMask = 0x0002 +kControlUseSizeMask = 0x0004 +kControlUseForeColorMask = 0x0008 +kControlUseBackColorMask = 0x0010 +kControlUseModeMask = 0x0020 +kControlUseJustMask = 0x0040 +kControlUseAllMask = 0x00FF +kControlAddFontSizeMask = 0x0100 +kControlAddToMetaFontMask = 0x0200 +kControlUseThemeFontIDMask = 0x0080 +kDoNotActivateAndIgnoreClick = 0 +kDoNotActivateAndHandleClick = 1 +kActivateAndIgnoreClick = 2 +kActivateAndHandleClick = 3 +kControlFontStyleTag = FOUR_CHAR_CODE('font') +kControlKeyFilterTag = FOUR_CHAR_CODE('fltr') +kControlKindTag = FOUR_CHAR_CODE('kind') +kControlSizeTag = FOUR_CHAR_CODE('size') +kControlSupportsGhosting = 1 << 0 +kControlSupportsEmbedding = 1 << 1 +kControlSupportsFocus = 1 << 2 +kControlWantsIdle = 1 << 3 +kControlWantsActivate = 1 << 4 +kControlHandlesTracking = 1 << 5 +kControlSupportsDataAccess = 1 << 6 +kControlHasSpecialBackground = 1 << 7 +kControlGetsFocusOnClick = 1 << 8 +kControlSupportsCalcBestRect = 1 << 9 +kControlSupportsLiveFeedback = 1 << 10 +kControlHasRadioBehavior = 1 << 11 +kControlSupportsDragAndDrop = 1 << 12 +kControlAutoToggles = 1 << 14 +kControlSupportsGetRegion = 1 << 17 +kControlSupportsFlattening = 1 << 19 +kControlSupportsSetCursor = 1 << 20 +kControlSupportsContextualMenus = 1 << 21 +kControlSupportsClickActivation = 1 << 22 +kControlIdlesWithTimer = 1 << 23 +drawCntl = 0 +testCntl = 1 +calcCRgns = 2 +initCntl = 3 +dispCntl = 4 +posCntl = 5 +thumbCntl = 6 +dragCntl = 7 +autoTrack = 8 +calcCntlRgn = 10 +calcThumbRgn = 11 +drawThumbOutline = 12 +kControlMsgDrawGhost = 13 +kControlMsgCalcBestRect = 14 +kControlMsgHandleTracking = 15 +kControlMsgFocus = 16 +kControlMsgKeyDown = 17 +kControlMsgIdle = 18 +kControlMsgGetFeatures = 19 +kControlMsgSetData = 20 +kControlMsgGetData = 21 +kControlMsgActivate = 22 +kControlMsgSetUpBackground = 23 +kControlMsgCalcValueFromPos = 26 +kControlMsgTestNewMsgSupport = 27 +kControlMsgSubValueChanged = 25 +kControlMsgSubControlAdded = 28 +kControlMsgSubControlRemoved = 29 +kControlMsgApplyTextColor = 30 +kControlMsgGetRegion = 31 +kControlMsgFlatten = 32 +kControlMsgSetCursor = 33 +kControlMsgDragEnter = 38 +kControlMsgDragLeave = 39 +kControlMsgDragWithin = 40 +kControlMsgDragReceive = 41 +kControlMsgDisplayDebugInfo = 46 +kControlMsgContextualMenuClick = 47 +kControlMsgGetClickActivation = 48 +kControlSizeNormal = 0 +kControlSizeSmall = 1 +kControlSizeLarge = 2 +kControlSizeAuto = 0xFFFF +kDrawControlEntireControl = 0 +kDrawControlIndicatorOnly = 129 +kDragControlEntireControl = 0 +kDragControlIndicator = 1 +kControlSupportsNewMessages = FOUR_CHAR_CODE(' ok ') +kControlKeyFilterBlockKey = 0 +kControlKeyFilterPassKey = 1 +noConstraint = kNoConstraint +hAxisOnly = 1 +vAxisOnly = 2 +kControlDefProcPtr = 0 +kControlDefObjectClass = 1 +kControlKindSignatureApple = FOUR_CHAR_CODE('appl') +kControlPropertyPersistent = 0x00000001 +kDragTrackingEnterControl = 2 +kDragTrackingInControl = 3 +kDragTrackingLeaveControl = 4 +useWFont = kControlUsesOwningWindowsFontVariant +inThumb = kControlIndicatorPart +kNoHiliteControlPart = kControlNoPart +kInIndicatorControlPart = kControlIndicatorPart +kReservedControlPart = kControlDisabledPart +kControlInactiveControlPart = kControlInactivePart +kControlTabListResType = FOUR_CHAR_CODE('tab#') +kControlListDescResType = FOUR_CHAR_CODE('ldes') +kControlCheckBoxUncheckedValue = 0 +kControlCheckBoxCheckedValue = 1 +kControlCheckBoxMixedValue = 2 +kControlRadioButtonUncheckedValue = 0 +kControlRadioButtonCheckedValue = 1 +kControlRadioButtonMixedValue = 2 +popupFixedWidth = 1 << 0 +popupVariableWidth = 1 << 1 +popupUseAddResMenu = 1 << 2 +popupUseWFont = 1 << 3 +popupTitleBold = 1 << 8 +popupTitleItalic = 1 << 9 +popupTitleUnderline = 1 << 10 +popupTitleOutline = 1 << 11 +popupTitleShadow = 1 << 12 +popupTitleCondense = 1 << 13 +popupTitleExtend = 1 << 14 +popupTitleNoStyle = 1 << 15 +popupTitleLeftJust = 0x00000000 +popupTitleCenterJust = 0x00000001 +popupTitleRightJust = 0x000000FF +pushButProc = 0 +checkBoxProc = 1 +radioButProc = 2 +scrollBarProc = 16 +popupMenuProc = 1008 +kControlLabelPart = 1 +kControlMenuPart = 2 +kControlTrianglePart = 4 +kControlEditTextPart = 5 +kControlPicturePart = 6 +kControlIconPart = 7 +kControlClockPart = 8 +kControlListBoxPart = 24 +kControlListBoxDoubleClickPart = 25 +kControlImageWellPart = 26 +kControlRadioGroupPart = 27 +kControlButtonPart = 10 +kControlCheckBoxPart = 11 +kControlRadioButtonPart = 11 +kControlUpButtonPart = 20 +kControlDownButtonPart = 21 +kControlPageUpPart = 22 +kControlPageDownPart = 23 +kControlClockHourDayPart = 9 +kControlClockMinuteMonthPart = 10 +kControlClockSecondYearPart = 11 +kControlClockAMPMPart = 12 +kControlDataBrowserPart = 24 +kControlDataBrowserDraggedPart = 25 +kControlBevelButtonSmallBevelProc = 32 +kControlBevelButtonNormalBevelProc = 33 +kControlBevelButtonLargeBevelProc = 34 +kControlBevelButtonSmallBevelVariant = 0 +kControlBevelButtonNormalBevelVariant = (1 << 0) +kControlBevelButtonLargeBevelVariant = (1 << 1) +kControlBevelButtonMenuOnRightVariant = (1 << 2) +kControlBevelButtonSmallBevel = 0 +kControlBevelButtonNormalBevel = 1 +kControlBevelButtonLargeBevel = 2 +kControlBehaviorPushbutton = 0 +kControlBehaviorToggles = 0x0100 +kControlBehaviorSticky = 0x0200 +kControlBehaviorSingleValueMenu = 0 +kControlBehaviorMultiValueMenu = 0x4000 +kControlBehaviorOffsetContents = 0x8000 +kControlBehaviorCommandMenu = 0x2000 +kControlBevelButtonMenuOnBottom = 0 +kControlBevelButtonMenuOnRight = (1 << 2) +kControlKindBevelButton = FOUR_CHAR_CODE('bevl') +kControlBevelButtonAlignSysDirection = -1 +kControlBevelButtonAlignCenter = 0 +kControlBevelButtonAlignLeft = 1 +kControlBevelButtonAlignRight = 2 +kControlBevelButtonAlignTop = 3 +kControlBevelButtonAlignBottom = 4 +kControlBevelButtonAlignTopLeft = 5 +kControlBevelButtonAlignBottomLeft = 6 +kControlBevelButtonAlignTopRight = 7 +kControlBevelButtonAlignBottomRight = 8 +kControlBevelButtonAlignTextSysDirection = teFlushDefault +kControlBevelButtonAlignTextCenter = teCenter +kControlBevelButtonAlignTextFlushRight = teFlushRight +kControlBevelButtonAlignTextFlushLeft = teFlushLeft +kControlBevelButtonPlaceSysDirection = -1 +kControlBevelButtonPlaceNormally = 0 +kControlBevelButtonPlaceToRightOfGraphic = 1 +kControlBevelButtonPlaceToLeftOfGraphic = 2 +kControlBevelButtonPlaceBelowGraphic = 3 +kControlBevelButtonPlaceAboveGraphic = 4 +kControlBevelButtonContentTag = FOUR_CHAR_CODE('cont') +kControlBevelButtonTransformTag = FOUR_CHAR_CODE('tran') +kControlBevelButtonTextAlignTag = FOUR_CHAR_CODE('tali') +kControlBevelButtonTextOffsetTag = FOUR_CHAR_CODE('toff') +kControlBevelButtonGraphicAlignTag = FOUR_CHAR_CODE('gali') +kControlBevelButtonGraphicOffsetTag = FOUR_CHAR_CODE('goff') +kControlBevelButtonTextPlaceTag = FOUR_CHAR_CODE('tplc') +kControlBevelButtonMenuValueTag = FOUR_CHAR_CODE('mval') +kControlBevelButtonMenuHandleTag = FOUR_CHAR_CODE('mhnd') +kControlBevelButtonMenuRefTag = FOUR_CHAR_CODE('mhnd') +# kControlBevelButtonCenterPopupGlyphTag = FOUR_CHAR_CODE('pglc') +kControlBevelButtonLastMenuTag = FOUR_CHAR_CODE('lmnu') +kControlBevelButtonMenuDelayTag = FOUR_CHAR_CODE('mdly') +kControlBevelButtonScaleIconTag = FOUR_CHAR_CODE('scal') +kControlBevelButtonOwnedMenuRefTag = FOUR_CHAR_CODE('omrf') +kControlBevelButtonKindTag = FOUR_CHAR_CODE('bebk') +kControlSliderProc = 48 +kControlSliderLiveFeedback = (1 << 0) +kControlSliderHasTickMarks = (1 << 1) +kControlSliderReverseDirection = (1 << 2) +kControlSliderNonDirectional = (1 << 3) +kControlSliderPointsDownOrRight = 0 +kControlSliderPointsUpOrLeft = 1 +kControlSliderDoesNotPoint = 2 +kControlKindSlider = FOUR_CHAR_CODE('sldr') +kControlTriangleProc = 64 +kControlTriangleLeftFacingProc = 65 +kControlTriangleAutoToggleProc = 66 +kControlTriangleLeftFacingAutoToggleProc = 67 +kControlDisclosureTrianglePointDefault = 0 +kControlDisclosureTrianglePointRight = 1 +kControlDisclosureTrianglePointLeft = 2 +kControlKindDisclosureTriangle = FOUR_CHAR_CODE('dist') +kControlTriangleLastValueTag = FOUR_CHAR_CODE('last') +kControlProgressBarProc = 80 +kControlRelevanceBarProc = 81 +kControlKindProgressBar = FOUR_CHAR_CODE('prgb') +kControlKindRelevanceBar = FOUR_CHAR_CODE('relb') +kControlProgressBarIndeterminateTag = FOUR_CHAR_CODE('inde') +kControlProgressBarAnimatingTag = FOUR_CHAR_CODE('anim') +kControlLittleArrowsProc = 96 +kControlKindLittleArrows = FOUR_CHAR_CODE('larr') +kControlChasingArrowsProc = 112 +kControlKindChasingArrows = FOUR_CHAR_CODE('carr') +kControlChasingArrowsAnimatingTag = FOUR_CHAR_CODE('anim') +kControlTabLargeProc = 128 +kControlTabSmallProc = 129 +kControlTabLargeNorthProc = 128 +kControlTabSmallNorthProc = 129 +kControlTabLargeSouthProc = 130 +kControlTabSmallSouthProc = 131 +kControlTabLargeEastProc = 132 +kControlTabSmallEastProc = 133 +kControlTabLargeWestProc = 134 +kControlTabSmallWestProc = 135 +kControlTabDirectionNorth = 0 +kControlTabDirectionSouth = 1 +kControlTabDirectionEast = 2 +kControlTabDirectionWest = 3 +kControlTabSizeLarge = kControlSizeNormal +kControlTabSizeSmall = kControlSizeSmall +kControlKindTabs = FOUR_CHAR_CODE('tabs') +kControlTabContentRectTag = FOUR_CHAR_CODE('rect') +kControlTabEnabledFlagTag = FOUR_CHAR_CODE('enab') +kControlTabFontStyleTag = kControlFontStyleTag +kControlTabInfoTag = FOUR_CHAR_CODE('tabi') +kControlTabImageContentTag = FOUR_CHAR_CODE('cont') +kControlTabInfoVersionZero = 0 +kControlTabInfoVersionOne = 1 +kControlSeparatorLineProc = 144 +kControlKindSeparator = FOUR_CHAR_CODE('sepa') +kControlGroupBoxTextTitleProc = 160 +kControlGroupBoxCheckBoxProc = 161 +kControlGroupBoxPopupButtonProc = 162 +kControlGroupBoxSecondaryTextTitleProc = 164 +kControlGroupBoxSecondaryCheckBoxProc = 165 +kControlGroupBoxSecondaryPopupButtonProc = 166 +kControlKindGroupBox = FOUR_CHAR_CODE('grpb') +kControlKindCheckGroupBox = FOUR_CHAR_CODE('cgrp') +kControlKindPopupGroupBox = FOUR_CHAR_CODE('pgrp') +kControlGroupBoxMenuHandleTag = FOUR_CHAR_CODE('mhan') +kControlGroupBoxMenuRefTag = FOUR_CHAR_CODE('mhan') +kControlGroupBoxFontStyleTag = kControlFontStyleTag +kControlGroupBoxTitleRectTag = FOUR_CHAR_CODE('trec') +kControlImageWellProc = 176 +kControlKindImageWell = FOUR_CHAR_CODE('well') +kControlImageWellContentTag = FOUR_CHAR_CODE('cont') +kControlImageWellTransformTag = FOUR_CHAR_CODE('tran') +kControlImageWellIsDragDestinationTag = FOUR_CHAR_CODE('drag') +kControlPopupArrowEastProc = 192 +kControlPopupArrowWestProc = 193 +kControlPopupArrowNorthProc = 194 +kControlPopupArrowSouthProc = 195 +kControlPopupArrowSmallEastProc = 196 +kControlPopupArrowSmallWestProc = 197 +kControlPopupArrowSmallNorthProc = 198 +kControlPopupArrowSmallSouthProc = 199 +kControlPopupArrowOrientationEast = 0 +kControlPopupArrowOrientationWest = 1 +kControlPopupArrowOrientationNorth = 2 +kControlPopupArrowOrientationSouth = 3 +kControlPopupArrowSizeNormal = 0 +kControlPopupArrowSizeSmall = 1 +kControlKindPopupArrow = FOUR_CHAR_CODE('parr') +kControlPlacardProc = 224 +kControlKindPlacard = FOUR_CHAR_CODE('plac') +kControlClockTimeProc = 240 +kControlClockTimeSecondsProc = 241 +kControlClockDateProc = 242 +kControlClockMonthYearProc = 243 +kControlClockTypeHourMinute = 0 +kControlClockTypeHourMinuteSecond = 1 +kControlClockTypeMonthDayYear = 2 +kControlClockTypeMonthYear = 3 +kControlClockFlagStandard = 0 +kControlClockNoFlags = 0 +kControlClockFlagDisplayOnly = 1 +kControlClockIsDisplayOnly = 1 +kControlClockFlagLive = 2 +kControlClockIsLive = 2 +kControlKindClock = FOUR_CHAR_CODE('clck') +kControlClockLongDateTag = FOUR_CHAR_CODE('date') +kControlClockFontStyleTag = kControlFontStyleTag +kControlClockAnimatingTag = FOUR_CHAR_CODE('anim') +kControlUserPaneProc = 256 +kControlKindUserPane = FOUR_CHAR_CODE('upan') +kControlUserItemDrawProcTag = FOUR_CHAR_CODE('uidp') +kControlUserPaneDrawProcTag = FOUR_CHAR_CODE('draw') +kControlUserPaneHitTestProcTag = FOUR_CHAR_CODE('hitt') +kControlUserPaneTrackingProcTag = FOUR_CHAR_CODE('trak') +kControlUserPaneIdleProcTag = FOUR_CHAR_CODE('idle') +kControlUserPaneKeyDownProcTag = FOUR_CHAR_CODE('keyd') +kControlUserPaneActivateProcTag = FOUR_CHAR_CODE('acti') +kControlUserPaneFocusProcTag = FOUR_CHAR_CODE('foci') +kControlUserPaneBackgroundProcTag = FOUR_CHAR_CODE('back') +kControlEditTextProc = 272 +kControlEditTextPasswordProc = 274 +kControlEditTextInlineInputProc = 276 +kControlKindEditText = FOUR_CHAR_CODE('etxt') +kControlEditTextStyleTag = kControlFontStyleTag +kControlEditTextTextTag = FOUR_CHAR_CODE('text') +kControlEditTextTEHandleTag = FOUR_CHAR_CODE('than') +kControlEditTextKeyFilterTag = kControlKeyFilterTag +kControlEditTextSelectionTag = FOUR_CHAR_CODE('sele') +kControlEditTextPasswordTag = FOUR_CHAR_CODE('pass') +kControlEditTextKeyScriptBehaviorTag = FOUR_CHAR_CODE('kscr') +kControlEditTextLockedTag = FOUR_CHAR_CODE('lock') +kControlEditTextFixedTextTag = FOUR_CHAR_CODE('ftxt') +kControlEditTextValidationProcTag = FOUR_CHAR_CODE('vali') +kControlEditTextInlinePreUpdateProcTag = FOUR_CHAR_CODE('prup') +kControlEditTextInlinePostUpdateProcTag = FOUR_CHAR_CODE('poup') +kControlEditTextCFStringTag = FOUR_CHAR_CODE('cfst') +kControlEditTextPasswordCFStringTag = FOUR_CHAR_CODE('pwcf') +kControlStaticTextProc = 288 +kControlKindStaticText = FOUR_CHAR_CODE('stxt') +kControlStaticTextStyleTag = kControlFontStyleTag +kControlStaticTextTextTag = FOUR_CHAR_CODE('text') +kControlStaticTextTextHeightTag = FOUR_CHAR_CODE('thei') +kControlStaticTextTruncTag = FOUR_CHAR_CODE('trun') +kControlStaticTextCFStringTag = FOUR_CHAR_CODE('cfst') +kControlPictureProc = 304 +kControlPictureNoTrackProc = 305 +kControlKindPicture = FOUR_CHAR_CODE('pict') +kControlPictureHandleTag = FOUR_CHAR_CODE('pich') +kControlIconProc = 320 +kControlIconNoTrackProc = 321 +kControlIconSuiteProc = 322 +kControlIconSuiteNoTrackProc = 323 +kControlIconRefProc = 324 +kControlIconRefNoTrackProc = 325 +kControlKindIcon = FOUR_CHAR_CODE('icon') +kControlIconTransformTag = FOUR_CHAR_CODE('trfm') +kControlIconAlignmentTag = FOUR_CHAR_CODE('algn') +kControlIconResourceIDTag = FOUR_CHAR_CODE('ires') +kControlIconContentTag = FOUR_CHAR_CODE('cont') +kControlWindowHeaderProc = 336 +kControlWindowListViewHeaderProc = 337 +kControlKindWindowHeader = FOUR_CHAR_CODE('whed') +kControlListBoxProc = 352 +kControlListBoxAutoSizeProc = 353 +kControlKindListBox = FOUR_CHAR_CODE('lbox') +kControlListBoxListHandleTag = FOUR_CHAR_CODE('lhan') +kControlListBoxKeyFilterTag = kControlKeyFilterTag +kControlListBoxFontStyleTag = kControlFontStyleTag +kControlListBoxDoubleClickTag = FOUR_CHAR_CODE('dblc') +kControlListBoxLDEFTag = FOUR_CHAR_CODE('ldef') +kControlPushButtonProc = 368 +kControlCheckBoxProc = 369 +kControlRadioButtonProc = 370 +kControlPushButLeftIconProc = 374 +kControlPushButRightIconProc = 375 +kControlCheckBoxAutoToggleProc = 371 +kControlRadioButtonAutoToggleProc = 372 +kControlPushButtonIconOnLeft = 6 +kControlPushButtonIconOnRight = 7 +kControlKindPushButton = FOUR_CHAR_CODE('push') +kControlKindPushIconButton = FOUR_CHAR_CODE('picn') +kControlKindRadioButton = FOUR_CHAR_CODE('rdio') +kControlKindCheckBox = FOUR_CHAR_CODE('cbox') +kControlPushButtonDefaultTag = FOUR_CHAR_CODE('dflt') +kControlPushButtonCancelTag = FOUR_CHAR_CODE('cncl') +kControlScrollBarProc = 384 +kControlScrollBarLiveProc = 386 +kControlKindScrollBar = FOUR_CHAR_CODE('sbar') +kControlScrollBarShowsArrowsTag = FOUR_CHAR_CODE('arro') +kControlPopupButtonProc = 400 +kControlPopupFixedWidthVariant = 1 << 0 +kControlPopupVariableWidthVariant = 1 << 1 +kControlPopupUseAddResMenuVariant = 1 << 2 +kControlPopupUseWFontVariant = kControlUsesOwningWindowsFontVariant +kControlKindPopupButton = FOUR_CHAR_CODE('popb') +kControlPopupButtonMenuHandleTag = FOUR_CHAR_CODE('mhan') +kControlPopupButtonMenuRefTag = FOUR_CHAR_CODE('mhan') +kControlPopupButtonMenuIDTag = FOUR_CHAR_CODE('mnid') +kControlPopupButtonExtraHeightTag = FOUR_CHAR_CODE('exht') +kControlPopupButtonOwnedMenuRefTag = FOUR_CHAR_CODE('omrf') +kControlPopupButtonCheckCurrentTag = FOUR_CHAR_CODE('chck') +kControlRadioGroupProc = 416 +kControlKindRadioGroup = FOUR_CHAR_CODE('rgrp') +kControlScrollTextBoxProc = 432 +kControlScrollTextBoxAutoScrollProc = 433 +kControlKindScrollingTextBox = FOUR_CHAR_CODE('stbx') +kControlScrollTextBoxDelayBeforeAutoScrollTag = FOUR_CHAR_CODE('stdl') +kControlScrollTextBoxDelayBetweenAutoScrollTag = FOUR_CHAR_CODE('scdl') +kControlScrollTextBoxAutoScrollAmountTag = FOUR_CHAR_CODE('samt') +kControlScrollTextBoxContentsTag = FOUR_CHAR_CODE('tres') +kControlScrollTextBoxAnimatingTag = FOUR_CHAR_CODE('anim') +kControlKindDisclosureButton = FOUR_CHAR_CODE('disb') +kControlDisclosureButtonClosed = 0 +kControlDisclosureButtonDisclosed = 1 +kControlRoundButtonNormalSize = kControlSizeNormal +kControlRoundButtonLargeSize = kControlSizeLarge +kControlRoundButtonContentTag = FOUR_CHAR_CODE('cont') +kControlRoundButtonSizeTag = kControlSizeTag +kControlKindRoundButton = FOUR_CHAR_CODE('rndb') +kControlKindDataBrowser = FOUR_CHAR_CODE('datb') +errDataBrowserNotConfigured = -4970 +errDataBrowserItemNotFound = -4971 +errDataBrowserItemNotAdded = -4975 +errDataBrowserPropertyNotFound = -4972 +errDataBrowserInvalidPropertyPart = -4973 +errDataBrowserInvalidPropertyData = -4974 +errDataBrowserPropertyNotSupported = -4979 +kControlDataBrowserIncludesFrameAndFocusTag = FOUR_CHAR_CODE('brdr') +kControlDataBrowserKeyFilterTag = kControlEditTextKeyFilterTag +kControlDataBrowserEditTextKeyFilterTag = kControlDataBrowserKeyFilterTag +kControlDataBrowserEditTextValidationProcTag = kControlEditTextValidationProcTag +kDataBrowserNoView = 0x3F3F3F3F +kDataBrowserListView = FOUR_CHAR_CODE('lstv') +kDataBrowserColumnView = FOUR_CHAR_CODE('clmv') +kDataBrowserDragSelect = 1 << 0 +kDataBrowserSelectOnlyOne = 1 << 1 +kDataBrowserResetSelection = 1 << 2 +kDataBrowserCmdTogglesSelection = 1 << 3 +kDataBrowserNoDisjointSelection = 1 << 4 +kDataBrowserAlwaysExtendSelection = 1 << 5 +kDataBrowserNeverEmptySelectionSet = 1 << 6 +kDataBrowserOrderUndefined = 0 +kDataBrowserOrderIncreasing = 1 +kDataBrowserOrderDecreasing = 2 +kDataBrowserNoItem = 0L +kDataBrowserItemNoState = 0 +# kDataBrowserItemAnyState = (unsigned long)(-1) +kDataBrowserItemIsSelected = 1 << 0 +kDataBrowserContainerIsOpen = 1 << 1 +kDataBrowserItemIsDragTarget = 1 << 2 +kDataBrowserRevealOnly = 0 +kDataBrowserRevealAndCenterInView = 1 << 0 +kDataBrowserRevealWithoutSelecting = 1 << 1 +kDataBrowserItemsAdd = 0 +kDataBrowserItemsAssign = 1 +kDataBrowserItemsToggle = 2 +kDataBrowserItemsRemove = 3 +kDataBrowserSelectionAnchorUp = 0 +kDataBrowserSelectionAnchorDown = 1 +kDataBrowserSelectionAnchorLeft = 2 +kDataBrowserSelectionAnchorRight = 3 +kDataBrowserEditMsgUndo = kHICommandUndo +kDataBrowserEditMsgRedo = kHICommandRedo +kDataBrowserEditMsgCut = kHICommandCut +kDataBrowserEditMsgCopy = kHICommandCopy +kDataBrowserEditMsgPaste = kHICommandPaste +kDataBrowserEditMsgClear = kHICommandClear +kDataBrowserEditMsgSelectAll = kHICommandSelectAll +kDataBrowserItemAdded = 1 +kDataBrowserItemRemoved = 2 +kDataBrowserEditStarted = 3 +kDataBrowserEditStopped = 4 +kDataBrowserItemSelected = 5 +kDataBrowserItemDeselected = 6 +kDataBrowserItemDoubleClicked = 7 +kDataBrowserContainerOpened = 8 +kDataBrowserContainerClosing = 9 +kDataBrowserContainerClosed = 10 +kDataBrowserContainerSorting = 11 +kDataBrowserContainerSorted = 12 +kDataBrowserUserToggledContainer = 16 +kDataBrowserTargetChanged = 15 +kDataBrowserUserStateChanged = 13 +kDataBrowserSelectionSetChanged = 14 +kDataBrowserItemNoProperty = 0L +kDataBrowserItemIsActiveProperty = 1L +kDataBrowserItemIsSelectableProperty = 2L +kDataBrowserItemIsEditableProperty = 3L +kDataBrowserItemIsContainerProperty = 4L +kDataBrowserContainerIsOpenableProperty = 5L +kDataBrowserContainerIsClosableProperty = 6L +kDataBrowserContainerIsSortableProperty = 7L +kDataBrowserItemSelfIdentityProperty = 8L +kDataBrowserContainerAliasIDProperty = 9L +kDataBrowserColumnViewPreviewProperty = 10L +kDataBrowserItemParentContainerProperty = 11L +kDataBrowserCustomType = 0x3F3F3F3F +kDataBrowserIconType = FOUR_CHAR_CODE('icnr') +kDataBrowserTextType = FOUR_CHAR_CODE('text') +kDataBrowserDateTimeType = FOUR_CHAR_CODE('date') +kDataBrowserSliderType = FOUR_CHAR_CODE('sldr') +kDataBrowserCheckboxType = FOUR_CHAR_CODE('chbx') +kDataBrowserProgressBarType = FOUR_CHAR_CODE('prog') +kDataBrowserRelevanceRankType = FOUR_CHAR_CODE('rank') +kDataBrowserPopupMenuType = FOUR_CHAR_CODE('menu') +kDataBrowserIconAndTextType = FOUR_CHAR_CODE('ticn') +kDataBrowserPropertyEnclosingPart = 0L +kDataBrowserPropertyContentPart = FOUR_CHAR_CODE('----') +kDataBrowserPropertyDisclosurePart = FOUR_CHAR_CODE('disc') +kDataBrowserPropertyTextPart = kDataBrowserTextType +kDataBrowserPropertyIconPart = kDataBrowserIconType +kDataBrowserPropertySliderPart = kDataBrowserSliderType +kDataBrowserPropertyCheckboxPart = kDataBrowserCheckboxType +kDataBrowserPropertyProgressBarPart = kDataBrowserProgressBarType +kDataBrowserPropertyRelevanceRankPart = kDataBrowserRelevanceRankType +kDataBrowserUniversalPropertyFlagsMask = 0xFF +kDataBrowserPropertyIsMutable = 1 << 0 +kDataBrowserDefaultPropertyFlags = 0 << 0 +kDataBrowserUniversalPropertyFlags = kDataBrowserUniversalPropertyFlagsMask +kDataBrowserPropertyIsEditable = kDataBrowserPropertyIsMutable +kDataBrowserPropertyFlagsOffset = 8 +kDataBrowserPropertyFlagsMask = 0xFF << kDataBrowserPropertyFlagsOffset +kDataBrowserCheckboxTriState = 1 << kDataBrowserPropertyFlagsOffset +kDataBrowserDateTimeRelative = 1 << (kDataBrowserPropertyFlagsOffset) +kDataBrowserDateTimeDateOnly = 1 << (kDataBrowserPropertyFlagsOffset + 1) +kDataBrowserDateTimeTimeOnly = 1 << (kDataBrowserPropertyFlagsOffset + 2) +kDataBrowserDateTimeSecondsToo = 1 << (kDataBrowserPropertyFlagsOffset + 3) +kDataBrowserSliderPlainThumb = kThemeThumbPlain << kDataBrowserPropertyFlagsOffset +kDataBrowserSliderUpwardThumb = kThemeThumbUpward << kDataBrowserPropertyFlagsOffset +kDataBrowserSliderDownwardThumb = kThemeThumbDownward << kDataBrowserPropertyFlagsOffset +kDataBrowserDoNotTruncateText = 3 << kDataBrowserPropertyFlagsOffset +kDataBrowserTruncateTextAtEnd = 2 << kDataBrowserPropertyFlagsOffset +kDataBrowserTruncateTextMiddle = 0 << kDataBrowserPropertyFlagsOffset +kDataBrowserTruncateTextAtStart = 1 << kDataBrowserPropertyFlagsOffset +kDataBrowserPropertyModificationFlags = kDataBrowserPropertyFlagsMask +kDataBrowserRelativeDateTime = kDataBrowserDateTimeRelative +kDataBrowserViewSpecificFlagsOffset = 16 +kDataBrowserViewSpecificFlagsMask = 0xFF << kDataBrowserViewSpecificFlagsOffset +kDataBrowserViewSpecificPropertyFlags = kDataBrowserViewSpecificFlagsMask +kDataBrowserClientPropertyFlagsOffset = 24 +# kDataBrowserClientPropertyFlagsMask = (unsigned long)(0xFF << kDataBrowserClientPropertyFlagsOffset) +kDataBrowserLatestCallbacks = 0 +kDataBrowserContentHit = 1 +kDataBrowserNothingHit = 0 +kDataBrowserStopTracking = -1 +kDataBrowserLatestCustomCallbacks = 0 +kDataBrowserTableViewMinimalHilite = 0 +kDataBrowserTableViewFillHilite = 1 +kDataBrowserTableViewSelectionColumn = 1 << kDataBrowserViewSpecificFlagsOffset +kDataBrowserTableViewLastColumn = -1 +kDataBrowserListViewMovableColumn = 1 << (kDataBrowserViewSpecificFlagsOffset + 1) +kDataBrowserListViewSortableColumn = 1 << (kDataBrowserViewSpecificFlagsOffset + 2) +kDataBrowserListViewSelectionColumn = kDataBrowserTableViewSelectionColumn +kDataBrowserListViewDefaultColumnFlags = kDataBrowserListViewMovableColumn + kDataBrowserListViewSortableColumn +kDataBrowserListViewLatestHeaderDesc = 0 +kDataBrowserListViewAppendColumn = kDataBrowserTableViewLastColumn +kControlEditUnicodeTextPostUpdateProcTag = FOUR_CHAR_CODE('upup') +kControlEditUnicodeTextProc = 912 +kControlEditUnicodeTextPasswordProc = 914 +kControlKindEditUnicodeText = FOUR_CHAR_CODE('eutx') +kControlCheckboxUncheckedValue = kControlCheckBoxUncheckedValue +kControlCheckboxCheckedValue = kControlCheckBoxCheckedValue +kControlCheckboxMixedValue = kControlCheckBoxMixedValue +inLabel = kControlLabelPart +inMenu = kControlMenuPart +inTriangle = kControlTrianglePart +inButton = kControlButtonPart +inCheckBox = kControlCheckBoxPart +inUpButton = kControlUpButtonPart +inDownButton = kControlDownButtonPart +inPageUp = kControlPageUpPart +inPageDown = kControlPageDownPart +kInLabelControlPart = kControlLabelPart +kInMenuControlPart = kControlMenuPart +kInTriangleControlPart = kControlTrianglePart +kInButtonControlPart = kControlButtonPart +kInCheckBoxControlPart = kControlCheckBoxPart +kInUpButtonControlPart = kControlUpButtonPart +kInDownButtonControlPart = kControlDownButtonPart +kInPageUpControlPart = kControlPageUpPart +kInPageDownControlPart = kControlPageDownPart diff --git a/sys/lib/python/plat-mac/Carbon/CoreFoundation.py b/sys/lib/python/plat-mac/Carbon/CoreFoundation.py new file mode 100644 index 000000000..8d9c89464 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/CoreFoundation.py @@ -0,0 +1,28 @@ +# Generated from 'CFBase.h' + +def FOUR_CHAR_CODE(x): return x +kCFCompareLessThan = -1 +kCFCompareEqualTo = 0 +kCFCompareGreaterThan = 1 +kCFNotFound = -1 +kCFPropertyListImmutable = 0 +kCFPropertyListMutableContainers = 1 +kCFPropertyListMutableContainersAndLeaves = 2 +# kCFStringEncodingInvalidId = (long)0xFFFFFFFF +kCFStringEncodingMacRoman = 0 +kCFStringEncodingWindowsLatin1 = 0x0500 +kCFStringEncodingISOLatin1 = 0x0201 +kCFStringEncodingNextStepLatin = 0x0B01 +kCFStringEncodingASCII = 0x0600 +kCFStringEncodingUnicode = 0x0100 +kCFStringEncodingUTF8 = 0x08000100 +kCFStringEncodingNonLossyASCII = 0x0BFF +kCFCompareCaseInsensitive = 1 +kCFCompareBackwards = 4 +kCFCompareAnchored = 8 +kCFCompareNonliteral = 16 +kCFCompareLocalized = 32 +kCFCompareNumerically = 64 +kCFURLPOSIXPathStyle = 0 +kCFURLHFSPathStyle = 1 +kCFURLWindowsPathStyle = 2 diff --git a/sys/lib/python/plat-mac/Carbon/CoreGraphics.py b/sys/lib/python/plat-mac/Carbon/CoreGraphics.py new file mode 100755 index 000000000..f4cb0b944 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/CoreGraphics.py @@ -0,0 +1,28 @@ +# Generated from 'CGContext.h' + +def FOUR_CHAR_CODE(x): return x +kCGLineJoinMiter = 0 +kCGLineJoinRound = 1 +kCGLineJoinBevel = 2 +kCGLineCapButt = 0 +kCGLineCapRound = 1 +kCGLineCapSquare = 2 +kCGPathFill = 0 +kCGPathEOFill = 1 +kCGPathStroke = 2 +kCGPathFillStroke = 3 +kCGPathEOFillStroke = 4 +kCGTextFill = 0 +kCGTextStroke = 1 +kCGTextFillStroke = 2 +kCGTextInvisible = 3 +kCGTextFillClip = 4 +kCGTextStrokeClip = 5 +kCGTextFillStrokeClip = 6 +kCGTextClip = 7 +kCGEncodingFontSpecific = 0 +kCGEncodingMacRoman = 1 +kCGInterpolationDefault = 0 +kCGInterpolationNone = 1 +kCGInterpolationLow = 2 +kCGInterpolationHigh = 3 diff --git a/sys/lib/python/plat-mac/Carbon/Ctl.py b/sys/lib/python/plat-mac/Carbon/Ctl.py new file mode 100644 index 000000000..b9dc3ef1c --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Ctl.py @@ -0,0 +1 @@ +from _Ctl import * diff --git a/sys/lib/python/plat-mac/Carbon/Dialogs.py b/sys/lib/python/plat-mac/Carbon/Dialogs.py new file mode 100644 index 000000000..f846d7c39 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Dialogs.py @@ -0,0 +1,79 @@ +# Generated from 'Dialogs.h' + +def FOUR_CHAR_CODE(x): return x +kControlDialogItem = 4 +kButtonDialogItem = kControlDialogItem | 0 +kCheckBoxDialogItem = kControlDialogItem | 1 +kRadioButtonDialogItem = kControlDialogItem | 2 +kResourceControlDialogItem = kControlDialogItem | 3 +kStaticTextDialogItem = 8 +kEditTextDialogItem = 16 +kIconDialogItem = 32 +kPictureDialogItem = 64 +kUserDialogItem = 0 +kHelpDialogItem = 1 +kItemDisableBit = 128 +ctrlItem = 4 +btnCtrl = 0 +chkCtrl = 1 +radCtrl = 2 +resCtrl = 3 +statText = 8 +editText = 16 +iconItem = 32 +picItem = 64 +userItem = 0 +itemDisable = 128 +kStdOkItemIndex = 1 +kStdCancelItemIndex = 2 +ok = kStdOkItemIndex +cancel = kStdCancelItemIndex +kStopIcon = 0 +kNoteIcon = 1 +kCautionIcon = 2 +stopIcon = kStopIcon +noteIcon = kNoteIcon +cautionIcon = kCautionIcon +kOkItemIndex = 1 +kCancelItemIndex = 2 +overlayDITL = 0 +appendDITLRight = 1 +appendDITLBottom = 2 +kAlertStopAlert = 0 +kAlertNoteAlert = 1 +kAlertCautionAlert = 2 +kAlertPlainAlert = 3 +kAlertDefaultOKText = -1 +kAlertDefaultCancelText = -1 +kAlertDefaultOtherText = -1 +kAlertStdAlertOKButton = 1 +kAlertStdAlertCancelButton = 2 +kAlertStdAlertOtherButton = 3 +kAlertStdAlertHelpButton = 4 +kDialogFlagsUseThemeBackground = (1 << 0) +kDialogFlagsUseControlHierarchy = (1 << 1) +kDialogFlagsHandleMovableModal = (1 << 2) +kDialogFlagsUseThemeControls = (1 << 3) +kAlertFlagsUseThemeBackground = (1 << 0) +kAlertFlagsUseControlHierarchy = (1 << 1) +kAlertFlagsAlertIsMovable = (1 << 2) +kAlertFlagsUseThemeControls = (1 << 3) +kDialogFontNoFontStyle = 0 +kDialogFontUseFontMask = 0x0001 +kDialogFontUseFaceMask = 0x0002 +kDialogFontUseSizeMask = 0x0004 +kDialogFontUseForeColorMask = 0x0008 +kDialogFontUseBackColorMask = 0x0010 +kDialogFontUseModeMask = 0x0020 +kDialogFontUseJustMask = 0x0040 +kDialogFontUseAllMask = 0x00FF +kDialogFontAddFontSizeMask = 0x0100 +kDialogFontUseFontNameMask = 0x0200 +kDialogFontAddToMetaFontMask = 0x0400 +kDialogFontUseThemeFontIDMask = 0x0080 +kHICommandOther = FOUR_CHAR_CODE('othr') +kStdCFStringAlertVersionOne = 1 +kStdAlertDoNotDisposeSheet = 1 << 0 +kStdAlertDoNotAnimateOnDefault = 1 << 1 +kStdAlertDoNotAnimateOnCancel = 1 << 2 +kStdAlertDoNotAnimateOnOther = 1 << 3 diff --git a/sys/lib/python/plat-mac/Carbon/Dlg.py b/sys/lib/python/plat-mac/Carbon/Dlg.py new file mode 100644 index 000000000..7b22d8498 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Dlg.py @@ -0,0 +1 @@ +from _Dlg import * diff --git a/sys/lib/python/plat-mac/Carbon/Drag.py b/sys/lib/python/plat-mac/Carbon/Drag.py new file mode 100644 index 000000000..a2349d714 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Drag.py @@ -0,0 +1 @@ +from _Drag import * diff --git a/sys/lib/python/plat-mac/Carbon/Dragconst.py b/sys/lib/python/plat-mac/Carbon/Dragconst.py new file mode 100644 index 000000000..38e12be7a --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Dragconst.py @@ -0,0 +1,86 @@ +# Generated from 'Drag.h' + +def FOUR_CHAR_CODE(x): return x +from Carbon.TextEdit import * +from Carbon.QuickDraw import * +fkDragActionAll = -1 + + +kDragHasLeftSenderWindow = (1 << 0) +kDragInsideSenderApplication = (1 << 1) +kDragInsideSenderWindow = (1 << 2) +kDragRegionAndImage = (1 << 4) +flavorSenderOnly = (1 << 0) +flavorSenderTranslated = (1 << 1) +flavorNotSaved = (1 << 2) +flavorSystemTranslated = (1 << 8) +kDragHasLeftSenderWindow = (1L << 0) +kDragInsideSenderApplication = (1L << 1) +kDragInsideSenderWindow = (1L << 2) +kDragBehaviorNone = 0 +kDragBehaviorZoomBackAnimation = (1L << 0) +kDragRegionAndImage = (1L << 4) +kDragStandardTranslucency = 0L +kDragDarkTranslucency = 1L +kDragDarkerTranslucency = 2L +kDragOpaqueTranslucency = 3L +kDragRegionBegin = 1 +kDragRegionDraw = 2 +kDragRegionHide = 3 +kDragRegionIdle = 4 +kDragRegionEnd = 5 +kZoomNoAcceleration = 0 +kZoomAccelerate = 1 +kZoomDecelerate = 2 +flavorSenderOnly = (1 << 0) +flavorSenderTranslated = (1 << 1) +flavorNotSaved = (1 << 2) +flavorSystemTranslated = (1 << 8) +flavorDataPromised = (1 << 9) +kDragFlavorTypeHFS = FOUR_CHAR_CODE('hfs ') +kDragFlavorTypePromiseHFS = FOUR_CHAR_CODE('phfs') +flavorTypeHFS = kDragFlavorTypeHFS +flavorTypePromiseHFS = kDragFlavorTypePromiseHFS +kDragPromisedFlavorFindFile = FOUR_CHAR_CODE('rWm1') +kDragPromisedFlavor = FOUR_CHAR_CODE('fssP') +kDragPseudoCreatorVolumeOrDirectory = FOUR_CHAR_CODE('MACS') +kDragPseudoFileTypeVolume = FOUR_CHAR_CODE('disk') +kDragPseudoFileTypeDirectory = FOUR_CHAR_CODE('fold') +flavorTypeDirectory = FOUR_CHAR_CODE('diry') +kFlavorTypeClippingName = FOUR_CHAR_CODE('clnm') +kFlavorTypeClippingFilename = FOUR_CHAR_CODE('clfn') +kFlavorTypeDragToTrashOnly = FOUR_CHAR_CODE('fdtt') +kFlavorTypeFinderNoTrackingBehavior = FOUR_CHAR_CODE('fntb') +kDragTrackingEnterHandler = 1 +kDragTrackingEnterWindow = 2 +kDragTrackingInWindow = 3 +kDragTrackingLeaveWindow = 4 +kDragTrackingLeaveHandler = 5 +kDragActionNothing = 0L +kDragActionCopy = 1L +kDragActionAlias = (1L << 1) +kDragActionGeneric = (1L << 2) +kDragActionPrivate = (1L << 3) +kDragActionMove = (1L << 4) +kDragActionDelete = (1L << 5) +# kDragActionAll = (long)0xFFFFFFFF +dragHasLeftSenderWindow = kDragHasLeftSenderWindow +dragInsideSenderApplication = kDragInsideSenderApplication +dragInsideSenderWindow = kDragInsideSenderWindow +dragTrackingEnterHandler = kDragTrackingEnterHandler +dragTrackingEnterWindow = kDragTrackingEnterWindow +dragTrackingInWindow = kDragTrackingInWindow +dragTrackingLeaveWindow = kDragTrackingLeaveWindow +dragTrackingLeaveHandler = kDragTrackingLeaveHandler +dragRegionBegin = kDragRegionBegin +dragRegionDraw = kDragRegionDraw +dragRegionHide = kDragRegionHide +dragRegionIdle = kDragRegionIdle +dragRegionEnd = kDragRegionEnd +zoomNoAcceleration = kZoomNoAcceleration +zoomAccelerate = kZoomAccelerate +zoomDecelerate = kZoomDecelerate +kDragStandardImage = kDragStandardTranslucency +kDragDarkImage = kDragDarkTranslucency +kDragDarkerImage = kDragDarkerTranslucency +kDragOpaqueImage = kDragOpaqueTranslucency diff --git a/sys/lib/python/plat-mac/Carbon/Events.py b/sys/lib/python/plat-mac/Carbon/Events.py new file mode 100644 index 000000000..269f4f144 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Events.py @@ -0,0 +1,102 @@ +# Generated from 'Events.h' + +nullEvent = 0 +mouseDown = 1 +mouseUp = 2 +keyDown = 3 +keyUp = 4 +autoKey = 5 +updateEvt = 6 +diskEvt = 7 +activateEvt = 8 +osEvt = 15 +kHighLevelEvent = 23 +mDownMask = 1 << mouseDown +mUpMask = 1 << mouseUp +keyDownMask = 1 << keyDown +keyUpMask = 1 << keyUp +autoKeyMask = 1 << autoKey +updateMask = 1 << updateEvt +diskMask = 1 << diskEvt +activMask = 1 << activateEvt +highLevelEventMask = 0x0400 +osMask = 1 << osEvt +everyEvent = 0xFFFF +charCodeMask = 0x000000FF +keyCodeMask = 0x0000FF00 +adbAddrMask = 0x00FF0000 +# osEvtMessageMask = (unsigned long)0xFF000000 +mouseMovedMessage = 0x00FA +suspendResumeMessage = 0x0001 +resumeFlag = 1 +convertClipboardFlag = 2 +activeFlagBit = 0 +btnStateBit = 7 +cmdKeyBit = 8 +shiftKeyBit = 9 +alphaLockBit = 10 +optionKeyBit = 11 +controlKeyBit = 12 +rightShiftKeyBit = 13 +rightOptionKeyBit = 14 +rightControlKeyBit = 15 +activeFlag = 1 << activeFlagBit +btnState = 1 << btnStateBit +cmdKey = 1 << cmdKeyBit +shiftKey = 1 << shiftKeyBit +alphaLock = 1 << alphaLockBit +optionKey = 1 << optionKeyBit +controlKey = 1 << controlKeyBit +rightShiftKey = 1 << rightShiftKeyBit +rightOptionKey = 1 << rightOptionKeyBit +rightControlKey = 1 << rightControlKeyBit +kNullCharCode = 0 +kHomeCharCode = 1 +kEnterCharCode = 3 +kEndCharCode = 4 +kHelpCharCode = 5 +kBellCharCode = 7 +kBackspaceCharCode = 8 +kTabCharCode = 9 +kLineFeedCharCode = 10 +kVerticalTabCharCode = 11 +kPageUpCharCode = 11 +kFormFeedCharCode = 12 +kPageDownCharCode = 12 +kReturnCharCode = 13 +kFunctionKeyCharCode = 16 +kCommandCharCode = 17 +kCheckCharCode = 18 +kDiamondCharCode = 19 +kAppleLogoCharCode = 20 +kEscapeCharCode = 27 +kClearCharCode = 27 +kLeftArrowCharCode = 28 +kRightArrowCharCode = 29 +kUpArrowCharCode = 30 +kDownArrowCharCode = 31 +kSpaceCharCode = 32 +kDeleteCharCode = 127 +kBulletCharCode = 165 +kNonBreakingSpaceCharCode = 202 +kShiftUnicode = 0x21E7 +kControlUnicode = 0x2303 +kOptionUnicode = 0x2325 +kCommandUnicode = 0x2318 +kPencilUnicode = 0x270E +kCheckUnicode = 0x2713 +kDiamondUnicode = 0x25C6 +kBulletUnicode = 0x2022 +kAppleLogoUnicode = 0xF8FF +networkEvt = 10 +driverEvt = 11 +app1Evt = 12 +app2Evt = 13 +app3Evt = 14 +app4Evt = 15 +networkMask = 0x0400 +driverMask = 0x0800 +app1Mask = 0x1000 +app2Mask = 0x2000 +app3Mask = 0x4000 +app4Mask = 0x8000 diff --git a/sys/lib/python/plat-mac/Carbon/Evt.py b/sys/lib/python/plat-mac/Carbon/Evt.py new file mode 100644 index 000000000..7a5ffa699 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Evt.py @@ -0,0 +1 @@ +from _Evt import * diff --git a/sys/lib/python/plat-mac/Carbon/File.py b/sys/lib/python/plat-mac/Carbon/File.py new file mode 100644 index 000000000..58c28574c --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/File.py @@ -0,0 +1 @@ +from _File import * diff --git a/sys/lib/python/plat-mac/Carbon/Files.py b/sys/lib/python/plat-mac/Carbon/Files.py new file mode 100644 index 000000000..678bbc794 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Files.py @@ -0,0 +1,426 @@ +# Generated from 'Files.h' + +def FOUR_CHAR_CODE(x): return x +true = True +false = False +fsCurPerm = 0x00 +fsRdPerm = 0x01 +fsWrPerm = 0x02 +fsRdWrPerm = 0x03 +fsRdWrShPerm = 0x04 +fsRdDenyPerm = 0x10 +fsWrDenyPerm = 0x20 +fsRtParID = 1 +fsRtDirID = 2 +fsAtMark = 0 +fsFromStart = 1 +fsFromLEOF = 2 +fsFromMark = 3 +pleaseCacheBit = 4 +pleaseCacheMask = 0x0010 +noCacheBit = 5 +noCacheMask = 0x0020 +rdVerifyBit = 6 +rdVerifyMask = 0x0040 +rdVerify = 64 +forceReadBit = 6 +forceReadMask = 0x0040 +newLineBit = 7 +newLineMask = 0x0080 +newLineCharMask = 0xFF00 +fsSBPartialName = 1 +fsSBFullName = 2 +fsSBFlAttrib = 4 +fsSBFlFndrInfo = 8 +fsSBFlLgLen = 32 +fsSBFlPyLen = 64 +fsSBFlRLgLen = 128 +fsSBFlRPyLen = 256 +fsSBFlCrDat = 512 +fsSBFlMdDat = 1024 +fsSBFlBkDat = 2048 +fsSBFlXFndrInfo = 4096 +fsSBFlParID = 8192 +fsSBNegate = 16384 +fsSBDrUsrWds = 8 +fsSBDrNmFls = 16 +fsSBDrCrDat = 512 +fsSBDrMdDat = 1024 +fsSBDrBkDat = 2048 +fsSBDrFndrInfo = 4096 +fsSBDrParID = 8192 +fsSBPartialNameBit = 0 +fsSBFullNameBit = 1 +fsSBFlAttribBit = 2 +fsSBFlFndrInfoBit = 3 +fsSBFlLgLenBit = 5 +fsSBFlPyLenBit = 6 +fsSBFlRLgLenBit = 7 +fsSBFlRPyLenBit = 8 +fsSBFlCrDatBit = 9 +fsSBFlMdDatBit = 10 +fsSBFlBkDatBit = 11 +fsSBFlXFndrInfoBit = 12 +fsSBFlParIDBit = 13 +fsSBNegateBit = 14 +fsSBDrUsrWdsBit = 3 +fsSBDrNmFlsBit = 4 +fsSBDrCrDatBit = 9 +fsSBDrMdDatBit = 10 +fsSBDrBkDatBit = 11 +fsSBDrFndrInfoBit = 12 +fsSBDrParIDBit = 13 +bLimitFCBs = 31 +bLocalWList = 30 +bNoMiniFndr = 29 +bNoVNEdit = 28 +bNoLclSync = 27 +bTrshOffLine = 26 +bNoSwitchTo = 25 +bDontShareIt = 21 +bNoDeskItems = 20 +bNoBootBlks = 19 +bAccessCntl = 18 +bNoSysDir = 17 +bHasExtFSVol = 16 +bHasOpenDeny = 15 +bHasCopyFile = 14 +bHasMoveRename = 13 +bHasDesktopMgr = 12 +bHasShortName = 11 +bHasFolderLock = 10 +bHasPersonalAccessPrivileges = 9 +bHasUserGroupList = 8 +bHasCatSearch = 7 +bHasFileIDs = 6 +bHasBTreeMgr = 5 +bHasBlankAccessPrivileges = 4 +bSupportsAsyncRequests = 3 +bSupportsTrashVolumeCache = 2 +bIsEjectable = 0 +bSupportsHFSPlusAPIs = 1 +bSupportsFSCatalogSearch = 2 +bSupportsFSExchangeObjects = 3 +bSupports2TBFiles = 4 +bSupportsLongNames = 5 +bSupportsMultiScriptNames = 6 +bSupportsNamedForks = 7 +bSupportsSubtreeIterators = 8 +bL2PCanMapFileBlocks = 9 +bParentModDateChanges = 10 +bAncestorModDateChanges = 11 +bSupportsSymbolicLinks = 13 +bIsAutoMounted = 14 +bAllowCDiDataHandler = 17 +kLargeIcon = 1 +kLarge4BitIcon = 2 +kLarge8BitIcon = 3 +kSmallIcon = 4 +kSmall4BitIcon = 5 +kSmall8BitIcon = 6 +kicnsIconFamily = 239 +kLargeIconSize = 256 +kLarge4BitIconSize = 512 +kLarge8BitIconSize = 1024 +kSmallIconSize = 64 +kSmall4BitIconSize = 128 +kSmall8BitIconSize = 256 +kWidePosOffsetBit = 8 +kUseWidePositioning = (1 << kWidePosOffsetBit) +kMaximumBlocksIn4GB = 0x007FFFFF +fsUnixPriv = 1 +kNoUserAuthentication = 1 +kPassword = 2 +kEncryptPassword = 3 +kTwoWayEncryptPassword = 6 +kOwnerID2Name = 1 +kGroupID2Name = 2 +kOwnerName2ID = 3 +kGroupName2ID = 4 +kReturnNextUser = 1 +kReturnNextGroup = 2 +kReturnNextUG = 3 +kVCBFlagsIdleFlushBit = 3 +kVCBFlagsIdleFlushMask = 0x0008 +kVCBFlagsHFSPlusAPIsBit = 4 +kVCBFlagsHFSPlusAPIsMask = 0x0010 +kVCBFlagsHardwareGoneBit = 5 +kVCBFlagsHardwareGoneMask = 0x0020 +kVCBFlagsVolumeDirtyBit = 15 +kVCBFlagsVolumeDirtyMask = 0x8000 +kioVAtrbDefaultVolumeBit = 5 +kioVAtrbDefaultVolumeMask = 0x0020 +kioVAtrbFilesOpenBit = 6 +kioVAtrbFilesOpenMask = 0x0040 +kioVAtrbHardwareLockedBit = 7 +kioVAtrbHardwareLockedMask = 0x0080 +kioVAtrbSoftwareLockedBit = 15 +kioVAtrbSoftwareLockedMask = 0x8000 +kioFlAttribLockedBit = 0 +kioFlAttribLockedMask = 0x01 +kioFlAttribResOpenBit = 2 +kioFlAttribResOpenMask = 0x04 +kioFlAttribDataOpenBit = 3 +kioFlAttribDataOpenMask = 0x08 +kioFlAttribDirBit = 4 +kioFlAttribDirMask = 0x10 +ioDirFlg = 4 +ioDirMask = 0x10 +kioFlAttribCopyProtBit = 6 +kioFlAttribCopyProtMask = 0x40 +kioFlAttribFileOpenBit = 7 +kioFlAttribFileOpenMask = 0x80 +kioFlAttribInSharedBit = 2 +kioFlAttribInSharedMask = 0x04 +kioFlAttribMountedBit = 3 +kioFlAttribMountedMask = 0x08 +kioFlAttribSharePointBit = 5 +kioFlAttribSharePointMask = 0x20 +kioFCBWriteBit = 8 +kioFCBWriteMask = 0x0100 +kioFCBResourceBit = 9 +kioFCBResourceMask = 0x0200 +kioFCBWriteLockedBit = 10 +kioFCBWriteLockedMask = 0x0400 +kioFCBLargeFileBit = 11 +kioFCBLargeFileMask = 0x0800 +kioFCBSharedWriteBit = 12 +kioFCBSharedWriteMask = 0x1000 +kioFCBFileLockedBit = 13 +kioFCBFileLockedMask = 0x2000 +kioFCBOwnClumpBit = 14 +kioFCBOwnClumpMask = 0x4000 +kioFCBModifiedBit = 15 +kioFCBModifiedMask = 0x8000 +kioACUserNoSeeFolderBit = 0 +kioACUserNoSeeFolderMask = 0x01 +kioACUserNoSeeFilesBit = 1 +kioACUserNoSeeFilesMask = 0x02 +kioACUserNoMakeChangesBit = 2 +kioACUserNoMakeChangesMask = 0x04 +kioACUserNotOwnerBit = 7 +kioACUserNotOwnerMask = 0x80 +kioACAccessOwnerBit = 31 +# kioACAccessOwnerMask = (long)0x80000000 +kioACAccessBlankAccessBit = 28 +kioACAccessBlankAccessMask = 0x10000000 +kioACAccessUserWriteBit = 26 +kioACAccessUserWriteMask = 0x04000000 +kioACAccessUserReadBit = 25 +kioACAccessUserReadMask = 0x02000000 +kioACAccessUserSearchBit = 24 +kioACAccessUserSearchMask = 0x01000000 +kioACAccessEveryoneWriteBit = 18 +kioACAccessEveryoneWriteMask = 0x00040000 +kioACAccessEveryoneReadBit = 17 +kioACAccessEveryoneReadMask = 0x00020000 +kioACAccessEveryoneSearchBit = 16 +kioACAccessEveryoneSearchMask = 0x00010000 +kioACAccessGroupWriteBit = 10 +kioACAccessGroupWriteMask = 0x00000400 +kioACAccessGroupReadBit = 9 +kioACAccessGroupReadMask = 0x00000200 +kioACAccessGroupSearchBit = 8 +kioACAccessGroupSearchMask = 0x00000100 +kioACAccessOwnerWriteBit = 2 +kioACAccessOwnerWriteMask = 0x00000004 +kioACAccessOwnerReadBit = 1 +kioACAccessOwnerReadMask = 0x00000002 +kioACAccessOwnerSearchBit = 0 +kioACAccessOwnerSearchMask = 0x00000001 +kfullPrivileges = 0x00070007 +kownerPrivileges = 0x00000007 +knoUser = 0 +kadministratorUser = 1 +knoGroup = 0 +AppleShareMediaType = FOUR_CHAR_CODE('afpm') +volMountNoLoginMsgFlagBit = 0 +volMountNoLoginMsgFlagMask = 0x0001 +volMountExtendedFlagsBit = 7 +volMountExtendedFlagsMask = 0x0080 +volMountInteractBit = 15 +volMountInteractMask = 0x8000 +volMountChangedBit = 14 +volMountChangedMask = 0x4000 +volMountFSReservedMask = 0x00FF +volMountSysReservedMask = 0xFF00 +kAFPExtendedFlagsAlternateAddressMask = 1 +kAFPTagTypeIP = 0x01 +kAFPTagTypeIPPort = 0x02 +kAFPTagTypeDDP = 0x03 +kAFPTagTypeDNS = 0x04 +kAFPTagLengthIP = 0x06 +kAFPTagLengthIPPort = 0x08 +kAFPTagLengthDDP = 0x06 +kFSInvalidVolumeRefNum = 0 +kFSCatInfoNone = 0x00000000 +kFSCatInfoTextEncoding = 0x00000001 +kFSCatInfoNodeFlags = 0x00000002 +kFSCatInfoVolume = 0x00000004 +kFSCatInfoParentDirID = 0x00000008 +kFSCatInfoNodeID = 0x00000010 +kFSCatInfoCreateDate = 0x00000020 +kFSCatInfoContentMod = 0x00000040 +kFSCatInfoAttrMod = 0x00000080 +kFSCatInfoAccessDate = 0x00000100 +kFSCatInfoBackupDate = 0x00000200 +kFSCatInfoPermissions = 0x00000400 +kFSCatInfoFinderInfo = 0x00000800 +kFSCatInfoFinderXInfo = 0x00001000 +kFSCatInfoValence = 0x00002000 +kFSCatInfoDataSizes = 0x00004000 +kFSCatInfoRsrcSizes = 0x00008000 +kFSCatInfoSharingFlags = 0x00010000 +kFSCatInfoUserPrivs = 0x00020000 +kFSCatInfoUserAccess = 0x00080000 +kFSCatInfoAllDates = 0x000003E0 +kFSCatInfoGettableInfo = 0x0003FFFF +kFSCatInfoSettableInfo = 0x00001FE3 +# kFSCatInfoReserved = (long)0xFFFC0000 +kFSNodeLockedBit = 0 +kFSNodeLockedMask = 0x0001 +kFSNodeResOpenBit = 2 +kFSNodeResOpenMask = 0x0004 +kFSNodeDataOpenBit = 3 +kFSNodeDataOpenMask = 0x0008 +kFSNodeIsDirectoryBit = 4 +kFSNodeIsDirectoryMask = 0x0010 +kFSNodeCopyProtectBit = 6 +kFSNodeCopyProtectMask = 0x0040 +kFSNodeForkOpenBit = 7 +kFSNodeForkOpenMask = 0x0080 +kFSNodeInSharedBit = 2 +kFSNodeInSharedMask = 0x0004 +kFSNodeIsMountedBit = 3 +kFSNodeIsMountedMask = 0x0008 +kFSNodeIsSharePointBit = 5 +kFSNodeIsSharePointMask = 0x0020 +kFSIterateFlat = 0 +kFSIterateSubtree = 1 +kFSIterateDelete = 2 +# kFSIterateReserved = (long)0xFFFFFFFC +fsSBNodeID = 0x00008000 +fsSBAttributeModDate = 0x00010000 +fsSBAccessDate = 0x00020000 +fsSBPermissions = 0x00040000 +fsSBNodeIDBit = 15 +fsSBAttributeModDateBit = 16 +fsSBAccessDateBit = 17 +fsSBPermissionsBit = 18 +kFSAllocDefaultFlags = 0x0000 +kFSAllocAllOrNothingMask = 0x0001 +kFSAllocContiguousMask = 0x0002 +kFSAllocNoRoundUpMask = 0x0004 +kFSAllocReservedMask = 0xFFF8 +kFSVolInfoNone = 0x0000 +kFSVolInfoCreateDate = 0x0001 +kFSVolInfoModDate = 0x0002 +kFSVolInfoBackupDate = 0x0004 +kFSVolInfoCheckedDate = 0x0008 +kFSVolInfoFileCount = 0x0010 +kFSVolInfoDirCount = 0x0020 +kFSVolInfoSizes = 0x0040 +kFSVolInfoBlocks = 0x0080 +kFSVolInfoNextAlloc = 0x0100 +kFSVolInfoRsrcClump = 0x0200 +kFSVolInfoDataClump = 0x0400 +kFSVolInfoNextID = 0x0800 +kFSVolInfoFinderInfo = 0x1000 +kFSVolInfoFlags = 0x2000 +kFSVolInfoFSInfo = 0x4000 +kFSVolInfoDriveInfo = 0x8000 +kFSVolInfoGettableInfo = 0xFFFF +kFSVolInfoSettableInfo = 0x3004 +kFSVolFlagDefaultVolumeBit = 5 +kFSVolFlagDefaultVolumeMask = 0x0020 +kFSVolFlagFilesOpenBit = 6 +kFSVolFlagFilesOpenMask = 0x0040 +kFSVolFlagHardwareLockedBit = 7 +kFSVolFlagHardwareLockedMask = 0x0080 +kFSVolFlagSoftwareLockedBit = 15 +kFSVolFlagSoftwareLockedMask = 0x8000 +kFNDirectoryModifiedMessage = 1 +kFNNoImplicitAllSubscription = (1 << 0) +rAliasType = FOUR_CHAR_CODE('alis') +kARMMountVol = 0x00000001 +kARMNoUI = 0x00000002 +kARMMultVols = 0x00000008 +kARMSearch = 0x00000100 +kARMSearchMore = 0x00000200 +kARMSearchRelFirst = 0x00000400 +asiZoneName = -3 +asiServerName = -2 +asiVolumeName = -1 +asiAliasName = 0 +asiParentName = 1 +kResolveAliasFileNoUI = 0x00000001 +kClippingCreator = FOUR_CHAR_CODE('drag') +kClippingPictureType = FOUR_CHAR_CODE('clpp') +kClippingTextType = FOUR_CHAR_CODE('clpt') +kClippingSoundType = FOUR_CHAR_CODE('clps') +kClippingUnknownType = FOUR_CHAR_CODE('clpu') +kInternetLocationCreator = FOUR_CHAR_CODE('drag') +kInternetLocationHTTP = FOUR_CHAR_CODE('ilht') +kInternetLocationFTP = FOUR_CHAR_CODE('ilft') +kInternetLocationFile = FOUR_CHAR_CODE('ilfi') +kInternetLocationMail = FOUR_CHAR_CODE('ilma') +kInternetLocationNNTP = FOUR_CHAR_CODE('ilnw') +kInternetLocationAFP = FOUR_CHAR_CODE('ilaf') +kInternetLocationAppleTalk = FOUR_CHAR_CODE('ilat') +kInternetLocationNSL = FOUR_CHAR_CODE('ilns') +kInternetLocationGeneric = FOUR_CHAR_CODE('ilge') +kCustomIconResource = -16455 +kCustomBadgeResourceType = FOUR_CHAR_CODE('badg') +kCustomBadgeResourceID = kCustomIconResource +kCustomBadgeResourceVersion = 0 +# kSystemFolderType = 'macs'. +kRoutingResourceType = FOUR_CHAR_CODE('rout') +kRoutingResourceID = 0 +kContainerFolderAliasType = FOUR_CHAR_CODE('fdrp') +kContainerTrashAliasType = FOUR_CHAR_CODE('trsh') +kContainerHardDiskAliasType = FOUR_CHAR_CODE('hdsk') +kContainerFloppyAliasType = FOUR_CHAR_CODE('flpy') +kContainerServerAliasType = FOUR_CHAR_CODE('srvr') +kApplicationAliasType = FOUR_CHAR_CODE('adrp') +kContainerAliasType = FOUR_CHAR_CODE('drop') +kDesktopPrinterAliasType = FOUR_CHAR_CODE('dtpa') +kContainerCDROMAliasType = FOUR_CHAR_CODE('cddr') +kApplicationCPAliasType = FOUR_CHAR_CODE('acdp') +kApplicationDAAliasType = FOUR_CHAR_CODE('addp') +kPackageAliasType = FOUR_CHAR_CODE('fpka') +kAppPackageAliasType = FOUR_CHAR_CODE('fapa') +kSystemFolderAliasType = FOUR_CHAR_CODE('fasy') +kAppleMenuFolderAliasType = FOUR_CHAR_CODE('faam') +kStartupFolderAliasType = FOUR_CHAR_CODE('fast') +kPrintMonitorDocsFolderAliasType = FOUR_CHAR_CODE('fapn') +kPreferencesFolderAliasType = FOUR_CHAR_CODE('fapf') +kControlPanelFolderAliasType = FOUR_CHAR_CODE('fact') +kExtensionFolderAliasType = FOUR_CHAR_CODE('faex') +kExportedFolderAliasType = FOUR_CHAR_CODE('faet') +kDropFolderAliasType = FOUR_CHAR_CODE('fadr') +kSharedFolderAliasType = FOUR_CHAR_CODE('fash') +kMountedFolderAliasType = FOUR_CHAR_CODE('famn') +kIsOnDesk = 0x0001 +kColor = 0x000E +kIsShared = 0x0040 +kHasNoINITs = 0x0080 +kHasBeenInited = 0x0100 +kHasCustomIcon = 0x0400 +kIsStationery = 0x0800 +kNameLocked = 0x1000 +kHasBundle = 0x2000 +kIsInvisible = 0x4000 +kIsAlias = 0x8000 +fOnDesk = kIsOnDesk +fHasBundle = kHasBundle +fInvisible = kIsInvisible +fTrash = -3 +fDesktop = -2 +fDisk = 0 +kIsStationary = kIsStationery +kExtendedFlagsAreInvalid = 0x8000 +kExtendedFlagHasCustomBadge = 0x0100 +kExtendedFlagHasRoutingInfo = 0x0004 +kFirstMagicBusyFiletype = FOUR_CHAR_CODE('bzy ') +kLastMagicBusyFiletype = FOUR_CHAR_CODE('bzy?') +kMagicBusyCreationDate = 0x4F3AFDB0 diff --git a/sys/lib/python/plat-mac/Carbon/Fm.py b/sys/lib/python/plat-mac/Carbon/Fm.py new file mode 100644 index 000000000..0f42fdcd9 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Fm.py @@ -0,0 +1 @@ +from _Fm import * diff --git a/sys/lib/python/plat-mac/Carbon/Folder.py b/sys/lib/python/plat-mac/Carbon/Folder.py new file mode 100644 index 000000000..a4e490289 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Folder.py @@ -0,0 +1 @@ +from _Folder import * diff --git a/sys/lib/python/plat-mac/Carbon/Folders.py b/sys/lib/python/plat-mac/Carbon/Folders.py new file mode 100644 index 000000000..52cf15808 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Folders.py @@ -0,0 +1,190 @@ +# Generated from 'Folders.h' + +def FOUR_CHAR_CODE(x): return x +true = True +false = False +kOnSystemDisk = -32768L +kOnAppropriateDisk = -32767 +kSystemDomain = -32766 +kLocalDomain = -32765 +kNetworkDomain = -32764 +kUserDomain = -32763 +kClassicDomain = -32762 +kCreateFolder = true +kDontCreateFolder = false +kSystemFolderType = FOUR_CHAR_CODE('macs') +kDesktopFolderType = FOUR_CHAR_CODE('desk') +kSystemDesktopFolderType = FOUR_CHAR_CODE('sdsk') +kTrashFolderType = FOUR_CHAR_CODE('trsh') +kSystemTrashFolderType = FOUR_CHAR_CODE('strs') +kWhereToEmptyTrashFolderType = FOUR_CHAR_CODE('empt') +kPrintMonitorDocsFolderType = FOUR_CHAR_CODE('prnt') +kStartupFolderType = FOUR_CHAR_CODE('strt') +kShutdownFolderType = FOUR_CHAR_CODE('shdf') +kAppleMenuFolderType = FOUR_CHAR_CODE('amnu') +kControlPanelFolderType = FOUR_CHAR_CODE('ctrl') +kSystemControlPanelFolderType = FOUR_CHAR_CODE('sctl') +kExtensionFolderType = FOUR_CHAR_CODE('extn') +kFontsFolderType = FOUR_CHAR_CODE('font') +kPreferencesFolderType = FOUR_CHAR_CODE('pref') +kSystemPreferencesFolderType = FOUR_CHAR_CODE('sprf') +kTemporaryFolderType = FOUR_CHAR_CODE('temp') +kExtensionDisabledFolderType = FOUR_CHAR_CODE('extD') +kControlPanelDisabledFolderType = FOUR_CHAR_CODE('ctrD') +kSystemExtensionDisabledFolderType = FOUR_CHAR_CODE('macD') +kStartupItemsDisabledFolderType = FOUR_CHAR_CODE('strD') +kShutdownItemsDisabledFolderType = FOUR_CHAR_CODE('shdD') +kApplicationsFolderType = FOUR_CHAR_CODE('apps') +kDocumentsFolderType = FOUR_CHAR_CODE('docs') +kVolumeRootFolderType = FOUR_CHAR_CODE('root') +kChewableItemsFolderType = FOUR_CHAR_CODE('flnt') +kApplicationSupportFolderType = FOUR_CHAR_CODE('asup') +kTextEncodingsFolderType = FOUR_CHAR_CODE('\xc4tex') +kStationeryFolderType = FOUR_CHAR_CODE('odst') +kOpenDocFolderType = FOUR_CHAR_CODE('odod') +kOpenDocShellPlugInsFolderType = FOUR_CHAR_CODE('odsp') +kEditorsFolderType = FOUR_CHAR_CODE('oded') +kOpenDocEditorsFolderType = FOUR_CHAR_CODE('\xc4odf') +kOpenDocLibrariesFolderType = FOUR_CHAR_CODE('odlb') +kGenEditorsFolderType = FOUR_CHAR_CODE('\xc4edi') +kHelpFolderType = FOUR_CHAR_CODE('\xc4hlp') +kInternetPlugInFolderType = FOUR_CHAR_CODE('\xc4net') +kModemScriptsFolderType = FOUR_CHAR_CODE('\xc4mod') +kPrinterDescriptionFolderType = FOUR_CHAR_CODE('ppdf') +kPrinterDriverFolderType = FOUR_CHAR_CODE('\xc4prd') +kScriptingAdditionsFolderType = FOUR_CHAR_CODE('\xc4scr') +kSharedLibrariesFolderType = FOUR_CHAR_CODE('\xc4lib') +kVoicesFolderType = FOUR_CHAR_CODE('fvoc') +kControlStripModulesFolderType = FOUR_CHAR_CODE('sdev') +kAssistantsFolderType = FOUR_CHAR_CODE('ast\xc4') +kUtilitiesFolderType = FOUR_CHAR_CODE('uti\xc4') +kAppleExtrasFolderType = FOUR_CHAR_CODE('aex\xc4') +kContextualMenuItemsFolderType = FOUR_CHAR_CODE('cmnu') +kMacOSReadMesFolderType = FOUR_CHAR_CODE('mor\xc4') +kALMModulesFolderType = FOUR_CHAR_CODE('walk') +kALMPreferencesFolderType = FOUR_CHAR_CODE('trip') +kALMLocationsFolderType = FOUR_CHAR_CODE('fall') +kColorSyncProfilesFolderType = FOUR_CHAR_CODE('prof') +kThemesFolderType = FOUR_CHAR_CODE('thme') +kFavoritesFolderType = FOUR_CHAR_CODE('favs') +kInternetFolderType = FOUR_CHAR_CODE('int\xc4') +kAppearanceFolderType = FOUR_CHAR_CODE('appr') +kSoundSetsFolderType = FOUR_CHAR_CODE('snds') +kDesktopPicturesFolderType = FOUR_CHAR_CODE('dtp\xc4') +kInternetSearchSitesFolderType = FOUR_CHAR_CODE('issf') +kFindSupportFolderType = FOUR_CHAR_CODE('fnds') +kFindByContentFolderType = FOUR_CHAR_CODE('fbcf') +kInstallerLogsFolderType = FOUR_CHAR_CODE('ilgf') +kScriptsFolderType = FOUR_CHAR_CODE('scr\xc4') +kFolderActionsFolderType = FOUR_CHAR_CODE('fasf') +kLauncherItemsFolderType = FOUR_CHAR_CODE('laun') +kRecentApplicationsFolderType = FOUR_CHAR_CODE('rapp') +kRecentDocumentsFolderType = FOUR_CHAR_CODE('rdoc') +kRecentServersFolderType = FOUR_CHAR_CODE('rsvr') +kSpeakableItemsFolderType = FOUR_CHAR_CODE('spki') +kKeychainFolderType = FOUR_CHAR_CODE('kchn') +kQuickTimeExtensionsFolderType = FOUR_CHAR_CODE('qtex') +kDisplayExtensionsFolderType = FOUR_CHAR_CODE('dspl') +kMultiprocessingFolderType = FOUR_CHAR_CODE('mpxf') +kPrintingPlugInsFolderType = FOUR_CHAR_CODE('pplg') +kDomainTopLevelFolderType = FOUR_CHAR_CODE('dtop') +kDomainLibraryFolderType = FOUR_CHAR_CODE('dlib') +kColorSyncFolderType = FOUR_CHAR_CODE('sync') +kColorSyncCMMFolderType = FOUR_CHAR_CODE('ccmm') +kColorSyncScriptingFolderType = FOUR_CHAR_CODE('cscr') +kPrintersFolderType = FOUR_CHAR_CODE('impr') +kSpeechFolderType = FOUR_CHAR_CODE('spch') +kCarbonLibraryFolderType = FOUR_CHAR_CODE('carb') +kDocumentationFolderType = FOUR_CHAR_CODE('info') +kDeveloperDocsFolderType = FOUR_CHAR_CODE('ddoc') +kDeveloperHelpFolderType = FOUR_CHAR_CODE('devh') +kISSDownloadsFolderType = FOUR_CHAR_CODE('issd') +kUserSpecificTmpFolderType = FOUR_CHAR_CODE('utmp') +kCachedDataFolderType = FOUR_CHAR_CODE('cach') +kFrameworksFolderType = FOUR_CHAR_CODE('fram') +kPrivateFrameworksFolderType = FOUR_CHAR_CODE('pfrm') +kClassicDesktopFolderType = FOUR_CHAR_CODE('sdsk') +kDeveloperFolderType = FOUR_CHAR_CODE('devf') +kSystemSoundsFolderType = FOUR_CHAR_CODE('ssnd') +kComponentsFolderType = FOUR_CHAR_CODE('cmpd') +kQuickTimeComponentsFolderType = FOUR_CHAR_CODE('wcmp') +kCoreServicesFolderType = FOUR_CHAR_CODE('csrv') +kPictureDocumentsFolderType = FOUR_CHAR_CODE('pdoc') +kMovieDocumentsFolderType = FOUR_CHAR_CODE('mdoc') +kMusicDocumentsFolderType = FOUR_CHAR_CODE('\xb5doc') +kInternetSitesFolderType = FOUR_CHAR_CODE('site') +kPublicFolderType = FOUR_CHAR_CODE('pubb') +kAudioSupportFolderType = FOUR_CHAR_CODE('adio') +kAudioSoundsFolderType = FOUR_CHAR_CODE('asnd') +kAudioSoundBanksFolderType = FOUR_CHAR_CODE('bank') +kAudioAlertSoundsFolderType = FOUR_CHAR_CODE('alrt') +kAudioPlugInsFolderType = FOUR_CHAR_CODE('aplg') +kAudioComponentsFolderType = FOUR_CHAR_CODE('acmp') +kKernelExtensionsFolderType = FOUR_CHAR_CODE('kext') +kDirectoryServicesFolderType = FOUR_CHAR_CODE('dsrv') +kDirectoryServicesPlugInsFolderType = FOUR_CHAR_CODE('dplg') +kInstallerReceiptsFolderType = FOUR_CHAR_CODE('rcpt') +kFileSystemSupportFolderType = FOUR_CHAR_CODE('fsys') +kAppleShareSupportFolderType = FOUR_CHAR_CODE('shar') +kAppleShareAuthenticationFolderType = FOUR_CHAR_CODE('auth') +kMIDIDriversFolderType = FOUR_CHAR_CODE('midi') +kLocalesFolderType = FOUR_CHAR_CODE('\xc4loc') +kFindByContentPluginsFolderType = FOUR_CHAR_CODE('fbcp') +kUsersFolderType = FOUR_CHAR_CODE('usrs') +kCurrentUserFolderType = FOUR_CHAR_CODE('cusr') +kCurrentUserRemoteFolderLocation = FOUR_CHAR_CODE('rusf') +kCurrentUserRemoteFolderType = FOUR_CHAR_CODE('rusr') +kSharedUserDataFolderType = FOUR_CHAR_CODE('sdat') +kVolumeSettingsFolderType = FOUR_CHAR_CODE('vsfd') +kAppleshareAutomountServerAliasesFolderType = FOUR_CHAR_CODE('srv\xc4') +kPreMacOS91ApplicationsFolderType = FOUR_CHAR_CODE('\x8cpps') +kPreMacOS91InstallerLogsFolderType = FOUR_CHAR_CODE('\x94lgf') +kPreMacOS91AssistantsFolderType = FOUR_CHAR_CODE('\x8cst\xc4') +kPreMacOS91UtilitiesFolderType = FOUR_CHAR_CODE('\x9fti\xc4') +kPreMacOS91AppleExtrasFolderType = FOUR_CHAR_CODE('\x8cex\xc4') +kPreMacOS91MacOSReadMesFolderType = FOUR_CHAR_CODE('\xb5or\xc4') +kPreMacOS91InternetFolderType = FOUR_CHAR_CODE('\x94nt\xc4') +kPreMacOS91AutomountedServersFolderType = FOUR_CHAR_CODE('\xa7rv\xc4') +kPreMacOS91StationeryFolderType = FOUR_CHAR_CODE('\xbfdst') +kCreateFolderAtBoot = 0x00000002 +kCreateFolderAtBootBit = 1 +kFolderCreatedInvisible = 0x00000004 +kFolderCreatedInvisibleBit = 2 +kFolderCreatedNameLocked = 0x00000008 +kFolderCreatedNameLockedBit = 3 +kFolderCreatedAdminPrivs = 0x00000010 +kFolderCreatedAdminPrivsBit = 4 +kFolderInUserFolder = 0x00000020 +kFolderInUserFolderBit = 5 +kFolderTrackedByAlias = 0x00000040 +kFolderTrackedByAliasBit = 6 +kFolderInRemoteUserFolderIfAvailable = 0x00000080 +kFolderInRemoteUserFolderIfAvailableBit = 7 +kFolderNeverMatchedInIdentifyFolder = 0x00000100 +kFolderNeverMatchedInIdentifyFolderBit = 8 +kFolderMustStayOnSameVolume = 0x00000200 +kFolderMustStayOnSameVolumeBit = 9 +kFolderManagerFolderInMacOS9FolderIfMacOSXIsInstalledMask = 0x00000400 +kFolderManagerFolderInMacOS9FolderIfMacOSXIsInstalledBit = 10 +kFolderInLocalOrRemoteUserFolder = kFolderInUserFolder | kFolderInRemoteUserFolderIfAvailable +kRelativeFolder = FOUR_CHAR_CODE('relf') +kSpecialFolder = FOUR_CHAR_CODE('spcf') +kBlessedFolder = FOUR_CHAR_CODE('blsf') +kRootFolder = FOUR_CHAR_CODE('rotf') +kCurrentUserFolderLocation = FOUR_CHAR_CODE('cusf') +kFindFolderRedirectionFlagUseDistinctUserFoldersBit = 0 +kFindFolderRedirectionFlagUseGivenVRefAndDirIDAsUserFolderBit = 1 +kFindFolderRedirectionFlagsUseGivenVRefNumAndDirIDAsRemoteUserFolderBit = 2 +kFolderManagerUserRedirectionGlobalsCurrentVersion = 1 +kFindFolderExtendedFlagsDoNotFollowAliasesBit = 0 +kFindFolderExtendedFlagsDoNotUseUserFolderBit = 1 +kFindFolderExtendedFlagsUseOtherUserRecord = 0x01000000 +kFolderManagerNotificationMessageUserLogIn = FOUR_CHAR_CODE('log+') +kFolderManagerNotificationMessagePreUserLogIn = FOUR_CHAR_CODE('logj') +kFolderManagerNotificationMessageUserLogOut = FOUR_CHAR_CODE('log-') +kFolderManagerNotificationMessagePostUserLogOut = FOUR_CHAR_CODE('logp') +kFolderManagerNotificationDiscardCachedData = FOUR_CHAR_CODE('dche') +kFolderManagerNotificationMessageLoginStartup = FOUR_CHAR_CODE('stup') +kDoNotRemoveWhenCurrentApplicationQuitsBit = 0 +kDoNotRemoveWheCurrentApplicationQuitsBit = kDoNotRemoveWhenCurrentApplicationQuitsBit +kStopIfAnyNotificationProcReturnsErrorBit = 31 diff --git a/sys/lib/python/plat-mac/Carbon/Fonts.py b/sys/lib/python/plat-mac/Carbon/Fonts.py new file mode 100644 index 000000000..8be7e7a41 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Fonts.py @@ -0,0 +1,59 @@ +# Generated from 'Fonts.h' + +def FOUR_CHAR_CODE(x): return x +kNilOptions = 0 +systemFont = 0 +applFont = 1 +kFMDefaultOptions = kNilOptions +kFMDefaultActivationContext = kFMDefaultOptions +kFMGlobalActivationContext = 0x00000001 +kFMLocalActivationContext = kFMDefaultActivationContext +kFMDefaultIterationScope = kFMDefaultOptions +kFMGlobalIterationScope = 0x00000001 +kFMLocalIterationScope = kFMDefaultIterationScope +kPlatformDefaultGuiFontID = applFont +kPlatformDefaultGuiFontID = -1 +commandMark = 17 +checkMark = 18 +diamondMark = 19 +appleMark = 20 +propFont = 36864L +prpFntH = 36865L +prpFntW = 36866L +prpFntHW = 36867L +fixedFont = 45056L +fxdFntH = 45057L +fxdFntW = 45058L +fxdFntHW = 45059L +fontWid = 44208L +kFMUseGlobalScopeOption = 0x00000001 +kFontIDNewYork = 2 +kFontIDGeneva = 3 +kFontIDMonaco = 4 +kFontIDVenice = 5 +kFontIDLondon = 6 +kFontIDAthens = 7 +kFontIDSanFrancisco = 8 +kFontIDToronto = 9 +kFontIDCairo = 11 +kFontIDLosAngeles = 12 +kFontIDTimes = 20 +kFontIDHelvetica = 21 +kFontIDCourier = 22 +kFontIDSymbol = 23 +kFontIDMobile = 24 +newYork = kFontIDNewYork +geneva = kFontIDGeneva +monaco = kFontIDMonaco +venice = kFontIDVenice +london = kFontIDLondon +athens = kFontIDAthens +sanFran = kFontIDSanFrancisco +toronto = kFontIDToronto +cairo = kFontIDCairo +losAngeles = kFontIDLosAngeles +times = kFontIDTimes +helvetica = kFontIDHelvetica +courier = kFontIDCourier +symbol = kFontIDSymbol +mobile = kFontIDMobile diff --git a/sys/lib/python/plat-mac/Carbon/Help.py b/sys/lib/python/plat-mac/Carbon/Help.py new file mode 100644 index 000000000..5fca0d7fd --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Help.py @@ -0,0 +1 @@ +from _Help import * diff --git a/sys/lib/python/plat-mac/Carbon/IBCarbon.py b/sys/lib/python/plat-mac/Carbon/IBCarbon.py new file mode 100644 index 000000000..60f0e74ca --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/IBCarbon.py @@ -0,0 +1 @@ +from _IBCarbon import * diff --git a/sys/lib/python/plat-mac/Carbon/IBCarbonRuntime.py b/sys/lib/python/plat-mac/Carbon/IBCarbonRuntime.py new file mode 100644 index 000000000..46780187d --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/IBCarbonRuntime.py @@ -0,0 +1,5 @@ +# Generated from 'IBCarbonRuntime.h' + +kIBCarbonRuntimeCantFindNibFile = -10960 +kIBCarbonRuntimeObjectNotOfRequestedType = -10961 +kIBCarbonRuntimeCantFindObject = -10962 diff --git a/sys/lib/python/plat-mac/Carbon/Icn.py b/sys/lib/python/plat-mac/Carbon/Icn.py new file mode 100644 index 000000000..b04134c8e --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Icn.py @@ -0,0 +1 @@ +from _Icn import * diff --git a/sys/lib/python/plat-mac/Carbon/Icons.py b/sys/lib/python/plat-mac/Carbon/Icons.py new file mode 100644 index 000000000..86dae632d --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Icons.py @@ -0,0 +1,381 @@ +# Generated from 'Icons.h' + +def FOUR_CHAR_CODE(x): return x +from Carbon.Files import * +kGenericDocumentIconResource = -4000 +kGenericStationeryIconResource = -3985 +kGenericEditionFileIconResource = -3989 +kGenericApplicationIconResource = -3996 +kGenericDeskAccessoryIconResource = -3991 +kGenericFolderIconResource = -3999 +kPrivateFolderIconResource = -3994 +kFloppyIconResource = -3998 +kTrashIconResource = -3993 +kGenericRAMDiskIconResource = -3988 +kGenericCDROMIconResource = -3987 +kDesktopIconResource = -3992 +kOpenFolderIconResource = -3997 +kGenericHardDiskIconResource = -3995 +kGenericFileServerIconResource = -3972 +kGenericSuitcaseIconResource = -3970 +kGenericMoverObjectIconResource = -3969 +kGenericPreferencesIconResource = -3971 +kGenericQueryDocumentIconResource = -16506 +kGenericExtensionIconResource = -16415 +kSystemFolderIconResource = -3983 +kHelpIconResource = -20271 +kAppleMenuFolderIconResource = -3982 +genericDocumentIconResource = kGenericDocumentIconResource +genericStationeryIconResource = kGenericStationeryIconResource +genericEditionFileIconResource = kGenericEditionFileIconResource +genericApplicationIconResource = kGenericApplicationIconResource +genericDeskAccessoryIconResource = kGenericDeskAccessoryIconResource +genericFolderIconResource = kGenericFolderIconResource +privateFolderIconResource = kPrivateFolderIconResource +floppyIconResource = kFloppyIconResource +trashIconResource = kTrashIconResource +genericRAMDiskIconResource = kGenericRAMDiskIconResource +genericCDROMIconResource = kGenericCDROMIconResource +desktopIconResource = kDesktopIconResource +openFolderIconResource = kOpenFolderIconResource +genericHardDiskIconResource = kGenericHardDiskIconResource +genericFileServerIconResource = kGenericFileServerIconResource +genericSuitcaseIconResource = kGenericSuitcaseIconResource +genericMoverObjectIconResource = kGenericMoverObjectIconResource +genericPreferencesIconResource = kGenericPreferencesIconResource +genericQueryDocumentIconResource = kGenericQueryDocumentIconResource +genericExtensionIconResource = kGenericExtensionIconResource +systemFolderIconResource = kSystemFolderIconResource +appleMenuFolderIconResource = kAppleMenuFolderIconResource +kStartupFolderIconResource = -3981 +kOwnedFolderIconResource = -3980 +kDropFolderIconResource = -3979 +kSharedFolderIconResource = -3978 +kMountedFolderIconResource = -3977 +kControlPanelFolderIconResource = -3976 +kPrintMonitorFolderIconResource = -3975 +kPreferencesFolderIconResource = -3974 +kExtensionsFolderIconResource = -3973 +kFontsFolderIconResource = -3968 +kFullTrashIconResource = -3984 +startupFolderIconResource = kStartupFolderIconResource +ownedFolderIconResource = kOwnedFolderIconResource +dropFolderIconResource = kDropFolderIconResource +sharedFolderIconResource = kSharedFolderIconResource +mountedFolderIconResource = kMountedFolderIconResource +controlPanelFolderIconResource = kControlPanelFolderIconResource +printMonitorFolderIconResource = kPrintMonitorFolderIconResource +preferencesFolderIconResource = kPreferencesFolderIconResource +extensionsFolderIconResource = kExtensionsFolderIconResource +fontsFolderIconResource = kFontsFolderIconResource +fullTrashIconResource = kFullTrashIconResource +kThumbnail32BitData = FOUR_CHAR_CODE('it32') +kThumbnail8BitMask = FOUR_CHAR_CODE('t8mk') +kHuge1BitMask = FOUR_CHAR_CODE('ich#') +kHuge4BitData = FOUR_CHAR_CODE('ich4') +kHuge8BitData = FOUR_CHAR_CODE('ich8') +kHuge32BitData = FOUR_CHAR_CODE('ih32') +kHuge8BitMask = FOUR_CHAR_CODE('h8mk') +kLarge1BitMask = FOUR_CHAR_CODE('ICN#') +kLarge4BitData = FOUR_CHAR_CODE('icl4') +kLarge8BitData = FOUR_CHAR_CODE('icl8') +kLarge32BitData = FOUR_CHAR_CODE('il32') +kLarge8BitMask = FOUR_CHAR_CODE('l8mk') +kSmall1BitMask = FOUR_CHAR_CODE('ics#') +kSmall4BitData = FOUR_CHAR_CODE('ics4') +kSmall8BitData = FOUR_CHAR_CODE('ics8') +kSmall32BitData = FOUR_CHAR_CODE('is32') +kSmall8BitMask = FOUR_CHAR_CODE('s8mk') +kMini1BitMask = FOUR_CHAR_CODE('icm#') +kMini4BitData = FOUR_CHAR_CODE('icm4') +kMini8BitData = FOUR_CHAR_CODE('icm8') +kTileIconVariant = FOUR_CHAR_CODE('tile') +kRolloverIconVariant = FOUR_CHAR_CODE('over') +kDropIconVariant = FOUR_CHAR_CODE('drop') +kOpenIconVariant = FOUR_CHAR_CODE('open') +kOpenDropIconVariant = FOUR_CHAR_CODE('odrp') +large1BitMask = kLarge1BitMask +large4BitData = kLarge4BitData +large8BitData = kLarge8BitData +small1BitMask = kSmall1BitMask +small4BitData = kSmall4BitData +small8BitData = kSmall8BitData +mini1BitMask = kMini1BitMask +mini4BitData = kMini4BitData +mini8BitData = kMini8BitData +kAlignNone = 0x00 +kAlignVerticalCenter = 0x01 +kAlignTop = 0x02 +kAlignBottom = 0x03 +kAlignHorizontalCenter = 0x04 +kAlignAbsoluteCenter = kAlignVerticalCenter | kAlignHorizontalCenter +kAlignCenterTop = kAlignTop | kAlignHorizontalCenter +kAlignCenterBottom = kAlignBottom | kAlignHorizontalCenter +kAlignLeft = 0x08 +kAlignCenterLeft = kAlignVerticalCenter | kAlignLeft +kAlignTopLeft = kAlignTop | kAlignLeft +kAlignBottomLeft = kAlignBottom | kAlignLeft +kAlignRight = 0x0C +kAlignCenterRight = kAlignVerticalCenter | kAlignRight +kAlignTopRight = kAlignTop | kAlignRight +kAlignBottomRight = kAlignBottom | kAlignRight +atNone = kAlignNone +atVerticalCenter = kAlignVerticalCenter +atTop = kAlignTop +atBottom = kAlignBottom +atHorizontalCenter = kAlignHorizontalCenter +atAbsoluteCenter = kAlignAbsoluteCenter +atCenterTop = kAlignCenterTop +atCenterBottom = kAlignCenterBottom +atLeft = kAlignLeft +atCenterLeft = kAlignCenterLeft +atTopLeft = kAlignTopLeft +atBottomLeft = kAlignBottomLeft +atRight = kAlignRight +atCenterRight = kAlignCenterRight +atTopRight = kAlignTopRight +atBottomRight = kAlignBottomRight +kTransformNone = 0x00 +kTransformDisabled = 0x01 +kTransformOffline = 0x02 +kTransformOpen = 0x03 +kTransformLabel1 = 0x0100 +kTransformLabel2 = 0x0200 +kTransformLabel3 = 0x0300 +kTransformLabel4 = 0x0400 +kTransformLabel5 = 0x0500 +kTransformLabel6 = 0x0600 +kTransformLabel7 = 0x0700 +kTransformSelected = 0x4000 +kTransformSelectedDisabled = kTransformSelected | kTransformDisabled +kTransformSelectedOffline = kTransformSelected | kTransformOffline +kTransformSelectedOpen = kTransformSelected | kTransformOpen +ttNone = kTransformNone +ttDisabled = kTransformDisabled +ttOffline = kTransformOffline +ttOpen = kTransformOpen +ttLabel1 = kTransformLabel1 +ttLabel2 = kTransformLabel2 +ttLabel3 = kTransformLabel3 +ttLabel4 = kTransformLabel4 +ttLabel5 = kTransformLabel5 +ttLabel6 = kTransformLabel6 +ttLabel7 = kTransformLabel7 +ttSelected = kTransformSelected +ttSelectedDisabled = kTransformSelectedDisabled +ttSelectedOffline = kTransformSelectedOffline +ttSelectedOpen = kTransformSelectedOpen +kSelectorLarge1Bit = 0x00000001 +kSelectorLarge4Bit = 0x00000002 +kSelectorLarge8Bit = 0x00000004 +kSelectorLarge32Bit = 0x00000008 +kSelectorLarge8BitMask = 0x00000010 +kSelectorSmall1Bit = 0x00000100 +kSelectorSmall4Bit = 0x00000200 +kSelectorSmall8Bit = 0x00000400 +kSelectorSmall32Bit = 0x00000800 +kSelectorSmall8BitMask = 0x00001000 +kSelectorMini1Bit = 0x00010000 +kSelectorMini4Bit = 0x00020000 +kSelectorMini8Bit = 0x00040000 +kSelectorHuge1Bit = 0x01000000 +kSelectorHuge4Bit = 0x02000000 +kSelectorHuge8Bit = 0x04000000 +kSelectorHuge32Bit = 0x08000000 +kSelectorHuge8BitMask = 0x10000000 +kSelectorAllLargeData = 0x000000FF +kSelectorAllSmallData = 0x0000FF00 +kSelectorAllMiniData = 0x00FF0000 +# kSelectorAllHugeData = (long)0xFF000000 +kSelectorAll1BitData = kSelectorLarge1Bit | kSelectorSmall1Bit | kSelectorMini1Bit | kSelectorHuge1Bit +kSelectorAll4BitData = kSelectorLarge4Bit | kSelectorSmall4Bit | kSelectorMini4Bit | kSelectorHuge4Bit +kSelectorAll8BitData = kSelectorLarge8Bit | kSelectorSmall8Bit | kSelectorMini8Bit | kSelectorHuge8Bit +kSelectorAll32BitData = kSelectorLarge32Bit | kSelectorSmall32Bit | kSelectorHuge32Bit +# kSelectorAllAvailableData = (long)0xFFFFFFFF +svLarge1Bit = kSelectorLarge1Bit +svLarge4Bit = kSelectorLarge4Bit +svLarge8Bit = kSelectorLarge8Bit +svSmall1Bit = kSelectorSmall1Bit +svSmall4Bit = kSelectorSmall4Bit +svSmall8Bit = kSelectorSmall8Bit +svMini1Bit = kSelectorMini1Bit +svMini4Bit = kSelectorMini4Bit +svMini8Bit = kSelectorMini8Bit +svAllLargeData = kSelectorAllLargeData +svAllSmallData = kSelectorAllSmallData +svAllMiniData = kSelectorAllMiniData +svAll1BitData = kSelectorAll1BitData +svAll4BitData = kSelectorAll4BitData +svAll8BitData = kSelectorAll8BitData +# svAllAvailableData = kSelectorAllAvailableData +kSystemIconsCreator = FOUR_CHAR_CODE('macs') +# err = GetIconRef(kOnSystemDisk +kClipboardIcon = FOUR_CHAR_CODE('CLIP') +kClippingUnknownTypeIcon = FOUR_CHAR_CODE('clpu') +kClippingPictureTypeIcon = FOUR_CHAR_CODE('clpp') +kClippingTextTypeIcon = FOUR_CHAR_CODE('clpt') +kClippingSoundTypeIcon = FOUR_CHAR_CODE('clps') +kDesktopIcon = FOUR_CHAR_CODE('desk') +kFinderIcon = FOUR_CHAR_CODE('FNDR') +kFontSuitcaseIcon = FOUR_CHAR_CODE('FFIL') +kFullTrashIcon = FOUR_CHAR_CODE('ftrh') +kGenericApplicationIcon = FOUR_CHAR_CODE('APPL') +kGenericCDROMIcon = FOUR_CHAR_CODE('cddr') +kGenericControlPanelIcon = FOUR_CHAR_CODE('APPC') +kGenericControlStripModuleIcon = FOUR_CHAR_CODE('sdev') +kGenericComponentIcon = FOUR_CHAR_CODE('thng') +kGenericDeskAccessoryIcon = FOUR_CHAR_CODE('APPD') +kGenericDocumentIcon = FOUR_CHAR_CODE('docu') +kGenericEditionFileIcon = FOUR_CHAR_CODE('edtf') +kGenericExtensionIcon = FOUR_CHAR_CODE('INIT') +kGenericFileServerIcon = FOUR_CHAR_CODE('srvr') +kGenericFontIcon = FOUR_CHAR_CODE('ffil') +kGenericFontScalerIcon = FOUR_CHAR_CODE('sclr') +kGenericFloppyIcon = FOUR_CHAR_CODE('flpy') +kGenericHardDiskIcon = FOUR_CHAR_CODE('hdsk') +kGenericIDiskIcon = FOUR_CHAR_CODE('idsk') +kGenericRemovableMediaIcon = FOUR_CHAR_CODE('rmov') +kGenericMoverObjectIcon = FOUR_CHAR_CODE('movr') +kGenericPCCardIcon = FOUR_CHAR_CODE('pcmc') +kGenericPreferencesIcon = FOUR_CHAR_CODE('pref') +kGenericQueryDocumentIcon = FOUR_CHAR_CODE('qery') +kGenericRAMDiskIcon = FOUR_CHAR_CODE('ramd') +kGenericSharedLibaryIcon = FOUR_CHAR_CODE('shlb') +kGenericStationeryIcon = FOUR_CHAR_CODE('sdoc') +kGenericSuitcaseIcon = FOUR_CHAR_CODE('suit') +kGenericURLIcon = FOUR_CHAR_CODE('gurl') +kGenericWORMIcon = FOUR_CHAR_CODE('worm') +kInternationalResourcesIcon = FOUR_CHAR_CODE('ifil') +kKeyboardLayoutIcon = FOUR_CHAR_CODE('kfil') +kSoundFileIcon = FOUR_CHAR_CODE('sfil') +kSystemSuitcaseIcon = FOUR_CHAR_CODE('zsys') +kTrashIcon = FOUR_CHAR_CODE('trsh') +kTrueTypeFontIcon = FOUR_CHAR_CODE('tfil') +kTrueTypeFlatFontIcon = FOUR_CHAR_CODE('sfnt') +kTrueTypeMultiFlatFontIcon = FOUR_CHAR_CODE('ttcf') +kUserIDiskIcon = FOUR_CHAR_CODE('udsk') +kInternationResourcesIcon = kInternationalResourcesIcon +kInternetLocationHTTPIcon = FOUR_CHAR_CODE('ilht') +kInternetLocationFTPIcon = FOUR_CHAR_CODE('ilft') +kInternetLocationAppleShareIcon = FOUR_CHAR_CODE('ilaf') +kInternetLocationAppleTalkZoneIcon = FOUR_CHAR_CODE('ilat') +kInternetLocationFileIcon = FOUR_CHAR_CODE('ilfi') +kInternetLocationMailIcon = FOUR_CHAR_CODE('ilma') +kInternetLocationNewsIcon = FOUR_CHAR_CODE('ilnw') +kInternetLocationNSLNeighborhoodIcon = FOUR_CHAR_CODE('ilns') +kInternetLocationGenericIcon = FOUR_CHAR_CODE('ilge') +kGenericFolderIcon = FOUR_CHAR_CODE('fldr') +kDropFolderIcon = FOUR_CHAR_CODE('dbox') +kMountedFolderIcon = FOUR_CHAR_CODE('mntd') +kOpenFolderIcon = FOUR_CHAR_CODE('ofld') +kOwnedFolderIcon = FOUR_CHAR_CODE('ownd') +kPrivateFolderIcon = FOUR_CHAR_CODE('prvf') +kSharedFolderIcon = FOUR_CHAR_CODE('shfl') +kSharingPrivsNotApplicableIcon = FOUR_CHAR_CODE('shna') +kSharingPrivsReadOnlyIcon = FOUR_CHAR_CODE('shro') +kSharingPrivsReadWriteIcon = FOUR_CHAR_CODE('shrw') +kSharingPrivsUnknownIcon = FOUR_CHAR_CODE('shuk') +kSharingPrivsWritableIcon = FOUR_CHAR_CODE('writ') +kUserFolderIcon = FOUR_CHAR_CODE('ufld') +kWorkgroupFolderIcon = FOUR_CHAR_CODE('wfld') +kGuestUserIcon = FOUR_CHAR_CODE('gusr') +kUserIcon = FOUR_CHAR_CODE('user') +kOwnerIcon = FOUR_CHAR_CODE('susr') +kGroupIcon = FOUR_CHAR_CODE('grup') +kAppearanceFolderIcon = FOUR_CHAR_CODE('appr') +kAppleExtrasFolderIcon = FOUR_CHAR_CODE('aex\xc4') +kAppleMenuFolderIcon = FOUR_CHAR_CODE('amnu') +kApplicationsFolderIcon = FOUR_CHAR_CODE('apps') +kApplicationSupportFolderIcon = FOUR_CHAR_CODE('asup') +kAssistantsFolderIcon = FOUR_CHAR_CODE('ast\xc4') +kColorSyncFolderIcon = FOUR_CHAR_CODE('prof') +kContextualMenuItemsFolderIcon = FOUR_CHAR_CODE('cmnu') +kControlPanelDisabledFolderIcon = FOUR_CHAR_CODE('ctrD') +kControlPanelFolderIcon = FOUR_CHAR_CODE('ctrl') +kControlStripModulesFolderIcon = FOUR_CHAR_CODE('sdv\xc4') +kDocumentsFolderIcon = FOUR_CHAR_CODE('docs') +kExtensionsDisabledFolderIcon = FOUR_CHAR_CODE('extD') +kExtensionsFolderIcon = FOUR_CHAR_CODE('extn') +kFavoritesFolderIcon = FOUR_CHAR_CODE('favs') +kFontsFolderIcon = FOUR_CHAR_CODE('font') +kHelpFolderIcon = FOUR_CHAR_CODE('\xc4hlp') +kInternetFolderIcon = FOUR_CHAR_CODE('int\xc4') +kInternetPlugInFolderIcon = FOUR_CHAR_CODE('\xc4net') +kInternetSearchSitesFolderIcon = FOUR_CHAR_CODE('issf') +kLocalesFolderIcon = FOUR_CHAR_CODE('\xc4loc') +kMacOSReadMeFolderIcon = FOUR_CHAR_CODE('mor\xc4') +kPublicFolderIcon = FOUR_CHAR_CODE('pubf') +kPreferencesFolderIcon = FOUR_CHAR_CODE('prf\xc4') +kPrinterDescriptionFolderIcon = FOUR_CHAR_CODE('ppdf') +kPrinterDriverFolderIcon = FOUR_CHAR_CODE('\xc4prd') +kPrintMonitorFolderIcon = FOUR_CHAR_CODE('prnt') +kRecentApplicationsFolderIcon = FOUR_CHAR_CODE('rapp') +kRecentDocumentsFolderIcon = FOUR_CHAR_CODE('rdoc') +kRecentServersFolderIcon = FOUR_CHAR_CODE('rsrv') +kScriptingAdditionsFolderIcon = FOUR_CHAR_CODE('\xc4scr') +kSharedLibrariesFolderIcon = FOUR_CHAR_CODE('\xc4lib') +kScriptsFolderIcon = FOUR_CHAR_CODE('scr\xc4') +kShutdownItemsDisabledFolderIcon = FOUR_CHAR_CODE('shdD') +kShutdownItemsFolderIcon = FOUR_CHAR_CODE('shdf') +kSpeakableItemsFolder = FOUR_CHAR_CODE('spki') +kStartupItemsDisabledFolderIcon = FOUR_CHAR_CODE('strD') +kStartupItemsFolderIcon = FOUR_CHAR_CODE('strt') +kSystemExtensionDisabledFolderIcon = FOUR_CHAR_CODE('macD') +kSystemFolderIcon = FOUR_CHAR_CODE('macs') +kTextEncodingsFolderIcon = FOUR_CHAR_CODE('\xc4tex') +kUsersFolderIcon = FOUR_CHAR_CODE('usr\xc4') +kUtilitiesFolderIcon = FOUR_CHAR_CODE('uti\xc4') +kVoicesFolderIcon = FOUR_CHAR_CODE('fvoc') +kSystemFolderXIcon = FOUR_CHAR_CODE('macx') +kAppleScriptBadgeIcon = FOUR_CHAR_CODE('scrp') +kLockedBadgeIcon = FOUR_CHAR_CODE('lbdg') +kMountedBadgeIcon = FOUR_CHAR_CODE('mbdg') +kSharedBadgeIcon = FOUR_CHAR_CODE('sbdg') +kAliasBadgeIcon = FOUR_CHAR_CODE('abdg') +kAlertCautionBadgeIcon = FOUR_CHAR_CODE('cbdg') +kAlertNoteIcon = FOUR_CHAR_CODE('note') +kAlertCautionIcon = FOUR_CHAR_CODE('caut') +kAlertStopIcon = FOUR_CHAR_CODE('stop') +kAppleTalkIcon = FOUR_CHAR_CODE('atlk') +kAppleTalkZoneIcon = FOUR_CHAR_CODE('atzn') +kAFPServerIcon = FOUR_CHAR_CODE('afps') +kFTPServerIcon = FOUR_CHAR_CODE('ftps') +kHTTPServerIcon = FOUR_CHAR_CODE('htps') +kGenericNetworkIcon = FOUR_CHAR_CODE('gnet') +kIPFileServerIcon = FOUR_CHAR_CODE('isrv') +kToolbarCustomizeIcon = FOUR_CHAR_CODE('tcus') +kToolbarDeleteIcon = FOUR_CHAR_CODE('tdel') +kToolbarFavoritesIcon = FOUR_CHAR_CODE('tfav') +kToolbarHomeIcon = FOUR_CHAR_CODE('thom') +kAppleLogoIcon = FOUR_CHAR_CODE('capl') +kAppleMenuIcon = FOUR_CHAR_CODE('sapl') +kBackwardArrowIcon = FOUR_CHAR_CODE('baro') +kFavoriteItemsIcon = FOUR_CHAR_CODE('favr') +kForwardArrowIcon = FOUR_CHAR_CODE('faro') +kGridIcon = FOUR_CHAR_CODE('grid') +kHelpIcon = FOUR_CHAR_CODE('help') +kKeepArrangedIcon = FOUR_CHAR_CODE('arng') +kLockedIcon = FOUR_CHAR_CODE('lock') +kNoFilesIcon = FOUR_CHAR_CODE('nfil') +kNoFolderIcon = FOUR_CHAR_CODE('nfld') +kNoWriteIcon = FOUR_CHAR_CODE('nwrt') +kProtectedApplicationFolderIcon = FOUR_CHAR_CODE('papp') +kProtectedSystemFolderIcon = FOUR_CHAR_CODE('psys') +kRecentItemsIcon = FOUR_CHAR_CODE('rcnt') +kShortcutIcon = FOUR_CHAR_CODE('shrt') +kSortAscendingIcon = FOUR_CHAR_CODE('asnd') +kSortDescendingIcon = FOUR_CHAR_CODE('dsnd') +kUnlockedIcon = FOUR_CHAR_CODE('ulck') +kConnectToIcon = FOUR_CHAR_CODE('cnct') +kGenericWindowIcon = FOUR_CHAR_CODE('gwin') +kQuestionMarkIcon = FOUR_CHAR_CODE('ques') +kDeleteAliasIcon = FOUR_CHAR_CODE('dali') +kEjectMediaIcon = FOUR_CHAR_CODE('ejec') +kBurningIcon = FOUR_CHAR_CODE('burn') +kRightContainerArrowIcon = FOUR_CHAR_CODE('rcar') +kIconServicesNormalUsageFlag = 0 +kIconServicesCatalogInfoMask = (kFSCatInfoNodeID | kFSCatInfoParentDirID | kFSCatInfoVolume | kFSCatInfoNodeFlags | kFSCatInfoFinderInfo | kFSCatInfoFinderXInfo | kFSCatInfoUserAccess) +kPlotIconRefNormalFlags = 0L +kPlotIconRefNoImage = (1 << 1) +kPlotIconRefNoMask = (1 << 2) +kIconFamilyType = FOUR_CHAR_CODE('icns') diff --git a/sys/lib/python/plat-mac/Carbon/Launch.py b/sys/lib/python/plat-mac/Carbon/Launch.py new file mode 100644 index 000000000..e553f8f4e --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Launch.py @@ -0,0 +1 @@ +from _Launch import * diff --git a/sys/lib/python/plat-mac/Carbon/LaunchServices.py b/sys/lib/python/plat-mac/Carbon/LaunchServices.py new file mode 100644 index 000000000..daff44693 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/LaunchServices.py @@ -0,0 +1,74 @@ +# Generated from 'LaunchServices.h' + +def FOUR_CHAR_CODE(x): return x +from Carbon.Files import * +kLSRequestAllInfo = -1 +kLSRolesAll = -1 +kLSUnknownType = FOUR_CHAR_CODE('\0\0\0\0') +kLSUnknownCreator = FOUR_CHAR_CODE('\0\0\0\0') +kLSInvalidExtensionIndex = -1 +kLSUnknownErr = -10810 +kLSNotAnApplicationErr = -10811 +kLSNotInitializedErr = -10812 +kLSDataUnavailableErr = -10813 +kLSApplicationNotFoundErr = -10814 +kLSUnknownTypeErr = -10815 +kLSDataTooOldErr = -10816 +kLSDataErr = -10817 +kLSLaunchInProgressErr = -10818 +kLSNotRegisteredErr = -10819 +kLSAppDoesNotClaimTypeErr = -10820 +kLSAppDoesNotSupportSchemeWarning = -10821 +kLSServerCommunicationErr = -10822 +kLSCannotSetInfoErr = -10823 +kLSInitializeDefaults = 0x00000001 +kLSMinCatInfoBitmap = (kFSCatInfoNodeFlags | kFSCatInfoParentDirID | kFSCatInfoFinderInfo | kFSCatInfoFinderXInfo) +# kLSInvalidExtensionIndex = (unsigned long)0xFFFFFFFF +kLSRequestExtension = 0x00000001 +kLSRequestTypeCreator = 0x00000002 +kLSRequestBasicFlagsOnly = 0x00000004 +kLSRequestAppTypeFlags = 0x00000008 +kLSRequestAllFlags = 0x00000010 +kLSRequestIconAndKind = 0x00000020 +kLSRequestExtensionFlagsOnly = 0x00000040 +# kLSRequestAllInfo = (unsigned long)0xFFFFFFFF +kLSItemInfoIsPlainFile = 0x00000001 +kLSItemInfoIsPackage = 0x00000002 +kLSItemInfoIsApplication = 0x00000004 +kLSItemInfoIsContainer = 0x00000008 +kLSItemInfoIsAliasFile = 0x00000010 +kLSItemInfoIsSymlink = 0x00000020 +kLSItemInfoIsInvisible = 0x00000040 +kLSItemInfoIsNativeApp = 0x00000080 +kLSItemInfoIsClassicApp = 0x00000100 +kLSItemInfoAppPrefersNative = 0x00000200 +kLSItemInfoAppPrefersClassic = 0x00000400 +kLSItemInfoAppIsScriptable = 0x00000800 +kLSItemInfoIsVolume = 0x00001000 +kLSItemInfoExtensionIsHidden = 0x00100000 +kLSRolesNone = 0x00000001 +kLSRolesViewer = 0x00000002 +kLSRolesEditor = 0x00000004 +# kLSRolesAll = (unsigned long)0xFFFFFFFF +kLSUnknownKindID = 0 +# kLSUnknownType = 0 +# kLSUnknownCreator = 0 +kLSAcceptDefault = 0x00000001 +kLSAcceptAllowLoginUI = 0x00000002 +kLSLaunchDefaults = 0x00000001 +kLSLaunchAndPrint = 0x00000002 +kLSLaunchReserved2 = 0x00000004 +kLSLaunchReserved3 = 0x00000008 +kLSLaunchReserved4 = 0x00000010 +kLSLaunchReserved5 = 0x00000020 +kLSLaunchReserved6 = 0x00000040 +kLSLaunchInhibitBGOnly = 0x00000080 +kLSLaunchDontAddToRecents = 0x00000100 +kLSLaunchDontSwitch = 0x00000200 +kLSLaunchNoParams = 0x00000800 +kLSLaunchAsync = 0x00010000 +kLSLaunchStartClassic = 0x00020000 +kLSLaunchInClassic = 0x00040000 +kLSLaunchNewInstance = 0x00080000 +kLSLaunchAndHide = 0x00100000 +kLSLaunchAndHideOthers = 0x00200000 diff --git a/sys/lib/python/plat-mac/Carbon/List.py b/sys/lib/python/plat-mac/Carbon/List.py new file mode 100644 index 000000000..b0d6e2273 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/List.py @@ -0,0 +1 @@ +from _List import * diff --git a/sys/lib/python/plat-mac/Carbon/Lists.py b/sys/lib/python/plat-mac/Carbon/Lists.py new file mode 100644 index 000000000..723294c61 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Lists.py @@ -0,0 +1,35 @@ +# Generated from 'Lists.h' + +def FOUR_CHAR_CODE(x): return x +listNotifyNothing = FOUR_CHAR_CODE('nada') +listNotifyClick = FOUR_CHAR_CODE('clik') +listNotifyDoubleClick = FOUR_CHAR_CODE('dblc') +listNotifyPreClick = FOUR_CHAR_CODE('pclk') +lDrawingModeOffBit = 3 +lDoVAutoscrollBit = 1 +lDoHAutoscrollBit = 0 +lDrawingModeOff = 8 +lDoVAutoscroll = 2 +lDoHAutoscroll = 1 +lOnlyOneBit = 7 +lExtendDragBit = 6 +lNoDisjointBit = 5 +lNoExtendBit = 4 +lNoRectBit = 3 +lUseSenseBit = 2 +lNoNilHiliteBit = 1 +lOnlyOne = -128 +lExtendDrag = 64 +lNoDisjoint = 32 +lNoExtend = 16 +lNoRect = 8 +lUseSense = 4 +lNoNilHilite = 2 +lInitMsg = 0 +lDrawMsg = 1 +lHiliteMsg = 2 +lCloseMsg = 3 +kListDefProcPtr = 0 +kListDefUserProcType = kListDefProcPtr +kListDefStandardTextType = 1 +kListDefStandardIconType = 2 diff --git a/sys/lib/python/plat-mac/Carbon/MacHelp.py b/sys/lib/python/plat-mac/Carbon/MacHelp.py new file mode 100644 index 000000000..06b9912bf --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/MacHelp.py @@ -0,0 +1,58 @@ +# Generated from 'MacHelp.h' + +def FOUR_CHAR_CODE(x): return x +kMacHelpVersion = 0x0003 +kHMSupplyContent = 0 +kHMDisposeContent = 1 +kHMNoContent = FOUR_CHAR_CODE('none') +kHMCFStringContent = FOUR_CHAR_CODE('cfst') +kHMPascalStrContent = FOUR_CHAR_CODE('pstr') +kHMStringResContent = FOUR_CHAR_CODE('str#') +kHMTEHandleContent = FOUR_CHAR_CODE('txth') +kHMTextResContent = FOUR_CHAR_CODE('text') +kHMStrResContent = FOUR_CHAR_CODE('str ') +kHMDefaultSide = 0 +kHMOutsideTopScriptAligned = 1 +kHMOutsideLeftCenterAligned = 2 +kHMOutsideBottomScriptAligned = 3 +kHMOutsideRightCenterAligned = 4 +kHMOutsideTopLeftAligned = 5 +kHMOutsideTopRightAligned = 6 +kHMOutsideLeftTopAligned = 7 +kHMOutsideLeftBottomAligned = 8 +kHMOutsideBottomLeftAligned = 9 +kHMOutsideBottomRightAligned = 10 +kHMOutsideRightTopAligned = 11 +kHMOutsideRightBottomAligned = 12 +kHMOutsideTopCenterAligned = 13 +kHMOutsideBottomCenterAligned = 14 +kHMInsideRightCenterAligned = 15 +kHMInsideLeftCenterAligned = 16 +kHMInsideBottomCenterAligned = 17 +kHMInsideTopCenterAligned = 18 +kHMInsideTopLeftCorner = 19 +kHMInsideTopRightCorner = 20 +kHMInsideBottomLeftCorner = 21 +kHMInsideBottomRightCorner = 22 +kHMAbsoluteCenterAligned = 23 +kHMTopSide = kHMOutsideTopScriptAligned +kHMLeftSide = kHMOutsideLeftCenterAligned +kHMBottomSide = kHMOutsideBottomScriptAligned +kHMRightSide = kHMOutsideRightCenterAligned +kHMTopLeftCorner = kHMOutsideTopLeftAligned +kHMTopRightCorner = kHMOutsideTopRightAligned +kHMLeftTopCorner = kHMOutsideLeftTopAligned +kHMLeftBottomCorner = kHMOutsideLeftBottomAligned +kHMBottomLeftCorner = kHMOutsideBottomLeftAligned +kHMBottomRightCorner = kHMOutsideBottomRightAligned +kHMRightTopCorner = kHMOutsideRightTopAligned +kHMRightBottomCorner = kHMOutsideRightBottomAligned +kHMContentProvided = 0 +kHMContentNotProvided = 1 +kHMContentNotProvidedDontPropagate = 2 +kHMMinimumContentIndex = 0 +kHMMaximumContentIndex = 1 +errHMIllegalContentForMinimumState = -10980 +errHMIllegalContentForMaximumState = -10981 +kHMIllegalContentForMinimumState = errHMIllegalContentForMinimumState +kHelpTagEventHandlerTag = FOUR_CHAR_CODE('hevt') diff --git a/sys/lib/python/plat-mac/Carbon/MacTextEditor.py b/sys/lib/python/plat-mac/Carbon/MacTextEditor.py new file mode 100644 index 000000000..4609d8db8 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/MacTextEditor.py @@ -0,0 +1,226 @@ +# Generated from 'MacTextEditor.h' + + +def FOUR_CHAR_CODE(x): return x +false = 0 +true = 1 +kTXNClearThisControl = 0xFFFFFFFF +kTXNClearTheseFontFeatures = 0x80000000 +kTXNDontCareTypeSize = 0xFFFFFFFF +kTXNDecrementTypeSize = 0x80000000 +kTXNUseCurrentSelection = 0xFFFFFFFF +kTXNStartOffset = 0 +kTXNEndOffset = 0x7FFFFFFF +MovieFileType = FOUR_CHAR_CODE('moov') +kTXNUseEncodingWordRulesMask = 0x80000000 +kTXNFontSizeAttributeSize = 4 +normal = 0 +kTXNWillDefaultToATSUIBit = 0 +kTXNWillDefaultToCarbonEventBit = 1 +kTXNWillDefaultToATSUIMask = 1L << kTXNWillDefaultToATSUIBit +kTXNWillDefaultToCarbonEventMask = 1L << kTXNWillDefaultToCarbonEventBit +kTXNWantMoviesBit = 0 +kTXNWantSoundBit = 1 +kTXNWantGraphicsBit = 2 +kTXNAlwaysUseQuickDrawTextBit = 3 +kTXNUseTemporaryMemoryBit = 4 +kTXNWantMoviesMask = 1L << kTXNWantMoviesBit +kTXNWantSoundMask = 1L << kTXNWantSoundBit +kTXNWantGraphicsMask = 1L << kTXNWantGraphicsBit +kTXNAlwaysUseQuickDrawTextMask = 1L << kTXNAlwaysUseQuickDrawTextBit +kTXNUseTemporaryMemoryMask = 1L << kTXNUseTemporaryMemoryBit +kTXNDrawGrowIconBit = 0 +kTXNShowWindowBit = 1 +kTXNWantHScrollBarBit = 2 +kTXNWantVScrollBarBit = 3 +kTXNNoTSMEverBit = 4 +kTXNReadOnlyBit = 5 +kTXNNoKeyboardSyncBit = 6 +kTXNNoSelectionBit = 7 +kTXNSaveStylesAsSTYLResourceBit = 8 +kOutputTextInUnicodeEncodingBit = 9 +kTXNDoNotInstallDragProcsBit = 10 +kTXNAlwaysWrapAtViewEdgeBit = 11 +kTXNDontDrawCaretWhenInactiveBit = 12 +kTXNDontDrawSelectionWhenInactiveBit = 13 +kTXNSingleLineOnlyBit = 14 +kTXNDisableDragAndDropBit = 15 +kTXNUseQDforImagingBit = 16 +kTXNDrawGrowIconMask = 1L << kTXNDrawGrowIconBit +kTXNShowWindowMask = 1L << kTXNShowWindowBit +kTXNWantHScrollBarMask = 1L << kTXNWantHScrollBarBit +kTXNWantVScrollBarMask = 1L << kTXNWantVScrollBarBit +kTXNNoTSMEverMask = 1L << kTXNNoTSMEverBit +kTXNReadOnlyMask = 1L << kTXNReadOnlyBit +kTXNNoKeyboardSyncMask = 1L << kTXNNoKeyboardSyncBit +kTXNNoSelectionMask = 1L << kTXNNoSelectionBit +kTXNSaveStylesAsSTYLResourceMask = 1L << kTXNSaveStylesAsSTYLResourceBit +kOutputTextInUnicodeEncodingMask = 1L << kOutputTextInUnicodeEncodingBit +kTXNDoNotInstallDragProcsMask = 1L << kTXNDoNotInstallDragProcsBit +kTXNAlwaysWrapAtViewEdgeMask = 1L << kTXNAlwaysWrapAtViewEdgeBit +kTXNDontDrawCaretWhenInactiveMask = 1L << kTXNDontDrawCaretWhenInactiveBit +kTXNDontDrawSelectionWhenInactiveMask = 1L << kTXNDontDrawSelectionWhenInactiveBit +kTXNSingleLineOnlyMask = 1L << kTXNSingleLineOnlyBit +kTXNDisableDragAndDropMask = 1L << kTXNDisableDragAndDropBit +kTXNUseQDforImagingMask = 1L << kTXNUseQDforImagingBit +kTXNSetFlushnessBit = 0 +kTXNSetJustificationBit = 1 +kTXNUseFontFallBackBit = 2 +kTXNRotateTextBit = 3 +kTXNUseVerticalTextBit = 4 +kTXNDontUpdateBoxRectBit = 5 +kTXNDontDrawTextBit = 6 +kTXNUseCGContextRefBit = 7 +kTXNImageWithQDBit = 8 +kTXNDontWrapTextBit = 9 +kTXNSetFlushnessMask = 1L << kTXNSetFlushnessBit +kTXNSetJustificationMask = 1L << kTXNSetJustificationBit +kTXNUseFontFallBackMask = 1L << kTXNUseFontFallBackBit +kTXNRotateTextMask = 1L << kTXNRotateTextBit +kTXNUseVerticalTextMask = 1L << kTXNUseVerticalTextBit +kTXNDontUpdateBoxRectMask = 1L << kTXNDontUpdateBoxRectBit +kTXNDontDrawTextMask = 1L << kTXNDontDrawTextBit +kTXNUseCGContextRefMask = 1L << kTXNUseCGContextRefBit +kTXNImageWithQDMask = 1L << kTXNImageWithQDBit +kTXNDontWrapTextMask = 1L << kTXNDontWrapTextBit +kTXNFontContinuousBit = 0 +kTXNSizeContinuousBit = 1 +kTXNStyleContinuousBit = 2 +kTXNColorContinuousBit = 3 +kTXNFontContinuousMask = 1L << kTXNFontContinuousBit +kTXNSizeContinuousMask = 1L << kTXNSizeContinuousBit +kTXNStyleContinuousMask = 1L << kTXNStyleContinuousBit +kTXNColorContinuousMask = 1L << kTXNColorContinuousBit +kTXNIgnoreCaseBit = 0 +kTXNEntireWordBit = 1 +kTXNUseEncodingWordRulesBit = 31 +kTXNIgnoreCaseMask = 1L << kTXNIgnoreCaseBit +kTXNEntireWordMask = 1L << kTXNEntireWordBit +# kTXNUseEncodingWordRulesMask = (unsigned long)(1L << kTXNUseEncodingWordRulesBit) +kTXNTextensionFile = FOUR_CHAR_CODE('txtn') +kTXNTextFile = FOUR_CHAR_CODE('TEXT') +kTXNPictureFile = FOUR_CHAR_CODE('PICT') +kTXNMovieFile = FOUR_CHAR_CODE('MooV') +kTXNSoundFile = FOUR_CHAR_CODE('sfil') +kTXNAIFFFile = FOUR_CHAR_CODE('AIFF') +kTXNUnicodeTextFile = FOUR_CHAR_CODE('utxt') +kTXNTextEditStyleFrameType = 1 +kTXNPageFrameType = 2 +kTXNMultipleFrameType = 3 +kTXNTextData = FOUR_CHAR_CODE('TEXT') +kTXNPictureData = FOUR_CHAR_CODE('PICT') +kTXNMovieData = FOUR_CHAR_CODE('moov') +kTXNSoundData = FOUR_CHAR_CODE('snd ') +kTXNUnicodeTextData = FOUR_CHAR_CODE('utxt') +kTXNLineDirectionTag = FOUR_CHAR_CODE('lndr') +kTXNJustificationTag = FOUR_CHAR_CODE('just') +kTXNIOPrivilegesTag = FOUR_CHAR_CODE('iopv') +kTXNSelectionStateTag = FOUR_CHAR_CODE('slst') +kTXNInlineStateTag = FOUR_CHAR_CODE('inst') +kTXNWordWrapStateTag = FOUR_CHAR_CODE('wwrs') +kTXNKeyboardSyncStateTag = FOUR_CHAR_CODE('kbsy') +kTXNAutoIndentStateTag = FOUR_CHAR_CODE('auin') +kTXNTabSettingsTag = FOUR_CHAR_CODE('tabs') +kTXNRefConTag = FOUR_CHAR_CODE('rfcn') +kTXNMarginsTag = FOUR_CHAR_CODE('marg') +kTXNFlattenMoviesTag = FOUR_CHAR_CODE('flat') +kTXNDoFontSubstitution = FOUR_CHAR_CODE('fSub') +kTXNNoUserIOTag = FOUR_CHAR_CODE('nuio') +kTXNUseCarbonEvents = FOUR_CHAR_CODE('cbcb') +kTXNDrawCaretWhenInactiveTag = FOUR_CHAR_CODE('dcrt') +kTXNDrawSelectionWhenInactiveTag = FOUR_CHAR_CODE('dsln') +kTXNDisableDragAndDropTag = FOUR_CHAR_CODE('drag') +kTXNTypingAction = 0 +kTXNCutAction = 1 +kTXNPasteAction = 2 +kTXNClearAction = 3 +kTXNChangeFontAction = 4 +kTXNChangeFontColorAction = 5 +kTXNChangeFontSizeAction = 6 +kTXNChangeStyleAction = 7 +kTXNAlignLeftAction = 8 +kTXNAlignCenterAction = 9 +kTXNAlignRightAction = 10 +kTXNDropAction = 11 +kTXNMoveAction = 12 +kTXNFontFeatureAction = 13 +kTXNFontVariationAction = 14 +kTXNUndoLastAction = 1024 +# kTXNClearThisControl = (long)0xFFFFFFFF +# kTXNClearTheseFontFeatures = (long)0x80000000 +kTXNReadWrite = false +kTXNReadOnly = true +kTXNSelectionOn = true +kTXNSelectionOff = false +kTXNUseInline = false +kTXNUseBottomline = true +kTXNAutoWrap = false +kTXNNoAutoWrap = true +kTXNSyncKeyboard = false +kTXNNoSyncKeyboard = true +kTXNAutoIndentOff = false +kTXNAutoIndentOn = true +kTXNDontDrawCaretWhenInactive = false +kTXNDrawCaretWhenInactive = true +kTXNDontDrawSelectionWhenInactive = false +kTXNDrawSelectionWhenInactive = true +kTXNEnableDragAndDrop = false +kTXNDisableDragAndDrop = true +kTXNRightTab = -1 +kTXNLeftTab = 0 +kTXNCenterTab = 1 +kTXNLeftToRight = 0 +kTXNRightToLeft = 1 +kTXNFlushDefault = 0 +kTXNFlushLeft = 1 +kTXNFlushRight = 2 +kTXNCenter = 4 +kTXNFullJust = 8 +kTXNForceFullJust = 16 +kScrollBarsAlwaysActive = true +kScrollBarsSyncWithFocus = false +# kTXNDontCareTypeSize = (long)0xFFFFFFFF +kTXNDontCareTypeStyle = 0xFF +kTXNIncrementTypeSize = 0x00000001 +# kTXNDecrementTypeSize = (long)0x80000000 +kTXNUseScriptDefaultValue = -1 +kTXNNoFontVariations = 0x7FFF +# kTXNUseCurrentSelection = (unsigned long)0xFFFFFFFF +# kTXNStartOffset = 0 +# kTXNEndOffset = 0x7FFFFFFF +kTXNSingleStylePerTextDocumentResType = FOUR_CHAR_CODE('MPSR') +kTXNMultipleStylesPerTextDocumentResType = FOUR_CHAR_CODE('styl') +kTXNShowStart = false +kTXNShowEnd = true +kTXNDefaultFontName = 0 +kTXNDefaultFontSize = 0x000C0000 +kTXNDefaultFontStyle = normal +kTXNQDFontNameAttribute = FOUR_CHAR_CODE('fntn') +kTXNQDFontFamilyIDAttribute = FOUR_CHAR_CODE('font') +kTXNQDFontSizeAttribute = FOUR_CHAR_CODE('size') +kTXNQDFontStyleAttribute = FOUR_CHAR_CODE('face') +kTXNQDFontColorAttribute = FOUR_CHAR_CODE('klor') +kTXNTextEncodingAttribute = FOUR_CHAR_CODE('encd') +kTXNATSUIFontFeaturesAttribute = FOUR_CHAR_CODE('atfe') +kTXNATSUIFontVariationsAttribute = FOUR_CHAR_CODE('atva') +# kTXNQDFontNameAttributeSize = sizeof(Str255) +# kTXNQDFontFamilyIDAttributeSize = sizeof(SInt16) +# kTXNQDFontSizeAttributeSize = sizeof(SInt16) +# kTXNQDFontStyleAttributeSize = sizeof(Style) +# kTXNQDFontColorAttributeSize = sizeof(RGBColor) +# kTXNTextEncodingAttributeSize = sizeof(TextEncoding) +# kTXNFontSizeAttributeSize = sizeof(Fixed) +kTXNSystemDefaultEncoding = 0 +kTXNMacOSEncoding = 1 +kTXNUnicodeEncoding = 2 +kTXNBackgroundTypeRGB = 1 +kTXNTextInputCountBit = 0 +kTXNRunCountBit = 1 +kTXNTextInputCountMask = 1L << kTXNTextInputCountBit +kTXNRunCountMask = 1L << kTXNRunCountBit +kTXNAllCountMask = kTXNTextInputCountMask | kTXNRunCountMask +kTXNNoAppleEventHandlersBit = 0 +kTXNRestartAppleEventHandlersBit = 1 +kTXNNoAppleEventHandlersMask = 1 << kTXNNoAppleEventHandlersBit +kTXNRestartAppleEventHandlersMask = 1 << kTXNRestartAppleEventHandlersBit +# status = TXNInitTextension( &defaults diff --git a/sys/lib/python/plat-mac/Carbon/MediaDescr.py b/sys/lib/python/plat-mac/Carbon/MediaDescr.py new file mode 100644 index 000000000..254634bb2 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/MediaDescr.py @@ -0,0 +1,97 @@ +# Parsers/generators for QuickTime media descriptions +import struct + +Error = 'MediaDescr.Error' + +class _MediaDescriptionCodec: + def __init__(self, trunc, size, names, fmt): + self.trunc = trunc + self.size = size + self.names = names + self.fmt = fmt + + def decode(self, data): + if self.trunc: + data = data[:self.size] + values = struct.unpack(self.fmt, data) + if len(values) != len(self.names): + raise Error, ('Format length does not match number of names', descr) + rv = {} + for i in range(len(values)): + name = self.names[i] + value = values[i] + if type(name) == type(()): + name, cod, dec = name + value = dec(value) + rv[name] = value + return rv + + def encode(dict): + list = [self.fmt] + for name in self.names: + if type(name) == type(()): + name, cod, dec = name + else: + cod = dec = None + value = dict[name] + if cod: + value = cod(value) + list.append(value) + rv = struct.pack(*list) + return rv + +# Helper functions +def _tofixed(float): + hi = int(float) + lo = int(float*0x10000) & 0xffff + return (hi<<16)|lo + +def _fromfixed(fixed): + hi = (fixed >> 16) & 0xffff + lo = (fixed & 0xffff) + return hi + (lo / float(0x10000)) + +def _tostr31(str): + return chr(len(str)) + str + '\0'*(31-len(str)) + +def _fromstr31(str31): + return str31[1:1+ord(str31[0])] + +SampleDescription = _MediaDescriptionCodec( + 1, # May be longer, truncate + 16, # size + ('descSize', 'dataFormat', 'resvd1', 'resvd2', 'dataRefIndex'), # Attributes + "l4slhh" # Format +) + +SoundDescription = _MediaDescriptionCodec( + 1, + 36, + ('descSize', 'dataFormat', 'resvd1', 'resvd2', 'dataRefIndex', + 'version', 'revlevel', 'vendor', 'numChannels', 'sampleSize', + 'compressionID', 'packetSize', ('sampleRate', _tofixed, _fromfixed)), + "l4slhhhh4shhhhl" # Format +) + +SoundDescriptionV1 = _MediaDescriptionCodec( + 1, + 52, + ('descSize', 'dataFormat', 'resvd1', 'resvd2', 'dataRefIndex', + 'version', 'revlevel', 'vendor', 'numChannels', 'sampleSize', + 'compressionID', 'packetSize', ('sampleRate', _tofixed, _fromfixed), 'samplesPerPacket', + 'bytesPerPacket', 'bytesPerFrame', 'bytesPerSample'), + "l4slhhhh4shhhhlllll" # Format +) + +ImageDescription = _MediaDescriptionCodec( + 1, # May be longer, truncate + 86, # size + ('idSize', 'cType', 'resvd1', 'resvd2', 'dataRefIndex', 'version', + 'revisionLevel', 'vendor', 'temporalQuality', 'spatialQuality', + 'width', 'height', ('hRes', _tofixed, _fromfixed), ('vRes', _tofixed, _fromfixed), + 'dataSize', 'frameCount', ('name', _tostr31, _fromstr31), + 'depth', 'clutID'), + 'l4slhhhh4sllhhlllh32shh', +) + +# XXXX Others, like TextDescription and such, remain to be done. diff --git a/sys/lib/python/plat-mac/Carbon/Menu.py b/sys/lib/python/plat-mac/Carbon/Menu.py new file mode 100644 index 000000000..075cb9d8a --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Menu.py @@ -0,0 +1 @@ +from _Menu import * diff --git a/sys/lib/python/plat-mac/Carbon/Menus.py b/sys/lib/python/plat-mac/Carbon/Menus.py new file mode 100644 index 000000000..01affb096 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Menus.py @@ -0,0 +1,169 @@ +# Generated from 'Menus.h' + +def FOUR_CHAR_CODE(x): return x +noMark = 0 +kMenuDrawMsg = 0 +kMenuSizeMsg = 2 +kMenuPopUpMsg = 3 +kMenuCalcItemMsg = 5 +kMenuThemeSavvyMsg = 7 +mDrawMsg = 0 +mSizeMsg = 2 +mPopUpMsg = 3 +mCalcItemMsg = 5 +mChooseMsg = 1 +mDrawItemMsg = 4 +kMenuChooseMsg = 1 +kMenuDrawItemMsg = 4 +kThemeSavvyMenuResponse = 0x7473 +kMenuInitMsg = 8 +kMenuDisposeMsg = 9 +kMenuFindItemMsg = 10 +kMenuHiliteItemMsg = 11 +kMenuDrawItemsMsg = 12 +textMenuProc = 0 +hMenuCmd = 27 +hierMenu = -1 +kInsertHierarchicalMenu = -1 +mctAllItems = -98 +mctLastIDIndic = -99 +kMenuStdMenuProc = 63 +kMenuStdMenuBarProc = 63 +kMenuNoModifiers = 0 +kMenuShiftModifier = (1 << 0) +kMenuOptionModifier = (1 << 1) +kMenuControlModifier = (1 << 2) +kMenuNoCommandModifier = (1 << 3) +kMenuNoIcon = 0 +kMenuIconType = 1 +kMenuShrinkIconType = 2 +kMenuSmallIconType = 3 +kMenuColorIconType = 4 +kMenuIconSuiteType = 5 +kMenuIconRefType = 6 +kMenuCGImageRefType = 7 +kMenuSystemIconSelectorType = 8 +kMenuIconResourceType = 9 +kMenuNullGlyph = 0x00 +kMenuTabRightGlyph = 0x02 +kMenuTabLeftGlyph = 0x03 +kMenuEnterGlyph = 0x04 +kMenuShiftGlyph = 0x05 +kMenuControlGlyph = 0x06 +kMenuOptionGlyph = 0x07 +kMenuSpaceGlyph = 0x09 +kMenuDeleteRightGlyph = 0x0A +kMenuReturnGlyph = 0x0B +kMenuReturnR2LGlyph = 0x0C +kMenuNonmarkingReturnGlyph = 0x0D +kMenuPencilGlyph = 0x0F +kMenuDownwardArrowDashedGlyph = 0x10 +kMenuCommandGlyph = 0x11 +kMenuCheckmarkGlyph = 0x12 +kMenuDiamondGlyph = 0x13 +kMenuAppleLogoFilledGlyph = 0x14 +kMenuParagraphKoreanGlyph = 0x15 +kMenuDeleteLeftGlyph = 0x17 +kMenuLeftArrowDashedGlyph = 0x18 +kMenuUpArrowDashedGlyph = 0x19 +kMenuRightArrowDashedGlyph = 0x1A +kMenuEscapeGlyph = 0x1B +kMenuClearGlyph = 0x1C +kMenuLeftDoubleQuotesJapaneseGlyph = 0x1D +kMenuRightDoubleQuotesJapaneseGlyph = 0x1E +kMenuTrademarkJapaneseGlyph = 0x1F +kMenuBlankGlyph = 0x61 +kMenuPageUpGlyph = 0x62 +kMenuCapsLockGlyph = 0x63 +kMenuLeftArrowGlyph = 0x64 +kMenuRightArrowGlyph = 0x65 +kMenuNorthwestArrowGlyph = 0x66 +kMenuHelpGlyph = 0x67 +kMenuUpArrowGlyph = 0x68 +kMenuSoutheastArrowGlyph = 0x69 +kMenuDownArrowGlyph = 0x6A +kMenuPageDownGlyph = 0x6B +kMenuAppleLogoOutlineGlyph = 0x6C +kMenuContextualMenuGlyph = 0x6D +kMenuPowerGlyph = 0x6E +kMenuF1Glyph = 0x6F +kMenuF2Glyph = 0x70 +kMenuF3Glyph = 0x71 +kMenuF4Glyph = 0x72 +kMenuF5Glyph = 0x73 +kMenuF6Glyph = 0x74 +kMenuF7Glyph = 0x75 +kMenuF8Glyph = 0x76 +kMenuF9Glyph = 0x77 +kMenuF10Glyph = 0x78 +kMenuF11Glyph = 0x79 +kMenuF12Glyph = 0x7A +kMenuF13Glyph = 0x87 +kMenuF14Glyph = 0x88 +kMenuF15Glyph = 0x89 +kMenuControlISOGlyph = 0x8A +kMenuAttrExcludesMarkColumn = (1 << 0) +kMenuAttrAutoDisable = (1 << 2) +kMenuAttrUsePencilGlyph = (1 << 3) +kMenuAttrHidden = (1 << 4) +kMenuItemAttrDisabled = (1 << 0) +kMenuItemAttrIconDisabled = (1 << 1) +kMenuItemAttrSubmenuParentChoosable = (1 << 2) +kMenuItemAttrDynamic = (1 << 3) +kMenuItemAttrNotPreviousAlternate = (1 << 4) +kMenuItemAttrHidden = (1 << 5) +kMenuItemAttrSeparator = (1 << 6) +kMenuItemAttrSectionHeader = (1 << 7) +kMenuItemAttrIgnoreMeta = (1 << 8) +kMenuItemAttrAutoRepeat = (1 << 9) +kMenuItemAttrUseVirtualKey = (1 << 10) +kMenuItemAttrCustomDraw = (1 << 11) +kMenuItemAttrIncludeInCmdKeyMatching = (1 << 12) +kMenuTrackingModeMouse = 1 +kMenuTrackingModeKeyboard = 2 +kMenuEventIncludeDisabledItems = 0x0001 +kMenuEventQueryOnly = 0x0002 +kMenuEventDontCheckSubmenus = 0x0004 +kMenuItemDataText = (1 << 0) +kMenuItemDataMark = (1 << 1) +kMenuItemDataCmdKey = (1 << 2) +kMenuItemDataCmdKeyGlyph = (1 << 3) +kMenuItemDataCmdKeyModifiers = (1 << 4) +kMenuItemDataStyle = (1 << 5) +kMenuItemDataEnabled = (1 << 6) +kMenuItemDataIconEnabled = (1 << 7) +kMenuItemDataIconID = (1 << 8) +kMenuItemDataIconHandle = (1 << 9) +kMenuItemDataCommandID = (1 << 10) +kMenuItemDataTextEncoding = (1 << 11) +kMenuItemDataSubmenuID = (1 << 12) +kMenuItemDataSubmenuHandle = (1 << 13) +kMenuItemDataFontID = (1 << 14) +kMenuItemDataRefcon = (1 << 15) +kMenuItemDataAttributes = (1 << 16) +kMenuItemDataCFString = (1 << 17) +kMenuItemDataProperties = (1 << 18) +kMenuItemDataIndent = (1 << 19) +kMenuItemDataCmdVirtualKey = (1 << 20) +kMenuItemDataAllDataVersionOne = 0x000FFFFF +kMenuItemDataAllDataVersionTwo = kMenuItemDataAllDataVersionOne | kMenuItemDataCmdVirtualKey +kMenuDefProcPtr = 0 +kMenuPropertyPersistent = 0x00000001 +kHierarchicalFontMenuOption = 0x00000001 +gestaltContextualMenuAttr = FOUR_CHAR_CODE('cmnu') +gestaltContextualMenuUnusedBit = 0 +gestaltContextualMenuTrapAvailable = 1 +gestaltContextualMenuHasAttributeAndModifierKeys = 2 +gestaltContextualMenuHasUnicodeSupport = 3 +kCMHelpItemNoHelp = 0 +kCMHelpItemAppleGuide = 1 +kCMHelpItemOtherHelp = 2 +kCMHelpItemRemoveHelp = 3 +kCMNothingSelected = 0 +kCMMenuItemSelected = 1 +kCMShowHelpSelected = 3 +keyContextualMenuName = FOUR_CHAR_CODE('pnam') +keyContextualMenuCommandID = FOUR_CHAR_CODE('cmcd') +keyContextualMenuSubmenu = FOUR_CHAR_CODE('cmsb') +keyContextualMenuAttributes = FOUR_CHAR_CODE('cmat') +keyContextualMenuModifiers = FOUR_CHAR_CODE('cmmd') diff --git a/sys/lib/python/plat-mac/Carbon/Mlte.py b/sys/lib/python/plat-mac/Carbon/Mlte.py new file mode 100644 index 000000000..b81fbc528 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Mlte.py @@ -0,0 +1 @@ +from _Mlte import * diff --git a/sys/lib/python/plat-mac/Carbon/OSA.py b/sys/lib/python/plat-mac/Carbon/OSA.py new file mode 100644 index 000000000..8d6732c94 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/OSA.py @@ -0,0 +1 @@ +from _OSA import * diff --git a/sys/lib/python/plat-mac/Carbon/OSAconst.py b/sys/lib/python/plat-mac/Carbon/OSAconst.py new file mode 100644 index 000000000..3b64c2481 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/OSAconst.py @@ -0,0 +1,133 @@ +# Generated from 'OSA.h' + +def FOUR_CHAR_CODE(x): return x +from Carbon.AppleEvents import * +kAEUseStandardDispatch = -1 +kOSAComponentType = FOUR_CHAR_CODE('osa ') +kOSAGenericScriptingComponentSubtype = FOUR_CHAR_CODE('scpt') +kOSAFileType = FOUR_CHAR_CODE('osas') +kOSASuite = FOUR_CHAR_CODE('ascr') +kOSARecordedText = FOUR_CHAR_CODE('recd') +kOSAScriptIsModified = FOUR_CHAR_CODE('modi') +kOSAScriptIsTypeCompiledScript = FOUR_CHAR_CODE('cscr') +kOSAScriptIsTypeScriptValue = FOUR_CHAR_CODE('valu') +kOSAScriptIsTypeScriptContext = FOUR_CHAR_CODE('cntx') +kOSAScriptBestType = FOUR_CHAR_CODE('best') +kOSACanGetSource = FOUR_CHAR_CODE('gsrc') +typeOSADialectInfo = FOUR_CHAR_CODE('difo') +keyOSADialectName = FOUR_CHAR_CODE('dnam') +keyOSADialectCode = FOUR_CHAR_CODE('dcod') +keyOSADialectLangCode = FOUR_CHAR_CODE('dlcd') +keyOSADialectScriptCode = FOUR_CHAR_CODE('dscd') +kOSANullScript = 0L +kOSANullMode = 0 +kOSAModeNull = 0 +kOSASupportsCompiling = 0x0002 +kOSASupportsGetSource = 0x0004 +kOSASupportsAECoercion = 0x0008 +kOSASupportsAESending = 0x0010 +kOSASupportsRecording = 0x0020 +kOSASupportsConvenience = 0x0040 +kOSASupportsDialects = 0x0080 +kOSASupportsEventHandling = 0x0100 +kOSASelectLoad = 0x0001 +kOSASelectStore = 0x0002 +kOSASelectExecute = 0x0003 +kOSASelectDisplay = 0x0004 +kOSASelectScriptError = 0x0005 +kOSASelectDispose = 0x0006 +kOSASelectSetScriptInfo = 0x0007 +kOSASelectGetScriptInfo = 0x0008 +kOSASelectSetActiveProc = 0x0009 +kOSASelectGetActiveProc = 0x000A +kOSASelectScriptingComponentName = 0x0102 +kOSASelectCompile = 0x0103 +kOSASelectCopyID = 0x0104 +kOSASelectCopyScript = 0x0105 +kOSASelectGetSource = 0x0201 +kOSASelectCoerceFromDesc = 0x0301 +kOSASelectCoerceToDesc = 0x0302 +kOSASelectSetSendProc = 0x0401 +kOSASelectGetSendProc = 0x0402 +kOSASelectSetCreateProc = 0x0403 +kOSASelectGetCreateProc = 0x0404 +kOSASelectSetDefaultTarget = 0x0405 +kOSASelectStartRecording = 0x0501 +kOSASelectStopRecording = 0x0502 +kOSASelectLoadExecute = 0x0601 +kOSASelectCompileExecute = 0x0602 +kOSASelectDoScript = 0x0603 +kOSASelectSetCurrentDialect = 0x0701 +kOSASelectGetCurrentDialect = 0x0702 +kOSASelectAvailableDialects = 0x0703 +kOSASelectGetDialectInfo = 0x0704 +kOSASelectAvailableDialectCodeList = 0x0705 +kOSASelectSetResumeDispatchProc = 0x0801 +kOSASelectGetResumeDispatchProc = 0x0802 +kOSASelectExecuteEvent = 0x0803 +kOSASelectDoEvent = 0x0804 +kOSASelectMakeContext = 0x0805 +kOSADebuggerCreateSession = 0x0901 +kOSADebuggerGetSessionState = 0x0902 +kOSADebuggerSessionStep = 0x0903 +kOSADebuggerDisposeSession = 0x0904 +kOSADebuggerGetStatementRanges = 0x0905 +kOSADebuggerGetBreakpoint = 0x0910 +kOSADebuggerSetBreakpoint = 0x0911 +kOSADebuggerGetDefaultBreakpoint = 0x0912 +kOSADebuggerGetCurrentCallFrame = 0x0906 +kOSADebuggerGetCallFrameState = 0x0907 +kOSADebuggerGetVariable = 0x0908 +kOSADebuggerSetVariable = 0x0909 +kOSADebuggerGetPreviousCallFrame = 0x090A +kOSADebuggerDisposeCallFrame = 0x090B +kOSADebuggerCountVariables = 0x090C +kOSASelectComponentSpecificStart = 0x1001 +kOSAModePreventGetSource = 0x00000001 +kOSAModeNeverInteract = kAENeverInteract +kOSAModeCanInteract = kAECanInteract +kOSAModeAlwaysInteract = kAEAlwaysInteract +kOSAModeDontReconnect = kAEDontReconnect +kOSAModeCantSwitchLayer = 0x00000040 +kOSAModeDoRecord = 0x00001000 +kOSAModeCompileIntoContext = 0x00000002 +kOSAModeAugmentContext = 0x00000004 +kOSAModeDisplayForHumans = 0x00000008 +kOSAModeDontStoreParent = 0x00010000 +kOSAModeDispatchToDirectObject = 0x00020000 +kOSAModeDontGetDataForArguments = 0x00040000 +kOSAScriptResourceType = kOSAGenericScriptingComponentSubtype +typeOSAGenericStorage = kOSAScriptResourceType +kOSAErrorNumber = keyErrorNumber +kOSAErrorMessage = keyErrorString +kOSAErrorBriefMessage = FOUR_CHAR_CODE('errb') +kOSAErrorApp = FOUR_CHAR_CODE('erap') +kOSAErrorPartialResult = FOUR_CHAR_CODE('ptlr') +kOSAErrorOffendingObject = FOUR_CHAR_CODE('erob') +kOSAErrorExpectedType = FOUR_CHAR_CODE('errt') +kOSAErrorRange = FOUR_CHAR_CODE('erng') +typeOSAErrorRange = FOUR_CHAR_CODE('erng') +keyOSASourceStart = FOUR_CHAR_CODE('srcs') +keyOSASourceEnd = FOUR_CHAR_CODE('srce') +kOSAUseStandardDispatch = kAEUseStandardDispatch +kOSANoDispatch = kAENoDispatch +kOSADontUsePhac = 0x0001 +eNotStarted = 0 +eRunnable = 1 +eRunning = 2 +eStopped = 3 +eTerminated = 4 +eStepOver = 0 +eStepIn = 1 +eStepOut = 2 +eRun = 3 +eLocal = 0 +eGlobal = 1 +eProperties = 2 +keyProgramState = FOUR_CHAR_CODE('dsps') +typeStatementRange = FOUR_CHAR_CODE('srng') +keyProcedureName = FOUR_CHAR_CODE('dfnm') +keyStatementRange = FOUR_CHAR_CODE('dfsr') +keyLocalsNames = FOUR_CHAR_CODE('dfln') +keyGlobalsNames = FOUR_CHAR_CODE('dfgn') +keyParamsNames = FOUR_CHAR_CODE('dfpn') diff --git a/sys/lib/python/plat-mac/Carbon/QDOffscreen.py b/sys/lib/python/plat-mac/Carbon/QDOffscreen.py new file mode 100644 index 000000000..b3f557e43 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/QDOffscreen.py @@ -0,0 +1,47 @@ +# Generated from 'QDOffscreen.h' + +def FOUR_CHAR_CODE(x): return x +pixPurgeBit = 0 +noNewDeviceBit = 1 +useTempMemBit = 2 +keepLocalBit = 3 +useDistantHdwrMemBit = 4 +useLocalHdwrMemBit = 5 +pixelsPurgeableBit = 6 +pixelsLockedBit = 7 +mapPixBit = 16 +newDepthBit = 17 +alignPixBit = 18 +newRowBytesBit = 19 +reallocPixBit = 20 +clipPixBit = 28 +stretchPixBit = 29 +ditherPixBit = 30 +gwFlagErrBit = 31 +pixPurge = 1L << pixPurgeBit +noNewDevice = 1L << noNewDeviceBit +useTempMem = 1L << useTempMemBit +keepLocal = 1L << keepLocalBit +useDistantHdwrMem = 1L << useDistantHdwrMemBit +useLocalHdwrMem = 1L << useLocalHdwrMemBit +pixelsPurgeable = 1L << pixelsPurgeableBit +pixelsLocked = 1L << pixelsLockedBit +kAllocDirectDrawSurface = 1L << 14 +mapPix = 1L << mapPixBit +newDepth = 1L << newDepthBit +alignPix = 1L << alignPixBit +newRowBytes = 1L << newRowBytesBit +reallocPix = 1L << reallocPixBit +clipPix = 1L << clipPixBit +stretchPix = 1L << stretchPixBit +ditherPix = 1L << ditherPixBit +gwFlagErr = 1L << gwFlagErrBit +deviceIsIndirect = (1L << 0) +deviceNeedsLock = (1L << 1) +deviceIsStatic = (1L << 2) +deviceIsExternalBuffer = (1L << 3) +deviceIsDDSurface = (1L << 4) +deviceIsDCISurface = (1L << 5) +deviceIsGDISurface = (1L << 6) +deviceIsAScreen = (1L << 7) +deviceIsOverlaySurface = (1L << 8) diff --git a/sys/lib/python/plat-mac/Carbon/Qd.py b/sys/lib/python/plat-mac/Carbon/Qd.py new file mode 100644 index 000000000..227fe9855 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Qd.py @@ -0,0 +1 @@ +from _Qd import * diff --git a/sys/lib/python/plat-mac/Carbon/Qdoffs.py b/sys/lib/python/plat-mac/Carbon/Qdoffs.py new file mode 100644 index 000000000..90a3d2cec --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Qdoffs.py @@ -0,0 +1 @@ +from _Qdoffs import * diff --git a/sys/lib/python/plat-mac/Carbon/Qt.py b/sys/lib/python/plat-mac/Carbon/Qt.py new file mode 100644 index 000000000..590a92ad1 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Qt.py @@ -0,0 +1,5 @@ +from _Qt import * +try: + _ = AddFilePreview +except: + raise ImportError, "Old (2.3) _Qt.so module loaded in stead of new (2.4) _Qt.so" diff --git a/sys/lib/python/plat-mac/Carbon/QuickDraw.py b/sys/lib/python/plat-mac/Carbon/QuickDraw.py new file mode 100644 index 000000000..65c2f9a94 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/QuickDraw.py @@ -0,0 +1,218 @@ +# Generated from 'QuickDraw.h' + + +def FOUR_CHAR_CODE(x): return x +normal = 0 +bold = 1 +italic = 2 +underline = 4 +outline = 8 +shadow = 0x10 +condense = 0x20 +extend = 0x40 +invalColReq = -1 +srcCopy = 0 +srcOr = 1 +srcXor = 2 +srcBic = 3 +notSrcCopy = 4 +notSrcOr = 5 +notSrcXor = 6 +notSrcBic = 7 +patCopy = 8 +patOr = 9 +patXor = 10 +patBic = 11 +notPatCopy = 12 +notPatOr = 13 +notPatXor = 14 +notPatBic = 15 +grayishTextOr = 49 +hilitetransfermode = 50 +hilite = 50 +blend = 32 +addPin = 33 +addOver = 34 +subPin = 35 +addMax = 37 +adMax = 37 +subOver = 38 +adMin = 39 +ditherCopy = 64 +transparent = 36 +italicBit = 1 +ulineBit = 2 +outlineBit = 3 +shadowBit = 4 +condenseBit = 5 +extendBit = 6 +normalBit = 0 +inverseBit = 1 +redBit = 4 +greenBit = 3 +blueBit = 2 +cyanBit = 8 +magentaBit = 7 +yellowBit = 6 +blackBit = 5 +blackColor = 33 +whiteColor = 30 +redColor = 205 +greenColor = 341 +blueColor = 409 +cyanColor = 273 +magentaColor = 137 +yellowColor = 69 +picLParen = 0 +picRParen = 1 +clutType = 0 +fixedType = 1 +directType = 2 +gdDevType = 0 +interlacedDevice = 2 +hwMirroredDevice = 4 +roundedDevice = 5 +hasAuxMenuBar = 6 +burstDevice = 7 +ext32Device = 8 +ramInit = 10 +mainScreen = 11 +allInit = 12 +screenDevice = 13 +noDriver = 14 +screenActive = 15 +hiliteBit = 7 +pHiliteBit = 0 +defQDColors = 127 +RGBDirect = 16 +baseAddr32 = 4 +sysPatListID = 0 +iBeamCursor = 1 +crossCursor = 2 +plusCursor = 3 +watchCursor = 4 +kQDGrafVerbFrame = 0 +kQDGrafVerbPaint = 1 +kQDGrafVerbErase = 2 +kQDGrafVerbInvert = 3 +kQDGrafVerbFill = 4 +frame = kQDGrafVerbFrame +paint = kQDGrafVerbPaint +erase = kQDGrafVerbErase +invert = kQDGrafVerbInvert +fill = kQDGrafVerbFill +chunky = 0 +chunkyPlanar = 1 +planar = 2 +singleDevicesBit = 0 +dontMatchSeedsBit = 1 +allDevicesBit = 2 +singleDevices = 1 << singleDevicesBit +dontMatchSeeds = 1 << dontMatchSeedsBit +allDevices = 1 << allDevicesBit +kPrinterFontStatus = 0 +kPrinterScalingStatus = 1 +kNoConstraint = 0 +kVerticalConstraint = 1 +kHorizontalConstraint = 2 +k1MonochromePixelFormat = 0x00000001 +k2IndexedPixelFormat = 0x00000002 +k4IndexedPixelFormat = 0x00000004 +k8IndexedPixelFormat = 0x00000008 +k16BE555PixelFormat = 0x00000010 +k24RGBPixelFormat = 0x00000018 +k32ARGBPixelFormat = 0x00000020 +k1IndexedGrayPixelFormat = 0x00000021 +k2IndexedGrayPixelFormat = 0x00000022 +k4IndexedGrayPixelFormat = 0x00000024 +k8IndexedGrayPixelFormat = 0x00000028 +k16LE555PixelFormat = FOUR_CHAR_CODE('L555') +k16LE5551PixelFormat = FOUR_CHAR_CODE('5551') +k16BE565PixelFormat = FOUR_CHAR_CODE('B565') +k16LE565PixelFormat = FOUR_CHAR_CODE('L565') +k24BGRPixelFormat = FOUR_CHAR_CODE('24BG') +k32BGRAPixelFormat = FOUR_CHAR_CODE('BGRA') +k32ABGRPixelFormat = FOUR_CHAR_CODE('ABGR') +k32RGBAPixelFormat = FOUR_CHAR_CODE('RGBA') +kYUVSPixelFormat = FOUR_CHAR_CODE('yuvs') +kYUVUPixelFormat = FOUR_CHAR_CODE('yuvu') +kYVU9PixelFormat = FOUR_CHAR_CODE('YVU9') +kYUV411PixelFormat = FOUR_CHAR_CODE('Y411') +kYVYU422PixelFormat = FOUR_CHAR_CODE('YVYU') +kUYVY422PixelFormat = FOUR_CHAR_CODE('UYVY') +kYUV211PixelFormat = FOUR_CHAR_CODE('Y211') +k2vuyPixelFormat = FOUR_CHAR_CODE('2vuy') +kCursorImageMajorVersion = 0x0001 +kCursorImageMinorVersion = 0x0000 +kQDParseRegionFromTop = (1 << 0) +kQDParseRegionFromBottom = (1 << 1) +kQDParseRegionFromLeft = (1 << 2) +kQDParseRegionFromRight = (1 << 3) +kQDParseRegionFromTopLeft = kQDParseRegionFromTop | kQDParseRegionFromLeft +kQDParseRegionFromBottomRight = kQDParseRegionFromBottom | kQDParseRegionFromRight +kQDRegionToRectsMsgInit = 1 +kQDRegionToRectsMsgParse = 2 +kQDRegionToRectsMsgTerminate = 3 +colorXorXFer = 52 +noiseXFer = 53 +customXFer = 54 +kXFer1PixelAtATime = 0x00000001 +kXFerConvertPixelToRGB32 = 0x00000002 +kCursorComponentsVersion = 0x00010001 +kCursorComponentType = FOUR_CHAR_CODE('curs') +cursorDoesAnimate = 1L << 0 +cursorDoesHardware = 1L << 1 +cursorDoesUnreadableScreenBits = 1L << 2 +kRenderCursorInHardware = 1L << 0 +kRenderCursorInSoftware = 1L << 1 +kCursorComponentInit = 0x0001 +kCursorComponentGetInfo = 0x0002 +kCursorComponentSetOutputMode = 0x0003 +kCursorComponentSetData = 0x0004 +kCursorComponentReconfigure = 0x0005 +kCursorComponentDraw = 0x0006 +kCursorComponentErase = 0x0007 +kCursorComponentMove = 0x0008 +kCursorComponentAnimate = 0x0009 +kCursorComponentLastReserved = 0x0050 +# Generated from 'QuickDrawText.h' + + +def FOUR_CHAR_CODE(x): return x +normal = 0 +bold = 1 +italic = 2 +underline = 4 +outline = 8 +shadow = 0x10 +condense = 0x20 +extend = 0x40 +leftCaret = 0 +rightCaret = -1 +kHilite = 1 +smLeftCaret = 0 +smRightCaret = -1 +smHilite = 1 +onlyStyleRun = 0 +leftStyleRun = 1 +rightStyleRun = 2 +middleStyleRun = 3 +smOnlyStyleRun = 0 +smLeftStyleRun = 1 +smRightStyleRun = 2 +smMiddleStyleRun = 3 +truncEnd = 0 +truncMiddle = 0x4000 +smTruncEnd = 0 +smTruncMiddle = 0x4000 +notTruncated = 0 +truncated = 1 +truncErr = -1 +smNotTruncated = 0 +smTruncated = 1 +smTruncErr = -1 +smBreakWord = 0 +smBreakChar = 1 +smBreakOverflow = 2 +tfAntiAlias = 1 << 0 +tfUnicode = 1 << 1 diff --git a/sys/lib/python/plat-mac/Carbon/QuickTime.py b/sys/lib/python/plat-mac/Carbon/QuickTime.py new file mode 100644 index 000000000..8fba58cb3 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/QuickTime.py @@ -0,0 +1,3468 @@ +# Generated from 'Movies.h' + +def FOUR_CHAR_CODE(x): return x +xmlIdentifierUnrecognized = -1 +kControllerMinimum = -0xf777 +notImplementedMusicOSErr = -2071 +cantSendToSynthesizerOSErr = -2072 +cantReceiveFromSynthesizerOSErr = -2073 +illegalVoiceAllocationOSErr = -2074 +illegalPartOSErr = -2075 +illegalChannelOSErr = -2076 +illegalKnobOSErr = -2077 +illegalKnobValueOSErr = -2078 +illegalInstrumentOSErr = -2079 +illegalControllerOSErr = -2080 +midiManagerAbsentOSErr = -2081 +synthesizerNotRespondingOSErr = -2082 +synthesizerOSErr = -2083 +illegalNoteChannelOSErr = -2084 +noteChannelNotAllocatedOSErr = -2085 +tunePlayerFullOSErr = -2086 +tuneParseOSErr = -2087 +MovieFileType = FOUR_CHAR_CODE('MooV') +MovieScrapType = FOUR_CHAR_CODE('moov') +MovieResourceType = FOUR_CHAR_CODE('moov') +MovieForwardPointerResourceType = FOUR_CHAR_CODE('fore') +MovieBackwardPointerResourceType = FOUR_CHAR_CODE('back') +MovieResourceAtomType = FOUR_CHAR_CODE('moov') +MovieDataAtomType = FOUR_CHAR_CODE('mdat') +FreeAtomType = FOUR_CHAR_CODE('free') +SkipAtomType = FOUR_CHAR_CODE('skip') +WideAtomPlaceholderType = FOUR_CHAR_CODE('wide') +MediaHandlerType = FOUR_CHAR_CODE('mhlr') +DataHandlerType = FOUR_CHAR_CODE('dhlr') +VideoMediaType = FOUR_CHAR_CODE('vide') +SoundMediaType = FOUR_CHAR_CODE('soun') +TextMediaType = FOUR_CHAR_CODE('text') +BaseMediaType = FOUR_CHAR_CODE('gnrc') +MPEGMediaType = FOUR_CHAR_CODE('MPEG') +MusicMediaType = FOUR_CHAR_CODE('musi') +TimeCodeMediaType = FOUR_CHAR_CODE('tmcd') +SpriteMediaType = FOUR_CHAR_CODE('sprt') +FlashMediaType = FOUR_CHAR_CODE('flsh') +MovieMediaType = FOUR_CHAR_CODE('moov') +TweenMediaType = FOUR_CHAR_CODE('twen') +ThreeDeeMediaType = FOUR_CHAR_CODE('qd3d') +SkinMediaType = FOUR_CHAR_CODE('skin') +HandleDataHandlerSubType = FOUR_CHAR_CODE('hndl') +PointerDataHandlerSubType = FOUR_CHAR_CODE('ptr ') +NullDataHandlerSubType = FOUR_CHAR_CODE('null') +ResourceDataHandlerSubType = FOUR_CHAR_CODE('rsrc') +URLDataHandlerSubType = FOUR_CHAR_CODE('url ') +WiredActionHandlerType = FOUR_CHAR_CODE('wire') +VisualMediaCharacteristic = FOUR_CHAR_CODE('eyes') +AudioMediaCharacteristic = FOUR_CHAR_CODE('ears') +kCharacteristicCanSendVideo = FOUR_CHAR_CODE('vsnd') +kCharacteristicProvidesActions = FOUR_CHAR_CODE('actn') +kCharacteristicNonLinear = FOUR_CHAR_CODE('nonl') +kCharacteristicCanStep = FOUR_CHAR_CODE('step') +kCharacteristicHasNoDuration = FOUR_CHAR_CODE('noti') +kCharacteristicHasSkinData = FOUR_CHAR_CODE('skin') +kCharacteristicProvidesKeyFocus = FOUR_CHAR_CODE('keyf') +kUserDataMovieControllerType = FOUR_CHAR_CODE('ctyp') +kUserDataName = FOUR_CHAR_CODE('name') +kUserDataTextAlbum = FOUR_CHAR_CODE('\xa9alb') +kUserDataTextArtist = FOUR_CHAR_CODE('\xa9ART') +kUserDataTextAuthor = FOUR_CHAR_CODE('\xa9aut') +kUserDataTextChapter = FOUR_CHAR_CODE('\xa9chp') +kUserDataTextComment = FOUR_CHAR_CODE('\xa9cmt') +kUserDataTextComposer = FOUR_CHAR_CODE('\xa9com') +kUserDataTextCopyright = FOUR_CHAR_CODE('\xa9cpy') +kUserDataTextCreationDate = FOUR_CHAR_CODE('\xa9day') +kUserDataTextDescription = FOUR_CHAR_CODE('\xa9des') +kUserDataTextDirector = FOUR_CHAR_CODE('\xa9dir') +kUserDataTextDisclaimer = FOUR_CHAR_CODE('\xa9dis') +kUserDataTextEncodedBy = FOUR_CHAR_CODE('\xa9enc') +kUserDataTextFullName = FOUR_CHAR_CODE('\xa9nam') +kUserDataTextGenre = FOUR_CHAR_CODE('\xa9gen') +kUserDataTextHostComputer = FOUR_CHAR_CODE('\xa9hst') +kUserDataTextInformation = FOUR_CHAR_CODE('\xa9inf') +kUserDataTextKeywords = FOUR_CHAR_CODE('\xa9key') +kUserDataTextMake = FOUR_CHAR_CODE('\xa9mak') +kUserDataTextModel = FOUR_CHAR_CODE('\xa9mod') +kUserDataTextOriginalArtist = FOUR_CHAR_CODE('\xa9ope') +kUserDataTextOriginalFormat = FOUR_CHAR_CODE('\xa9fmt') +kUserDataTextOriginalSource = FOUR_CHAR_CODE('\xa9src') +kUserDataTextPerformers = FOUR_CHAR_CODE('\xa9prf') +kUserDataTextProducer = FOUR_CHAR_CODE('\xa9prd') +kUserDataTextProduct = FOUR_CHAR_CODE('\xa9PRD') +kUserDataTextSoftware = FOUR_CHAR_CODE('\xa9swr') +kUserDataTextSpecialPlaybackRequirements = FOUR_CHAR_CODE('\xa9req') +kUserDataTextTrack = FOUR_CHAR_CODE('\xa9trk') +kUserDataTextWarning = FOUR_CHAR_CODE('\xa9wrn') +kUserDataTextWriter = FOUR_CHAR_CODE('\xa9wrt') +kUserDataTextURLLink = FOUR_CHAR_CODE('\xa9url') +kUserDataTextEditDate1 = FOUR_CHAR_CODE('\xa9ed1') +kUserDataUnicodeBit = 1L << 7 +DoTheRightThing = 0 +kQTNetworkStatusNoNetwork = -2 +kQTNetworkStatusUncertain = -1 +kQTNetworkStatusNotConnected = 0 +kQTNetworkStatusConnected = 1 +kMusicFlagDontPlay2Soft = 1L << 0 +kMusicFlagDontSlaveToMovie = 1L << 1 +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 +dfContinuousKaraoke = 1 << 11 +dfDropShadow = 1 << 12 +dfAntiAlias = 1 << 13 +dfKeyedText = 1 << 14 +dfInverseHilite = 1 << 15 +dfTextColorHilite = 1 << 16 +searchTextDontGoToFoundTime = 1L << 16 +searchTextDontHiliteFoundText = 1L << 17 +searchTextOneTrackOnly = 1L << 18 +searchTextEnabledTracksOnly = 1L << 19 +kTextTextHandle = 1 +kTextTextPtr = 2 +kTextTEStyle = 3 +kTextSelection = 4 +kTextBackColor = 5 +kTextForeColor = 6 +kTextFace = 7 +kTextFont = 8 +kTextSize = 9 +kTextAlignment = 10 +kTextHilite = 11 +kTextDropShadow = 12 +kTextDisplayFlags = 13 +kTextScroll = 14 +kTextRelativeScroll = 15 +kTextHyperTextFace = 16 +kTextHyperTextColor = 17 +kTextKeyEntry = 18 +kTextMouseDown = 19 +kTextTextBox = 20 +kTextEditState = 21 +kTextLength = 22 +k3DMediaRendererEntry = FOUR_CHAR_CODE('rend') +k3DMediaRendererName = FOUR_CHAR_CODE('name') +k3DMediaRendererCode = FOUR_CHAR_CODE('rcod') +movieProgressOpen = 0 +movieProgressUpdatePercent = 1 +movieProgressClose = 2 +progressOpFlatten = 1 +progressOpInsertTrackSegment = 2 +progressOpInsertMovieSegment = 3 +progressOpPaste = 4 +progressOpAddMovieSelection = 5 +progressOpCopy = 6 +progressOpCut = 7 +progressOpLoadMovieIntoRam = 8 +progressOpLoadTrackIntoRam = 9 +progressOpLoadMediaIntoRam = 10 +progressOpImportMovie = 11 +progressOpExportMovie = 12 +mediaQualityDraft = 0x0000 +mediaQualityNormal = 0x0040 +mediaQualityBetter = 0x0080 +mediaQualityBest = 0x00C0 +kQTEventPayloadIsQTList = 1L << 0 +kActionMovieSetVolume = 1024 +kActionMovieSetRate = 1025 +kActionMovieSetLoopingFlags = 1026 +kActionMovieGoToTime = 1027 +kActionMovieGoToTimeByName = 1028 +kActionMovieGoToBeginning = 1029 +kActionMovieGoToEnd = 1030 +kActionMovieStepForward = 1031 +kActionMovieStepBackward = 1032 +kActionMovieSetSelection = 1033 +kActionMovieSetSelectionByName = 1034 +kActionMoviePlaySelection = 1035 +kActionMovieSetLanguage = 1036 +kActionMovieChanged = 1037 +kActionMovieRestartAtTime = 1038 +kActionMovieGotoNextChapter = 1039 +kActionMovieGotoPreviousChapter = 1040 +kActionMovieGotoFirstChapter = 1041 +kActionMovieGotoLastChapter = 1042 +kActionMovieGotoChapterByIndex = 1043 +kActionMovieSetScale = 1044 +kActionTrackSetVolume = 2048 +kActionTrackSetBalance = 2049 +kActionTrackSetEnabled = 2050 +kActionTrackSetMatrix = 2051 +kActionTrackSetLayer = 2052 +kActionTrackSetClip = 2053 +kActionTrackSetCursor = 2054 +kActionTrackSetGraphicsMode = 2055 +kActionTrackSetIdleFrequency = 2056 +kActionTrackSetBassTreble = 2057 +kActionSpriteSetMatrix = 3072 +kActionSpriteSetImageIndex = 3073 +kActionSpriteSetVisible = 3074 +kActionSpriteSetLayer = 3075 +kActionSpriteSetGraphicsMode = 3076 +kActionSpritePassMouseToCodec = 3078 +kActionSpriteClickOnCodec = 3079 +kActionSpriteTranslate = 3080 +kActionSpriteScale = 3081 +kActionSpriteRotate = 3082 +kActionSpriteStretch = 3083 +kActionSpriteSetCanBeHitTested = 3094 +kActionQTVRSetPanAngle = 4096 +kActionQTVRSetTiltAngle = 4097 +kActionQTVRSetFieldOfView = 4098 +kActionQTVRShowDefaultView = 4099 +kActionQTVRGoToNodeID = 4100 +kActionQTVREnableHotSpot = 4101 +kActionQTVRShowHotSpots = 4102 +kActionQTVRTranslateObject = 4103 +kActionQTVRSetViewState = 4109 +kActionMusicPlayNote = 5120 +kActionMusicSetController = 5121 +kActionCase = 6144 +kActionWhile = 6145 +kActionGoToURL = 6146 +kActionSendQTEventToSprite = 6147 +kActionDebugStr = 6148 +kActionPushCurrentTime = 6149 +kActionPushCurrentTimeWithLabel = 6150 +kActionPopAndGotoTopTime = 6151 +kActionPopAndGotoLabeledTime = 6152 +kActionStatusString = 6153 +kActionSendQTEventToTrackObject = 6154 +kActionAddChannelSubscription = 6155 +kActionRemoveChannelSubscription = 6156 +kActionOpenCustomActionHandler = 6157 +kActionDoScript = 6158 +kActionDoCompressedActions = 6159 +kActionSendAppMessage = 6160 +kActionLoadComponent = 6161 +kActionSetFocus = 6162 +kActionDontPassKeyEvent = 6163 +kActionSetRandomSeed = 6164 +kActionSpriteTrackSetVariable = 7168 +kActionSpriteTrackNewSprite = 7169 +kActionSpriteTrackDisposeSprite = 7170 +kActionSpriteTrackSetVariableToString = 7171 +kActionSpriteTrackConcatVariables = 7172 +kActionSpriteTrackSetVariableToMovieURL = 7173 +kActionSpriteTrackSetVariableToMovieBaseURL = 7174 +kActionSpriteTrackSetAllSpritesHitTestingMode = 7181 +kActionSpriteTrackNewImage = 7182 +kActionSpriteTrackDisposeImage = 7183 +kActionApplicationNumberAndString = 8192 +kActionQD3DNamedObjectTranslateTo = 9216 +kActionQD3DNamedObjectScaleTo = 9217 +kActionQD3DNamedObjectRotateTo = 9218 +kActionFlashTrackSetPan = 10240 +kActionFlashTrackSetZoom = 10241 +kActionFlashTrackSetZoomRect = 10242 +kActionFlashTrackGotoFrameNumber = 10243 +kActionFlashTrackGotoFrameLabel = 10244 +kActionFlashTrackSetFlashVariable = 10245 +kActionFlashTrackDoButtonActions = 10246 +kActionMovieTrackAddChildMovie = 11264 +kActionMovieTrackLoadChildMovie = 11265 +kActionMovieTrackLoadChildMovieWithQTListParams = 11266 +kActionTextTrackPasteText = 12288 +kActionTextTrackSetTextBox = 12291 +kActionTextTrackSetTextStyle = 12292 +kActionTextTrackSetSelection = 12293 +kActionTextTrackSetBackgroundColor = 12294 +kActionTextTrackSetForegroundColor = 12295 +kActionTextTrackSetFace = 12296 +kActionTextTrackSetFont = 12297 +kActionTextTrackSetSize = 12298 +kActionTextTrackSetAlignment = 12299 +kActionTextTrackSetHilite = 12300 +kActionTextTrackSetDropShadow = 12301 +kActionTextTrackSetDisplayFlags = 12302 +kActionTextTrackSetScroll = 12303 +kActionTextTrackRelativeScroll = 12304 +kActionTextTrackFindText = 12305 +kActionTextTrackSetHyperTextFace = 12306 +kActionTextTrackSetHyperTextColor = 12307 +kActionTextTrackKeyEntry = 12308 +kActionTextTrackMouseDown = 12309 +kActionTextTrackSetEditable = 12310 +kActionListAddElement = 13312 +kActionListRemoveElements = 13313 +kActionListSetElementValue = 13314 +kActionListPasteFromXML = 13315 +kActionListSetMatchingFromXML = 13316 +kActionListSetFromURL = 13317 +kActionListExchangeLists = 13318 +kActionListServerQuery = 13319 +kOperandExpression = 1 +kOperandConstant = 2 +kOperandSubscribedToChannel = 3 +kOperandUniqueCustomActionHandlerID = 4 +kOperandCustomActionHandlerIDIsOpen = 5 +kOperandConnectionSpeed = 6 +kOperandGMTDay = 7 +kOperandGMTMonth = 8 +kOperandGMTYear = 9 +kOperandGMTHours = 10 +kOperandGMTMinutes = 11 +kOperandGMTSeconds = 12 +kOperandLocalDay = 13 +kOperandLocalMonth = 14 +kOperandLocalYear = 15 +kOperandLocalHours = 16 +kOperandLocalMinutes = 17 +kOperandLocalSeconds = 18 +kOperandRegisteredForQuickTimePro = 19 +kOperandPlatformRunningOn = 20 +kOperandQuickTimeVersion = 21 +kOperandComponentVersion = 22 +kOperandOriginalHandlerRefcon = 23 +kOperandTicks = 24 +kOperandMaxLoadedTimeInMovie = 25 +kOperandEventParameter = 26 +kOperandFreeMemory = 27 +kOperandNetworkStatus = 28 +kOperandQuickTimeVersionRegistered = 29 +kOperandSystemVersion = 30 +kOperandMovieVolume = 1024 +kOperandMovieRate = 1025 +kOperandMovieIsLooping = 1026 +kOperandMovieLoopIsPalindrome = 1027 +kOperandMovieTime = 1028 +kOperandMovieDuration = 1029 +kOperandMovieTimeScale = 1030 +kOperandMovieWidth = 1031 +kOperandMovieHeight = 1032 +kOperandMovieLoadState = 1033 +kOperandMovieTrackCount = 1034 +kOperandMovieIsActive = 1035 +kOperandMovieName = 1036 +kOperandMovieID = 1037 +kOperandMovieChapterCount = 1038 +kOperandMovieChapterIndex = 1039 +kOperandMovieChapterName = 1040 +kOperandMovieChapterNameByIndex = 1041 +kOperandMovieChapterIndexByName = 1042 +kOperandMovieAnnotation = 1043 +kOperandMovieConnectionFlags = 1044 +kOperandMovieConnectionString = 1045 +kOperandTrackVolume = 2048 +kOperandTrackBalance = 2049 +kOperandTrackEnabled = 2050 +kOperandTrackLayer = 2051 +kOperandTrackWidth = 2052 +kOperandTrackHeight = 2053 +kOperandTrackDuration = 2054 +kOperandTrackName = 2055 +kOperandTrackID = 2056 +kOperandTrackIdleFrequency = 2057 +kOperandTrackBass = 2058 +kOperandTrackTreble = 2059 +kOperandSpriteBoundsLeft = 3072 +kOperandSpriteBoundsTop = 3073 +kOperandSpriteBoundsRight = 3074 +kOperandSpriteBoundsBottom = 3075 +kOperandSpriteImageIndex = 3076 +kOperandSpriteVisible = 3077 +kOperandSpriteLayer = 3078 +kOperandSpriteTrackVariable = 3079 +kOperandSpriteTrackNumSprites = 3080 +kOperandSpriteTrackNumImages = 3081 +kOperandSpriteID = 3082 +kOperandSpriteIndex = 3083 +kOperandSpriteFirstCornerX = 3084 +kOperandSpriteFirstCornerY = 3085 +kOperandSpriteSecondCornerX = 3086 +kOperandSpriteSecondCornerY = 3087 +kOperandSpriteThirdCornerX = 3088 +kOperandSpriteThirdCornerY = 3089 +kOperandSpriteFourthCornerX = 3090 +kOperandSpriteFourthCornerY = 3091 +kOperandSpriteImageRegistrationPointX = 3092 +kOperandSpriteImageRegistrationPointY = 3093 +kOperandSpriteTrackSpriteIDAtPoint = 3094 +kOperandSpriteName = 3095 +kOperandSpriteCanBeHitTested = 3105 +kOperandSpriteTrackAllSpritesHitTestingMode = 3106 +kOperandSpriteTrackImageIDByIndex = 3107 +kOperandSpriteTrackImageIndexByID = 3108 +kOperandQTVRPanAngle = 4096 +kOperandQTVRTiltAngle = 4097 +kOperandQTVRFieldOfView = 4098 +kOperandQTVRNodeID = 4099 +kOperandQTVRHotSpotsVisible = 4100 +kOperandQTVRViewCenterH = 4101 +kOperandQTVRViewCenterV = 4102 +kOperandQTVRViewStateCount = 4103 +kOperandQTVRViewState = 4104 +kOperandMouseLocalHLoc = 5120 +kOperandMouseLocalVLoc = 5121 +kOperandKeyIsDown = 5122 +kOperandRandom = 5123 +kOperandCanHaveFocus = 5124 +kOperandHasFocus = 5125 +kOperandTextTrackEditable = 6144 +kOperandTextTrackCopyText = 6145 +kOperandTextTrackStartSelection = 6146 +kOperandTextTrackEndSelection = 6147 +kOperandTextTrackTextBoxLeft = 6148 +kOperandTextTrackTextBoxTop = 6149 +kOperandTextTrackTextBoxRight = 6150 +kOperandTextTrackTextBoxBottom = 6151 +kOperandTextTrackTextLength = 6152 +kOperandListCountElements = 7168 +kOperandListGetElementPathByIndex = 7169 +kOperandListGetElementValue = 7170 +kOperandListCopyToXML = 7171 +kOperandSin = 8192 +kOperandCos = 8193 +kOperandTan = 8194 +kOperandATan = 8195 +kOperandATan2 = 8196 +kOperandDegreesToRadians = 8197 +kOperandRadiansToDegrees = 8198 +kOperandSquareRoot = 8199 +kOperandExponent = 8200 +kOperandLog = 8201 +kOperandFlashTrackVariable = 9216 +kOperandStringLength = 10240 +kOperandStringCompare = 10241 +kOperandStringSubString = 10242 +kOperandStringConcat = 10243 +kFirstMovieAction = kActionMovieSetVolume +kLastMovieAction = kActionMovieSetScale +kFirstTrackAction = kActionTrackSetVolume +kLastTrackAction = kActionTrackSetBassTreble +kFirstSpriteAction = kActionSpriteSetMatrix +kLastSpriteAction = kActionSpriteSetCanBeHitTested +kFirstQTVRAction = kActionQTVRSetPanAngle +kLastQTVRAction = kActionQTVRSetViewState +kFirstMusicAction = kActionMusicPlayNote +kLastMusicAction = kActionMusicSetController +kFirstSystemAction = kActionCase +kLastSystemAction = kActionSetRandomSeed +kFirstSpriteTrackAction = kActionSpriteTrackSetVariable +kLastSpriteTrackAction = kActionSpriteTrackDisposeImage +kFirstApplicationAction = kActionApplicationNumberAndString +kLastApplicationAction = kActionApplicationNumberAndString +kFirstQD3DNamedObjectAction = kActionQD3DNamedObjectTranslateTo +kLastQD3DNamedObjectAction = kActionQD3DNamedObjectRotateTo +kFirstFlashTrackAction = kActionFlashTrackSetPan +kLastFlashTrackAction = kActionFlashTrackDoButtonActions +kFirstMovieTrackAction = kActionMovieTrackAddChildMovie +kLastMovieTrackAction = kActionMovieTrackLoadChildMovieWithQTListParams +kFirstTextTrackAction = kActionTextTrackPasteText +kLastTextTrackAction = kActionTextTrackSetEditable +kFirstMultiTargetAction = kActionListAddElement +kLastMultiTargetAction = kActionListServerQuery +kFirstAction = kFirstMovieAction +kLastAction = kLastMultiTargetAction +kTargetMovie = FOUR_CHAR_CODE('moov') +kTargetMovieName = FOUR_CHAR_CODE('mona') +kTargetMovieID = FOUR_CHAR_CODE('moid') +kTargetRootMovie = FOUR_CHAR_CODE('moro') +kTargetParentMovie = FOUR_CHAR_CODE('mopa') +kTargetChildMovieTrackName = FOUR_CHAR_CODE('motn') +kTargetChildMovieTrackID = FOUR_CHAR_CODE('moti') +kTargetChildMovieTrackIndex = FOUR_CHAR_CODE('motx') +kTargetChildMovieMovieName = FOUR_CHAR_CODE('momn') +kTargetChildMovieMovieID = FOUR_CHAR_CODE('momi') +kTargetTrackName = FOUR_CHAR_CODE('trna') +kTargetTrackID = FOUR_CHAR_CODE('trid') +kTargetTrackType = FOUR_CHAR_CODE('trty') +kTargetTrackIndex = FOUR_CHAR_CODE('trin') +kTargetSpriteName = FOUR_CHAR_CODE('spna') +kTargetSpriteID = FOUR_CHAR_CODE('spid') +kTargetSpriteIndex = FOUR_CHAR_CODE('spin') +kTargetQD3DNamedObjectName = FOUR_CHAR_CODE('nana') +kTargetCurrentQTEventParams = FOUR_CHAR_CODE('evpa') +kQTEventType = FOUR_CHAR_CODE('evnt') +kAction = FOUR_CHAR_CODE('actn') +kWhichAction = FOUR_CHAR_CODE('whic') +kActionParameter = FOUR_CHAR_CODE('parm') +kActionTarget = FOUR_CHAR_CODE('targ') +kActionFlags = FOUR_CHAR_CODE('flag') +kActionParameterMinValue = FOUR_CHAR_CODE('minv') +kActionParameterMaxValue = FOUR_CHAR_CODE('maxv') +kActionListAtomType = FOUR_CHAR_CODE('list') +kExpressionContainerAtomType = FOUR_CHAR_CODE('expr') +kConditionalAtomType = FOUR_CHAR_CODE('test') +kOperatorAtomType = FOUR_CHAR_CODE('oper') +kOperandAtomType = FOUR_CHAR_CODE('oprn') +kCommentAtomType = FOUR_CHAR_CODE('why ') +kCustomActionHandler = FOUR_CHAR_CODE('cust') +kCustomHandlerID = FOUR_CHAR_CODE('id ') +kCustomHandlerDesc = FOUR_CHAR_CODE('desc') +kQTEventRecordAtomType = FOUR_CHAR_CODE('erec') +kQTEventMouseClick = FOUR_CHAR_CODE('clik') +kQTEventMouseClickEnd = FOUR_CHAR_CODE('cend') +kQTEventMouseClickEndTriggerButton = FOUR_CHAR_CODE('trig') +kQTEventMouseEnter = FOUR_CHAR_CODE('entr') +kQTEventMouseExit = FOUR_CHAR_CODE('exit') +kQTEventMouseMoved = FOUR_CHAR_CODE('move') +kQTEventFrameLoaded = FOUR_CHAR_CODE('fram') +kQTEventIdle = FOUR_CHAR_CODE('idle') +kQTEventKey = FOUR_CHAR_CODE('key ') +kQTEventMovieLoaded = FOUR_CHAR_CODE('load') +kQTEventRequestToModifyMovie = FOUR_CHAR_CODE('reqm') +kQTEventListReceived = FOUR_CHAR_CODE('list') +kQTEventKeyUp = FOUR_CHAR_CODE('keyU') +kActionFlagActionIsDelta = 1L << 1 +kActionFlagParameterWrapsAround = 1L << 2 +kActionFlagActionIsToggle = 1L << 3 +kStatusStringIsURLLink = 1L << 1 +kStatusStringIsStreamingStatus = 1L << 2 +kStatusHasCodeNumber = 1L << 3 +kStatusIsError = 1L << 4 +kScriptIsUnknownType = 1L << 0 +kScriptIsJavaScript = 1L << 1 +kScriptIsLingoEvent = 1L << 2 +kScriptIsVBEvent = 1L << 3 +kScriptIsProjectorCommand = 1L << 4 +kScriptIsAppleScript = 1L << 5 +kQTRegistrationDialogTimeOutFlag = 1 << 0 +kQTRegistrationDialogShowDialog = 1 << 1 +kQTRegistrationDialogForceDialog = 1 << 2 +kOperatorAdd = FOUR_CHAR_CODE('add ') +kOperatorSubtract = FOUR_CHAR_CODE('sub ') +kOperatorMultiply = FOUR_CHAR_CODE('mult') +kOperatorDivide = FOUR_CHAR_CODE('div ') +kOperatorOr = FOUR_CHAR_CODE('or ') +kOperatorAnd = FOUR_CHAR_CODE('and ') +kOperatorNot = FOUR_CHAR_CODE('not ') +kOperatorLessThan = FOUR_CHAR_CODE('< ') +kOperatorLessThanEqualTo = FOUR_CHAR_CODE('<= ') +kOperatorEqualTo = FOUR_CHAR_CODE('= ') +kOperatorNotEqualTo = FOUR_CHAR_CODE('!= ') +kOperatorGreaterThan = FOUR_CHAR_CODE('> ') +kOperatorGreaterThanEqualTo = FOUR_CHAR_CODE('>= ') +kOperatorModulo = FOUR_CHAR_CODE('mod ') +kOperatorIntegerDivide = FOUR_CHAR_CODE('idiv') +kOperatorAbsoluteValue = FOUR_CHAR_CODE('abs ') +kOperatorNegate = FOUR_CHAR_CODE('neg ') +kPlatformMacintosh = 1 +kPlatformWindows = 2 +kSystemIsWindows9x = 0x00010000 +kSystemIsWindowsNT = 0x00020000 +kMediaPropertyNonLinearAtomType = FOUR_CHAR_CODE('nonl') +kMediaPropertyHasActions = 105 +loopTimeBase = 1 +palindromeLoopTimeBase = 2 +maintainTimeBaseZero = 4 +triggerTimeFwd = 0x0001 +triggerTimeBwd = 0x0002 +triggerTimeEither = 0x0003 +triggerRateLT = 0x0004 +triggerRateGT = 0x0008 +triggerRateEqual = 0x0010 +triggerRateLTE = triggerRateLT | triggerRateEqual +triggerRateGTE = triggerRateGT | triggerRateEqual +triggerRateNotEqual = triggerRateGT | triggerRateEqual | triggerRateLT +triggerRateChange = 0 +triggerAtStart = 0x0001 +triggerAtStop = 0x0002 +timeBaseBeforeStartTime = 1 +timeBaseAfterStopTime = 2 +callBackAtTime = 1 +callBackAtRate = 2 +callBackAtTimeJump = 3 +callBackAtExtremes = 4 +callBackAtTimeBaseDisposed = 5 +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 +newMovieDontUpdateForeBackPointers = 1 << 4 +newMovieDontAutoUpdateClock = 1 << 5 +newMovieAsyncOK = 1 << 8 +newMovieIdleImportOK = 1 << 10 +newMovieDontInteractWithUser = 1 << 11 +trackUsageInMovie = 1 << 1 +trackUsageInPreview = 1 << 2 +trackUsageInPoster = 1 << 3 +mediaSampleNotSync = 1 << 0 +mediaSampleShadowSync = 1 << 1 +pasteInParallel = 1 << 0 +showUserSettingsDialog = 1 << 1 +movieToFileOnlyExport = 1 << 2 +movieFileSpecValid = 1 << 3 +nextTimeMediaSample = 1 << 0 +nextTimeMediaEdit = 1 << 1 +nextTimeTrackEdit = 1 << 2 +nextTimeSyncSample = 1 << 3 +nextTimeStep = 1 << 4 +nextTimeEdgeOK = 1 << 14 +nextTimeIgnoreActiveSegment = 1 << 15 +createMovieFileDeleteCurFile = 1L << 31 +createMovieFileDontCreateMovie = 1L << 30 +createMovieFileDontOpenFile = 1L << 29 +createMovieFileDontCreateResFile = 1L << 28 +flattenAddMovieToDataFork = 1L << 0 +flattenActiveTracksOnly = 1L << 2 +flattenDontInterleaveFlatten = 1L << 3 +flattenFSSpecPtrIsDataRefRecordPtr = 1L << 4 +flattenCompressMovieResource = 1L << 5 +flattenForceMovieResourceBeforeMovieData = 1L << 6 +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 +kMovieAnchorDataRefIsDefault = 1 << 0 +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 +hintsOffscreen = 1 << 12 +hintsDontDraw = 1 << 13 +hintsAllowBlacklining = 1 << 14 +hintsDontUseVideoOverlaySurface = 1 << 16 +hintsIgnoreBandwidthRestrictions = 1 << 17 +hintsPlayingEveryFrame = 1 << 18 +hintsAllowDynamicResize = 1 << 19 +hintsSingleField = 1 << 20 +hintsNoRenderingTimeOut = 1 << 21 +hintsFlushVideoInsteadOfDirtying = 1 << 22 +hintsEnableSubPixelPositioning = 1L << 23 +mediaHandlerFlagBaseClient = 1 +movieTrackMediaType = 1 << 0 +movieTrackCharacteristic = 1 << 1 +movieTrackEnabledOnly = 1 << 2 +kMovieControlOptionHideController = (1L << 0) +kMovieControlOptionLocateTopLeft = (1L << 1) +kMovieControlOptionEnableEditing = (1L << 2) +kMovieControlOptionHandleEditingHI = (1L << 3) +kMovieControlOptionSetKeysEnabled = (1L << 4) +kMovieControlOptionManuallyIdled = (1L << 5) +kMovieControlDataMovieController = FOUR_CHAR_CODE('mc ') +kMovieControlDataMovie = FOUR_CHAR_CODE('moov') +kMovieControlDataManualIdling = FOUR_CHAR_CODE('manu') +movieDrawingCallWhenChanged = 0 +movieDrawingCallAlways = 1 +kQTCloneShareSamples = 1 << 0 +kQTCloneDontCopyEdits = 1 << 1 +kGetMovieImporterValidateToFind = 1L << 0 +kGetMovieImporterAllowNewFile = 1L << 1 +kGetMovieImporterDontConsiderGraphicsImporters = 1L << 2 +kGetMovieImporterDontConsiderFileOnlyImporters = 1L << 6 +kGetMovieImporterAutoImportOnly = 1L << 10 +kQTGetMIMETypeInfoIsQuickTimeMovieType = FOUR_CHAR_CODE('moov') +kQTGetMIMETypeInfoIsUnhelpfulType = FOUR_CHAR_CODE('dumb') +kQTCopyUserDataReplace = FOUR_CHAR_CODE('rplc') +kQTCopyUserDataMerge = FOUR_CHAR_CODE('merg') +kMovieLoadStateError = -1L +kMovieLoadStateLoading = 1000 +kMovieLoadStateLoaded = 2000 +kMovieLoadStatePlayable = 10000 +kMovieLoadStatePlaythroughOK = 20000 +kMovieLoadStateComplete = 100000L +kQTDontUseDataToFindImporter = 1L << 0 +kQTDontLookForMovieImporterIfGraphicsImporterFound = 1L << 1 +kQTAllowOpeningStillImagesAsMovies = 1L << 2 +kQTAllowImportersThatWouldCreateNewFile = 1L << 3 +kQTAllowAggressiveImporters = 1L << 4 +preloadAlways = 1L << 0 +preloadOnlyIfEnabled = 1L << 1 +fullScreenHideCursor = 1L << 0 +fullScreenAllowEvents = 1L << 1 +fullScreenDontChangeMenuBar = 1L << 2 +fullScreenPreflightSize = 1L << 3 +movieExecuteWiredActionDontExecute = 1L << 0 +kRefConNavigationNext = 0 +kRefConNavigationPrevious = 1 +kRefConPropertyCanHaveFocus = 1 +kRefConPropertyHasFocus = 2 +kTrackFocusCanEditFlag = FOUR_CHAR_CODE('kedt') +kTrackDefaultFocusFlags = FOUR_CHAR_CODE('kfoc') +kTrackFocusDefaultRefcon = FOUR_CHAR_CODE('kref') +kTrackFocusOn = 1 +kTrackHandlesTabs = 2 +kFlashTrackPropertyAcceptAllClicks = FOUR_CHAR_CODE('clik') +kBackgroundSpriteLayerNum = 32767 +kSpritePropertyMatrix = 1 +kSpritePropertyImageDescription = 2 +kSpritePropertyImageDataPtr = 3 +kSpritePropertyVisible = 4 +kSpritePropertyLayer = 5 +kSpritePropertyGraphicsMode = 6 +kSpritePropertyImageDataSize = 7 +kSpritePropertyActionHandlingSpriteID = 8 +kSpritePropertyCanBeHitTested = 9 +kSpritePropertyImageIndex = 100 +kSpriteTrackPropertyBackgroundColor = 101 +kSpriteTrackPropertyOffscreenBitDepth = 102 +kSpriteTrackPropertySampleFormat = 103 +kSpriteTrackPropertyScaleSpritesToScaleWorld = 104 +kSpriteTrackPropertyHasActions = 105 +kSpriteTrackPropertyVisible = 106 +kSpriteTrackPropertyQTIdleEventsFrequency = 107 +kSpriteTrackPropertyAllSpritesHitTestingMode = 108 +kSpriteTrackPropertyPreferredDepthInterpretationMode = 109 +kSpriteImagePropertyRegistrationPoint = 1000 +kSpriteImagePropertyGroupID = 1001 +kSpriteTrackPreferredDepthCompatibilityMode = 0 +kSpriteTrackPreferredDepthModernMode = 1 +kSpriteHitTestUseSpritesOwnPropertiesMode = 0 +kSpriteHitTestTreatAllSpritesAsHitTestableMode = 1 +kSpriteHitTestTreatAllSpritesAsNotHitTestableMode = 2 +kNoQTIdleEvents = -1 +kGetSpriteWorldInvalidRegionAndLeaveIntact = -1L +kGetSpriteWorldInvalidRegionAndThenSetEmpty = -2L +kOnlyDrawToSpriteWorld = 1L << 0 +kSpriteWorldPreflight = 1L << 1 +kSpriteWorldDidDraw = 1L << 0 +kSpriteWorldNeedsToDraw = 1L << 1 +kKeyFrameAndSingleOverride = 1L << 1 +kKeyFrameAndAllOverrides = 1L << 2 +kScaleSpritesToScaleWorld = 1L << 1 +kSpriteWorldHighQuality = 1L << 2 +kSpriteWorldDontAutoInvalidate = 1L << 3 +kSpriteWorldInvisible = 1L << 4 +kSpriteWorldDirtyInsteadOfFlush = 1L << 5 +kParentAtomIsContainer = 0 +kTweenRecordNoFlags = 0 +kTweenRecordIsAtInterruptTime = 0x00000001 +kEffectNameAtom = FOUR_CHAR_CODE('name') +kEffectTypeAtom = FOUR_CHAR_CODE('type') +kEffectManufacturerAtom = FOUR_CHAR_CODE('manu') +pdActionConfirmDialog = 1 +pdActionSetAppleMenu = 2 +pdActionSetEditMenu = 3 +pdActionGetDialogValues = 4 +pdActionSetPreviewUserItem = 5 +pdActionSetPreviewPicture = 6 +pdActionSetColorPickerEventProc = 7 +pdActionSetDialogTitle = 8 +pdActionGetSubPanelMenu = 9 +pdActionActivateSubPanel = 10 +pdActionConductStopAlert = 11 +pdActionModelessCallback = 12 +pdActionFetchPreview = 13 +pdActionSetDialogSettings = 14 +pdActionGetDialogSettings = 15 +pdActionGetNextSample = 16 +pdActionGetPreviousSample = 17 +pdActionCompactSample = 18 +pdActionSetEditCallout = 19 +pdActionSetSampleTime = 20 +pdActionDoEditCommand = 21 +pdActionGetSubPanelMenuValue = 22 +pdActionCustomNewControl = 23 +pdActionCustomDisposeControl = 24 +pdActionCustomPositionControl = 25 +pdActionCustomShowHideControl = 26 +pdActionCustomHandleEvent = 27 +pdActionCustomSetFocus = 28 +pdActionCustomSetEditMenu = 29 +pdActionCustomSetPreviewPicture = 30 +pdActionCustomSetEditCallout = 31 +pdActionCustomGetEnableValue = 32 +pdActionCustomSetSampleTime = 33 +pdActionCustomGetValue = 34 +pdActionCustomDoEditCommand = 35 +pdSampleTimeDisplayOptionsNone = 0x00000000 +pdActionFocusOff = 0 +pdActionFocusFirst = 1 +pdActionFocusLast = 2 +pdActionFocusForward = 3 +pdActionFocusBackward = 4 +elOptionsIncludeNoneInList = 0x00000001 +pdOptionsCollectOneValue = 0x00000001 +pdOptionsAllowOptionalInterpolations = 0x00000002 +pdOptionsModalDialogBox = 0x00000004 +pdOptionsEditCurrentEffectOnly = 0x00000008 +pdOptionsHidePreview = 0x00000010 +effectIsRealtime = 0 +kAccessKeyAtomType = FOUR_CHAR_CODE('acky') +kAccessKeySystemFlag = 1L << 0 +ConnectionSpeedPrefsType = FOUR_CHAR_CODE('cspd') +BandwidthManagementPrefsType = FOUR_CHAR_CODE('bwmg') +kQTIdlePriority = 10 +kQTNonRealTimePriority = 20 +kQTRealTimeSharedPriority = 25 +kQTRealTimePriority = 30 +kQTBandwidthNotifyNeedToStop = 1L << 0 +kQTBandwidthNotifyGoodToGo = 1L << 1 +kQTBandwidthChangeRequest = 1L << 2 +kQTBandwidthQueueRequest = 1L << 3 +kQTBandwidthScheduledRequest = 1L << 4 +kQTBandwidthVoluntaryRelease = 1L << 5 +kITextRemoveEverythingBut = 0 << 1 +kITextRemoveLeaveSuggestedAlternate = 1 << 1 +kITextAtomType = FOUR_CHAR_CODE('itxt') +kITextStringAtomType = FOUR_CHAR_CODE('text') +kQTParseTextHREFText = FOUR_CHAR_CODE('text') +kQTParseTextHREFBaseURL = FOUR_CHAR_CODE('burl') +kQTParseTextHREFClickPoint = FOUR_CHAR_CODE('clik') +kQTParseTextHREFUseAltDelim = FOUR_CHAR_CODE('altd') +kQTParseTextHREFDelimiter = FOUR_CHAR_CODE('delm') +kQTParseTextHREFRecomposeHREF = FOUR_CHAR_CODE('rhrf') +kQTParseTextHREFURL = FOUR_CHAR_CODE('url ') +kQTParseTextHREFTarget = FOUR_CHAR_CODE('targ') +kQTParseTextHREFChapter = FOUR_CHAR_CODE('chap') +kQTParseTextHREFIsAutoHREF = FOUR_CHAR_CODE('auto') +kQTParseTextHREFIsServerMap = FOUR_CHAR_CODE('smap') +kQTParseTextHREFHREF = FOUR_CHAR_CODE('href') +kQTParseTextHREFEMBEDArgs = FOUR_CHAR_CODE('mbed') +kTrackReferenceChapterList = FOUR_CHAR_CODE('chap') +kTrackReferenceTimeCode = FOUR_CHAR_CODE('tmcd') +kTrackReferenceModifier = FOUR_CHAR_CODE('ssrc') +kTrackModifierInput = 0x696E +kTrackModifierType = 0x7479 +kTrackModifierReference = FOUR_CHAR_CODE('ssrc') +kTrackModifierObjectID = FOUR_CHAR_CODE('obid') +kTrackModifierInputName = FOUR_CHAR_CODE('name') +kInputMapSubInputID = FOUR_CHAR_CODE('subi') +kTrackModifierTypeMatrix = 1 +kTrackModifierTypeClip = 2 +kTrackModifierTypeGraphicsMode = 5 +kTrackModifierTypeVolume = 3 +kTrackModifierTypeBalance = 4 +kTrackModifierTypeImage = FOUR_CHAR_CODE('vide') +kTrackModifierObjectMatrix = 6 +kTrackModifierObjectGraphicsMode = 7 +kTrackModifierType3d4x4Matrix = 8 +kTrackModifierCameraData = 9 +kTrackModifierSoundLocalizationData = 10 +kTrackModifierObjectImageIndex = 11 +kTrackModifierObjectLayer = 12 +kTrackModifierObjectVisible = 13 +kTrackModifierAngleAspectCamera = 14 +kTrackModifierPanAngle = FOUR_CHAR_CODE('pan ') +kTrackModifierTiltAngle = FOUR_CHAR_CODE('tilt') +kTrackModifierVerticalFieldOfViewAngle = FOUR_CHAR_CODE('fov ') +kTrackModifierObjectQTEventSend = FOUR_CHAR_CODE('evnt') +kTrackModifierObjectCanBeHitTested = 15 +kTweenTypeShort = 1 +kTweenTypeLong = 2 +kTweenTypeFixed = 3 +kTweenTypePoint = 4 +kTweenTypeQDRect = 5 +kTweenTypeQDRegion = 6 +kTweenTypeMatrix = 7 +kTweenTypeRGBColor = 8 +kTweenTypeGraphicsModeWithRGBColor = 9 +kTweenTypeQTFloatSingle = 10 +kTweenTypeQTFloatDouble = 11 +kTweenTypeFixedPoint = 12 +kTweenType3dScale = FOUR_CHAR_CODE('3sca') +kTweenType3dTranslate = FOUR_CHAR_CODE('3tra') +kTweenType3dRotate = FOUR_CHAR_CODE('3rot') +kTweenType3dRotateAboutPoint = FOUR_CHAR_CODE('3rap') +kTweenType3dRotateAboutAxis = FOUR_CHAR_CODE('3rax') +kTweenType3dRotateAboutVector = FOUR_CHAR_CODE('3rvc') +kTweenType3dQuaternion = FOUR_CHAR_CODE('3qua') +kTweenType3dMatrix = FOUR_CHAR_CODE('3mat') +kTweenType3dCameraData = FOUR_CHAR_CODE('3cam') +kTweenType3dAngleAspectCameraData = FOUR_CHAR_CODE('3caa') +kTweenType3dSoundLocalizationData = FOUR_CHAR_CODE('3slc') +kTweenTypePathToMatrixTranslation = FOUR_CHAR_CODE('gxmt') +kTweenTypePathToMatrixRotation = FOUR_CHAR_CODE('gxpr') +kTweenTypePathToMatrixTranslationAndRotation = FOUR_CHAR_CODE('gxmr') +kTweenTypePathToFixedPoint = FOUR_CHAR_CODE('gxfp') +kTweenTypePathXtoY = FOUR_CHAR_CODE('gxxy') +kTweenTypePathYtoX = FOUR_CHAR_CODE('gxyx') +kTweenTypeAtomList = FOUR_CHAR_CODE('atom') +kTweenTypePolygon = FOUR_CHAR_CODE('poly') +kTweenTypeMultiMatrix = FOUR_CHAR_CODE('mulm') +kTweenTypeSpin = FOUR_CHAR_CODE('spin') +kTweenType3dMatrixNonLinear = FOUR_CHAR_CODE('3nlr') +kTweenType3dVRObject = FOUR_CHAR_CODE('3vro') +kTweenEntry = FOUR_CHAR_CODE('twen') +kTweenData = FOUR_CHAR_CODE('data') +kTweenType = FOUR_CHAR_CODE('twnt') +kTweenStartOffset = FOUR_CHAR_CODE('twst') +kTweenDuration = FOUR_CHAR_CODE('twdu') +kTweenFlags = FOUR_CHAR_CODE('flag') +kTweenOutputMin = FOUR_CHAR_CODE('omin') +kTweenOutputMax = FOUR_CHAR_CODE('omax') +kTweenSequenceElement = FOUR_CHAR_CODE('seqe') +kTween3dInitialCondition = FOUR_CHAR_CODE('icnd') +kTweenInterpolationID = FOUR_CHAR_CODE('intr') +kTweenRegionData = FOUR_CHAR_CODE('qdrg') +kTweenPictureData = FOUR_CHAR_CODE('PICT') +kListElementType = FOUR_CHAR_CODE('type') +kListElementDataType = FOUR_CHAR_CODE('daty') +kNameAtom = FOUR_CHAR_CODE('name') +kInitialRotationAtom = FOUR_CHAR_CODE('inro') +kNonLinearTweenHeader = FOUR_CHAR_CODE('nlth') +kTweenReturnDelta = 1L << 0 +kQTRestrictionClassSave = FOUR_CHAR_CODE('save') +kQTRestrictionSaveDontAddMovieResource = (1L << 0) +kQTRestrictionSaveDontFlatten = (1L << 1) +kQTRestrictionSaveDontExport = (1L << 2) +kQTRestrictionSaveDontExtract = (1L << 3) +kQTRestrictionClassEdit = FOUR_CHAR_CODE('edit') +kQTRestrictionEditDontCopy = (1L << 0) +kQTRestrictionEditDontCut = (1L << 1) +kQTRestrictionEditDontPaste = (1L << 2) +kQTRestrictionEditDontClear = (1L << 3) +kQTRestrictionEditDontModify = (1L << 4) +kQTRestrictionEditDontExtract = (1L << 5) +videoFlagDontLeanAhead = 1L << 0 +txtProcDefaultDisplay = 0 +txtProcDontDisplay = 1 +txtProcDoDisplay = 2 +findTextEdgeOK = 1 << 0 +findTextCaseSensitive = 1 << 1 +findTextReverseSearch = 1 << 2 +findTextWrapAround = 1 << 3 +findTextUseOffset = 1 << 4 +dropShadowOffsetType = FOUR_CHAR_CODE('drpo') +dropShadowTranslucencyType = FOUR_CHAR_CODE('drpt') +spriteHitTestBounds = 1L << 0 +spriteHitTestImage = 1L << 1 +spriteHitTestInvisibleSprites = 1L << 2 +spriteHitTestIsClick = 1L << 3 +spriteHitTestLocInDisplayCoordinates = 1L << 4 +spriteHitTestTreatAllSpritesAsHitTestable = 1L << 5 +kSpriteAtomType = FOUR_CHAR_CODE('sprt') +kSpriteImagesContainerAtomType = FOUR_CHAR_CODE('imct') +kSpriteImageAtomType = FOUR_CHAR_CODE('imag') +kSpriteImageDataAtomType = FOUR_CHAR_CODE('imda') +kSpriteImageDataRefAtomType = FOUR_CHAR_CODE('imre') +kSpriteImageDataRefTypeAtomType = FOUR_CHAR_CODE('imrt') +kSpriteImageGroupIDAtomType = FOUR_CHAR_CODE('imgr') +kSpriteImageRegistrationAtomType = FOUR_CHAR_CODE('imrg') +kSpriteImageDefaultImageIndexAtomType = FOUR_CHAR_CODE('defi') +kSpriteSharedDataAtomType = FOUR_CHAR_CODE('dflt') +kSpriteNameAtomType = FOUR_CHAR_CODE('name') +kSpriteImageNameAtomType = FOUR_CHAR_CODE('name') +kSpriteUsesImageIDsAtomType = FOUR_CHAR_CODE('uses') +kSpriteBehaviorsAtomType = FOUR_CHAR_CODE('beha') +kSpriteImageBehaviorAtomType = FOUR_CHAR_CODE('imag') +kSpriteCursorBehaviorAtomType = FOUR_CHAR_CODE('crsr') +kSpriteStatusStringsBehaviorAtomType = FOUR_CHAR_CODE('sstr') +kSpriteVariablesContainerAtomType = FOUR_CHAR_CODE('vars') +kSpriteStringVariableAtomType = FOUR_CHAR_CODE('strv') +kSpriteFloatingPointVariableAtomType = FOUR_CHAR_CODE('flov') +kMovieMediaDataReference = FOUR_CHAR_CODE('mmdr') +kMovieMediaDefaultDataReferenceID = FOUR_CHAR_CODE('ddri') +kMovieMediaSlaveTime = FOUR_CHAR_CODE('slti') +kMovieMediaSlaveAudio = FOUR_CHAR_CODE('slau') +kMovieMediaSlaveGraphicsMode = FOUR_CHAR_CODE('slgr') +kMovieMediaAutoPlay = FOUR_CHAR_CODE('play') +kMovieMediaLoop = FOUR_CHAR_CODE('loop') +kMovieMediaUseMIMEType = FOUR_CHAR_CODE('mime') +kMovieMediaTitle = FOUR_CHAR_CODE('titl') +kMovieMediaAltText = FOUR_CHAR_CODE('altt') +kMovieMediaClipBegin = FOUR_CHAR_CODE('clpb') +kMovieMediaClipDuration = FOUR_CHAR_CODE('clpd') +kMovieMediaRegionAtom = FOUR_CHAR_CODE('regi') +kMovieMediaSlaveTrackDuration = FOUR_CHAR_CODE('sltr') +kMovieMediaEnableFrameStepping = FOUR_CHAR_CODE('enfs') +kMovieMediaBackgroundColor = FOUR_CHAR_CODE('bkcl') +kMovieMediaPrerollTime = FOUR_CHAR_CODE('prer') +kMovieMediaFitNone = 0 +kMovieMediaFitScroll = FOUR_CHAR_CODE('scro') +kMovieMediaFitClipIfNecessary = FOUR_CHAR_CODE('hidd') +kMovieMediaFitFill = FOUR_CHAR_CODE('fill') +kMovieMediaFitMeet = FOUR_CHAR_CODE('meet') +kMovieMediaFitSlice = FOUR_CHAR_CODE('slic') +kMovieMediaSpatialAdjustment = FOUR_CHAR_CODE('fit ') +kMovieMediaRectangleAtom = FOUR_CHAR_CODE('rect') +kMovieMediaTop = FOUR_CHAR_CODE('top ') +kMovieMediaLeft = FOUR_CHAR_CODE('left') +kMovieMediaWidth = FOUR_CHAR_CODE('wd ') +kMovieMediaHeight = FOUR_CHAR_CODE('ht ') +kMoviePropertyDuration = FOUR_CHAR_CODE('dura') +kMoviePropertyTimeScale = FOUR_CHAR_CODE('tims') +kMoviePropertyTime = FOUR_CHAR_CODE('timv') +kMoviePropertyNaturalBounds = FOUR_CHAR_CODE('natb') +kMoviePropertyMatrix = FOUR_CHAR_CODE('mtrx') +kMoviePropertyTrackList = FOUR_CHAR_CODE('tlst') +kTrackPropertyMediaType = FOUR_CHAR_CODE('mtyp') +kTrackPropertyInstantiation = FOUR_CHAR_CODE('inst') +MovieControllerComponentType = FOUR_CHAR_CODE('play') +kMovieControllerQTVRFlag = 1 << 0 +kMovieControllerDontDisplayToUser = 1 << 1 +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 +mcActionGetSelectionBegin = 53 +mcActionGetSelectionDuration = 54 +mcActionPrerollAndPlay = 55 +mcActionGetCursorSettingEnabled = 56 +mcActionSetCursorSettingEnabled = 57 +mcActionSetColorTable = 58 +mcActionLinkToURL = 59 +mcActionCustomButtonClick = 60 +mcActionForceTimeTableUpdate = 61 +mcActionSetControllerTimeLimits = 62 +mcActionExecuteAllActionsForQTEvent = 63 +mcActionExecuteOneActionForQTEvent = 64 +mcActionAdjustCursor = 65 +mcActionUseTrackForTimeTable = 66 +mcActionClickAndHoldPoint = 67 +mcActionShowMessageString = 68 +mcActionShowStatusString = 69 +mcActionGetExternalMovie = 70 +mcActionGetChapterTime = 71 +mcActionPerformActionList = 72 +mcActionEvaluateExpression = 73 +mcActionFetchParameterAs = 74 +mcActionGetCursorByID = 75 +mcActionGetNextURL = 76 +mcActionMovieChanged = 77 +mcActionDoScript = 78 +mcActionRestartAtTime = 79 +mcActionGetIndChapter = 80 +mcActionLinkToURLExtended = 81 +mcActionSetVolumeStep = 82 +mcActionAutoPlay = 83 +mcActionPauseToBuffer = 84 +mcActionAppMessageReceived = 85 +mcActionEvaluateExpressionWithType = 89 +mcActionGetMovieName = 90 +mcActionGetMovieID = 91 +mcActionGetMovieActive = 92 +mcFlagSuppressMovieFrame = 1 << 0 +mcFlagSuppressStepButtons = 1 << 1 +mcFlagSuppressSpeakerButton = 1 << 2 +mcFlagsUseWindowPalette = 1 << 3 +mcFlagsDontInvalidate = 1 << 4 +mcFlagsUseCustomButton = 1 << 5 +mcPositionDontInvalidate = 1 << 5 +kMCIEEnabledButtonPicture = 1 +kMCIEDisabledButtonPicture = 2 +kMCIEDepressedButtonPicture = 3 +kMCIEEnabledSizeBoxPicture = 4 +kMCIEDisabledSizeBoxPicture = 5 +kMCIEEnabledUnavailableButtonPicture = 6 +kMCIEDisabledUnavailableButtonPicture = 7 +kMCIESoundSlider = 128 +kMCIESoundThumb = 129 +kMCIEColorTable = 256 +kMCIEIsFlatAppearance = 257 +kMCIEDoButtonIconsDropOnDepress = 258 +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 +mcInfoMovieIsInteractive = 1 << 10 +mcMenuUndo = 1 +mcMenuCut = 3 +mcMenuCopy = 4 +mcMenuPaste = 5 +mcMenuClear = 6 +kQTAppMessageSoftwareChanged = 1 +kQTAppMessageWindowCloseRequested = 3 +kQTAppMessageExitFullScreenRequested = 4 +kQTAppMessageDisplayChannels = 5 +kQTAppMessageEnterFullScreenRequested = 6 +kFetchAsBooleanPtr = 1 +kFetchAsShortPtr = 2 +kFetchAsLongPtr = 3 +kFetchAsMatrixRecordPtr = 4 +kFetchAsModifierTrackGraphicsModeRecord = 5 +kFetchAsHandle = 6 +kFetchAsStr255 = 7 +kFetchAsFloatPtr = 8 +kFetchAsPointPtr = 9 +kFetchAsNewAtomContainer = 10 +kFetchAsQTEventRecordPtr = 11 +kFetchAsFixedPtr = 12 +kFetchAsSetControllerValuePtr = 13 +kFetchAsRgnHandle = 14 +kFetchAsComponentDescriptionPtr = 15 +kFetchAsCString = 16 +kQTCursorOpenHand = -19183 +kQTCursorClosedHand = -19182 +kQTCursorPointingHand = -19181 +kQTCursorRightArrow = -19180 +kQTCursorLeftArrow = -19179 +kQTCursorDownArrow = -19178 +kQTCursorUpArrow = -19177 +kQTCursorIBeam = -19176 +kControllerUnderstandsIdleManagers = 1 << 0 +kVideoMediaResetStatisticsSelect = 0x0105 +kVideoMediaGetStatisticsSelect = 0x0106 +kVideoMediaGetStallCountSelect = 0x010E +kVideoMediaSetCodecParameterSelect = 0x010F +kVideoMediaGetCodecParameterSelect = 0x0110 +kTextMediaSetTextProcSelect = 0x0101 +kTextMediaAddTextSampleSelect = 0x0102 +kTextMediaAddTESampleSelect = 0x0103 +kTextMediaAddHiliteSampleSelect = 0x0104 +kTextMediaDrawRawSelect = 0x0109 +kTextMediaSetTextPropertySelect = 0x010A +kTextMediaRawSetupSelect = 0x010B +kTextMediaRawIdleSelect = 0x010C +kTextMediaGetTextPropertySelect = 0x010D +kTextMediaFindNextTextSelect = 0x0105 +kTextMediaHiliteTextSampleSelect = 0x0106 +kTextMediaSetTextSampleDataSelect = 0x0107 +kSpriteMediaSetPropertySelect = 0x0101 +kSpriteMediaGetPropertySelect = 0x0102 +kSpriteMediaHitTestSpritesSelect = 0x0103 +kSpriteMediaCountSpritesSelect = 0x0104 +kSpriteMediaCountImagesSelect = 0x0105 +kSpriteMediaGetIndImageDescriptionSelect = 0x0106 +kSpriteMediaGetDisplayedSampleNumberSelect = 0x0107 +kSpriteMediaGetSpriteNameSelect = 0x0108 +kSpriteMediaGetImageNameSelect = 0x0109 +kSpriteMediaSetSpritePropertySelect = 0x010A +kSpriteMediaGetSpritePropertySelect = 0x010B +kSpriteMediaHitTestAllSpritesSelect = 0x010C +kSpriteMediaHitTestOneSpriteSelect = 0x010D +kSpriteMediaSpriteIndexToIDSelect = 0x010E +kSpriteMediaSpriteIDToIndexSelect = 0x010F +kSpriteMediaGetSpriteActionsForQTEventSelect = 0x0110 +kSpriteMediaSetActionVariableSelect = 0x0111 +kSpriteMediaGetActionVariableSelect = 0x0112 +kSpriteMediaGetIndImagePropertySelect = 0x0113 +kSpriteMediaNewSpriteSelect = 0x0114 +kSpriteMediaDisposeSpriteSelect = 0x0115 +kSpriteMediaSetActionVariableToStringSelect = 0x0116 +kSpriteMediaGetActionVariableAsStringSelect = 0x0117 +kSpriteMediaNewImageSelect = 0x011B +kSpriteMediaDisposeImageSelect = 0x011C +kSpriteMediaImageIndexToIDSelect = 0x011D +kSpriteMediaImageIDToIndexSelect = 0x011E +kFlashMediaSetPanSelect = 0x0101 +kFlashMediaSetZoomSelect = 0x0102 +kFlashMediaSetZoomRectSelect = 0x0103 +kFlashMediaGetRefConBoundsSelect = 0x0104 +kFlashMediaGetRefConIDSelect = 0x0105 +kFlashMediaIDToRefConSelect = 0x0106 +kFlashMediaGetDisplayedFrameNumberSelect = 0x0107 +kFlashMediaFrameNumberToMovieTimeSelect = 0x0108 +kFlashMediaFrameLabelToMovieTimeSelect = 0x0109 +kFlashMediaGetFlashVariableSelect = 0x010A +kFlashMediaSetFlashVariableSelect = 0x010B +kFlashMediaDoButtonActionsSelect = 0x010C +kFlashMediaGetSupportedSwfVersionSelect = 0x010D +kMovieMediaGetChildDoMCActionCallbackSelect = 0x0102 +kMovieMediaGetDoMCActionCallbackSelect = 0x0103 +kMovieMediaGetCurrentMoviePropertySelect = 0x0104 +kMovieMediaGetCurrentTrackPropertySelect = 0x0105 +kMovieMediaGetChildMovieDataReferenceSelect = 0x0106 +kMovieMediaSetChildMovieDataReferenceSelect = 0x0107 +kMovieMediaLoadChildMovieFromDataReferenceSelect = 0x0108 +kMedia3DGetNamedObjectListSelect = 0x0101 +kMedia3DGetRendererListSelect = 0x0102 +kMedia3DGetCurrentGroupSelect = 0x0103 +kMedia3DTranslateNamedObjectToSelect = 0x0104 +kMedia3DScaleNamedObjectToSelect = 0x0105 +kMedia3DRotateNamedObjectToSelect = 0x0106 +kMedia3DSetCameraDataSelect = 0x0107 +kMedia3DGetCameraDataSelect = 0x0108 +kMedia3DSetCameraAngleAspectSelect = 0x0109 +kMedia3DGetCameraAngleAspectSelect = 0x010A +kMedia3DSetCameraRangeSelect = 0x010D +kMedia3DGetCameraRangeSelect = 0x010E +kMedia3DGetViewObjectSelect = 0x010F +kMCSetMovieSelect = 0x0002 +kMCGetIndMovieSelect = 0x0005 +kMCRemoveAllMoviesSelect = 0x0006 +kMCRemoveAMovieSelect = 0x0003 +kMCRemoveMovieSelect = 0x0006 +kMCIsPlayerEventSelect = 0x0007 +kMCSetActionFilterSelect = 0x0008 +kMCDoActionSelect = 0x0009 +kMCSetControllerAttachedSelect = 0x000A +kMCIsControllerAttachedSelect = 0x000B +kMCSetControllerPortSelect = 0x000C +kMCGetControllerPortSelect = 0x000D +kMCSetVisibleSelect = 0x000E +kMCGetVisibleSelect = 0x000F +kMCGetControllerBoundsRectSelect = 0x0010 +kMCSetControllerBoundsRectSelect = 0x0011 +kMCGetControllerBoundsRgnSelect = 0x0012 +kMCGetWindowRgnSelect = 0x0013 +kMCMovieChangedSelect = 0x0014 +kMCSetDurationSelect = 0x0015 +kMCGetCurrentTimeSelect = 0x0016 +kMCNewAttachedControllerSelect = 0x0017 +kMCDrawSelect = 0x0018 +kMCActivateSelect = 0x0019 +kMCIdleSelect = 0x001A +kMCKeySelect = 0x001B +kMCClickSelect = 0x001C +kMCEnableEditingSelect = 0x001D +kMCIsEditingEnabledSelect = 0x001E +kMCCopySelect = 0x001F +kMCCutSelect = 0x0020 +kMCPasteSelect = 0x0021 +kMCClearSelect = 0x0022 +kMCUndoSelect = 0x0023 +kMCPositionControllerSelect = 0x0024 +kMCGetControllerInfoSelect = 0x0025 +kMCSetClipSelect = 0x0028 +kMCGetClipSelect = 0x0029 +kMCDrawBadgeSelect = 0x002A +kMCSetUpEditMenuSelect = 0x002B +kMCGetMenuStringSelect = 0x002C +kMCSetActionFilterWithRefConSelect = 0x002D +kMCPtInControllerSelect = 0x002E +kMCInvalidateSelect = 0x002F +kMCAdjustCursorSelect = 0x0030 +kMCGetInterfaceElementSelect = 0x0031 +kMCGetDoActionsProcSelect = 0x0032 +kMCAddMovieSegmentSelect = 0x0033 +kMCTrimMovieSegmentSelect = 0x0034 +kMCSetIdleManagerSelect = 0x0035 +kMCSetControllerCapabilitiesSelect = 0x0036 +kMusicMediaGetIndexedTunePlayerSelect = 0x0101 +kRawCodecType = FOUR_CHAR_CODE('raw ') +kCinepakCodecType = FOUR_CHAR_CODE('cvid') +kGraphicsCodecType = FOUR_CHAR_CODE('smc ') +kAnimationCodecType = FOUR_CHAR_CODE('rle ') +kVideoCodecType = FOUR_CHAR_CODE('rpza') +kComponentVideoCodecType = FOUR_CHAR_CODE('yuv2') +kJPEGCodecType = FOUR_CHAR_CODE('jpeg') +kMotionJPEGACodecType = FOUR_CHAR_CODE('mjpa') +kMotionJPEGBCodecType = FOUR_CHAR_CODE('mjpb') +kSGICodecType = FOUR_CHAR_CODE('.SGI') +kPlanarRGBCodecType = FOUR_CHAR_CODE('8BPS') +kMacPaintCodecType = FOUR_CHAR_CODE('PNTG') +kGIFCodecType = FOUR_CHAR_CODE('gif ') +kPhotoCDCodecType = FOUR_CHAR_CODE('kpcd') +kQuickDrawGXCodecType = FOUR_CHAR_CODE('qdgx') +kAVRJPEGCodecType = FOUR_CHAR_CODE('avr ') +kOpenDMLJPEGCodecType = FOUR_CHAR_CODE('dmb1') +kBMPCodecType = FOUR_CHAR_CODE('WRLE') +kWindowsRawCodecType = FOUR_CHAR_CODE('WRAW') +kVectorCodecType = FOUR_CHAR_CODE('path') +kQuickDrawCodecType = FOUR_CHAR_CODE('qdrw') +kWaterRippleCodecType = FOUR_CHAR_CODE('ripl') +kFireCodecType = FOUR_CHAR_CODE('fire') +kCloudCodecType = FOUR_CHAR_CODE('clou') +kH261CodecType = FOUR_CHAR_CODE('h261') +kH263CodecType = FOUR_CHAR_CODE('h263') +kDVCNTSCCodecType = FOUR_CHAR_CODE('dvc ') +kDVCPALCodecType = FOUR_CHAR_CODE('dvcp') +kDVCProPALCodecType = FOUR_CHAR_CODE('dvpp') +kBaseCodecType = FOUR_CHAR_CODE('base') +kFLCCodecType = FOUR_CHAR_CODE('flic') +kTargaCodecType = FOUR_CHAR_CODE('tga ') +kPNGCodecType = FOUR_CHAR_CODE('png ') +kTIFFCodecType = FOUR_CHAR_CODE('tiff') +kComponentVideoSigned = FOUR_CHAR_CODE('yuvu') +kComponentVideoUnsigned = FOUR_CHAR_CODE('yuvs') +kCMYKCodecType = FOUR_CHAR_CODE('cmyk') +kMicrosoftVideo1CodecType = FOUR_CHAR_CODE('msvc') +kSorensonCodecType = FOUR_CHAR_CODE('SVQ1') +kSorenson3CodecType = FOUR_CHAR_CODE('SVQ3') +kIndeo4CodecType = FOUR_CHAR_CODE('IV41') +kMPEG4VisualCodecType = FOUR_CHAR_CODE('mp4v') +k64ARGBCodecType = FOUR_CHAR_CODE('b64a') +k48RGBCodecType = FOUR_CHAR_CODE('b48r') +k32AlphaGrayCodecType = FOUR_CHAR_CODE('b32a') +k16GrayCodecType = FOUR_CHAR_CODE('b16g') +kMpegYUV420CodecType = FOUR_CHAR_CODE('myuv') +kYUV420CodecType = FOUR_CHAR_CODE('y420') +kSorensonYUV9CodecType = FOUR_CHAR_CODE('syv9') +k422YpCbCr8CodecType = FOUR_CHAR_CODE('2vuy') +k444YpCbCr8CodecType = FOUR_CHAR_CODE('v308') +k4444YpCbCrA8CodecType = FOUR_CHAR_CODE('v408') +k422YpCbCr16CodecType = FOUR_CHAR_CODE('v216') +k422YpCbCr10CodecType = FOUR_CHAR_CODE('v210') +k444YpCbCr10CodecType = FOUR_CHAR_CODE('v410') +k4444YpCbCrA8RCodecType = FOUR_CHAR_CODE('r408') +kBlurImageFilterType = FOUR_CHAR_CODE('blur') +kSharpenImageFilterType = FOUR_CHAR_CODE('shrp') +kEdgeDetectImageFilterType = FOUR_CHAR_CODE('edge') +kEmbossImageFilterType = FOUR_CHAR_CODE('embs') +kConvolveImageFilterType = FOUR_CHAR_CODE('genk') +kAlphaGainImageFilterType = FOUR_CHAR_CODE('gain') +kRGBColorBalanceImageFilterType = FOUR_CHAR_CODE('rgbb') +kHSLColorBalanceImageFilterType = FOUR_CHAR_CODE('hslb') +kColorSyncImageFilterType = FOUR_CHAR_CODE('sync') +kFilmNoiseImageFilterType = FOUR_CHAR_CODE('fmns') +kSolarizeImageFilterType = FOUR_CHAR_CODE('solr') +kColorTintImageFilterType = FOUR_CHAR_CODE('tint') +kLensFlareImageFilterType = FOUR_CHAR_CODE('lens') +kBrightnessContrastImageFilterType = FOUR_CHAR_CODE('brco') +kAlphaCompositorTransitionType = FOUR_CHAR_CODE('blnd') +kCrossFadeTransitionType = FOUR_CHAR_CODE('dslv') +kChannelCompositeEffectType = FOUR_CHAR_CODE('chan') +kChromaKeyTransitionType = FOUR_CHAR_CODE('ckey') +kImplodeTransitionType = FOUR_CHAR_CODE('mplo') +kExplodeTransitionType = FOUR_CHAR_CODE('xplo') +kGradientTransitionType = FOUR_CHAR_CODE('matt') +kPushTransitionType = FOUR_CHAR_CODE('push') +kSlideTransitionType = FOUR_CHAR_CODE('slid') +kWipeTransitionType = FOUR_CHAR_CODE('smpt') +kIrisTransitionType = FOUR_CHAR_CODE('smp2') +kRadialTransitionType = FOUR_CHAR_CODE('smp3') +kMatrixTransitionType = FOUR_CHAR_CODE('smp4') +kZoomTransitionType = FOUR_CHAR_CODE('zoom') +kTravellingMatteEffectType = FOUR_CHAR_CODE('trav') +kCMYKPixelFormat = FOUR_CHAR_CODE('cmyk') +k64ARGBPixelFormat = FOUR_CHAR_CODE('b64a') +k48RGBPixelFormat = FOUR_CHAR_CODE('b48r') +k32AlphaGrayPixelFormat = FOUR_CHAR_CODE('b32a') +k16GrayPixelFormat = FOUR_CHAR_CODE('b16g') +k422YpCbCr8PixelFormat = FOUR_CHAR_CODE('2vuy') +k4444YpCbCrA8PixelFormat = FOUR_CHAR_CODE('v408') +k4444YpCbCrA8RPixelFormat = FOUR_CHAR_CODE('r408') +kYUV420PixelFormat = FOUR_CHAR_CODE('y420') +codecInfoDoes1 = (1L << 0) +codecInfoDoes2 = (1L << 1) +codecInfoDoes4 = (1L << 2) +codecInfoDoes8 = (1L << 3) +codecInfoDoes16 = (1L << 4) +codecInfoDoes32 = (1L << 5) +codecInfoDoesDither = (1L << 6) +codecInfoDoesStretch = (1L << 7) +codecInfoDoesShrink = (1L << 8) +codecInfoDoesMask = (1L << 9) +codecInfoDoesTemporal = (1L << 10) +codecInfoDoesDouble = (1L << 11) +codecInfoDoesQuad = (1L << 12) +codecInfoDoesHalf = (1L << 13) +codecInfoDoesQuarter = (1L << 14) +codecInfoDoesRotate = (1L << 15) +codecInfoDoesHorizFlip = (1L << 16) +codecInfoDoesVertFlip = (1L << 17) +codecInfoHasEffectParameterList = (1L << 18) +codecInfoDoesBlend = (1L << 19) +codecInfoDoesWarp = (1L << 20) +codecInfoDoesRecompress = (1L << 21) +codecInfoDoesSpool = (1L << 22) +codecInfoDoesRateConstrain = (1L << 23) +codecInfoDepth1 = (1L << 0) +codecInfoDepth2 = (1L << 1) +codecInfoDepth4 = (1L << 2) +codecInfoDepth8 = (1L << 3) +codecInfoDepth16 = (1L << 4) +codecInfoDepth32 = (1L << 5) +codecInfoDepth24 = (1L << 6) +codecInfoDepth33 = (1L << 7) +codecInfoDepth34 = (1L << 8) +codecInfoDepth36 = (1L << 9) +codecInfoDepth40 = (1L << 10) +codecInfoStoresClut = (1L << 11) +codecInfoDoesLossless = (1L << 12) +codecInfoSequenceSensitive = (1L << 13) +codecFlagUseImageBuffer = (1L << 0) +codecFlagUseScreenBuffer = (1L << 1) +codecFlagUpdatePrevious = (1L << 2) +codecFlagNoScreenUpdate = (1L << 3) +codecFlagWasCompressed = (1L << 4) +codecFlagDontOffscreen = (1L << 5) +codecFlagUpdatePreviousComp = (1L << 6) +codecFlagForceKeyFrame = (1L << 7) +codecFlagOnlyScreenUpdate = (1L << 8) +codecFlagLiveGrab = (1L << 9) +codecFlagDiffFrame = (1L << 9) +codecFlagDontUseNewImageBuffer = (1L << 10) +codecFlagInterlaceUpdate = (1L << 11) +codecFlagCatchUpDiff = (1L << 12) +codecFlagSupportDisable = (1L << 13) +codecFlagReenable = (1L << 14) +codecFlagOutUpdateOnNextIdle = (1L << 9) +codecFlagOutUpdateOnDataSourceChange = (1L << 10) +codecFlagSequenceSensitive = (1L << 11) +codecFlagOutUpdateOnTimeChange = (1L << 12) +codecFlagImageBufferNotSourceImage = (1L << 13) +codecFlagUsedNewImageBuffer = (1L << 14) +codecFlagUsedImageBuffer = (1L << 15) +codecMinimumDataSize = 32768L +compressorComponentType = FOUR_CHAR_CODE('imco') +decompressorComponentType = FOUR_CHAR_CODE('imdc') +codecLosslessQuality = 0x00000400 +codecMaxQuality = 0x000003FF +codecMinQuality = 0x00000000 +codecLowQuality = 0x00000100 +codecNormalQuality = 0x00000200 +codecHighQuality = 0x00000300 +codecLockBitsShieldCursor = (1 << 0) +codecCompletionSource = (1 << 0) +codecCompletionDest = (1 << 1) +codecCompletionDontUnshield = (1 << 2) +codecCompletionWentOffscreen = (1 << 3) +codecCompletionUnlockBits = (1 << 4) +codecCompletionForceChainFlush = (1 << 5) +codecCompletionDropped = (1 << 6) +codecProgressOpen = 0 +codecProgressUpdatePercent = 1 +codecProgressClose = 2 +defaultDither = 0 +forceDither = 1 +suppressDither = 2 +useColorMatching = 4 +callStdBits = 1 +callOldBits = 2 +noDefaultOpcodes = 4 +graphicsModeStraightAlpha = 256 +graphicsModePreWhiteAlpha = 257 +graphicsModePreBlackAlpha = 258 +graphicsModeComposition = 259 +graphicsModeStraightAlphaBlend = 260 +graphicsModePreMulColorAlpha = 261 +evenField1ToEvenFieldOut = 1 << 0 +evenField1ToOddFieldOut = 1 << 1 +oddField1ToEvenFieldOut = 1 << 2 +oddField1ToOddFieldOut = 1 << 3 +evenField2ToEvenFieldOut = 1 << 4 +evenField2ToOddFieldOut = 1 << 5 +oddField2ToEvenFieldOut = 1 << 6 +oddField2ToOddFieldOut = 1 << 7 +icmFrameTimeHasVirtualStartTimeAndDuration = 1 << 0 +codecDSequenceDisableOverlaySurface = (1L << 5) +codecDSequenceSingleField = (1L << 6) +codecDSequenceBidirectionalPrediction = (1L << 7) +codecDSequenceFlushInsteadOfDirtying = (1L << 8) +codecDSequenceEnableSubPixelPositioning = (1L << 9) +kICMSequenceTaskWeight = FOUR_CHAR_CODE('twei') +kICMSequenceTaskName = FOUR_CHAR_CODE('tnam') +kICMSequenceUserPreferredCodecs = FOUR_CHAR_CODE('punt') +kImageDescriptionSampleFormat = FOUR_CHAR_CODE('idfm') +kImageDescriptionClassicAtomFormat = FOUR_CHAR_CODE('atom') +kImageDescriptionQTAtomFormat = FOUR_CHAR_CODE('qtat') +kImageDescriptionEffectDataFormat = FOUR_CHAR_CODE('fxat') +kImageDescriptionPrivateDataFormat = FOUR_CHAR_CODE('priv') +kImageDescriptionAlternateCodec = FOUR_CHAR_CODE('subs') +kImageDescriptionColorSpace = FOUR_CHAR_CODE('cspc') +sfpItemPreviewAreaUser = 11 +sfpItemPreviewStaticText = 12 +sfpItemPreviewDividerUser = 13 +sfpItemCreatePreviewButton = 14 +sfpItemShowPreviewButton = 15 +kICMPixelFormatIsPlanarMask = 0x0F +kICMPixelFormatIsIndexed = (1L << 4) +kICMPixelFormatIsSupportedByQD = (1L << 5) +kICMPixelFormatIsMonochrome = (1L << 6) +kICMPixelFormatHasAlphaChannel = (1L << 7) +kICMGetChainUltimateParent = 0 +kICMGetChainParent = 1 +kICMGetChainChild = 2 +kICMGetChainUltimateChild = 3 +kDontUseValidateToFindGraphicsImporter = 1L << 0 +kICMTempThenAppMemory = 1L << 12 +kICMAppThenTempMemory = 1L << 13 +kQTUsePlatformDefaultGammaLevel = 0 +kQTUseSourceGammaLevel = -1L +kQTCCIR601VideoGammaLevel = 0x00023333 +identityMatrixType = 0x00 +translateMatrixType = 0x01 +scaleMatrixType = 0x02 +scaleTranslateMatrixType = 0x03 +linearMatrixType = 0x04 +linearTranslateMatrixType = 0x05 +perspectiveMatrixType = 0x06 +GraphicsImporterComponentType = FOUR_CHAR_CODE('grip') +graphicsImporterUsesImageDecompressor = 1L << 23 +quickTimeImageFileImageDescriptionAtom = FOUR_CHAR_CODE('idsc') +quickTimeImageFileImageDataAtom = FOUR_CHAR_CODE('idat') +quickTimeImageFileMetaDataAtom = FOUR_CHAR_CODE('meta') +quickTimeImageFileColorSyncProfileAtom = FOUR_CHAR_CODE('iicc') +graphicsImporterDrawsAllPixels = 0 +graphicsImporterDoesntDrawAllPixels = 1 +graphicsImporterDontKnowIfDrawAllPixels = 2 +kGraphicsImporterDontDoGammaCorrection = 1L << 0 +kGraphicsImporterTrustResolutionFromFile = 1L << 1 +kGraphicsImporterEnableSubPixelPositioning = 1L << 2 +kGraphicsExportGroup = FOUR_CHAR_CODE('expo') +kGraphicsExportFileType = FOUR_CHAR_CODE('ftyp') +kGraphicsExportMIMEType = FOUR_CHAR_CODE('mime') +kGraphicsExportExtension = FOUR_CHAR_CODE('ext ') +kGraphicsExportDescription = FOUR_CHAR_CODE('desc') +kQTPhotoshopLayerMode = FOUR_CHAR_CODE('lmod') +kQTPhotoshopLayerOpacity = FOUR_CHAR_CODE('lopa') +kQTPhotoshopLayerClipping = FOUR_CHAR_CODE('lclp') +kQTPhotoshopLayerFlags = FOUR_CHAR_CODE('lflg') +kQTPhotoshopLayerName = FOUR_CHAR_CODE('\xa9lnm') +kQTPhotoshopLayerUnicodeName = FOUR_CHAR_CODE('luni') +kQTIndexedImageType = FOUR_CHAR_CODE('nth?') +kQTIndexedImageIsThumbnail = FOUR_CHAR_CODE('n=th') +kQTIndexedImageIsLayer = FOUR_CHAR_CODE('n=ly') +kQTIndexedImageIsPage = FOUR_CHAR_CODE('n=pg') +kQTIndexedImageIsMultiResolution = FOUR_CHAR_CODE('n=rs') +kQTTIFFUserDataPrefix = 0x74690000 +kQTTIFFExifUserDataPrefix = 0x65780000 +kQTTIFFExifGPSUserDataPrefix = 0x67700000 +kQTAlphaMode = FOUR_CHAR_CODE('almo') +kQTAlphaModePreMulColor = FOUR_CHAR_CODE('almp') +kUserDataIPTC = FOUR_CHAR_CODE('iptc') +kQTTIFFUserDataOrientation = 0x74690112 +kQTTIFFUserDataTransferFunction = 0x7469012D +kQTTIFFUserDataWhitePoint = 0x7469013E +kQTTIFFUserDataPrimaryChromaticities = 0x7469013F +kQTTIFFUserDataTransferRange = 0x74690156 +kQTTIFFUserDataYCbCrPositioning = 0x74690213 +kQTTIFFUserDataReferenceBlackWhite = 0x74690214 +kQTTIFFUserDataModelPixelScale = 0x7469830E +kQTTIFFUserDataModelTransformation = 0x746985D8 +kQTTIFFUserDataModelTiepoint = 0x74698482 +kQTTIFFUserDataGeoKeyDirectory = 0x746987AF +kQTTIFFUserDataGeoDoubleParams = 0x746987B0 +kQTTIFFUserDataGeoAsciiParams = 0x746987B1 +kQTTIFFUserDataIntergraphMatrix = 0x74698480 +kQTExifUserDataExifVersion = 0x65789000 +kQTExifUserDataFlashPixVersion = 0x6578A000 +kQTExifUserDataColorSpace = 0x6578A001 +kQTExifUserDataComponentsConfiguration = 0x65789101 +kQTExifUserDataCompressedBitsPerPixel = 0x65789102 +kQTExifUserDataPixelXDimension = 0x6578A002 +kQTExifUserDataPixelYDimension = 0x6578A003 +kQTExifUserDataMakerNote = 0x6578927C +kQTExifUserDataUserComment = 0x6578928C +kQTExifUserDataRelatedSoundFile = 0x6578A004 +kQTExifUserDataDateTimeOriginal = 0x65789003 +kQTExifUserDataDateTimeDigitized = 0x65789004 +kQTExifUserDataSubSecTime = 0x65789290 +kQTExifUserDataSubSecTimeOriginal = 0x65789291 +kQTExifUserDataSubSecTimeDigitized = 0x65789292 +kQTExifUserDataExposureTime = 0x6578829A +kQTExifUserDataFNumber = 0x6578829D +kQTExifUserDataExposureProgram = 0x65788822 +kQTExifUserDataSpectralSensitivity = 0x65788824 +kQTExifUserDataISOSpeedRatings = 0x65788827 +kQTExifUserDataShutterSpeedValue = 0x65789201 +kQTExifUserDataApertureValue = 0x65789202 +kQTExifUserDataBrightnessValue = 0x65789203 +kQTExifUserDataExposureBiasValue = 0x65789204 +kQTExifUserDataMaxApertureValue = 0x65789205 +kQTExifUserDataSubjectDistance = 0x65789206 +kQTExifUserDataMeteringMode = 0x65789207 +kQTExifUserDataLightSource = 0x65789208 +kQTExifUserDataFlash = 0x65789209 +kQTExifUserDataFocalLength = 0x6578920A +kQTExifUserDataFlashEnergy = 0x6578A20B +kQTExifUserDataFocalPlaneXResolution = 0x6578A20E +kQTExifUserDataFocalPlaneYResolution = 0x6578A20F +kQTExifUserDataFocalPlaneResolutionUnit = 0x6578A210 +kQTExifUserDataSubjectLocation = 0x6578A214 +kQTExifUserDataExposureIndex = 0x6578A215 +kQTExifUserDataSensingMethod = 0x6578A217 +kQTExifUserDataFileSource = 0x6578A300 +kQTExifUserDataSceneType = 0x6578A301 +kQTExifUserDataGPSVersionID = 0x06770000 +kQTExifUserDataGPSLatitudeRef = 0x06770001 +kQTExifUserDataGPSLatitude = 0x06770002 +kQTExifUserDataGPSLongitudeRef = 0x06770003 +kQTExifUserDataGPSLongitude = 0x06770004 +kQTExifUserDataGPSAltitudeRef = 0x06770005 +kQTExifUserDataGPSAltitude = 0x06770006 +kQTExifUserDataGPSTimeStamp = 0x06770007 +kQTExifUserDataGPSSatellites = 0x06770008 +kQTExifUserDataGPSStatus = 0x06770009 +kQTExifUserDataGPSMeasureMode = 0x0677000A +kQTExifUserDataGPSDOP = 0x0677000B +kQTExifUserDataGPSSpeedRef = 0x0677000C +kQTExifUserDataGPSSpeed = 0x0677000D +kQTExifUserDataGPSTrackRef = 0x0677000E +kQTExifUserDataGPSTrack = 0x0677000F +kQTExifUserDataGPSImgDirectionRef = 0x06770010 +kQTExifUserDataGPSImgDirection = 0x06770011 +kQTExifUserDataGPSMapDatum = 0x06770012 +kQTExifUserDataGPSDestLatitudeRef = 0x06770013 +kQTExifUserDataGPSDestLatitude = 0x06770014 +kQTExifUserDataGPSDestLongitudeRef = 0x06770015 +kQTExifUserDataGPSDestLongitude = 0x06770016 +kQTExifUserDataGPSDestBearingRef = 0x06770017 +kQTExifUserDataGPSDestBearing = 0x06770018 +kQTExifUserDataGPSDestDistanceRef = 0x06770019 +kQTExifUserDataGPSDestDistance = 0x0677001A +GraphicsExporterComponentType = FOUR_CHAR_CODE('grex') +kBaseGraphicsExporterSubType = FOUR_CHAR_CODE('base') +graphicsExporterIsBaseExporter = 1L << 0 +graphicsExporterCanTranscode = 1L << 1 +graphicsExporterUsesImageCompressor = 1L << 2 +kQTResolutionSettings = FOUR_CHAR_CODE('reso') +kQTTargetDataSize = FOUR_CHAR_CODE('dasz') +kQTDontRecompress = FOUR_CHAR_CODE('dntr') +kQTInterlaceStyle = FOUR_CHAR_CODE('ilac') +kQTColorSyncProfile = FOUR_CHAR_CODE('iccp') +kQTThumbnailSettings = FOUR_CHAR_CODE('thum') +kQTEnableExif = FOUR_CHAR_CODE('exif') +kQTMetaData = FOUR_CHAR_CODE('meta') +kQTTIFFCompressionMethod = FOUR_CHAR_CODE('tifc') +kQTTIFFCompression_None = 1 +kQTTIFFCompression_PackBits = 32773L +kQTTIFFLittleEndian = FOUR_CHAR_CODE('tife') +kQTPNGFilterPreference = FOUR_CHAR_CODE('pngf') +kQTPNGFilterBestForColorType = FOUR_CHAR_CODE('bflt') +kQTPNGFilterNone = 0 +kQTPNGFilterSub = 1 +kQTPNGFilterUp = 2 +kQTPNGFilterAverage = 3 +kQTPNGFilterPaeth = 4 +kQTPNGFilterAdaptivePerRow = FOUR_CHAR_CODE('aflt') +kQTPNGInterlaceStyle = FOUR_CHAR_CODE('ilac') +kQTPNGInterlaceNone = 0 +kQTPNGInterlaceAdam7 = 1 +ImageTranscodererComponentType = FOUR_CHAR_CODE('imtc') +kGraphicsImportSetDataReferenceSelect = 0x0001 +kGraphicsImportGetDataReferenceSelect = 0x0002 +kGraphicsImportSetDataFileSelect = 0x0003 +kGraphicsImportGetDataFileSelect = 0x0004 +kGraphicsImportSetDataHandleSelect = 0x0005 +kGraphicsImportGetDataHandleSelect = 0x0006 +kGraphicsImportGetImageDescriptionSelect = 0x0007 +kGraphicsImportGetDataOffsetAndSizeSelect = 0x0008 +kGraphicsImportReadDataSelect = 0x0009 +kGraphicsImportSetClipSelect = 0x000A +kGraphicsImportGetClipSelect = 0x000B +kGraphicsImportSetSourceRectSelect = 0x000C +kGraphicsImportGetSourceRectSelect = 0x000D +kGraphicsImportGetNaturalBoundsSelect = 0x000E +kGraphicsImportDrawSelect = 0x000F +kGraphicsImportSetGWorldSelect = 0x0010 +kGraphicsImportGetGWorldSelect = 0x0011 +kGraphicsImportSetMatrixSelect = 0x0012 +kGraphicsImportGetMatrixSelect = 0x0013 +kGraphicsImportSetBoundsRectSelect = 0x0014 +kGraphicsImportGetBoundsRectSelect = 0x0015 +kGraphicsImportSaveAsPictureSelect = 0x0016 +kGraphicsImportSetGraphicsModeSelect = 0x0017 +kGraphicsImportGetGraphicsModeSelect = 0x0018 +kGraphicsImportSetQualitySelect = 0x0019 +kGraphicsImportGetQualitySelect = 0x001A +kGraphicsImportSaveAsQuickTimeImageFileSelect = 0x001B +kGraphicsImportSetDataReferenceOffsetAndLimitSelect = 0x001C +kGraphicsImportGetDataReferenceOffsetAndLimitSelect = 0x001D +kGraphicsImportGetAliasedDataReferenceSelect = 0x001E +kGraphicsImportValidateSelect = 0x001F +kGraphicsImportGetMetaDataSelect = 0x0020 +kGraphicsImportGetMIMETypeListSelect = 0x0021 +kGraphicsImportDoesDrawAllPixelsSelect = 0x0022 +kGraphicsImportGetAsPictureSelect = 0x0023 +kGraphicsImportExportImageFileSelect = 0x0024 +kGraphicsImportGetExportImageTypeListSelect = 0x0025 +kGraphicsImportDoExportImageFileDialogSelect = 0x0026 +kGraphicsImportGetExportSettingsAsAtomContainerSelect = 0x0027 +kGraphicsImportSetExportSettingsFromAtomContainerSelect = 0x0028 +kGraphicsImportSetProgressProcSelect = 0x0029 +kGraphicsImportGetProgressProcSelect = 0x002A +kGraphicsImportGetImageCountSelect = 0x002B +kGraphicsImportSetImageIndexSelect = 0x002C +kGraphicsImportGetImageIndexSelect = 0x002D +kGraphicsImportGetDataOffsetAndSize64Select = 0x002E +kGraphicsImportReadData64Select = 0x002F +kGraphicsImportSetDataReferenceOffsetAndLimit64Select = 0x0030 +kGraphicsImportGetDataReferenceOffsetAndLimit64Select = 0x0031 +kGraphicsImportGetDefaultMatrixSelect = 0x0032 +kGraphicsImportGetDefaultClipSelect = 0x0033 +kGraphicsImportGetDefaultGraphicsModeSelect = 0x0034 +kGraphicsImportGetDefaultSourceRectSelect = 0x0035 +kGraphicsImportGetColorSyncProfileSelect = 0x0036 +kGraphicsImportSetDestRectSelect = 0x0037 +kGraphicsImportGetDestRectSelect = 0x0038 +kGraphicsImportSetFlagsSelect = 0x0039 +kGraphicsImportGetFlagsSelect = 0x003A +kGraphicsImportGetBaseDataOffsetAndSize64Select = 0x003D +kGraphicsImportSetImageIndexToThumbnailSelect = 0x003E +kGraphicsExportDoExportSelect = 0x0001 +kGraphicsExportCanTranscodeSelect = 0x0002 +kGraphicsExportDoTranscodeSelect = 0x0003 +kGraphicsExportCanUseCompressorSelect = 0x0004 +kGraphicsExportDoUseCompressorSelect = 0x0005 +kGraphicsExportDoStandaloneExportSelect = 0x0006 +kGraphicsExportGetDefaultFileTypeAndCreatorSelect = 0x0007 +kGraphicsExportGetDefaultFileNameExtensionSelect = 0x0008 +kGraphicsExportGetMIMETypeListSelect = 0x0009 +kGraphicsExportRequestSettingsSelect = 0x000B +kGraphicsExportSetSettingsFromAtomContainerSelect = 0x000C +kGraphicsExportGetSettingsAsAtomContainerSelect = 0x000D +kGraphicsExportGetSettingsAsTextSelect = 0x000E +kGraphicsExportSetDontRecompressSelect = 0x000F +kGraphicsExportGetDontRecompressSelect = 0x0010 +kGraphicsExportSetInterlaceStyleSelect = 0x0011 +kGraphicsExportGetInterlaceStyleSelect = 0x0012 +kGraphicsExportSetMetaDataSelect = 0x0013 +kGraphicsExportGetMetaDataSelect = 0x0014 +kGraphicsExportSetTargetDataSizeSelect = 0x0015 +kGraphicsExportGetTargetDataSizeSelect = 0x0016 +kGraphicsExportSetCompressionMethodSelect = 0x0017 +kGraphicsExportGetCompressionMethodSelect = 0x0018 +kGraphicsExportSetCompressionQualitySelect = 0x0019 +kGraphicsExportGetCompressionQualitySelect = 0x001A +kGraphicsExportSetResolutionSelect = 0x001B +kGraphicsExportGetResolutionSelect = 0x001C +kGraphicsExportSetDepthSelect = 0x001D +kGraphicsExportGetDepthSelect = 0x001E +kGraphicsExportSetColorSyncProfileSelect = 0x0021 +kGraphicsExportGetColorSyncProfileSelect = 0x0022 +kGraphicsExportSetProgressProcSelect = 0x0023 +kGraphicsExportGetProgressProcSelect = 0x0024 +kGraphicsExportSetInputDataReferenceSelect = 0x0025 +kGraphicsExportGetInputDataReferenceSelect = 0x0026 +kGraphicsExportSetInputFileSelect = 0x0027 +kGraphicsExportGetInputFileSelect = 0x0028 +kGraphicsExportSetInputHandleSelect = 0x0029 +kGraphicsExportGetInputHandleSelect = 0x002A +kGraphicsExportSetInputPtrSelect = 0x002B +kGraphicsExportGetInputPtrSelect = 0x002C +kGraphicsExportSetInputGraphicsImporterSelect = 0x002D +kGraphicsExportGetInputGraphicsImporterSelect = 0x002E +kGraphicsExportSetInputPictureSelect = 0x002F +kGraphicsExportGetInputPictureSelect = 0x0030 +kGraphicsExportSetInputGWorldSelect = 0x0031 +kGraphicsExportGetInputGWorldSelect = 0x0032 +kGraphicsExportSetInputPixmapSelect = 0x0033 +kGraphicsExportGetInputPixmapSelect = 0x0034 +kGraphicsExportSetInputOffsetAndLimitSelect = 0x0035 +kGraphicsExportGetInputOffsetAndLimitSelect = 0x0036 +kGraphicsExportMayExporterReadInputDataSelect = 0x0037 +kGraphicsExportGetInputDataSizeSelect = 0x0038 +kGraphicsExportReadInputDataSelect = 0x0039 +kGraphicsExportGetInputImageDescriptionSelect = 0x003A +kGraphicsExportGetInputImageDimensionsSelect = 0x003B +kGraphicsExportGetInputImageDepthSelect = 0x003C +kGraphicsExportDrawInputImageSelect = 0x003D +kGraphicsExportSetOutputDataReferenceSelect = 0x003E +kGraphicsExportGetOutputDataReferenceSelect = 0x003F +kGraphicsExportSetOutputFileSelect = 0x0040 +kGraphicsExportGetOutputFileSelect = 0x0041 +kGraphicsExportSetOutputHandleSelect = 0x0042 +kGraphicsExportGetOutputHandleSelect = 0x0043 +kGraphicsExportSetOutputOffsetAndMaxSizeSelect = 0x0044 +kGraphicsExportGetOutputOffsetAndMaxSizeSelect = 0x0045 +kGraphicsExportSetOutputFileTypeAndCreatorSelect = 0x0046 +kGraphicsExportGetOutputFileTypeAndCreatorSelect = 0x0047 +kGraphicsExportWriteOutputDataSelect = 0x0048 +kGraphicsExportSetOutputMarkSelect = 0x0049 +kGraphicsExportGetOutputMarkSelect = 0x004A +kGraphicsExportReadOutputDataSelect = 0x004B +kGraphicsExportSetThumbnailEnabledSelect = 0x004C +kGraphicsExportGetThumbnailEnabledSelect = 0x004D +kGraphicsExportSetExifEnabledSelect = 0x004E +kGraphicsExportGetExifEnabledSelect = 0x004F +kImageTranscoderBeginSequenceSelect = 0x0001 +kImageTranscoderConvertSelect = 0x0002 +kImageTranscoderDisposeDataSelect = 0x0003 +kImageTranscoderEndSequenceSelect = 0x0004 +clockComponentType = FOUR_CHAR_CODE('clok') +systemTickClock = FOUR_CHAR_CODE('tick') +systemSecondClock = FOUR_CHAR_CODE('seco') +systemMillisecondClock = FOUR_CHAR_CODE('mill') +systemMicrosecondClock = FOUR_CHAR_CODE('micr') +kClockRateIsLinear = 1 +kClockImplementsCallBacks = 2 +kClockCanHandleIntermittentSound = 4 +StandardCompressionType = FOUR_CHAR_CODE('scdi') +StandardCompressionSubType = FOUR_CHAR_CODE('imag') +StandardCompressionSubTypeSound = FOUR_CHAR_CODE('soun') +scListEveryCodec = 1L << 1 +scAllowZeroFrameRate = 1L << 2 +scAllowZeroKeyFrameRate = 1L << 3 +scShowBestDepth = 1L << 4 +scUseMovableModal = 1L << 5 +scDisableFrameRateItem = 1L << 6 +scShowDataRateAsKilobits = 1L << 7 +scPreferCropping = 1 << 0 +scPreferScaling = 1 << 1 +scPreferScalingAndCropping = scPreferScaling | scPreferCropping +scDontDetermineSettingsFromTestImage = 1 << 2 +scTestImageWidth = 80 +scTestImageHeight = 80 +scOKItem = 1 +scCancelItem = 2 +scCustomItem = 3 +scUserCancelled = 1 +scPositionRect = 2 +scPositionDialog = 3 +scSetTestImagePictHandle = 4 +scSetTestImagePictFile = 5 +scSetTestImagePixMap = 6 +scGetBestDeviceRect = 7 +scRequestImageSettings = 10 +scCompressImage = 11 +scCompressPicture = 12 +scCompressPictureFile = 13 +scRequestSequenceSettings = 14 +scCompressSequenceBegin = 15 +scCompressSequenceFrame = 16 +scCompressSequenceEnd = 17 +scDefaultPictHandleSettings = 18 +scDefaultPictFileSettings = 19 +scDefaultPixMapSettings = 20 +scGetInfo = 21 +scSetInfo = 22 +scNewGWorld = 23 +scSpatialSettingsType = FOUR_CHAR_CODE('sptl') +scTemporalSettingsType = FOUR_CHAR_CODE('tprl') +scDataRateSettingsType = FOUR_CHAR_CODE('drat') +scColorTableType = FOUR_CHAR_CODE('clut') +scProgressProcType = FOUR_CHAR_CODE('prog') +scExtendedProcsType = FOUR_CHAR_CODE('xprc') +scPreferenceFlagsType = FOUR_CHAR_CODE('pref') +scSettingsStateType = FOUR_CHAR_CODE('ssta') +scSequenceIDType = FOUR_CHAR_CODE('sequ') +scWindowPositionType = FOUR_CHAR_CODE('wndw') +scCodecFlagsType = FOUR_CHAR_CODE('cflg') +scCodecSettingsType = FOUR_CHAR_CODE('cdec') +scForceKeyValueType = FOUR_CHAR_CODE('ksim') +scSoundSampleRateType = FOUR_CHAR_CODE('ssrt') +scSoundSampleSizeType = FOUR_CHAR_CODE('ssss') +scSoundChannelCountType = FOUR_CHAR_CODE('sscc') +scSoundCompressionType = FOUR_CHAR_CODE('ssct') +scCompressionListType = FOUR_CHAR_CODE('ctyl') +scCodecManufacturerType = FOUR_CHAR_CODE('cmfr') +scSoundVBRCompressionOK = FOUR_CHAR_CODE('cvbr') +scSoundInputSampleRateType = FOUR_CHAR_CODE('ssir') +scSoundSampleRateChangeOK = FOUR_CHAR_CODE('rcok') +scAvailableCompressionListType = FOUR_CHAR_CODE('avai') +scGetCompression = 1 +scShowMotionSettings = 1L << 0 +scSettingsChangedItem = -1 +scCompressFlagIgnoreIdenticalFrames = 1 +kQTSettingsVideo = FOUR_CHAR_CODE('vide') +kQTSettingsSound = FOUR_CHAR_CODE('soun') +kQTSettingsComponentVersion = FOUR_CHAR_CODE('vers') +TweenComponentType = FOUR_CHAR_CODE('twen') +TCSourceRefNameType = FOUR_CHAR_CODE('name') +tcDropFrame = 1 << 0 +tc24HourMax = 1 << 1 +tcNegTimesOK = 1 << 2 +tcCounter = 1 << 3 +tctNegFlag = 0x80 +tcdfShowTimeCode = 1 << 0 +MovieImportType = FOUR_CHAR_CODE('eat ') +MovieExportType = FOUR_CHAR_CODE('spit') +canMovieImportHandles = 1 << 0 +canMovieImportFiles = 1 << 1 +hasMovieImportUserInterface = 1 << 2 +canMovieExportHandles = 1 << 3 +canMovieExportFiles = 1 << 4 +hasMovieExportUserInterface = 1 << 5 +movieImporterIsXMLBased = 1 << 5 +dontAutoFileMovieImport = 1 << 6 +canMovieExportAuxDataHandle = 1 << 7 +canMovieImportValidateHandles = 1 << 8 +canMovieImportValidateFile = 1 << 9 +dontRegisterWithEasyOpen = 1 << 10 +canMovieImportInPlace = 1 << 11 +movieImportSubTypeIsFileExtension = 1 << 12 +canMovieImportPartial = 1 << 13 +hasMovieImportMIMEList = 1 << 14 +canMovieImportAvoidBlocking = 1 << 15 +canMovieExportFromProcedures = 1 << 15 +canMovieExportValidateMovie = 1L << 16 +movieImportMustGetDestinationMediaType = 1L << 16 +movieExportNeedsResourceFork = 1L << 17 +canMovieImportDataReferences = 1L << 18 +movieExportMustGetSourceMediaType = 1L << 19 +canMovieImportWithIdle = 1L << 20 +canMovieImportValidateDataReferences = 1L << 21 +reservedForUseByGraphicsImporters = 1L << 23 +movieImportCreateTrack = 1 +movieImportInParallel = 2 +movieImportMustUseTrack = 4 +movieImportWithIdle = 16 +movieImportResultUsedMultipleTracks = 8 +movieImportResultNeedIdles = 32 +movieImportResultComplete = 64 +kMovieExportTextOnly = 0 +kMovieExportAbsoluteTime = 1 +kMovieExportRelativeTime = 2 +kMIDIImportSilenceBefore = 1 << 0 +kMIDIImportSilenceAfter = 1 << 1 +kMIDIImport20Playable = 1 << 2 +kMIDIImportWantLyrics = 1 << 3 +kQTMediaConfigResourceType = FOUR_CHAR_CODE('mcfg') +kQTMediaConfigResourceVersion = 2 +kQTMediaGroupResourceType = FOUR_CHAR_CODE('mgrp') +kQTMediaGroupResourceVersion = 1 +kQTBrowserInfoResourceType = FOUR_CHAR_CODE('brws') +kQTBrowserInfoResourceVersion = 1 +kQTMediaMIMEInfoHasChanged = (1L << 1) +kQTMediaFileInfoHasChanged = (1L << 2) +kQTMediaConfigCanUseApp = (1L << 18) +kQTMediaConfigCanUsePlugin = (1L << 19) +kQTMediaConfigUNUSED = (1L << 20) +kQTMediaConfigBinaryFile = (1L << 23) +kQTMediaConfigTextFile = 0 +kQTMediaConfigMacintoshFile = (1L << 24) +kQTMediaConfigAssociateByDefault = (1L << 27) +kQTMediaConfigUseAppByDefault = (1L << 28) +kQTMediaConfigUsePluginByDefault = (1L << 29) +kQTMediaConfigDefaultsMask = (kQTMediaConfigUseAppByDefault | kQTMediaConfigUsePluginByDefault) +kQTMediaConfigDefaultsShift = 12 +kQTMediaConfigHasFileHasQTAtoms = (1L << 30) +kQTMediaConfigStreamGroupID = FOUR_CHAR_CODE('strm') +kQTMediaConfigInteractiveGroupID = FOUR_CHAR_CODE('intr') +kQTMediaConfigVideoGroupID = FOUR_CHAR_CODE('eyes') +kQTMediaConfigAudioGroupID = FOUR_CHAR_CODE('ears') +kQTMediaConfigMPEGGroupID = FOUR_CHAR_CODE('mpeg') +kQTMediaConfigMP3GroupID = FOUR_CHAR_CODE('mp3 ') +kQTMediaConfigImageGroupID = FOUR_CHAR_CODE('ogle') +kQTMediaConfigMiscGroupID = FOUR_CHAR_CODE('misc') +kQTMediaInfoNetGroup = FOUR_CHAR_CODE('net ') +kQTMediaInfoWinGroup = FOUR_CHAR_CODE('win ') +kQTMediaInfoMacGroup = FOUR_CHAR_CODE('mac ') +kQTMediaInfoMiscGroup = 0x3F3F3F3F +kMimeInfoMimeTypeTag = FOUR_CHAR_CODE('mime') +kMimeInfoFileExtensionTag = FOUR_CHAR_CODE('ext ') +kMimeInfoDescriptionTag = FOUR_CHAR_CODE('desc') +kMimeInfoGroupTag = FOUR_CHAR_CODE('grop') +kMimeInfoDoNotOverrideExistingFileTypeAssociation = FOUR_CHAR_CODE('nofa') +kQTFileTypeAIFF = FOUR_CHAR_CODE('AIFF') +kQTFileTypeAIFC = FOUR_CHAR_CODE('AIFC') +kQTFileTypeDVC = FOUR_CHAR_CODE('dvc!') +kQTFileTypeMIDI = FOUR_CHAR_CODE('Midi') +kQTFileTypePicture = FOUR_CHAR_CODE('PICT') +kQTFileTypeMovie = FOUR_CHAR_CODE('MooV') +kQTFileTypeText = FOUR_CHAR_CODE('TEXT') +kQTFileTypeWave = FOUR_CHAR_CODE('WAVE') +kQTFileTypeSystemSevenSound = FOUR_CHAR_CODE('sfil') +kQTFileTypeMuLaw = FOUR_CHAR_CODE('ULAW') +kQTFileTypeAVI = FOUR_CHAR_CODE('VfW ') +kQTFileTypeSoundDesignerII = FOUR_CHAR_CODE('Sd2f') +kQTFileTypeAudioCDTrack = FOUR_CHAR_CODE('trak') +kQTFileTypePICS = FOUR_CHAR_CODE('PICS') +kQTFileTypeGIF = FOUR_CHAR_CODE('GIFf') +kQTFileTypePNG = FOUR_CHAR_CODE('PNGf') +kQTFileTypeTIFF = FOUR_CHAR_CODE('TIFF') +kQTFileTypePhotoShop = FOUR_CHAR_CODE('8BPS') +kQTFileTypeSGIImage = FOUR_CHAR_CODE('.SGI') +kQTFileTypeBMP = FOUR_CHAR_CODE('BMPf') +kQTFileTypeJPEG = FOUR_CHAR_CODE('JPEG') +kQTFileTypeJFIF = FOUR_CHAR_CODE('JPEG') +kQTFileTypeMacPaint = FOUR_CHAR_CODE('PNTG') +kQTFileTypeTargaImage = FOUR_CHAR_CODE('TPIC') +kQTFileTypeQuickDrawGXPicture = FOUR_CHAR_CODE('qdgx') +kQTFileTypeQuickTimeImage = FOUR_CHAR_CODE('qtif') +kQTFileType3DMF = FOUR_CHAR_CODE('3DMF') +kQTFileTypeFLC = FOUR_CHAR_CODE('FLC ') +kQTFileTypeFlash = FOUR_CHAR_CODE('SWFL') +kQTFileTypeFlashPix = FOUR_CHAR_CODE('FPix') +kQTFileTypeMP4 = FOUR_CHAR_CODE('mpg4') +kQTSettingsDVExportNTSC = FOUR_CHAR_CODE('dvcv') +kQTSettingsDVExportLockedAudio = FOUR_CHAR_CODE('lock') +kQTSettingsEffect = FOUR_CHAR_CODE('effe') +kQTSettingsGraphicsFileImportSequence = FOUR_CHAR_CODE('sequ') +kQTSettingsGraphicsFileImportSequenceEnabled = FOUR_CHAR_CODE('enab') +kQTSettingsMovieExportEnableVideo = FOUR_CHAR_CODE('envi') +kQTSettingsMovieExportEnableSound = FOUR_CHAR_CODE('enso') +kQTSettingsMovieExportSaveOptions = FOUR_CHAR_CODE('save') +kQTSettingsMovieExportSaveForInternet = FOUR_CHAR_CODE('fast') +kQTSettingsMovieExportSaveCompressedMovie = FOUR_CHAR_CODE('cmpm') +kQTSettingsMIDI = FOUR_CHAR_CODE('MIDI') +kQTSettingsMIDISettingFlags = FOUR_CHAR_CODE('sttg') +kQTSettingsText = FOUR_CHAR_CODE('text') +kQTSettingsTextDescription = FOUR_CHAR_CODE('desc') +kQTSettingsTextSize = FOUR_CHAR_CODE('size') +kQTSettingsTextSettingFlags = FOUR_CHAR_CODE('sttg') +kQTSettingsTextTimeFraction = FOUR_CHAR_CODE('timf') +kQTSettingsTime = FOUR_CHAR_CODE('time') +kQTSettingsTimeDuration = FOUR_CHAR_CODE('dura') +kQTSettingsAudioCDTrack = FOUR_CHAR_CODE('trak') +kQTSettingsAudioCDTrackRateShift = FOUR_CHAR_CODE('rshf') +kQTSettingsDVExportDVFormat = FOUR_CHAR_CODE('dvcf') +kQTPresetsListResourceType = FOUR_CHAR_CODE('stg#') +kQTPresetsPlatformListResourceType = FOUR_CHAR_CODE('stgp') +kQTPresetInfoIsDivider = 1 +kQTMovieExportSourceInfoResourceType = FOUR_CHAR_CODE('src#') +kQTMovieExportSourceInfoIsMediaType = 1L << 0 +kQTMovieExportSourceInfoIsMediaCharacteristic = 1L << 1 +kQTMovieExportSourceInfoIsSourceType = 1L << 2 +movieExportUseConfiguredSettings = FOUR_CHAR_CODE('ucfg') +movieExportWidth = FOUR_CHAR_CODE('wdth') +movieExportHeight = FOUR_CHAR_CODE('hegt') +movieExportDuration = FOUR_CHAR_CODE('dura') +movieExportVideoFilter = FOUR_CHAR_CODE('iflt') +movieExportTimeScale = FOUR_CHAR_CODE('tmsc') +kQTBrowserInfoCanUseSystemFolderPlugin = (1L << 0) +kQTPreFlightOpenComponent = (1L << 1) +pnotComponentWantsEvents = 1 +pnotComponentNeedsNoCache = 2 +ShowFilePreviewComponentType = FOUR_CHAR_CODE('pnot') +CreateFilePreviewComponentType = FOUR_CHAR_CODE('pmak') +DataCompressorComponentType = FOUR_CHAR_CODE('dcom') +DataDecompressorComponentType = FOUR_CHAR_CODE('ddec') +AppleDataCompressorSubType = FOUR_CHAR_CODE('adec') +zlibDataCompressorSubType = FOUR_CHAR_CODE('zlib') +kDataHCanRead = 1L << 0 +kDataHSpecialRead = 1L << 1 +kDataHSpecialReadFile = 1L << 2 +kDataHCanWrite = 1L << 3 +kDataHSpecialWrite = 1 << 4 +kDataHSpecialWriteFile = 1 << 5 +kDataHCanStreamingWrite = 1 << 6 +kDataHMustCheckDataRef = 1 << 7 +kDataRefExtensionChokeSpeed = FOUR_CHAR_CODE('chok') +kDataRefExtensionFileName = FOUR_CHAR_CODE('fnam') +kDataRefExtensionMIMEType = FOUR_CHAR_CODE('mime') +kDataRefExtensionMacOSFileType = FOUR_CHAR_CODE('ftyp') +kDataRefExtensionInitializationData = FOUR_CHAR_CODE('data') +kDataRefExtensionQuickTimeMediaType = FOUR_CHAR_CODE('mtyp') +kDataHChokeToMovieDataRate = 1 << 0 +kDataHChokeToParam = 1 << 1 +kDataHExtendedSchedule = FOUR_CHAR_CODE('xtnd') +kDataHInfoFlagNeverStreams = 1 << 0 +kDataHInfoFlagCanUpdateDataRefs = 1 << 1 +kDataHInfoFlagNeedsNetworkBandwidth = 1 << 2 +kDataHFileTypeMacOSFileType = FOUR_CHAR_CODE('ftyp') +kDataHFileTypeExtension = FOUR_CHAR_CODE('fext') +kDataHFileTypeMIME = FOUR_CHAR_CODE('mime') +kDataHCreateFileButDontCreateResFile = (1L << 0) +kDataHMovieUsageDoAppendMDAT = 1L << 0 +kDataHTempUseSameDirectory = 1L << 0 +kDataHTempUseSameVolume = 1L << 1 +kDataHTempCreateFile = 1L << 2 +kDataHTempOpenFile = 1L << 3 +kDataHGetDataRateInfiniteRate = 0x7FFFFFFF +kDataHSetTimeHintsSkipBandwidthRequest = 1 << 0 +videoDigitizerComponentType = FOUR_CHAR_CODE('vdig') +vdigInterfaceRev = 2 +ntscIn = 0 +currentIn = 0 +palIn = 1 +secamIn = 2 +ntscReallyIn = 3 +compositeIn = 0 +sVideoIn = 1 +rgbComponentIn = 2 +rgbComponentSyncIn = 3 +yuvComponentIn = 4 +yuvComponentSyncIn = 5 +tvTunerIn = 6 +sdiIn = 7 +vdPlayThruOff = 0 +vdPlayThruOn = 1 +vdDigitizerBW = 0 +vdDigitizerRGB = 1 +vdBroadcastMode = 0 +vdVTRMode = 1 +vdUseAnyField = 0 +vdUseOddField = 1 +vdUseEvenField = 2 +vdTypeBasic = 0 +vdTypeAlpha = 1 +vdTypeMask = 2 +vdTypeKey = 3 +digiInDoesNTSC = 1L << 0 +digiInDoesPAL = 1L << 1 +digiInDoesSECAM = 1L << 2 +digiInDoesGenLock = 1L << 7 +digiInDoesComposite = 1L << 8 +digiInDoesSVideo = 1L << 9 +digiInDoesComponent = 1L << 10 +digiInVTR_Broadcast = 1L << 11 +digiInDoesColor = 1L << 12 +digiInDoesBW = 1L << 13 +digiInSignalLock = 1L << 31 +digiOutDoes1 = 1L << 0 +digiOutDoes2 = 1L << 1 +digiOutDoes4 = 1L << 2 +digiOutDoes8 = 1L << 3 +digiOutDoes16 = 1L << 4 +digiOutDoes32 = 1L << 5 +digiOutDoesDither = 1L << 6 +digiOutDoesStretch = 1L << 7 +digiOutDoesShrink = 1L << 8 +digiOutDoesMask = 1L << 9 +digiOutDoesDouble = 1L << 11 +digiOutDoesQuad = 1L << 12 +digiOutDoesQuarter = 1L << 13 +digiOutDoesSixteenth = 1L << 14 +digiOutDoesRotate = 1L << 15 +digiOutDoesHorizFlip = 1L << 16 +digiOutDoesVertFlip = 1L << 17 +digiOutDoesSkew = 1L << 18 +digiOutDoesBlend = 1L << 19 +digiOutDoesWarp = 1L << 20 +digiOutDoesHW_DMA = 1L << 21 +digiOutDoesHWPlayThru = 1L << 22 +digiOutDoesILUT = 1L << 23 +digiOutDoesKeyColor = 1L << 24 +digiOutDoesAsyncGrabs = 1L << 25 +digiOutDoesUnreadableScreenBits = 1L << 26 +digiOutDoesCompress = 1L << 27 +digiOutDoesCompressOnly = 1L << 28 +digiOutDoesPlayThruDuringCompress = 1L << 29 +digiOutDoesCompressPartiallyVisible = 1L << 30 +digiOutDoesNotNeedCopyOfCompressData = 1L << 31 +dmaDepth1 = 1 +dmaDepth2 = 2 +dmaDepth4 = 4 +dmaDepth8 = 8 +dmaDepth16 = 16 +dmaDepth32 = 32 +dmaDepth2Gray = 64 +dmaDepth4Gray = 128 +dmaDepth8Gray = 256 +kVDIGControlledFrameRate = -1 +vdDeviceFlagShowInputsAsDevices = (1 << 0) +vdDeviceFlagHideDevice = (1 << 1) +vdFlagCaptureStarting = (1 << 0) +vdFlagCaptureStopping = (1 << 1) +vdFlagCaptureIsForPreview = (1 << 2) +vdFlagCaptureIsForRecord = (1 << 3) +vdFlagCaptureLowLatency = (1 << 4) +vdFlagCaptureAlwaysUseTimeBase = (1 << 5) +vdFlagCaptureSetSettingsBegin = (1 << 6) +vdFlagCaptureSetSettingsEnd = (1 << 7) +xmlParseComponentType = FOUR_CHAR_CODE('pars') +xmlParseComponentSubType = FOUR_CHAR_CODE('xml ') +xmlIdentifierInvalid = 0 +# xmlIdentifierUnrecognized = (long)0xFFFFFFFF +xmlContentTypeInvalid = 0 +xmlContentTypeElement = 1 +xmlContentTypeCharData = 2 +elementFlagAlwaysSelfContained = 1L << 0 +elementFlagPreserveWhiteSpace = 1L << 1 +xmlParseFlagAllowUppercase = 1L << 0 +xmlParseFlagAllowUnquotedAttributeValues = 1L << 1 +xmlParseFlagEventParseOnly = 1L << 2 +attributeValueKindCharString = 0 +attributeValueKindInteger = 1L << 0 +attributeValueKindPercent = 1L << 1 +attributeValueKindBoolean = 1L << 2 +attributeValueKindOnOff = 1L << 3 +attributeValueKindColor = 1L << 4 +attributeValueKindEnum = 1L << 5 +attributeValueKindCaseSensEnum = 1L << 6 +MAX_ATTRIBUTE_VALUE_KIND = attributeValueKindCaseSensEnum +nameSpaceIDNone = 0 +element_xml = 1 +attr_src = 1 +SeqGrabComponentType = FOUR_CHAR_CODE('barg') +SeqGrabChannelType = FOUR_CHAR_CODE('sgch') +SeqGrabPanelType = FOUR_CHAR_CODE('sgpn') +SeqGrabCompressionPanelType = FOUR_CHAR_CODE('cmpr') +SeqGrabSourcePanelType = FOUR_CHAR_CODE('sour') +seqGrabToDisk = 1 +seqGrabToMemory = 2 +seqGrabDontUseTempMemory = 4 +seqGrabAppendToFile = 8 +seqGrabDontAddMovieResource = 16 +seqGrabDontMakeMovie = 32 +seqGrabPreExtendFile = 64 +seqGrabDataProcIsInterruptSafe = 128 +seqGrabDataProcDoesOverlappingReads = 256 +seqGrabRecord = 1 +seqGrabPreview = 2 +seqGrabPlayDuringRecord = 4 +seqGrabLowLatencyCapture = 8 +seqGrabAlwaysUseTimeBase = 16 +seqGrabHasBounds = 1 +seqGrabHasVolume = 2 +seqGrabHasDiscreteSamples = 4 +seqGrabDoNotBufferizeData = 8 +seqGrabCanMoveWindowWhileRecording = 16 +grabPictOffScreen = 1 +grabPictIgnoreClip = 2 +grabPictCurrentImage = 4 +sgFlagControlledGrab = (1 << 0) +sgFlagAllowNonRGBPixMaps = (1 << 1) +sgDeviceInputNameFlagInputUnavailable = (1 << 0) +sgDeviceNameFlagDeviceUnavailable = (1 << 0) +sgDeviceNameFlagShowInputsAsDevices = (1 << 1) +sgDeviceListWithIcons = (1 << 0) +sgDeviceListDontCheckAvailability = (1 << 1) +sgDeviceListIncludeInputs = (1 << 2) +seqGrabWriteAppend = 0 +seqGrabWriteReserve = 1 +seqGrabWriteFill = 2 +seqGrabUnpause = 0 +seqGrabPause = 1 +seqGrabPauseForMenu = 3 +channelFlagDontOpenResFile = 2 +channelFlagHasDependency = 4 +sgPanelFlagForPanel = 1 +seqGrabSettingsPreviewOnly = 1 +channelPlayNormal = 0 +channelPlayFast = 1 +channelPlayHighQuality = 2 +channelPlayAllData = 4 +sgSetSettingsBegin = (1 << 0) +sgSetSettingsEnd = (1 << 1) +kSGSmallestDITLSize = -1 +kSGLargestDITLSize = -2 +sgChannelAtom = FOUR_CHAR_CODE('chan') +sgChannelSettingsAtom = FOUR_CHAR_CODE('ctom') +sgChannelDescription = FOUR_CHAR_CODE('cdsc') +sgChannelSettings = FOUR_CHAR_CODE('cset') +sgDeviceNameType = FOUR_CHAR_CODE('name') +sgDeviceDisplayNameType = FOUR_CHAR_CODE('dnam') +sgDeviceUIDType = FOUR_CHAR_CODE('duid') +sgInputUIDType = FOUR_CHAR_CODE('iuid') +sgUsageType = FOUR_CHAR_CODE('use ') +sgPlayFlagsType = FOUR_CHAR_CODE('plyf') +sgClipType = FOUR_CHAR_CODE('clip') +sgMatrixType = FOUR_CHAR_CODE('mtrx') +sgVolumeType = FOUR_CHAR_CODE('volu') +sgPanelSettingsAtom = FOUR_CHAR_CODE('ptom') +sgPanelDescription = FOUR_CHAR_CODE('pdsc') +sgPanelSettings = FOUR_CHAR_CODE('pset') +sgcSoundCompressionType = FOUR_CHAR_CODE('scmp') +sgcSoundCodecSettingsType = FOUR_CHAR_CODE('cdec') +sgcSoundSampleRateType = FOUR_CHAR_CODE('srat') +sgcSoundChannelCountType = FOUR_CHAR_CODE('schn') +sgcSoundSampleSizeType = FOUR_CHAR_CODE('ssiz') +sgcSoundInputType = FOUR_CHAR_CODE('sinp') +sgcSoundGainType = FOUR_CHAR_CODE('gain') +sgcVideoHueType = FOUR_CHAR_CODE('hue ') +sgcVideoSaturationType = FOUR_CHAR_CODE('satr') +sgcVideoContrastType = FOUR_CHAR_CODE('trst') +sgcVideoSharpnessType = FOUR_CHAR_CODE('shrp') +sgcVideoBrigtnessType = FOUR_CHAR_CODE('brit') +sgcVideoBlackLevelType = FOUR_CHAR_CODE('blkl') +sgcVideoWhiteLevelType = FOUR_CHAR_CODE('whtl') +sgcVideoInputType = FOUR_CHAR_CODE('vinp') +sgcVideoFormatType = FOUR_CHAR_CODE('vstd') +sgcVideoFilterType = FOUR_CHAR_CODE('vflt') +sgcVideoRectType = FOUR_CHAR_CODE('vrct') +sgcVideoDigitizerType = FOUR_CHAR_CODE('vdig') +QTVideoOutputComponentType = FOUR_CHAR_CODE('vout') +QTVideoOutputComponentBaseSubType = FOUR_CHAR_CODE('base') +kQTVideoOutputDontDisplayToUser = 1L << 0 +kQTVODisplayModeItem = FOUR_CHAR_CODE('qdmi') +kQTVODimensions = FOUR_CHAR_CODE('dimn') +kQTVOResolution = FOUR_CHAR_CODE('resl') +kQTVORefreshRate = FOUR_CHAR_CODE('refr') +kQTVOPixelType = FOUR_CHAR_CODE('pixl') +kQTVOName = FOUR_CHAR_CODE('name') +kQTVODecompressors = FOUR_CHAR_CODE('deco') +kQTVODecompressorType = FOUR_CHAR_CODE('dety') +kQTVODecompressorContinuous = FOUR_CHAR_CODE('cont') +kQTVODecompressorComponent = FOUR_CHAR_CODE('cmpt') +kClockGetTimeSelect = 0x0001 +kClockNewCallBackSelect = 0x0002 +kClockDisposeCallBackSelect = 0x0003 +kClockCallMeWhenSelect = 0x0004 +kClockCancelCallBackSelect = 0x0005 +kClockRateChangedSelect = 0x0006 +kClockTimeChangedSelect = 0x0007 +kClockSetTimeBaseSelect = 0x0008 +kClockStartStopChangedSelect = 0x0009 +kClockGetRateSelect = 0x000A +kSCGetCompressionExtendedSelect = 0x0001 +kSCPositionRectSelect = 0x0002 +kSCPositionDialogSelect = 0x0003 +kSCSetTestImagePictHandleSelect = 0x0004 +kSCSetTestImagePictFileSelect = 0x0005 +kSCSetTestImagePixMapSelect = 0x0006 +kSCGetBestDeviceRectSelect = 0x0007 +kSCRequestImageSettingsSelect = 0x000A +kSCCompressImageSelect = 0x000B +kSCCompressPictureSelect = 0x000C +kSCCompressPictureFileSelect = 0x000D +kSCRequestSequenceSettingsSelect = 0x000E +kSCCompressSequenceBeginSelect = 0x000F +kSCCompressSequenceFrameSelect = 0x0010 +kSCCompressSequenceEndSelect = 0x0011 +kSCDefaultPictHandleSettingsSelect = 0x0012 +kSCDefaultPictFileSettingsSelect = 0x0013 +kSCDefaultPixMapSettingsSelect = 0x0014 +kSCGetInfoSelect = 0x0015 +kSCSetInfoSelect = 0x0016 +kSCNewGWorldSelect = 0x0017 +kSCSetCompressFlagsSelect = 0x0018 +kSCGetCompressFlagsSelect = 0x0019 +kSCGetSettingsAsTextSelect = 0x001A +kSCGetSettingsAsAtomContainerSelect = 0x001B +kSCSetSettingsFromAtomContainerSelect = 0x001C +kSCCompressSequenceFrameAsyncSelect = 0x001D +kSCAsyncIdleSelect = 0x001E +kTweenerInitializeSelect = 0x0001 +kTweenerDoTweenSelect = 0x0002 +kTweenerResetSelect = 0x0003 +kTCGetCurrentTimeCodeSelect = 0x0101 +kTCGetTimeCodeAtTimeSelect = 0x0102 +kTCTimeCodeToStringSelect = 0x0103 +kTCTimeCodeToFrameNumberSelect = 0x0104 +kTCFrameNumberToTimeCodeSelect = 0x0105 +kTCGetSourceRefSelect = 0x0106 +kTCSetSourceRefSelect = 0x0107 +kTCSetTimeCodeFlagsSelect = 0x0108 +kTCGetTimeCodeFlagsSelect = 0x0109 +kTCSetDisplayOptionsSelect = 0x010A +kTCGetDisplayOptionsSelect = 0x010B +kMovieImportHandleSelect = 0x0001 +kMovieImportFileSelect = 0x0002 +kMovieImportSetSampleDurationSelect = 0x0003 +kMovieImportSetSampleDescriptionSelect = 0x0004 +kMovieImportSetMediaFileSelect = 0x0005 +kMovieImportSetDimensionsSelect = 0x0006 +kMovieImportSetChunkSizeSelect = 0x0007 +kMovieImportSetProgressProcSelect = 0x0008 +kMovieImportSetAuxiliaryDataSelect = 0x0009 +kMovieImportSetFromScrapSelect = 0x000A +kMovieImportDoUserDialogSelect = 0x000B +kMovieImportSetDurationSelect = 0x000C +kMovieImportGetAuxiliaryDataTypeSelect = 0x000D +kMovieImportValidateSelect = 0x000E +kMovieImportGetFileTypeSelect = 0x000F +kMovieImportDataRefSelect = 0x0010 +kMovieImportGetSampleDescriptionSelect = 0x0011 +kMovieImportGetMIMETypeListSelect = 0x0012 +kMovieImportSetOffsetAndLimitSelect = 0x0013 +kMovieImportGetSettingsAsAtomContainerSelect = 0x0014 +kMovieImportSetSettingsFromAtomContainerSelect = 0x0015 +kMovieImportSetOffsetAndLimit64Select = 0x0016 +kMovieImportIdleSelect = 0x0017 +kMovieImportValidateDataRefSelect = 0x0018 +kMovieImportGetLoadStateSelect = 0x0019 +kMovieImportGetMaxLoadedTimeSelect = 0x001A +kMovieImportEstimateCompletionTimeSelect = 0x001B +kMovieImportSetDontBlockSelect = 0x001C +kMovieImportGetDontBlockSelect = 0x001D +kMovieImportSetIdleManagerSelect = 0x001E +kMovieImportSetNewMovieFlagsSelect = 0x001F +kMovieImportGetDestinationMediaTypeSelect = 0x0020 +kMovieExportToHandleSelect = 0x0080 +kMovieExportToFileSelect = 0x0081 +kMovieExportGetAuxiliaryDataSelect = 0x0083 +kMovieExportSetProgressProcSelect = 0x0084 +kMovieExportSetSampleDescriptionSelect = 0x0085 +kMovieExportDoUserDialogSelect = 0x0086 +kMovieExportGetCreatorTypeSelect = 0x0087 +kMovieExportToDataRefSelect = 0x0088 +kMovieExportFromProceduresToDataRefSelect = 0x0089 +kMovieExportAddDataSourceSelect = 0x008A +kMovieExportValidateSelect = 0x008B +kMovieExportGetSettingsAsAtomContainerSelect = 0x008C +kMovieExportSetSettingsFromAtomContainerSelect = 0x008D +kMovieExportGetFileNameExtensionSelect = 0x008E +kMovieExportGetShortFileTypeStringSelect = 0x008F +kMovieExportGetSourceMediaTypeSelect = 0x0090 +kMovieExportSetGetMoviePropertyProcSelect = 0x0091 +kTextExportGetDisplayDataSelect = 0x0100 +kTextExportGetTimeFractionSelect = 0x0101 +kTextExportSetTimeFractionSelect = 0x0102 +kTextExportGetSettingsSelect = 0x0103 +kTextExportSetSettingsSelect = 0x0104 +kMIDIImportGetSettingsSelect = 0x0100 +kMIDIImportSetSettingsSelect = 0x0101 +kMovieExportNewGetDataAndPropertiesProcsSelect = 0x0100 +kMovieExportDisposeGetDataAndPropertiesProcsSelect = 0x0101 +kGraphicsImageImportSetSequenceEnabledSelect = 0x0100 +kGraphicsImageImportGetSequenceEnabledSelect = 0x0101 +kPreviewShowDataSelect = 0x0001 +kPreviewMakePreviewSelect = 0x0002 +kPreviewMakePreviewReferenceSelect = 0x0003 +kPreviewEventSelect = 0x0004 +kDataCodecDecompressSelect = 0x0001 +kDataCodecGetCompressBufferSizeSelect = 0x0002 +kDataCodecCompressSelect = 0x0003 +kDataCodecBeginInterruptSafeSelect = 0x0004 +kDataCodecEndInterruptSafeSelect = 0x0005 +kDataCodecDecompressPartialSelect = 0x0006 +kDataCodecCompressPartialSelect = 0x0007 +kDataHGetDataSelect = 0x0002 +kDataHPutDataSelect = 0x0003 +kDataHFlushDataSelect = 0x0004 +kDataHOpenForWriteSelect = 0x0005 +kDataHCloseForWriteSelect = 0x0006 +kDataHOpenForReadSelect = 0x0008 +kDataHCloseForReadSelect = 0x0009 +kDataHSetDataRefSelect = 0x000A +kDataHGetDataRefSelect = 0x000B +kDataHCompareDataRefSelect = 0x000C +kDataHTaskSelect = 0x000D +kDataHScheduleDataSelect = 0x000E +kDataHFinishDataSelect = 0x000F +kDataHFlushCacheSelect = 0x0010 +kDataHResolveDataRefSelect = 0x0011 +kDataHGetFileSizeSelect = 0x0012 +kDataHCanUseDataRefSelect = 0x0013 +kDataHGetVolumeListSelect = 0x0014 +kDataHWriteSelect = 0x0015 +kDataHPreextendSelect = 0x0016 +kDataHSetFileSizeSelect = 0x0017 +kDataHGetFreeSpaceSelect = 0x0018 +kDataHCreateFileSelect = 0x0019 +kDataHGetPreferredBlockSizeSelect = 0x001A +kDataHGetDeviceIndexSelect = 0x001B +kDataHIsStreamingDataHandlerSelect = 0x001C +kDataHGetDataInBufferSelect = 0x001D +kDataHGetScheduleAheadTimeSelect = 0x001E +kDataHSetCacheSizeLimitSelect = 0x001F +kDataHGetCacheSizeLimitSelect = 0x0020 +kDataHGetMovieSelect = 0x0021 +kDataHAddMovieSelect = 0x0022 +kDataHUpdateMovieSelect = 0x0023 +kDataHDoesBufferSelect = 0x0024 +kDataHGetFileNameSelect = 0x0025 +kDataHGetAvailableFileSizeSelect = 0x0026 +kDataHGetMacOSFileTypeSelect = 0x0027 +kDataHGetMIMETypeSelect = 0x0028 +kDataHSetDataRefWithAnchorSelect = 0x0029 +kDataHGetDataRefWithAnchorSelect = 0x002A +kDataHSetMacOSFileTypeSelect = 0x002B +kDataHSetTimeBaseSelect = 0x002C +kDataHGetInfoFlagsSelect = 0x002D +kDataHScheduleData64Select = 0x002E +kDataHWrite64Select = 0x002F +kDataHGetFileSize64Select = 0x0030 +kDataHPreextend64Select = 0x0031 +kDataHSetFileSize64Select = 0x0032 +kDataHGetFreeSpace64Select = 0x0033 +kDataHAppend64Select = 0x0034 +kDataHReadAsyncSelect = 0x0035 +kDataHPollReadSelect = 0x0036 +kDataHGetDataAvailabilitySelect = 0x0037 +kDataHGetFileSizeAsyncSelect = 0x003A +kDataHGetDataRefAsTypeSelect = 0x003B +kDataHSetDataRefExtensionSelect = 0x003C +kDataHGetDataRefExtensionSelect = 0x003D +kDataHGetMovieWithFlagsSelect = 0x003E +kDataHGetFileTypeOrderingSelect = 0x0040 +kDataHCreateFileWithFlagsSelect = 0x0041 +kDataHGetMIMETypeAsyncSelect = 0x0042 +kDataHGetInfoSelect = 0x0043 +kDataHSetIdleManagerSelect = 0x0044 +kDataHDeleteFileSelect = 0x0045 +kDataHSetMovieUsageFlagsSelect = 0x0046 +kDataHUseTemporaryDataRefSelect = 0x0047 +kDataHGetTemporaryDataRefCapabilitiesSelect = 0x0048 +kDataHRenameFileSelect = 0x0049 +kDataHPlaybackHintsSelect = 0x0103 +kDataHPlaybackHints64Select = 0x010E +kDataHGetDataRateSelect = 0x0110 +kDataHSetTimeHintsSelect = 0x0111 +kVDGetMaxSrcRectSelect = 0x0001 +kVDGetActiveSrcRectSelect = 0x0002 +kVDSetDigitizerRectSelect = 0x0003 +kVDGetDigitizerRectSelect = 0x0004 +kVDGetVBlankRectSelect = 0x0005 +kVDGetMaskPixMapSelect = 0x0006 +kVDGetPlayThruDestinationSelect = 0x0008 +kVDUseThisCLUTSelect = 0x0009 +kVDSetInputGammaValueSelect = 0x000A +kVDGetInputGammaValueSelect = 0x000B +kVDSetBrightnessSelect = 0x000C +kVDGetBrightnessSelect = 0x000D +kVDSetContrastSelect = 0x000E +kVDSetHueSelect = 0x000F +kVDSetSharpnessSelect = 0x0010 +kVDSetSaturationSelect = 0x0011 +kVDGetContrastSelect = 0x0012 +kVDGetHueSelect = 0x0013 +kVDGetSharpnessSelect = 0x0014 +kVDGetSaturationSelect = 0x0015 +kVDGrabOneFrameSelect = 0x0016 +kVDGetMaxAuxBufferSelect = 0x0017 +kVDGetDigitizerInfoSelect = 0x0019 +kVDGetCurrentFlagsSelect = 0x001A +kVDSetKeyColorSelect = 0x001B +kVDGetKeyColorSelect = 0x001C +kVDAddKeyColorSelect = 0x001D +kVDGetNextKeyColorSelect = 0x001E +kVDSetKeyColorRangeSelect = 0x001F +kVDGetKeyColorRangeSelect = 0x0020 +kVDSetDigitizerUserInterruptSelect = 0x0021 +kVDSetInputColorSpaceModeSelect = 0x0022 +kVDGetInputColorSpaceModeSelect = 0x0023 +kVDSetClipStateSelect = 0x0024 +kVDGetClipStateSelect = 0x0025 +kVDSetClipRgnSelect = 0x0026 +kVDClearClipRgnSelect = 0x0027 +kVDGetCLUTInUseSelect = 0x0028 +kVDSetPLLFilterTypeSelect = 0x0029 +kVDGetPLLFilterTypeSelect = 0x002A +kVDGetMaskandValueSelect = 0x002B +kVDSetMasterBlendLevelSelect = 0x002C +kVDSetPlayThruDestinationSelect = 0x002D +kVDSetPlayThruOnOffSelect = 0x002E +kVDSetFieldPreferenceSelect = 0x002F +kVDGetFieldPreferenceSelect = 0x0030 +kVDPreflightDestinationSelect = 0x0032 +kVDPreflightGlobalRectSelect = 0x0033 +kVDSetPlayThruGlobalRectSelect = 0x0034 +kVDSetInputGammaRecordSelect = 0x0035 +kVDGetInputGammaRecordSelect = 0x0036 +kVDSetBlackLevelValueSelect = 0x0037 +kVDGetBlackLevelValueSelect = 0x0038 +kVDSetWhiteLevelValueSelect = 0x0039 +kVDGetWhiteLevelValueSelect = 0x003A +kVDGetVideoDefaultsSelect = 0x003B +kVDGetNumberOfInputsSelect = 0x003C +kVDGetInputFormatSelect = 0x003D +kVDSetInputSelect = 0x003E +kVDGetInputSelect = 0x003F +kVDSetInputStandardSelect = 0x0040 +kVDSetupBuffersSelect = 0x0041 +kVDGrabOneFrameAsyncSelect = 0x0042 +kVDDoneSelect = 0x0043 +kVDSetCompressionSelect = 0x0044 +kVDCompressOneFrameAsyncSelect = 0x0045 +kVDCompressDoneSelect = 0x0046 +kVDReleaseCompressBufferSelect = 0x0047 +kVDGetImageDescriptionSelect = 0x0048 +kVDResetCompressSequenceSelect = 0x0049 +kVDSetCompressionOnOffSelect = 0x004A +kVDGetCompressionTypesSelect = 0x004B +kVDSetTimeBaseSelect = 0x004C +kVDSetFrameRateSelect = 0x004D +kVDGetDataRateSelect = 0x004E +kVDGetSoundInputDriverSelect = 0x004F +kVDGetDMADepthsSelect = 0x0050 +kVDGetPreferredTimeScaleSelect = 0x0051 +kVDReleaseAsyncBuffersSelect = 0x0052 +kVDSetDataRateSelect = 0x0054 +kVDGetTimeCodeSelect = 0x0055 +kVDUseSafeBuffersSelect = 0x0056 +kVDGetSoundInputSourceSelect = 0x0057 +kVDGetCompressionTimeSelect = 0x0058 +kVDSetPreferredPacketSizeSelect = 0x0059 +kVDSetPreferredImageDimensionsSelect = 0x005A +kVDGetPreferredImageDimensionsSelect = 0x005B +kVDGetInputNameSelect = 0x005C +kVDSetDestinationPortSelect = 0x005D +kVDGetDeviceNameAndFlagsSelect = 0x005E +kVDCaptureStateChangingSelect = 0x005F +kVDGetUniqueIDsSelect = 0x0060 +kVDSelectUniqueIDsSelect = 0x0061 +kXMLParseDataRefSelect = 0x0001 +kXMLParseFileSelect = 0x0002 +kXMLParseDisposeXMLDocSelect = 0x0003 +kXMLParseGetDetailedParseErrorSelect = 0x0004 +kXMLParseAddElementSelect = 0x0005 +kXMLParseAddAttributeSelect = 0x0006 +kXMLParseAddMultipleAttributesSelect = 0x0007 +kXMLParseAddAttributeAndValueSelect = 0x0008 +kXMLParseAddMultipleAttributesAndValuesSelect = 0x0009 +kXMLParseAddAttributeValueKindSelect = 0x000A +kXMLParseAddNameSpaceSelect = 0x000B +kXMLParseSetOffsetAndLimitSelect = 0x000C +kXMLParseSetEventParseRefConSelect = 0x000D +kXMLParseSetStartDocumentHandlerSelect = 0x000E +kXMLParseSetEndDocumentHandlerSelect = 0x000F +kXMLParseSetStartElementHandlerSelect = 0x0010 +kXMLParseSetEndElementHandlerSelect = 0x0011 +kXMLParseSetCharDataHandlerSelect = 0x0012 +kXMLParseSetPreprocessInstructionHandlerSelect = 0x0013 +kXMLParseSetCommentHandlerSelect = 0x0014 +kXMLParseSetCDataHandlerSelect = 0x0015 +kSGInitializeSelect = 0x0001 +kSGSetDataOutputSelect = 0x0002 +kSGGetDataOutputSelect = 0x0003 +kSGSetGWorldSelect = 0x0004 +kSGGetGWorldSelect = 0x0005 +kSGNewChannelSelect = 0x0006 +kSGDisposeChannelSelect = 0x0007 +kSGStartPreviewSelect = 0x0010 +kSGStartRecordSelect = 0x0011 +kSGIdleSelect = 0x0012 +kSGStopSelect = 0x0013 +kSGPauseSelect = 0x0014 +kSGPrepareSelect = 0x0015 +kSGReleaseSelect = 0x0016 +kSGGetMovieSelect = 0x0017 +kSGSetMaximumRecordTimeSelect = 0x0018 +kSGGetMaximumRecordTimeSelect = 0x0019 +kSGGetStorageSpaceRemainingSelect = 0x001A +kSGGetTimeRemainingSelect = 0x001B +kSGGrabPictSelect = 0x001C +kSGGetLastMovieResIDSelect = 0x001D +kSGSetFlagsSelect = 0x001E +kSGGetFlagsSelect = 0x001F +kSGSetDataProcSelect = 0x0020 +kSGNewChannelFromComponentSelect = 0x0021 +kSGDisposeDeviceListSelect = 0x0022 +kSGAppendDeviceListToMenuSelect = 0x0023 +kSGSetSettingsSelect = 0x0024 +kSGGetSettingsSelect = 0x0025 +kSGGetIndChannelSelect = 0x0026 +kSGUpdateSelect = 0x0027 +kSGGetPauseSelect = 0x0028 +kSGSettingsDialogSelect = 0x0029 +kSGGetAlignmentProcSelect = 0x002A +kSGSetChannelSettingsSelect = 0x002B +kSGGetChannelSettingsSelect = 0x002C +kSGGetModeSelect = 0x002D +kSGSetDataRefSelect = 0x002E +kSGGetDataRefSelect = 0x002F +kSGNewOutputSelect = 0x0030 +kSGDisposeOutputSelect = 0x0031 +kSGSetOutputFlagsSelect = 0x0032 +kSGSetChannelOutputSelect = 0x0033 +kSGGetDataOutputStorageSpaceRemainingSelect = 0x0034 +kSGHandleUpdateEventSelect = 0x0035 +kSGSetOutputNextOutputSelect = 0x0036 +kSGGetOutputNextOutputSelect = 0x0037 +kSGSetOutputMaximumOffsetSelect = 0x0038 +kSGGetOutputMaximumOffsetSelect = 0x0039 +kSGGetOutputDataReferenceSelect = 0x003A +kSGWriteExtendedMovieDataSelect = 0x003B +kSGGetStorageSpaceRemaining64Select = 0x003C +kSGGetDataOutputStorageSpaceRemaining64Select = 0x003D +kSGWriteMovieDataSelect = 0x0100 +kSGAddFrameReferenceSelect = 0x0101 +kSGGetNextFrameReferenceSelect = 0x0102 +kSGGetTimeBaseSelect = 0x0103 +kSGSortDeviceListSelect = 0x0104 +kSGAddMovieDataSelect = 0x0105 +kSGChangedSourceSelect = 0x0106 +kSGAddExtendedFrameReferenceSelect = 0x0107 +kSGGetNextExtendedFrameReferenceSelect = 0x0108 +kSGAddExtendedMovieDataSelect = 0x0109 +kSGAddOutputDataRefToMediaSelect = 0x010A +kSGSetSettingsSummarySelect = 0x010B +kSGSetChannelUsageSelect = 0x0080 +kSGGetChannelUsageSelect = 0x0081 +kSGSetChannelBoundsSelect = 0x0082 +kSGGetChannelBoundsSelect = 0x0083 +kSGSetChannelVolumeSelect = 0x0084 +kSGGetChannelVolumeSelect = 0x0085 +kSGGetChannelInfoSelect = 0x0086 +kSGSetChannelPlayFlagsSelect = 0x0087 +kSGGetChannelPlayFlagsSelect = 0x0088 +kSGSetChannelMaxFramesSelect = 0x0089 +kSGGetChannelMaxFramesSelect = 0x008A +kSGSetChannelRefConSelect = 0x008B +kSGSetChannelClipSelect = 0x008C +kSGGetChannelClipSelect = 0x008D +kSGGetChannelSampleDescriptionSelect = 0x008E +kSGGetChannelDeviceListSelect = 0x008F +kSGSetChannelDeviceSelect = 0x0090 +kSGSetChannelMatrixSelect = 0x0091 +kSGGetChannelMatrixSelect = 0x0092 +kSGGetChannelTimeScaleSelect = 0x0093 +kSGChannelPutPictureSelect = 0x0094 +kSGChannelSetRequestedDataRateSelect = 0x0095 +kSGChannelGetRequestedDataRateSelect = 0x0096 +kSGChannelSetDataSourceNameSelect = 0x0097 +kSGChannelGetDataSourceNameSelect = 0x0098 +kSGChannelSetCodecSettingsSelect = 0x0099 +kSGChannelGetCodecSettingsSelect = 0x009A +kSGGetChannelTimeBaseSelect = 0x009B +kSGGetChannelRefConSelect = 0x009C +kSGGetChannelDeviceAndInputNamesSelect = 0x009D +kSGSetChannelDeviceInputSelect = 0x009E +kSGSetChannelSettingsStateChangingSelect = 0x009F +kSGInitChannelSelect = 0x0180 +kSGWriteSamplesSelect = 0x0181 +kSGGetDataRateSelect = 0x0182 +kSGAlignChannelRectSelect = 0x0183 +kSGPanelGetDitlSelect = 0x0200 +kSGPanelGetTitleSelect = 0x0201 +kSGPanelCanRunSelect = 0x0202 +kSGPanelInstallSelect = 0x0203 +kSGPanelEventSelect = 0x0204 +kSGPanelItemSelect = 0x0205 +kSGPanelRemoveSelect = 0x0206 +kSGPanelSetGrabberSelect = 0x0207 +kSGPanelSetResFileSelect = 0x0208 +kSGPanelGetSettingsSelect = 0x0209 +kSGPanelSetSettingsSelect = 0x020A +kSGPanelValidateInputSelect = 0x020B +kSGPanelSetEventFilterSelect = 0x020C +kSGPanelGetDITLForSizeSelect = 0x020D +kSGGetSrcVideoBoundsSelect = 0x0100 +kSGSetVideoRectSelect = 0x0101 +kSGGetVideoRectSelect = 0x0102 +kSGGetVideoCompressorTypeSelect = 0x0103 +kSGSetVideoCompressorTypeSelect = 0x0104 +kSGSetVideoCompressorSelect = 0x0105 +kSGGetVideoCompressorSelect = 0x0106 +kSGGetVideoDigitizerComponentSelect = 0x0107 +kSGSetVideoDigitizerComponentSelect = 0x0108 +kSGVideoDigitizerChangedSelect = 0x0109 +kSGSetVideoBottlenecksSelect = 0x010A +kSGGetVideoBottlenecksSelect = 0x010B +kSGGrabFrameSelect = 0x010C +kSGGrabFrameCompleteSelect = 0x010D +kSGDisplayFrameSelect = 0x010E +kSGCompressFrameSelect = 0x010F +kSGCompressFrameCompleteSelect = 0x0110 +kSGAddFrameSelect = 0x0111 +kSGTransferFrameForCompressSelect = 0x0112 +kSGSetCompressBufferSelect = 0x0113 +kSGGetCompressBufferSelect = 0x0114 +kSGGetBufferInfoSelect = 0x0115 +kSGSetUseScreenBufferSelect = 0x0116 +kSGGetUseScreenBufferSelect = 0x0117 +kSGGrabCompressCompleteSelect = 0x0118 +kSGDisplayCompressSelect = 0x0119 +kSGSetFrameRateSelect = 0x011A +kSGGetFrameRateSelect = 0x011B +kSGSetPreferredPacketSizeSelect = 0x0121 +kSGGetPreferredPacketSizeSelect = 0x0122 +kSGSetUserVideoCompressorListSelect = 0x0123 +kSGGetUserVideoCompressorListSelect = 0x0124 +kSGSetSoundInputDriverSelect = 0x0100 +kSGGetSoundInputDriverSelect = 0x0101 +kSGSoundInputDriverChangedSelect = 0x0102 +kSGSetSoundRecordChunkSizeSelect = 0x0103 +kSGGetSoundRecordChunkSizeSelect = 0x0104 +kSGSetSoundInputRateSelect = 0x0105 +kSGGetSoundInputRateSelect = 0x0106 +kSGSetSoundInputParametersSelect = 0x0107 +kSGGetSoundInputParametersSelect = 0x0108 +kSGSetAdditionalSoundRatesSelect = 0x0109 +kSGGetAdditionalSoundRatesSelect = 0x010A +kSGSetFontNameSelect = 0x0100 +kSGSetFontSizeSelect = 0x0101 +kSGSetTextForeColorSelect = 0x0102 +kSGSetTextBackColorSelect = 0x0103 +kSGSetJustificationSelect = 0x0104 +kSGGetTextReturnToSpaceValueSelect = 0x0105 +kSGSetTextReturnToSpaceValueSelect = 0x0106 +kSGGetInstrumentSelect = 0x0100 +kSGSetInstrumentSelect = 0x0101 +kQTVideoOutputGetDisplayModeListSelect = 0x0001 +kQTVideoOutputGetCurrentClientNameSelect = 0x0002 +kQTVideoOutputSetClientNameSelect = 0x0003 +kQTVideoOutputGetClientNameSelect = 0x0004 +kQTVideoOutputBeginSelect = 0x0005 +kQTVideoOutputEndSelect = 0x0006 +kQTVideoOutputSetDisplayModeSelect = 0x0007 +kQTVideoOutputGetDisplayModeSelect = 0x0008 +kQTVideoOutputCustomConfigureDisplaySelect = 0x0009 +kQTVideoOutputSaveStateSelect = 0x000A +kQTVideoOutputRestoreStateSelect = 0x000B +kQTVideoOutputGetGWorldSelect = 0x000C +kQTVideoOutputGetGWorldParametersSelect = 0x000D +kQTVideoOutputGetIndSoundOutputSelect = 0x000E +kQTVideoOutputGetClockSelect = 0x000F +kQTVideoOutputSetEchoPortSelect = 0x0010 +kQTVideoOutputGetIndImageDecompressorSelect = 0x0011 +kQTVideoOutputBaseSetEchoPortSelect = 0x0012 +handlerHasSpatial = 1 << 0 +handlerCanClip = 1 << 1 +handlerCanMatte = 1 << 2 +handlerCanTransferMode = 1 << 3 +handlerNeedsBuffer = 1 << 4 +handlerNoIdle = 1 << 5 +handlerNoScheduler = 1 << 6 +handlerWantsTime = 1 << 7 +handlerCGrafPortOnly = 1 << 8 +handlerCanSend = 1 << 9 +handlerCanHandleComplexMatrix = 1 << 10 +handlerWantsDestinationPixels = 1 << 11 +handlerCanSendImageData = 1 << 12 +handlerCanPicSave = 1 << 13 +mMustDraw = 1 << 3 +mAtEnd = 1 << 4 +mPreflightDraw = 1 << 5 +mSyncDrawing = 1 << 6 +mPrecompositeOnly = 1 << 9 +mSoundOnly = 1 << 10 +mDoIdleActionsBeforeDraws = 1 << 11 +mDisableIdleActions = 1 << 12 +mDidDraw = 1 << 0 +mNeedsToDraw = 1 << 2 +mDrawAgain = 1 << 3 +mPartialDraw = 1 << 4 +mWantIdleActions = 1 << 5 +forceUpdateRedraw = 1 << 0 +forceUpdateNewBuffer = 1 << 1 +mHitTestBounds = 1L << 0 +mHitTestImage = 1L << 1 +mHitTestInvisible = 1L << 2 +mHitTestIsClick = 1L << 3 +mOpaque = 1L << 0 +mInvisible = 1L << 1 +kMediaQTIdleFrequencySelector = FOUR_CHAR_CODE('idfq') +kMediaVideoParamBrightness = 1 +kMediaVideoParamContrast = 2 +kMediaVideoParamHue = 3 +kMediaVideoParamSharpness = 4 +kMediaVideoParamSaturation = 5 +kMediaVideoParamBlackLevel = 6 +kMediaVideoParamWhiteLevel = 7 +kMHInfoEncodedFrameRate = FOUR_CHAR_CODE('orat') +kEmptyPurgableChunksOverAllowance = 1 +kCallComponentExecuteWiredActionSelect = -9 +kMediaSetChunkManagementFlagsSelect = 0x0415 +kMediaGetChunkManagementFlagsSelect = 0x0416 +kMediaSetPurgeableChunkMemoryAllowanceSelect = 0x0417 +kMediaGetPurgeableChunkMemoryAllowanceSelect = 0x0418 +kMediaEmptyAllPurgeableChunksSelect = 0x0419 +kMediaInitializeSelect = 0x0501 +kMediaSetHandlerCapabilitiesSelect = 0x0502 +kMediaIdleSelect = 0x0503 +kMediaGetMediaInfoSelect = 0x0504 +kMediaPutMediaInfoSelect = 0x0505 +kMediaSetActiveSelect = 0x0506 +kMediaSetRateSelect = 0x0507 +kMediaGGetStatusSelect = 0x0508 +kMediaTrackEditedSelect = 0x0509 +kMediaSetMediaTimeScaleSelect = 0x050A +kMediaSetMovieTimeScaleSelect = 0x050B +kMediaSetGWorldSelect = 0x050C +kMediaSetDimensionsSelect = 0x050D +kMediaSetClipSelect = 0x050E +kMediaSetMatrixSelect = 0x050F +kMediaGetTrackOpaqueSelect = 0x0510 +kMediaSetGraphicsModeSelect = 0x0511 +kMediaGetGraphicsModeSelect = 0x0512 +kMediaGSetVolumeSelect = 0x0513 +kMediaSetSoundBalanceSelect = 0x0514 +kMediaGetSoundBalanceSelect = 0x0515 +kMediaGetNextBoundsChangeSelect = 0x0516 +kMediaGetSrcRgnSelect = 0x0517 +kMediaPrerollSelect = 0x0518 +kMediaSampleDescriptionChangedSelect = 0x0519 +kMediaHasCharacteristicSelect = 0x051A +kMediaGetOffscreenBufferSizeSelect = 0x051B +kMediaSetHintsSelect = 0x051C +kMediaGetNameSelect = 0x051D +kMediaForceUpdateSelect = 0x051E +kMediaGetDrawingRgnSelect = 0x051F +kMediaGSetActiveSegmentSelect = 0x0520 +kMediaInvalidateRegionSelect = 0x0521 +kMediaGetNextStepTimeSelect = 0x0522 +kMediaSetNonPrimarySourceDataSelect = 0x0523 +kMediaChangedNonPrimarySourceSelect = 0x0524 +kMediaTrackReferencesChangedSelect = 0x0525 +kMediaGetSampleDataPointerSelect = 0x0526 +kMediaReleaseSampleDataPointerSelect = 0x0527 +kMediaTrackPropertyAtomChangedSelect = 0x0528 +kMediaSetTrackInputMapReferenceSelect = 0x0529 +kMediaSetVideoParamSelect = 0x052B +kMediaGetVideoParamSelect = 0x052C +kMediaCompareSelect = 0x052D +kMediaGetClockSelect = 0x052E +kMediaSetSoundOutputComponentSelect = 0x052F +kMediaGetSoundOutputComponentSelect = 0x0530 +kMediaSetSoundLocalizationDataSelect = 0x0531 +kMediaGetInvalidRegionSelect = 0x053C +kMediaSampleDescriptionB2NSelect = 0x053E +kMediaSampleDescriptionN2BSelect = 0x053F +kMediaQueueNonPrimarySourceDataSelect = 0x0540 +kMediaFlushNonPrimarySourceDataSelect = 0x0541 +kMediaGetURLLinkSelect = 0x0543 +kMediaMakeMediaTimeTableSelect = 0x0545 +kMediaHitTestForTargetRefConSelect = 0x0546 +kMediaHitTestTargetRefConSelect = 0x0547 +kMediaGetActionsForQTEventSelect = 0x0548 +kMediaDisposeTargetRefConSelect = 0x0549 +kMediaTargetRefConsEqualSelect = 0x054A +kMediaSetActionsCallbackSelect = 0x054B +kMediaPrePrerollBeginSelect = 0x054C +kMediaPrePrerollCancelSelect = 0x054D +kMediaEnterEmptyEditSelect = 0x054F +kMediaCurrentMediaQueuedDataSelect = 0x0550 +kMediaGetEffectiveVolumeSelect = 0x0551 +kMediaResolveTargetRefConSelect = 0x0552 +kMediaGetSoundLevelMeteringEnabledSelect = 0x0553 +kMediaSetSoundLevelMeteringEnabledSelect = 0x0554 +kMediaGetSoundLevelMeterInfoSelect = 0x0555 +kMediaGetEffectiveSoundBalanceSelect = 0x0556 +kMediaSetScreenLockSelect = 0x0557 +kMediaSetDoMCActionCallbackSelect = 0x0558 +kMediaGetErrorStringSelect = 0x0559 +kMediaGetSoundEqualizerBandsSelect = 0x055A +kMediaSetSoundEqualizerBandsSelect = 0x055B +kMediaGetSoundEqualizerBandLevelsSelect = 0x055C +kMediaDoIdleActionsSelect = 0x055D +kMediaSetSoundBassAndTrebleSelect = 0x055E +kMediaGetSoundBassAndTrebleSelect = 0x055F +kMediaTimeBaseChangedSelect = 0x0560 +kMediaMCIsPlayerEventSelect = 0x0561 +kMediaGetMediaLoadStateSelect = 0x0562 +kMediaVideoOutputChangedSelect = 0x0563 +kMediaEmptySampleCacheSelect = 0x0564 +kMediaGetPublicInfoSelect = 0x0565 +kMediaSetPublicInfoSelect = 0x0566 +kMediaGetUserPreferredCodecsSelect = 0x0567 +kMediaSetUserPreferredCodecsSelect = 0x0568 +kMediaRefConSetPropertySelect = 0x0569 +kMediaRefConGetPropertySelect = 0x056A +kMediaNavigateTargetRefConSelect = 0x056B +kMediaGGetIdleManagerSelect = 0x056C +kMediaGSetIdleManagerSelect = 0x056D +kaiToneDescType = FOUR_CHAR_CODE('tone') +kaiNoteRequestInfoType = FOUR_CHAR_CODE('ntrq') +kaiKnobListType = FOUR_CHAR_CODE('knbl') +kaiKeyRangeInfoType = FOUR_CHAR_CODE('sinf') +kaiSampleDescType = FOUR_CHAR_CODE('sdsc') +kaiSampleInfoType = FOUR_CHAR_CODE('smin') +kaiSampleDataType = FOUR_CHAR_CODE('sdat') +kaiSampleDataQUIDType = FOUR_CHAR_CODE('quid') +kaiInstInfoType = FOUR_CHAR_CODE('iinf') +kaiPictType = FOUR_CHAR_CODE('pict') +kaiWriterType = FOUR_CHAR_CODE('\xa9wrt') +kaiCopyrightType = FOUR_CHAR_CODE('\xa9cpy') +kaiOtherStrType = FOUR_CHAR_CODE('str ') +kaiInstrumentRefType = FOUR_CHAR_CODE('iref') +kaiInstGMQualityType = FOUR_CHAR_CODE('qual') +kaiLibraryInfoType = FOUR_CHAR_CODE('linf') +kaiLibraryDescType = FOUR_CHAR_CODE('ldsc') +kInstKnobMissingUnknown = 0 +kInstKnobMissingDefault = (1 << 0) +kMusicLoopTypeNormal = 0 +kMusicLoopTypePalindrome = 1 +instSamplePreProcessFlag = 1 << 0 +kQTMIDIComponentType = FOUR_CHAR_CODE('midi') +kOMSComponentSubType = FOUR_CHAR_CODE('OMS ') +kFMSComponentSubType = FOUR_CHAR_CODE('FMS ') +kMIDIManagerComponentSubType = FOUR_CHAR_CODE('mmgr') +kOSXMIDIComponentSubType = FOUR_CHAR_CODE('osxm') +kMusicPacketPortLost = 1 +kMusicPacketPortFound = 2 +kMusicPacketTimeGap = 3 +kAppleSysexID = 0x11 +kAppleSysexCmdSampleSize = 0x0001 +kAppleSysexCmdSampleBreak = 0x0002 +kAppleSysexCmdAtomicInstrument = 0x0010 +kAppleSysexCmdDeveloper = 0x7F00 +kSynthesizerConnectionFMS = 1 +kSynthesizerConnectionMMgr = 2 +kSynthesizerConnectionOMS = 4 +kSynthesizerConnectionQT = 8 +kSynthesizerConnectionOSXMIDI = 16 +kSynthesizerConnectionUnavailable = 256 +kMusicComponentType = FOUR_CHAR_CODE('musi') +kInstrumentComponentType = FOUR_CHAR_CODE('inst') +kSoftSynthComponentSubType = FOUR_CHAR_CODE('ss ') +kGMSynthComponentSubType = FOUR_CHAR_CODE('gm ') +kSynthesizerDynamicVoice = 1 << 0 +kSynthesizerUsesMIDIPort = 1 << 1 +kSynthesizerMicrotone = 1 << 2 +kSynthesizerHasSamples = 1 << 3 +kSynthesizerMixedDrums = 1 << 4 +kSynthesizerSoftware = 1 << 5 +kSynthesizerHardware = 1 << 6 +kSynthesizerDynamicChannel = 1 << 7 +kSynthesizerHogsSystemChannel = 1 << 8 +kSynthesizerHasSystemChannel = 1 << 9 +kSynthesizerSlowSetPart = 1 << 10 +kSynthesizerOffline = 1 << 12 +kSynthesizerGM = 1 << 14 +kSynthesizerDLS = 1 << 15 +kSynthesizerSoundLocalization = 1 << 16 +kControllerModulationWheel = 1 +kControllerBreath = 2 +kControllerFoot = 4 +kControllerPortamentoTime = 5 +kControllerVolume = 7 +kControllerBalance = 8 +kControllerPan = 10 +kControllerExpression = 11 +kControllerLever1 = 16 +kControllerLever2 = 17 +kControllerLever3 = 18 +kControllerLever4 = 19 +kControllerLever5 = 80 +kControllerLever6 = 81 +kControllerLever7 = 82 +kControllerLever8 = 83 +kControllerPitchBend = 32 +kControllerAfterTouch = 33 +kControllerPartTranspose = 40 +kControllerTuneTranspose = 41 +kControllerPartVolume = 42 +kControllerTuneVolume = 43 +kControllerSustain = 64 +kControllerPortamento = 65 +kControllerSostenuto = 66 +kControllerSoftPedal = 67 +kControllerReverb = 91 +kControllerTremolo = 92 +kControllerChorus = 93 +kControllerCeleste = 94 +kControllerPhaser = 95 +kControllerEditPart = 113 +kControllerMasterTune = 114 +kControllerMasterTranspose = 114 +kControllerMasterVolume = 115 +kControllerMasterCPULoad = 116 +kControllerMasterPolyphony = 117 +kControllerMasterFeatures = 118 +kQTMSKnobStartID = 0x02000000 +kQTMSKnobVolumeAttackTimeID = 0x02000001 +kQTMSKnobVolumeDecayTimeID = 0x02000002 +kQTMSKnobVolumeSustainLevelID = 0x02000003 +kQTMSKnobVolumeRelease1RateID = 0x02000004 +kQTMSKnobVolumeDecayKeyScalingID = 0x02000005 +kQTMSKnobVolumeReleaseTimeID = 0x02000006 +kQTMSKnobVolumeLFODelayID = 0x02000007 +kQTMSKnobVolumeLFORampTimeID = 0x02000008 +kQTMSKnobVolumeLFOPeriodID = 0x02000009 +kQTMSKnobVolumeLFOShapeID = 0x0200000A +kQTMSKnobVolumeLFODepthID = 0x0200000B +kQTMSKnobVolumeOverallID = 0x0200000C +kQTMSKnobVolumeVelocity127ID = 0x0200000D +kQTMSKnobVolumeVelocity96ID = 0x0200000E +kQTMSKnobVolumeVelocity64ID = 0x0200000F +kQTMSKnobVolumeVelocity32ID = 0x02000010 +kQTMSKnobVolumeVelocity16ID = 0x02000011 +kQTMSKnobPitchTransposeID = 0x02000012 +kQTMSKnobPitchLFODelayID = 0x02000013 +kQTMSKnobPitchLFORampTimeID = 0x02000014 +kQTMSKnobPitchLFOPeriodID = 0x02000015 +kQTMSKnobPitchLFOShapeID = 0x02000016 +kQTMSKnobPitchLFODepthID = 0x02000017 +kQTMSKnobPitchLFOQuantizeID = 0x02000018 +kQTMSKnobStereoDefaultPanID = 0x02000019 +kQTMSKnobStereoPositionKeyScalingID = 0x0200001A +kQTMSKnobPitchLFOOffsetID = 0x0200001B +kQTMSKnobExclusionGroupID = 0x0200001C +kQTMSKnobSustainTimeID = 0x0200001D +kQTMSKnobSustainInfiniteID = 0x0200001E +kQTMSKnobVolumeLFOStereoID = 0x0200001F +kQTMSKnobVelocityLowID = 0x02000020 +kQTMSKnobVelocityHighID = 0x02000021 +kQTMSKnobVelocitySensitivityID = 0x02000022 +kQTMSKnobPitchSensitivityID = 0x02000023 +kQTMSKnobVolumeLFODepthFromWheelID = 0x02000024 +kQTMSKnobPitchLFODepthFromWheelID = 0x02000025 +kQTMSKnobVolumeExpOptionsID = 0x02000026 +kQTMSKnobEnv1AttackTimeID = 0x02000027 +kQTMSKnobEnv1DecayTimeID = 0x02000028 +kQTMSKnobEnv1SustainLevelID = 0x02000029 +kQTMSKnobEnv1SustainTimeID = 0x0200002A +kQTMSKnobEnv1SustainInfiniteID = 0x0200002B +kQTMSKnobEnv1ReleaseTimeID = 0x0200002C +kQTMSKnobEnv1ExpOptionsID = 0x0200002D +kQTMSKnobEnv2AttackTimeID = 0x0200002E +kQTMSKnobEnv2DecayTimeID = 0x0200002F +kQTMSKnobEnv2SustainLevelID = 0x02000030 +kQTMSKnobEnv2SustainTimeID = 0x02000031 +kQTMSKnobEnv2SustainInfiniteID = 0x02000032 +kQTMSKnobEnv2ReleaseTimeID = 0x02000033 +kQTMSKnobEnv2ExpOptionsID = 0x02000034 +kQTMSKnobPitchEnvelopeID = 0x02000035 +kQTMSKnobPitchEnvelopeDepthID = 0x02000036 +kQTMSKnobFilterKeyFollowID = 0x02000037 +kQTMSKnobFilterTransposeID = 0x02000038 +kQTMSKnobFilterQID = 0x02000039 +kQTMSKnobFilterFrequencyEnvelopeID = 0x0200003A +kQTMSKnobFilterFrequencyEnvelopeDepthID = 0x0200003B +kQTMSKnobFilterQEnvelopeID = 0x0200003C +kQTMSKnobFilterQEnvelopeDepthID = 0x0200003D +kQTMSKnobReverbThresholdID = 0x0200003E +kQTMSKnobVolumeAttackVelScalingID = 0x0200003F +kQTMSKnobLastIDPlus1 = 0x02000040 +kControllerMaximum = 0x00007FFF +# kControllerMinimum = (long)0xFFFF8000 +kVoiceCountDynamic = -1 +kFirstGMInstrument = 0x00000001 +kLastGMInstrument = 0x00000080 +kFirstGSInstrument = 0x00000081 +kLastGSInstrument = 0x00003FFF +kFirstDrumkit = 0x00004000 +kLastDrumkit = 0x00004080 +kFirstROMInstrument = 0x00008000 +kLastROMInstrument = 0x0000FFFF +kFirstUserInstrument = 0x00010000 +kLastUserInstrument = 0x0001FFFF +kInstrumentMatchSynthesizerType = 1 +kInstrumentMatchSynthesizerName = 2 +kInstrumentMatchName = 4 +kInstrumentMatchNumber = 8 +kInstrumentMatchGMNumber = 16 +kInstrumentMatchGSNumber = 32 +kKnobBasic = 8 +kKnobReadOnly = 16 +kKnobInterruptUnsafe = 32 +kKnobKeyrangeOverride = 64 +kKnobGroupStart = 128 +kKnobFixedPoint8 = 1024 +kKnobFixedPoint16 = 2048 +kKnobTypeNumber = 0 << 12 +kKnobTypeGroupName = 1 << 12 +kKnobTypeBoolean = 2 << 12 +kKnobTypeNote = 3 << 12 +kKnobTypePan = 4 << 12 +kKnobTypeInstrument = 5 << 12 +kKnobTypeSetting = 6 << 12 +kKnobTypeMilliseconds = 7 << 12 +kKnobTypePercentage = 8 << 12 +kKnobTypeHertz = 9 << 12 +kKnobTypeButton = 10 << 12 +kUnknownKnobValue = 0x7FFFFFFF +kDefaultKnobValue = 0x7FFFFFFE +notImplementedMusicErr = (0x80000000 | (0xFFFF & (notImplementedMusicOSErr))) +cantSendToSynthesizerErr = (0x80000000 | (0xFFFF & (cantSendToSynthesizerOSErr))) +cantReceiveFromSynthesizerErr = (0x80000000 | (0xFFFF & (cantReceiveFromSynthesizerOSErr))) +illegalVoiceAllocationErr = (0x80000000 | (0xFFFF & (illegalVoiceAllocationOSErr))) +illegalPartErr = (0x80000000 | (0xFFFF & (illegalPartOSErr))) +illegalChannelErr = (0x80000000 | (0xFFFF & (illegalChannelOSErr))) +illegalKnobErr = (0x80000000 | (0xFFFF & (illegalKnobOSErr))) +illegalKnobValueErr = (0x80000000 | (0xFFFF & (illegalKnobValueOSErr))) +illegalInstrumentErr = (0x80000000 | (0xFFFF & (illegalInstrumentOSErr))) +illegalControllerErr = (0x80000000 | (0xFFFF & (illegalControllerOSErr))) +midiManagerAbsentErr = (0x80000000 | (0xFFFF & (midiManagerAbsentOSErr))) +synthesizerNotRespondingErr = (0x80000000 | (0xFFFF & (synthesizerNotRespondingOSErr))) +synthesizerErr = (0x80000000 | (0xFFFF & (synthesizerOSErr))) +illegalNoteChannelErr = (0x80000000 | (0xFFFF & (illegalNoteChannelOSErr))) +noteChannelNotAllocatedErr = (0x80000000 | (0xFFFF & (noteChannelNotAllocatedOSErr))) +tunePlayerFullErr = (0x80000000 | (0xFFFF & (tunePlayerFullOSErr))) +tuneParseErr = (0x80000000 | (0xFFFF & (tuneParseOSErr))) +kGetAtomicInstNoExpandedSamples = 1 << 0 +kGetAtomicInstNoOriginalSamples = 1 << 1 +kGetAtomicInstNoSamples = kGetAtomicInstNoExpandedSamples | kGetAtomicInstNoOriginalSamples +kGetAtomicInstNoKnobList = 1 << 2 +kGetAtomicInstNoInstrumentInfo = 1 << 3 +kGetAtomicInstOriginalKnobList = 1 << 4 +kGetAtomicInstAllKnobs = 1 << 5 +kSetAtomicInstKeepOriginalInstrument = 1 << 0 +kSetAtomicInstShareAcrossParts = 1 << 1 +kSetAtomicInstCallerTosses = 1 << 2 +kSetAtomicInstCallerGuarantees = 1 << 3 +kSetAtomicInstInterruptSafe = 1 << 4 +kSetAtomicInstDontPreprocess = 1 << 7 +kInstrumentNamesModifiable = 1 +kInstrumentNamesBoth = 2 +kGenericMusicComponentSubtype = FOUR_CHAR_CODE('gene') +kGenericMusicKnob = 1 +kGenericMusicInstrumentKnob = 2 +kGenericMusicDrumKnob = 3 +kGenericMusicGlobalController = 4 +kGenericMusicResFirst = 0 +kGenericMusicResMiscStringList = 1 +kGenericMusicResMiscLongList = 2 +kGenericMusicResInstrumentList = 3 +kGenericMusicResDrumList = 4 +kGenericMusicResInstrumentKnobDescriptionList = 5 +kGenericMusicResDrumKnobDescriptionList = 6 +kGenericMusicResKnobDescriptionList = 7 +kGenericMusicResBitsLongList = 8 +kGenericMusicResModifiableInstrumentHW = 9 +kGenericMusicResGMTranslation = 10 +kGenericMusicResROMInstrumentData = 11 +kGenericMusicResAboutPICT = 12 +kGenericMusicResLast = 13 +kGenericMusicMiscLongFirst = 0 +kGenericMusicMiscLongVoiceCount = 1 +kGenericMusicMiscLongPartCount = 2 +kGenericMusicMiscLongModifiableInstrumentCount = 3 +kGenericMusicMiscLongChannelMask = 4 +kGenericMusicMiscLongDrumPartCount = 5 +kGenericMusicMiscLongModifiableDrumCount = 6 +kGenericMusicMiscLongDrumChannelMask = 7 +kGenericMusicMiscLongOutputCount = 8 +kGenericMusicMiscLongLatency = 9 +kGenericMusicMiscLongFlags = 10 +kGenericMusicMiscLongFirstGMHW = 11 +kGenericMusicMiscLongFirstGMDrumHW = 12 +kGenericMusicMiscLongFirstUserHW = 13 +kGenericMusicMiscLongLast = 14 +kMusicGenericRange = 0x0100 +kMusicDerivedRange = 0x0200 +kGenericMusicDoMIDI = 1 << 0 +kGenericMusicBank0 = 1 << 1 +kGenericMusicBank32 = 1 << 2 +kGenericMusicErsatzMIDI = 1 << 3 +kGenericMusicCallKnobs = 1 << 4 +kGenericMusicCallParts = 1 << 5 +kGenericMusicCallInstrument = 1 << 6 +kGenericMusicCallNumber = 1 << 7 +kGenericMusicCallROMInstrument = 1 << 8 +kGenericMusicAllDefaults = 1 << 9 +kGetInstrumentInfoNoBuiltIn = 1 << 0 +kGetInstrumentInfoMidiUserInst = 1 << 1 +kGetInstrumentInfoNoIText = 1 << 2 +kNoteRequestNoGM = 1 +kNoteRequestNoSynthType = 2 +kNoteRequestSynthMustMatch = 4 +kNoteRequestSpecifyMIDIChannel = 0x80 +kPickDontMix = 1 +kPickSameSynth = 2 +kPickUserInsts = 4 +kPickEditAllowEdit = 8 +kPickEditAllowPick = 16 +kPickEditSynthGlobal = 32 +kPickEditControllers = 64 +kNoteAllocatorComponentType = FOUR_CHAR_CODE('nota') +kNADummyOneSelect = 29 +kNADummyTwoSelect = 30 +kTuneQueueDepth = 8 +kTunePlayerComponentType = FOUR_CHAR_CODE('tune') +kTuneStartNow = 1 +kTuneDontClipNotes = 2 +kTuneExcludeEdgeNotes = 4 +kTuneQuickStart = 8 +kTuneLoopUntil = 16 +kTunePlayDifference = 32 +kTunePlayConcurrent = 64 +kTuneStartNewMaster = 16384 +kTuneStopFade = 1 +kTuneStopSustain = 2 +kTuneStopInstant = 4 +kTuneStopReleaseChannels = 8 +kTuneMixMute = 1 +kTuneMixSolo = 2 +kRestEventType = 0x00000000 +kNoteEventType = 0x00000001 +kControlEventType = 0x00000002 +kMarkerEventType = 0x00000003 +kUndefined1EventType = 0x00000008 +kXNoteEventType = 0x00000009 +kXControlEventType = 0x0000000A +kKnobEventType = 0x0000000B +kUndefined2EventType = 0x0000000C +kUndefined3EventType = 0x0000000D +kUndefined4EventType = 0x0000000E +kGeneralEventType = 0x0000000F +kXEventLengthBits = 0x00000002 +kGeneralEventLengthBits = 0x00000003 +kEventLen = 1L +kXEventLen = 2L +kRestEventLen = kEventLen +kNoteEventLen = kEventLen +kControlEventLen = kEventLen +kMarkerEventLen = kEventLen +kXNoteEventLen = kXEventLen +kXControlEventLen = kXEventLen +kGeneralEventLen = kXEventLen +kEventLengthFieldPos = 30 +kEventLengthFieldWidth = 2 +kEventTypeFieldPos = 29 +kEventTypeFieldWidth = 3 +kXEventTypeFieldPos = 28 +kXEventTypeFieldWidth = 4 +kEventPartFieldPos = 24 +kEventPartFieldWidth = 5 +kXEventPartFieldPos = 16 +kXEventPartFieldWidth = 12 +kRestEventDurationFieldPos = 0 +kRestEventDurationFieldWidth = 24 +kRestEventDurationMax = ((1L << kRestEventDurationFieldWidth) - 1) +kNoteEventPitchFieldPos = 18 +kNoteEventPitchFieldWidth = 6 +kNoteEventPitchOffset = 32 +kNoteEventVolumeFieldPos = 11 +kNoteEventVolumeFieldWidth = 7 +kNoteEventVolumeOffset = 0 +kNoteEventDurationFieldPos = 0 +kNoteEventDurationFieldWidth = 11 +kNoteEventDurationMax = ((1L << kNoteEventDurationFieldWidth) - 1) +kXNoteEventPitchFieldPos = 0 +kXNoteEventPitchFieldWidth = 16 +kXNoteEventDurationFieldPos = 0 +kXNoteEventDurationFieldWidth = 22 +kXNoteEventDurationMax = ((1L << kXNoteEventDurationFieldWidth) - 1) +kXNoteEventVolumeFieldPos = 22 +kXNoteEventVolumeFieldWidth = 7 +kControlEventControllerFieldPos = 16 +kControlEventControllerFieldWidth = 8 +kControlEventValueFieldPos = 0 +kControlEventValueFieldWidth = 16 +kXControlEventControllerFieldPos = 0 +kXControlEventControllerFieldWidth = 16 +kXControlEventValueFieldPos = 0 +kXControlEventValueFieldWidth = 16 +kKnobEventValueHighFieldPos = 0 +kKnobEventValueHighFieldWidth = 16 +kKnobEventKnobFieldPos = 16 +kKnobEventKnobFieldWidth = 14 +kKnobEventValueLowFieldPos = 0 +kKnobEventValueLowFieldWidth = 16 +kMarkerEventSubtypeFieldPos = 16 +kMarkerEventSubtypeFieldWidth = 8 +kMarkerEventValueFieldPos = 0 +kMarkerEventValueFieldWidth = 16 +kGeneralEventSubtypeFieldPos = 16 +kGeneralEventSubtypeFieldWidth = 14 +kGeneralEventLengthFieldPos = 0 +kGeneralEventLengthFieldWidth = 16 +kEndMarkerValue = 0x00000060 +kEndMarkerValue = 0x60000000 +# _ext = qtma_EXT(*lP +# ulen = (_ext < 2) ? 1 : 2 +# ulen = (unsigned short)qtma_EXT(*lP +# ulen = lP[1] +# _ext = qtma_EXT(*lP +# ulen = (_ext < 2) ? 1 : 2 +# ulen = (unsigned short)qtma_EXT(*lP +# ulen = lP[-1] +# x = (kRestEventType << kEventTypeFieldPos) \ +# x = EndianU32_NtoB(x) ) +# x = (kNoteEventType << kEventTypeFieldPos) \ +# x = EndianU32_NtoB(x) ) +# x = (kControlEventType << kEventTypeFieldPos) \ +# x = EndianU32_NtoB(x) ) +# x = (kMarkerEventType << kEventTypeFieldPos) \ +# x = EndianU32_NtoB(x) ) +# w1 = (kXNoteEventType << kXEventTypeFieldPos) \ +# w1 = EndianU32_NtoB(w1) +# w2 = (kXEventLengthBits << kEventLengthFieldPos) \ +# w2 = EndianU32_NtoB(w2) ) +# w1 = (kXControlEventType << kXEventTypeFieldPos) \ +# w1 = EndianU32_NtoB(w1) +# w2 = (kXEventLengthBits << kEventLengthFieldPos) \ +# w2 = EndianU32_NtoB(w2) ) +# w1 = (kKnobEventType << kXEventTypeFieldPos) \ +# w1 = EndianU32_NtoB(w1) +# w2 = (kXEventLengthBits << kEventLengthFieldPos) \ +# w2 = EndianU32_NtoB(w2) ) +# w1 = (kGeneralEventType << kXEventTypeFieldPos) \ +# w1 = EndianU32_NtoB(w1) +# w2 = (kGeneralEventLengthBits << kEventLengthFieldPos) \ +# w2 = EndianU32_NtoB(w2) ) +kGeneralEventNoteRequest = 1 +kGeneralEventPartKey = 4 +kGeneralEventTuneDifference = 5 +kGeneralEventAtomicInstrument = 6 +kGeneralEventKnob = 7 +kGeneralEventMIDIChannel = 8 +kGeneralEventPartChange = 9 +kGeneralEventNoOp = 10 +kGeneralEventUsedNotes = 11 +kGeneralEventPartMix = 12 +kMarkerEventEnd = 0 +kMarkerEventBeat = 1 +kMarkerEventTempo = 2 +kCurrentlyNativeEndian = 1 +kCurrentlyNotNativeEndian = 2 +kQTMIDIGetMIDIPortsSelect = 0x0001 +kQTMIDIUseSendPortSelect = 0x0002 +kQTMIDISendMIDISelect = 0x0003 +kMusicGetDescriptionSelect = 0x0001 +kMusicGetPartSelect = 0x0002 +kMusicSetPartSelect = 0x0003 +kMusicSetPartInstrumentNumberSelect = 0x0004 +kMusicGetPartInstrumentNumberSelect = 0x0005 +kMusicStorePartInstrumentSelect = 0x0006 +kMusicGetPartAtomicInstrumentSelect = 0x0009 +kMusicSetPartAtomicInstrumentSelect = 0x000A +kMusicGetPartKnobSelect = 0x0010 +kMusicSetPartKnobSelect = 0x0011 +kMusicGetKnobSelect = 0x0012 +kMusicSetKnobSelect = 0x0013 +kMusicGetPartNameSelect = 0x0014 +kMusicSetPartNameSelect = 0x0015 +kMusicFindToneSelect = 0x0016 +kMusicPlayNoteSelect = 0x0017 +kMusicResetPartSelect = 0x0018 +kMusicSetPartControllerSelect = 0x0019 +kMusicGetPartControllerSelect = 0x001A +kMusicGetMIDIProcSelect = 0x001B +kMusicSetMIDIProcSelect = 0x001C +kMusicGetInstrumentNamesSelect = 0x001D +kMusicGetDrumNamesSelect = 0x001E +kMusicGetMasterTuneSelect = 0x001F +kMusicSetMasterTuneSelect = 0x0020 +kMusicGetInstrumentAboutInfoSelect = 0x0022 +kMusicGetDeviceConnectionSelect = 0x0023 +kMusicUseDeviceConnectionSelect = 0x0024 +kMusicGetKnobSettingStringsSelect = 0x0025 +kMusicGetMIDIPortsSelect = 0x0026 +kMusicSendMIDISelect = 0x0027 +kMusicStartOfflineSelect = 0x0029 +kMusicSetOfflineTimeToSelect = 0x002A +kMusicGetInstrumentKnobDescriptionSelect = 0x002B +kMusicGetDrumKnobDescriptionSelect = 0x002C +kMusicGetKnobDescriptionSelect = 0x002D +kMusicGetInfoTextSelect = 0x002E +kMusicGetInstrumentInfoSelect = 0x002F +kMusicTaskSelect = 0x0031 +kMusicSetPartInstrumentNumberInterruptSafeSelect = 0x0032 +kMusicSetPartSoundLocalizationSelect = 0x0033 +kMusicGenericConfigureSelect = 0x0100 +kMusicGenericGetPartSelect = 0x0101 +kMusicGenericGetKnobListSelect = 0x0102 +kMusicGenericSetResourceNumbersSelect = 0x0103 +kMusicDerivedMIDISendSelect = 0x0200 +kMusicDerivedSetKnobSelect = 0x0201 +kMusicDerivedSetPartSelect = 0x0202 +kMusicDerivedSetInstrumentSelect = 0x0203 +kMusicDerivedSetPartInstrumentNumberSelect = 0x0204 +kMusicDerivedSetMIDISelect = 0x0205 +kMusicDerivedStorePartInstrumentSelect = 0x0206 +kMusicDerivedOpenResFileSelect = 0x0207 +kMusicDerivedCloseResFileSelect = 0x0208 +kNARegisterMusicDeviceSelect = 0x0000 +kNAUnregisterMusicDeviceSelect = 0x0001 +kNAGetRegisteredMusicDeviceSelect = 0x0002 +kNASaveMusicConfigurationSelect = 0x0003 +kNANewNoteChannelSelect = 0x0004 +kNADisposeNoteChannelSelect = 0x0005 +kNAGetNoteChannelInfoSelect = 0x0006 +kNAPrerollNoteChannelSelect = 0x0007 +kNAUnrollNoteChannelSelect = 0x0008 +kNASetNoteChannelVolumeSelect = 0x000B +kNAResetNoteChannelSelect = 0x000C +kNAPlayNoteSelect = 0x000D +kNASetControllerSelect = 0x000E +kNASetKnobSelect = 0x000F +kNAFindNoteChannelToneSelect = 0x0010 +kNASetInstrumentNumberSelect = 0x0011 +kNAPickInstrumentSelect = 0x0012 +kNAPickArrangementSelect = 0x0013 +kNAStuffToneDescriptionSelect = 0x001B +kNACopyrightDialogSelect = 0x001C +kNAGetIndNoteChannelSelect = 0x001F +kNAGetMIDIPortsSelect = 0x0021 +kNAGetNoteRequestSelect = 0x0022 +kNASendMIDISelect = 0x0023 +kNAPickEditInstrumentSelect = 0x0024 +kNANewNoteChannelFromAtomicInstrumentSelect = 0x0025 +kNASetAtomicInstrumentSelect = 0x0026 +kNAGetKnobSelect = 0x0028 +kNATaskSelect = 0x0029 +kNASetNoteChannelBalanceSelect = 0x002A +kNASetInstrumentNumberInterruptSafeSelect = 0x002B +kNASetNoteChannelSoundLocalizationSelect = 0x002C +kNAGetControllerSelect = 0x002D +kTuneSetHeaderSelect = 0x0004 +kTuneGetTimeBaseSelect = 0x0005 +kTuneSetTimeScaleSelect = 0x0006 +kTuneGetTimeScaleSelect = 0x0007 +kTuneGetIndexedNoteChannelSelect = 0x0008 +kTuneQueueSelect = 0x000A +kTuneInstantSelect = 0x000B +kTuneGetStatusSelect = 0x000C +kTuneStopSelect = 0x000D +kTuneSetVolumeSelect = 0x0010 +kTuneGetVolumeSelect = 0x0011 +kTunePrerollSelect = 0x0012 +kTuneUnrollSelect = 0x0013 +kTuneSetNoteChannelsSelect = 0x0014 +kTuneSetPartTransposeSelect = 0x0015 +kTuneGetNoteAllocatorSelect = 0x0017 +kTuneSetSofterSelect = 0x0018 +kTuneTaskSelect = 0x0019 +kTuneSetBalanceSelect = 0x001A +kTuneSetSoundLocalizationSelect = 0x001B +kTuneSetHeaderWithSizeSelect = 0x001C +kTuneSetPartMixSelect = 0x001D +kTuneGetPartMixSelect = 0x001E diff --git a/sys/lib/python/plat-mac/Carbon/Res.py b/sys/lib/python/plat-mac/Carbon/Res.py new file mode 100644 index 000000000..8f45d0946 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Res.py @@ -0,0 +1,4 @@ +try: + from OverrideFrom23._Res import * +except ImportError: + from _Res import * diff --git a/sys/lib/python/plat-mac/Carbon/Resources.py b/sys/lib/python/plat-mac/Carbon/Resources.py new file mode 100644 index 000000000..2cd876168 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Resources.py @@ -0,0 +1,27 @@ +# Generated from 'Resources.h' + +resSysHeap = 64 +resPurgeable = 32 +resLocked = 16 +resProtected = 8 +resPreload = 4 +resChanged = 2 +mapReadOnly = 128 +mapCompact = 64 +mapChanged = 32 +resSysRefBit = 7 +resSysHeapBit = 6 +resPurgeableBit = 5 +resLockedBit = 4 +resProtectedBit = 3 +resPreloadBit = 2 +resChangedBit = 1 +mapReadOnlyBit = 7 +mapCompactBit = 6 +mapChangedBit = 5 +kResFileNotOpened = -1 +kSystemResFile = 0 +kRsrcChainBelowSystemMap = 0 +kRsrcChainBelowApplicationMap = 1 +kRsrcChainAboveApplicationMap = 2 +kRsrcChainAboveAllMaps = 4 diff --git a/sys/lib/python/plat-mac/Carbon/Scrap.py b/sys/lib/python/plat-mac/Carbon/Scrap.py new file mode 100644 index 000000000..0dcbd3748 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Scrap.py @@ -0,0 +1 @@ +from _Scrap import * diff --git a/sys/lib/python/plat-mac/Carbon/Snd.py b/sys/lib/python/plat-mac/Carbon/Snd.py new file mode 100644 index 000000000..679f10b9c --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Snd.py @@ -0,0 +1 @@ +from _Snd import * diff --git a/sys/lib/python/plat-mac/Carbon/Sndihooks.py b/sys/lib/python/plat-mac/Carbon/Sndihooks.py new file mode 100644 index 000000000..73a3d284c --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Sndihooks.py @@ -0,0 +1 @@ +from _Sndihooks import * diff --git a/sys/lib/python/plat-mac/Carbon/Sound.py b/sys/lib/python/plat-mac/Carbon/Sound.py new file mode 100644 index 000000000..0e7b2fb64 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Sound.py @@ -0,0 +1,400 @@ +# Generated from 'Sound.h' + +def FOUR_CHAR_CODE(x): return x +soundListRsrc = FOUR_CHAR_CODE('snd ') +kSimpleBeepID = 1 +# rate48khz = (long)0xBB800000 +# rate44khz = (long)0xAC440000 +rate32khz = 0x7D000000 +rate22050hz = 0x56220000 +rate22khz = 0x56EE8BA3 +rate16khz = 0x3E800000 +rate11khz = 0x2B7745D1 +rate11025hz = 0x2B110000 +rate8khz = 0x1F400000 +sampledSynth = 5 +squareWaveSynth = 1 +waveTableSynth = 3 +MACE3snthID = 11 +MACE6snthID = 13 +kMiddleC = 60 +kNoVolume = 0 +kFullVolume = 0x0100 +stdQLength = 128 +dataOffsetFlag = 0x8000 +kUseOptionalOutputDevice = -1 +notCompressed = 0 +fixedCompression = -1 +variableCompression = -2 +twoToOne = 1 +eightToThree = 2 +threeToOne = 3 +sixToOne = 4 +sixToOnePacketSize = 8 +threeToOnePacketSize = 16 +stateBlockSize = 64 +leftOverBlockSize = 32 +firstSoundFormat = 0x0001 +secondSoundFormat = 0x0002 +dbBufferReady = 0x00000001 +dbLastBuffer = 0x00000004 +sysBeepDisable = 0x0000 +sysBeepEnable = (1 << 0) +sysBeepSynchronous = (1 << 1) +unitTypeNoSelection = 0xFFFF +unitTypeSeconds = 0x0000 +stdSH = 0x00 +extSH = 0xFF +cmpSH = 0xFE +nullCmd = 0 +quietCmd = 3 +flushCmd = 4 +reInitCmd = 5 +waitCmd = 10 +pauseCmd = 11 +resumeCmd = 12 +callBackCmd = 13 +syncCmd = 14 +availableCmd = 24 +versionCmd = 25 +volumeCmd = 46 +getVolumeCmd = 47 +clockComponentCmd = 50 +getClockComponentCmd = 51 +scheduledSoundCmd = 52 +linkSoundComponentsCmd = 53 +soundCmd = 80 +bufferCmd = 81 +rateMultiplierCmd = 86 +getRateMultiplierCmd = 87 +initCmd = 1 +freeCmd = 2 +totalLoadCmd = 26 +loadCmd = 27 +freqDurationCmd = 40 +restCmd = 41 +freqCmd = 42 +ampCmd = 43 +timbreCmd = 44 +getAmpCmd = 45 +waveTableCmd = 60 +phaseCmd = 61 +rateCmd = 82 +continueCmd = 83 +doubleBufferCmd = 84 +getRateCmd = 85 +sizeCmd = 90 +convertCmd = 91 +waveInitChannelMask = 0x07 +waveInitChannel0 = 0x04 +waveInitChannel1 = 0x05 +waveInitChannel2 = 0x06 +waveInitChannel3 = 0x07 +initChan0 = waveInitChannel0 +initChan1 = waveInitChannel1 +initChan2 = waveInitChannel2 +initChan3 = waveInitChannel3 +outsideCmpSH = 0 +insideCmpSH = 1 +aceSuccess = 0 +aceMemFull = 1 +aceNilBlock = 2 +aceBadComp = 3 +aceBadEncode = 4 +aceBadDest = 5 +aceBadCmd = 6 +initChanLeft = 0x0002 +initChanRight = 0x0003 +initNoInterp = 0x0004 +initNoDrop = 0x0008 +initMono = 0x0080 +initStereo = 0x00C0 +initMACE3 = 0x0300 +initMACE6 = 0x0400 +initPanMask = 0x0003 +initSRateMask = 0x0030 +initStereoMask = 0x00C0 +initCompMask = 0xFF00 +siActiveChannels = FOUR_CHAR_CODE('chac') +siActiveLevels = FOUR_CHAR_CODE('lmac') +siAGCOnOff = FOUR_CHAR_CODE('agc ') +siAsync = FOUR_CHAR_CODE('asyn') +siAVDisplayBehavior = FOUR_CHAR_CODE('avdb') +siChannelAvailable = FOUR_CHAR_CODE('chav') +siCompressionAvailable = FOUR_CHAR_CODE('cmav') +siCompressionChannels = FOUR_CHAR_CODE('cpct') +siCompressionFactor = FOUR_CHAR_CODE('cmfa') +siCompressionHeader = FOUR_CHAR_CODE('cmhd') +siCompressionNames = FOUR_CHAR_CODE('cnam') +siCompressionParams = FOUR_CHAR_CODE('evaw') +siCompressionSampleRate = FOUR_CHAR_CODE('cprt') +siCompressionType = FOUR_CHAR_CODE('comp') +siContinuous = FOUR_CHAR_CODE('cont') +siDecompressionParams = FOUR_CHAR_CODE('wave') +siDeviceBufferInfo = FOUR_CHAR_CODE('dbin') +siDeviceConnected = FOUR_CHAR_CODE('dcon') +siDeviceIcon = FOUR_CHAR_CODE('icon') +siDeviceName = FOUR_CHAR_CODE('name') +siEQSpectrumBands = FOUR_CHAR_CODE('eqsb') +siEQSpectrumLevels = FOUR_CHAR_CODE('eqlv') +siEQSpectrumOnOff = FOUR_CHAR_CODE('eqlo') +siEQSpectrumResolution = FOUR_CHAR_CODE('eqrs') +siEQToneControlGain = FOUR_CHAR_CODE('eqtg') +siEQToneControlOnOff = FOUR_CHAR_CODE('eqtc') +siHardwareBalance = FOUR_CHAR_CODE('hbal') +siHardwareBalanceSteps = FOUR_CHAR_CODE('hbls') +siHardwareBass = FOUR_CHAR_CODE('hbas') +siHardwareBassSteps = FOUR_CHAR_CODE('hbst') +siHardwareBusy = FOUR_CHAR_CODE('hwbs') +siHardwareFormat = FOUR_CHAR_CODE('hwfm') +siHardwareMute = FOUR_CHAR_CODE('hmut') +siHardwareMuteNoPrefs = FOUR_CHAR_CODE('hmnp') +siHardwareTreble = FOUR_CHAR_CODE('htrb') +siHardwareTrebleSteps = FOUR_CHAR_CODE('hwts') +siHardwareVolume = FOUR_CHAR_CODE('hvol') +siHardwareVolumeSteps = FOUR_CHAR_CODE('hstp') +siHeadphoneMute = FOUR_CHAR_CODE('pmut') +siHeadphoneVolume = FOUR_CHAR_CODE('pvol') +siHeadphoneVolumeSteps = FOUR_CHAR_CODE('hdst') +siInputAvailable = FOUR_CHAR_CODE('inav') +siInputGain = FOUR_CHAR_CODE('gain') +siInputSource = FOUR_CHAR_CODE('sour') +siInputSourceNames = FOUR_CHAR_CODE('snam') +siLevelMeterOnOff = FOUR_CHAR_CODE('lmet') +siModemGain = FOUR_CHAR_CODE('mgai') +siMonitorAvailable = FOUR_CHAR_CODE('mnav') +siMonitorSource = FOUR_CHAR_CODE('mons') +siNumberChannels = FOUR_CHAR_CODE('chan') +siOptionsDialog = FOUR_CHAR_CODE('optd') +siOSTypeInputSource = FOUR_CHAR_CODE('inpt') +siOSTypeInputAvailable = FOUR_CHAR_CODE('inav') +siOutputDeviceName = FOUR_CHAR_CODE('onam') +siPlayThruOnOff = FOUR_CHAR_CODE('plth') +siPostMixerSoundComponent = FOUR_CHAR_CODE('psmx') +siPreMixerSoundComponent = FOUR_CHAR_CODE('prmx') +siQuality = FOUR_CHAR_CODE('qual') +siRateMultiplier = FOUR_CHAR_CODE('rmul') +siRecordingQuality = FOUR_CHAR_CODE('qual') +siSampleRate = FOUR_CHAR_CODE('srat') +siSampleRateAvailable = FOUR_CHAR_CODE('srav') +siSampleSize = FOUR_CHAR_CODE('ssiz') +siSampleSizeAvailable = FOUR_CHAR_CODE('ssav') +siSetupCDAudio = FOUR_CHAR_CODE('sucd') +siSetupModemAudio = FOUR_CHAR_CODE('sumd') +siSlopeAndIntercept = FOUR_CHAR_CODE('flap') +siSoundClock = FOUR_CHAR_CODE('sclk') +siUseThisSoundClock = FOUR_CHAR_CODE('sclc') +siSpeakerMute = FOUR_CHAR_CODE('smut') +siSpeakerVolume = FOUR_CHAR_CODE('svol') +siSSpCPULoadLimit = FOUR_CHAR_CODE('3dll') +siSSpLocalization = FOUR_CHAR_CODE('3dif') +siSSpSpeakerSetup = FOUR_CHAR_CODE('3dst') +siStereoInputGain = FOUR_CHAR_CODE('sgai') +siSubwooferMute = FOUR_CHAR_CODE('bmut') +siTerminalType = FOUR_CHAR_CODE('ttyp') +siTwosComplementOnOff = FOUR_CHAR_CODE('twos') +siVendorProduct = FOUR_CHAR_CODE('vpro') +siVolume = FOUR_CHAR_CODE('volu') +siVoxRecordInfo = FOUR_CHAR_CODE('voxr') +siVoxStopInfo = FOUR_CHAR_CODE('voxs') +siWideStereo = FOUR_CHAR_CODE('wide') +siSupportedExtendedFlags = FOUR_CHAR_CODE('exfl') +siRateConverterRollOffSlope = FOUR_CHAR_CODE('rcdb') +siOutputLatency = FOUR_CHAR_CODE('olte') +siCloseDriver = FOUR_CHAR_CODE('clos') +siInitializeDriver = FOUR_CHAR_CODE('init') +siPauseRecording = FOUR_CHAR_CODE('paus') +siUserInterruptProc = FOUR_CHAR_CODE('user') +# kInvalidSource = (long)0xFFFFFFFF +kNoSource = FOUR_CHAR_CODE('none') +kCDSource = FOUR_CHAR_CODE('cd ') +kExtMicSource = FOUR_CHAR_CODE('emic') +kSoundInSource = FOUR_CHAR_CODE('sinj') +kRCAInSource = FOUR_CHAR_CODE('irca') +kTVFMTunerSource = FOUR_CHAR_CODE('tvfm') +kDAVInSource = FOUR_CHAR_CODE('idav') +kIntMicSource = FOUR_CHAR_CODE('imic') +kMediaBaySource = FOUR_CHAR_CODE('mbay') +kModemSource = FOUR_CHAR_CODE('modm') +kPCCardSource = FOUR_CHAR_CODE('pcm ') +kZoomVideoSource = FOUR_CHAR_CODE('zvpc') +kDVDSource = FOUR_CHAR_CODE('dvda') +kMicrophoneArray = FOUR_CHAR_CODE('mica') +kNoSoundComponentType = FOUR_CHAR_CODE('****') +kSoundComponentType = FOUR_CHAR_CODE('sift') +kSoundComponentPPCType = FOUR_CHAR_CODE('nift') +kRate8SubType = FOUR_CHAR_CODE('ratb') +kRate16SubType = FOUR_CHAR_CODE('ratw') +kConverterSubType = FOUR_CHAR_CODE('conv') +kSndSourceSubType = FOUR_CHAR_CODE('sour') +kMixerType = FOUR_CHAR_CODE('mixr') +kMixer8SubType = FOUR_CHAR_CODE('mixb') +kMixer16SubType = FOUR_CHAR_CODE('mixw') +kSoundInputDeviceType = FOUR_CHAR_CODE('sinp') +kWaveInSubType = FOUR_CHAR_CODE('wavi') +kWaveInSnifferSubType = FOUR_CHAR_CODE('wisn') +kSoundOutputDeviceType = FOUR_CHAR_CODE('sdev') +kClassicSubType = FOUR_CHAR_CODE('clas') +kASCSubType = FOUR_CHAR_CODE('asc ') +kDSPSubType = FOUR_CHAR_CODE('dsp ') +kAwacsSubType = FOUR_CHAR_CODE('awac') +kGCAwacsSubType = FOUR_CHAR_CODE('awgc') +kSingerSubType = FOUR_CHAR_CODE('sing') +kSinger2SubType = FOUR_CHAR_CODE('sng2') +kWhitSubType = FOUR_CHAR_CODE('whit') +kSoundBlasterSubType = FOUR_CHAR_CODE('sbls') +kWaveOutSubType = FOUR_CHAR_CODE('wavo') +kWaveOutSnifferSubType = FOUR_CHAR_CODE('wosn') +kDirectSoundSubType = FOUR_CHAR_CODE('dsnd') +kDirectSoundSnifferSubType = FOUR_CHAR_CODE('dssn') +kUNIXsdevSubType = FOUR_CHAR_CODE('un1x') +kUSBSubType = FOUR_CHAR_CODE('usb ') +kBlueBoxSubType = FOUR_CHAR_CODE('bsnd') +kSoundCompressor = FOUR_CHAR_CODE('scom') +kSoundDecompressor = FOUR_CHAR_CODE('sdec') +kAudioComponentType = FOUR_CHAR_CODE('adio') +kAwacsPhoneSubType = FOUR_CHAR_CODE('hphn') +kAudioVisionSpeakerSubType = FOUR_CHAR_CODE('telc') +kAudioVisionHeadphoneSubType = FOUR_CHAR_CODE('telh') +kPhilipsFaderSubType = FOUR_CHAR_CODE('tvav') +kSGSToneSubType = FOUR_CHAR_CODE('sgs0') +kSoundEffectsType = FOUR_CHAR_CODE('snfx') +kEqualizerSubType = FOUR_CHAR_CODE('eqal') +kSSpLocalizationSubType = FOUR_CHAR_CODE('snd3') +kSoundNotCompressed = FOUR_CHAR_CODE('NONE') +k8BitOffsetBinaryFormat = FOUR_CHAR_CODE('raw ') +k16BitBigEndianFormat = FOUR_CHAR_CODE('twos') +k16BitLittleEndianFormat = FOUR_CHAR_CODE('sowt') +kFloat32Format = FOUR_CHAR_CODE('fl32') +kFloat64Format = FOUR_CHAR_CODE('fl64') +k24BitFormat = FOUR_CHAR_CODE('in24') +k32BitFormat = FOUR_CHAR_CODE('in32') +k32BitLittleEndianFormat = FOUR_CHAR_CODE('23ni') +kMACE3Compression = FOUR_CHAR_CODE('MAC3') +kMACE6Compression = FOUR_CHAR_CODE('MAC6') +kCDXA4Compression = FOUR_CHAR_CODE('cdx4') +kCDXA2Compression = FOUR_CHAR_CODE('cdx2') +kIMACompression = FOUR_CHAR_CODE('ima4') +kULawCompression = FOUR_CHAR_CODE('ulaw') +kALawCompression = FOUR_CHAR_CODE('alaw') +kMicrosoftADPCMFormat = 0x6D730002 +kDVIIntelIMAFormat = 0x6D730011 +kDVAudioFormat = FOUR_CHAR_CODE('dvca') +kQDesignCompression = FOUR_CHAR_CODE('QDMC') +kQDesign2Compression = FOUR_CHAR_CODE('QDM2') +kQUALCOMMCompression = FOUR_CHAR_CODE('Qclp') +kOffsetBinary = k8BitOffsetBinaryFormat +kTwosComplement = k16BitBigEndianFormat +kLittleEndianFormat = k16BitLittleEndianFormat +kMPEGLayer3Format = 0x6D730055 +kFullMPEGLay3Format = FOUR_CHAR_CODE('.mp3') +k16BitNativeEndianFormat = k16BitLittleEndianFormat +k16BitNonNativeEndianFormat = k16BitBigEndianFormat +k16BitNativeEndianFormat = k16BitBigEndianFormat +k16BitNonNativeEndianFormat = k16BitLittleEndianFormat +k8BitRawIn = (1 << 0) +k8BitTwosIn = (1 << 1) +k16BitIn = (1 << 2) +kStereoIn = (1 << 3) +k8BitRawOut = (1 << 8) +k8BitTwosOut = (1 << 9) +k16BitOut = (1 << 10) +kStereoOut = (1 << 11) +kReverse = (1L << 16) +kRateConvert = (1L << 17) +kCreateSoundSource = (1L << 18) +kVMAwareness = (1L << 21) +kHighQuality = (1L << 22) +kNonRealTime = (1L << 23) +kSourcePaused = (1 << 0) +kPassThrough = (1L << 16) +kNoSoundComponentChain = (1L << 17) +kNoMixing = (1 << 0) +kNoSampleRateConversion = (1 << 1) +kNoSampleSizeConversion = (1 << 2) +kNoSampleFormatConversion = (1 << 3) +kNoChannelConversion = (1 << 4) +kNoDecompression = (1 << 5) +kNoVolumeConversion = (1 << 6) +kNoRealtimeProcessing = (1 << 7) +kScheduledSource = (1 << 8) +kNonInterleavedBuffer = (1 << 9) +kNonPagingMixer = (1 << 10) +kSoundConverterMixer = (1 << 11) +kPagingMixer = (1 << 12) +kVMAwareMixer = (1 << 13) +kExtendedSoundData = (1 << 14) +kBestQuality = (1 << 0) +kInputMask = 0x000000FF +kOutputMask = 0x0000FF00 +kOutputShift = 8 +kActionMask = 0x00FF0000 +kSoundComponentBits = 0x00FFFFFF +kAudioFormatAtomType = FOUR_CHAR_CODE('frma') +kAudioEndianAtomType = FOUR_CHAR_CODE('enda') +kAudioVBRAtomType = FOUR_CHAR_CODE('vbra') +kAudioTerminatorAtomType = 0 +kAVDisplayHeadphoneRemove = 0 +kAVDisplayHeadphoneInsert = 1 +kAVDisplayPlainTalkRemove = 2 +kAVDisplayPlainTalkInsert = 3 +audioAllChannels = 0 +audioLeftChannel = 1 +audioRightChannel = 2 +audioUnmuted = 0 +audioMuted = 1 +audioDoesMono = (1L << 0) +audioDoesStereo = (1L << 1) +audioDoesIndependentChannels = (1L << 2) +siCDQuality = FOUR_CHAR_CODE('cd ') +siBestQuality = FOUR_CHAR_CODE('best') +siBetterQuality = FOUR_CHAR_CODE('betr') +siGoodQuality = FOUR_CHAR_CODE('good') +siNoneQuality = FOUR_CHAR_CODE('none') +siDeviceIsConnected = 1 +siDeviceNotConnected = 0 +siDontKnowIfConnected = -1 +siReadPermission = 0 +siWritePermission = 1 +kSoundConverterDidntFillBuffer = (1 << 0) +kSoundConverterHasLeftOverData = (1 << 1) +kExtendedSoundSampleCountNotValid = 1L << 0 +kExtendedSoundBufferSizeValid = 1L << 1 +kScheduledSoundDoScheduled = 1 << 0 +kScheduledSoundDoCallBack = 1 << 1 +kScheduledSoundExtendedHdr = 1 << 2 +kSoundComponentInitOutputDeviceSelect = 0x0001 +kSoundComponentSetSourceSelect = 0x0002 +kSoundComponentGetSourceSelect = 0x0003 +kSoundComponentGetSourceDataSelect = 0x0004 +kSoundComponentSetOutputSelect = 0x0005 +kSoundComponentAddSourceSelect = 0x0101 +kSoundComponentRemoveSourceSelect = 0x0102 +kSoundComponentGetInfoSelect = 0x0103 +kSoundComponentSetInfoSelect = 0x0104 +kSoundComponentStartSourceSelect = 0x0105 +kSoundComponentStopSourceSelect = 0x0106 +kSoundComponentPauseSourceSelect = 0x0107 +kSoundComponentPlaySourceBufferSelect = 0x0108 +kAudioGetVolumeSelect = 0x0000 +kAudioSetVolumeSelect = 0x0001 +kAudioGetMuteSelect = 0x0002 +kAudioSetMuteSelect = 0x0003 +kAudioSetToDefaultsSelect = 0x0004 +kAudioGetInfoSelect = 0x0005 +kAudioGetBassSelect = 0x0006 +kAudioSetBassSelect = 0x0007 +kAudioGetTrebleSelect = 0x0008 +kAudioSetTrebleSelect = 0x0009 +kAudioGetOutputDeviceSelect = 0x000A +kAudioMuteOnEventSelect = 0x0081 +kDelegatedSoundComponentSelectors = 0x0100 +kSndInputReadAsyncSelect = 0x0001 +kSndInputReadSyncSelect = 0x0002 +kSndInputPauseRecordingSelect = 0x0003 +kSndInputResumeRecordingSelect = 0x0004 +kSndInputStopRecordingSelect = 0x0005 +kSndInputGetStatusSelect = 0x0006 +kSndInputGetDeviceInfoSelect = 0x0007 +kSndInputSetDeviceInfoSelect = 0x0008 +kSndInputInitHardwareSelect = 0x0009 diff --git a/sys/lib/python/plat-mac/Carbon/TE.py b/sys/lib/python/plat-mac/Carbon/TE.py new file mode 100644 index 000000000..4351d7a40 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/TE.py @@ -0,0 +1 @@ +from _TE import * diff --git a/sys/lib/python/plat-mac/Carbon/TextEdit.py b/sys/lib/python/plat-mac/Carbon/TextEdit.py new file mode 100644 index 000000000..176795af9 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/TextEdit.py @@ -0,0 +1,57 @@ +# Generated from 'TextEdit.h' + +teJustLeft = 0 +teJustCenter = 1 +teJustRight = -1 +teForceLeft = -2 +teFlushDefault = 0 +teCenter = 1 +teFlushRight = -1 +teFlushLeft = -2 +fontBit = 0 +faceBit = 1 +sizeBit = 2 +clrBit = 3 +addSizeBit = 4 +toggleBit = 5 +doFont = 1 +doFace = 2 +doSize = 4 +doColor = 8 +doAll = 15 +addSize = 16 +doToggle = 32 +EOLHook = 0 +DRAWHook = 4 +WIDTHHook = 8 +HITTESTHook = 12 +nWIDTHHook = 24 +TextWidthHook = 28 +intEOLHook = 0 +intDrawHook = 1 +intWidthHook = 2 +intHitTestHook = 3 +intNWidthHook = 6 +intTextWidthHook = 7 +intInlineInputTSMTEPreUpdateHook = 8 +intInlineInputTSMTEPostUpdateHook = 9 +teFAutoScroll = 0 +teFTextBuffering = 1 +teFOutlineHilite = 2 +teFInlineInput = 3 +teFUseWhiteBackground = 4 +teFUseInlineInput = 5 +teFInlineInputAutoScroll = 6 +teFIdleWithEventLoopTimer = 7 +teBitClear = 0 +teBitSet = 1 +teBitTest = -1 +teWordSelect = 4 +teWordDrag = 8 +teFromFind = 12 +teFromRecal = 16 +teFind = 0 +teHighlight = 1 +teDraw = -1 +teCaret = -2 +teFUseTextServices = 4 diff --git a/sys/lib/python/plat-mac/Carbon/Win.py b/sys/lib/python/plat-mac/Carbon/Win.py new file mode 100644 index 000000000..28057723e --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Win.py @@ -0,0 +1 @@ +from _Win import * diff --git a/sys/lib/python/plat-mac/Carbon/Windows.py b/sys/lib/python/plat-mac/Carbon/Windows.py new file mode 100644 index 000000000..b09d53710 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/Windows.py @@ -0,0 +1,279 @@ +# Generated from 'MacWindows.h' + +def FOUR_CHAR_CODE(x): return x +false = 0 +true = 1 +kWindowNoConstrainAttribute = 0x80000000 +kAlertWindowClass = 1 +kMovableAlertWindowClass = 2 +kModalWindowClass = 3 +kMovableModalWindowClass = 4 +kFloatingWindowClass = 5 +kDocumentWindowClass = 6 +kUtilityWindowClass = 8 +kHelpWindowClass = 10 +kSheetWindowClass = 11 +kToolbarWindowClass = 12 +kPlainWindowClass = 13 +kOverlayWindowClass = 14 +kSheetAlertWindowClass = 15 +kAltPlainWindowClass = 16 +kDrawerWindowClass = 20 +# kAllWindowClasses = (unsigned long)0xFFFFFFFF +kWindowNoAttributes = 0L +kWindowCloseBoxAttribute = (1L << 0) +kWindowHorizontalZoomAttribute = (1L << 1) +kWindowVerticalZoomAttribute = (1L << 2) +kWindowFullZoomAttribute = (kWindowVerticalZoomAttribute | kWindowHorizontalZoomAttribute) +kWindowCollapseBoxAttribute = (1L << 3) +kWindowResizableAttribute = (1L << 4) +kWindowSideTitlebarAttribute = (1L << 5) +kWindowToolbarButtonAttribute = (1L << 6) +kWindowNoUpdatesAttribute = (1L << 16) +kWindowNoActivatesAttribute = (1L << 17) +kWindowOpaqueForEventsAttribute = (1L << 18) +kWindowNoShadowAttribute = (1L << 21) +kWindowHideOnSuspendAttribute = (1L << 24) +kWindowStandardHandlerAttribute = (1L << 25) +kWindowHideOnFullScreenAttribute = (1L << 26) +kWindowInWindowMenuAttribute = (1L << 27) +kWindowLiveResizeAttribute = (1L << 28) +# kWindowNoConstrainAttribute = (unsigned long)((1L << 31)) +kWindowStandardDocumentAttributes = (kWindowCloseBoxAttribute | kWindowFullZoomAttribute | kWindowCollapseBoxAttribute | kWindowResizableAttribute) +kWindowStandardFloatingAttributes = (kWindowCloseBoxAttribute | kWindowCollapseBoxAttribute) +kWindowDefProcType = FOUR_CHAR_CODE('WDEF') +kStandardWindowDefinition = 0 +kRoundWindowDefinition = 1 +kFloatingWindowDefinition = 124 +kDocumentWindowVariantCode = 0 +kModalDialogVariantCode = 1 +kPlainDialogVariantCode = 2 +kShadowDialogVariantCode = 3 +kMovableModalDialogVariantCode = 5 +kAlertVariantCode = 7 +kMovableAlertVariantCode = 9 +kSideFloaterVariantCode = 8 +documentProc = 0 +dBoxProc = 1 +plainDBox = 2 +altDBoxProc = 3 +noGrowDocProc = 4 +movableDBoxProc = 5 +zoomDocProc = 8 +zoomNoGrow = 12 +floatProc = 1985 +floatGrowProc = 1987 +floatZoomProc = 1989 +floatZoomGrowProc = 1991 +floatSideProc = 1993 +floatSideGrowProc = 1995 +floatSideZoomProc = 1997 +floatSideZoomGrowProc = 1999 +rDocProc = 16 +kWindowDocumentDefProcResID = 64 +kWindowDialogDefProcResID = 65 +kWindowUtilityDefProcResID = 66 +kWindowUtilitySideTitleDefProcResID = 67 +kWindowSheetDefProcResID = 68 +kWindowSimpleDefProcResID = 69 +kWindowSheetAlertDefProcResID = 70 +kWindowDocumentProc = 1024 +kWindowGrowDocumentProc = 1025 +kWindowVertZoomDocumentProc = 1026 +kWindowVertZoomGrowDocumentProc = 1027 +kWindowHorizZoomDocumentProc = 1028 +kWindowHorizZoomGrowDocumentProc = 1029 +kWindowFullZoomDocumentProc = 1030 +kWindowFullZoomGrowDocumentProc = 1031 +kWindowPlainDialogProc = 1040 +kWindowShadowDialogProc = 1041 +kWindowModalDialogProc = 1042 +kWindowMovableModalDialogProc = 1043 +kWindowAlertProc = 1044 +kWindowMovableAlertProc = 1045 +kWindowMovableModalGrowProc = 1046 +kWindowFloatProc = 1057 +kWindowFloatGrowProc = 1059 +kWindowFloatVertZoomProc = 1061 +kWindowFloatVertZoomGrowProc = 1063 +kWindowFloatHorizZoomProc = 1065 +kWindowFloatHorizZoomGrowProc = 1067 +kWindowFloatFullZoomProc = 1069 +kWindowFloatFullZoomGrowProc = 1071 +kWindowFloatSideProc = 1073 +kWindowFloatSideGrowProc = 1075 +kWindowFloatSideVertZoomProc = 1077 +kWindowFloatSideVertZoomGrowProc = 1079 +kWindowFloatSideHorizZoomProc = 1081 +kWindowFloatSideHorizZoomGrowProc = 1083 +kWindowFloatSideFullZoomProc = 1085 +kWindowFloatSideFullZoomGrowProc = 1087 +kWindowSheetProc = 1088 +kWindowSheetAlertProc = 1120 +kWindowSimpleProc = 1104 +kWindowSimpleFrameProc = 1105 +kWindowNoPosition = 0x0000 +kWindowDefaultPosition = 0x0000 +kWindowCenterMainScreen = 0x280A +kWindowAlertPositionMainScreen = 0x300A +kWindowStaggerMainScreen = 0x380A +kWindowCenterParentWindow = 0xA80A +kWindowAlertPositionParentWindow = 0xB00A +kWindowStaggerParentWindow = 0xB80A +kWindowCenterParentWindowScreen = 0x680A +kWindowAlertPositionParentWindowScreen = 0x700A +kWindowStaggerParentWindowScreen = 0x780A +kWindowCenterOnMainScreen = 1 +kWindowCenterOnParentWindow = 2 +kWindowCenterOnParentWindowScreen = 3 +kWindowCascadeOnMainScreen = 4 +kWindowCascadeOnParentWindow = 5 +kWindowCascadeOnParentWindowScreen = 6 +kWindowCascadeStartAtParentWindowScreen = 10 +kWindowAlertPositionOnMainScreen = 7 +kWindowAlertPositionOnParentWindow = 8 +kWindowAlertPositionOnParentWindowScreen = 9 +kWindowTitleBarRgn = 0 +kWindowTitleTextRgn = 1 +kWindowCloseBoxRgn = 2 +kWindowZoomBoxRgn = 3 +kWindowDragRgn = 5 +kWindowGrowRgn = 6 +kWindowCollapseBoxRgn = 7 +kWindowTitleProxyIconRgn = 8 +kWindowStructureRgn = 32 +kWindowContentRgn = 33 +kWindowUpdateRgn = 34 +kWindowOpaqueRgn = 35 +kWindowGlobalPortRgn = 40 +dialogKind = 2 +userKind = 8 +kDialogWindowKind = 2 +kApplicationWindowKind = 8 +inDesk = 0 +inNoWindow = 0 +inMenuBar = 1 +inSysWindow = 2 +inContent = 3 +inDrag = 4 +inGrow = 5 +inGoAway = 6 +inZoomIn = 7 +inZoomOut = 8 +inCollapseBox = 11 +inProxyIcon = 12 +inToolbarButton = 13 +inStructure = 15 +wNoHit = 0 +wInContent = 1 +wInDrag = 2 +wInGrow = 3 +wInGoAway = 4 +wInZoomIn = 5 +wInZoomOut = 6 +wInCollapseBox = 9 +wInProxyIcon = 10 +wInToolbarButton = 11 +wInStructure = 13 +kWindowMsgDraw = 0 +kWindowMsgHitTest = 1 +kWindowMsgCalculateShape = 2 +kWindowMsgInitialize = 3 +kWindowMsgCleanUp = 4 +kWindowMsgDrawGrowOutline = 5 +kWindowMsgDrawGrowBox = 6 +kWindowMsgGetFeatures = 7 +kWindowMsgGetRegion = 8 +kWindowMsgDragHilite = 9 +kWindowMsgModified = 10 +kWindowMsgDrawInCurrentPort = 11 +kWindowMsgSetupProxyDragImage = 12 +kWindowMsgStateChanged = 13 +kWindowMsgMeasureTitle = 14 +kWindowMsgGetGrowImageRegion = 19 +wDraw = 0 +wHit = 1 +wCalcRgns = 2 +wNew = 3 +wDispose = 4 +wGrow = 5 +wDrawGIcon = 6 +kWindowStateTitleChanged = (1 << 0) +kWindowCanGrow = (1 << 0) +kWindowCanZoom = (1 << 1) +kWindowCanCollapse = (1 << 2) +kWindowIsModal = (1 << 3) +kWindowCanGetWindowRegion = (1 << 4) +kWindowIsAlert = (1 << 5) +kWindowHasTitleBar = (1 << 6) +kWindowSupportsDragHilite = (1 << 7) +kWindowSupportsModifiedBit = (1 << 8) +kWindowCanDrawInCurrentPort = (1 << 9) +kWindowCanSetupProxyDragImage = (1 << 10) +kWindowCanMeasureTitle = (1 << 11) +kWindowWantsDisposeAtProcessDeath = (1 << 12) +kWindowSupportsGetGrowImageRegion = (1 << 13) +kWindowDefSupportsColorGrafPort = 0x40000002 +kWindowIsOpaque = (1 << 14) +kWindowSupportsSetGrowImageRegion = (1 << 13) +deskPatID = 16 +wContentColor = 0 +wFrameColor = 1 +wTextColor = 2 +wHiliteColor = 3 +wTitleBarColor = 4 +# kMouseUpOutOfSlop = (long)0x80008000 +kWindowDefinitionVersionOne = 1 +kWindowDefinitionVersionTwo = 2 +kWindowIsCollapsedState = (1 << 0L) +kStoredWindowSystemTag = FOUR_CHAR_CODE('appl') +kStoredBasicWindowDescriptionID = FOUR_CHAR_CODE('sbas') +kStoredWindowPascalTitleID = FOUR_CHAR_CODE('s255') +kWindowDefProcPtr = 0 +kWindowDefObjectClass = 1 +kWindowDefProcID = 2 +kWindowModalityNone = 0 +kWindowModalitySystemModal = 1 +kWindowModalityAppModal = 2 +kWindowModalityWindowModal = 3 +kWindowGroupAttrSelectAsLayer = 1 << 0 +kWindowGroupAttrMoveTogether = 1 << 1 +kWindowGroupAttrLayerTogether = 1 << 2 +kWindowGroupAttrSharedActivation = 1 << 3 +kWindowGroupAttrHideOnCollapse = 1 << 4 +kWindowActivationScopeNone = 0 +kWindowActivationScopeIndependent = 1 +kWindowActivationScopeAll = 2 +kNextWindowGroup = true +kPreviousWindowGroup = false +kWindowGroupContentsReturnWindows = 1 << 0 +kWindowGroupContentsRecurse = 1 << 1 +kWindowGroupContentsVisible = 1 << 2 +kWindowPaintProcOptionsNone = 0 +kScrollWindowNoOptions = 0 +kScrollWindowInvalidate = (1L << 0) +kScrollWindowEraseToPortBackground = (1L << 1) +kWindowMenuIncludeRotate = 1 << 0 +kWindowZoomTransitionEffect = 1 +kWindowSheetTransitionEffect = 2 +kWindowSlideTransitionEffect = 3 +kWindowShowTransitionAction = 1 +kWindowHideTransitionAction = 2 +kWindowMoveTransitionAction = 3 +kWindowResizeTransitionAction = 4 +kWindowConstrainMayResize = (1L << 0) +kWindowConstrainMoveRegardlessOfFit = (1L << 1) +kWindowConstrainAllowPartial = (1L << 2) +kWindowConstrainCalcOnly = (1L << 3) +kWindowConstrainUseTransitionWindow = (1L << 4) +kWindowConstrainStandardOptions = kWindowConstrainMoveRegardlessOfFit +kWindowLatentVisibleFloater = 1 << 0 +kWindowLatentVisibleSuspend = 1 << 1 +kWindowLatentVisibleFullScreen = 1 << 2 +kWindowLatentVisibleAppHidden = 1 << 3 +kWindowLatentVisibleCollapsedOwner = 1 << 4 +kWindowLatentVisibleCollapsedGroup = 1 << 5 +kWindowPropertyPersistent = 0x00000001 +kWindowGroupAttrSelectable = kWindowGroupAttrSelectAsLayer +kWindowGroupAttrPositionFixed = kWindowGroupAttrMoveTogether +kWindowGroupAttrZOrderFixed = kWindowGroupAttrLayerTogether diff --git a/sys/lib/python/plat-mac/Carbon/__init__.py b/sys/lib/python/plat-mac/Carbon/__init__.py new file mode 100644 index 000000000..8018c1824 --- /dev/null +++ b/sys/lib/python/plat-mac/Carbon/__init__.py @@ -0,0 +1,4 @@ +# Filter out warnings about signed/unsigned constants +import warnings +warnings.filterwarnings("ignore", "", FutureWarning, ".*Controls") +warnings.filterwarnings("ignore", "", FutureWarning, ".*MacTextEditor") diff --git a/sys/lib/python/plat-mac/EasyDialogs.py b/sys/lib/python/plat-mac/EasyDialogs.py new file mode 100644 index 000000000..b33d1be54 --- /dev/null +++ b/sys/lib/python/plat-mac/EasyDialogs.py @@ -0,0 +1,838 @@ +"""Easy to use dialogs. + +Message(msg) -- display a message and an OK button. +AskString(prompt, default) -- ask for a string, display OK and Cancel buttons. +AskPassword(prompt, default) -- like AskString(), but shows text as bullets. +AskYesNoCancel(question, default) -- display a question and Yes, No and Cancel buttons. +GetArgv(optionlist, commandlist) -- fill a sys.argv-like list using a dialog +AskFileForOpen(...) -- Ask the user for an existing file +AskFileForSave(...) -- Ask the user for an output file +AskFolder(...) -- Ask the user to select a folder +bar = Progress(label, maxvalue) -- Display a progress bar +bar.set(value) -- Set value +bar.inc( *amount ) -- increment value by amount (default=1) +bar.label( *newlabel ) -- get or set text label. + +More documentation in each function. +This module uses DLOG resources 260 and on. +Based upon STDWIN dialogs with the same names and functions. +""" + +from Carbon.Dlg import GetNewDialog, SetDialogItemText, GetDialogItemText, ModalDialog +from Carbon import Qd +from Carbon import QuickDraw +from Carbon import Dialogs +from Carbon import Windows +from Carbon import Dlg,Win,Evt,Events # sdm7g +from Carbon import Ctl +from Carbon import Controls +from Carbon import Menu +from Carbon import AE +import Nav +import MacOS +import string +from Carbon.ControlAccessor import * # Also import Controls constants +import Carbon.File +import macresource +import os +import sys + +__all__ = ['Message', 'AskString', 'AskPassword', 'AskYesNoCancel', + 'GetArgv', 'AskFileForOpen', 'AskFileForSave', 'AskFolder', + 'ProgressBar'] + +_initialized = 0 + +def _initialize(): + global _initialized + if _initialized: return + macresource.need("DLOG", 260, "dialogs.rsrc", __name__) + +def _interact(): + """Make sure the application is in the foreground""" + AE.AEInteractWithUser(50000000) + +def cr2lf(text): + if '\r' in text: + text = string.join(string.split(text, '\r'), '\n') + return text + +def lf2cr(text): + if '\n' in text: + text = string.join(string.split(text, '\n'), '\r') + if len(text) > 253: + text = text[:253] + '\311' + return text + +def Message(msg, id=260, ok=None): + """Display a MESSAGE string. + + Return when the user clicks the OK button or presses Return. + + The MESSAGE string can be at most 255 characters long. + """ + _initialize() + _interact() + d = GetNewDialog(id, -1) + if not d: + print "EasyDialogs: Can't get DLOG resource with id =", id, " (missing resource file?)" + return + h = d.GetDialogItemAsControl(2) + SetDialogItemText(h, lf2cr(msg)) + if ok != None: + h = d.GetDialogItemAsControl(1) + h.SetControlTitle(ok) + d.SetDialogDefaultItem(1) + d.AutoSizeDialog() + d.GetDialogWindow().ShowWindow() + while 1: + n = ModalDialog(None) + if n == 1: + return + + +def AskString(prompt, default = "", id=261, ok=None, cancel=None): + """Display a PROMPT string and a text entry field with a DEFAULT string. + + Return the contents of the text entry field when the user clicks the + OK button or presses Return. + Return None when the user clicks the Cancel button. + + If omitted, DEFAULT is empty. + + The PROMPT and DEFAULT strings, as well as the return value, + can be at most 255 characters long. + """ + + _initialize() + _interact() + d = GetNewDialog(id, -1) + if not d: + print "EasyDialogs: Can't get DLOG resource with id =", id, " (missing resource file?)" + return + h = d.GetDialogItemAsControl(3) + SetDialogItemText(h, lf2cr(prompt)) + h = d.GetDialogItemAsControl(4) + SetDialogItemText(h, lf2cr(default)) + d.SelectDialogItemText(4, 0, 999) +# d.SetDialogItem(4, 0, 255) + if ok != None: + h = d.GetDialogItemAsControl(1) + h.SetControlTitle(ok) + if cancel != None: + h = d.GetDialogItemAsControl(2) + h.SetControlTitle(cancel) + d.SetDialogDefaultItem(1) + d.SetDialogCancelItem(2) + d.AutoSizeDialog() + d.GetDialogWindow().ShowWindow() + while 1: + n = ModalDialog(None) + if n == 1: + h = d.GetDialogItemAsControl(4) + return cr2lf(GetDialogItemText(h)) + if n == 2: return None + +def AskPassword(prompt, default='', id=264, ok=None, cancel=None): + """Display a PROMPT string and a text entry field with a DEFAULT string. + The string is displayed as bullets only. + + Return the contents of the text entry field when the user clicks the + OK button or presses Return. + Return None when the user clicks the Cancel button. + + If omitted, DEFAULT is empty. + + The PROMPT and DEFAULT strings, as well as the return value, + can be at most 255 characters long. + """ + _initialize() + _interact() + d = GetNewDialog(id, -1) + if not d: + print "EasyDialogs: Can't get DLOG resource with id =", id, " (missing resource file?)" + return + h = d.GetDialogItemAsControl(3) + SetDialogItemText(h, lf2cr(prompt)) + pwd = d.GetDialogItemAsControl(4) + bullets = '\245'*len(default) +## SetControlData(pwd, kControlEditTextPart, kControlEditTextTextTag, bullets) + SetControlData(pwd, kControlEditTextPart, kControlEditTextPasswordTag, default) + d.SelectDialogItemText(4, 0, 999) + Ctl.SetKeyboardFocus(d.GetDialogWindow(), pwd, kControlEditTextPart) + if ok != None: + h = d.GetDialogItemAsControl(1) + h.SetControlTitle(ok) + if cancel != None: + h = d.GetDialogItemAsControl(2) + h.SetControlTitle(cancel) + d.SetDialogDefaultItem(Dialogs.ok) + d.SetDialogCancelItem(Dialogs.cancel) + d.AutoSizeDialog() + d.GetDialogWindow().ShowWindow() + while 1: + n = ModalDialog(None) + if n == 1: + h = d.GetDialogItemAsControl(4) + return cr2lf(GetControlData(pwd, kControlEditTextPart, kControlEditTextPasswordTag)) + if n == 2: return None + +def AskYesNoCancel(question, default = 0, yes=None, no=None, cancel=None, id=262): + """Display a QUESTION string which can be answered with Yes or No. + + Return 1 when the user clicks the Yes button. + Return 0 when the user clicks the No button. + Return -1 when the user clicks the Cancel button. + + When the user presses Return, the DEFAULT value is returned. + If omitted, this is 0 (No). + + The QUESTION string can be at most 255 characters. + """ + + _initialize() + _interact() + d = GetNewDialog(id, -1) + if not d: + print "EasyDialogs: Can't get DLOG resource with id =", id, " (missing resource file?)" + return + # Button assignments: + # 1 = default (invisible) + # 2 = Yes + # 3 = No + # 4 = Cancel + # The question string is item 5 + h = d.GetDialogItemAsControl(5) + SetDialogItemText(h, lf2cr(question)) + if yes != None: + if yes == '': + d.HideDialogItem(2) + else: + h = d.GetDialogItemAsControl(2) + h.SetControlTitle(yes) + if no != None: + if no == '': + d.HideDialogItem(3) + else: + h = d.GetDialogItemAsControl(3) + h.SetControlTitle(no) + if cancel != None: + if cancel == '': + d.HideDialogItem(4) + else: + h = d.GetDialogItemAsControl(4) + h.SetControlTitle(cancel) + d.SetDialogCancelItem(4) + if default == 1: + d.SetDialogDefaultItem(2) + elif default == 0: + d.SetDialogDefaultItem(3) + elif default == -1: + d.SetDialogDefaultItem(4) + d.AutoSizeDialog() + d.GetDialogWindow().ShowWindow() + while 1: + n = ModalDialog(None) + if n == 1: return default + if n == 2: return 1 + if n == 3: return 0 + if n == 4: return -1 + + + + +screenbounds = Qd.GetQDGlobalsScreenBits().bounds +screenbounds = screenbounds[0]+4, screenbounds[1]+4, \ + screenbounds[2]-4, screenbounds[3]-4 + +kControlProgressBarIndeterminateTag = 'inde' # from Controls.py + + +class ProgressBar: + def __init__(self, title="Working...", maxval=0, label="", id=263): + self.w = None + self.d = None + _initialize() + self.d = GetNewDialog(id, -1) + self.w = self.d.GetDialogWindow() + self.label(label) + self.title(title) + self.set(0, maxval) + self.d.AutoSizeDialog() + self.w.ShowWindow() + self.d.DrawDialog() + + def __del__(self): + if self.w: + self.w.BringToFront() + self.w.HideWindow() + del self.w + del self.d + + def title(self, newstr=""): + """title(text) - Set title of progress window""" + self.w.BringToFront() + self.w.SetWTitle(newstr) + + def label(self, *newstr): + """label(text) - Set text in progress box""" + self.w.BringToFront() + if newstr: + self._label = lf2cr(newstr[0]) + text_h = self.d.GetDialogItemAsControl(2) + SetDialogItemText(text_h, self._label) + + def _update(self, value): + maxval = self.maxval + if maxval == 0: # an indeterminate bar + Ctl.IdleControls(self.w) # spin the barber pole + else: # a determinate bar + if maxval > 32767: + value = int(value/(maxval/32767.0)) + maxval = 32767 + maxval = int(maxval) + value = int(value) + progbar = self.d.GetDialogItemAsControl(3) + progbar.SetControlMaximum(maxval) + progbar.SetControlValue(value) # set the bar length + + # Test for cancel button + ready, ev = Evt.WaitNextEvent( Events.mDownMask, 1 ) + if ready : + what,msg,when,where,mod = ev + part = Win.FindWindow(where)[0] + if Dlg.IsDialogEvent(ev): + ds = Dlg.DialogSelect(ev) + if ds[0] and ds[1] == self.d and ds[-1] == 1: + self.w.HideWindow() + self.w = None + self.d = None + raise KeyboardInterrupt, ev + else: + if part == 4: # inDrag + self.w.DragWindow(where, screenbounds) + else: + MacOS.HandleEvent(ev) + + + def set(self, value, max=None): + """set(value) - Set progress bar position""" + if max != None: + self.maxval = max + bar = self.d.GetDialogItemAsControl(3) + if max <= 0: # indeterminate bar + bar.SetControlData(0,kControlProgressBarIndeterminateTag,'\x01') + else: # determinate bar + bar.SetControlData(0,kControlProgressBarIndeterminateTag,'\x00') + if value < 0: + value = 0 + elif value > self.maxval: + value = self.maxval + self.curval = value + self._update(value) + + def inc(self, n=1): + """inc(amt) - Increment progress bar position""" + self.set(self.curval + n) + +ARGV_ID=265 +ARGV_ITEM_OK=1 +ARGV_ITEM_CANCEL=2 +ARGV_OPTION_GROUP=3 +ARGV_OPTION_EXPLAIN=4 +ARGV_OPTION_VALUE=5 +ARGV_OPTION_ADD=6 +ARGV_COMMAND_GROUP=7 +ARGV_COMMAND_EXPLAIN=8 +ARGV_COMMAND_ADD=9 +ARGV_ADD_OLDFILE=10 +ARGV_ADD_NEWFILE=11 +ARGV_ADD_FOLDER=12 +ARGV_CMDLINE_GROUP=13 +ARGV_CMDLINE_DATA=14 + +##def _myModalDialog(d): +## while 1: +## ready, ev = Evt.WaitNextEvent(0xffff, -1) +## print 'DBG: WNE', ready, ev +## if ready : +## what,msg,when,where,mod = ev +## part, window = Win.FindWindow(where) +## if Dlg.IsDialogEvent(ev): +## didit, dlgdone, itemdone = Dlg.DialogSelect(ev) +## print 'DBG: DialogSelect', didit, dlgdone, itemdone, d +## if didit and dlgdone == d: +## return itemdone +## elif window == d.GetDialogWindow(): +## d.GetDialogWindow().SelectWindow() +## if part == 4: # inDrag +## d.DragWindow(where, screenbounds) +## else: +## MacOS.HandleEvent(ev) +## else: +## MacOS.HandleEvent(ev) +## +def _setmenu(control, items): + mhandle = control.GetControlData_Handle(Controls.kControlMenuPart, + Controls.kControlPopupButtonMenuHandleTag) + menu = Menu.as_Menu(mhandle) + for item in items: + if type(item) == type(()): + label = item[0] + else: + label = item + if label[-1] == '=' or label[-1] == ':': + label = label[:-1] + menu.AppendMenu(label) +## mhandle, mid = menu.getpopupinfo() +## control.SetControlData_Handle(Controls.kControlMenuPart, +## Controls.kControlPopupButtonMenuHandleTag, mhandle) + control.SetControlMinimum(1) + control.SetControlMaximum(len(items)+1) + +def _selectoption(d, optionlist, idx): + if idx < 0 or idx >= len(optionlist): + MacOS.SysBeep() + return + option = optionlist[idx] + if type(option) == type(()): + if len(option) == 4: + help = option[2] + elif len(option) > 1: + help = option[-1] + else: + help = '' + else: + help = '' + h = d.GetDialogItemAsControl(ARGV_OPTION_EXPLAIN) + if help and len(help) > 250: + help = help[:250] + '...' + Dlg.SetDialogItemText(h, help) + hasvalue = 0 + if type(option) == type(()): + label = option[0] + else: + label = option + if label[-1] == '=' or label[-1] == ':': + hasvalue = 1 + h = d.GetDialogItemAsControl(ARGV_OPTION_VALUE) + Dlg.SetDialogItemText(h, '') + if hasvalue: + d.ShowDialogItem(ARGV_OPTION_VALUE) + d.SelectDialogItemText(ARGV_OPTION_VALUE, 0, 0) + else: + d.HideDialogItem(ARGV_OPTION_VALUE) + + +def GetArgv(optionlist=None, commandlist=None, addoldfile=1, addnewfile=1, addfolder=1, id=ARGV_ID): + _initialize() + _interact() + d = GetNewDialog(id, -1) + if not d: + print "EasyDialogs: Can't get DLOG resource with id =", id, " (missing resource file?)" + return +# h = d.GetDialogItemAsControl(3) +# SetDialogItemText(h, lf2cr(prompt)) +# h = d.GetDialogItemAsControl(4) +# SetDialogItemText(h, lf2cr(default)) +# d.SelectDialogItemText(4, 0, 999) +# d.SetDialogItem(4, 0, 255) + if optionlist: + _setmenu(d.GetDialogItemAsControl(ARGV_OPTION_GROUP), optionlist) + _selectoption(d, optionlist, 0) + else: + d.GetDialogItemAsControl(ARGV_OPTION_GROUP).DeactivateControl() + if commandlist: + _setmenu(d.GetDialogItemAsControl(ARGV_COMMAND_GROUP), commandlist) + if type(commandlist[0]) == type(()) and len(commandlist[0]) > 1: + help = commandlist[0][-1] + h = d.GetDialogItemAsControl(ARGV_COMMAND_EXPLAIN) + Dlg.SetDialogItemText(h, help) + else: + d.GetDialogItemAsControl(ARGV_COMMAND_GROUP).DeactivateControl() + if not addoldfile: + d.GetDialogItemAsControl(ARGV_ADD_OLDFILE).DeactivateControl() + if not addnewfile: + d.GetDialogItemAsControl(ARGV_ADD_NEWFILE).DeactivateControl() + if not addfolder: + d.GetDialogItemAsControl(ARGV_ADD_FOLDER).DeactivateControl() + d.SetDialogDefaultItem(ARGV_ITEM_OK) + d.SetDialogCancelItem(ARGV_ITEM_CANCEL) + d.GetDialogWindow().ShowWindow() + d.DrawDialog() + if hasattr(MacOS, 'SchedParams'): + appsw = MacOS.SchedParams(1, 0) + try: + while 1: + stringstoadd = [] + n = ModalDialog(None) + if n == ARGV_ITEM_OK: + break + elif n == ARGV_ITEM_CANCEL: + raise SystemExit + elif n == ARGV_OPTION_GROUP: + idx = d.GetDialogItemAsControl(ARGV_OPTION_GROUP).GetControlValue()-1 + _selectoption(d, optionlist, idx) + elif n == ARGV_OPTION_VALUE: + pass + elif n == ARGV_OPTION_ADD: + idx = d.GetDialogItemAsControl(ARGV_OPTION_GROUP).GetControlValue()-1 + if 0 <= idx < len(optionlist): + option = optionlist[idx] + if type(option) == type(()): + option = option[0] + if option[-1] == '=' or option[-1] == ':': + option = option[:-1] + h = d.GetDialogItemAsControl(ARGV_OPTION_VALUE) + value = Dlg.GetDialogItemText(h) + else: + value = '' + if len(option) == 1: + stringtoadd = '-' + option + else: + stringtoadd = '--' + option + stringstoadd = [stringtoadd] + if value: + stringstoadd.append(value) + else: + MacOS.SysBeep() + elif n == ARGV_COMMAND_GROUP: + idx = d.GetDialogItemAsControl(ARGV_COMMAND_GROUP).GetControlValue()-1 + if 0 <= idx < len(commandlist) and type(commandlist[idx]) == type(()) and \ + len(commandlist[idx]) > 1: + help = commandlist[idx][-1] + h = d.GetDialogItemAsControl(ARGV_COMMAND_EXPLAIN) + Dlg.SetDialogItemText(h, help) + elif n == ARGV_COMMAND_ADD: + idx = d.GetDialogItemAsControl(ARGV_COMMAND_GROUP).GetControlValue()-1 + if 0 <= idx < len(commandlist): + command = commandlist[idx] + if type(command) == type(()): + command = command[0] + stringstoadd = [command] + else: + MacOS.SysBeep() + elif n == ARGV_ADD_OLDFILE: + pathname = AskFileForOpen() + if pathname: + stringstoadd = [pathname] + elif n == ARGV_ADD_NEWFILE: + pathname = AskFileForSave() + if pathname: + stringstoadd = [pathname] + elif n == ARGV_ADD_FOLDER: + pathname = AskFolder() + if pathname: + stringstoadd = [pathname] + elif n == ARGV_CMDLINE_DATA: + pass # Nothing to do + else: + raise RuntimeError, "Unknown dialog item %d"%n + + for stringtoadd in stringstoadd: + if '"' in stringtoadd or "'" in stringtoadd or " " in stringtoadd: + stringtoadd = repr(stringtoadd) + h = d.GetDialogItemAsControl(ARGV_CMDLINE_DATA) + oldstr = GetDialogItemText(h) + if oldstr and oldstr[-1] != ' ': + oldstr = oldstr + ' ' + oldstr = oldstr + stringtoadd + if oldstr[-1] != ' ': + oldstr = oldstr + ' ' + SetDialogItemText(h, oldstr) + d.SelectDialogItemText(ARGV_CMDLINE_DATA, 0x7fff, 0x7fff) + h = d.GetDialogItemAsControl(ARGV_CMDLINE_DATA) + oldstr = GetDialogItemText(h) + tmplist = string.split(oldstr) + newlist = [] + while tmplist: + item = tmplist[0] + del tmplist[0] + if item[0] == '"': + while item[-1] != '"': + if not tmplist: + raise RuntimeError, "Unterminated quoted argument" + item = item + ' ' + tmplist[0] + del tmplist[0] + item = item[1:-1] + if item[0] == "'": + while item[-1] != "'": + if not tmplist: + raise RuntimeError, "Unterminated quoted argument" + item = item + ' ' + tmplist[0] + del tmplist[0] + item = item[1:-1] + newlist.append(item) + return newlist + finally: + if hasattr(MacOS, 'SchedParams'): + MacOS.SchedParams(*appsw) + del d + +def _process_Nav_args(dftflags, **args): + import aepack + import Carbon.AE + import Carbon.File + for k in args.keys(): + if args[k] is None: + del args[k] + # Set some defaults, and modify some arguments + if not args.has_key('dialogOptionFlags'): + args['dialogOptionFlags'] = dftflags + if args.has_key('defaultLocation') and \ + not isinstance(args['defaultLocation'], Carbon.AE.AEDesc): + defaultLocation = args['defaultLocation'] + if isinstance(defaultLocation, (Carbon.File.FSSpec, Carbon.File.FSRef)): + args['defaultLocation'] = aepack.pack(defaultLocation) + else: + defaultLocation = Carbon.File.FSRef(defaultLocation) + args['defaultLocation'] = aepack.pack(defaultLocation) + if args.has_key('typeList') and not isinstance(args['typeList'], Carbon.Res.ResourceType): + typeList = args['typeList'][:] + # Workaround for OSX typeless files: + if 'TEXT' in typeList and not '\0\0\0\0' in typeList: + typeList = typeList + ('\0\0\0\0',) + data = 'Pyth' + struct.pack("hh", 0, len(typeList)) + for type in typeList: + data = data+type + args['typeList'] = Carbon.Res.Handle(data) + tpwanted = str + if args.has_key('wanted'): + tpwanted = args['wanted'] + del args['wanted'] + return args, tpwanted + +def _dummy_Nav_eventproc(msg, data): + pass + +_default_Nav_eventproc = _dummy_Nav_eventproc + +def SetDefaultEventProc(proc): + global _default_Nav_eventproc + rv = _default_Nav_eventproc + if proc is None: + proc = _dummy_Nav_eventproc + _default_Nav_eventproc = proc + return rv + +def AskFileForOpen( + message=None, + typeList=None, + # From here on the order is not documented + version=None, + defaultLocation=None, + dialogOptionFlags=None, + location=None, + clientName=None, + windowTitle=None, + actionButtonLabel=None, + cancelButtonLabel=None, + preferenceKey=None, + popupExtension=None, + eventProc=_dummy_Nav_eventproc, + previewProc=None, + filterProc=None, + wanted=None, + multiple=None): + """Display a dialog asking the user for a file to open. + + wanted is the return type wanted: FSSpec, FSRef, unicode or string (default) + the other arguments can be looked up in Apple's Navigation Services documentation""" + + default_flags = 0x56 # Or 0xe4? + args, tpwanted = _process_Nav_args(default_flags, version=version, + defaultLocation=defaultLocation, dialogOptionFlags=dialogOptionFlags, + location=location,clientName=clientName,windowTitle=windowTitle, + actionButtonLabel=actionButtonLabel,cancelButtonLabel=cancelButtonLabel, + message=message,preferenceKey=preferenceKey, + popupExtension=popupExtension,eventProc=eventProc,previewProc=previewProc, + filterProc=filterProc,typeList=typeList,wanted=wanted,multiple=multiple) + _interact() + try: + rr = Nav.NavChooseFile(args) + good = 1 + except Nav.error, arg: + if arg[0] != -128: # userCancelledErr + raise Nav.error, arg + return None + if not rr.validRecord or not rr.selection: + return None + if issubclass(tpwanted, Carbon.File.FSRef): + return tpwanted(rr.selection_fsr[0]) + if issubclass(tpwanted, Carbon.File.FSSpec): + return tpwanted(rr.selection[0]) + if issubclass(tpwanted, str): + return tpwanted(rr.selection_fsr[0].as_pathname()) + if issubclass(tpwanted, unicode): + return tpwanted(rr.selection_fsr[0].as_pathname(), 'utf8') + raise TypeError, "Unknown value for argument 'wanted': %s" % repr(tpwanted) + +def AskFileForSave( + message=None, + savedFileName=None, + # From here on the order is not documented + version=None, + defaultLocation=None, + dialogOptionFlags=None, + location=None, + clientName=None, + windowTitle=None, + actionButtonLabel=None, + cancelButtonLabel=None, + preferenceKey=None, + popupExtension=None, + eventProc=_dummy_Nav_eventproc, + fileType=None, + fileCreator=None, + wanted=None, + multiple=None): + """Display a dialog asking the user for a filename to save to. + + wanted is the return type wanted: FSSpec, FSRef, unicode or string (default) + the other arguments can be looked up in Apple's Navigation Services documentation""" + + + default_flags = 0x07 + args, tpwanted = _process_Nav_args(default_flags, version=version, + defaultLocation=defaultLocation, dialogOptionFlags=dialogOptionFlags, + location=location,clientName=clientName,windowTitle=windowTitle, + actionButtonLabel=actionButtonLabel,cancelButtonLabel=cancelButtonLabel, + savedFileName=savedFileName,message=message,preferenceKey=preferenceKey, + popupExtension=popupExtension,eventProc=eventProc,fileType=fileType, + fileCreator=fileCreator,wanted=wanted,multiple=multiple) + _interact() + try: + rr = Nav.NavPutFile(args) + good = 1 + except Nav.error, arg: + if arg[0] != -128: # userCancelledErr + raise Nav.error, arg + return None + if not rr.validRecord or not rr.selection: + return None + if issubclass(tpwanted, Carbon.File.FSRef): + raise TypeError, "Cannot pass wanted=FSRef to AskFileForSave" + if issubclass(tpwanted, Carbon.File.FSSpec): + return tpwanted(rr.selection[0]) + if issubclass(tpwanted, (str, unicode)): + if sys.platform == 'mac': + fullpath = rr.selection[0].as_pathname() + else: + # This is gross, and probably incorrect too + vrefnum, dirid, name = rr.selection[0].as_tuple() + pardir_fss = Carbon.File.FSSpec((vrefnum, dirid, '')) + pardir_fsr = Carbon.File.FSRef(pardir_fss) + pardir_path = pardir_fsr.FSRefMakePath() # This is utf-8 + name_utf8 = unicode(name, 'macroman').encode('utf8') + fullpath = os.path.join(pardir_path, name_utf8) + if issubclass(tpwanted, unicode): + return unicode(fullpath, 'utf8') + return tpwanted(fullpath) + raise TypeError, "Unknown value for argument 'wanted': %s" % repr(tpwanted) + +def AskFolder( + message=None, + # From here on the order is not documented + version=None, + defaultLocation=None, + dialogOptionFlags=None, + location=None, + clientName=None, + windowTitle=None, + actionButtonLabel=None, + cancelButtonLabel=None, + preferenceKey=None, + popupExtension=None, + eventProc=_dummy_Nav_eventproc, + filterProc=None, + wanted=None, + multiple=None): + """Display a dialog asking the user for select a folder. + + wanted is the return type wanted: FSSpec, FSRef, unicode or string (default) + the other arguments can be looked up in Apple's Navigation Services documentation""" + + default_flags = 0x17 + args, tpwanted = _process_Nav_args(default_flags, version=version, + defaultLocation=defaultLocation, dialogOptionFlags=dialogOptionFlags, + location=location,clientName=clientName,windowTitle=windowTitle, + actionButtonLabel=actionButtonLabel,cancelButtonLabel=cancelButtonLabel, + message=message,preferenceKey=preferenceKey, + popupExtension=popupExtension,eventProc=eventProc,filterProc=filterProc, + wanted=wanted,multiple=multiple) + _interact() + try: + rr = Nav.NavChooseFolder(args) + good = 1 + except Nav.error, arg: + if arg[0] != -128: # userCancelledErr + raise Nav.error, arg + return None + if not rr.validRecord or not rr.selection: + return None + if issubclass(tpwanted, Carbon.File.FSRef): + return tpwanted(rr.selection_fsr[0]) + if issubclass(tpwanted, Carbon.File.FSSpec): + return tpwanted(rr.selection[0]) + if issubclass(tpwanted, str): + return tpwanted(rr.selection_fsr[0].as_pathname()) + if issubclass(tpwanted, unicode): + return tpwanted(rr.selection_fsr[0].as_pathname(), 'utf8') + raise TypeError, "Unknown value for argument 'wanted': %s" % repr(tpwanted) + + +def test(): + import time + + Message("Testing EasyDialogs.") + optionlist = (('v', 'Verbose'), ('verbose', 'Verbose as long option'), + ('flags=', 'Valued option'), ('f:', 'Short valued option')) + commandlist = (('start', 'Start something'), ('stop', 'Stop something')) + argv = GetArgv(optionlist=optionlist, commandlist=commandlist, addoldfile=0) + Message("Command line: %s"%' '.join(argv)) + for i in range(len(argv)): + print 'arg[%d] = %r' % (i, argv[i]) + ok = AskYesNoCancel("Do you want to proceed?") + ok = AskYesNoCancel("Do you want to identify?", yes="Identify", no="No") + if ok > 0: + s = AskString("Enter your first name", "Joe") + s2 = AskPassword("Okay %s, tell us your nickname"%s, s, cancel="None") + if not s2: + Message("%s has no secret nickname"%s) + else: + Message("Hello everybody!!\nThe secret nickname of %s is %s!!!"%(s, s2)) + else: + s = 'Anonymous' + rv = AskFileForOpen(message="Gimme a file, %s"%s, wanted=Carbon.File.FSSpec) + Message("rv: %s"%rv) + rv = AskFileForSave(wanted=Carbon.File.FSRef, savedFileName="%s.txt"%s) + Message("rv.as_pathname: %s"%rv.as_pathname()) + rv = AskFolder() + Message("Folder name: %s"%rv) + text = ( "Working Hard...", "Hardly Working..." , + "So far, so good!", "Keep on truckin'" ) + bar = ProgressBar("Progress, progress...", 0, label="Ramping up...") + try: + if hasattr(MacOS, 'SchedParams'): + appsw = MacOS.SchedParams(1, 0) + for i in xrange(20): + bar.inc() + time.sleep(0.05) + bar.set(0,100) + for i in xrange(100): + bar.set(i) + time.sleep(0.05) + if i % 10 == 0: + bar.label(text[(i/10) % 4]) + bar.label("Done.") + time.sleep(1.0) # give'em a chance to see "Done." + finally: + del bar + if hasattr(MacOS, 'SchedParams'): + MacOS.SchedParams(*appsw) + +if __name__ == '__main__': + try: + test() + except KeyboardInterrupt: + Message("Operation Canceled.") diff --git a/sys/lib/python/plat-mac/FrameWork.py b/sys/lib/python/plat-mac/FrameWork.py new file mode 100644 index 000000000..0a8c1b8e6 --- /dev/null +++ b/sys/lib/python/plat-mac/FrameWork.py @@ -0,0 +1,1123 @@ +"A sort of application framework for the Mac" + +DEBUG=0 + +import MacOS +import traceback + +from Carbon.AE import * +from Carbon.AppleEvents import * +from Carbon.Ctl import * +from Carbon.Controls import * +from Carbon.Dlg import * +from Carbon.Dialogs import * +from Carbon.Evt import * +from Carbon.Events import * +from Carbon.Help import * +from Carbon.Menu import * +from Carbon.Menus import * +from Carbon.Qd import * +from Carbon.QuickDraw import * +#from Carbon.Res import * +#from Carbon.Resources import * +#from Carbon.Snd import * +#from Carbon.Sound import * +from Carbon.Win import * +from Carbon.Windows import * +import types + +import EasyDialogs + +try: + MyFrontWindow = FrontNonFloatingWindow +except NameError: + MyFrontWindow = FrontWindow + +kHighLevelEvent = 23 # Don't know what header file this should come from +SCROLLBARWIDTH = 16 # Again, not a clue... + +# Trick to forestall a set of SIOUX menus being added to our menubar +SIOUX_APPLEMENU_ID=32000 + + +# Map event 'what' field to strings +eventname = {} +eventname[1] = 'mouseDown' +eventname[2] = 'mouseUp' +eventname[3] = 'keyDown' +eventname[4] = 'keyUp' +eventname[5] = 'autoKey' +eventname[6] = 'updateEvt' +eventname[7] = 'diskEvt' +eventname[8] = 'activateEvt' +eventname[15] = 'osEvt' +eventname[23] = 'kHighLevelEvent' + +# Map part codes returned by WhichWindow() to strings +partname = {} +partname[0] = 'inDesk' +partname[1] = 'inMenuBar' +partname[2] = 'inSysWindow' +partname[3] = 'inContent' +partname[4] = 'inDrag' +partname[5] = 'inGrow' +partname[6] = 'inGoAway' +partname[7] = 'inZoomIn' +partname[8] = 'inZoomOut' + +# +# The useable portion of the screen +# ## but what happens with multiple screens? jvr +screenbounds = GetQDGlobalsScreenBits().bounds +screenbounds = screenbounds[0]+4, screenbounds[1]+4, \ + screenbounds[2]-4, screenbounds[3]-4 + +next_window_x = 16 # jvr +next_window_y = 44 # jvr + +def windowbounds(width, height): + "Return sensible window bounds" + global next_window_x, next_window_y + r, b = next_window_x+width, next_window_y+height + if r > screenbounds[2]: + next_window_x = 16 + if b > screenbounds[3]: + next_window_y = 44 + l, t = next_window_x, next_window_y + r, b = next_window_x+width, next_window_y+height + next_window_x, next_window_y = next_window_x + 8, next_window_y + 20 # jvr + return l, t, r, b + +_watch = None +def setwatchcursor(): + global _watch + + if _watch == None: + _watch = GetCursor(4).data + SetCursor(_watch) + +def setarrowcursor(): + SetCursor(GetQDGlobalsArrow()) + +class Application: + + "Application framework -- your application should be a derived class" + + def __init__(self, nomenubar=0): + self._doing_asyncevents = 0 + self.quitting = 0 + self.needmenubarredraw = 0 + self._windows = {} + self._helpmenu = None + if nomenubar: + self.menubar = None + else: + self.makemenubar() + + def __del__(self): + if self._doing_asyncevents: + self._doing_asyncevents = 0 + MacOS.SetEventHandler() + + def makemenubar(self): + self.menubar = MenuBar(self) + AppleMenu(self.menubar, self.getabouttext(), self.do_about) + self.makeusermenus() + + def makeusermenus(self): + self.filemenu = m = Menu(self.menubar, "File") + self._quititem = MenuItem(m, "Quit", "Q", self._quit) + + def gethelpmenu(self): + if self._helpmenu == None: + self._helpmenu = HelpMenu(self.menubar) + return self._helpmenu + + def _quit(self, *args): + self.quitting = 1 + + def cleanup(self): + for w in self._windows.values(): + w.do_close() + return self._windows == {} + + def appendwindow(self, wid, window): + self._windows[wid] = window + + def removewindow(self, wid): + del self._windows[wid] + + def getabouttext(self): + return "About %s..." % self.__class__.__name__ + + def do_about(self, id, item, window, event): + EasyDialogs.Message("Hello, world!" + "\015(%s)" % self.__class__.__name__) + + # The main event loop is broken up in several simple steps. + # This is done so you can override each individual part, + # if you have a need to do extra processing independent of the + # event type. + # Normally, however, you'd just define handlers for individual + # events. + + schedparams = (0, 0) # By default disable Python's event handling + default_wait = None # By default we wait GetCaretTime in WaitNextEvent + + def mainloop(self, mask = everyEvent, wait = None): + self.quitting = 0 + if hasattr(MacOS, 'SchedParams'): + saveparams = MacOS.SchedParams(*self.schedparams) + try: + while not self.quitting: + try: + self.do1event(mask, wait) + except (Application, SystemExit): + # Note: the raising of "self" is old-fashioned idiom to + # exit the mainloop. Calling _quit() is better for new + # applications. + break + finally: + if hasattr(MacOS, 'SchedParams'): + MacOS.SchedParams(*saveparams) + + def dopendingevents(self, mask = everyEvent): + """dopendingevents - Handle all pending events""" + while self.do1event(mask, wait=0): + pass + + def do1event(self, mask = everyEvent, wait = None): + ok, event = self.getevent(mask, wait) + if IsDialogEvent(event): + if self.do_dialogevent(event): + return + if ok: + self.dispatch(event) + else: + self.idle(event) + + def idle(self, event): + pass + + def getevent(self, mask = everyEvent, wait = None): + if self.needmenubarredraw: + DrawMenuBar() + self.needmenubarredraw = 0 + if wait is None: + wait = self.default_wait + if wait is None: + wait = GetCaretTime() + ok, event = WaitNextEvent(mask, wait) + return ok, event + + def dispatch(self, event): + # The following appears to be double work (already done in do1event) + # but we need it for asynchronous event handling + if IsDialogEvent(event): + if self.do_dialogevent(event): + return + (what, message, when, where, modifiers) = event + if eventname.has_key(what): + name = "do_" + eventname[what] + else: + name = "do_%d" % what + try: + handler = getattr(self, name) + except AttributeError: + handler = self.do_unknownevent + handler(event) + + def asyncevents(self, onoff): + """asyncevents - Set asynchronous event handling on or off""" + if MacOS.runtimemodel == 'macho': + raise 'Unsupported in MachoPython' + old = self._doing_asyncevents + if old: + MacOS.SetEventHandler() + MacOS.SchedParams(*self.schedparams) + if onoff: + MacOS.SetEventHandler(self.dispatch) + doint, dummymask, benice, howoften, bgyield = \ + self.schedparams + MacOS.SchedParams(doint, everyEvent, benice, + howoften, bgyield) + self._doing_asyncevents = onoff + return old + + def do_dialogevent(self, event): + gotone, dlg, item = DialogSelect(event) + if gotone: + window = dlg.GetDialogWindow() + if self._windows.has_key(window): + self._windows[window].do_itemhit(item, event) + else: + print 'Dialog event for unknown dialog' + return 1 + return 0 + + def do_mouseDown(self, event): + (what, message, when, where, modifiers) = event + partcode, wid = FindWindow(where) + + # + # Find the correct name. + # + if partname.has_key(partcode): + name = "do_" + partname[partcode] + else: + name = "do_%d" % partcode + + if wid == None: + # No window, or a non-python window + try: + handler = getattr(self, name) + except AttributeError: + # Not menubar or something, so assume someone + # else's window + if hasattr(MacOS, 'HandleEvent'): + MacOS.HandleEvent(event) + return + elif self._windows.has_key(wid): + # It is a window. Hand off to correct window. + window = self._windows[wid] + try: + handler = getattr(window, name) + except AttributeError: + handler = self.do_unknownpartcode + else: + # It is a python-toolbox window, but not ours. + handler = self.do_unknownwindow + handler(partcode, wid, event) + + def do_inSysWindow(self, partcode, window, event): + if hasattr(MacOS, 'HandleEvent'): + MacOS.HandleEvent(event) + + def do_inDesk(self, partcode, window, event): + if hasattr(MacOS, 'HandleEvent'): + MacOS.HandleEvent(event) + + def do_inMenuBar(self, partcode, window, event): + if not self.menubar: + if hasattr(MacOS, 'HandleEvent'): + MacOS.HandleEvent(event) + return + (what, message, when, where, modifiers) = event + result = MenuSelect(where) + id = (result>>16) & 0xffff # Hi word + if id >= 0x8000: + id = -65536 + id + item = result & 0xffff # Lo word + self.do_rawmenu(id, item, window, event) + + def do_rawmenu(self, id, item, window, event): + try: + self.do_menu(id, item, window, event) + finally: + HiliteMenu(0) + + def do_menu(self, id, item, window, event): + if hasattr(MacOS, 'OutputSeen'): + MacOS.OutputSeen() + self.menubar.dispatch(id, item, window, event) + + + def do_unknownpartcode(self, partcode, window, event): + (what, message, when, where, modifiers) = event + if DEBUG: print "Mouse down at global:", where + if DEBUG: print "\tUnknown part code:", partcode + if DEBUG: print "\tEvent:", self.printevent(event) + if hasattr(MacOS, 'HandleEvent'): + MacOS.HandleEvent(event) + + def do_unknownwindow(self, partcode, window, event): + if DEBUG: print 'Unknown window:', window + if hasattr(MacOS, 'HandleEvent'): + MacOS.HandleEvent(event) + + def do_keyDown(self, event): + self.do_key(event) + + def do_autoKey(self, event): + if not event[-1] & cmdKey: + self.do_key(event) + + def do_key(self, event): + (what, message, when, where, modifiers) = event + c = chr(message & charCodeMask) + if self.menubar: + result = MenuEvent(event) + id = (result>>16) & 0xffff # Hi word + item = result & 0xffff # Lo word + if id: + self.do_rawmenu(id, item, None, event) + return + # Otherwise we fall-through + if modifiers & cmdKey: + if c == '.': + raise self + else: + if not self.menubar: + if hasattr(MacOS, 'HandleEvent'): + MacOS.HandleEvent(event) + return + else: + # See whether the front window wants it + w = MyFrontWindow() + if w and self._windows.has_key(w): + window = self._windows[w] + try: + do_char = window.do_char + except AttributeError: + do_char = self.do_char + do_char(c, event) + # else it wasn't for us, sigh... + + def do_char(self, c, event): + if DEBUG: print "Character", repr(c) + + def do_updateEvt(self, event): + (what, message, when, where, modifiers) = event + wid = WhichWindow(message) + if wid and self._windows.has_key(wid): + window = self._windows[wid] + window.do_rawupdate(wid, event) + else: + if hasattr(MacOS, 'HandleEvent'): + MacOS.HandleEvent(event) + + def do_activateEvt(self, event): + (what, message, when, where, modifiers) = event + wid = WhichWindow(message) + if wid and self._windows.has_key(wid): + window = self._windows[wid] + window.do_activate(modifiers & 1, event) + else: + if hasattr(MacOS, 'HandleEvent'): + MacOS.HandleEvent(event) + + def do_osEvt(self, event): + (what, message, when, where, modifiers) = event + which = (message >> 24) & 0xff + if which == 1: # suspend/resume + self.do_suspendresume(event) + else: + if DEBUG: + print 'unknown osEvt:', + self.printevent(event) + + def do_suspendresume(self, event): + (what, message, when, where, modifiers) = event + wid = MyFrontWindow() + if wid and self._windows.has_key(wid): + window = self._windows[wid] + window.do_activate(message & 1, event) + + def do_kHighLevelEvent(self, event): + (what, message, when, where, modifiers) = event + if DEBUG: + print "High Level Event:", + self.printevent(event) + try: + AEProcessAppleEvent(event) + except: + pass + #print "AEProcessAppleEvent error:" + #traceback.print_exc() + + def do_unknownevent(self, event): + if DEBUG: + print "Unhandled event:", + self.printevent(event) + + def printevent(self, event): + (what, message, when, where, modifiers) = event + nicewhat = repr(what) + if eventname.has_key(what): + nicewhat = eventname[what] + print nicewhat, + if what == kHighLevelEvent: + h, v = where + print repr(ostypecode(message)), hex(when), repr(ostypecode(h | (v<<16))), + else: + print hex(message), hex(when), where, + print hex(modifiers) + + +class MenuBar: + """Represent a set of menus in a menu bar. + + Interface: + + - (constructor) + - (destructor) + - addmenu + - addpopup (normally used internally) + - dispatch (called from Application) + """ + + nextid = 1 # Necessarily a class variable + + def getnextid(self): + id = MenuBar.nextid + MenuBar.nextid = id+1 + return id + + def __init__(self, parent=None): + self.parent = parent + ClearMenuBar() + self.bar = GetMenuBar() + self.menus = {} + + # XXX necessary? + def close(self): + self.parent = None + self.bar = None + self.menus = None + + def addmenu(self, title, after = 0, id=None): + if id == None: + id = self.getnextid() + if DEBUG: print 'Newmenu', title, id # XXXX + m = NewMenu(id, title) + m.InsertMenu(after) + if after >= 0: + if self.parent: + self.parent.needmenubarredraw = 1 + else: + DrawMenuBar() + return id, m + + def delmenu(self, id): + if DEBUG: print 'Delmenu', id # XXXX + DeleteMenu(id) + + def addpopup(self, title = ''): + return self.addmenu(title, -1) + +# Useless: +# def install(self): +# if not self.bar: return +# SetMenuBar(self.bar) +# if self.parent: +# self.parent.needmenubarredraw = 1 +# else: +# DrawMenuBar() + + def fixmenudimstate(self): + for m in self.menus.keys(): + menu = self.menus[m] + if menu.__class__ == FrameWork.AppleMenu: + continue + for i in range(len(menu.items)): + label, shortcut, callback, kind = menu.items[i] + if type(callback) == types.StringType: + wid = MyFrontWindow() + if wid and self.parent._windows.has_key(wid): + window = self.parent._windows[wid] + if hasattr(window, "domenu_" + callback): + menu.menu.EnableMenuItem(i + 1) + elif hasattr(self.parent, "domenu_" + callback): + menu.menu.EnableMenuItem(i + 1) + else: + menu.menu.DisableMenuItem(i + 1) + elif hasattr(self.parent, "domenu_" + callback): + menu.menu.EnableMenuItem(i + 1) + else: + menu.menu.DisableMenuItem(i + 1) + elif callback: + pass + + def dispatch(self, id, item, window, event): + if self.menus.has_key(id): + self.menus[id].dispatch(id, item, window, event) + else: + if DEBUG: print "MenuBar.dispatch(%d, %d, %s, %s)" % \ + (id, item, window, event) + + +# XXX Need a way to get menus as resources and bind them to callbacks + +class Menu: + "One menu." + + def __init__(self, bar, title, after=0, id=None): + self.bar = bar + self.id, self.menu = self.bar.addmenu(title, after, id) + bar.menus[self.id] = self + self.items = [] + self._parent = None + + def delete(self): + self.bar.delmenu(self.id) + del self.bar.menus[self.id] + self.menu.DisposeMenu() + del self.bar + del self.items + del self.menu + del self.id + del self._parent + + def additem(self, label, shortcut=None, callback=None, kind=None): + self.menu.AppendMenu('x') # add a dummy string + self.items.append((label, shortcut, callback, kind)) + item = len(self.items) + if isinstance(label, unicode): + self.menu.SetMenuItemTextWithCFString(item, label) + else: + self.menu.SetMenuItemText(item, label) + if shortcut and type(shortcut) == type(()): + modifiers, char = shortcut[:2] + self.menu.SetItemCmd(item, ord(char)) + self.menu.SetMenuItemModifiers(item, modifiers) + if len(shortcut) > 2: + self.menu.SetMenuItemKeyGlyph(item, shortcut[2]) + elif shortcut: + self.menu.SetItemCmd(item, ord(shortcut)) + return item + + def delitem(self, item): + if item != len(self.items): + raise 'Can only delete last item of a menu' + self.menu.DeleteMenuItem(item) + del self.items[item-1] + + def addcheck(self, label, shortcut=None, callback=None): + return self.additem(label, shortcut, callback, 'check') + + def addradio(self, label, shortcut=None, callback=None): + return self.additem(label, shortcut, callback, 'radio') + + def addseparator(self): + self.menu.AppendMenu('(-') + self.items.append(('', None, None, 'separator')) + + def addsubmenu(self, label, title=''): + sub = Menu(self.bar, title, -1) + item = self.additem(label, '\x1B', None, 'submenu') + self.menu.SetItemMark(item, sub.id) + sub._parent = self + sub._parent_item = item + return sub + + def dispatch(self, id, item, window, event): + title, shortcut, callback, mtype = self.items[item-1] + if callback: + if not self.bar.parent or type(callback) <> types.StringType: + menuhandler = callback + else: + # callback is string + wid = MyFrontWindow() + if wid and self.bar.parent._windows.has_key(wid): + window = self.bar.parent._windows[wid] + if hasattr(window, "domenu_" + callback): + menuhandler = getattr(window, "domenu_" + callback) + elif hasattr(self.bar.parent, "domenu_" + callback): + menuhandler = getattr(self.bar.parent, "domenu_" + callback) + else: + # nothing we can do. we shouldn't have come this far + # since the menu item should have been disabled... + return + elif hasattr(self.bar.parent, "domenu_" + callback): + menuhandler = getattr(self.bar.parent, "domenu_" + callback) + else: + # nothing we can do. we shouldn't have come this far + # since the menu item should have been disabled... + return + menuhandler(id, item, window, event) + + def enable(self, onoff): + if onoff: + self.menu.EnableMenuItem(0) + if self._parent: + self._parent.menu.EnableMenuItem(self._parent_item) + else: + self.menu.DisableMenuItem(0) + if self._parent: + self._parent.menu.DisableMenuItem(self._parent_item) + if self.bar and self.bar.parent: + self.bar.parent.needmenubarredraw = 1 + +class PopupMenu(Menu): + def __init__(self, bar): + Menu.__init__(self, bar, '(popup)', -1) + + def popup(self, x, y, event, default=1, window=None): + # NOTE that x and y are global coordinates, and they should probably + # be topleft of the button the user clicked (not mouse-coordinates), + # so the popup nicely overlaps. + reply = self.menu.PopUpMenuSelect(x, y, default) + if not reply: + return + id = (reply >> 16) & 0xffff + item = reply & 0xffff + if not window: + wid = MyFrontWindow() + try: + window = self.bar.parent._windows[wid] + except: + pass # If we can't find the window we pass None + self.dispatch(id, item, window, event) + +class MenuItem: + def __init__(self, menu, title, shortcut=None, callback=None, kind=None): + self.item = menu.additem(title, shortcut, callback) + self.menu = menu + + def delete(self): + self.menu.delitem(self.item) + del self.menu + del self.item + + def check(self, onoff): + self.menu.menu.CheckMenuItem(self.item, onoff) + + def enable(self, onoff): + if onoff: + self.menu.menu.EnableMenuItem(self.item) + else: + self.menu.menu.DisableMenuItem(self.item) + + def settext(self, text): + self.menu.menu.SetMenuItemText(self.item, text) + + def setstyle(self, style): + self.menu.menu.SetItemStyle(self.item, style) + + def seticon(self, icon): + self.menu.menu.SetItemIcon(self.item, icon) + + def setcmd(self, cmd): + self.menu.menu.SetItemCmd(self.item, cmd) + + def setmark(self, cmd): + self.menu.menu.SetItemMark(self.item, cmd) + + +class RadioItem(MenuItem): + def __init__(self, menu, title, shortcut=None, callback=None): + MenuItem.__init__(self, menu, title, shortcut, callback, 'radio') + +class CheckItem(MenuItem): + def __init__(self, menu, title, shortcut=None, callback=None): + MenuItem.__init__(self, menu, title, shortcut, callback, 'check') + +def Separator(menu): + menu.addseparator() + +def SubMenu(menu, label, title=''): + return menu.addsubmenu(label, title) + + +class AppleMenu(Menu): + + def __init__(self, bar, abouttext="About me...", aboutcallback=None): + Menu.__init__(self, bar, "\024", id=SIOUX_APPLEMENU_ID) + if MacOS.runtimemodel == 'ppc': + self.additem(abouttext, None, aboutcallback) + self.addseparator() + self.menu.AppendResMenu('DRVR') + else: + # Additem()'s tricks do not work for "apple" menu under Carbon + self.menu.InsertMenuItem(abouttext, 0) + self.items.append((abouttext, None, aboutcallback, None)) + + def dispatch(self, id, item, window, event): + if item == 1: + Menu.dispatch(self, id, item, window, event) + elif MacOS.runtimemodel == 'ppc': + name = self.menu.GetMenuItemText(item) + OpenDeskAcc(name) + +class HelpMenu(Menu): + def __init__(self, bar): + # Note we don't call Menu.__init__, we do the necessary things by hand + self.bar = bar + self.menu, index = HMGetHelpMenu() + self.id = self.menu.GetMenuID() + bar.menus[self.id] = self + # The next line caters for the entries the system already handles for us + self.items = [None]*(index-1) + self._parent = None + + +class Window: + """A single window belonging to an application""" + + def __init__(self, parent): + self.wid = None + self.parent = parent + + def open(self, bounds=(40, 40, 400, 400), resid=None): + if resid <> None: + self.wid = GetNewWindow(resid, -1) + else: + self.wid = NewWindow(bounds, self.__class__.__name__, 1, + 8, -1, 1, 0) # changed to proc id 8 to include zoom box. jvr + self.do_postopen() + + def do_postopen(self): + """Tell our parent we exist""" + self.parent.appendwindow(self.wid, self) + + def close(self): + self.do_postclose() + + def do_postclose(self): + self.parent.removewindow(self.wid) + self.parent = None + self.wid = None + + def SetPort(self): + # Convinience method + SetPort(self.wid) + + def GetWindow(self): + return self.wid + + def do_inDrag(self, partcode, window, event): + where = event[3] + window.DragWindow(where, self.draglimit) + + draglimit = screenbounds + + def do_inGoAway(self, partcode, window, event): + where = event[3] + if window.TrackGoAway(where): + self.close() + + def do_inZoom(self, partcode, window, event): + (what, message, when, where, modifiers) = event + if window.TrackBox(where, partcode): + window.ZoomWindow(partcode, 1) + rect = window.GetWindowUserState() # so that zoom really works... jvr + self.do_postresize(rect[2] - rect[0], rect[3] - rect[1], window) # jvr + + def do_inZoomIn(self, partcode, window, event): + SetPort(window) # !!! + self.do_inZoom(partcode, window, event) + + def do_inZoomOut(self, partcode, window, event): + SetPort(window) # !!! + self.do_inZoom(partcode, window, event) + + def do_inGrow(self, partcode, window, event): + (what, message, when, where, modifiers) = event + result = window.GrowWindow(where, self.growlimit) + if result: + height = (result>>16) & 0xffff # Hi word + width = result & 0xffff # Lo word + self.do_resize(width, height, window) + + growlimit = (50, 50, screenbounds[2] - screenbounds[0], screenbounds[3] - screenbounds[1]) # jvr + + def do_resize(self, width, height, window): + l, t, r, b = self.wid.GetWindowPort().GetPortBounds() # jvr, forGrowIcon + self.SetPort() # jvr + self.wid.InvalWindowRect((r - SCROLLBARWIDTH + 1, b - SCROLLBARWIDTH + 1, r, b)) # jvr + window.SizeWindow(width, height, 1) # changed updateFlag to true jvr + self.do_postresize(width, height, window) + + def do_postresize(self, width, height, window): + SetPort(window) + self.wid.InvalWindowRect(window.GetWindowPort().GetPortBounds()) + + def do_inContent(self, partcode, window, event): + # + # If we're not frontmost, select ourselves and wait for + # the activate event. + # + if MyFrontWindow() <> window: + window.SelectWindow() + return + # We are. Handle the event. + (what, message, when, where, modifiers) = event + SetPort(window) + local = GlobalToLocal(where) + self.do_contentclick(local, modifiers, event) + + def do_contentclick(self, local, modifiers, event): + if DEBUG: + print 'Click in contents at %s, modifiers %s'%(local, modifiers) + + def do_rawupdate(self, window, event): + if DEBUG: print "raw update for", window + SetPort(window) + window.BeginUpdate() + self.do_update(window, event) + window.EndUpdate() + + def do_update(self, window, event): + if DEBUG: + import time + for i in range(8): + time.sleep(0.1) + InvertRgn(window.GetWindowPort().visRgn) + FillRgn(window.GetWindowPort().visRgn, GetQDGlobalsGray()) + else: + EraseRgn(window.GetWindowPort().visRgn) + + def do_activate(self, activate, event): + if DEBUG: print 'Activate %d for %s'%(activate, self.wid) + +class ControlsWindow(Window): + + def do_rawupdate(self, window, event): + if DEBUG: print "raw update for", window + SetPort(window) + window.BeginUpdate() + self.do_update(window, event) + #DrawControls(window) # jvr + UpdateControls(window, window.GetWindowPort().visRgn) # jvr + window.DrawGrowIcon() + window.EndUpdate() + + def do_controlhit(self, window, control, pcode, event): + if DEBUG: print "control hit in", window, "on", control, "; pcode =", pcode + + def do_inContent(self, partcode, window, event): + if MyFrontWindow() <> window: + window.SelectWindow() + return + (what, message, when, where, modifiers) = event + SetPort(window) # XXXX Needed? + local = GlobalToLocal(where) + pcode, control = FindControl(local, window) + if pcode and control: + self.do_rawcontrolhit(window, control, pcode, local, event) + else: + if DEBUG: print "FindControl(%s, %s) -> (%s, %s)" % \ + (local, window, pcode, control) + self.do_contentclick(local, modifiers, event) + + def do_rawcontrolhit(self, window, control, pcode, local, event): + pcode = control.TrackControl(local) + if pcode: + self.do_controlhit(window, control, pcode, event) + +class ScrolledWindow(ControlsWindow): + def __init__(self, parent): + self.barx = self.bary = None + self.barx_enabled = self.bary_enabled = 1 + self.activated = 1 + ControlsWindow.__init__(self, parent) + + def scrollbars(self, wantx=1, wanty=1): + SetPort(self.wid) + self.barx = self.bary = None + self.barx_enabled = self.bary_enabled = 1 + x0, y0, x1, y1 = self.wid.GetWindowPort().GetPortBounds() + vx, vy = self.getscrollbarvalues() + if vx == None: self.barx_enabled, vx = 0, 0 + if vy == None: self.bary_enabled, vy = 0, 0 + if wantx: + rect = x0-1, y1-(SCROLLBARWIDTH-1), x1-(SCROLLBARWIDTH-2), y1+1 + self.barx = NewControl(self.wid, rect, "", 1, vx, 0, 32767, 16, 0) + if not self.barx_enabled: self.barx.HiliteControl(255) +## self.wid.InvalWindowRect(rect) + if wanty: + rect = x1-(SCROLLBARWIDTH-1), y0-1, x1+1, y1-(SCROLLBARWIDTH-2) + self.bary = NewControl(self.wid, rect, "", 1, vy, 0, 32767, 16, 0) + if not self.bary_enabled: self.bary.HiliteControl(255) +## self.wid.InvalWindowRect(rect) + + def do_postclose(self): + self.barx = self.bary = None + ControlsWindow.do_postclose(self) + + def do_activate(self, onoff, event): + self.activated = onoff + if onoff: + if self.barx and self.barx_enabled: + self.barx.ShowControl() # jvr + if self.bary and self.bary_enabled: + self.bary.ShowControl() # jvr + else: + if self.barx: + self.barx.HideControl() # jvr; An inactive window should have *hidden* + # scrollbars, not just dimmed (no matter what + # BBEdit does... look at the Finder) + if self.bary: + self.bary.HideControl() # jvr + self.wid.DrawGrowIcon() # jvr + + def do_postresize(self, width, height, window): + l, t, r, b = self.wid.GetWindowPort().GetPortBounds() + self.SetPort() + if self.barx: + self.barx.HideControl() # jvr + self.barx.MoveControl(l-1, b-(SCROLLBARWIDTH-1)) + self.barx.SizeControl((r-l)-(SCROLLBARWIDTH-3), SCROLLBARWIDTH) # jvr + if self.bary: + self.bary.HideControl() # jvr + self.bary.MoveControl(r-(SCROLLBARWIDTH-1), t-1) + self.bary.SizeControl(SCROLLBARWIDTH, (b-t)-(SCROLLBARWIDTH-3)) # jvr + if self.barx: + self.barx.ShowControl() # jvr + self.wid.ValidWindowRect((l, b - SCROLLBARWIDTH + 1, r - SCROLLBARWIDTH + 2, b)) # jvr + if self.bary: + self.bary.ShowControl() # jvr + self.wid.ValidWindowRect((r - SCROLLBARWIDTH + 1, t, r, b - SCROLLBARWIDTH + 2)) # jvr + self.wid.InvalWindowRect((r - SCROLLBARWIDTH + 1, b - SCROLLBARWIDTH + 1, r, b)) # jvr, growicon + + + def do_rawcontrolhit(self, window, control, pcode, local, event): + if control == self.barx: + which = 'x' + elif control == self.bary: + which = 'y' + else: + return 0 + if pcode in (inUpButton, inDownButton, inPageUp, inPageDown): + # We do the work for the buttons and grey area in the tracker + dummy = control.TrackControl(local, self.do_controltrack) + else: + # but the thumb is handled here + pcode = control.TrackControl(local) + if pcode == inThumb: + value = control.GetControlValue() + print 'setbars', which, value #DBG + self.scrollbar_callback(which, 'set', value) + self.updatescrollbars() + else: + print 'funny part', pcode #DBG + return 1 + + def do_controltrack(self, control, pcode): + if control == self.barx: + which = 'x' + elif control == self.bary: + which = 'y' + else: + return + + if pcode == inUpButton: + what = '-' + elif pcode == inDownButton: + what = '+' + elif pcode == inPageUp: + what = '--' + elif pcode == inPageDown: + what = '++' + else: + return + self.scrollbar_callback(which, what, None) + self.updatescrollbars() + + def updatescrollbars(self): + SetPort(self.wid) + vx, vy = self.getscrollbarvalues() + if self.barx: + if vx == None: + self.barx.HiliteControl(255) + self.barx_enabled = 0 + else: + if not self.barx_enabled: + self.barx_enabled = 1 + if self.activated: + self.barx.HiliteControl(0) + self.barx.SetControlValue(vx) + if self.bary: + if vy == None: + self.bary.HiliteControl(255) + self.bary_enabled = 0 + else: + if not self.bary_enabled: + self.bary_enabled = 1 + if self.activated: + self.bary.HiliteControl(0) + self.bary.SetControlValue(vy) + + # Auxiliary function: convert standard text/image/etc coordinate + # to something palatable as getscrollbarvalues() return + def scalebarvalue(self, absmin, absmax, curmin, curmax): + if curmin <= absmin and curmax >= absmax: + return None + if curmin <= absmin: + return 0 + if curmax >= absmax: + return 32767 + perc = float(curmin-absmin)/float(absmax-absmin) + return int(perc*32767) + + # To be overridden: + + def getscrollbarvalues(self): + return 0, 0 + + def scrollbar_callback(self, which, what, value): + print 'scroll', which, what, value + +class DialogWindow(Window): + """A modeless dialog window""" + + def open(self, resid): + self.dlg = GetNewDialog(resid, -1) + self.wid = self.dlg.GetDialogWindow() + self.do_postopen() + + def close(self): + self.do_postclose() + + def do_postclose(self): + self.dlg = None + Window.do_postclose(self) + + def do_itemhit(self, item, event): + print 'Dialog %s, item %d hit'%(self.dlg, item) + + def do_rawupdate(self, window, event): + pass + +def ostypecode(x): + "Convert a long int to the 4-character code it really is" + s = '' + for i in range(4): + x, c = divmod(x, 256) + s = chr(c) + s + return s + + +class TestApp(Application): + + "This class is used by the test() function" + + def makeusermenus(self): + self.filemenu = m = Menu(self.menubar, "File") + self.saveitem = MenuItem(m, "Save", "S", self.save) + Separator(m) + self.optionsmenu = mm = SubMenu(m, "Options") + self.opt1 = CheckItem(mm, "Arguments", "A") + self.opt2 = CheckItem(mm, "Being hit on the head lessons", (kMenuOptionModifier, "A")) + self.opt3 = CheckItem(mm, "Complaints", (kMenuOptionModifier|kMenuNoCommandModifier, "A")) + Separator(m) + self.itemeh = MenuItem(m, "Enable Help", None, self.enablehelp) + self.itemdbg = MenuItem(m, "Debug", None, self.debug) + Separator(m) + self.quititem = MenuItem(m, "Quit", "Q", self.quit) + + def save(self, *args): + print "Save" + + def quit(self, *args): + raise self + + def enablehelp(self, *args): + hm = self.gethelpmenu() + self.nohelpitem = MenuItem(hm, "There isn't any", None, self.nohelp) + + def nohelp(self, *args): + print "I told you there isn't any!" + + def debug(self, *args): + import pdb + pdb.set_trace() + + +def test(): + "Test program" + app = TestApp() + app.mainloop() + + +if __name__ == '__main__': + test() diff --git a/sys/lib/python/plat-mac/MiniAEFrame.py b/sys/lib/python/plat-mac/MiniAEFrame.py new file mode 100644 index 000000000..98247cbf3 --- /dev/null +++ b/sys/lib/python/plat-mac/MiniAEFrame.py @@ -0,0 +1,198 @@ +"""MiniAEFrame - A minimal AppleEvent Application framework. + +There are two classes: + AEServer -- a mixin class offering nice AE handling. + MiniApplication -- a very minimal alternative to FrameWork.py, + only suitable for the simplest of AppleEvent servers. +""" + +import sys +import traceback +import MacOS +from Carbon import AE +from Carbon.AppleEvents import * +from Carbon import Evt +from Carbon.Events import * +from Carbon import Menu +from Carbon import Win +from Carbon.Windows import * +from Carbon import Qd + +import aetools +import EasyDialogs + +kHighLevelEvent = 23 # Not defined anywhere for Python yet? + + +class MiniApplication: + + """A minimal FrameWork.Application-like class""" + + def __init__(self): + self.quitting = 0 + # Initialize menu + self.appleid = 1 + self.quitid = 2 + Menu.ClearMenuBar() + self.applemenu = applemenu = Menu.NewMenu(self.appleid, "\024") + applemenu.AppendMenu("%s;(-" % self.getaboutmenutext()) + if MacOS.runtimemodel == 'ppc': + applemenu.AppendResMenu('DRVR') + applemenu.InsertMenu(0) + self.quitmenu = Menu.NewMenu(self.quitid, "File") + self.quitmenu.AppendMenu("Quit") + self.quitmenu.SetItemCmd(1, ord("Q")) + self.quitmenu.InsertMenu(0) + Menu.DrawMenuBar() + + def __del__(self): + self.close() + + def close(self): + pass + + def mainloop(self, mask = everyEvent, timeout = 60*60): + while not self.quitting: + self.dooneevent(mask, timeout) + + def _quit(self): + self.quitting = 1 + + def dooneevent(self, mask = everyEvent, timeout = 60*60): + got, event = Evt.WaitNextEvent(mask, timeout) + if got: + self.lowlevelhandler(event) + + def lowlevelhandler(self, event): + what, message, when, where, modifiers = event + h, v = where + if what == kHighLevelEvent: + msg = "High Level Event: %r %r" % (code(message), code(h | (v<<16))) + try: + AE.AEProcessAppleEvent(event) + except AE.Error, err: + print 'AE error: ', err + print 'in', msg + traceback.print_exc() + return + elif what == keyDown: + c = chr(message & charCodeMask) + if modifiers & cmdKey: + if c == '.': + raise KeyboardInterrupt, "Command-period" + if c == 'q': + if hasattr(MacOS, 'OutputSeen'): + MacOS.OutputSeen() + self.quitting = 1 + return + elif what == mouseDown: + partcode, window = Win.FindWindow(where) + if partcode == inMenuBar: + result = Menu.MenuSelect(where) + id = (result>>16) & 0xffff # Hi word + item = result & 0xffff # Lo word + if id == self.appleid: + if item == 1: + EasyDialogs.Message(self.getabouttext()) + elif item > 1 and hasattr(Menu, 'OpenDeskAcc'): + name = self.applemenu.GetMenuItemText(item) + Menu.OpenDeskAcc(name) + elif id == self.quitid and item == 1: + if hasattr(MacOS, 'OutputSeen'): + MacOS.OutputSeen() + self.quitting = 1 + Menu.HiliteMenu(0) + return + # Anything not handled is passed to Python/SIOUX + if hasattr(MacOS, 'HandleEvent'): + MacOS.HandleEvent(event) + else: + print "Unhandled event:", event + + def getabouttext(self): + return self.__class__.__name__ + + def getaboutmenutext(self): + return "About %s\311" % self.__class__.__name__ + + +class AEServer: + + def __init__(self): + self.ae_handlers = {} + + def installaehandler(self, classe, type, callback): + AE.AEInstallEventHandler(classe, type, self.callback_wrapper) + self.ae_handlers[(classe, type)] = callback + + def close(self): + for classe, type in self.ae_handlers.keys(): + AE.AERemoveEventHandler(classe, type) + + def callback_wrapper(self, _request, _reply): + _parameters, _attributes = aetools.unpackevent(_request) + _class = _attributes['evcl'].type + _type = _attributes['evid'].type + + if self.ae_handlers.has_key((_class, _type)): + _function = self.ae_handlers[(_class, _type)] + elif self.ae_handlers.has_key((_class, '****')): + _function = self.ae_handlers[(_class, '****')] + elif self.ae_handlers.has_key(('****', '****')): + _function = self.ae_handlers[('****', '****')] + else: + raise 'Cannot happen: AE callback without handler', (_class, _type) + + # XXXX Do key-to-name mapping here + + _parameters['_attributes'] = _attributes + _parameters['_class'] = _class + _parameters['_type'] = _type + if _parameters.has_key('----'): + _object = _parameters['----'] + del _parameters['----'] + # The try/except that used to be here can mask programmer errors. + # Let the program crash, the programmer can always add a **args + # to the formal parameter list. + rv = _function(_object, **_parameters) + else: + #Same try/except comment as above + rv = _function(**_parameters) + + if rv == None: + aetools.packevent(_reply, {}) + else: + aetools.packevent(_reply, {'----':rv}) + + +def code(x): + "Convert a long int to the 4-character code it really is" + s = '' + for i in range(4): + x, c = divmod(x, 256) + s = chr(c) + s + return s + +class _Test(AEServer, MiniApplication): + """Mini test application, handles required events""" + + def __init__(self): + MiniApplication.__init__(self) + AEServer.__init__(self) + self.installaehandler('aevt', 'oapp', self.open_app) + self.installaehandler('aevt', 'quit', self.quit) + self.installaehandler('****', '****', self.other) + self.mainloop() + + def quit(self, **args): + self._quit() + + def open_app(self, **args): + pass + + def other(self, _object=None, _class=None, _type=None, **args): + print 'AppleEvent', (_class, _type), 'for', _object, 'Other args:', args + + +if __name__ == '__main__': + _Test() diff --git a/sys/lib/python/plat-mac/PixMapWrapper.py b/sys/lib/python/plat-mac/PixMapWrapper.py new file mode 100644 index 000000000..7edbac26c --- /dev/null +++ b/sys/lib/python/plat-mac/PixMapWrapper.py @@ -0,0 +1,214 @@ +"""PixMapWrapper - defines the PixMapWrapper class, which wraps an opaque +QuickDraw PixMap data structure in a handy Python class. Also provides +methods to convert to/from pixel data (from, e.g., the img module) or a +Python Imaging Library Image object. + +J. Strout <joe@strout.net> February 1999""" + +from Carbon import Qd +from Carbon import QuickDraw +import struct +import MacOS +import img +import imgformat + +# PixMap data structure element format (as used with struct) +_pmElemFormat = { + 'baseAddr':'l', # address of pixel data + 'rowBytes':'H', # bytes per row, plus 0x8000 + 'bounds':'hhhh', # coordinates imposed over pixel data + 'top':'h', + 'left':'h', + 'bottom':'h', + 'right':'h', + 'pmVersion':'h', # flags for Color QuickDraw + 'packType':'h', # format of compression algorithm + 'packSize':'l', # size after compression + 'hRes':'l', # horizontal pixels per inch + 'vRes':'l', # vertical pixels per inch + 'pixelType':'h', # pixel format + 'pixelSize':'h', # bits per pixel + 'cmpCount':'h', # color components per pixel + 'cmpSize':'h', # bits per component + 'planeBytes':'l', # offset in bytes to next plane + 'pmTable':'l', # handle to color table + 'pmReserved':'l' # reserved for future use +} + +# PixMap data structure element offset +_pmElemOffset = { + 'baseAddr':0, + 'rowBytes':4, + 'bounds':6, + 'top':6, + 'left':8, + 'bottom':10, + 'right':12, + 'pmVersion':14, + 'packType':16, + 'packSize':18, + 'hRes':22, + 'vRes':26, + 'pixelType':30, + 'pixelSize':32, + 'cmpCount':34, + 'cmpSize':36, + 'planeBytes':38, + 'pmTable':42, + 'pmReserved':46 +} + +class PixMapWrapper: + """PixMapWrapper -- wraps the QD PixMap object in a Python class, + with methods to easily get/set various pixmap fields. Note: Use the + PixMap() method when passing to QD calls.""" + + def __init__(self): + self.__dict__['data'] = '' + self._header = struct.pack("lhhhhhhhlllhhhhlll", + id(self.data)+MacOS.string_id_to_buffer, + 0, # rowBytes + 0, 0, 0, 0, # bounds + 0, # pmVersion + 0, 0, # packType, packSize + 72<<16, 72<<16, # hRes, vRes + QuickDraw.RGBDirect, # pixelType + 16, # pixelSize + 2, 5, # cmpCount, cmpSize, + 0, 0, 0) # planeBytes, pmTable, pmReserved + self.__dict__['_pm'] = Qd.RawBitMap(self._header) + + def _stuff(self, element, bytes): + offset = _pmElemOffset[element] + fmt = _pmElemFormat[element] + self._header = self._header[:offset] \ + + struct.pack(fmt, bytes) \ + + self._header[offset + struct.calcsize(fmt):] + self.__dict__['_pm'] = None + + def _unstuff(self, element): + offset = _pmElemOffset[element] + fmt = _pmElemFormat[element] + return struct.unpack(fmt, self._header[offset:offset+struct.calcsize(fmt)])[0] + + def __setattr__(self, attr, val): + if attr == 'baseAddr': + raise 'UseErr', "don't assign to .baseAddr -- assign to .data instead" + elif attr == 'data': + self.__dict__['data'] = val + self._stuff('baseAddr', id(self.data) + MacOS.string_id_to_buffer) + elif attr == 'rowBytes': + # high bit is always set for some odd reason + self._stuff('rowBytes', val | 0x8000) + elif attr == 'bounds': + # assume val is in official Left, Top, Right, Bottom order! + self._stuff('left',val[0]) + self._stuff('top',val[1]) + self._stuff('right',val[2]) + self._stuff('bottom',val[3]) + elif attr == 'hRes' or attr == 'vRes': + # 16.16 fixed format, so just shift 16 bits + self._stuff(attr, int(val) << 16) + elif attr in _pmElemFormat.keys(): + # any other pm attribute -- just stuff + self._stuff(attr, val) + else: + self.__dict__[attr] = val + + def __getattr__(self, attr): + if attr == 'rowBytes': + # high bit is always set for some odd reason + return self._unstuff('rowBytes') & 0x7FFF + elif attr == 'bounds': + # return bounds in official Left, Top, Right, Bottom order! + return ( \ + self._unstuff('left'), + self._unstuff('top'), + self._unstuff('right'), + self._unstuff('bottom') ) + elif attr == 'hRes' or attr == 'vRes': + # 16.16 fixed format, so just shift 16 bits + return self._unstuff(attr) >> 16 + elif attr in _pmElemFormat.keys(): + # any other pm attribute -- just unstuff + return self._unstuff(attr) + else: + return self.__dict__[attr] + + + def PixMap(self): + "Return a QuickDraw PixMap corresponding to this data." + if not self.__dict__['_pm']: + self.__dict__['_pm'] = Qd.RawBitMap(self._header) + return self.__dict__['_pm'] + + def blit(self, x1=0,y1=0,x2=None,y2=None, port=None): + """Draw this pixmap into the given (default current) grafport.""" + src = self.bounds + dest = [x1,y1,x2,y2] + if x2 == None: + dest[2] = x1 + src[2]-src[0] + if y2 == None: + dest[3] = y1 + src[3]-src[1] + if not port: port = Qd.GetPort() + Qd.CopyBits(self.PixMap(), port.GetPortBitMapForCopyBits(), src, tuple(dest), + QuickDraw.srcCopy, None) + + def fromstring(self,s,width,height,format=imgformat.macrgb): + """Stuff this pixmap with raw pixel data from a string. + Supply width, height, and one of the imgformat specifiers.""" + # we only support 16- and 32-bit mac rgb... + # so convert if necessary + if format != imgformat.macrgb and format != imgformat.macrgb16: + # (LATER!) + raise "NotImplementedError", "conversion to macrgb or macrgb16" + self.data = s + self.bounds = (0,0,width,height) + self.cmpCount = 3 + self.pixelType = QuickDraw.RGBDirect + if format == imgformat.macrgb: + self.pixelSize = 32 + self.cmpSize = 8 + else: + self.pixelSize = 16 + self.cmpSize = 5 + self.rowBytes = width*self.pixelSize/8 + + def tostring(self, format=imgformat.macrgb): + """Return raw data as a string in the specified format.""" + # is the native format requested? if so, just return data + if (format == imgformat.macrgb and self.pixelSize == 32) or \ + (format == imgformat.macrgb16 and self.pixelsize == 16): + return self.data + # otherwise, convert to the requested format + # (LATER!) + raise "NotImplementedError", "data format conversion" + + def fromImage(self,im): + """Initialize this PixMap from a PIL Image object.""" + # We need data in ARGB format; PIL can't currently do that, + # but it can do RGBA, which we can use by inserting one null + # up frontpm = + if im.mode != 'RGBA': im = im.convert('RGBA') + data = chr(0) + im.tostring() + self.fromstring(data, im.size[0], im.size[1]) + + def toImage(self): + """Return the contents of this PixMap as a PIL Image object.""" + import Image + # our tostring() method returns data in ARGB format, + # whereas Image uses RGBA; a bit of slicing fixes this... + data = self.tostring()[1:] + chr(0) + bounds = self.bounds + return Image.fromstring('RGBA',(bounds[2]-bounds[0],bounds[3]-bounds[1]),data) + +def test(): + import MacOS + import EasyDialogs + import Image + path = EasyDialogs.AskFileForOpen("Image File:") + if not path: return + pm = PixMapWrapper() + pm.fromImage( Image.open(path) ) + pm.blit(20,20) + return pm diff --git a/sys/lib/python/plat-mac/aepack.py b/sys/lib/python/plat-mac/aepack.py new file mode 100644 index 000000000..529a0a4ed --- /dev/null +++ b/sys/lib/python/plat-mac/aepack.py @@ -0,0 +1,366 @@ +"""Tools for use in AppleEvent clients and servers: +conversion between AE types and python types + +pack(x) converts a Python object to an AEDesc object +unpack(desc) does the reverse +coerce(x, wanted_sample) coerces a python object to another python object +""" + +# +# This code was originally written by Guido, and modified/extended by Jack +# to include the various types that were missing. The reference used is +# Apple Event Registry, chapter 9. +# + +import struct +import string +import types +from string import strip +from types import * +from Carbon import AE +from Carbon.AppleEvents import * +import MacOS +import Carbon.File +import StringIO +import aetypes +from aetypes import mkenum, ObjectSpecifier +import os + +# These ones seem to be missing from AppleEvents +# (they're in AERegistry.h) + +#typeColorTable = 'clrt' +#typeDrawingArea = 'cdrw' +#typePixelMap = 'cpix' +#typePixelMapMinus = 'tpmm' +#typeRotation = 'trot' +#typeTextStyles = 'tsty' +#typeStyledText = 'STXT' +#typeAEText = 'tTXT' +#typeEnumeration = 'enum' + +# +# Some AE types are immedeately coerced into something +# we like better (and which is equivalent) +# +unpacker_coercions = { + typeComp : typeFloat, + typeColorTable : typeAEList, + typeDrawingArea : typeAERecord, + typeFixed : typeFloat, + typeExtended : typeFloat, + typePixelMap : typeAERecord, + typeRotation : typeAERecord, + typeStyledText : typeAERecord, + typeTextStyles : typeAERecord, +}; + +# +# Some python types we need in the packer: +# +AEDescType = AE.AEDescType +FSSType = Carbon.File.FSSpecType +FSRefType = Carbon.File.FSRefType +AliasType = Carbon.File.AliasType + +def packkey(ae, key, value): + if hasattr(key, 'which'): + keystr = key.which + elif hasattr(key, 'want'): + keystr = key.want + else: + keystr = key + ae.AEPutParamDesc(keystr, pack(value)) + +def pack(x, forcetype = None): + """Pack a python object into an AE descriptor""" + + if forcetype: + if type(x) is StringType: + return AE.AECreateDesc(forcetype, x) + else: + return pack(x).AECoerceDesc(forcetype) + + if x == None: + return AE.AECreateDesc('null', '') + + if isinstance(x, AEDescType): + return x + if isinstance(x, FSSType): + return AE.AECreateDesc('fss ', x.data) + if isinstance(x, FSRefType): + return AE.AECreateDesc('fsrf', x.data) + if isinstance(x, AliasType): + return AE.AECreateDesc('alis', x.data) + if isinstance(x, IntType): + return AE.AECreateDesc('long', struct.pack('l', x)) + if isinstance(x, FloatType): + return AE.AECreateDesc('doub', struct.pack('d', x)) + if isinstance(x, StringType): + return AE.AECreateDesc('TEXT', x) + if isinstance(x, UnicodeType): + data = x.encode('utf16') + if data[:2] == '\xfe\xff': + data = data[2:] + return AE.AECreateDesc('utxt', data) + if isinstance(x, ListType): + list = AE.AECreateList('', 0) + for item in x: + list.AEPutDesc(0, pack(item)) + return list + if isinstance(x, DictionaryType): + record = AE.AECreateList('', 1) + for key, value in x.items(): + packkey(record, key, value) + #record.AEPutParamDesc(key, pack(value)) + return record + if type(x) == types.ClassType and issubclass(x, ObjectSpecifier): + # Note: we are getting a class object here, not an instance + return AE.AECreateDesc('type', x.want) + if hasattr(x, '__aepack__'): + return x.__aepack__() + if hasattr(x, 'which'): + return AE.AECreateDesc('TEXT', x.which) + if hasattr(x, 'want'): + return AE.AECreateDesc('TEXT', x.want) + return AE.AECreateDesc('TEXT', repr(x)) # Copout + +def unpack(desc, formodulename=""): + """Unpack an AE descriptor to a python object""" + t = desc.type + + if unpacker_coercions.has_key(t): + desc = desc.AECoerceDesc(unpacker_coercions[t]) + t = desc.type # This is a guess by Jack.... + + if t == typeAEList: + l = [] + for i in range(desc.AECountItems()): + keyword, item = desc.AEGetNthDesc(i+1, '****') + l.append(unpack(item, formodulename)) + return l + if t == typeAERecord: + d = {} + for i in range(desc.AECountItems()): + keyword, item = desc.AEGetNthDesc(i+1, '****') + d[keyword] = unpack(item, formodulename) + return d + if t == typeAEText: + record = desc.AECoerceDesc('reco') + return mkaetext(unpack(record, formodulename)) + if t == typeAlias: + return Carbon.File.Alias(rawdata=desc.data) + # typeAppleEvent returned as unknown + if t == typeBoolean: + return struct.unpack('b', desc.data)[0] + if t == typeChar: + return desc.data + if t == typeUnicodeText: + return unicode(desc.data, 'utf16') + # typeColorTable coerced to typeAEList + # typeComp coerced to extended + # typeData returned as unknown + # typeDrawingArea coerced to typeAERecord + if t == typeEnumeration: + return mkenum(desc.data) + # typeEPS returned as unknown + if t == typeFalse: + return 0 + if t == typeFloat: + data = desc.data + return struct.unpack('d', data)[0] + if t == typeFSS: + return Carbon.File.FSSpec(rawdata=desc.data) + if t == typeFSRef: + return Carbon.File.FSRef(rawdata=desc.data) + if t == typeInsertionLoc: + record = desc.AECoerceDesc('reco') + return mkinsertionloc(unpack(record, formodulename)) + # typeInteger equal to typeLongInteger + if t == typeIntlText: + script, language = struct.unpack('hh', desc.data[:4]) + return aetypes.IntlText(script, language, desc.data[4:]) + if t == typeIntlWritingCode: + script, language = struct.unpack('hh', desc.data) + return aetypes.IntlWritingCode(script, language) + if t == typeKeyword: + return mkkeyword(desc.data) + if t == typeLongInteger: + return struct.unpack('l', desc.data)[0] + if t == typeLongDateTime: + a, b = struct.unpack('lL', desc.data) + return (long(a) << 32) + b + if t == typeNull: + return None + if t == typeMagnitude: + v = struct.unpack('l', desc.data) + if v < 0: + v = 0x100000000L + v + return v + if t == typeObjectSpecifier: + record = desc.AECoerceDesc('reco') + # If we have been told the name of the module we are unpacking aedescs for, + # we can attempt to create the right type of python object from that module. + if formodulename: + return mkobjectfrommodule(unpack(record, formodulename), formodulename) + return mkobject(unpack(record, formodulename)) + # typePict returned as unknown + # typePixelMap coerced to typeAERecord + # typePixelMapMinus returned as unknown + # typeProcessSerialNumber returned as unknown + if t == typeQDPoint: + v, h = struct.unpack('hh', desc.data) + return aetypes.QDPoint(v, h) + if t == typeQDRectangle: + v0, h0, v1, h1 = struct.unpack('hhhh', desc.data) + return aetypes.QDRectangle(v0, h0, v1, h1) + if t == typeRGBColor: + r, g, b = struct.unpack('hhh', desc.data) + return aetypes.RGBColor(r, g, b) + # typeRotation coerced to typeAERecord + # typeScrapStyles returned as unknown + # typeSessionID returned as unknown + if t == typeShortFloat: + return struct.unpack('f', desc.data)[0] + if t == typeShortInteger: + return struct.unpack('h', desc.data)[0] + # typeSMFloat identical to typeShortFloat + # typeSMInt indetical to typeShortInt + # typeStyledText coerced to typeAERecord + if t == typeTargetID: + return mktargetid(desc.data) + # typeTextStyles coerced to typeAERecord + # typeTIFF returned as unknown + if t == typeTrue: + return 1 + if t == typeType: + return mktype(desc.data, formodulename) + # + # The following are special + # + if t == 'rang': + record = desc.AECoerceDesc('reco') + return mkrange(unpack(record, formodulename)) + if t == 'cmpd': + record = desc.AECoerceDesc('reco') + return mkcomparison(unpack(record, formodulename)) + if t == 'logi': + record = desc.AECoerceDesc('reco') + return mklogical(unpack(record, formodulename)) + return mkunknown(desc.type, desc.data) + +def coerce(data, egdata): + """Coerce a python object to another type using the AE coercers""" + pdata = pack(data) + pegdata = pack(egdata) + pdata = pdata.AECoerceDesc(pegdata.type) + return unpack(pdata) + +# +# Helper routines for unpack +# +def mktargetid(data): + sessionID = getlong(data[:4]) + name = mkppcportrec(data[4:4+72]) + location = mklocationnamerec(data[76:76+36]) + rcvrName = mkppcportrec(data[112:112+72]) + return sessionID, name, location, rcvrName + +def mkppcportrec(rec): + namescript = getword(rec[:2]) + name = getpstr(rec[2:2+33]) + portkind = getword(rec[36:38]) + if portkind == 1: + ctor = rec[38:42] + type = rec[42:46] + identity = (ctor, type) + else: + identity = getpstr(rec[38:38+33]) + return namescript, name, portkind, identity + +def mklocationnamerec(rec): + kind = getword(rec[:2]) + stuff = rec[2:] + if kind == 0: stuff = None + if kind == 2: stuff = getpstr(stuff) + return kind, stuff + +def mkunknown(type, data): + return aetypes.Unknown(type, data) + +def getpstr(s): + return s[1:1+ord(s[0])] + +def getlong(s): + return (ord(s[0])<<24) | (ord(s[1])<<16) | (ord(s[2])<<8) | ord(s[3]) + +def getword(s): + return (ord(s[0])<<8) | (ord(s[1])<<0) + +def mkkeyword(keyword): + return aetypes.Keyword(keyword) + +def mkrange(dict): + return aetypes.Range(dict['star'], dict['stop']) + +def mkcomparison(dict): + return aetypes.Comparison(dict['obj1'], dict['relo'].enum, dict['obj2']) + +def mklogical(dict): + return aetypes.Logical(dict['logc'], dict['term']) + +def mkstyledtext(dict): + return aetypes.StyledText(dict['ksty'], dict['ktxt']) + +def mkaetext(dict): + return aetypes.AEText(dict[keyAEScriptTag], dict[keyAEStyles], dict[keyAEText]) + +def mkinsertionloc(dict): + return aetypes.InsertionLoc(dict[keyAEObject], dict[keyAEPosition]) + +def mkobject(dict): + want = dict['want'].type + form = dict['form'].enum + seld = dict['seld'] + fr = dict['from'] + if form in ('name', 'indx', 'rang', 'test'): + if want == 'text': return aetypes.Text(seld, fr) + if want == 'cha ': return aetypes.Character(seld, fr) + if want == 'cwor': return aetypes.Word(seld, fr) + if want == 'clin': return aetypes.Line(seld, fr) + if want == 'cpar': return aetypes.Paragraph(seld, fr) + if want == 'cwin': return aetypes.Window(seld, fr) + if want == 'docu': return aetypes.Document(seld, fr) + if want == 'file': return aetypes.File(seld, fr) + if want == 'cins': return aetypes.InsertionPoint(seld, fr) + if want == 'prop' and form == 'prop' and aetypes.IsType(seld): + return aetypes.Property(seld.type, fr) + return aetypes.ObjectSpecifier(want, form, seld, fr) + +# Note by Jack: I'm not 100% sure of the following code. This was +# provided by Donovan Preston, but I wonder whether the assignment +# to __class__ is safe. Moreover, shouldn't there be a better +# initializer for the classes in the suites? +def mkobjectfrommodule(dict, modulename): + if type(dict['want']) == types.ClassType and issubclass(dict['want'], ObjectSpecifier): + # The type has already been converted to Python. Convert back:-( + classtype = dict['want'] + dict['want'] = aetypes.mktype(classtype.want) + want = dict['want'].type + module = __import__(modulename) + codenamemapper = module._classdeclarations + classtype = codenamemapper.get(want, None) + newobj = mkobject(dict) + if classtype: + assert issubclass(classtype, ObjectSpecifier) + newobj.__class__ = classtype + return newobj + +def mktype(typecode, modulename=None): + if modulename: + module = __import__(modulename) + codenamemapper = module._classdeclarations + classtype = codenamemapper.get(typecode, None) + if classtype: + return classtype + return aetypes.mktype(typecode) diff --git a/sys/lib/python/plat-mac/aetools.py b/sys/lib/python/plat-mac/aetools.py new file mode 100644 index 000000000..79f397831 --- /dev/null +++ b/sys/lib/python/plat-mac/aetools.py @@ -0,0 +1,360 @@ +"""Tools for use in AppleEvent clients and servers. + +pack(x) converts a Python object to an AEDesc object +unpack(desc) does the reverse + +packevent(event, parameters, attributes) sets params and attrs in an AEAppleEvent record +unpackevent(event) returns the parameters and attributes from an AEAppleEvent record + +Plus... Lots of classes and routines that help representing AE objects, +ranges, conditionals, logicals, etc., so you can write, e.g.: + + x = Character(1, Document("foobar")) + +and pack(x) will create an AE object reference equivalent to AppleScript's + + character 1 of document "foobar" + +Some of the stuff that appears to be exported from this module comes from other +files: the pack stuff from aepack, the objects from aetypes. + +""" + + +from types import * +from Carbon import AE +from Carbon import Evt +from Carbon import AppleEvents +import MacOS +import sys +import time + +from aetypes import * +from aepack import packkey, pack, unpack, coerce, AEDescType + +Error = 'aetools.Error' + +# Amount of time to wait for program to be launched +LAUNCH_MAX_WAIT_TIME=10 + +# Special code to unpack an AppleEvent (which is *not* a disguised record!) +# Note by Jack: No??!? If I read the docs correctly it *is*.... + +aekeywords = [ + 'tran', + 'rtid', + 'evcl', + 'evid', + 'addr', + 'optk', + 'timo', + 'inte', # this attribute is read only - will be set in AESend + 'esrc', # this attribute is read only + 'miss', # this attribute is read only + 'from' # new in 1.0.1 +] + +def missed(ae): + try: + desc = ae.AEGetAttributeDesc('miss', 'keyw') + except AE.Error, msg: + return None + return desc.data + +def unpackevent(ae, formodulename=""): + parameters = {} + try: + dirobj = ae.AEGetParamDesc('----', '****') + except AE.Error: + pass + else: + parameters['----'] = unpack(dirobj, formodulename) + del dirobj + # Workaround for what I feel is a bug in OSX 10.2: 'errn' won't show up in missed... + try: + dirobj = ae.AEGetParamDesc('errn', '****') + except AE.Error: + pass + else: + parameters['errn'] = unpack(dirobj, formodulename) + del dirobj + while 1: + key = missed(ae) + if not key: break + parameters[key] = unpack(ae.AEGetParamDesc(key, '****'), formodulename) + attributes = {} + for key in aekeywords: + try: + desc = ae.AEGetAttributeDesc(key, '****') + except (AE.Error, MacOS.Error), msg: + if msg[0] != -1701 and msg[0] != -1704: + raise + continue + attributes[key] = unpack(desc, formodulename) + return parameters, attributes + +def packevent(ae, parameters = {}, attributes = {}): + for key, value in parameters.items(): + packkey(ae, key, value) + for key, value in attributes.items(): + ae.AEPutAttributeDesc(key, pack(value)) + +# +# Support routine for automatically generated Suite interfaces +# These routines are also useable for the reverse function. +# +def keysubst(arguments, keydict): + """Replace long name keys by their 4-char counterparts, and check""" + ok = keydict.values() + for k in arguments.keys(): + if keydict.has_key(k): + v = arguments[k] + del arguments[k] + arguments[keydict[k]] = v + elif k != '----' and k not in ok: + raise TypeError, 'Unknown keyword argument: %s'%k + +def enumsubst(arguments, key, edict): + """Substitute a single enum keyword argument, if it occurs""" + if not arguments.has_key(key) or edict is None: + return + v = arguments[key] + ok = edict.values() + if edict.has_key(v): + arguments[key] = Enum(edict[v]) + elif not v in ok: + raise TypeError, 'Unknown enumerator: %s'%v + +def decodeerror(arguments): + """Create the 'best' argument for a raise MacOS.Error""" + errn = arguments['errn'] + err_a1 = errn + if arguments.has_key('errs'): + err_a2 = arguments['errs'] + else: + err_a2 = MacOS.GetErrorString(errn) + if arguments.has_key('erob'): + err_a3 = arguments['erob'] + else: + err_a3 = None + + return (err_a1, err_a2, err_a3) + +class TalkTo: + """An AE connection to an application""" + _signature = None # Can be overridden by subclasses + _moduleName = None # Can be overridden by subclasses + _elemdict = {} # Can be overridden by subclasses + _propdict = {} # Can be overridden by subclasses + + __eventloop_initialized = 0 + def __ensure_WMAvailable(klass): + if klass.__eventloop_initialized: return 1 + if not MacOS.WMAvailable(): return 0 + # Workaround for a but in MacOSX 10.2: we must have an event + # loop before we can call AESend. + Evt.WaitNextEvent(0,0) + return 1 + __ensure_WMAvailable = classmethod(__ensure_WMAvailable) + + def __init__(self, signature=None, start=0, timeout=0): + """Create a communication channel with a particular application. + + Addressing the application is done by specifying either a + 4-byte signature, an AEDesc or an object that will __aepack__ + to an AEDesc. + """ + self.target_signature = None + if signature is None: + signature = self._signature + if type(signature) == AEDescType: + self.target = signature + elif type(signature) == InstanceType and hasattr(signature, '__aepack__'): + self.target = signature.__aepack__() + elif type(signature) == StringType and len(signature) == 4: + self.target = AE.AECreateDesc(AppleEvents.typeApplSignature, signature) + self.target_signature = signature + else: + raise TypeError, "signature should be 4-char string or AEDesc" + self.send_flags = AppleEvents.kAEWaitReply + self.send_priority = AppleEvents.kAENormalPriority + if timeout: + self.send_timeout = timeout + else: + self.send_timeout = AppleEvents.kAEDefaultTimeout + if start: + self._start() + + def _start(self): + """Start the application, if it is not running yet""" + try: + self.send('ascr', 'noop') + except AE.Error: + _launch(self.target_signature) + for i in range(LAUNCH_MAX_WAIT_TIME): + try: + self.send('ascr', 'noop') + except AE.Error: + pass + else: + break + time.sleep(1) + + def start(self): + """Deprecated, used _start()""" + self._start() + + def newevent(self, code, subcode, parameters = {}, attributes = {}): + """Create a complete structure for an apple event""" + + event = AE.AECreateAppleEvent(code, subcode, self.target, + AppleEvents.kAutoGenerateReturnID, AppleEvents.kAnyTransactionID) + packevent(event, parameters, attributes) + return event + + def sendevent(self, event): + """Send a pre-created appleevent, await the reply and unpack it""" + if not self.__ensure_WMAvailable(): + raise RuntimeError, "No window manager access, cannot send AppleEvent" + reply = event.AESend(self.send_flags, self.send_priority, + self.send_timeout) + parameters, attributes = unpackevent(reply, self._moduleName) + return reply, parameters, attributes + + def send(self, code, subcode, parameters = {}, attributes = {}): + """Send an appleevent given code/subcode/pars/attrs and unpack the reply""" + return self.sendevent(self.newevent(code, subcode, parameters, attributes)) + + # + # The following events are somehow "standard" and don't seem to appear in any + # suite... + # + def activate(self): + """Send 'activate' command""" + self.send('misc', 'actv') + + def _get(self, _object, as=None, _attributes={}): + """_get: get data from an object + Required argument: the object + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the data + """ + _code = 'core' + _subcode = 'getd' + + _arguments = {'----':_object} + if as: + _arguments['rtyp'] = mktype(as) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.has_key('errn'): + raise Error, decodeerror(_arguments) + + if _arguments.has_key('----'): + return _arguments['----'] + if as: + item.__class__ = as + return item + + get = _get + + _argmap_set = { + 'to' : 'data', + } + + def _set(self, _object, _attributes={}, **_arguments): + """set: Set an object's data. + Required argument: the object for the command + Keyword argument to: The new value. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'setd' + + keysubst(_arguments, self._argmap_set) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise Error, decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + set = _set + + # Magic glue to allow suite-generated classes to function somewhat + # like the "application" class in OSA. + + def __getattr__(self, name): + if self._elemdict.has_key(name): + cls = self._elemdict[name] + return DelayedComponentItem(cls, None) + if self._propdict.has_key(name): + cls = self._propdict[name] + return cls() + raise AttributeError, name + +# Tiny Finder class, for local use only + +class _miniFinder(TalkTo): + def open(self, _object, _attributes={}, **_arguments): + """open: Open the specified object(s) + Required argument: list of objects to open + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'odoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.has_key('errn'): + raise Error, decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] +#pass + +_finder = _miniFinder('MACS') + +def _launch(appfile): + """Open a file thru the finder. Specify file by name or fsspec""" + _finder.open(_application_file(('ID ', appfile))) + + +class _application_file(ComponentItem): + """application file - An application's file on disk""" + want = 'appf' + +_application_file._propdict = { +} +_application_file._elemdict = { +} + +# Test program +# XXXX Should test more, really... + +def test(): + target = AE.AECreateDesc('sign', 'quil') + ae = AE.AECreateAppleEvent('aevt', 'oapp', target, -1, 0) + print unpackevent(ae) + raw_input(":") + ae = AE.AECreateAppleEvent('core', 'getd', target, -1, 0) + obj = Character(2, Word(1, Document(1))) + print obj + print repr(obj) + packevent(ae, {'----': obj}) + params, attrs = unpackevent(ae) + print params['----'] + raw_input(":") + +if __name__ == '__main__': + test() + sys.exit(1) diff --git a/sys/lib/python/plat-mac/aetypes.py b/sys/lib/python/plat-mac/aetypes.py new file mode 100644 index 000000000..65b59ad0c --- /dev/null +++ b/sys/lib/python/plat-mac/aetypes.py @@ -0,0 +1,568 @@ +"""aetypes - Python objects representing various AE types.""" + +from Carbon.AppleEvents import * +import struct +from types import * +import string + +# +# convoluted, since there are cyclic dependencies between this file and +# aetools_convert. +# +def pack(*args, **kwargs): + from aepack import pack + return pack( *args, **kwargs) + +def nice(s): + """'nice' representation of an object""" + if type(s) is StringType: return repr(s) + else: return str(s) + +class Unknown: + """An uninterpreted AE object""" + + def __init__(self, type, data): + self.type = type + self.data = data + + def __repr__(self): + return "Unknown(%r, %r)" % (self.type, self.data) + + def __aepack__(self): + return pack(self.data, self.type) + +class Enum: + """An AE enumeration value""" + + def __init__(self, enum): + self.enum = "%-4.4s" % str(enum) + + def __repr__(self): + return "Enum(%r)" % (self.enum,) + + def __str__(self): + return string.strip(self.enum) + + def __aepack__(self): + return pack(self.enum, typeEnumeration) + +def IsEnum(x): + return isinstance(x, Enum) + +def mkenum(enum): + if IsEnum(enum): return enum + return Enum(enum) + +# Jack changed the way this is done +class InsertionLoc: + def __init__(self, of, pos): + self.of = of + self.pos = pos + + def __repr__(self): + return "InsertionLoc(%r, %r)" % (self.of, self.pos) + + def __aepack__(self): + rec = {'kobj': self.of, 'kpos': self.pos} + return pack(rec, forcetype='insl') + +# Convenience functions for dsp: +def beginning(of): + return InsertionLoc(of, Enum('bgng')) + +def end(of): + return InsertionLoc(of, Enum('end ')) + +class Boolean: + """An AE boolean value""" + + def __init__(self, bool): + self.bool = (not not bool) + + def __repr__(self): + return "Boolean(%r)" % (self.bool,) + + def __str__(self): + if self.bool: + return "True" + else: + return "False" + + def __aepack__(self): + return pack(struct.pack('b', self.bool), 'bool') + +def IsBoolean(x): + return isinstance(x, Boolean) + +def mkboolean(bool): + if IsBoolean(bool): return bool + return Boolean(bool) + +class Type: + """An AE 4-char typename object""" + + def __init__(self, type): + self.type = "%-4.4s" % str(type) + + def __repr__(self): + return "Type(%r)" % (self.type,) + + def __str__(self): + return string.strip(self.type) + + def __aepack__(self): + return pack(self.type, typeType) + +def IsType(x): + return isinstance(x, Type) + +def mktype(type): + if IsType(type): return type + return Type(type) + + +class Keyword: + """An AE 4-char keyword object""" + + def __init__(self, keyword): + self.keyword = "%-4.4s" % str(keyword) + + def __repr__(self): + return "Keyword(%r)" % `self.keyword` + + def __str__(self): + return string.strip(self.keyword) + + def __aepack__(self): + return pack(self.keyword, typeKeyword) + +def IsKeyword(x): + return isinstance(x, Keyword) + +class Range: + """An AE range object""" + + def __init__(self, start, stop): + self.start = start + self.stop = stop + + def __repr__(self): + return "Range(%r, %r)" % (self.start, self.stop) + + def __str__(self): + return "%s thru %s" % (nice(self.start), nice(self.stop)) + + def __aepack__(self): + return pack({'star': self.start, 'stop': self.stop}, 'rang') + +def IsRange(x): + return isinstance(x, Range) + +class Comparison: + """An AE Comparison""" + + def __init__(self, obj1, relo, obj2): + self.obj1 = obj1 + self.relo = "%-4.4s" % str(relo) + self.obj2 = obj2 + + def __repr__(self): + return "Comparison(%r, %r, %r)" % (self.obj1, self.relo, self.obj2) + + def __str__(self): + return "%s %s %s" % (nice(self.obj1), string.strip(self.relo), nice(self.obj2)) + + def __aepack__(self): + return pack({'obj1': self.obj1, + 'relo': mkenum(self.relo), + 'obj2': self.obj2}, + 'cmpd') + +def IsComparison(x): + return isinstance(x, Comparison) + +class NComparison(Comparison): + # The class attribute 'relo' must be set in a subclass + + def __init__(self, obj1, obj2): + Comparison.__init__(obj1, self.relo, obj2) + +class Ordinal: + """An AE Ordinal""" + + def __init__(self, abso): +# self.obj1 = obj1 + self.abso = "%-4.4s" % str(abso) + + def __repr__(self): + return "Ordinal(%r)" % (self.abso,) + + def __str__(self): + return "%s" % (string.strip(self.abso)) + + def __aepack__(self): + return pack(self.abso, 'abso') + +def IsOrdinal(x): + return isinstance(x, Ordinal) + +class NOrdinal(Ordinal): + # The class attribute 'abso' must be set in a subclass + + def __init__(self): + Ordinal.__init__(self, self.abso) + +class Logical: + """An AE logical expression object""" + + def __init__(self, logc, term): + self.logc = "%-4.4s" % str(logc) + self.term = term + + def __repr__(self): + return "Logical(%r, %r)" % (self.logc, self.term) + + def __str__(self): + if type(self.term) == ListType and len(self.term) == 2: + return "%s %s %s" % (nice(self.term[0]), + string.strip(self.logc), + nice(self.term[1])) + else: + return "%s(%s)" % (string.strip(self.logc), nice(self.term)) + + def __aepack__(self): + return pack({'logc': mkenum(self.logc), 'term': self.term}, 'logi') + +def IsLogical(x): + return isinstance(x, Logical) + +class StyledText: + """An AE object respresenting text in a certain style""" + + def __init__(self, style, text): + self.style = style + self.text = text + + def __repr__(self): + return "StyledText(%r, %r)" % (self.style, self.text) + + def __str__(self): + return self.text + + def __aepack__(self): + return pack({'ksty': self.style, 'ktxt': self.text}, 'STXT') + +def IsStyledText(x): + return isinstance(x, StyledText) + +class AEText: + """An AE text object with style, script and language specified""" + + def __init__(self, script, style, text): + self.script = script + self.style = style + self.text = text + + def __repr__(self): + return "AEText(%r, %r, %r)" % (self.script, self.style, self.text) + + def __str__(self): + return self.text + + def __aepack__(self): + return pack({keyAEScriptTag: self.script, keyAEStyles: self.style, + keyAEText: self.text}, typeAEText) + +def IsAEText(x): + return isinstance(x, AEText) + +class IntlText: + """A text object with script and language specified""" + + def __init__(self, script, language, text): + self.script = script + self.language = language + self.text = text + + def __repr__(self): + return "IntlText(%r, %r, %r)" % (self.script, self.language, self.text) + + def __str__(self): + return self.text + + def __aepack__(self): + return pack(struct.pack('hh', self.script, self.language)+self.text, + typeIntlText) + +def IsIntlText(x): + return isinstance(x, IntlText) + +class IntlWritingCode: + """An object representing script and language""" + + def __init__(self, script, language): + self.script = script + self.language = language + + def __repr__(self): + return "IntlWritingCode(%r, %r)" % (self.script, self.language) + + def __str__(self): + return "script system %d, language %d"%(self.script, self.language) + + def __aepack__(self): + return pack(struct.pack('hh', self.script, self.language), + typeIntlWritingCode) + +def IsIntlWritingCode(x): + return isinstance(x, IntlWritingCode) + +class QDPoint: + """A point""" + + def __init__(self, v, h): + self.v = v + self.h = h + + def __repr__(self): + return "QDPoint(%r, %r)" % (self.v, self.h) + + def __str__(self): + return "(%d, %d)"%(self.v, self.h) + + def __aepack__(self): + return pack(struct.pack('hh', self.v, self.h), + typeQDPoint) + +def IsQDPoint(x): + return isinstance(x, QDPoint) + +class QDRectangle: + """A rectangle""" + + def __init__(self, v0, h0, v1, h1): + self.v0 = v0 + self.h0 = h0 + self.v1 = v1 + self.h1 = h1 + + def __repr__(self): + return "QDRectangle(%r, %r, %r, %r)" % (self.v0, self.h0, self.v1, self.h1) + + def __str__(self): + return "(%d, %d)-(%d, %d)"%(self.v0, self.h0, self.v1, self.h1) + + def __aepack__(self): + return pack(struct.pack('hhhh', self.v0, self.h0, self.v1, self.h1), + typeQDRectangle) + +def IsQDRectangle(x): + return isinstance(x, QDRectangle) + +class RGBColor: + """An RGB color""" + + def __init__(self, r, g, b): + self.r = r + self.g = g + self.b = b + + def __repr__(self): + return "RGBColor(%r, %r, %r)" % (self.r, self.g, self.b) + + def __str__(self): + return "0x%x red, 0x%x green, 0x%x blue"% (self.r, self.g, self.b) + + def __aepack__(self): + return pack(struct.pack('hhh', self.r, self.g, self.b), + typeRGBColor) + +def IsRGBColor(x): + return isinstance(x, RGBColor) + +class ObjectSpecifier: + + """A class for constructing and manipulation AE object specifiers in python. + + An object specifier is actually a record with four fields: + + key type description + --- ---- ----------- + + 'want' type 4-char class code of thing we want, + e.g. word, paragraph or property + + 'form' enum how we specify which 'want' thing(s) we want, + e.g. by index, by range, by name, or by property specifier + + 'seld' any which thing(s) we want, + e.g. its index, its name, or its property specifier + + 'from' object the object in which it is contained, + or null, meaning look for it in the application + + Note that we don't call this class plain "Object", since that name + is likely to be used by the application. + """ + + def __init__(self, want, form, seld, fr = None): + self.want = want + self.form = form + self.seld = seld + self.fr = fr + + def __repr__(self): + s = "ObjectSpecifier(%r, %r, %r" % (self.want, self.form, self.seld) + if self.fr: + s = s + ", %r)" % (self.fr,) + else: + s = s + ")" + return s + + def __aepack__(self): + return pack({'want': mktype(self.want), + 'form': mkenum(self.form), + 'seld': self.seld, + 'from': self.fr}, + 'obj ') + +def IsObjectSpecifier(x): + return isinstance(x, ObjectSpecifier) + + +# Backwards compatibility, sigh... +class Property(ObjectSpecifier): + + def __init__(self, which, fr = None, want='prop'): + ObjectSpecifier.__init__(self, want, 'prop', mktype(which), fr) + + def __repr__(self): + if self.fr: + return "Property(%r, %r)" % (self.seld.type, self.fr) + else: + return "Property(%r)" % (self.seld.type,) + + def __str__(self): + if self.fr: + return "Property %s of %s" % (str(self.seld), str(self.fr)) + else: + return "Property %s" % str(self.seld) + + +class NProperty(ObjectSpecifier): + # Subclasses *must* self baseclass attributes: + # want is the type of this property + # which is the property name of this property + + def __init__(self, fr = None): + #try: + # dummy = self.want + #except: + # self.want = 'prop' + self.want = 'prop' + ObjectSpecifier.__init__(self, self.want, 'prop', + mktype(self.which), fr) + + def __repr__(self): + rv = "Property(%r" % (self.seld.type,) + if self.fr: + rv = rv + ", fr=%r" % (self.fr,) + if self.want != 'prop': + rv = rv + ", want=%r" % (self.want,) + return rv + ")" + + def __str__(self): + if self.fr: + return "Property %s of %s" % (str(self.seld), str(self.fr)) + else: + return "Property %s" % str(self.seld) + + +class SelectableItem(ObjectSpecifier): + + def __init__(self, want, seld, fr = None): + t = type(seld) + if t == StringType: + form = 'name' + elif IsRange(seld): + form = 'rang' + elif IsComparison(seld) or IsLogical(seld): + form = 'test' + elif t == TupleType: + # Breakout: specify both form and seld in a tuple + # (if you want ID or rele or somesuch) + form, seld = seld + else: + form = 'indx' + ObjectSpecifier.__init__(self, want, form, seld, fr) + + +class ComponentItem(SelectableItem): + # Derived classes *must* set the *class attribute* 'want' to some constant + # Also, dictionaries _propdict and _elemdict must be set to map property + # and element names to the correct classes + + _propdict = {} + _elemdict = {} + def __init__(self, which, fr = None): + SelectableItem.__init__(self, self.want, which, fr) + + def __repr__(self): + if not self.fr: + return "%s(%r)" % (self.__class__.__name__, self.seld) + return "%s(%r, %r)" % (self.__class__.__name__, self.seld, self.fr) + + def __str__(self): + seld = self.seld + if type(seld) == StringType: + ss = repr(seld) + elif IsRange(seld): + start, stop = seld.start, seld.stop + if type(start) == InstanceType == type(stop) and \ + start.__class__ == self.__class__ == stop.__class__: + ss = str(start.seld) + " thru " + str(stop.seld) + else: + ss = str(seld) + else: + ss = str(seld) + s = "%s %s" % (self.__class__.__name__, ss) + if self.fr: s = s + " of %s" % str(self.fr) + return s + + def __getattr__(self, name): + if self._elemdict.has_key(name): + cls = self._elemdict[name] + return DelayedComponentItem(cls, self) + if self._propdict.has_key(name): + cls = self._propdict[name] + return cls(self) + raise AttributeError, name + + +class DelayedComponentItem: + def __init__(self, compclass, fr): + self.compclass = compclass + self.fr = fr + + def __call__(self, which): + return self.compclass(which, self.fr) + + def __repr__(self): + return "%s(???, %r)" % (self.__class__.__name__, self.fr) + + def __str__(self): + return "selector for element %s of %s"%(self.__class__.__name__, str(self.fr)) + +template = """ +class %s(ComponentItem): want = '%s' +""" + +exec template % ("Text", 'text') +exec template % ("Character", 'cha ') +exec template % ("Word", 'cwor') +exec template % ("Line", 'clin') +exec template % ("paragraph", 'cpar') +exec template % ("Window", 'cwin') +exec template % ("Document", 'docu') +exec template % ("File", 'file') +exec template % ("InsertionPoint", 'cins') diff --git a/sys/lib/python/plat-mac/applesingle.py b/sys/lib/python/plat-mac/applesingle.py new file mode 100644 index 000000000..76bdb0691 --- /dev/null +++ b/sys/lib/python/plat-mac/applesingle.py @@ -0,0 +1,137 @@ +r"""Routines to decode AppleSingle files +""" +import struct +import sys +try: + import MacOS + import Carbon.File +except: + class MacOS: + def openrf(path, mode): + return open(path + '.rsrc', mode) + openrf = classmethod(openrf) + class Carbon: + class File: + class FSSpec: + pass + class FSRef: + pass + class Alias: + pass + +# all of the errors in this module are really errors in the input +# so I think it should test positive against ValueError. +class Error(ValueError): + pass + +# File header format: magic, version, unused, number of entries +AS_HEADER_FORMAT=">LL16sh" +AS_HEADER_LENGTH=26 +# The flag words for AppleSingle +AS_MAGIC=0x00051600 +AS_VERSION=0x00020000 + +# Entry header format: id, offset, length +AS_ENTRY_FORMAT=">lll" +AS_ENTRY_LENGTH=12 + +# The id values +AS_DATAFORK=1 +AS_RESOURCEFORK=2 +AS_IGNORE=(3,4,5,6,8,9,10,11,12,13,14,15) + +class AppleSingle(object): + datafork = None + resourcefork = None + + def __init__(self, fileobj, verbose=False): + header = fileobj.read(AS_HEADER_LENGTH) + try: + magic, version, ig, nentry = struct.unpack(AS_HEADER_FORMAT, header) + except ValueError, arg: + raise Error, "Unpack header error: %s" % (arg,) + if verbose: + print 'Magic: 0x%8.8x' % (magic,) + print 'Version: 0x%8.8x' % (version,) + print 'Entries: %d' % (nentry,) + if magic != AS_MAGIC: + raise Error, "Unknown AppleSingle magic number 0x%8.8x" % (magic,) + if version != AS_VERSION: + raise Error, "Unknown AppleSingle version number 0x%8.8x" % (version,) + if nentry <= 0: + raise Error, "AppleSingle file contains no forks" + headers = [fileobj.read(AS_ENTRY_LENGTH) for i in xrange(nentry)] + self.forks = [] + for hdr in headers: + try: + restype, offset, length = struct.unpack(AS_ENTRY_FORMAT, hdr) + except ValueError, arg: + raise Error, "Unpack entry error: %s" % (arg,) + if verbose: + print "Fork %d, offset %d, length %d" % (restype, offset, length) + fileobj.seek(offset) + data = fileobj.read(length) + if len(data) != length: + raise Error, "Short read: expected %d bytes got %d" % (length, len(data)) + self.forks.append((restype, data)) + if restype == AS_DATAFORK: + self.datafork = data + elif restype == AS_RESOURCEFORK: + self.resourcefork = data + + def tofile(self, path, resonly=False): + outfile = open(path, 'wb') + data = False + if resonly: + if self.resourcefork is None: + raise Error, "No resource fork found" + fp = open(path, 'wb') + fp.write(self.resourcefork) + fp.close() + elif (self.resourcefork is None and self.datafork is None): + raise Error, "No useful forks found" + else: + if self.datafork is not None: + fp = open(path, 'wb') + fp.write(self.datafork) + fp.close() + if self.resourcefork is not None: + fp = MacOS.openrf(path, '*wb') + fp.write(self.resourcefork) + fp.close() + +def decode(infile, outpath, resonly=False, verbose=False): + """decode(infile, outpath [, resonly=False, verbose=False]) + + Creates a decoded file from an AppleSingle encoded file. + If resonly is True, then it will create a regular file at + outpath containing only the resource fork from infile. + Otherwise it will create an AppleDouble file at outpath + with the data and resource forks from infile. On platforms + without the MacOS module, it will create inpath and inpath+'.rsrc' + with the data and resource forks respectively. + + """ + if not hasattr(infile, 'read'): + if isinstance(infile, Carbon.File.Alias): + infile = infile.ResolveAlias()[0] + if isinstance(infile, (Carbon.File.FSSpec, Carbon.File.FSRef)): + infile = infile.as_pathname() + infile = open(infile, 'rb') + + asfile = AppleSingle(infile, verbose=verbose) + asfile.tofile(outpath, resonly=resonly) + +def _test(): + if len(sys.argv) < 3 or sys.argv[1] == '-r' and len(sys.argv) != 4: + print 'Usage: applesingle.py [-r] applesinglefile decodedfile' + sys.exit(1) + if sys.argv[1] == '-r': + resonly = True + del sys.argv[1] + else: + resonly = False + decode(sys.argv[1], sys.argv[2], resonly=resonly) + +if __name__ == '__main__': + _test() diff --git a/sys/lib/python/plat-mac/appletrawmain.py b/sys/lib/python/plat-mac/appletrawmain.py new file mode 100644 index 000000000..1be918790 --- /dev/null +++ b/sys/lib/python/plat-mac/appletrawmain.py @@ -0,0 +1,63 @@ +# Emulate sys.argv and run __main__.py or __main__.pyc in an environment that +# is as close to "normal" as possible. +# +# This script is put into __rawmain__.pyc for applets that need argv +# emulation, by BuildApplet and friends. +# +import argvemulator +import os +import sys +import marshal + +# +# Make sure we have an argv[0], and make _dir point to the Resources +# directory. +# +if not sys.argv or sys.argv[0][:1] == '-': + # Insert our (guessed) name. + _dir = os.path.split(sys.executable)[0] # removes "python" + _dir = os.path.split(_dir)[0] # Removes "MacOS" + _dir = os.path.join(_dir, 'Resources') + sys.argv.insert(0, '__rawmain__') +else: + _dir = os.path.split(sys.argv[0])[0] +# +# Add the Resources directory to the path. This is where files installed +# by BuildApplet.py with the --extra option show up, and if those files are +# modules this sys.path modification is necessary to be able to import them. +# +sys.path.insert(0, _dir) +# +# Create sys.argv +# +argvemulator.ArgvCollector().mainloop() +# +# Find the real main program to run +# +__file__ = os.path.join(_dir, '__main__.py') +if os.path.exists(__file__): + # + # Setup something resembling a normal environment and go. + # + sys.argv[0] = __file__ + del argvemulator, os, sys, _dir + execfile(__file__) +else: + __file__ = os.path.join(_dir, '__main__.pyc') + if os.path.exists(__file__): + # + # If we have only a .pyc file we read the code object from that + # + sys.argv[0] = __file__ + _fp = open(__file__, 'rb') + _fp.read(8) + __code__ = marshal.load(_fp) + # + # Again, we create an almost-normal environment (only __code__ is + # funny) and go. + # + del argvemulator, os, sys, marshal, _dir, _fp + exec __code__ + else: + sys.stderr.write("%s: neither __main__.py nor __main__.pyc found\n"%sys.argv[0]) + sys.exit(1) diff --git a/sys/lib/python/plat-mac/appletrunner.py b/sys/lib/python/plat-mac/appletrunner.py new file mode 100755 index 000000000..8d46c2ad2 --- /dev/null +++ b/sys/lib/python/plat-mac/appletrunner.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python +# This file is meant as an executable script for running applets. +# BuildApplet will use it as the main executable in the .app bundle if +# we are not running in a framework build. + +import os +import sys +for name in ["__rawmain__.py", "__rawmain__.pyc", "__main__.py", "__main__.pyc"]: + realmain = os.path.join(os.path.dirname(os.path.dirname(sys.argv[0])), + "Resources", name) + if os.path.exists(realmain): + break +else: + sys.stderr.write("%s: cannot find applet main program\n" % sys.argv[0]) + sys.exit(1) +sys.argv.insert(1, realmain) +os.execve(sys.executable, sys.argv, os.environ) diff --git a/sys/lib/python/plat-mac/argvemulator.py b/sys/lib/python/plat-mac/argvemulator.py new file mode 100644 index 000000000..2d66f1c74 --- /dev/null +++ b/sys/lib/python/plat-mac/argvemulator.py @@ -0,0 +1,89 @@ +"""argvemulator - create sys.argv from OSA events. Used by applets that +want unix-style arguments. +""" + +import sys +import traceback +from Carbon import AE +from Carbon.AppleEvents import * +from Carbon import Evt +from Carbon import File +from Carbon.Events import * +import aetools + +class ArgvCollector: + + """A minimal FrameWork.Application-like class""" + + def __init__(self): + self.quitting = 0 + # Remove the funny -psn_xxx_xxx argument + if len(sys.argv) > 1 and sys.argv[1][:4] == '-psn': + del sys.argv[1] + + AE.AEInstallEventHandler(kCoreEventClass, kAEOpenApplication, self.__runapp) + AE.AEInstallEventHandler(kCoreEventClass, kAEOpenDocuments, self.__openfiles) + + def close(self): + AE.AERemoveEventHandler(kCoreEventClass, kAEOpenApplication) + AE.AERemoveEventHandler(kCoreEventClass, kAEOpenDocuments) + + def mainloop(self, mask = highLevelEventMask, timeout = 1*60): + # Note: this is not the right way to run an event loop in OSX or even + # "recent" versions of MacOS9. This is however code that has proven + # itself. + stoptime = Evt.TickCount() + timeout + while not self.quitting and Evt.TickCount() < stoptime: + self._dooneevent(mask, timeout) + + if not self.quitting: + print "argvemulator: timeout waiting for arguments" + + self.close() + + def _dooneevent(self, mask = highLevelEventMask, timeout = 1*60): + got, event = Evt.WaitNextEvent(mask, timeout) + if got: + self._lowlevelhandler(event) + + def _lowlevelhandler(self, event): + what, message, when, where, modifiers = event + h, v = where + if what == kHighLevelEvent: + try: + AE.AEProcessAppleEvent(event) + except AE.Error, err: + msg = "High Level Event: %r %r" % (hex(message), hex(h | (v<<16))) + print 'AE error: ', err + print 'in', msg + traceback.print_exc() + return + else: + print "Unhandled event:", event + + + def _quit(self): + self.quitting = 1 + + def __runapp(self, requestevent, replyevent): + self._quit() + + def __openfiles(self, requestevent, replyevent): + try: + listdesc = requestevent.AEGetParamDesc(keyDirectObject, typeAEList) + for i in range(listdesc.AECountItems()): + aliasdesc = listdesc.AEGetNthDesc(i+1, typeAlias)[1] + alias = File.Alias(rawdata=aliasdesc.data) + fsref = alias.FSResolveAlias(None)[0] + pathname = fsref.as_pathname() + sys.argv.append(pathname) + except Exception, e: + print "argvemulator.py warning: can't unpack an open document event" + import traceback + traceback.print_exc() + + self._quit() + +if __name__ == '__main__': + ArgvCollector().mainloop() + print "sys.argv=", sys.argv diff --git a/sys/lib/python/plat-mac/bgenlocations.py b/sys/lib/python/plat-mac/bgenlocations.py new file mode 100644 index 000000000..e7fa35407 --- /dev/null +++ b/sys/lib/python/plat-mac/bgenlocations.py @@ -0,0 +1,55 @@ +# +# Local customizations for generating the Carbon interface modules. +# Edit this file to reflect where things should be on your system. +# Note that pathnames are unix-style for OSX MachoPython/unix-Python, +# but mac-style for MacPython, whether running on OS9 or OSX. +# + +import sys, os + +Error = "bgenlocations.Error" +# +# Where bgen is. For unix-Python bgen isn't installed, so you have to refer to +# the source tree here. +BGENDIR="/Users/jack/src/python/Tools/bgen/bgen" + +# +# Where to find the Universal Header include files. If you have CodeWarrior +# installed you can use the Universal Headers from there, otherwise you can +# download them from the Apple website. Bgen can handle both unix- and mac-style +# end of lines, so don't worry about that. +# +INCLUDEDIR="/Users/jack/src/Universal/Interfaces/CIncludes" + +# +# Where to put the python definitions files. Note that, on unix-Python, +# if you want to commit your changes to the CVS repository this should refer to +# your source directory, not your installed directory. +# +TOOLBOXDIR="/Users/jack/src/python/Lib/plat-mac/Carbon" + +# Creator for C files: +CREATOR="CWIE" + +# The previous definitions can be overriden by creating a module +# bgenlocationscustomize.py and putting it in site-packages (or anywere else +# on sys.path, actually) +try: + from bgenlocationscustomize import * +except ImportError: + pass + +if not os.path.exists(BGENDIR): + raise Error, "Please fix bgenlocations.py, BGENDIR does not exist: %s" % BGENDIR +if not os.path.exists(INCLUDEDIR): + raise Error, "Please fix bgenlocations.py, INCLUDEDIR does not exist: %s" % INCLUDEDIR +if not os.path.exists(TOOLBOXDIR): + raise Error, "Please fix bgenlocations.py, TOOLBOXDIR does not exist: %s" % TOOLBOXDIR + +# Sigh, due to the way these are used make sure they end with : or /. +if BGENDIR[-1] != os.sep: + BGENDIR = BGENDIR + os.sep +if INCLUDEDIR[-1] != os.sep: + INCLUDEDIR = INCLUDEDIR + os.sep +if TOOLBOXDIR[-1] != os.sep: + TOOLBOXDIR = TOOLBOXDIR + os.sep diff --git a/sys/lib/python/plat-mac/buildtools.py b/sys/lib/python/plat-mac/buildtools.py new file mode 100644 index 000000000..c83e21802 --- /dev/null +++ b/sys/lib/python/plat-mac/buildtools.py @@ -0,0 +1,420 @@ +"""tools for BuildApplet and BuildApplication""" + +import sys +import os +import string +import imp +import marshal +from Carbon import Res +import Carbon.Files +import Carbon.File +import MacOS +import macostools +import macresource +import EasyDialogs +import shutil + + +BuildError = "BuildError" + +# .pyc file (and 'PYC ' resource magic number) +MAGIC = imp.get_magic() + +# Template file (searched on sys.path) +TEMPLATE = "PythonInterpreter" + +# Specification of our resource +RESTYPE = 'PYC ' +RESNAME = '__main__' + +# A resource with this name sets the "owner" (creator) of the destination +# It should also have ID=0. Either of these alone is not enough. +OWNERNAME = "owner resource" + +# Default applet creator code +DEFAULT_APPLET_CREATOR="Pyta" + +# OpenResFile mode parameters +READ = 1 +WRITE = 2 + +# Parameter for FSOpenResourceFile +RESOURCE_FORK_NAME=Carbon.File.FSGetResourceForkName() + +def findtemplate(template=None): + """Locate the applet template along sys.path""" + if MacOS.runtimemodel == 'macho': + return None + if not template: + template=TEMPLATE + for p in sys.path: + file = os.path.join(p, template) + try: + file, d1, d2 = Carbon.File.FSResolveAliasFile(file, 1) + break + except (Carbon.File.Error, ValueError): + continue + else: + raise BuildError, "Template %r not found on sys.path" % (template,) + file = file.as_pathname() + return file + +def process(template, filename, destname, copy_codefragment=0, + rsrcname=None, others=[], raw=0, progress="default", destroot=""): + + if progress == "default": + progress = EasyDialogs.ProgressBar("Processing %s..."%os.path.split(filename)[1], 120) + progress.label("Compiling...") + progress.inc(0) + # check for the script name being longer than 32 chars. This may trigger a bug + # on OSX that can destroy your sourcefile. + if '#' in os.path.split(filename)[1]: + raise BuildError, "BuildApplet could destroy your sourcefile on OSX, please rename: %s" % filename + # Read the source and compile it + # (there's no point overwriting the destination if it has a syntax error) + + fp = open(filename, 'rU') + text = fp.read() + fp.close() + try: + code = compile(text + '\n', filename, "exec") + except SyntaxError, arg: + raise BuildError, "Syntax error in script %s: %s" % (filename, arg) + except EOFError: + raise BuildError, "End-of-file in script %s" % (filename,) + + # Set the destination file name. Note that basename + # does contain the whole filepath, only a .py is stripped. + + if string.lower(filename[-3:]) == ".py": + basename = filename[:-3] + if MacOS.runtimemodel != 'macho' and not destname: + destname = basename + else: + basename = filename + + if not destname: + if MacOS.runtimemodel == 'macho': + destname = basename + '.app' + else: + destname = basename + '.applet' + if not rsrcname: + rsrcname = basename + '.rsrc' + + # Try removing the output file. This fails in MachO, but it should + # do any harm. + try: + os.remove(destname) + except os.error: + pass + process_common(template, progress, code, rsrcname, destname, 0, + copy_codefragment, raw, others, filename, destroot) + + +def update(template, filename, output): + if MacOS.runtimemodel == 'macho': + raise BuildError, "No updating yet for MachO applets" + if progress: + progress = EasyDialogs.ProgressBar("Updating %s..."%os.path.split(filename)[1], 120) + else: + progress = None + if not output: + output = filename + ' (updated)' + + # Try removing the output file + try: + os.remove(output) + except os.error: + pass + process_common(template, progress, None, filename, output, 1, 1) + + +def process_common(template, progress, code, rsrcname, destname, is_update, + copy_codefragment, raw=0, others=[], filename=None, destroot=""): + if MacOS.runtimemodel == 'macho': + return process_common_macho(template, progress, code, rsrcname, destname, + is_update, raw, others, filename, destroot) + if others: + raise BuildError, "Extra files only allowed for MachoPython applets" + # Create FSSpecs for the various files + template_fsr, d1, d2 = Carbon.File.FSResolveAliasFile(template, 1) + template = template_fsr.as_pathname() + + # Copy data (not resources, yet) from the template + if progress: + progress.label("Copy data fork...") + progress.set(10) + + if copy_codefragment: + tmpl = open(template, "rb") + dest = open(destname, "wb") + data = tmpl.read() + if data: + dest.write(data) + dest.close() + tmpl.close() + del dest + del tmpl + + # Open the output resource fork + + if progress: + progress.label("Copy resources...") + progress.set(20) + try: + output = Res.FSOpenResourceFile(destname, RESOURCE_FORK_NAME, WRITE) + except MacOS.Error: + destdir, destfile = os.path.split(destname) + Res.FSCreateResourceFile(destdir, unicode(destfile), RESOURCE_FORK_NAME) + output = Res.FSOpenResourceFile(destname, RESOURCE_FORK_NAME, WRITE) + + # Copy the resources from the target specific resource template, if any + typesfound, ownertype = [], None + try: + input = Res.FSOpenResourceFile(rsrcname, RESOURCE_FORK_NAME, READ) + except (MacOS.Error, ValueError): + pass + if progress: + progress.inc(50) + else: + if is_update: + skip_oldfile = ['cfrg'] + else: + skip_oldfile = [] + typesfound, ownertype = copyres(input, output, skip_oldfile, 0, progress) + Res.CloseResFile(input) + + # Check which resource-types we should not copy from the template + skiptypes = [] + if 'vers' in typesfound: skiptypes.append('vers') + if 'SIZE' in typesfound: skiptypes.append('SIZE') + if 'BNDL' in typesfound: skiptypes = skiptypes + ['BNDL', 'FREF', 'icl4', + 'icl8', 'ics4', 'ics8', 'ICN#', 'ics#'] + if not copy_codefragment: + skiptypes.append('cfrg') +## skipowner = (ownertype <> None) + + # Copy the resources from the template + + input = Res.FSOpenResourceFile(template, RESOURCE_FORK_NAME, READ) + dummy, tmplowner = copyres(input, output, skiptypes, 1, progress) + + Res.CloseResFile(input) +## if ownertype == None: +## raise BuildError, "No owner resource found in either resource file or template" + # Make sure we're manipulating the output resource file now + + Res.UseResFile(output) + + if ownertype == None: + # No owner resource in the template. We have skipped the + # Python owner resource, so we have to add our own. The relevant + # bundle stuff is already included in the interpret/applet template. + newres = Res.Resource('\0') + newres.AddResource(DEFAULT_APPLET_CREATOR, 0, "Owner resource") + ownertype = DEFAULT_APPLET_CREATOR + + if code: + # Delete any existing 'PYC ' resource named __main__ + + try: + res = Res.Get1NamedResource(RESTYPE, RESNAME) + res.RemoveResource() + except Res.Error: + pass + + # Create the raw data for the resource from the code object + if progress: + progress.label("Write PYC resource...") + progress.set(120) + + data = marshal.dumps(code) + del code + data = (MAGIC + '\0\0\0\0') + data + + # Create the resource and write it + + id = 0 + while id < 128: + id = Res.Unique1ID(RESTYPE) + res = Res.Resource(data) + res.AddResource(RESTYPE, id, RESNAME) + attrs = res.GetResAttrs() + attrs = attrs | 0x04 # set preload + res.SetResAttrs(attrs) + res.WriteResource() + res.ReleaseResource() + + # Close the output file + + Res.CloseResFile(output) + + # Now set the creator, type and bundle bit of the destination. + # Done with FSSpec's, FSRef FInfo isn't good enough yet (2.3a1+) + dest_fss = Carbon.File.FSSpec(destname) + dest_finfo = dest_fss.FSpGetFInfo() + dest_finfo.Creator = ownertype + dest_finfo.Type = 'APPL' + dest_finfo.Flags = dest_finfo.Flags | Carbon.Files.kHasBundle | Carbon.Files.kIsShared + dest_finfo.Flags = dest_finfo.Flags & ~Carbon.Files.kHasBeenInited + dest_fss.FSpSetFInfo(dest_finfo) + + macostools.touched(destname) + if progress: + progress.label("Done.") + progress.inc(0) + +def process_common_macho(template, progress, code, rsrcname, destname, is_update, + raw=0, others=[], filename=None, destroot=""): + # Check that we have a filename + if filename is None: + raise BuildError, "Need source filename on MacOSX" + # First make sure the name ends in ".app" + if destname[-4:] != '.app': + destname = destname + '.app' + # Now deduce the short name + destdir, shortname = os.path.split(destname) + if shortname[-4:] == '.app': + # Strip the .app suffix + shortname = shortname[:-4] + # And deduce the .plist and .icns names + plistname = None + icnsname = None + if rsrcname and rsrcname[-5:] == '.rsrc': + tmp = rsrcname[:-5] + plistname = tmp + '.plist' + if os.path.exists(plistname): + icnsname = tmp + '.icns' + if not os.path.exists(icnsname): + icnsname = None + else: + plistname = None + if not icnsname: + dft_icnsname = os.path.join(sys.prefix, 'Resources/Python.app/Contents/Resources/PythonApplet.icns') + if os.path.exists(dft_icnsname): + icnsname = dft_icnsname + if not os.path.exists(rsrcname): + rsrcname = None + if progress: + progress.label('Creating bundle...') + import bundlebuilder + builder = bundlebuilder.AppBuilder(verbosity=0) + builder.mainprogram = filename + builder.builddir = destdir + builder.name = shortname + builder.destroot = destroot + if rsrcname: + realrsrcname = macresource.resource_pathname(rsrcname) + builder.files.append((realrsrcname, + os.path.join('Contents/Resources', os.path.basename(rsrcname)))) + for o in others: + if type(o) == str: + builder.resources.append(o) + else: + builder.files.append(o) + if plistname: + import plistlib + builder.plist = plistlib.Plist.fromFile(plistname) + if icnsname: + builder.iconfile = icnsname + if not raw: + builder.argv_emulation = 1 + builder.setup() + builder.build() + if progress: + progress.label('Done.') + progress.inc(0) + +## macostools.touched(dest_fss) + +# Copy resources between two resource file descriptors. +# skip a resource named '__main__' or (if skipowner is set) with ID zero. +# Also skip resources with a type listed in skiptypes. +# +def copyres(input, output, skiptypes, skipowner, progress=None): + ctor = None + alltypes = [] + Res.UseResFile(input) + ntypes = Res.Count1Types() + progress_type_inc = 50/ntypes + for itype in range(1, 1+ntypes): + type = Res.Get1IndType(itype) + if type in skiptypes: + continue + alltypes.append(type) + nresources = Res.Count1Resources(type) + progress_cur_inc = progress_type_inc/nresources + for ires in range(1, 1+nresources): + res = Res.Get1IndResource(type, ires) + id, type, name = res.GetResInfo() + lcname = string.lower(name) + + if lcname == OWNERNAME and id == 0: + if skipowner: + continue # Skip this one + else: + ctor = type + size = res.size + attrs = res.GetResAttrs() + if progress: + progress.label("Copy %s %d %s"%(type, id, name)) + progress.inc(progress_cur_inc) + res.LoadResource() + res.DetachResource() + Res.UseResFile(output) + try: + res2 = Res.Get1Resource(type, id) + except MacOS.Error: + res2 = None + if res2: + if progress: + progress.label("Overwrite %s %d %s"%(type, id, name)) + progress.inc(0) + res2.RemoveResource() + res.AddResource(type, id, name) + res.WriteResource() + attrs = attrs | res.GetResAttrs() + res.SetResAttrs(attrs) + Res.UseResFile(input) + return alltypes, ctor + +def copyapptree(srctree, dsttree, exceptlist=[], progress=None): + names = [] + if os.path.exists(dsttree): + shutil.rmtree(dsttree) + os.mkdir(dsttree) + todo = os.listdir(srctree) + while todo: + this, todo = todo[0], todo[1:] + if this in exceptlist: + continue + thispath = os.path.join(srctree, this) + if os.path.isdir(thispath): + thiscontent = os.listdir(thispath) + for t in thiscontent: + todo.append(os.path.join(this, t)) + names.append(this) + for this in names: + srcpath = os.path.join(srctree, this) + dstpath = os.path.join(dsttree, this) + if os.path.isdir(srcpath): + os.mkdir(dstpath) + elif os.path.islink(srcpath): + endpoint = os.readlink(srcpath) + os.symlink(endpoint, dstpath) + else: + if progress: + progress.label('Copy '+this) + progress.inc(0) + shutil.copy2(srcpath, dstpath) + +def writepycfile(codeobject, cfile): + import marshal + fc = open(cfile, 'wb') + fc.write('\0\0\0\0') # MAGIC placeholder, written later + fc.write('\0\0\0\0') # Timestap placeholder, not needed + marshal.dump(codeobject, fc) + fc.flush() + fc.seek(0, 0) + fc.write(MAGIC) + fc.close() diff --git a/sys/lib/python/plat-mac/bundlebuilder.py b/sys/lib/python/plat-mac/bundlebuilder.py new file mode 100755 index 000000000..266b8455a --- /dev/null +++ b/sys/lib/python/plat-mac/bundlebuilder.py @@ -0,0 +1,934 @@ +#! /usr/bin/env python + +"""\ +bundlebuilder.py -- Tools to assemble MacOS X (application) bundles. + +This module contains two classes to build so called "bundles" for +MacOS X. BundleBuilder is a general tool, AppBuilder is a subclass +specialized in building application bundles. + +[Bundle|App]Builder objects are instantiated with a bunch of keyword +arguments, and have a build() method that will do all the work. See +the class doc strings for a description of the constructor arguments. + +The module contains a main program that can be used in two ways: + + % python bundlebuilder.py [options] build + % python buildapp.py [options] build + +Where "buildapp.py" is a user-supplied setup.py-like script following +this model: + + from bundlebuilder import buildapp + buildapp(<lots-of-keyword-args>) + +""" + + +__all__ = ["BundleBuilder", "BundleBuilderError", "AppBuilder", "buildapp"] + + +import sys +import os, errno, shutil +import imp, marshal +import re +from copy import deepcopy +import getopt +from plistlib import Plist +from types import FunctionType as function + +class BundleBuilderError(Exception): pass + + +class Defaults: + + """Class attributes that don't start with an underscore and are + not functions or classmethods are (deep)copied to self.__dict__. + This allows for mutable default values. + """ + + def __init__(self, **kwargs): + defaults = self._getDefaults() + defaults.update(kwargs) + self.__dict__.update(defaults) + + def _getDefaults(cls): + defaults = {} + for base in cls.__bases__: + if hasattr(base, "_getDefaults"): + defaults.update(base._getDefaults()) + for name, value in cls.__dict__.items(): + if name[0] != "_" and not isinstance(value, + (function, classmethod)): + defaults[name] = deepcopy(value) + return defaults + _getDefaults = classmethod(_getDefaults) + + +class BundleBuilder(Defaults): + + """BundleBuilder is a barebones class for assembling bundles. It + knows nothing about executables or icons, it only copies files + and creates the PkgInfo and Info.plist files. + """ + + # (Note that Defaults.__init__ (deep)copies these values to + # instance variables. Mutable defaults are therefore safe.) + + # Name of the bundle, with or without extension. + name = None + + # The property list ("plist") + plist = Plist(CFBundleDevelopmentRegion = "English", + CFBundleInfoDictionaryVersion = "6.0") + + # The type of the bundle. + type = "BNDL" + # The creator code of the bundle. + creator = None + + # the CFBundleIdentifier (this is used for the preferences file name) + bundle_id = None + + # List of files that have to be copied to <bundle>/Contents/Resources. + resources = [] + + # List of (src, dest) tuples; dest should be a path relative to the bundle + # (eg. "Contents/Resources/MyStuff/SomeFile.ext). + files = [] + + # List of shared libraries (dylibs, Frameworks) to bundle with the app + # will be placed in Contents/Frameworks + libs = [] + + # Directory where the bundle will be assembled. + builddir = "build" + + # Make symlinks instead copying files. This is handy during debugging, but + # makes the bundle non-distributable. + symlink = 0 + + # Verbosity level. + verbosity = 1 + + # Destination root directory + destroot = "" + + def setup(self): + # XXX rethink self.name munging, this is brittle. + self.name, ext = os.path.splitext(self.name) + if not ext: + ext = ".bundle" + bundleextension = ext + # misc (derived) attributes + self.bundlepath = pathjoin(self.builddir, self.name + bundleextension) + + plist = self.plist + plist.CFBundleName = self.name + plist.CFBundlePackageType = self.type + if self.creator is None: + if hasattr(plist, "CFBundleSignature"): + self.creator = plist.CFBundleSignature + else: + self.creator = "????" + plist.CFBundleSignature = self.creator + if self.bundle_id: + plist.CFBundleIdentifier = self.bundle_id + elif not hasattr(plist, "CFBundleIdentifier"): + plist.CFBundleIdentifier = self.name + + def build(self): + """Build the bundle.""" + builddir = self.builddir + if builddir and not os.path.exists(builddir): + os.mkdir(builddir) + self.message("Building %s" % repr(self.bundlepath), 1) + if os.path.exists(self.bundlepath): + shutil.rmtree(self.bundlepath) + if os.path.exists(self.bundlepath + '~'): + shutil.rmtree(self.bundlepath + '~') + bp = self.bundlepath + + # Create the app bundle in a temporary location and then + # rename the completed bundle. This way the Finder will + # never see an incomplete bundle (where it might pick up + # and cache the wrong meta data) + self.bundlepath = bp + '~' + try: + os.mkdir(self.bundlepath) + self.preProcess() + self._copyFiles() + self._addMetaFiles() + self.postProcess() + os.rename(self.bundlepath, bp) + finally: + self.bundlepath = bp + self.message("Done.", 1) + + def preProcess(self): + """Hook for subclasses.""" + pass + def postProcess(self): + """Hook for subclasses.""" + pass + + def _addMetaFiles(self): + contents = pathjoin(self.bundlepath, "Contents") + makedirs(contents) + # + # Write Contents/PkgInfo + assert len(self.type) == len(self.creator) == 4, \ + "type and creator must be 4-byte strings." + pkginfo = pathjoin(contents, "PkgInfo") + f = open(pkginfo, "wb") + f.write(self.type + self.creator) + f.close() + # + # Write Contents/Info.plist + infoplist = pathjoin(contents, "Info.plist") + self.plist.write(infoplist) + + def _copyFiles(self): + files = self.files[:] + for path in self.resources: + files.append((path, pathjoin("Contents", "Resources", + os.path.basename(path)))) + for path in self.libs: + files.append((path, pathjoin("Contents", "Frameworks", + os.path.basename(path)))) + if self.symlink: + self.message("Making symbolic links", 1) + msg = "Making symlink from" + else: + self.message("Copying files", 1) + msg = "Copying" + files.sort() + for src, dst in files: + if os.path.isdir(src): + self.message("%s %s/ to %s/" % (msg, src, dst), 2) + else: + self.message("%s %s to %s" % (msg, src, dst), 2) + dst = pathjoin(self.bundlepath, dst) + if self.symlink: + symlink(src, dst, mkdirs=1) + else: + copy(src, dst, mkdirs=1) + + def message(self, msg, level=0): + if level <= self.verbosity: + indent = "" + if level > 1: + indent = (level - 1) * " " + sys.stderr.write(indent + msg + "\n") + + def report(self): + # XXX something decent + pass + + +if __debug__: + PYC_EXT = ".pyc" +else: + PYC_EXT = ".pyo" + +MAGIC = imp.get_magic() +USE_ZIPIMPORT = "zipimport" in sys.builtin_module_names + +# For standalone apps, we have our own minimal site.py. We don't need +# all the cruft of the real site.py. +SITE_PY = """\ +import sys +if not %(semi_standalone)s: + del sys.path[1:] # sys.path[0] is Contents/Resources/ +""" + +if USE_ZIPIMPORT: + ZIP_ARCHIVE = "Modules.zip" + SITE_PY += "sys.path.append(sys.path[0] + '/%s')\n" % ZIP_ARCHIVE + def getPycData(fullname, code, ispkg): + if ispkg: + fullname += ".__init__" + path = fullname.replace(".", os.sep) + PYC_EXT + return path, MAGIC + '\0\0\0\0' + marshal.dumps(code) + +# +# Extension modules can't be in the modules zip archive, so a placeholder +# is added instead, that loads the extension from a specified location. +# +EXT_LOADER = """\ +def __load(): + import imp, sys, os + for p in sys.path: + path = os.path.join(p, "%(filename)s") + if os.path.exists(path): + break + else: + assert 0, "file not found: %(filename)s" + mod = imp.load_dynamic("%(name)s", path) + +__load() +del __load +""" + +MAYMISS_MODULES = ['mac', 'os2', 'nt', 'ntpath', 'dos', 'dospath', + 'win32api', 'ce', '_winreg', 'nturl2path', 'sitecustomize', + 'org.python.core', 'riscos', 'riscosenviron', 'riscospath' +] + +STRIP_EXEC = "/usr/bin/strip" + +# +# We're using a stock interpreter to run the app, yet we need +# a way to pass the Python main program to the interpreter. The +# bootstrapping script fires up the interpreter with the right +# arguments. os.execve() is used as OSX doesn't like us to +# start a real new process. Also, the executable name must match +# the CFBundleExecutable value in the Info.plist, so we lie +# deliberately with argv[0]. The actual Python executable is +# passed in an environment variable so we can "repair" +# sys.executable later. +# +BOOTSTRAP_SCRIPT = """\ +#!%(hashbang)s + +import sys, os +execdir = os.path.dirname(sys.argv[0]) +executable = os.path.join(execdir, "%(executable)s") +resdir = os.path.join(os.path.dirname(execdir), "Resources") +libdir = os.path.join(os.path.dirname(execdir), "Frameworks") +mainprogram = os.path.join(resdir, "%(mainprogram)s") + +sys.argv.insert(1, mainprogram) +if %(standalone)s or %(semi_standalone)s: + os.environ["PYTHONPATH"] = resdir + if %(standalone)s: + os.environ["PYTHONHOME"] = resdir +else: + pypath = os.getenv("PYTHONPATH", "") + if pypath: + pypath = ":" + pypath + os.environ["PYTHONPATH"] = resdir + pypath +os.environ["PYTHONEXECUTABLE"] = executable +os.environ["DYLD_LIBRARY_PATH"] = libdir +os.environ["DYLD_FRAMEWORK_PATH"] = libdir +os.execve(executable, sys.argv, os.environ) +""" + + +# +# Optional wrapper that converts "dropped files" into sys.argv values. +# +ARGV_EMULATOR = """\ +import argvemulator, os + +argvemulator.ArgvCollector().mainloop() +execfile(os.path.join(os.path.split(__file__)[0], "%(realmainprogram)s")) +""" + +# +# When building a standalone app with Python.framework, we need to copy +# a subset from Python.framework to the bundle. The following list +# specifies exactly what items we'll copy. +# +PYTHONFRAMEWORKGOODIES = [ + "Python", # the Python core library + "Resources/English.lproj", + "Resources/Info.plist", + "Resources/version.plist", +] + +def isFramework(): + return sys.exec_prefix.find("Python.framework") > 0 + + +LIB = os.path.join(sys.prefix, "lib", "python" + sys.version[:3]) +SITE_PACKAGES = os.path.join(LIB, "site-packages") + + +class AppBuilder(BundleBuilder): + + # Override type of the bundle. + type = "APPL" + + # platform, name of the subfolder of Contents that contains the executable. + platform = "MacOS" + + # A Python main program. If this argument is given, the main + # executable in the bundle will be a small wrapper that invokes + # the main program. (XXX Discuss why.) + mainprogram = None + + # The main executable. If a Python main program is specified + # the executable will be copied to Resources and be invoked + # by the wrapper program mentioned above. Otherwise it will + # simply be used as the main executable. + executable = None + + # The name of the main nib, for Cocoa apps. *Must* be specified + # when building a Cocoa app. + nibname = None + + # The name of the icon file to be copied to Resources and used for + # the Finder icon. + iconfile = None + + # Symlink the executable instead of copying it. + symlink_exec = 0 + + # If True, build standalone app. + standalone = 0 + + # If True, build semi-standalone app (only includes third-party modules). + semi_standalone = 0 + + # If set, use this for #! lines in stead of sys.executable + python = None + + # If True, add a real main program that emulates sys.argv before calling + # mainprogram + argv_emulation = 0 + + # The following attributes are only used when building a standalone app. + + # Exclude these modules. + excludeModules = [] + + # Include these modules. + includeModules = [] + + # Include these packages. + includePackages = [] + + # Strip binaries from debug info. + strip = 0 + + # Found Python modules: [(name, codeobject, ispkg), ...] + pymodules = [] + + # Modules that modulefinder couldn't find: + missingModules = [] + maybeMissingModules = [] + + def setup(self): + if ((self.standalone or self.semi_standalone) + and self.mainprogram is None): + raise BundleBuilderError, ("must specify 'mainprogram' when " + "building a standalone application.") + if self.mainprogram is None and self.executable is None: + raise BundleBuilderError, ("must specify either or both of " + "'executable' and 'mainprogram'") + + self.execdir = pathjoin("Contents", self.platform) + + if self.name is not None: + pass + elif self.mainprogram is not None: + self.name = os.path.splitext(os.path.basename(self.mainprogram))[0] + elif executable is not None: + self.name = os.path.splitext(os.path.basename(self.executable))[0] + if self.name[-4:] != ".app": + self.name += ".app" + + if self.executable is None: + if not self.standalone and not isFramework(): + self.symlink_exec = 1 + if self.python: + self.executable = self.python + else: + self.executable = sys.executable + + if self.nibname: + self.plist.NSMainNibFile = self.nibname + if not hasattr(self.plist, "NSPrincipalClass"): + self.plist.NSPrincipalClass = "NSApplication" + + if self.standalone and isFramework(): + self.addPythonFramework() + + BundleBuilder.setup(self) + + self.plist.CFBundleExecutable = self.name + + if self.standalone or self.semi_standalone: + self.findDependencies() + + def preProcess(self): + resdir = "Contents/Resources" + if self.executable is not None: + if self.mainprogram is None: + execname = self.name + else: + execname = os.path.basename(self.executable) + execpath = pathjoin(self.execdir, execname) + if not self.symlink_exec: + self.files.append((self.destroot + self.executable, execpath)) + self.execpath = execpath + + if self.mainprogram is not None: + mainprogram = os.path.basename(self.mainprogram) + self.files.append((self.mainprogram, pathjoin(resdir, mainprogram))) + if self.argv_emulation: + # Change the main program, and create the helper main program (which + # does argv collection and then calls the real main). + # Also update the included modules (if we're creating a standalone + # program) and the plist + realmainprogram = mainprogram + mainprogram = '__argvemulator_' + mainprogram + resdirpath = pathjoin(self.bundlepath, resdir) + mainprogrampath = pathjoin(resdirpath, mainprogram) + makedirs(resdirpath) + open(mainprogrampath, "w").write(ARGV_EMULATOR % locals()) + if self.standalone or self.semi_standalone: + self.includeModules.append("argvemulator") + self.includeModules.append("os") + if not self.plist.has_key("CFBundleDocumentTypes"): + self.plist["CFBundleDocumentTypes"] = [ + { "CFBundleTypeOSTypes" : [ + "****", + "fold", + "disk"], + "CFBundleTypeRole": "Viewer"}] + # Write bootstrap script + executable = os.path.basename(self.executable) + execdir = pathjoin(self.bundlepath, self.execdir) + bootstrappath = pathjoin(execdir, self.name) + makedirs(execdir) + if self.standalone or self.semi_standalone: + # XXX we're screwed when the end user has deleted + # /usr/bin/python + hashbang = "/usr/bin/python" + elif self.python: + hashbang = self.python + else: + hashbang = os.path.realpath(sys.executable) + standalone = self.standalone + semi_standalone = self.semi_standalone + open(bootstrappath, "w").write(BOOTSTRAP_SCRIPT % locals()) + os.chmod(bootstrappath, 0775) + + if self.iconfile is not None: + iconbase = os.path.basename(self.iconfile) + self.plist.CFBundleIconFile = iconbase + self.files.append((self.iconfile, pathjoin(resdir, iconbase))) + + def postProcess(self): + if self.standalone or self.semi_standalone: + self.addPythonModules() + if self.strip and not self.symlink: + self.stripBinaries() + + if self.symlink_exec and self.executable: + self.message("Symlinking executable %s to %s" % (self.executable, + self.execpath), 2) + dst = pathjoin(self.bundlepath, self.execpath) + makedirs(os.path.dirname(dst)) + os.symlink(os.path.abspath(self.executable), dst) + + if self.missingModules or self.maybeMissingModules: + self.reportMissing() + + def addPythonFramework(self): + # If we're building a standalone app with Python.framework, + # include a minimal subset of Python.framework, *unless* + # Python.framework was specified manually in self.libs. + for lib in self.libs: + if os.path.basename(lib) == "Python.framework": + # a Python.framework was specified as a library + return + + frameworkpath = sys.exec_prefix[:sys.exec_prefix.find( + "Python.framework") + len("Python.framework")] + + version = sys.version[:3] + frameworkpath = pathjoin(frameworkpath, "Versions", version) + destbase = pathjoin("Contents", "Frameworks", "Python.framework", + "Versions", version) + for item in PYTHONFRAMEWORKGOODIES: + src = pathjoin(frameworkpath, item) + dst = pathjoin(destbase, item) + self.files.append((src, dst)) + + def _getSiteCode(self): + return compile(SITE_PY % {"semi_standalone": self.semi_standalone}, + "<-bundlebuilder.py->", "exec") + + def addPythonModules(self): + self.message("Adding Python modules", 1) + + if USE_ZIPIMPORT: + # Create a zip file containing all modules as pyc. + import zipfile + relpath = pathjoin("Contents", "Resources", ZIP_ARCHIVE) + abspath = pathjoin(self.bundlepath, relpath) + zf = zipfile.ZipFile(abspath, "w", zipfile.ZIP_DEFLATED) + for name, code, ispkg in self.pymodules: + self.message("Adding Python module %s" % name, 2) + path, pyc = getPycData(name, code, ispkg) + zf.writestr(path, pyc) + zf.close() + # add site.pyc + sitepath = pathjoin(self.bundlepath, "Contents", "Resources", + "site" + PYC_EXT) + writePyc(self._getSiteCode(), sitepath) + else: + # Create individual .pyc files. + for name, code, ispkg in self.pymodules: + if ispkg: + name += ".__init__" + path = name.split(".") + path = pathjoin("Contents", "Resources", *path) + PYC_EXT + + if ispkg: + self.message("Adding Python package %s" % path, 2) + else: + self.message("Adding Python module %s" % path, 2) + + abspath = pathjoin(self.bundlepath, path) + makedirs(os.path.dirname(abspath)) + writePyc(code, abspath) + + def stripBinaries(self): + if not os.path.exists(STRIP_EXEC): + self.message("Error: can't strip binaries: no strip program at " + "%s" % STRIP_EXEC, 0) + else: + import stat + self.message("Stripping binaries", 1) + def walk(top): + for name in os.listdir(top): + path = pathjoin(top, name) + if os.path.islink(path): + continue + if os.path.isdir(path): + walk(path) + else: + mod = os.stat(path)[stat.ST_MODE] + if not (mod & 0100): + continue + relpath = path[len(self.bundlepath):] + self.message("Stripping %s" % relpath, 2) + inf, outf = os.popen4("%s -S \"%s\"" % + (STRIP_EXEC, path)) + output = outf.read().strip() + if output: + # usually not a real problem, like when we're + # trying to strip a script + self.message("Problem stripping %s:" % relpath, 3) + self.message(output, 3) + walk(self.bundlepath) + + def findDependencies(self): + self.message("Finding module dependencies", 1) + import modulefinder + mf = modulefinder.ModuleFinder(excludes=self.excludeModules) + if USE_ZIPIMPORT: + # zipimport imports zlib, must add it manually + mf.import_hook("zlib") + # manually add our own site.py + site = mf.add_module("site") + site.__code__ = self._getSiteCode() + mf.scan_code(site.__code__, site) + + # warnings.py gets imported implicitly from C + mf.import_hook("warnings") + + includeModules = self.includeModules[:] + for name in self.includePackages: + includeModules.extend(findPackageContents(name).keys()) + for name in includeModules: + try: + mf.import_hook(name) + except ImportError: + self.missingModules.append(name) + + mf.run_script(self.mainprogram) + modules = mf.modules.items() + modules.sort() + for name, mod in modules: + path = mod.__file__ + if path and self.semi_standalone: + # skip the standard library + if path.startswith(LIB) and not path.startswith(SITE_PACKAGES): + continue + if path and mod.__code__ is None: + # C extension + filename = os.path.basename(path) + pathitems = name.split(".")[:-1] + [filename] + dstpath = pathjoin(*pathitems) + if USE_ZIPIMPORT: + if name != "zlib": + # neatly pack all extension modules in a subdirectory, + # except zlib, since it's neccesary for bootstrapping. + dstpath = pathjoin("ExtensionModules", dstpath) + # Python modules are stored in a Zip archive, but put + # extensions in Contents/Resources/. Add a tiny "loader" + # program in the Zip archive. Due to Thomas Heller. + source = EXT_LOADER % {"name": name, "filename": dstpath} + code = compile(source, "<dynloader for %s>" % name, "exec") + mod.__code__ = code + self.files.append((path, pathjoin("Contents", "Resources", dstpath))) + if mod.__code__ is not None: + ispkg = mod.__path__ is not None + if not USE_ZIPIMPORT or name != "site": + # Our site.py is doing the bootstrapping, so we must + # include a real .pyc file if USE_ZIPIMPORT is True. + self.pymodules.append((name, mod.__code__, ispkg)) + + if hasattr(mf, "any_missing_maybe"): + missing, maybe = mf.any_missing_maybe() + else: + missing = mf.any_missing() + maybe = [] + self.missingModules.extend(missing) + self.maybeMissingModules.extend(maybe) + + def reportMissing(self): + missing = [name for name in self.missingModules + if name not in MAYMISS_MODULES] + if self.maybeMissingModules: + maybe = self.maybeMissingModules + else: + maybe = [name for name in missing if "." in name] + missing = [name for name in missing if "." not in name] + missing.sort() + maybe.sort() + if maybe: + self.message("Warning: couldn't find the following submodules:", 1) + self.message(" (Note that these could be false alarms -- " + "it's not always", 1) + self.message(" possible to distinguish between \"from package " + "import submodule\" ", 1) + self.message(" and \"from package import name\")", 1) + for name in maybe: + self.message(" ? " + name, 1) + if missing: + self.message("Warning: couldn't find the following modules:", 1) + for name in missing: + self.message(" ? " + name, 1) + + def report(self): + # XXX something decent + import pprint + pprint.pprint(self.__dict__) + if self.standalone or self.semi_standalone: + self.reportMissing() + +# +# Utilities. +# + +SUFFIXES = [_suf for _suf, _mode, _tp in imp.get_suffixes()] +identifierRE = re.compile(r"[_a-zA-z][_a-zA-Z0-9]*$") + +def findPackageContents(name, searchpath=None): + head = name.split(".")[-1] + if identifierRE.match(head) is None: + return {} + try: + fp, path, (ext, mode, tp) = imp.find_module(head, searchpath) + except ImportError: + return {} + modules = {name: None} + if tp == imp.PKG_DIRECTORY and path: + files = os.listdir(path) + for sub in files: + sub, ext = os.path.splitext(sub) + fullname = name + "." + sub + if sub != "__init__" and fullname not in modules: + modules.update(findPackageContents(fullname, [path])) + return modules + +def writePyc(code, path): + f = open(path, "wb") + f.write(MAGIC) + f.write("\0" * 4) # don't bother about a time stamp + marshal.dump(code, f) + f.close() + +def copy(src, dst, mkdirs=0): + """Copy a file or a directory.""" + if mkdirs: + makedirs(os.path.dirname(dst)) + if os.path.isdir(src): + shutil.copytree(src, dst, symlinks=1) + else: + shutil.copy2(src, dst) + +def copytodir(src, dstdir): + """Copy a file or a directory to an existing directory.""" + dst = pathjoin(dstdir, os.path.basename(src)) + copy(src, dst) + +def makedirs(dir): + """Make all directories leading up to 'dir' including the leaf + directory. Don't moan if any path element already exists.""" + try: + os.makedirs(dir) + except OSError, why: + if why.errno != errno.EEXIST: + raise + +def symlink(src, dst, mkdirs=0): + """Copy a file or a directory.""" + if not os.path.exists(src): + raise IOError, "No such file or directory: '%s'" % src + if mkdirs: + makedirs(os.path.dirname(dst)) + os.symlink(os.path.abspath(src), dst) + +def pathjoin(*args): + """Safe wrapper for os.path.join: asserts that all but the first + argument are relative paths.""" + for seg in args[1:]: + assert seg[0] != "/" + return os.path.join(*args) + + +cmdline_doc = """\ +Usage: + python bundlebuilder.py [options] command + python mybuildscript.py [options] command + +Commands: + build build the application + report print a report + +Options: + -b, --builddir=DIR the build directory; defaults to "build" + -n, --name=NAME application name + -r, --resource=FILE extra file or folder to be copied to Resources + -f, --file=SRC:DST extra file or folder to be copied into the bundle; + DST must be a path relative to the bundle root + -e, --executable=FILE the executable to be used + -m, --mainprogram=FILE the Python main program + -a, --argv add a wrapper main program to create sys.argv + -p, --plist=FILE .plist file (default: generate one) + --nib=NAME main nib name + -c, --creator=CCCC 4-char creator code (default: '????') + --iconfile=FILE filename of the icon (an .icns file) to be used + as the Finder icon + --bundle-id=ID the CFBundleIdentifier, in reverse-dns format + (eg. org.python.BuildApplet; this is used for + the preferences file name) + -l, --link symlink files/folder instead of copying them + --link-exec symlink the executable instead of copying it + --standalone build a standalone application, which is fully + independent of a Python installation + --semi-standalone build a standalone application, which depends on + an installed Python, yet includes all third-party + modules. + --python=FILE Python to use in #! line in stead of current Python + --lib=FILE shared library or framework to be copied into + the bundle + -x, --exclude=MODULE exclude module (with --(semi-)standalone) + -i, --include=MODULE include module (with --(semi-)standalone) + --package=PACKAGE include a whole package (with --(semi-)standalone) + --strip strip binaries (remove debug info) + -v, --verbose increase verbosity level + -q, --quiet decrease verbosity level + -h, --help print this message +""" + +def usage(msg=None): + if msg: + print msg + print cmdline_doc + sys.exit(1) + +def main(builder=None): + if builder is None: + builder = AppBuilder(verbosity=1) + + shortopts = "b:n:r:f:e:m:c:p:lx:i:hvqa" + longopts = ("builddir=", "name=", "resource=", "file=", "executable=", + "mainprogram=", "creator=", "nib=", "plist=", "link", + "link-exec", "help", "verbose", "quiet", "argv", "standalone", + "exclude=", "include=", "package=", "strip", "iconfile=", + "lib=", "python=", "semi-standalone", "bundle-id=", "destroot=") + + try: + options, args = getopt.getopt(sys.argv[1:], shortopts, longopts) + except getopt.error: + usage() + + for opt, arg in options: + if opt in ('-b', '--builddir'): + builder.builddir = arg + elif opt in ('-n', '--name'): + builder.name = arg + elif opt in ('-r', '--resource'): + builder.resources.append(os.path.normpath(arg)) + elif opt in ('-f', '--file'): + srcdst = arg.split(':') + if len(srcdst) != 2: + usage("-f or --file argument must be two paths, " + "separated by a colon") + builder.files.append(srcdst) + elif opt in ('-e', '--executable'): + builder.executable = arg + elif opt in ('-m', '--mainprogram'): + builder.mainprogram = arg + elif opt in ('-a', '--argv'): + builder.argv_emulation = 1 + elif opt in ('-c', '--creator'): + builder.creator = arg + elif opt == '--bundle-id': + builder.bundle_id = arg + elif opt == '--iconfile': + builder.iconfile = arg + elif opt == "--lib": + builder.libs.append(os.path.normpath(arg)) + elif opt == "--nib": + builder.nibname = arg + elif opt in ('-p', '--plist'): + builder.plist = Plist.fromFile(arg) + elif opt in ('-l', '--link'): + builder.symlink = 1 + elif opt == '--link-exec': + builder.symlink_exec = 1 + elif opt in ('-h', '--help'): + usage() + elif opt in ('-v', '--verbose'): + builder.verbosity += 1 + elif opt in ('-q', '--quiet'): + builder.verbosity -= 1 + elif opt == '--standalone': + builder.standalone = 1 + elif opt == '--semi-standalone': + builder.semi_standalone = 1 + elif opt == '--python': + builder.python = arg + elif opt in ('-x', '--exclude'): + builder.excludeModules.append(arg) + elif opt in ('-i', '--include'): + builder.includeModules.append(arg) + elif opt == '--package': + builder.includePackages.append(arg) + elif opt == '--strip': + builder.strip = 1 + elif opt == '--destroot': + builder.destroot = arg + + if len(args) != 1: + usage("Must specify one command ('build', 'report' or 'help')") + command = args[0] + + if command == "build": + builder.setup() + builder.build() + elif command == "report": + builder.setup() + builder.report() + elif command == "help": + usage() + else: + usage("Unknown command '%s'" % command) + + +def buildapp(**kwargs): + builder = AppBuilder(**kwargs) + main(builder) + + +if __name__ == "__main__": + main() diff --git a/sys/lib/python/plat-mac/cfmfile.py b/sys/lib/python/plat-mac/cfmfile.py new file mode 100644 index 000000000..fd1a3e86c --- /dev/null +++ b/sys/lib/python/plat-mac/cfmfile.py @@ -0,0 +1,183 @@ +"""codefragments.py -- wrapper to modify code fragments.""" + +# (c) 1998, Just van Rossum, Letterror + +__version__ = "0.8b3" +__author__ = "jvr" + +import Carbon.File +import struct +from Carbon import Res +import os +import sys + +DEBUG = 0 + +error = "cfm.error" + +BUFSIZE = 0x80000 + +def mergecfmfiles(srclist, dst, architecture = 'fat'): + """Merge all files in srclist into a new file dst. + + If architecture is given, only code fragments of that type will be used: + "pwpc" for PPC, "m68k" for cfm68k. This does not work for "classic" + 68k code, since it does not use code fragments to begin with. + If architecture is None, all fragments will be used, enabling FAT binaries. + """ + + srclist = list(srclist) + for i in range(len(srclist)): + srclist[i] = Carbon.File.pathname(srclist[i]) + dst = Carbon.File.pathname(dst) + + dstfile = open(dst, "wb") + rf = Res.FSpOpenResFile(dst, 3) + try: + dstcfrg = CfrgResource() + for src in srclist: + srccfrg = CfrgResource(src) + for frag in srccfrg.fragments: + if frag.architecture == 'pwpc' and architecture == 'm68k': + continue + if frag.architecture == 'm68k' and architecture == 'pwpc': + continue + dstcfrg.append(frag) + + frag.copydata(dstfile) + + cfrgres = Res.Resource(dstcfrg.build()) + Res.UseResFile(rf) + cfrgres.AddResource('cfrg', 0, "") + finally: + dstfile.close() + rf = Res.CloseResFile(rf) + + +class CfrgResource: + + def __init__(self, path = None): + self.version = 1 + self.fragments = [] + self.path = path + if path is not None and os.path.exists(path): + currentresref = Res.CurResFile() + resref = Res.FSpOpenResFile(path, 1) + Res.UseResFile(resref) + try: + try: + data = Res.Get1Resource('cfrg', 0).data + except Res.Error: + raise Res.Error, "no 'cfrg' resource found", sys.exc_traceback + finally: + Res.CloseResFile(resref) + Res.UseResFile(currentresref) + self.parse(data) + if self.version <> 1: + raise error, "unknown 'cfrg' resource format" + + def parse(self, data): + (res1, res2, self.version, + res3, res4, res5, res6, + self.memberCount) = struct.unpack("8l", data[:32]) + data = data[32:] + while data: + frag = FragmentDescriptor(self.path, data) + data = data[frag.memberSize:] + self.fragments.append(frag) + + def build(self): + self.memberCount = len(self.fragments) + data = struct.pack("8l", 0, 0, self.version, 0, 0, 0, 0, self.memberCount) + for frag in self.fragments: + data = data + frag.build() + return data + + def append(self, frag): + self.fragments.append(frag) + + +class FragmentDescriptor: + + def __init__(self, path, data = None): + self.path = path + if data is not None: + self.parse(data) + + def parse(self, data): + self.architecture = data[:4] + ( self.updatelevel, + self.currentVersion, + self.oldDefVersion, + self.stacksize, + self.applibdir, + self.fragtype, + self.where, + self.offset, + self.length, + self.res1, self.res2, + self.memberSize,) = struct.unpack("4lhBB4lh", data[4:42]) + pname = data[42:self.memberSize] + self.name = pname[1:1+ord(pname[0])] + + def build(self): + data = self.architecture + data = data + struct.pack("4lhBB4l", + self.updatelevel, + self.currentVersion, + self.oldDefVersion, + self.stacksize, + self.applibdir, + self.fragtype, + self.where, + self.offset, + self.length, + self.res1, self.res2) + self.memberSize = len(data) + 2 + 1 + len(self.name) + # pad to 4 byte boundaries + if self.memberSize % 4: + self.memberSize = self.memberSize + 4 - (self.memberSize % 4) + data = data + struct.pack("hb", self.memberSize, len(self.name)) + data = data + self.name + data = data + '\000' * (self.memberSize - len(data)) + return data + + def getfragment(self): + if self.where <> 1: + raise error, "can't read fragment, unsupported location" + f = open(self.path, "rb") + f.seek(self.offset) + if self.length: + frag = f.read(self.length) + else: + frag = f.read() + f.close() + return frag + + def copydata(self, outfile): + if self.where <> 1: + raise error, "can't read fragment, unsupported location" + infile = open(self.path, "rb") + if self.length == 0: + infile.seek(0, 2) + self.length = infile.tell() + + # Position input file and record new offset from output file + infile.seek(self.offset) + + # pad to 16 byte boundaries + offset = outfile.tell() + if offset % 16: + offset = offset + 16 - (offset % 16) + outfile.seek(offset) + self.offset = offset + + l = self.length + while l: + if l > BUFSIZE: + outfile.write(infile.read(BUFSIZE)) + l = l - BUFSIZE + else: + outfile.write(infile.read(l)) + l = 0 + infile.close() diff --git a/sys/lib/python/plat-mac/dialogs.rsrc b/sys/lib/python/plat-mac/dialogs.rsrc Binary files differnew file mode 100644 index 000000000..0107493b5 --- /dev/null +++ b/sys/lib/python/plat-mac/dialogs.rsrc diff --git a/sys/lib/python/plat-mac/errors.rsrc b/sys/lib/python/plat-mac/errors.rsrc Binary files differnew file mode 100644 index 000000000..61c487e17 --- /dev/null +++ b/sys/lib/python/plat-mac/errors.rsrc diff --git a/sys/lib/python/plat-mac/findertools.py b/sys/lib/python/plat-mac/findertools.py new file mode 100644 index 000000000..54b1bdec0 --- /dev/null +++ b/sys/lib/python/plat-mac/findertools.py @@ -0,0 +1,831 @@ +"""Utility routines depending on the finder, +a combination of code by Jack Jansen and erik@letterror.com. + +Most events have been captured from +Lasso Capture AE and than translated to python code. + +IMPORTANT +Note that the processes() function returns different values +depending on the OS version it is running on. On MacOS 9 +the Finder returns the process *names* which can then be +used to find out more about them. On MacOS 8.6 and earlier +the Finder returns a code which does not seem to work. +So bottom line: the processes() stuff does not work on < MacOS9 + +Mostly written by erik@letterror.com +""" +import Finder +from Carbon import AppleEvents +import aetools +import MacOS +import sys +import Carbon.File +import Carbon.Folder +import aetypes +from types import * + +__version__ = '1.1' +Error = 'findertools.Error' + +_finder_talker = None + +def _getfinder(): + """returns basic (recyclable) Finder AE interface object""" + global _finder_talker + if not _finder_talker: + _finder_talker = Finder.Finder() + _finder_talker.send_flags = ( _finder_talker.send_flags | + AppleEvents.kAECanInteract | AppleEvents.kAECanSwitchLayer) + return _finder_talker + +def launch(file): + """Open a file thru the finder. Specify file by name or fsspec""" + finder = _getfinder() + fss = Carbon.File.FSSpec(file) + return finder.open(fss) + +def Print(file): + """Print a file thru the finder. Specify file by name or fsspec""" + finder = _getfinder() + fss = Carbon.File.FSSpec(file) + return finder._print(fss) + +def copy(src, dstdir): + """Copy a file to a folder""" + finder = _getfinder() + if type(src) == type([]): + src_fss = [] + for s in src: + src_fss.append(Carbon.File.FSSpec(s)) + else: + src_fss = Carbon.File.FSSpec(src) + dst_fss = Carbon.File.FSSpec(dstdir) + return finder.duplicate(src_fss, to=dst_fss) + +def move(src, dstdir): + """Move a file to a folder""" + finder = _getfinder() + if type(src) == type([]): + src_fss = [] + for s in src: + src_fss.append(Carbon.File.FSSpec(s)) + else: + src_fss = Carbon.File.FSSpec(src) + dst_fss = Carbon.File.FSSpec(dstdir) + return finder.move(src_fss, to=dst_fss) + +def sleep(): + """Put the mac to sleep""" + finder = _getfinder() + finder.sleep() + +def shutdown(): + """Shut the mac down""" + finder = _getfinder() + finder.shut_down() + +def restart(): + """Restart the mac""" + finder = _getfinder() + finder.restart() + + +#--------------------------------------------------- +# Additional findertools +# + +def reveal(file): + """Reveal a file in the finder. Specify file by name, fsref or fsspec.""" + finder = _getfinder() + fsr = Carbon.File.FSRef(file) + file_alias = fsr.FSNewAliasMinimal() + return finder.reveal(file_alias) + +def select(file): + """select a file in the finder. Specify file by name, fsref or fsspec.""" + finder = _getfinder() + fsr = Carbon.File.FSRef(file) + file_alias = fsr.FSNewAliasMinimal() + return finder.select(file_alias) + +def update(file): + """Update the display of the specified object(s) to match + their on-disk representation. Specify file by name, fsref or fsspec.""" + finder = _getfinder() + fsr = Carbon.File.FSRef(file) + file_alias = fsr.FSNewAliasMinimal() + return finder.update(file_alias) + + +#--------------------------------------------------- +# More findertools +# + +def comment(object, comment=None): + """comment: get or set the Finder-comment of the item, displayed in the 'Get Info' window.""" + object = Carbon.File.FSRef(object) + object_alias = object.FSNewAliasMonimal() + if comment == None: + return _getcomment(object_alias) + else: + return _setcomment(object_alias, comment) + +def _setcomment(object_alias, comment): + finder = _getfinder() + args = {} + attrs = {} + aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), form="alis", seld=object_alias, fr=None) + aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('comt'), fr=aeobj_00) + args['----'] = aeobj_01 + args["data"] = comment + _reply, args, attrs = finder.send("core", "setd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + +def _getcomment(object_alias): + finder = _getfinder() + args = {} + attrs = {} + aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), form="alis", seld=object_alias, fr=None) + aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('comt'), fr=aeobj_00) + args['----'] = aeobj_01 + _reply, args, attrs = finder.send("core", "getd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + + +#--------------------------------------------------- +# Get information about current processes in the Finder. + +def processes(): + """processes returns a list of all active processes running on this computer and their creators.""" + finder = _getfinder() + args = {} + attrs = {} + processnames = [] + processnumbers = [] + creators = [] + partitions = [] + used = [] + ## get the processnames or else the processnumbers + args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prcs'), form="indx", seld=aetypes.Unknown('abso', "all "), fr=None) + _reply, args, attrs = finder.send('core', 'getd', args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + p = [] + if args.has_key('----'): + p = args['----'] + for proc in p: + if hasattr(proc, 'seld'): + # it has a real name + processnames.append(proc.seld) + elif hasattr(proc, 'type'): + if proc.type == "psn ": + # it has a process number + processnumbers.append(proc.data) + ## get the creators + args = {} + attrs = {} + aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('prcs'), form="indx", seld=aetypes.Unknown('abso', "all "), fr=None) + args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('fcrt'), fr=aeobj_0) + _reply, args, attrs = finder.send('core', 'getd', args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(_arg) + if args.has_key('----'): + p = args['----'] + creators = p[:] + ## concatenate in one dict + result = [] + if len(processnames) > len(processnumbers): + data = processnames + else: + data = processnumbers + for i in range(len(creators)): + result.append((data[i], creators[i])) + return result + +class _process: + pass + +def isactiveprocess(processname): + """Check of processname is active. MacOS9""" + all = processes() + ok = 0 + for n, c in all: + if n == processname: + return 1 + return 0 + +def processinfo(processname): + """Return an object with all process properties as attributes for processname. MacOS9""" + p = _process() + + if processname == "Finder": + p.partition = None + p.used = None + else: + p.partition = _processproperty(processname, 'appt') + p.used = _processproperty(processname, 'pusd') + p.visible = _processproperty(processname, 'pvis') #Is the process' layer visible? + p.frontmost = _processproperty(processname, 'pisf') #Is the process the frontmost process? + p.file = _processproperty(processname, 'file') #the file from which the process was launched + p.filetype = _processproperty(processname, 'asty') #the OSType of the file type of the process + p.creatortype = _processproperty(processname, 'fcrt') #the OSType of the creator of the process (the signature) + p.accepthighlevel = _processproperty(processname, 'revt') #Is the process high-level event aware (accepts open application, open document, print document, and quit)? + p.hasscripting = _processproperty(processname, 'hscr') #Does the process have a scripting terminology, i.e., can it be scripted? + return p + +def _processproperty(processname, property): + """return the partition size and memory used for processname""" + finder = _getfinder() + args = {} + attrs = {} + aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('prcs'), form="name", seld=processname, fr=None) + aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type(property), fr=aeobj_00) + args['----'] = aeobj_01 + _reply, args, attrs = finder.send("core", "getd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + + +#--------------------------------------------------- +# Mess around with Finder windows. + +def openwindow(object): + """Open a Finder window for object, Specify object by name or fsspec.""" + finder = _getfinder() + object = Carbon.File.FSRef(object) + object_alias = object.FSNewAliasMinimal() + args = {} + attrs = {} + _code = 'aevt' + _subcode = 'odoc' + aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None) + args['----'] = aeobj_0 + _reply, args, attrs = finder.send(_code, _subcode, args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + +def closewindow(object): + """Close a Finder window for folder, Specify by path.""" + finder = _getfinder() + object = Carbon.File.FSRef(object) + object_alias = object.FSNewAliasMinimal() + args = {} + attrs = {} + _code = 'core' + _subcode = 'clos' + aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None) + args['----'] = aeobj_0 + _reply, args, attrs = finder.send(_code, _subcode, args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + +def location(object, pos=None): + """Set the position of a Finder window for folder to pos=(w, h). Specify file by name or fsspec. + If pos=None, location will return the current position of the object.""" + object = Carbon.File.FSRef(object) + object_alias = object.FSNewAliasMinimal() + if not pos: + return _getlocation(object_alias) + return _setlocation(object_alias, pos) + +def _setlocation(object_alias, (x, y)): + """_setlocation: Set the location of the icon for the object.""" + finder = _getfinder() + args = {} + attrs = {} + aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None) + aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('posn'), fr=aeobj_00) + args['----'] = aeobj_01 + args["data"] = [x, y] + _reply, args, attrs = finder.send("core", "setd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + return (x,y) + +def _getlocation(object_alias): + """_getlocation: get the location of the icon for the object.""" + finder = _getfinder() + args = {} + attrs = {} + aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None) + aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('posn'), fr=aeobj_00) + args['----'] = aeobj_01 + _reply, args, attrs = finder.send("core", "getd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + pos = args['----'] + return pos.h, pos.v + +def label(object, index=None): + """label: set or get the label of the item. Specify file by name or fsspec.""" + object = Carbon.File.FSRef(object) + object_alias = object.FSNewAliasMinimal() + if index == None: + return _getlabel(object_alias) + if index < 0 or index > 7: + index = 0 + return _setlabel(object_alias, index) + +def _getlabel(object_alias): + """label: Get the label for the object.""" + finder = _getfinder() + args = {} + attrs = {} + aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), form="alis", seld=object_alias, fr=None) + aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('labi'), fr=aeobj_00) + args['----'] = aeobj_01 + _reply, args, attrs = finder.send("core", "getd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + +def _setlabel(object_alias, index): + """label: Set the label for the object.""" + finder = _getfinder() + args = {} + attrs = {} + _code = 'core' + _subcode = 'setd' + aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="alis", seld=object_alias, fr=None) + aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('labi'), fr=aeobj_0) + args['----'] = aeobj_1 + args["data"] = index + _reply, args, attrs = finder.send(_code, _subcode, args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + return index + +def windowview(folder, view=None): + """windowview: Set the view of the window for the folder. Specify file by name or fsspec. + 0 = by icon (default) + 1 = by name + 2 = by button + """ + fsr = Carbon.File.FSRef(folder) + folder_alias = fsr.FSNewAliasMinimal() + if view == None: + return _getwindowview(folder_alias) + return _setwindowview(folder_alias, view) + +def _setwindowview(folder_alias, view=0): + """set the windowview""" + attrs = {} + args = {} + if view == 1: + _v = aetypes.Type('pnam') + elif view == 2: + _v = aetypes.Type('lgbu') + else: + _v = aetypes.Type('iimg') + finder = _getfinder() + aeobj_0 = aetypes.ObjectSpecifier(want = aetypes.Type('cfol'), + form = 'alis', seld = folder_alias, fr=None) + aeobj_1 = aetypes.ObjectSpecifier(want = aetypes.Type('prop'), + form = 'prop', seld = aetypes.Type('cwnd'), fr=aeobj_0) + aeobj_2 = aetypes.ObjectSpecifier(want = aetypes.Type('prop'), + form = 'prop', seld = aetypes.Type('pvew'), fr=aeobj_1) + aeobj_3 = aetypes.ObjectSpecifier(want = aetypes.Type('prop'), + form = 'prop', seld = _v, fr=None) + _code = 'core' + _subcode = 'setd' + args['----'] = aeobj_2 + args['data'] = aeobj_3 + _reply, args, attrs = finder.send(_code, _subcode, args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + +def _getwindowview(folder_alias): + """get the windowview""" + attrs = {} + args = {} + finder = _getfinder() + args = {} + attrs = {} + aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=folder_alias, fr=None) + aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_00) + aeobj_02 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('pvew'), fr=aeobj_01) + args['----'] = aeobj_02 + _reply, args, attrs = finder.send("core", "getd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + views = {'iimg':0, 'pnam':1, 'lgbu':2} + if args.has_key('----'): + return views[args['----'].enum] + +def windowsize(folder, size=None): + """Set the size of a Finder window for folder to size=(w, h), Specify by path. + If size=None, windowsize will return the current size of the window. + Specify file by name or fsspec. + """ + fsr = Carbon.File.FSRef(folder) + folder_alias = fsr.FSNewAliasMinimal() + openwindow(fsr) + if not size: + return _getwindowsize(folder_alias) + return _setwindowsize(folder_alias, size) + +def _setwindowsize(folder_alias, (w, h)): + """Set the size of a Finder window for folder to (w, h)""" + finder = _getfinder() + args = {} + attrs = {} + _code = 'core' + _subcode = 'setd' + aevar00 = [w, h] + aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), + form="alis", seld=folder_alias, fr=None) + aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0) + aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('ptsz'), fr=aeobj_1) + args['----'] = aeobj_2 + args["data"] = aevar00 + _reply, args, attrs = finder.send(_code, _subcode, args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + return (w, h) + +def _getwindowsize(folder_alias): + """Set the size of a Finder window for folder to (w, h)""" + finder = _getfinder() + args = {} + attrs = {} + aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), + form="alis", seld=folder_alias, fr=None) + aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0) + aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('posn'), fr=aeobj_1) + args['----'] = aeobj_2 + _reply, args, attrs = finder.send('core', 'getd', args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + +def windowposition(folder, pos=None): + """Set the position of a Finder window for folder to pos=(w, h).""" + fsr = Carbon.File.FSRef(folder) + folder_alias = fsr.FSNewAliasMinimal() + openwindow(fsr) + if not pos: + return _getwindowposition(folder_alias) + if type(pos) == InstanceType: + # pos might be a QDPoint object as returned by _getwindowposition + pos = (pos.h, pos.v) + return _setwindowposition(folder_alias, pos) + +def _setwindowposition(folder_alias, (x, y)): + """Set the size of a Finder window for folder to (w, h).""" + finder = _getfinder() + args = {} + attrs = {} + aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), + form="alis", seld=folder_alias, fr=None) + aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0) + aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('posn'), fr=aeobj_1) + args['----'] = aeobj_2 + args["data"] = [x, y] + _reply, args, attrs = finder.send('core', 'setd', args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + +def _getwindowposition(folder_alias): + """Get the size of a Finder window for folder, Specify by path.""" + finder = _getfinder() + args = {} + attrs = {} + aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), + form="alis", seld=folder_alias, fr=None) + aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0) + aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('ptsz'), fr=aeobj_1) + args['----'] = aeobj_2 + _reply, args, attrs = finder.send('core', 'getd', args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + +def icon(object, icondata=None): + """icon sets the icon of object, if no icondata is given, + icon will return an AE object with binary data for the current icon. + If left untouched, this data can be used to paste the icon on another file. + Development opportunity: get and set the data as PICT.""" + fsr = Carbon.File.FSRef(object) + object_alias = fsr.FSNewAliasMinimal() + if icondata == None: + return _geticon(object_alias) + return _seticon(object_alias, icondata) + +def _geticon(object_alias): + """get the icondata for object. Binary data of some sort.""" + finder = _getfinder() + args = {} + attrs = {} + aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), + form="alis", seld=object_alias, fr=None) + aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('iimg'), fr=aeobj_00) + args['----'] = aeobj_01 + _reply, args, attrs = finder.send("core", "getd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + +def _seticon(object_alias, icondata): + """set the icondata for object, formatted as produced by _geticon()""" + finder = _getfinder() + args = {} + attrs = {} + aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), + form="alis", seld=object_alias, fr=None) + aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), + form="prop", seld=aetypes.Type('iimg'), fr=aeobj_00) + args['----'] = aeobj_01 + args["data"] = icondata + _reply, args, attrs = finder.send("core", "setd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'].data + + +#--------------------------------------------------- +# Volumes and servers. + +def mountvolume(volume, server=None, username=None, password=None): + """mount a volume, local or on a server on AppleTalk. + Note: mounting a ASIP server requires a different operation. + server is the name of the server where the volume belongs + username, password belong to a registered user of the volume.""" + finder = _getfinder() + args = {} + attrs = {} + if password: + args["PASS"] = password + if username: + args["USER"] = username + if server: + args["SRVR"] = server + args['----'] = volume + _reply, args, attrs = finder.send("aevt", "mvol", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + +def unmountvolume(volume): + """unmount a volume that's on the desktop""" + putaway(volume) + +def putaway(object): + """puth the object away, whereever it came from.""" + finder = _getfinder() + args = {} + attrs = {} + args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('cdis'), form="name", seld=object, fr=None) + _reply, args, attrs = talker.send("fndr", "ptwy", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + + +#--------------------------------------------------- +# Miscellaneous functions +# + +def volumelevel(level): + """set the audio output level, parameter between 0 (silent) and 7 (full blast)""" + finder = _getfinder() + args = {} + attrs = {} + if level < 0: + level = 0 + elif level > 7: + level = 7 + args['----'] = level + _reply, args, attrs = finder.send("aevt", "stvl", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + +def OSversion(): + """return the version of the system software""" + finder = _getfinder() + args = {} + attrs = {} + aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('ver2'), fr=None) + args['----'] = aeobj_00 + _reply, args, attrs = finder.send("core", "getd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + return args['----'] + +def filesharing(): + """return the current status of filesharing and whether it is starting up or not: + -1 file sharing is off and not starting up + 0 file sharing is off and starting up + 1 file sharing is on""" + status = -1 + finder = _getfinder() + # see if it is on + args = {} + attrs = {} + args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('fshr'), fr=None) + _reply, args, attrs = finder.send("core", "getd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + if args['----'] == 0: + status = -1 + else: + status = 1 + # is it starting up perchance? + args = {} + attrs = {} + args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('fsup'), fr=None) + _reply, args, attrs = finder.send("core", "getd", args, attrs) + if args.has_key('errn'): + raise Error, aetools.decodeerror(args) + if args.has_key('----'): + if args['----'] == 1: + status = 0 + return status + +def movetotrash(path): + """move the object to the trash""" + fss = Carbon.File.FSSpec(path) + trashfolder = Carbon.Folder.FSFindFolder(fss.as_tuple()[0], 'trsh', 0) + move(path, trashfolder) + +def emptytrash(): + """empty the trash""" + finder = _getfinder() + args = {} + attrs = {} + args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('trsh'), fr=None) + _reply, args, attrs = finder.send("fndr", "empt", args, attrs) + if args.has_key('errn'): + raise aetools.Error, aetools.decodeerror(args) + + +def _test(): + import EasyDialogs + print 'Original findertools functionality test...' + print 'Testing launch...' + pathname = EasyDialogs.AskFileForOpen('File to launch:') + if pathname: + result = launch(pathname) + if result: + print 'Result: ', result + print 'Press return-', + sys.stdin.readline() + print 'Testing print...' + pathname = EasyDialogs.AskFileForOpen('File to print:') + if pathname: + result = Print(pathname) + if result: + print 'Result: ', result + print 'Press return-', + sys.stdin.readline() + print 'Testing copy...' + pathname = EasyDialogs.AskFileForOpen('File to copy:') + if pathname: + destdir = EasyDialogs.AskFolder('Destination:') + if destdir: + result = copy(pathname, destdir) + if result: + print 'Result:', result + print 'Press return-', + sys.stdin.readline() + print 'Testing move...' + pathname = EasyDialogs.AskFileForOpen('File to move:') + if pathname: + destdir = EasyDialogs.AskFolder('Destination:') + if destdir: + result = move(pathname, destdir) + if result: + print 'Result:', result + print 'Press return-', + sys.stdin.readline() + print 'Testing sleep...' + if EasyDialogs.AskYesNoCancel('Sleep?') > 0: + result = sleep() + if result: + print 'Result:', result + print 'Press return-', + sys.stdin.readline() + print 'Testing shutdown...' + if EasyDialogs.AskYesNoCancel('Shut down?') > 0: + result = shutdown() + if result: + print 'Result:', result + print 'Press return-', + sys.stdin.readline() + print 'Testing restart...' + if EasyDialogs.AskYesNoCancel('Restart?') > 0: + result = restart() + if result: + print 'Result:', result + print 'Press return-', + sys.stdin.readline() + +def _test2(): + print '\nmorefindertools version %s\nTests coming up...' %__version__ + import os + import random + + # miscellaneous + print '\tfilesharing on?', filesharing() # is file sharing on, off, starting up? + print '\tOS version', OSversion() # the version of the system software + + # set the soundvolume in a simple way + print '\tSystem beep volume' + for i in range(0, 7): + volumelevel(i) + MacOS.SysBeep() + + # Finder's windows, file location, file attributes + open("@findertoolstest", "w") + f = "@findertoolstest" + reveal(f) # reveal this file in a Finder window + select(f) # select this file + + base, file = os.path.split(f) + closewindow(base) # close the window this file is in (opened by reveal) + openwindow(base) # open it again + windowview(base, 1) # set the view by list + + label(f, 2) # set the label of this file to something orange + print '\tlabel', label(f) # get the label of this file + + # the file location only works in a window with icon view! + print 'Random locations for an icon' + windowview(base, 0) # set the view by icon + windowsize(base, (600, 600)) + for i in range(50): + location(f, (random.randint(10, 590), random.randint(10, 590))) + + windowsize(base, (200, 400)) + windowview(base, 1) # set the view by icon + + orgpos = windowposition(base) + print 'Animated window location' + for i in range(10): + pos = (100+i*10, 100+i*10) + windowposition(base, pos) + print '\twindow position', pos + windowposition(base, orgpos) # park it where it was before + + print 'Put a comment in file', f, ':' + print '\t', comment(f) # print the Finder comment this file has + s = 'This is a comment no one reads!' + comment(f, s) # set the Finder comment + +def _test3(): + print 'MacOS9 or better specific functions' + # processes + pr = processes() # return a list of tuples with (active_processname, creatorcode) + print 'Return a list of current active processes:' + for p in pr: + print '\t', p + + # get attributes of the first process in the list + print 'Attributes of the first process in the list:' + pinfo = processinfo(pr[0][0]) + print '\t', pr[0][0] + print '\t\tmemory partition', pinfo.partition # the memory allocated to this process + print '\t\tmemory used', pinfo.used # the memory actuall used by this process + print '\t\tis visible', pinfo.visible # is the process visible to the user + print '\t\tis frontmost', pinfo.frontmost # is the process the front most one? + print '\t\thas scripting', pinfo.hasscripting # is the process scriptable? + print '\t\taccepts high level events', pinfo.accepthighlevel # does the process accept high level appleevents? + +if __name__ == '__main__': + _test() + _test2() + _test3() diff --git a/sys/lib/python/plat-mac/gensuitemodule.py b/sys/lib/python/plat-mac/gensuitemodule.py new file mode 100644 index 000000000..87132c57f --- /dev/null +++ b/sys/lib/python/plat-mac/gensuitemodule.py @@ -0,0 +1,1213 @@ +""" +gensuitemodule - Generate an AE suite module from an aete/aeut resource + +Based on aete.py. + +Reading and understanding this code is left as an exercise to the reader. +""" + +import MacOS +import EasyDialogs +import os +import string +import sys +import types +import StringIO +import keyword +import macresource +import aetools +import distutils.sysconfig +import OSATerminology +from Carbon.Res import * +import Carbon.Folder +import MacOS +import getopt +import plistlib + +_MAC_LIB_FOLDER=os.path.dirname(aetools.__file__) +DEFAULT_STANDARD_PACKAGEFOLDER=os.path.join(_MAC_LIB_FOLDER, 'lib-scriptpackages') +DEFAULT_USER_PACKAGEFOLDER=distutils.sysconfig.get_python_lib() + +def usage(): + sys.stderr.write("Usage: %s [opts] application-or-resource-file\n" % sys.argv[0]) + sys.stderr.write("""Options: +--output pkgdir Pathname of the output package (short: -o) +--resource Parse resource file in stead of launching application (-r) +--base package Use another base package in stead of default StdSuites (-b) +--edit old=new Edit suite names, use empty new to skip a suite (-e) +--creator code Set creator code for package (-c) +--dump Dump aete resource to stdout in stead of creating module (-d) +--verbose Tell us what happens (-v) +""") + sys.exit(1) + +def main(): + if len(sys.argv) > 1: + SHORTOPTS = "rb:o:e:c:dv" + LONGOPTS = ("resource", "base=", "output=", "edit=", "creator=", "dump", "verbose") + try: + opts, args = getopt.getopt(sys.argv[1:], SHORTOPTS, LONGOPTS) + except getopt.GetoptError: + usage() + + process_func = processfile + basepkgname = 'StdSuites' + output = None + edit_modnames = [] + creatorsignature = None + dump = None + verbose = None + + for o, a in opts: + if o in ('-r', '--resource'): + process_func = processfile_fromresource + if o in ('-b', '--base'): + basepkgname = a + if o in ('-o', '--output'): + output = a + if o in ('-e', '--edit'): + split = a.split('=') + if len(split) != 2: + usage() + edit_modnames.append(split) + if o in ('-c', '--creator'): + if len(a) != 4: + sys.stderr.write("creator must be 4-char string\n") + sys.exit(1) + creatorsignature = a + if o in ('-d', '--dump'): + dump = sys.stdout + if o in ('-v', '--verbose'): + verbose = sys.stderr + + + if output and len(args) > 1: + sys.stderr.write("%s: cannot specify --output with multiple inputs\n" % sys.argv[0]) + sys.exit(1) + + for filename in args: + process_func(filename, output=output, basepkgname=basepkgname, + edit_modnames=edit_modnames, creatorsignature=creatorsignature, + dump=dump, verbose=verbose) + else: + main_interactive() + +def main_interactive(interact=0, basepkgname='StdSuites'): + if interact: + # Ask for save-filename for each module + edit_modnames = None + else: + # Use default filenames for each module + edit_modnames = [] + appsfolder = Carbon.Folder.FSFindFolder(-32765, 'apps', 0) + filename = EasyDialogs.AskFileForOpen( + message='Select scriptable application', + dialogOptionFlags=0x1056, # allow selection of .app bundles + defaultLocation=appsfolder) + if not filename: + return + if not is_scriptable(filename): + if EasyDialogs.AskYesNoCancel( + "Warning: application does not seem scriptable", + yes="Continue", default=2, no="") <= 0: + return + try: + processfile(filename, edit_modnames=edit_modnames, basepkgname=basepkgname, + verbose=sys.stderr) + except MacOS.Error, arg: + print "Error getting terminology:", arg + print "Retry, manually parsing resources" + processfile_fromresource(filename, edit_modnames=edit_modnames, + basepkgname=basepkgname, verbose=sys.stderr) + +def is_scriptable(application): + """Return true if the application is scriptable""" + if os.path.isdir(application): + plistfile = os.path.join(application, 'Contents', 'Info.plist') + if not os.path.exists(plistfile): + return False + plist = plistlib.Plist.fromFile(plistfile) + return plist.get('NSAppleScriptEnabled', False) + # If it is a file test for an aete/aeut resource. + currf = CurResFile() + try: + refno = macresource.open_pathname(application) + except MacOS.Error: + return False + UseResFile(refno) + n_terminology = Count1Resources('aete') + Count1Resources('aeut') + \ + Count1Resources('scsz') + Count1Resources('osiz') + CloseResFile(refno) + UseResFile(currf) + return n_terminology > 0 + +def processfile_fromresource(fullname, output=None, basepkgname=None, + edit_modnames=None, creatorsignature=None, dump=None, verbose=None): + """Process all resources in a single file""" + if not is_scriptable(fullname) and verbose: + print >>verbose, "Warning: app does not seem scriptable: %s" % fullname + cur = CurResFile() + if verbose: + print >>verbose, "Processing", fullname + rf = macresource.open_pathname(fullname) + try: + UseResFile(rf) + resources = [] + for i in range(Count1Resources('aete')): + res = Get1IndResource('aete', 1+i) + resources.append(res) + for i in range(Count1Resources('aeut')): + res = Get1IndResource('aeut', 1+i) + resources.append(res) + if verbose: + print >>verbose, "\nLISTING aete+aeut RESOURCES IN", repr(fullname) + aetelist = [] + for res in resources: + if verbose: + print >>verbose, "decoding", res.GetResInfo(), "..." + data = res.data + aete = decode(data, verbose) + aetelist.append((aete, res.GetResInfo())) + finally: + if rf <> cur: + CloseResFile(rf) + UseResFile(cur) + # switch back (needed for dialogs in Python) + UseResFile(cur) + if dump: + dumpaetelist(aetelist, dump) + compileaetelist(aetelist, fullname, output=output, + basepkgname=basepkgname, edit_modnames=edit_modnames, + creatorsignature=creatorsignature, verbose=verbose) + +def processfile(fullname, output=None, basepkgname=None, + edit_modnames=None, creatorsignature=None, dump=None, + verbose=None): + """Ask an application for its terminology and process that""" + if not is_scriptable(fullname) and verbose: + print >>verbose, "Warning: app does not seem scriptable: %s" % fullname + if verbose: + print >>verbose, "\nASKING FOR aete DICTIONARY IN", repr(fullname) + try: + aedescobj, launched = OSATerminology.GetAppTerminology(fullname) + except MacOS.Error, arg: + if arg[0] in (-1701, -192): # errAEDescNotFound, resNotFound + if verbose: + print >>verbose, "GetAppTerminology failed with errAEDescNotFound/resNotFound, trying manually" + aedata, sig = getappterminology(fullname, verbose=verbose) + if not creatorsignature: + creatorsignature = sig + else: + raise + else: + if launched: + if verbose: + print >>verbose, "Launched", fullname + raw = aetools.unpack(aedescobj) + if not raw: + if verbose: + print >>verbose, 'Unpack returned empty value:', raw + return + if not raw[0].data: + if verbose: + print >>verbose, 'Unpack returned value without data:', raw + return + aedata = raw[0] + aete = decode(aedata.data, verbose) + if dump: + dumpaetelist([aete], dump) + return + compileaete(aete, None, fullname, output=output, basepkgname=basepkgname, + creatorsignature=creatorsignature, edit_modnames=edit_modnames, + verbose=verbose) + +def getappterminology(fullname, verbose=None): + """Get application terminology by sending an AppleEvent""" + # First check that we actually can send AppleEvents + if not MacOS.WMAvailable(): + raise RuntimeError, "Cannot send AppleEvents, no access to window manager" + # Next, a workaround for a bug in MacOS 10.2: sending events will hang unless + # you have created an event loop first. + import Carbon.Evt + Carbon.Evt.WaitNextEvent(0,0) + if os.path.isdir(fullname): + # Now get the signature of the application, hoping it is a bundle + pkginfo = os.path.join(fullname, 'Contents', 'PkgInfo') + if not os.path.exists(pkginfo): + raise RuntimeError, "No PkgInfo file found" + tp_cr = open(pkginfo, 'rb').read() + cr = tp_cr[4:8] + else: + # Assume it is a file + cr, tp = MacOS.GetCreatorAndType(fullname) + # Let's talk to it and ask for its AETE + talker = aetools.TalkTo(cr) + try: + talker._start() + except (MacOS.Error, aetools.Error), arg: + if verbose: + print >>verbose, 'Warning: start() failed, continuing anyway:', arg + reply = talker.send("ascr", "gdte") + #reply2 = talker.send("ascr", "gdut") + # Now pick the bits out of the return that we need. + return reply[1]['----'], cr + + +def compileaetelist(aetelist, fullname, output=None, basepkgname=None, + edit_modnames=None, creatorsignature=None, verbose=None): + for aete, resinfo in aetelist: + compileaete(aete, resinfo, fullname, output=output, + basepkgname=basepkgname, edit_modnames=edit_modnames, + creatorsignature=creatorsignature, verbose=verbose) + +def dumpaetelist(aetelist, output): + import pprint + pprint.pprint(aetelist, output) + +def decode(data, verbose=None): + """Decode a resource into a python data structure""" + f = StringIO.StringIO(data) + aete = generic(getaete, f) + aete = simplify(aete) + processed = f.tell() + unprocessed = len(f.read()) + total = f.tell() + if unprocessed and verbose: + verbose.write("%d processed + %d unprocessed = %d total\n" % + (processed, unprocessed, total)) + return aete + +def simplify(item): + """Recursively replace singleton tuples by their constituent item""" + if type(item) is types.ListType: + return map(simplify, item) + elif type(item) == types.TupleType and len(item) == 2: + return simplify(item[1]) + else: + return item + + +# Here follows the aete resource decoder. +# It is presented bottom-up instead of top-down because there are direct +# references to the lower-level part-decoders from the high-level part-decoders. + +def getbyte(f, *args): + c = f.read(1) + if not c: + raise EOFError, 'in getbyte' + str(args) + return ord(c) + +def getword(f, *args): + getalign(f) + s = f.read(2) + if len(s) < 2: + raise EOFError, 'in getword' + str(args) + return (ord(s[0])<<8) | ord(s[1]) + +def getlong(f, *args): + getalign(f) + s = f.read(4) + if len(s) < 4: + raise EOFError, 'in getlong' + str(args) + return (ord(s[0])<<24) | (ord(s[1])<<16) | (ord(s[2])<<8) | ord(s[3]) + +def getostype(f, *args): + getalign(f) + s = f.read(4) + if len(s) < 4: + raise EOFError, 'in getostype' + str(args) + return s + +def getpstr(f, *args): + c = f.read(1) + if len(c) < 1: + raise EOFError, 'in getpstr[1]' + str(args) + nbytes = ord(c) + if nbytes == 0: return '' + s = f.read(nbytes) + if len(s) < nbytes: + raise EOFError, 'in getpstr[2]' + str(args) + return s + +def getalign(f): + if f.tell() & 1: + c = f.read(1) + ##if c <> '\0': + ## print align:', repr(c) + +def getlist(f, description, getitem): + count = getword(f) + list = [] + for i in range(count): + list.append(generic(getitem, f)) + getalign(f) + return list + +def alt_generic(what, f, *args): + print "generic", repr(what), args + res = vageneric(what, f, args) + print '->', repr(res) + return res + +def generic(what, f, *args): + if type(what) == types.FunctionType: + return apply(what, (f,) + args) + if type(what) == types.ListType: + record = [] + for thing in what: + item = apply(generic, thing[:1] + (f,) + thing[1:]) + record.append((thing[1], item)) + return record + return "BAD GENERIC ARGS: %r" % (what,) + +getdata = [ + (getostype, "type"), + (getpstr, "description"), + (getword, "flags") + ] +getargument = [ + (getpstr, "name"), + (getostype, "keyword"), + (getdata, "what") + ] +getevent = [ + (getpstr, "name"), + (getpstr, "description"), + (getostype, "suite code"), + (getostype, "event code"), + (getdata, "returns"), + (getdata, "accepts"), + (getlist, "optional arguments", getargument) + ] +getproperty = [ + (getpstr, "name"), + (getostype, "code"), + (getdata, "what") + ] +getelement = [ + (getostype, "type"), + (getlist, "keyform", getostype) + ] +getclass = [ + (getpstr, "name"), + (getostype, "class code"), + (getpstr, "description"), + (getlist, "properties", getproperty), + (getlist, "elements", getelement) + ] +getcomparison = [ + (getpstr, "operator name"), + (getostype, "operator ID"), + (getpstr, "operator comment"), + ] +getenumerator = [ + (getpstr, "enumerator name"), + (getostype, "enumerator ID"), + (getpstr, "enumerator comment") + ] +getenumeration = [ + (getostype, "enumeration ID"), + (getlist, "enumerator", getenumerator) + ] +getsuite = [ + (getpstr, "suite name"), + (getpstr, "suite description"), + (getostype, "suite ID"), + (getword, "suite level"), + (getword, "suite version"), + (getlist, "events", getevent), + (getlist, "classes", getclass), + (getlist, "comparisons", getcomparison), + (getlist, "enumerations", getenumeration) + ] +getaete = [ + (getword, "major/minor version in BCD"), + (getword, "language code"), + (getword, "script code"), + (getlist, "suites", getsuite) + ] + +def compileaete(aete, resinfo, fname, output=None, basepkgname=None, + edit_modnames=None, creatorsignature=None, verbose=None): + """Generate code for a full aete resource. fname passed for doc purposes""" + [version, language, script, suites] = aete + major, minor = divmod(version, 256) + if not creatorsignature: + creatorsignature, dummy = MacOS.GetCreatorAndType(fname) + packagename = identify(os.path.splitext(os.path.basename(fname))[0]) + if language: + packagename = packagename+'_lang%d'%language + if script: + packagename = packagename+'_script%d'%script + if len(packagename) > 27: + packagename = packagename[:27] + if output: + # XXXX Put this in site-packages if it isn't a full pathname? + if not os.path.exists(output): + os.mkdir(output) + pathname = output + else: + pathname = EasyDialogs.AskFolder(message='Create and select package folder for %s'%packagename, + defaultLocation=DEFAULT_USER_PACKAGEFOLDER) + output = pathname + if not pathname: + return + packagename = os.path.split(os.path.normpath(pathname))[1] + if not basepkgname: + basepkgname = EasyDialogs.AskFolder(message='Package folder for base suite (usually StdSuites)', + defaultLocation=DEFAULT_STANDARD_PACKAGEFOLDER) + if basepkgname: + dirname, basepkgname = os.path.split(os.path.normpath(basepkgname)) + if dirname and not dirname in sys.path: + sys.path.insert(0, dirname) + basepackage = __import__(basepkgname) + else: + basepackage = None + suitelist = [] + allprecompinfo = [] + allsuites = [] + for suite in suites: + compiler = SuiteCompiler(suite, basepackage, output, edit_modnames, verbose) + code, modname, precompinfo = compiler.precompilesuite() + if not code: + continue + allprecompinfo = allprecompinfo + precompinfo + suiteinfo = suite, pathname, modname + suitelist.append((code, modname)) + allsuites.append(compiler) + for compiler in allsuites: + compiler.compilesuite(major, minor, language, script, fname, allprecompinfo) + initfilename = os.path.join(output, '__init__.py') + fp = open(initfilename, 'w') + MacOS.SetCreatorAndType(initfilename, 'Pyth', 'TEXT') + fp.write('"""\n') + fp.write("Package generated from %s\n"%ascii(fname)) + if resinfo: + fp.write("Resource %s resid %d %s\n"%(ascii(resinfo[1]), resinfo[0], ascii(resinfo[2]))) + fp.write('"""\n') + fp.write('import aetools\n') + fp.write('Error = aetools.Error\n') + suitelist.sort() + for code, modname in suitelist: + fp.write("import %s\n" % modname) + fp.write("\n\n_code_to_module = {\n") + for code, modname in suitelist: + fp.write(" '%s' : %s,\n"%(ascii(code), modname)) + fp.write("}\n\n") + fp.write("\n\n_code_to_fullname = {\n") + for code, modname in suitelist: + fp.write(" '%s' : ('%s.%s', '%s'),\n"%(ascii(code), packagename, modname, modname)) + fp.write("}\n\n") + for code, modname in suitelist: + fp.write("from %s import *\n"%modname) + + # Generate property dicts and element dicts for all types declared in this module + fp.write("\ndef getbaseclasses(v):\n") + fp.write(" if not getattr(v, '_propdict', None):\n") + fp.write(" v._propdict = {}\n") + fp.write(" v._elemdict = {}\n") + fp.write(" for superclassname in getattr(v, '_superclassnames', []):\n") + fp.write(" superclass = eval(superclassname)\n") + fp.write(" getbaseclasses(superclass)\n") + fp.write(" v._propdict.update(getattr(superclass, '_propdict', {}))\n") + fp.write(" v._elemdict.update(getattr(superclass, '_elemdict', {}))\n") + fp.write(" v._propdict.update(getattr(v, '_privpropdict', {}))\n") + fp.write(" v._elemdict.update(getattr(v, '_privelemdict', {}))\n") + fp.write("\n") + fp.write("import StdSuites\n") + allprecompinfo.sort() + if allprecompinfo: + fp.write("\n#\n# Set property and element dictionaries now that all classes have been defined\n#\n") + for codenamemapper in allprecompinfo: + for k, v in codenamemapper.getall('class'): + fp.write("getbaseclasses(%s)\n" % v) + + # Generate a code-to-name mapper for all of the types (classes) declared in this module + application_class = None + if allprecompinfo: + fp.write("\n#\n# Indices of types declared in this module\n#\n") + fp.write("_classdeclarations = {\n") + for codenamemapper in allprecompinfo: + for k, v in codenamemapper.getall('class'): + fp.write(" %r : %s,\n" % (k, v)) + if k == 'capp': + application_class = v + fp.write("}\n") + + + if suitelist: + fp.write("\n\nclass %s(%s_Events"%(packagename, suitelist[0][1])) + for code, modname in suitelist[1:]: + fp.write(",\n %s_Events"%modname) + fp.write(",\n aetools.TalkTo):\n") + fp.write(" _signature = %r\n\n"%(creatorsignature,)) + fp.write(" _moduleName = '%s'\n\n"%packagename) + if application_class: + fp.write(" _elemdict = %s._elemdict\n" % application_class) + fp.write(" _propdict = %s._propdict\n" % application_class) + fp.close() + +class SuiteCompiler: + def __init__(self, suite, basepackage, output, edit_modnames, verbose): + self.suite = suite + self.basepackage = basepackage + self.edit_modnames = edit_modnames + self.output = output + self.verbose = verbose + + # Set by precompilesuite + self.pathname = None + self.modname = None + + # Set by compilesuite + self.fp = None + self.basemodule = None + self.enumsneeded = {} + + def precompilesuite(self): + """Parse a single suite without generating the output. This step is needed + so we can resolve recursive references by suites to enums/comps/etc declared + in other suites""" + [name, desc, code, level, version, events, classes, comps, enums] = self.suite + + modname = identify(name) + if len(modname) > 28: + modname = modname[:27] + if self.edit_modnames is None: + self.pathname = EasyDialogs.AskFileForSave(message='Python output file', + savedFileName=modname+'.py') + else: + for old, new in self.edit_modnames: + if old == modname: + modname = new + if modname: + self.pathname = os.path.join(self.output, modname + '.py') + else: + self.pathname = None + if not self.pathname: + return None, None, None + + self.modname = os.path.splitext(os.path.split(self.pathname)[1])[0] + + if self.basepackage and self.basepackage._code_to_module.has_key(code): + # We are an extension of a baseclass (usually an application extending + # Standard_Suite or so). Import everything from our base module + basemodule = self.basepackage._code_to_module[code] + else: + # We are not an extension. + basemodule = None + + self.enumsneeded = {} + for event in events: + self.findenumsinevent(event) + + objc = ObjectCompiler(None, self.modname, basemodule, interact=(self.edit_modnames is None), + verbose=self.verbose) + for cls in classes: + objc.compileclass(cls) + for cls in classes: + objc.fillclasspropsandelems(cls) + for comp in comps: + objc.compilecomparison(comp) + for enum in enums: + objc.compileenumeration(enum) + + for enum in self.enumsneeded.keys(): + objc.checkforenum(enum) + + objc.dumpindex() + + precompinfo = objc.getprecompinfo(self.modname) + + return code, self.modname, precompinfo + + def compilesuite(self, major, minor, language, script, fname, precompinfo): + """Generate code for a single suite""" + [name, desc, code, level, version, events, classes, comps, enums] = self.suite + # Sort various lists, so re-generated source is easier compared + def class_sorter(k1, k2): + """Sort classes by code, and make sure main class sorts before synonyms""" + # [name, code, desc, properties, elements] = cls + if k1[1] < k2[1]: return -1 + if k1[1] > k2[1]: return 1 + if not k2[3] or k2[3][0][1] == 'c@#!': + # This is a synonym, the other one is better + return -1 + if not k1[3] or k1[3][0][1] == 'c@#!': + # This is a synonym, the other one is better + return 1 + return 0 + + events.sort() + classes.sort(class_sorter) + comps.sort() + enums.sort() + + self.fp = fp = open(self.pathname, 'w') + MacOS.SetCreatorAndType(self.pathname, 'Pyth', 'TEXT') + + fp.write('"""Suite %s: %s\n' % (ascii(name), ascii(desc))) + fp.write("Level %d, version %d\n\n" % (level, version)) + fp.write("Generated from %s\n"%ascii(fname)) + fp.write("AETE/AEUT resource version %d/%d, language %d, script %d\n" % \ + (major, minor, language, script)) + fp.write('"""\n\n') + + fp.write('import aetools\n') + fp.write('import MacOS\n\n') + fp.write("_code = %r\n\n"% (code,)) + if self.basepackage and self.basepackage._code_to_module.has_key(code): + # We are an extension of a baseclass (usually an application extending + # Standard_Suite or so). Import everything from our base module + fp.write('from %s import *\n'%self.basepackage._code_to_fullname[code][0]) + basemodule = self.basepackage._code_to_module[code] + elif self.basepackage and self.basepackage._code_to_module.has_key(code.lower()): + # This is needed by CodeWarrior and some others. + fp.write('from %s import *\n'%self.basepackage._code_to_fullname[code.lower()][0]) + basemodule = self.basepackage._code_to_module[code.lower()] + else: + # We are not an extension. + basemodule = None + self.basemodule = basemodule + self.compileclassheader() + + self.enumsneeded = {} + if events: + for event in events: + self.compileevent(event) + else: + fp.write(" pass\n\n") + + objc = ObjectCompiler(fp, self.modname, basemodule, precompinfo, interact=(self.edit_modnames is None), + verbose=self.verbose) + for cls in classes: + objc.compileclass(cls) + for cls in classes: + objc.fillclasspropsandelems(cls) + for comp in comps: + objc.compilecomparison(comp) + for enum in enums: + objc.compileenumeration(enum) + + for enum in self.enumsneeded.keys(): + objc.checkforenum(enum) + + objc.dumpindex() + + def compileclassheader(self): + """Generate class boilerplate""" + classname = '%s_Events'%self.modname + if self.basemodule: + modshortname = string.split(self.basemodule.__name__, '.')[-1] + baseclassname = '%s_Events'%modshortname + self.fp.write("class %s(%s):\n\n"%(classname, baseclassname)) + else: + self.fp.write("class %s:\n\n"%classname) + + def compileevent(self, event): + """Generate code for a single event""" + [name, desc, code, subcode, returns, accepts, arguments] = event + fp = self.fp + funcname = identify(name) + # + # generate name->keyword map + # + if arguments: + fp.write(" _argmap_%s = {\n"%funcname) + for a in arguments: + fp.write(" %r : %r,\n"%(identify(a[0]), a[1])) + fp.write(" }\n\n") + + # + # Generate function header + # + has_arg = (not is_null(accepts)) + opt_arg = (has_arg and is_optional(accepts)) + + fp.write(" def %s(self, "%funcname) + if has_arg: + if not opt_arg: + fp.write("_object, ") # Include direct object, if it has one + else: + fp.write("_object=None, ") # Also include if it is optional + else: + fp.write("_no_object=None, ") # For argument checking + fp.write("_attributes={}, **_arguments):\n") # include attribute dict and args + # + # Generate doc string (important, since it may be the only + # available documentation, due to our name-remaping) + # + fp.write(' """%s: %s\n'%(ascii(name), ascii(desc))) + if has_arg: + fp.write(" Required argument: %s\n"%getdatadoc(accepts)) + elif opt_arg: + fp.write(" Optional argument: %s\n"%getdatadoc(accepts)) + for arg in arguments: + fp.write(" Keyword argument %s: %s\n"%(identify(arg[0]), + getdatadoc(arg[2]))) + fp.write(" Keyword argument _attributes: AppleEvent attribute dictionary\n") + if not is_null(returns): + fp.write(" Returns: %s\n"%getdatadoc(returns)) + fp.write(' """\n') + # + # Fiddle the args so everything ends up in 'arguments' dictionary + # + fp.write(" _code = %r\n"% (code,)) + fp.write(" _subcode = %r\n\n"% (subcode,)) + # + # Do keyword name substitution + # + if arguments: + fp.write(" aetools.keysubst(_arguments, self._argmap_%s)\n"%funcname) + else: + fp.write(" if _arguments: raise TypeError, 'No optional args expected'\n") + # + # Stuff required arg (if there is one) into arguments + # + if has_arg: + fp.write(" _arguments['----'] = _object\n") + elif opt_arg: + fp.write(" if _object:\n") + fp.write(" _arguments['----'] = _object\n") + else: + fp.write(" if _no_object != None: raise TypeError, 'No direct arg expected'\n") + fp.write("\n") + # + # Do enum-name substitution + # + for a in arguments: + if is_enum(a[2]): + kname = a[1] + ename = a[2][0] + if ename <> '****': + fp.write(" aetools.enumsubst(_arguments, %r, _Enum_%s)\n" % + (kname, identify(ename))) + self.enumsneeded[ename] = 1 + fp.write("\n") + # + # Do the transaction + # + fp.write(" _reply, _arguments, _attributes = self.send(_code, _subcode,\n") + fp.write(" _arguments, _attributes)\n") + # + # Error handling + # + fp.write(" if _arguments.get('errn', 0):\n") + fp.write(" raise aetools.Error, aetools.decodeerror(_arguments)\n") + fp.write(" # XXXX Optionally decode result\n") + # + # Decode result + # + fp.write(" if _arguments.has_key('----'):\n") + if is_enum(returns): + fp.write(" # XXXX Should do enum remapping here...\n") + fp.write(" return _arguments['----']\n") + fp.write("\n") + + def findenumsinevent(self, event): + """Find all enums for a single event""" + [name, desc, code, subcode, returns, accepts, arguments] = event + for a in arguments: + if is_enum(a[2]): + ename = a[2][0] + if ename <> '****': + self.enumsneeded[ename] = 1 + +# +# This class stores the code<->name translations for a single module. It is used +# to keep the information while we're compiling the module, but we also keep these objects +# around so if one suite refers to, say, an enum in another suite we know where to +# find it. Finally, if we really can't find a code, the user can add modules by +# hand. +# +class CodeNameMapper: + + def __init__(self, interact=1, verbose=None): + self.code2name = { + "property" : {}, + "class" : {}, + "enum" : {}, + "comparison" : {}, + } + self.name2code = { + "property" : {}, + "class" : {}, + "enum" : {}, + "comparison" : {}, + } + self.modulename = None + self.star_imported = 0 + self.can_interact = interact + self.verbose = verbose + + def addnamecode(self, type, name, code): + self.name2code[type][name] = code + if not self.code2name[type].has_key(code): + self.code2name[type][code] = name + + def hasname(self, name): + for dict in self.name2code.values(): + if dict.has_key(name): + return True + return False + + def hascode(self, type, code): + return self.code2name[type].has_key(code) + + def findcodename(self, type, code): + if not self.hascode(type, code): + return None, None, None + name = self.code2name[type][code] + if self.modulename and not self.star_imported: + qualname = '%s.%s'%(self.modulename, name) + else: + qualname = name + return name, qualname, self.modulename + + def getall(self, type): + return self.code2name[type].items() + + def addmodule(self, module, name, star_imported): + self.modulename = name + self.star_imported = star_imported + for code, name in module._propdeclarations.items(): + self.addnamecode('property', name, code) + for code, name in module._classdeclarations.items(): + self.addnamecode('class', name, code) + for code in module._enumdeclarations.keys(): + self.addnamecode('enum', '_Enum_'+identify(code), code) + for code, name in module._compdeclarations.items(): + self.addnamecode('comparison', name, code) + + def prepareforexport(self, name=None): + if not self.modulename: + self.modulename = name + return self + +class ObjectCompiler: + def __init__(self, fp, modname, basesuite, othernamemappers=None, interact=1, + verbose=None): + self.fp = fp + self.verbose = verbose + self.basesuite = basesuite + self.can_interact = interact + self.modulename = modname + self.namemappers = [CodeNameMapper(self.can_interact, self.verbose)] + if othernamemappers: + self.othernamemappers = othernamemappers[:] + else: + self.othernamemappers = [] + if basesuite: + basemapper = CodeNameMapper(self.can_interact, self.verbose) + basemapper.addmodule(basesuite, '', 1) + self.namemappers.append(basemapper) + + def getprecompinfo(self, modname): + list = [] + for mapper in self.namemappers: + emapper = mapper.prepareforexport(modname) + if emapper: + list.append(emapper) + return list + + def findcodename(self, type, code): + while 1: + # First try: check whether we already know about this code. + for mapper in self.namemappers: + if mapper.hascode(type, code): + return mapper.findcodename(type, code) + # Second try: maybe one of the other modules knows about it. + for mapper in self.othernamemappers: + if mapper.hascode(type, code): + self.othernamemappers.remove(mapper) + self.namemappers.append(mapper) + if self.fp: + self.fp.write("import %s\n"%mapper.modulename) + break + else: + # If all this has failed we ask the user for a guess on where it could + # be and retry. + if self.fp: + m = self.askdefinitionmodule(type, code) + else: + m = None + if not m: return None, None, None + mapper = CodeNameMapper(self.can_interact, self.verbose) + mapper.addmodule(m, m.__name__, 0) + self.namemappers.append(mapper) + + def hasname(self, name): + for mapper in self.othernamemappers: + if mapper.hasname(name) and mapper.modulename != self.modulename: + if self.verbose: + print >>self.verbose, "Duplicate Python identifier:", name, self.modulename, mapper.modulename + return True + return False + + def askdefinitionmodule(self, type, code): + if not self.can_interact: + if self.verbose: + print >>self.verbose, "** No definition for %s '%s' found" % (type, code) + return None + path = EasyDialogs.AskFileForSave(message='Where is %s %s declared?'%(type, code)) + if not path: return + path, file = os.path.split(path) + modname = os.path.splitext(file)[0] + if not path in sys.path: + sys.path.insert(0, path) + m = __import__(modname) + self.fp.write("import %s\n"%modname) + return m + + def compileclass(self, cls): + [name, code, desc, properties, elements] = cls + pname = identify(name) + if self.namemappers[0].hascode('class', code): + # plural forms and such + othername, dummy, dummy = self.namemappers[0].findcodename('class', code) + if self.fp: + self.fp.write("\n%s = %s\n"%(pname, othername)) + else: + if self.fp: + self.fp.write('\nclass %s(aetools.ComponentItem):\n' % pname) + self.fp.write(' """%s - %s """\n' % (ascii(name), ascii(desc))) + self.fp.write(' want = %r\n' % (code,)) + self.namemappers[0].addnamecode('class', pname, code) + is_application_class = (code == 'capp') + properties.sort() + for prop in properties: + self.compileproperty(prop, is_application_class) + elements.sort() + for elem in elements: + self.compileelement(elem) + + def compileproperty(self, prop, is_application_class=False): + [name, code, what] = prop + if code == 'c@#!': + # Something silly with plurals. Skip it. + return + pname = identify(name) + if self.namemappers[0].hascode('property', code): + # plural forms and such + othername, dummy, dummy = self.namemappers[0].findcodename('property', code) + if pname == othername: + return + if self.fp: + self.fp.write("\n_Prop_%s = _Prop_%s\n"%(pname, othername)) + else: + if self.fp: + self.fp.write("class _Prop_%s(aetools.NProperty):\n" % pname) + self.fp.write(' """%s - %s """\n' % (ascii(name), ascii(what[1]))) + self.fp.write(" which = %r\n" % (code,)) + self.fp.write(" want = %r\n" % (what[0],)) + self.namemappers[0].addnamecode('property', pname, code) + if is_application_class and self.fp: + self.fp.write("%s = _Prop_%s()\n" % (pname, pname)) + + def compileelement(self, elem): + [code, keyform] = elem + if self.fp: + self.fp.write("# element %r as %s\n" % (code, keyform)) + + def fillclasspropsandelems(self, cls): + [name, code, desc, properties, elements] = cls + cname = identify(name) + if self.namemappers[0].hascode('class', code) and \ + self.namemappers[0].findcodename('class', code)[0] != cname: + # This is an other name (plural or so) for something else. Skip. + if self.fp and (elements or len(properties) > 1 or (len(properties) == 1 and + properties[0][1] != 'c@#!')): + if self.verbose: + print >>self.verbose, '** Skip multiple %s of %s (code %r)' % (cname, self.namemappers[0].findcodename('class', code)[0], code) + raise RuntimeError, "About to skip non-empty class" + return + plist = [] + elist = [] + superclasses = [] + for prop in properties: + [pname, pcode, what] = prop + if pcode == "c@#^": + superclasses.append(what) + if pcode == 'c@#!': + continue + pname = identify(pname) + plist.append(pname) + + superclassnames = [] + for superclass in superclasses: + superId, superDesc, dummy = superclass + superclassname, fullyqualifiedname, module = self.findcodename("class", superId) + # I don't think this is correct: + if superclassname == cname: + pass # superclassnames.append(fullyqualifiedname) + else: + superclassnames.append(superclassname) + + if self.fp: + self.fp.write("%s._superclassnames = %r\n"%(cname, superclassnames)) + + for elem in elements: + [ecode, keyform] = elem + if ecode == 'c@#!': + continue + name, ename, module = self.findcodename('class', ecode) + if not name: + if self.fp: + self.fp.write("# XXXX %s element %r not found!!\n"%(cname, ecode)) + else: + elist.append((name, ename)) + + plist.sort() + elist.sort() + + if self.fp: + self.fp.write("%s._privpropdict = {\n"%cname) + for n in plist: + self.fp.write(" '%s' : _Prop_%s,\n"%(n, n)) + self.fp.write("}\n") + self.fp.write("%s._privelemdict = {\n"%cname) + for n, fulln in elist: + self.fp.write(" '%s' : %s,\n"%(n, fulln)) + self.fp.write("}\n") + + def compilecomparison(self, comp): + [name, code, comment] = comp + iname = identify(name) + self.namemappers[0].addnamecode('comparison', iname, code) + if self.fp: + self.fp.write("class %s(aetools.NComparison):\n" % iname) + self.fp.write(' """%s - %s """\n' % (ascii(name), ascii(comment))) + + def compileenumeration(self, enum): + [code, items] = enum + name = "_Enum_%s" % identify(code) + if self.fp: + self.fp.write("%s = {\n" % name) + for item in items: + self.compileenumerator(item) + self.fp.write("}\n\n") + self.namemappers[0].addnamecode('enum', name, code) + return code + + def compileenumerator(self, item): + [name, code, desc] = item + self.fp.write(" %r : %r,\t# %s\n" % (identify(name), code, ascii(desc))) + + def checkforenum(self, enum): + """This enum code is used by an event. Make sure it's available""" + name, fullname, module = self.findcodename('enum', enum) + if not name: + if self.fp: + self.fp.write("_Enum_%s = None # XXXX enum %s not found!!\n"%(identify(enum), ascii(enum))) + return + if module: + if self.fp: + self.fp.write("from %s import %s\n"%(module, name)) + + def dumpindex(self): + if not self.fp: + return + self.fp.write("\n#\n# Indices of types declared in this module\n#\n") + + self.fp.write("_classdeclarations = {\n") + classlist = self.namemappers[0].getall('class') + classlist.sort() + for k, v in classlist: + self.fp.write(" %r : %s,\n" % (k, v)) + self.fp.write("}\n") + + self.fp.write("\n_propdeclarations = {\n") + proplist = self.namemappers[0].getall('property') + proplist.sort() + for k, v in proplist: + self.fp.write(" %r : _Prop_%s,\n" % (k, v)) + self.fp.write("}\n") + + self.fp.write("\n_compdeclarations = {\n") + complist = self.namemappers[0].getall('comparison') + complist.sort() + for k, v in complist: + self.fp.write(" %r : %s,\n" % (k, v)) + self.fp.write("}\n") + + self.fp.write("\n_enumdeclarations = {\n") + enumlist = self.namemappers[0].getall('enum') + enumlist.sort() + for k, v in enumlist: + self.fp.write(" %r : %s,\n" % (k, v)) + self.fp.write("}\n") + +def compiledata(data): + [type, description, flags] = data + return "%r -- %r %s" % (type, description, compiledataflags(flags)) + +def is_null(data): + return data[0] == 'null' + +def is_optional(data): + return (data[2] & 0x8000) + +def is_enum(data): + return (data[2] & 0x2000) + +def getdatadoc(data): + [type, descr, flags] = data + if descr: + return ascii(descr) + if type == '****': + return 'anything' + if type == 'obj ': + return 'an AE object reference' + return "undocumented, typecode %r"%(type,) + +dataflagdict = {15: "optional", 14: "list", 13: "enum", 12: "mutable"} +def compiledataflags(flags): + bits = [] + for i in range(16): + if flags & (1<<i): + if i in dataflagdict.keys(): + bits.append(dataflagdict[i]) + else: + bits.append(repr(i)) + return '[%s]' % string.join(bits) + +def ascii(str): + """Return a string with all non-ascii characters hex-encoded""" + if type(str) != type(''): + return map(ascii, str) + rv = '' + for c in str: + if c in ('\t', '\n', '\r') or ' ' <= c < chr(0x7f): + rv = rv + c + else: + rv = rv + '\\' + 'x%02.2x' % ord(c) + return rv + +def identify(str): + """Turn any string into an identifier: + - replace space by _ + - replace other illegal chars by _xx_ (hex code) + - append _ if the result is a python keyword + """ + if not str: + return "empty_ae_name_" + rv = '' + ok = string.ascii_letters + '_' + ok2 = ok + string.digits + for c in str: + if c in ok: + rv = rv + c + elif c == ' ': + rv = rv + '_' + else: + rv = rv + '_%02.2x_'%ord(c) + ok = ok2 + if keyword.iskeyword(rv): + rv = rv + '_' + return rv + +# Call the main program + +if __name__ == '__main__': + main() + sys.exit(1) diff --git a/sys/lib/python/plat-mac/ic.py b/sys/lib/python/plat-mac/ic.py new file mode 100644 index 000000000..6575336af --- /dev/null +++ b/sys/lib/python/plat-mac/ic.py @@ -0,0 +1,268 @@ +"""IC wrapper module, based on Internet Config 1.3""" + +import icglue +import string +import sys +import os +from Carbon import Res +import Carbon.File +import macostools + +error=icglue.error + +# From ictypes.h: +icPrefNotFoundErr = -666 # preference not found (duh!) +icPermErr = -667 # cannot set preference +icPrefDataErr = -668 # problem with preference data +icInternalErr = -669 # hmm, this is not good +icTruncatedErr = -670 # more data was present than was returned +icNoMoreWritersErr = -671 # you cannot begin a write session because someone else is already doing it */ +icNothingToOverrideErr = -672 # no component for the override component to capture +icNoURLErr = -673 # no URL found +icConfigNotFoundErr = -674 # no configuration was found +icConfigInappropriateErr = -675 # incorrect manufacturer code + +ICattr_no_change = -1 + +icNoPerm = 0 +icReadOnlyPerm = 1 +icReadWritePerm = 2 +# End of ictypes.h + +class ICOpaqueData: + """An unparseable IC entry""" + def __init__(self, data): + self.data = data + + def __repr__(self): + return "ICOpaqueData(%r)"%(self.data,) + +_ICOpaqueDataType=type(ICOpaqueData('')) + +def _decode_default(data, key): + if len(data) == 0: + return data + if ord(data[0]) == len(data)-1: + # Assume Pstring + return data[1:] + return ICOpaqueData(data) + + +def _decode_multistr(data, key): + numstr = ord(data[0]) << 8 | ord(data[1]) + rv = [] + ptr = 2 + for i in range(numstr): + strlen = ord(data[ptr]) + str = data[ptr+1:ptr+strlen+1] + rv.append(str) + ptr = ptr + strlen + 1 + return rv + +def _decode_fontrecord(data, key): + size = ord(data[0]) << 8 | ord(data[1]) + face = ord(data[2]) + namelen = ord(data[4]) + return size, face, data[5:5+namelen] + +def _decode_boolean(data, key): + return ord(data[0]) + +def _decode_text(data, key): + return data + +def _decode_charset(data, key): + return data[:256], data[256:] + +def _decode_appspec(data, key): + namelen = ord(data[4]) + return data[0:4], data[5:5+namelen] + +def _code_default(data, key): + return chr(len(data)) + data + +def _code_multistr(data, key): + numstr = len(data) + rv = chr((numstr>>8) & 0xff) + chr(numstr & 0xff) + for i in data: + rv = rv + _code_default(i) + return rv + +def _code_fontrecord(data, key): + size, face, name = data + return chr((size>>8) & 0xff) + chr(size & 0xff) + chr(face & 0xff) + \ + chr(0) + _code_default(name) + +def _code_boolean(data, key): + print 'XXXX boolean:', repr(data) + return chr(data) + +def _code_text(data, key): + return data + +def _code_charset(data, key): + return data[0] + data[1] + +def _code_appspec(data, key): + return data[0] + _code_default(data[1]) + +_decoder_table = { + "ArchieAll" : (_decode_multistr , _code_multistr), + "UMichAll" : (_decode_multistr , _code_multistr), + "InfoMacAll" : (_decode_multistr , _code_multistr), + "ListFont" : (_decode_fontrecord , _code_fontrecord), + "ScreenFont" : (_decode_fontrecord , _code_fontrecord), + "PrinterFont" : (_decode_fontrecord , _code_fontrecord), +# "DownloadFolder" : (_decode_filespec , _code_filespec), + "Signature": (_decode_text , _code_text), + "Plan" : (_decode_text , _code_text), + "MailHeaders" : (_decode_text , _code_text), + "NewsHeaders" : (_decode_text , _code_text), +# "Mapping" + "CharacterSet" : (_decode_charset , _code_charset), + "Helper\245" : (_decode_appspec , _code_appspec), +# "Services" : (_decode_services, ????), + "NewMailFlashIcon" : (_decode_boolean , _code_boolean), + "NewMailDialog" : (_decode_boolean , _code_boolean), + "NewMailPlaySound" : (_decode_boolean , _code_boolean), +# "WebBackgroundColor" : _decode_color, + "NoProxyDomains" : (_decode_multistr , _code_multistr), + "UseHTTPProxy" : (_decode_boolean , _code_boolean), + "UseGopherProxy": (_decode_boolean , _code_boolean), + "UseFTPProxy" : (_decode_boolean , _code_boolean), + "UsePassiveFTP" : (_decode_boolean , _code_boolean), +} + +def _decode(data, key): + if '\245' in key: + key2 = key[:string.index(key, '\245')+1] + else: + key2 = key + if _decoder_table.has_key(key2): + decoder = _decoder_table[key2][0] + else: + decoder = _decode_default + return decoder(data, key) + +def _code(data, key): + if type(data) == _ICOpaqueDataType: + return data.data + if '\245' in key: + key2 = key[:string.index(key, '\245')+1] + else: + key2 = key + if _decoder_table.has_key(key2): + coder = _decoder_table[key2][1] + else: + coder = _code_default + return coder(data, key) + +class IC: + def __init__(self, signature='Pyth', ic=None): + if ic: + self.ic = ic + else: + self.ic = icglue.ICStart(signature) + if hasattr(self.ic, 'ICFindConfigFile'): + self.ic.ICFindConfigFile() + self.h = Res.Resource('') + + def keys(self): + rv = [] + self.ic.ICBegin(icReadOnlyPerm) + num = self.ic.ICCountPref() + for i in range(num): + rv.append(self.ic.ICGetIndPref(i+1)) + self.ic.ICEnd() + return rv + + def has_key(self, key): + return self.__contains__(key) + + def __contains__(self, key): + try: + dummy = self.ic.ICFindPrefHandle(key, self.h) + except icglue.error: + return 0 + return 1 + + def __getitem__(self, key): + attr = self.ic.ICFindPrefHandle(key, self.h) + return _decode(self.h.data, key) + + def __setitem__(self, key, value): + value = _code(value, key) + self.ic.ICSetPref(key, ICattr_no_change, value) + + def launchurl(self, url, hint=""): + # Work around a bug in ICLaunchURL: file:/foo does + # not work but file:///foo does. + if url[:6] == 'file:/' and url[6] != '/': + url = 'file:///' + url[6:] + self.ic.ICLaunchURL(hint, url, 0, len(url)) + + def parseurl(self, data, start=None, end=None, hint=""): + if start == None: + selStart = 0 + selEnd = len(data) + else: + selStart = selEnd = start + if end != None: + selEnd = end + selStart, selEnd = self.ic.ICParseURL(hint, data, selStart, selEnd, self.h) + return self.h.data, selStart, selEnd + + def mapfile(self, file): + if type(file) != type(''): + file = file.as_tuple()[2] + return self.ic.ICMapFilename(file) + + def maptypecreator(self, type, creator, filename=""): + return self.ic.ICMapTypeCreator(type, creator, filename) + + def settypecreator(self, file): + file = Carbon.File.pathname(file) + record = self.mapfile(os.path.split(file)[1]) + MacOS.SetCreatorAndType(file, record[2], record[1]) + macostools.touched(fss) + +# Convenience routines +_dft_ic = None + +def launchurl(url, hint=""): + global _dft_ic + if _dft_ic == None: _dft_ic = IC() + return _dft_ic.launchurl(url, hint) + +def parseurl(data, start=None, end=None, hint=""): + global _dft_ic + if _dft_ic == None: _dft_ic = IC() + return _dft_ic.parseurl(data, start, end, hint) + +def mapfile(filename): + global _dft_ic + if _dft_ic == None: _dft_ic = IC() + return _dft_ic.mapfile(filename) + +def maptypecreator(type, creator, filename=""): + global _dft_ic + if _dft_ic == None: _dft_ic = IC() + return _dft_ic.maptypecreator(type, creator, filename) + +def settypecreator(file): + global _dft_ic + if _dft_ic == None: _dft_ic = IC() + return _dft_ic.settypecreator(file) + +def _test(): + ic = IC() + for k in ic.keys(): + try: + v = ic[k] + except error: + v = '????' + print k, '\t', v + sys.exit(1) + +if __name__ == '__main__': + _test() diff --git a/sys/lib/python/plat-mac/icopen.py b/sys/lib/python/plat-mac/icopen.py new file mode 100644 index 000000000..eea608379 --- /dev/null +++ b/sys/lib/python/plat-mac/icopen.py @@ -0,0 +1,66 @@ +"""icopen patch + +OVERVIEW + +icopen patches MacOS Python to use the Internet Config file mappings to select +the type and creator for a file. + +Version 1 released to the public domain 3 November 1999 +by Oliver Steele (steele@cs.brandeis.edu). + +DETAILS + +This patch causes files created by Python's open(filename, 'w') command (and +by functions and scripts that call it) to set the type and creator of the file +to the type and creator associated with filename's extension (the +portion of the filename after the last period), according to Internet Config. +Thus, a script that creates a file foo.html will create one that opens in whatever +browser you've set to handle *.html files, and so on. + +Python IDE uses its own algorithm to select the type and creator for saved +editor windows, so this patch won't effect their types. + +As of System 8.6 at least, Internet Config is built into the system, and the +file mappings are accessed from the Advanced pane of the Internet control +panel. User Mode (in the Edit menu) needs to be set to Advanced in order to +access this pane. + +INSTALLATION + +Put this file in your Python path, and create a file named {Python}:sitecustomize.py +that contains: + import icopen + +(If {Python}:sitecustomizer.py already exists, just add the 'import' line to it.) + +The next time you launch PythonInterpreter or Python IDE, the patch will take +effect. +""" + +import __builtin__ + +_builtin_open = globals().get('_builtin_open', __builtin__.open) + +def _open_with_typer(*args): + file = _builtin_open(*args) + filename = args[0] + mode = 'r' + if args[1:]: + mode = args[1] + if mode[0] == 'w': + from ic import error, settypecreator + try: + settypecreator(filename) + except error: + pass + return file + +__builtin__.open = _open_with_typer + +""" +open('test.py') +_open_with_typer('test.py', 'w') +_open_with_typer('test.txt', 'w') +_open_with_typer('test.html', 'w') +_open_with_typer('test.foo', 'w') +""" diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/CodeWarrior_suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/CodeWarrior_suite.py new file mode 100644 index 000000000..0fd562b95 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/CodeWarrior_suite.py @@ -0,0 +1,682 @@ +"""Suite CodeWarrior suite: Terms for scripting the CodeWarrior IDE +Level 0, version 0 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Metrowerks CodeWarrior 7.0/Metrowerks CodeWarrior/CodeWarrior IDE 4.2.5 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'CWIE' + +class CodeWarrior_suite_Events: + + _argmap_add = { + 'new' : 'kocl', + 'with_data' : 'data', + 'to_targets' : 'TTGT', + 'to_group' : 'TGRP', + } + + def add(self, _object, _attributes={}, **_arguments): + """add: add elements to a project or target + Required argument: an AE object reference + Keyword argument new: the class of the new element or elements to add + Keyword argument with_data: the initial data for the element or elements + Keyword argument to_targets: the targets to which the new element or elements will be added + Keyword argument to_group: the group to which the new element or elements will be added + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'ADDF' + + aetools.keysubst(_arguments, self._argmap_add) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def build(self, _no_object=None, _attributes={}, **_arguments): + """build: build a project or target (equivalent of the Make menu command) + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'MAKE' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def check(self, _object=None, _attributes={}, **_arguments): + """check: check the syntax of a file in a project or target + Required argument: the file or files to be checked + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'CHEK' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def compile_file(self, _object=None, _attributes={}, **_arguments): + """compile file: compile a file in a project or target + Required argument: the file or files to be compiled + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'COMP' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def disassemble_file(self, _object=None, _attributes={}, **_arguments): + """disassemble file: disassemble a file in a project or target + Required argument: the file or files to be disassembled + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'DASM' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_export = { + 'in_' : 'kfil', + } + + def export(self, _no_object=None, _attributes={}, **_arguments): + """export: Export the project file as an XML file + Keyword argument in_: the XML file in which to export the project + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'EXPT' + + aetools.keysubst(_arguments, self._argmap_export) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def remove_object_code(self, _no_object=None, _attributes={}, **_arguments): + """remove object code: remove object code from a project or target + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'RMOB' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def remove_target_files(self, _object, _attributes={}, **_arguments): + """remove target files: remove files from a target + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'RMFL' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def run_target(self, _no_object=None, _attributes={}, **_arguments): + """run target: run a project or target + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'RUN ' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def touch_file(self, _object=None, _attributes={}, **_arguments): + """touch file: touch a file in a project or target for compilation + Required argument: the file or files to be touched + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'TOCH' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def update(self, _no_object=None, _attributes={}, **_arguments): + """update: bring a project or target up to date + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'CWIE' + _subcode = 'UP2D' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class single_class_browser(aetools.ComponentItem): + """single class browser - a single class browser """ + want = '1BRW' +class _Prop_inherits(aetools.NProperty): + """inherits - all properties and elements of the given class are inherited by this class. """ + which = 'c@#^' + want = 'TXTD' + +single_class_browsers = single_class_browser + +class single_class_hierarchy(aetools.ComponentItem): + """single class hierarchy - a single class hierarchy document """ + want = '1HIR' + +single_class_hierarchies = single_class_hierarchy + +class class_browser(aetools.ComponentItem): + """class browser - a class browser """ + want = 'BROW' + +class_browsers = class_browser + +class file_compare_document(aetools.ComponentItem): + """file compare document - a file compare document """ + want = 'COMP' + +file_compare_documents = file_compare_document + +class catalog_document(aetools.ComponentItem): + """catalog document - a browser catalog document """ + want = 'CTLG' + +catalog_documents = catalog_document + +class editor_document(aetools.ComponentItem): + """editor document - an editor document """ + want = 'EDIT' + +editor_documents = editor_document + +class class_hierarchy(aetools.ComponentItem): + """class hierarchy - a class hierarchy document """ + want = 'HIER' + +class_hierarchies = class_hierarchy + +class project_inspector(aetools.ComponentItem): + """project inspector - the project inspector """ + want = 'INSP' + +project_inspectors = project_inspector + +class message_document(aetools.ComponentItem): + """message document - a message document """ + want = 'MSSG' + +message_documents = message_document + +class build_progress_document(aetools.ComponentItem): + """build progress document - a build progress document """ + want = 'PRGS' + +build_progress_documents = build_progress_document + +class project_document(aetools.ComponentItem): + """project document - a project document """ + want = 'PRJD' +class _Prop_current_target(aetools.NProperty): + """current target - the current target """ + which = 'CURT' + want = 'TRGT' +# element 'TRGT' as ['indx', 'name', 'test', 'rang'] + +project_documents = project_document + +class subtarget(aetools.ComponentItem): + """subtarget - a target that is prerequisite for another target """ + want = 'SBTG' +class _Prop_link_against_output(aetools.NProperty): + """link against output - is the output of this subtarget linked into its dependent target? """ + which = 'LNKO' + want = 'bool' +class _Prop_target(aetools.NProperty): + """target - the target that is dependent on this subtarget """ + which = 'TrgT' + want = 'TRGT' + +subtargets = subtarget + +class target_file(aetools.ComponentItem): + """target file - a source or header file in a target """ + want = 'SRCF' +class _Prop_code_size(aetools.NProperty): + """code size - the size of the code (in bytes) produced by compiling this source file """ + which = 'CSZE' + want = 'long' +class _Prop_compiled_date(aetools.NProperty): + """compiled date - the date and this source file was last compiled """ + which = 'CMPD' + want = 'ldt ' +class _Prop_data_size(aetools.NProperty): + """data size - the size of the date (in bytes) produced by compiling this source file """ + which = 'DSZE' + want = 'long' +class _Prop_debug(aetools.NProperty): + """debug - is debugging information generated for this source file? """ + which = 'DBUG' + want = 'bool' +class _Prop_dependents(aetools.NProperty): + """dependents - the source files that need this source file in order to build """ + which = 'DPND' + want = 'list' +class _Prop_id(aetools.NProperty): + """id - the unique ID number of the target file """ + which = 'ID ' + want = 'long' +class _Prop_init_before(aetools.NProperty): + """init before - is the \xd4initialize before\xd5 flag set for this shared library? """ + which = 'INIT' + want = 'bool' +class _Prop_link_index(aetools.NProperty): + """link index - the index of the source file in its target\xd5s link order (-1 if source file is not in link order) """ + which = 'LIDX' + want = 'long' +class _Prop_linked(aetools.NProperty): + """linked - is the source file in the link order of its target? """ + which = 'LINK' + want = 'bool' +class _Prop_location(aetools.NProperty): + """location - the location of the target file on disk """ + which = 'FILE' + want = 'fss ' +class _Prop_merge_output(aetools.NProperty): + """merge output - is this shared library merged into another code fragment? """ + which = 'MRGE' + want = 'bool' +class _Prop_modified_date(aetools.NProperty): + """modified date - the date and time this source file was last modified """ + which = 'MODD' + want = 'ldt ' +class _Prop_path(aetools.NProperty): + """path - the path of the source file on disk """ + which = 'Path' + want = 'itxt' +class _Prop_prerequisites(aetools.NProperty): + """prerequisites - the source files needed to build this source file """ + which = 'PRER' + want = 'list' +class _Prop_type(aetools.NProperty): + """type - the type of source file """ + which = 'FTYP' + want = 'FTYP' +class _Prop_weak_link(aetools.NProperty): + """weak link - is this shared library linked weakly? """ + which = 'WEAK' + want = 'bool' + +target_files = target_file + +class symbol_browser(aetools.ComponentItem): + """symbol browser - a symbol browser """ + want = 'SYMB' + +symbol_browsers = symbol_browser + +class ToolServer_worksheet(aetools.ComponentItem): + """ToolServer worksheet - a ToolServer worksheet """ + want = 'TOOL' + +ToolServer_worksheets = ToolServer_worksheet + +class target(aetools.ComponentItem): + """target - a target in a project """ + want = 'TRGT' +class _Prop_name(aetools.NProperty): + """name - """ + which = 'pnam' + want = 'itxt' +class _Prop_project_document(aetools.NProperty): + """project document - the project document that contains this target """ + which = 'PrjD' + want = 'PRJD' +# element 'SBTG' as ['indx', 'test', 'rang'] +# element 'SRCF' as ['indx', 'test', 'rang'] + +targets = target + +class text_document(aetools.ComponentItem): + """text document - a document that contains text """ + want = 'TXTD' +class _Prop_modified(aetools.NProperty): + """modified - Has the document been modified since the last save? """ + which = 'imod' + want = 'bool' +class _Prop_selection(aetools.NProperty): + """selection - the selection visible to the user """ + which = 'sele' + want = 'csel' +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cins' as ['rele'] +# element 'clin' as ['indx', 'rang', 'rele'] +# element 'ctxt' as ['rang'] + +text_documents = text_document +single_class_browser._superclassnames = ['text_document'] +single_class_browser._privpropdict = { + 'inherits' : _Prop_inherits, +} +single_class_browser._privelemdict = { +} +import Standard_Suite +single_class_hierarchy._superclassnames = ['document'] +single_class_hierarchy._privpropdict = { + 'inherits' : _Prop_inherits, +} +single_class_hierarchy._privelemdict = { +} +class_browser._superclassnames = ['text_document'] +class_browser._privpropdict = { + 'inherits' : _Prop_inherits, +} +class_browser._privelemdict = { +} +file_compare_document._superclassnames = ['text_document'] +file_compare_document._privpropdict = { + 'inherits' : _Prop_inherits, +} +file_compare_document._privelemdict = { +} +catalog_document._superclassnames = ['text_document'] +catalog_document._privpropdict = { + 'inherits' : _Prop_inherits, +} +catalog_document._privelemdict = { +} +editor_document._superclassnames = ['text_document'] +editor_document._privpropdict = { + 'inherits' : _Prop_inherits, +} +editor_document._privelemdict = { +} +class_hierarchy._superclassnames = ['document'] +class_hierarchy._privpropdict = { + 'inherits' : _Prop_inherits, +} +class_hierarchy._privelemdict = { +} +project_inspector._superclassnames = ['document'] +project_inspector._privpropdict = { + 'inherits' : _Prop_inherits, +} +project_inspector._privelemdict = { +} +message_document._superclassnames = ['text_document'] +message_document._privpropdict = { + 'inherits' : _Prop_inherits, +} +message_document._privelemdict = { +} +build_progress_document._superclassnames = ['document'] +build_progress_document._privpropdict = { + 'inherits' : _Prop_inherits, +} +build_progress_document._privelemdict = { +} +project_document._superclassnames = ['document'] +project_document._privpropdict = { + 'current_target' : _Prop_current_target, + 'inherits' : _Prop_inherits, +} +project_document._privelemdict = { + 'target' : target, +} +subtarget._superclassnames = ['target'] +subtarget._privpropdict = { + 'inherits' : _Prop_inherits, + 'link_against_output' : _Prop_link_against_output, + 'target' : _Prop_target, +} +subtarget._privelemdict = { +} +target_file._superclassnames = [] +target_file._privpropdict = { + 'code_size' : _Prop_code_size, + 'compiled_date' : _Prop_compiled_date, + 'data_size' : _Prop_data_size, + 'debug' : _Prop_debug, + 'dependents' : _Prop_dependents, + 'id' : _Prop_id, + 'init_before' : _Prop_init_before, + 'link_index' : _Prop_link_index, + 'linked' : _Prop_linked, + 'location' : _Prop_location, + 'merge_output' : _Prop_merge_output, + 'modified_date' : _Prop_modified_date, + 'path' : _Prop_path, + 'prerequisites' : _Prop_prerequisites, + 'type' : _Prop_type, + 'weak_link' : _Prop_weak_link, +} +target_file._privelemdict = { +} +symbol_browser._superclassnames = ['text_document'] +symbol_browser._privpropdict = { + 'inherits' : _Prop_inherits, +} +symbol_browser._privelemdict = { +} +ToolServer_worksheet._superclassnames = ['text_document'] +ToolServer_worksheet._privpropdict = { + 'inherits' : _Prop_inherits, +} +ToolServer_worksheet._privelemdict = { +} +target._superclassnames = [] +target._privpropdict = { + 'name' : _Prop_name, + 'project_document' : _Prop_project_document, +} +target._privelemdict = { + 'subtarget' : subtarget, + 'target_file' : target_file, +} +text_document._superclassnames = ['document'] +text_document._privpropdict = { + 'inherits' : _Prop_inherits, + 'modified' : _Prop_modified, + 'selection' : _Prop_selection, +} +text_document._privelemdict = { + 'character' : Standard_Suite.character, + 'insertion_point' : Standard_Suite.insertion_point, + 'line' : Standard_Suite.line, + 'text' : Standard_Suite.text, +} +_Enum_DKND = { + 'project' : 'PRJD', # a project document + 'editor_document' : 'EDIT', # an editor document + 'message' : 'MSSG', # a message document + 'file_compare' : 'COMP', # a file compare document + 'catalog_document' : 'CTLG', # a browser catalog + 'class_browser' : 'BROW', # a class browser document + 'single_class_browser' : '1BRW', # a single class browser document + 'symbol_browser' : 'SYMB', # a symbol browser document + 'class_hierarchy' : 'HIER', # a class hierarchy document + 'single_class_hierarchy' : '1HIR', # a single class hierarchy document + 'project_inspector' : 'INSP', # a project inspector + 'ToolServer_worksheet' : 'TOOL', # the ToolServer worksheet + 'build_progress_document' : 'PRGS', # the build progress window +} + +_Enum_FTYP = { + 'library_file' : 'LIBF', # a library file + 'project_file' : 'PRJF', # a project file + 'resource_file' : 'RESF', # a resource file + 'text_file' : 'TXTF', # a text file + 'unknown_file' : 'UNKN', # unknown file type +} + +_Enum_Inte = { + 'never_interact' : 'eNvr', # never allow user interactions + 'interact_with_self' : 'eInS', # allow user interaction only when an AppleEvent is sent from within CodeWarrior + 'interact_with_local' : 'eInL', # allow user interaction when AppleEvents are sent from applications on the same machine (default) + 'interact_with_all' : 'eInA', # allow user interaction from both local and remote AppleEvents +} + +_Enum_PERM = { + 'read_write' : 'RdWr', # the file is open with read/write permission + 'read_only' : 'Read', # the file is open with read/only permission + 'checked_out_read_write' : 'CkRW', # the file is checked out with read/write permission + 'checked_out_read_only' : 'CkRO', # the file is checked out with read/only permission + 'checked_out_read_modify' : 'CkRM', # the file is checked out with read/modify permission + 'locked' : 'Lock', # the file is locked on disk + 'none' : 'LNNO', # the file is new +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + '1BRW' : single_class_browser, + '1HIR' : single_class_hierarchy, + 'BROW' : class_browser, + 'COMP' : file_compare_document, + 'CTLG' : catalog_document, + 'EDIT' : editor_document, + 'HIER' : class_hierarchy, + 'INSP' : project_inspector, + 'MSSG' : message_document, + 'PRGS' : build_progress_document, + 'PRJD' : project_document, + 'SBTG' : subtarget, + 'SRCF' : target_file, + 'SYMB' : symbol_browser, + 'TOOL' : ToolServer_worksheet, + 'TRGT' : target, + 'TXTD' : text_document, +} + +_propdeclarations = { + 'CMPD' : _Prop_compiled_date, + 'CSZE' : _Prop_code_size, + 'CURT' : _Prop_current_target, + 'DBUG' : _Prop_debug, + 'DPND' : _Prop_dependents, + 'DSZE' : _Prop_data_size, + 'FILE' : _Prop_location, + 'FTYP' : _Prop_type, + 'ID ' : _Prop_id, + 'INIT' : _Prop_init_before, + 'LIDX' : _Prop_link_index, + 'LINK' : _Prop_linked, + 'LNKO' : _Prop_link_against_output, + 'MODD' : _Prop_modified_date, + 'MRGE' : _Prop_merge_output, + 'PRER' : _Prop_prerequisites, + 'Path' : _Prop_path, + 'PrjD' : _Prop_project_document, + 'TrgT' : _Prop_target, + 'WEAK' : _Prop_weak_link, + 'c@#^' : _Prop_inherits, + 'imod' : _Prop_modified, + 'pnam' : _Prop_name, + 'sele' : _Prop_selection, +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'DKND' : _Enum_DKND, + 'FTYP' : _Enum_FTYP, + 'Inte' : _Enum_Inte, + 'PERM' : _Enum_PERM, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/Metrowerks_Shell_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/Metrowerks_Shell_Suite.py new file mode 100644 index 000000000..909cdc0fe --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/Metrowerks_Shell_Suite.py @@ -0,0 +1,2373 @@ +"""Suite Metrowerks Shell Suite: Events supported by the Metrowerks Project Shell +Level 1, version 1 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Metrowerks CodeWarrior 7.0/Metrowerks CodeWarrior/CodeWarrior IDE 4.2.5 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'MMPR' + +class Metrowerks_Shell_Suite_Events: + + _argmap_Add_Files = { + 'To_Segment' : 'Segm', + } + + def Add_Files(self, _object, _attributes={}, **_arguments): + """Add Files: Add the specified file(s) to the current project + Required argument: List of files to add + Keyword argument To_Segment: Segment number into which to add the file(s) + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Error code for each file added + """ + _code = 'MMPR' + _subcode = 'AddF' + + aetools.keysubst(_arguments, self._argmap_Add_Files) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Check_Syntax = { + 'ExternalEditor' : 'Errs', + } + + def Check_Syntax(self, _object, _attributes={}, **_arguments): + """Check Syntax: Check the syntax of the specified file(s) + Required argument: List of files to check the syntax of + Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller? + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Errors for each file whose syntax was checked + """ + _code = 'MMPR' + _subcode = 'Chek' + + aetools.keysubst(_arguments, self._argmap_Check_Syntax) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Close_Project(self, _no_object=None, _attributes={}, **_arguments): + """Close Project: Close the current project + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'ClsP' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Close_Window = { + 'Saving' : 'savo', + } + + def Close_Window(self, _object, _attributes={}, **_arguments): + """Close Window: Close the windows showing the specified files + Required argument: The files to close + Keyword argument Saving: Whether to save changes to each file before closing its window + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'ClsW' + + aetools.keysubst(_arguments, self._argmap_Close_Window) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'savo', _Enum_savo) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Compile = { + 'ExternalEditor' : 'Errs', + } + + def Compile(self, _object, _attributes={}, **_arguments): + """Compile: Compile the specified file(s) + Required argument: List of files to compile + Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller? + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Errors for each file compiled + """ + _code = 'MMPR' + _subcode = 'Comp' + + aetools.keysubst(_arguments, self._argmap_Compile) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Create_Project = { + 'from_stationery' : 'Tmpl', + } + + def Create_Project(self, _object, _attributes={}, **_arguments): + """Create Project: Create a new project file + Required argument: New project file specifier + Keyword argument from_stationery: undocumented, typecode 'alis' + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'NewP' + + aetools.keysubst(_arguments, self._argmap_Create_Project) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Get_Definition(self, _object, _attributes={}, **_arguments): + """Get Definition: Returns the location(s) of a globally scoped function or data object. + Required argument: undocumented, typecode 'TEXT' + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: undocumented, typecode 'FDef' + """ + _code = 'MMPR' + _subcode = 'GDef' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Get_Open_Documents(self, _no_object=None, _attributes={}, **_arguments): + """Get Open Documents: Returns the list of open documents + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: The list of documents + """ + _code = 'MMPR' + _subcode = 'GDoc' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Get_Preferences = { + 'of' : 'PRec', + 'from_panel' : 'PNam', + } + + def Get_Preferences(self, _no_object=None, _attributes={}, **_arguments): + """Get Preferences: Get the preferences for the current project + Keyword argument of: Names of requested preferences + Keyword argument from_panel: Name of the preference panel + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: The requested preferences + """ + _code = 'MMPR' + _subcode = 'Gref' + + aetools.keysubst(_arguments, self._argmap_Get_Preferences) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Get_Project_File = { + 'Segment' : 'Segm', + } + + def Get_Project_File(self, _object, _attributes={}, **_arguments): + """Get Project File: Returns a description of a file in the project window. + Required argument: The index of the file within its segment. + Keyword argument Segment: The segment containing the file. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: undocumented, typecode 'SrcF' + """ + _code = 'MMPR' + _subcode = 'GFil' + + aetools.keysubst(_arguments, self._argmap_Get_Project_File) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Get_Project_Specifier(self, _no_object=None, _attributes={}, **_arguments): + """Get Project Specifier: Return the File Specifier for the current project + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: File Specifier for the current project + """ + _code = 'MMPR' + _subcode = 'GetP' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Get_Segments(self, _no_object=None, _attributes={}, **_arguments): + """Get Segments: Returns a description of each segment in the project. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: undocumented, typecode 'Seg ' + """ + _code = 'MMPR' + _subcode = 'GSeg' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Get_member_function_names(self, _object, _attributes={}, **_arguments): + """Get member function names: Returns a list containing the names of all the member functions of a class object + Required argument: must be a class object + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: undocumented, typecode 'list' + """ + _code = 'MMPR' + _subcode = 'MbFN' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Get_nonsimple_classes(self, _no_object=None, _attributes={}, **_arguments): + """Get nonsimple classes: Returns an alphabetical list of classes with member functions, bases classes, or subclasses + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: undocumented, typecode 'list' + """ + _code = 'MMPR' + _subcode = 'NsCl' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Goto_Function(self, _object, _attributes={}, **_arguments): + """Goto Function: Goto Specified Function Name + Required argument: undocumented, typecode 'TEXT' + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'GoFn' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Goto_Line(self, _object, _attributes={}, **_arguments): + """Goto Line: Goto Specified Line Number + Required argument: The requested source file line number + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'GoLn' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Is_In_Project(self, _object, _attributes={}, **_arguments): + """Is In Project: Whether or not the specified file(s) is in the current project + Required argument: List of files to check for project membership + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Result code for each file + """ + _code = 'MMPR' + _subcode = 'FInP' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Make_Project = { + 'ExternalEditor' : 'Errs', + } + + def Make_Project(self, _no_object=None, _attributes={}, **_arguments): + """Make Project: Make the current project + Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller? + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Errors that occurred while making the project + """ + _code = 'MMPR' + _subcode = 'Make' + + aetools.keysubst(_arguments, self._argmap_Make_Project) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Open_browser(self, _object, _attributes={}, **_arguments): + """Open browser: Display a class, member function, or data member object in a single class browser window + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'Brow' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Precompile = { + 'Saving_As' : 'Targ', + 'ExternalEditor' : 'Errs', + } + + def Precompile(self, _object, _attributes={}, **_arguments): + """Precompile: Precompile the specified file to the specified destination file + Required argument: File to precompile + Keyword argument Saving_As: Destination file for precompiled header + Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller? + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Errors for the precompiled file + """ + _code = 'MMPR' + _subcode = 'PreC' + + aetools.keysubst(_arguments, self._argmap_Precompile) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Preprocess = { + 'ExternalEditor' : 'Errs', + } + + def Preprocess(self, _object, _attributes={}, **_arguments): + """Preprocess: Preprocesses the specified file(s) + Required argument: undocumented, typecode 'alis' + Keyword argument ExternalEditor: undocumented, typecode 'bool' + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Errors for each preprocessed file + """ + _code = 'MMPR' + _subcode = 'PreP' + + aetools.keysubst(_arguments, self._argmap_Preprocess) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Remove_Binaries(self, _no_object=None, _attributes={}, **_arguments): + """Remove Binaries: Remove the binary object code from the current project + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'RemB' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Remove_Files(self, _object, _attributes={}, **_arguments): + """Remove Files: Remove the specified file(s) from the current project + Required argument: List of files to remove + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Error code for each file removed + """ + _code = 'MMPR' + _subcode = 'RemF' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Reset_File_Paths(self, _no_object=None, _attributes={}, **_arguments): + """Reset File Paths: Resets access paths for all files belonging to open project. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'ReFP' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Run_Project = { + 'ExternalEditor' : 'Errs', + 'SourceDebugger' : 'DeBg', + } + + def Run_Project(self, _no_object=None, _attributes={}, **_arguments): + """Run Project: Run the current project + Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller? + Keyword argument SourceDebugger: Run the application under the control of the source-level debugger + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Errors that occurred when running the project + """ + _code = 'MMPR' + _subcode = 'RunP' + + aetools.keysubst(_arguments, self._argmap_Run_Project) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Save_Error_Window_As(self, _object, _attributes={}, **_arguments): + """Save Error Window As: Saves the Errors & Warnings window as a text file + Required argument: Destination file for Save Message Window As + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'SvMs' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Set_Current_Target(self, _object=None, _attributes={}, **_arguments): + """Set Current Target: Set the current target of a project + Required argument: Name of target + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'STrg' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Set_Default_Project(self, _object, _attributes={}, **_arguments): + """Set Default Project: Set the default project + Required argument: Name of project + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'SDfP' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Set_Modification_Date = { + 'to' : 'MDat', + } + + def Set_Modification_Date(self, _object, _attributes={}, **_arguments): + """Set Modification Date: Changes the internal modification date of the specified file(s) + Required argument: List of files + Keyword argument to: undocumented, typecode 'ldt ' + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Error code for each modified file + """ + _code = 'MMPR' + _subcode = 'SMod' + + aetools.keysubst(_arguments, self._argmap_Set_Modification_Date) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Set_Preferences = { + 'of_panel' : 'PNam', + 'to' : 'PRec', + } + + def Set_Preferences(self, _no_object=None, _attributes={}, **_arguments): + """Set Preferences: Set the preferences for the current project + Keyword argument of_panel: Name of the preference panel + Keyword argument to: Preferences settings + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'Pref' + + aetools.keysubst(_arguments, self._argmap_Set_Preferences) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Set_Project_File = { + 'to' : 'SrcS', + } + + def Set_Project_File(self, _object, _attributes={}, **_arguments): + """Set Project File: Changes the settings for a given file in the project. + Required argument: The name of the file + Keyword argument to: The new settings for the file + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'SFil' + + aetools.keysubst(_arguments, self._argmap_Set_Project_File) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Set_Segment = { + 'to' : 'Segm', + } + + def Set_Segment(self, _object, _attributes={}, **_arguments): + """Set Segment: Changes the name and attributes of a segment. + Required argument: The segment to change + Keyword argument to: The new name and attributes for the segment. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MMPR' + _subcode = 'SSeg' + + aetools.keysubst(_arguments, self._argmap_Set_Segment) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Touch(self, _object, _attributes={}, **_arguments): + """Touch: Force recompilation of the specified file(s) + Required argument: List of files to compile + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Error code for each file touched + """ + _code = 'MMPR' + _subcode = 'Toch' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Update_Project = { + 'ExternalEditor' : 'Errs', + } + + def Update_Project(self, _no_object=None, _attributes={}, **_arguments): + """Update Project: Update the current project + Keyword argument ExternalEditor: Should the contents of the message window be returned to the caller? + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Errors that occurred while updating the project + """ + _code = 'MMPR' + _subcode = 'UpdP' + + aetools.keysubst(_arguments, self._argmap_Update_Project) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class Browser_Coloring(aetools.ComponentItem): + """Browser Coloring - Colors for Browser symbols. """ + want = 'BRKW' +class _Prop_Browser_Keywords(aetools.NProperty): + """Browser Keywords - Mark Browser symbols with color. """ + which = 'BW00' + want = 'bool' +class _Prop_Classes_Color(aetools.NProperty): + """Classes Color - The color for classes. """ + which = 'BW01' + want = 'cRGB' +class _Prop_Constants_Color(aetools.NProperty): + """Constants Color - The color for constants. """ + which = 'BW02' + want = 'cRGB' +class _Prop_Enums_Color(aetools.NProperty): + """Enums Color - The color for enums. """ + which = 'BW03' + want = 'cRGB' +class _Prop_Functions_Color(aetools.NProperty): + """Functions Color - Set color for functions. """ + which = 'BW04' + want = 'cRGB' +class _Prop_Globals_Color(aetools.NProperty): + """Globals Color - The color for globals """ + which = 'BW05' + want = 'cRGB' +class _Prop_Macros_Color(aetools.NProperty): + """Macros Color - The color for macros. """ + which = 'BW06' + want = 'cRGB' +class _Prop_Template_Commands_in_Menu(aetools.NProperty): + """Template Commands in Menu - Include template commands in context menus """ + which = 'BW10' + want = 'bool' +class _Prop_Templates_Color(aetools.NProperty): + """Templates Color - Set color for templates. """ + which = 'BW07' + want = 'cRGB' +class _Prop_Typedefs_Color(aetools.NProperty): + """Typedefs Color - The color for typedefs. """ + which = 'BW08' + want = 'cRGB' + +class Build_Settings(aetools.ComponentItem): + """Build Settings - Build Settings preferences. """ + want = 'BSTG' +class _Prop_Build_Before_Running(aetools.NProperty): + """Build Before Running - Build the target before running. """ + which = 'BX04' + want = 'BXbr' +class _Prop_Compiler_Thread_Stack_Size(aetools.NProperty): + """Compiler Thread Stack Size - Compiler Thread Stack Size """ + which = 'BX06' + want = 'long' +class _Prop_Completion_Sound(aetools.NProperty): + """Completion Sound - Play a sound when finished a Bring Up To Date or Make command. """ + which = 'BX01' + want = 'bool' +class _Prop_Failure_Sound(aetools.NProperty): + """Failure Sound - The sound CodeWarrior plays when it cannot finish a Bring Up To Date or Make command. """ + which = 'BX03' + want = 'TEXT' +class _Prop_Include_Cache_Size(aetools.NProperty): + """Include Cache Size - Include file cache size. """ + which = 'BX05' + want = 'long' +class _Prop_Save_Before_Building(aetools.NProperty): + """Save Before Building - Save open editor files before build operations """ + which = 'BX07' + want = 'bool' +class _Prop_Success_Sound(aetools.NProperty): + """Success Sound - The sound CodeWarrior plays when it successfully finishes a Bring Up To Date or Make command. """ + which = 'BX02' + want = 'TEXT' + +class base_class(aetools.ComponentItem): + """base class - A base class or super class of a class """ + want = 'BsCl' +class _Prop_access(aetools.NProperty): + """access - """ + which = 'Acce' + want = 'Acce' +class _Prop_class_(aetools.NProperty): + """class - The class object corresponding to this base class """ + which = 'Clas' + want = 'obj ' +class _Prop_virtual(aetools.NProperty): + """virtual - """ + which = 'Virt' + want = 'bool' + +base_classes = base_class + +class Custom_Keywords(aetools.ComponentItem): + """Custom Keywords - """ + want = 'CUKW' +class _Prop_Custom_Color_1(aetools.NProperty): + """Custom Color 1 - The color for the first set of custom keywords. """ + which = 'GH05' + want = 'cRGB' +class _Prop_Custom_Color_2(aetools.NProperty): + """Custom Color 2 - The color for the second set custom keywords. """ + which = 'GH06' + want = 'cRGB' +class _Prop_Custom_Color_3(aetools.NProperty): + """Custom Color 3 - The color for the third set of custom keywords. """ + which = 'GH07' + want = 'cRGB' +class _Prop_Custom_Color_4(aetools.NProperty): + """Custom Color 4 - The color for the fourth set of custom keywords. """ + which = 'GH08' + want = 'cRGB' + +class browser_catalog(aetools.ComponentItem): + """browser catalog - The browser symbol catalog for the current project """ + want = 'Cata' +# element 'Clas' as ['indx', 'name'] + +class class_(aetools.ComponentItem): + """class - A class, struct, or record type in the current project. """ + want = 'Clas' +class _Prop_all_subclasses(aetools.NProperty): + """all subclasses - the classes directly or indirectly derived from this class """ + which = 'SubA' + want = 'Clas' +class _Prop_declaration_end_offset(aetools.NProperty): + """declaration end offset - End of class declaration """ + which = 'DcEn' + want = 'long' +class _Prop_declaration_file(aetools.NProperty): + """declaration file - Source file containing the class declaration """ + which = 'DcFl' + want = 'fss ' +class _Prop_declaration_start_offset(aetools.NProperty): + """declaration start offset - Start of class declaration source code """ + which = 'DcSt' + want = 'long' +class _Prop_language(aetools.NProperty): + """language - Implementation language of this class """ + which = 'Lang' + want = 'Lang' +class _Prop_name(aetools.NProperty): + """name - """ + which = 'pnam' + want = 'TEXT' +class _Prop_subclasses(aetools.NProperty): + """subclasses - the immediate subclasses of this class """ + which = 'SubC' + want = 'Clas' +# element 'BsCl' as ['indx'] +# element 'DtMb' as ['indx', 'name'] +# element 'MbFn' as ['indx', 'name'] + +classes = class_ + +class Debugger_Display(aetools.ComponentItem): + """Debugger Display - Debugger Display preferences """ + want = 'DbDS' +class _Prop_Default_Array_Size(aetools.NProperty): + """Default Array Size - Controls whether CodeWarrior uses its own integrated editor or an external application for editing text files. """ + which = 'Db08' + want = 'shor' +class _Prop_Show_As_Decimal(aetools.NProperty): + """Show As Decimal - Show variable values as decimal by default """ + which = 'Db10' + want = 'bool' +class _Prop_Show_Locals(aetools.NProperty): + """Show Locals - Show locals by default """ + which = 'Db09' + want = 'bool' +class _Prop_Show_Variable_Types(aetools.NProperty): + """Show Variable Types - Show variable types by default. """ + which = 'Db01' + want = 'bool' +class _Prop_Sort_By_Method(aetools.NProperty): + """Sort By Method - Sort functions by method. """ + which = 'Db02' + want = 'bool' +class _Prop_Threads_in_Window(aetools.NProperty): + """Threads in Window - Show threads in separate windows. """ + which = 'Db04' + want = 'bool' +class _Prop_Use_RTTI(aetools.NProperty): + """Use RTTI - Enable RunTime Type Information. """ + which = 'Db03' + want = 'bool' +class _Prop_Variable_Changed_Hilite(aetools.NProperty): + """Variable Changed Hilite - Variable changed hilite color. """ + which = 'Db07' + want = 'cRGB' +class _Prop_Variable_Hints(aetools.NProperty): + """Variable Hints - Show variable hints. """ + which = 'Db05' + want = 'bool' +class _Prop_Watchpoint_Hilite(aetools.NProperty): + """Watchpoint Hilite - Watchpoint hilite color. """ + which = 'Db06' + want = 'cRGB' + +class Debugger_Global(aetools.ComponentItem): + """Debugger Global - Debugger Global preferences """ + want = 'DbGL' +class _Prop_Auto_Target_Libraries(aetools.NProperty): + """Auto Target Libraries - Automatically target libraries when debugging """ + which = 'Dg11' + want = 'bool' +class _Prop_Cache_Edited_Files(aetools.NProperty): + """Cache Edited Files - Cache edit files between debug sessions """ + which = 'Dg12' + want = 'bool' +class _Prop_Confirm_Kill(aetools.NProperty): + """Confirm Kill - Confirm the \xd4killing\xd5 of the process. """ + which = 'Dg04' + want = 'bool' +class _Prop_Dont_Step_in_Runtime(aetools.NProperty): + """Dont Step in Runtime - Don\xd5t step into runtime code when debugging. """ + which = 'Dg07' + want = 'bool' +class _Prop_File_Cache_Duration(aetools.NProperty): + """File Cache Duration - Duration to keep files in cache (in days) """ + which = 'Dg13' + want = 'shor' +class _Prop_Ignore_Mod_Dates(aetools.NProperty): + """Ignore Mod Dates - Ignore modification dates of files. """ + which = 'Dg01' + want = 'bool' +class _Prop_Launch_Apps_on_Open(aetools.NProperty): + """Launch Apps on Open - Launch applications on the opening of sym files. """ + which = 'Dg03' + want = 'bool' +class _Prop_Open_All_Classes(aetools.NProperty): + """Open All Classes - Open all Java class files. """ + which = 'Dg02' + want = 'bool' +class _Prop_Select_Stack_Crawl(aetools.NProperty): + """Select Stack Crawl - Select the stack crawl. """ + which = 'Dg06' + want = 'bool' +class _Prop_Stop_at_Main(aetools.NProperty): + """Stop at Main - Stop to debug on the main() function. """ + which = 'Dg05' + want = 'bool' + +class Debugger_Target(aetools.ComponentItem): + """Debugger Target - Debugger Target preferences """ + want = 'DbTG' +class _Prop_Cache_symbolics(aetools.NProperty): + """Cache symbolics - Cache symbolics between runs when executable doesn\xd5t change, else release symbolics files after killing process. """ + which = 'Dt15' + want = 'bool' +class _Prop_Data_Update_Interval(aetools.NProperty): + """Data Update Interval - How often to update the data while running (in seconds) """ + which = 'Dt09' + want = 'long' +class _Prop_Log_System_Messages(aetools.NProperty): + """Log System Messages - Log all system messages while debugging. """ + which = 'Dt02' + want = 'bool' +class _Prop_Relocated_Executable_Path(aetools.NProperty): + """Relocated Executable Path - Path to location of relocated libraries, code resources or remote debugging folder """ + which = 'Dt10' + want = 'RlPt' +class _Prop_Stop_at_temp_breakpoint(aetools.NProperty): + """Stop at temp breakpoint - Stop at a temp breakpoint on program launch. Set breakpoint type in Temp Breakpoint Type AppleEvent. """ + which = 'Dt13' + want = 'bool' +class _Prop_Temp_Breakpoint_Type(aetools.NProperty): + """Temp Breakpoint Type - Type of temp breakpoint to set on program launch. """ + which = 'Dt16' + want = 'TmpB' +class _Prop_Temp_breakpoint_names(aetools.NProperty): + """Temp breakpoint names - Comma separated list of names to attempt to stop at on program launch. First symbol to resolve in list is the temp BP that will be set. """ + which = 'Dt14' + want = 'ctxt' +class _Prop_Update_Data_While_Running(aetools.NProperty): + """Update Data While Running - Should pause to update data while running """ + which = 'Dt08' + want = 'bool' + +class Debugger_Windowing(aetools.ComponentItem): + """Debugger Windowing - """ + want = 'DbWN' +class _Prop_Debugging_Start_Action(aetools.NProperty): + """Debugging Start Action - What action to take when debug session starts """ + which = 'Dw01' + want = 'DbSA' +class _Prop_Do_Nothing_To_Projects(aetools.NProperty): + """Do Nothing To Projects - Suppress debugging start action for project windows """ + which = 'Dw02' + want = 'bool' + +class data_member(aetools.ComponentItem): + """data member - A class data member or field """ + want = 'DtMb' +class _Prop_static(aetools.NProperty): + """static - """ + which = 'Stat' + want = 'bool' + +data_members = data_member + +class Editor(aetools.ComponentItem): + """Editor - """ + want = 'EDTR' +class _Prop_Background_Color(aetools.NProperty): + """Background Color - Color of the background of editor windows. """ + which = 'ED13' + want = 'cRGB' +class _Prop_Balance(aetools.NProperty): + """Balance - Flash the matching opening bracket when you type a closing bracket. """ + which = 'ED03' + want = 'bool' +class _Prop_Context_Popup_Delay(aetools.NProperty): + """Context Popup Delay - The amount of time, in sixtieths of a second, before the context popup is displayed if you click and hold on a browser symbol. """ + which = 'ED14' + want = 'long' +class _Prop_Default_Text_File_Format(aetools.NProperty): + """Default Text File Format - Default text file format (i.e. which type of line endings to use) """ + which = 'ED17' + want = 'TxtF' +class _Prop_Dynamic_Scroll(aetools.NProperty): + """Dynamic Scroll - Display a window\xd5s contents as you move the scroll box. """ + which = 'ED02' + want = 'bool' +class _Prop_Flash_Delay(aetools.NProperty): + """Flash Delay - The amount of time, in sixtieths of a second, the editor highlights a matching bracket. """ + which = 'ED01' + want = 'long' +class _Prop_Left_Margin_Line_Select(aetools.NProperty): + """Left Margin Line Select - Clicking in the left margin selects lines """ + which = 'ED16' + want = 'bool' +class _Prop_Main_Text_Color(aetools.NProperty): + """Main Text Color - Main, default, color for text. """ + which = 'ED12' + want = 'cRGB' +class _Prop_Relaxed_C_Popup_Parsing(aetools.NProperty): + """Relaxed C Popup Parsing - Relax the function parser for C source files """ + which = 'ED15' + want = 'bool' +class _Prop_Remember_Font(aetools.NProperty): + """Remember Font - Display a source file with its own font settings. """ + which = 'ED08' + want = 'bool' +class _Prop_Remember_Selection(aetools.NProperty): + """Remember Selection - Restore the previous selection in a file when you open it. """ + which = 'ED09' + want = 'bool' +class _Prop_Remember_Window(aetools.NProperty): + """Remember Window - Restore the last size and position for a source file window when you open it. """ + which = 'ED10' + want = 'bool' +class _Prop_Sort_Function_Popup(aetools.NProperty): + """Sort Function Popup - """ + which = 'ED06' + want = 'bool' +class _Prop_Use_Drag__26__Drop_Editing(aetools.NProperty): + """Use Drag & Drop Editing - Use Drag & Drop text editing. """ + which = 'ED04' + want = 'bool' +class _Prop_Use_Multiple_Undo(aetools.NProperty): + """Use Multiple Undo - """ + which = 'ED07' + want = 'bool' + +class Environment_Variable(aetools.ComponentItem): + """Environment Variable - Environment variable for host OS """ + want = 'EnvV' +class _Prop_value(aetools.NProperty): + """value - Value of the environment variable """ + which = 'Valu' + want = 'TEXT' + +class Error_Information(aetools.ComponentItem): + """Error Information - Describes a single error or warning from the compiler or the linker. """ + want = 'ErrM' +class _Prop_disk_file(aetools.NProperty): + """disk file - The file where the error occurred. May not be returned for certain kinds of errors (eg, link errors). """ + which = 'file' + want = 'fss ' +class _Prop_lineNumber(aetools.NProperty): + """lineNumber - The line in the file where the error occurred. May not be returned for certain kinds of errors (eg, link errors). """ + which = 'ErrL' + want = 'long' +class _Prop_message(aetools.NProperty): + """message - The error or warning message. """ + which = 'ErrS' + want = 'TEXT' +class _Prop_messageKind(aetools.NProperty): + """messageKind - The type of error or warning. """ + which = 'ErrT' + want = 'ErrT' + +class Function_Information(aetools.ComponentItem): + """Function Information - Describes the location of any function or global data definition within the current project. """ + want = 'FDef' + +class File_Mappings(aetools.ComponentItem): + """File Mappings - Mappings of extensions & file types to compilers """ + want = 'FLMP' +class _Prop_Mappings(aetools.NProperty): + """Mappings - """ + which = 'FMps' + want = 'FMap' + +class File_Mapping(aetools.ComponentItem): + """File Mapping - """ + want = 'FMap' +class _Prop_Compiler(aetools.NProperty): + """Compiler - """ + which = 'TA07' + want = 'TEXT' +class _Prop_Extension(aetools.NProperty): + """Extension - """ + which = 'TA02' + want = 'TEXT' +class _Prop_File_Type(aetools.NProperty): + """File Type - """ + which = 'PR04' + want = 'TEXT' +class _Prop_Ignored_by_Make(aetools.NProperty): + """Ignored by Make - """ + which = 'TA06' + want = 'bool' +class _Prop_Launchable(aetools.NProperty): + """Launchable - """ + which = 'TA05' + want = 'bool' +class _Prop_Precompiled(aetools.NProperty): + """Precompiled - """ + which = 'TA03' + want = 'bool' +class _Prop_Resource_File(aetools.NProperty): + """Resource File - """ + which = 'TA04' + want = 'bool' + +class Global_Source_Trees(aetools.ComponentItem): + """Global Source Trees - Globally-defined source tree roots """ + want = 'GSTs' +class _Prop_Source_Trees(aetools.NProperty): + """Source Trees - List of source tree roots """ + which = 'ST01' + want = 'SrcT' + +class Extras(aetools.ComponentItem): + """Extras - """ + want = 'GXTR' +class _Prop_Automatic_Toolbar_Help(aetools.NProperty): + """Automatic Toolbar Help - Automatically show balloon help in toolbar after delay """ + which = 'EX19' + want = 'bool' +class _Prop_External_Reference(aetools.NProperty): + """External Reference - Which on-line function reference to use. """ + which = 'EX08' + want = 'RefP' +class _Prop_Full_Screen_Zoom(aetools.NProperty): + """Full Screen Zoom - Zoom windows to the full screen width. """ + which = 'EX07' + want = 'bool' +class _Prop_Recent_Editor_Count(aetools.NProperty): + """Recent Editor Count - Maximum number of editor documents to show in the \xd2Open Recent\xd3 menu """ + which = 'EX16' + want = 'shor' +class _Prop_Recent_Project_Count(aetools.NProperty): + """Recent Project Count - Maximum number of project documents to show in the \xd2Open Recent\xd3 menu """ + which = 'EX17' + want = 'shor' +class _Prop_Use_Editor_Extensions(aetools.NProperty): + """Use Editor Extensions - Controls the use of the Editor Extensions menu """ + which = 'EX10' + want = 'bool' +class _Prop_Use_External_Editor(aetools.NProperty): + """Use External Editor - Controls whether CodeWarrior uses its own integrated editor or an external application for editing text files. """ + which = 'EX11' + want = 'bool' +class _Prop_Use_Script_Menu(aetools.NProperty): + """Use Script Menu - Controls the use of the AppleScript menu """ + which = 'EX12' + want = 'bool' +class _Prop_Use_ToolServer_Menu(aetools.NProperty): + """Use ToolServer Menu - Controls the use of the ToolServer menu """ + which = 'EX18' + want = 'bool' + +class Build_Extras(aetools.ComponentItem): + """Build Extras - """ + want = 'LXTR' +class _Prop_Browser_Active(aetools.NProperty): + """Browser Active - Allow the collection of browser information. """ + which = 'EX09' + want = 'bool' +class _Prop_Cache_Subproject_Data(aetools.NProperty): + """Cache Subproject Data - """ + which = 'EX31' + want = 'bool' +class _Prop_Dump_Browser_Info(aetools.NProperty): + """Dump Browser Info - """ + which = 'EX30' + want = 'bool' +class _Prop_Modification_Date_Caching(aetools.NProperty): + """Modification Date Caching - """ + which = 'EX04' + want = 'bool' + +class member_function(aetools.ComponentItem): + """member function - A class member function or method. """ + want = 'MbFn' +class _Prop_implementation_end_offset(aetools.NProperty): + """implementation end offset - end of member function definition """ + which = 'DfEn' + want = 'long' +class _Prop_implementation_file(aetools.NProperty): + """implementation file - Source file containing the member function definition """ + which = 'DfFl' + want = 'fss ' +class _Prop_implementation_start_offset(aetools.NProperty): + """implementation start offset - start of member function definition source code """ + which = 'DfSt' + want = 'long' + +member_functions = member_function + +class Access_Paths(aetools.ComponentItem): + """Access Paths - Contains the definitions of a project\xd5s access (search) paths. """ + want = 'PATH' +class _Prop_Always_Full_Search(aetools.NProperty): + """Always Full Search - To force the compiler to search for system includes like it searches for user includes. """ + which = 'PA02' + want = 'bool' +class _Prop_Convert_Paths(aetools.NProperty): + """Convert Paths - Enables conversion of DOS & Unix-style relative paths when searching for files. """ + which = 'PA04' + want = 'bool' +class _Prop_Require_Framework_Includes(aetools.NProperty): + """Require Framework Includes - Causes the IDE to only look in the framework access paths if a Mac OS X framework style include (i.e. <Carbon/Carbon.h> ) is used. """ + which = 'PA05' + want = 'bool' +class _Prop_System_Paths(aetools.NProperty): + """System Paths - To add an access path for the include files. (Not supported in Pascal) """ + which = 'PA03' + want = 'PInf' +class _Prop_User_Paths(aetools.NProperty): + """User Paths - To add an access path for the source files. """ + which = 'PA01' + want = 'PInf' + +class Path_Information(aetools.ComponentItem): + """Path Information - Contains all of the parameters that describe an access path. """ + want = 'PInf' +class _Prop_format(aetools.NProperty): + """format - Format of the a """ + which = 'Frmt' + want = 'PthF' +class _Prop_framework(aetools.NProperty): + """framework - Is the path a Mac OS X framework style path? (This flag is readable but not writeable from AppleScript.) """ + which = 'Frmw' + want = 'bool' +class _Prop_host_flags(aetools.NProperty): + """host flags - Bit fields enabling the access path for each host OS (1 = Mac OS, 2 = Windows) """ + which = 'HstF' + want = 'long' +class _Prop_origin(aetools.NProperty): + """origin - """ + which = 'Orig' + want = 'PPrm' +class _Prop_recursive(aetools.NProperty): + """recursive - Will the path be searched recursively? (Default is true) """ + which = 'Recu' + want = 'bool' +class _Prop_root(aetools.NProperty): + """root - Name of the root of the relative path. Pre-defined values are \xd2Absolute\xd3, \xd2Project\xd3, \xd2CodeWarrior\xd3, and \xd2System\xd3. Anything else is a user-defined root. """ + which = 'Root' + want = 'TEXT' + +class Plugin_Settings(aetools.ComponentItem): + """Plugin Settings - Settings for plugin tools """ + want = 'PSTG' +class _Prop_Disable_Third_Party_COM_Plugins(aetools.NProperty): + """Disable Third Party COM Plugins - Disable COM plugins from third parties """ + which = 'PX02' + want = 'bool' +class _Prop_Plugin_Diagnostics_Level(aetools.NProperty): + """Plugin Diagnostics Level - Plugin Diagnostics Level is for those who are developing plugins for the IDE and need to debug them. """ + which = 'PX01' + want = 'PXdg' + +class Runtime_Settings(aetools.ComponentItem): + """Runtime Settings - Runtime settings """ + want = 'RSTG' +class _Prop_Command_Line_Arguments(aetools.NProperty): + """Command Line Arguments - Extra command line args to pass to executable """ + which = 'RS02' + want = 'TEXT' +class _Prop_Environment_Variables(aetools.NProperty): + """Environment Variables - Environment variables to use when running the executable """ + which = 'RS04' + want = 'EnvV' +class _Prop_Host_Application(aetools.NProperty): + """Host Application - Host application for running/debugging libraries and code resources """ + which = 'RS01' + want = 'RlPt' +class _Prop_Working_Directory(aetools.NProperty): + """Working Directory - Working directory to use when running the executable """ + which = 'RS03' + want = 'TEXT' + +class Relative_Path(aetools.ComponentItem): + """Relative Path - Relative path from some root """ + want = 'RlPt' + +class Shielded_Folder(aetools.ComponentItem): + """Shielded Folder - """ + want = 'SFit' +class _Prop_Expression_To_Match(aetools.NProperty): + """Expression To Match - Regular expression which describes folders to skip """ + which = 'SF01' + want = 'TEXT' +class _Prop_Skip_Find_And_Compare_Operations(aetools.NProperty): + """Skip Find And Compare Operations - Matching folders will be skipped during find and compare operations """ + which = 'SF03' + want = 'bool' +class _Prop_Skip_Project_Operations(aetools.NProperty): + """Skip Project Operations - Matching folders will be skipped during project operations """ + which = 'SF02' + want = 'bool' + +class Shielded_Folders(aetools.ComponentItem): + """Shielded Folders - Folders skipped when performing project and find-and-compare operations """ + want = 'SHFL' +class _Prop_Shielded_Items(aetools.NProperty): + """Shielded Items - """ + which = 'SFis' + want = 'SFit' + +class Syntax_Coloring(aetools.ComponentItem): + """Syntax Coloring - """ + want = 'SNTX' +class _Prop_Comment_Color(aetools.NProperty): + """Comment Color - The color for comments. """ + which = 'GH02' + want = 'cRGB' +class _Prop_Keyword_Color(aetools.NProperty): + """Keyword Color - The color for language keywords. """ + which = 'GH03' + want = 'cRGB' +class _Prop_String_Color(aetools.NProperty): + """String Color - The color for strings. """ + which = 'GH04' + want = 'cRGB' +class _Prop_Syntax_Coloring(aetools.NProperty): + """Syntax Coloring - Mark keywords and comments with color. """ + which = 'GH01' + want = 'bool' + +class Segment(aetools.ComponentItem): + """Segment - A segment or group in the project """ + want = 'Seg ' +class _Prop_filecount(aetools.NProperty): + """filecount - """ + which = 'NumF' + want = 'shor' +class _Prop_seg_2d_locked(aetools.NProperty): + """seg-locked - Is the segment locked ? [68K only] """ + which = 'PLck' + want = 'bool' +class _Prop_seg_2d_preloaded(aetools.NProperty): + """seg-preloaded - Is the segment preloaded ? [68K only] """ + which = 'Prel' + want = 'bool' +class _Prop_seg_2d_protected(aetools.NProperty): + """seg-protected - Is the segment protected ? [68K only] """ + which = 'Prot' + want = 'bool' +class _Prop_seg_2d_purgeable(aetools.NProperty): + """seg-purgeable - Is the segment purgeable ? [68K only] """ + which = 'Purg' + want = 'bool' +class _Prop_seg_2d_system_heap(aetools.NProperty): + """seg-system heap - Is the segment loaded into the system heap ? [68K only] """ + which = 'SysH' + want = 'bool' + +class ProjectFile(aetools.ComponentItem): + """ProjectFile - A file contained in a project """ + want = 'SrcF' +class _Prop_codesize(aetools.NProperty): + """codesize - The size of this file\xd5s code. """ + which = 'CSiz' + want = 'long' +class _Prop_datasize(aetools.NProperty): + """datasize - The size of this file\xd5s data. """ + which = 'DSiz' + want = 'long' +class _Prop_filetype(aetools.NProperty): + """filetype - What kind of file is this ? """ + which = 'SrcT' + want = 'SrcT' +class _Prop_includes(aetools.NProperty): + """includes - """ + which = 'IncF' + want = 'fss ' +class _Prop_initialize_before(aetools.NProperty): + """initialize before - Initialize the shared library before the main application. """ + which = 'Bfor' + want = 'bool' +class _Prop_symbols(aetools.NProperty): + """symbols - Are debugging symbols generated for this file ? """ + which = 'SymG' + want = 'bool' +class _Prop_up_to_date(aetools.NProperty): + """up to date - Has the file been compiled since its last modification ? """ + which = 'UpTD' + want = 'bool' +class _Prop_weak_link(aetools.NProperty): + """weak link - Is this file imported weakly into the project ? [PowerPC only] """ + which = 'Weak' + want = 'bool' + +class Source_Tree(aetools.ComponentItem): + """Source Tree - User-defined source tree root """ + want = 'SrcT' +class _Prop_path(aetools.NProperty): + """path - path for the user-defined source tree root """ + which = 'Path' + want = 'TEXT' +class _Prop_path_kind(aetools.NProperty): + """path kind - kind of path """ + which = 'Kind' + want = 'STKd' + +class Target_Settings(aetools.ComponentItem): + """Target Settings - Contains the definitions of a project\xd5s target. """ + want = 'TARG' +class _Prop_Linker(aetools.NProperty): + """Linker - The name of the current linker. """ + which = 'TA01' + want = 'TEXT' +class _Prop_Output_Directory_Location(aetools.NProperty): + """Output Directory Location - Location of output directory """ + which = 'TA16' + want = 'RlPt' +class _Prop_Output_Directory_Origin(aetools.NProperty): + """Output Directory Origin - Origin of path to output directory. Usage of this property is deprecated. Use the \xd2Output Directory Location\xd3 property instead. """ + which = 'TA12' + want = 'PPrm' +class _Prop_Output_Directory_Path(aetools.NProperty): + """Output Directory Path - Path to output directory. Usage of this property is deprecated. Use the \xd2Output Directory Location\xd3 property instead. """ + which = 'TA11' + want = 'TEXT' +class _Prop_Post_Linker(aetools.NProperty): + """Post Linker - """ + which = 'TA09' + want = 'TEXT' +class _Prop_Pre_Linker(aetools.NProperty): + """Pre Linker - """ + which = 'TA13' + want = 'TEXT' +class _Prop_Target_Name(aetools.NProperty): + """Target Name - """ + which = 'TA10' + want = 'TEXT' +class _Prop_Use_Relative_Paths(aetools.NProperty): + """Use Relative Paths - Save project entries using relative paths """ + which = 'TA15' + want = 'bool' + +class Target_Source_Trees(aetools.ComponentItem): + """Target Source Trees - Target-specific user-defined source tree roots """ + want = 'TSTs' + +class VCS_Setup(aetools.ComponentItem): + """VCS Setup - The version control system preferences. """ + want = 'VCSs' +class _Prop_Always_Prompt(aetools.NProperty): + """Always Prompt - Always show login dialog """ + which = 'VC07' + want = 'bool' +class _Prop_Auto_Connect(aetools.NProperty): + """Auto Connect - Automatically connect to database when starting. """ + which = 'VC05' + want = 'bool' +class _Prop_Connection_Method(aetools.NProperty): + """Connection Method - Name of Version Control System to use. """ + which = 'VC02' + want = 'TEXT' +class _Prop_Database_Path(aetools.NProperty): + """Database Path - Path to the VCS database. """ + which = 'VC09' + want = 'RlPt' +class _Prop_Local_Path(aetools.NProperty): + """Local Path - Path to the local root """ + which = 'VC10' + want = 'RlPt' +class _Prop_Mount_Volume(aetools.NProperty): + """Mount Volume - Attempt to mount the database volume if it isn't available. """ + which = 'VC08' + want = 'bool' +class _Prop_Password(aetools.NProperty): + """Password - The password for the VCS. """ + which = 'VC04' + want = 'TEXT' +class _Prop_Store_Password(aetools.NProperty): + """Store Password - Store the password. """ + which = 'VC06' + want = 'bool' +class _Prop_Use_Global_Settings(aetools.NProperty): + """Use Global Settings - Use the global VCS settings by default """ + which = 'VC11' + want = 'bool' +class _Prop_Username(aetools.NProperty): + """Username - The user name for the VCS. """ + which = 'VC03' + want = 'TEXT' +class _Prop_VCS_Active(aetools.NProperty): + """VCS Active - Use Version Control """ + which = 'VC01' + want = 'bool' + +class Font(aetools.ComponentItem): + """Font - """ + want = 'mFNT' +class _Prop_Auto_Indent(aetools.NProperty): + """Auto Indent - Indent new lines automatically. """ + which = 'FN01' + want = 'bool' +class _Prop_Tab_Indents_Selection(aetools.NProperty): + """Tab Indents Selection - Tab indents selection when multiple lines are selected """ + which = 'FN03' + want = 'bool' +class _Prop_Tab_Inserts_Spaces(aetools.NProperty): + """Tab Inserts Spaces - Insert spaces instead of tab character """ + which = 'FN04' + want = 'bool' +class _Prop_Tab_Size(aetools.NProperty): + """Tab Size - """ + which = 'FN02' + want = 'shor' +class _Prop_Text_Font(aetools.NProperty): + """Text Font - The font used in editing windows. """ + which = 'ptxf' + want = 'TEXT' +class _Prop_Text_Size(aetools.NProperty): + """Text Size - The size of the text in an editing window. """ + which = 'ptps' + want = 'shor' +Browser_Coloring._superclassnames = [] +Browser_Coloring._privpropdict = { + 'Browser_Keywords' : _Prop_Browser_Keywords, + 'Classes_Color' : _Prop_Classes_Color, + 'Constants_Color' : _Prop_Constants_Color, + 'Enums_Color' : _Prop_Enums_Color, + 'Functions_Color' : _Prop_Functions_Color, + 'Globals_Color' : _Prop_Globals_Color, + 'Macros_Color' : _Prop_Macros_Color, + 'Template_Commands_in_Menu' : _Prop_Template_Commands_in_Menu, + 'Templates_Color' : _Prop_Templates_Color, + 'Typedefs_Color' : _Prop_Typedefs_Color, +} +Browser_Coloring._privelemdict = { +} +Build_Settings._superclassnames = [] +Build_Settings._privpropdict = { + 'Build_Before_Running' : _Prop_Build_Before_Running, + 'Compiler_Thread_Stack_Size' : _Prop_Compiler_Thread_Stack_Size, + 'Completion_Sound' : _Prop_Completion_Sound, + 'Failure_Sound' : _Prop_Failure_Sound, + 'Include_Cache_Size' : _Prop_Include_Cache_Size, + 'Save_Before_Building' : _Prop_Save_Before_Building, + 'Success_Sound' : _Prop_Success_Sound, +} +Build_Settings._privelemdict = { +} +base_class._superclassnames = [] +base_class._privpropdict = { + 'access' : _Prop_access, + 'class_' : _Prop_class_, + 'virtual' : _Prop_virtual, +} +base_class._privelemdict = { +} +Custom_Keywords._superclassnames = [] +Custom_Keywords._privpropdict = { + 'Custom_Color_1' : _Prop_Custom_Color_1, + 'Custom_Color_2' : _Prop_Custom_Color_2, + 'Custom_Color_3' : _Prop_Custom_Color_3, + 'Custom_Color_4' : _Prop_Custom_Color_4, +} +Custom_Keywords._privelemdict = { +} +browser_catalog._superclassnames = [] +browser_catalog._privpropdict = { +} +browser_catalog._privelemdict = { + 'class_' : class_, +} +class_._superclassnames = [] +class_._privpropdict = { + 'all_subclasses' : _Prop_all_subclasses, + 'declaration_end_offset' : _Prop_declaration_end_offset, + 'declaration_file' : _Prop_declaration_file, + 'declaration_start_offset' : _Prop_declaration_start_offset, + 'language' : _Prop_language, + 'name' : _Prop_name, + 'subclasses' : _Prop_subclasses, +} +class_._privelemdict = { + 'base_class' : base_class, + 'data_member' : data_member, + 'member_function' : member_function, +} +Debugger_Display._superclassnames = [] +Debugger_Display._privpropdict = { + 'Default_Array_Size' : _Prop_Default_Array_Size, + 'Show_As_Decimal' : _Prop_Show_As_Decimal, + 'Show_Locals' : _Prop_Show_Locals, + 'Show_Variable_Types' : _Prop_Show_Variable_Types, + 'Sort_By_Method' : _Prop_Sort_By_Method, + 'Threads_in_Window' : _Prop_Threads_in_Window, + 'Use_RTTI' : _Prop_Use_RTTI, + 'Variable_Changed_Hilite' : _Prop_Variable_Changed_Hilite, + 'Variable_Hints' : _Prop_Variable_Hints, + 'Watchpoint_Hilite' : _Prop_Watchpoint_Hilite, +} +Debugger_Display._privelemdict = { +} +Debugger_Global._superclassnames = [] +Debugger_Global._privpropdict = { + 'Auto_Target_Libraries' : _Prop_Auto_Target_Libraries, + 'Cache_Edited_Files' : _Prop_Cache_Edited_Files, + 'Confirm_Kill' : _Prop_Confirm_Kill, + 'Dont_Step_in_Runtime' : _Prop_Dont_Step_in_Runtime, + 'File_Cache_Duration' : _Prop_File_Cache_Duration, + 'Ignore_Mod_Dates' : _Prop_Ignore_Mod_Dates, + 'Launch_Apps_on_Open' : _Prop_Launch_Apps_on_Open, + 'Open_All_Classes' : _Prop_Open_All_Classes, + 'Select_Stack_Crawl' : _Prop_Select_Stack_Crawl, + 'Stop_at_Main' : _Prop_Stop_at_Main, +} +Debugger_Global._privelemdict = { +} +Debugger_Target._superclassnames = [] +Debugger_Target._privpropdict = { + 'Auto_Target_Libraries' : _Prop_Auto_Target_Libraries, + 'Cache_symbolics' : _Prop_Cache_symbolics, + 'Data_Update_Interval' : _Prop_Data_Update_Interval, + 'Log_System_Messages' : _Prop_Log_System_Messages, + 'Relocated_Executable_Path' : _Prop_Relocated_Executable_Path, + 'Stop_at_temp_breakpoint' : _Prop_Stop_at_temp_breakpoint, + 'Temp_Breakpoint_Type' : _Prop_Temp_Breakpoint_Type, + 'Temp_breakpoint_names' : _Prop_Temp_breakpoint_names, + 'Update_Data_While_Running' : _Prop_Update_Data_While_Running, +} +Debugger_Target._privelemdict = { +} +Debugger_Windowing._superclassnames = [] +Debugger_Windowing._privpropdict = { + 'Debugging_Start_Action' : _Prop_Debugging_Start_Action, + 'Do_Nothing_To_Projects' : _Prop_Do_Nothing_To_Projects, +} +Debugger_Windowing._privelemdict = { +} +data_member._superclassnames = [] +data_member._privpropdict = { + 'access' : _Prop_access, + 'declaration_end_offset' : _Prop_declaration_end_offset, + 'declaration_start_offset' : _Prop_declaration_start_offset, + 'name' : _Prop_name, + 'static' : _Prop_static, +} +data_member._privelemdict = { +} +Editor._superclassnames = [] +Editor._privpropdict = { + 'Background_Color' : _Prop_Background_Color, + 'Balance' : _Prop_Balance, + 'Context_Popup_Delay' : _Prop_Context_Popup_Delay, + 'Default_Text_File_Format' : _Prop_Default_Text_File_Format, + 'Dynamic_Scroll' : _Prop_Dynamic_Scroll, + 'Flash_Delay' : _Prop_Flash_Delay, + 'Left_Margin_Line_Select' : _Prop_Left_Margin_Line_Select, + 'Main_Text_Color' : _Prop_Main_Text_Color, + 'Relaxed_C_Popup_Parsing' : _Prop_Relaxed_C_Popup_Parsing, + 'Remember_Font' : _Prop_Remember_Font, + 'Remember_Selection' : _Prop_Remember_Selection, + 'Remember_Window' : _Prop_Remember_Window, + 'Sort_Function_Popup' : _Prop_Sort_Function_Popup, + 'Use_Drag__26__Drop_Editing' : _Prop_Use_Drag__26__Drop_Editing, + 'Use_Multiple_Undo' : _Prop_Use_Multiple_Undo, +} +Editor._privelemdict = { +} +Environment_Variable._superclassnames = [] +Environment_Variable._privpropdict = { + 'name' : _Prop_name, + 'value' : _Prop_value, +} +Environment_Variable._privelemdict = { +} +Error_Information._superclassnames = [] +Error_Information._privpropdict = { + 'disk_file' : _Prop_disk_file, + 'lineNumber' : _Prop_lineNumber, + 'message' : _Prop_message, + 'messageKind' : _Prop_messageKind, +} +Error_Information._privelemdict = { +} +Function_Information._superclassnames = [] +Function_Information._privpropdict = { + 'disk_file' : _Prop_disk_file, + 'lineNumber' : _Prop_lineNumber, +} +Function_Information._privelemdict = { +} +File_Mappings._superclassnames = [] +File_Mappings._privpropdict = { + 'Mappings' : _Prop_Mappings, +} +File_Mappings._privelemdict = { +} +File_Mapping._superclassnames = [] +File_Mapping._privpropdict = { + 'Compiler' : _Prop_Compiler, + 'Extension' : _Prop_Extension, + 'File_Type' : _Prop_File_Type, + 'Ignored_by_Make' : _Prop_Ignored_by_Make, + 'Launchable' : _Prop_Launchable, + 'Precompiled' : _Prop_Precompiled, + 'Resource_File' : _Prop_Resource_File, +} +File_Mapping._privelemdict = { +} +Global_Source_Trees._superclassnames = [] +Global_Source_Trees._privpropdict = { + 'Source_Trees' : _Prop_Source_Trees, +} +Global_Source_Trees._privelemdict = { +} +Extras._superclassnames = [] +Extras._privpropdict = { + 'Automatic_Toolbar_Help' : _Prop_Automatic_Toolbar_Help, + 'External_Reference' : _Prop_External_Reference, + 'Full_Screen_Zoom' : _Prop_Full_Screen_Zoom, + 'Recent_Editor_Count' : _Prop_Recent_Editor_Count, + 'Recent_Project_Count' : _Prop_Recent_Project_Count, + 'Use_Editor_Extensions' : _Prop_Use_Editor_Extensions, + 'Use_External_Editor' : _Prop_Use_External_Editor, + 'Use_Script_Menu' : _Prop_Use_Script_Menu, + 'Use_ToolServer_Menu' : _Prop_Use_ToolServer_Menu, +} +Extras._privelemdict = { +} +Build_Extras._superclassnames = [] +Build_Extras._privpropdict = { + 'Browser_Active' : _Prop_Browser_Active, + 'Cache_Subproject_Data' : _Prop_Cache_Subproject_Data, + 'Dump_Browser_Info' : _Prop_Dump_Browser_Info, + 'Modification_Date_Caching' : _Prop_Modification_Date_Caching, +} +Build_Extras._privelemdict = { +} +member_function._superclassnames = [] +member_function._privpropdict = { + 'access' : _Prop_access, + 'declaration_end_offset' : _Prop_declaration_end_offset, + 'declaration_file' : _Prop_declaration_file, + 'declaration_start_offset' : _Prop_declaration_start_offset, + 'implementation_end_offset' : _Prop_implementation_end_offset, + 'implementation_file' : _Prop_implementation_file, + 'implementation_start_offset' : _Prop_implementation_start_offset, + 'name' : _Prop_name, + 'static' : _Prop_static, + 'virtual' : _Prop_virtual, +} +member_function._privelemdict = { +} +Access_Paths._superclassnames = [] +Access_Paths._privpropdict = { + 'Always_Full_Search' : _Prop_Always_Full_Search, + 'Convert_Paths' : _Prop_Convert_Paths, + 'Require_Framework_Includes' : _Prop_Require_Framework_Includes, + 'System_Paths' : _Prop_System_Paths, + 'User_Paths' : _Prop_User_Paths, +} +Access_Paths._privelemdict = { +} +Path_Information._superclassnames = [] +Path_Information._privpropdict = { + 'format' : _Prop_format, + 'framework' : _Prop_framework, + 'host_flags' : _Prop_host_flags, + 'name' : _Prop_name, + 'origin' : _Prop_origin, + 'recursive' : _Prop_recursive, + 'root' : _Prop_root, +} +Path_Information._privelemdict = { +} +Plugin_Settings._superclassnames = [] +Plugin_Settings._privpropdict = { + 'Disable_Third_Party_COM_Plugins' : _Prop_Disable_Third_Party_COM_Plugins, + 'Plugin_Diagnostics_Level' : _Prop_Plugin_Diagnostics_Level, +} +Plugin_Settings._privelemdict = { +} +Runtime_Settings._superclassnames = [] +Runtime_Settings._privpropdict = { + 'Command_Line_Arguments' : _Prop_Command_Line_Arguments, + 'Environment_Variables' : _Prop_Environment_Variables, + 'Host_Application' : _Prop_Host_Application, + 'Working_Directory' : _Prop_Working_Directory, +} +Runtime_Settings._privelemdict = { +} +Relative_Path._superclassnames = [] +Relative_Path._privpropdict = { + 'format' : _Prop_format, + 'name' : _Prop_name, + 'origin' : _Prop_origin, + 'root' : _Prop_root, +} +Relative_Path._privelemdict = { +} +Shielded_Folder._superclassnames = [] +Shielded_Folder._privpropdict = { + 'Expression_To_Match' : _Prop_Expression_To_Match, + 'Skip_Find_And_Compare_Operations' : _Prop_Skip_Find_And_Compare_Operations, + 'Skip_Project_Operations' : _Prop_Skip_Project_Operations, +} +Shielded_Folder._privelemdict = { +} +Shielded_Folders._superclassnames = [] +Shielded_Folders._privpropdict = { + 'Shielded_Items' : _Prop_Shielded_Items, +} +Shielded_Folders._privelemdict = { +} +Syntax_Coloring._superclassnames = [] +Syntax_Coloring._privpropdict = { + 'Comment_Color' : _Prop_Comment_Color, + 'Custom_Color_1' : _Prop_Custom_Color_1, + 'Custom_Color_2' : _Prop_Custom_Color_2, + 'Custom_Color_3' : _Prop_Custom_Color_3, + 'Custom_Color_4' : _Prop_Custom_Color_4, + 'Keyword_Color' : _Prop_Keyword_Color, + 'String_Color' : _Prop_String_Color, + 'Syntax_Coloring' : _Prop_Syntax_Coloring, +} +Syntax_Coloring._privelemdict = { +} +Segment._superclassnames = [] +Segment._privpropdict = { + 'filecount' : _Prop_filecount, + 'name' : _Prop_name, + 'seg_2d_locked' : _Prop_seg_2d_locked, + 'seg_2d_preloaded' : _Prop_seg_2d_preloaded, + 'seg_2d_protected' : _Prop_seg_2d_protected, + 'seg_2d_purgeable' : _Prop_seg_2d_purgeable, + 'seg_2d_system_heap' : _Prop_seg_2d_system_heap, +} +Segment._privelemdict = { +} +ProjectFile._superclassnames = [] +ProjectFile._privpropdict = { + 'codesize' : _Prop_codesize, + 'datasize' : _Prop_datasize, + 'disk_file' : _Prop_disk_file, + 'filetype' : _Prop_filetype, + 'includes' : _Prop_includes, + 'initialize_before' : _Prop_initialize_before, + 'name' : _Prop_name, + 'symbols' : _Prop_symbols, + 'up_to_date' : _Prop_up_to_date, + 'weak_link' : _Prop_weak_link, +} +ProjectFile._privelemdict = { +} +Source_Tree._superclassnames = [] +Source_Tree._privpropdict = { + 'format' : _Prop_format, + 'name' : _Prop_name, + 'path' : _Prop_path, + 'path_kind' : _Prop_path_kind, +} +Source_Tree._privelemdict = { +} +Target_Settings._superclassnames = [] +Target_Settings._privpropdict = { + 'Linker' : _Prop_Linker, + 'Output_Directory_Location' : _Prop_Output_Directory_Location, + 'Output_Directory_Origin' : _Prop_Output_Directory_Origin, + 'Output_Directory_Path' : _Prop_Output_Directory_Path, + 'Post_Linker' : _Prop_Post_Linker, + 'Pre_Linker' : _Prop_Pre_Linker, + 'Target_Name' : _Prop_Target_Name, + 'Use_Relative_Paths' : _Prop_Use_Relative_Paths, +} +Target_Settings._privelemdict = { +} +Target_Source_Trees._superclassnames = [] +Target_Source_Trees._privpropdict = { + 'Source_Trees' : _Prop_Source_Trees, +} +Target_Source_Trees._privelemdict = { +} +VCS_Setup._superclassnames = [] +VCS_Setup._privpropdict = { + 'Always_Prompt' : _Prop_Always_Prompt, + 'Auto_Connect' : _Prop_Auto_Connect, + 'Connection_Method' : _Prop_Connection_Method, + 'Database_Path' : _Prop_Database_Path, + 'Local_Path' : _Prop_Local_Path, + 'Mount_Volume' : _Prop_Mount_Volume, + 'Password' : _Prop_Password, + 'Store_Password' : _Prop_Store_Password, + 'Use_Global_Settings' : _Prop_Use_Global_Settings, + 'Username' : _Prop_Username, + 'VCS_Active' : _Prop_VCS_Active, +} +VCS_Setup._privelemdict = { +} +Font._superclassnames = [] +Font._privpropdict = { + 'Auto_Indent' : _Prop_Auto_Indent, + 'Tab_Indents_Selection' : _Prop_Tab_Indents_Selection, + 'Tab_Inserts_Spaces' : _Prop_Tab_Inserts_Spaces, + 'Tab_Size' : _Prop_Tab_Size, + 'Text_Font' : _Prop_Text_Font, + 'Text_Size' : _Prop_Text_Size, +} +Font._privelemdict = { +} +_Enum_Acce = { + 'public' : 'Publ', # + 'protected' : 'Prot', # + 'private' : 'Priv', # +} + +_Enum_BXbr = { + 'Always_Build' : 'BXb1', # Always build the target before running. + 'Ask_Build' : 'BXb2', # Ask before building the target when running. + 'Never_Build' : 'BXb3', # Never before building the target before running. +} + +_Enum_DbSA = { + 'No_Action' : 'DSA1', # Don\xd5t do anything to non-debug windows + 'Hide_Windows' : 'DSA2', # Hide non-debugging windows + 'Collapse_Windows' : 'DSA3', # Collapse non-debugging windows + 'Close_Windows' : 'DSA4', # Close non-debugging windows +} + +_Enum_DgBL = { + 'Always' : 'DgB0', # Always build before debugging. + 'Never' : 'DgB1', # Never build before debugging. + 'Ask' : 'DgB2', # Ask about building before debugging. +} + +_Enum_ErrT = { + 'information' : 'ErIn', # + 'compiler_warning' : 'ErCW', # + 'compiler_error' : 'ErCE', # + 'definition' : 'ErDf', # + 'linker_warning' : 'ErLW', # + 'linker_error' : 'ErLE', # + 'find_result' : 'ErFn', # + 'generic_error' : 'ErGn', # +} + +_Enum_Inte = { + 'never_interact' : 'eNvr', # Never allow user interactions + 'interact_with_self' : 'eInS', # Allow user interaction only when an AppleEvent is sent from within CodeWarrior + 'interact_with_local' : 'eInL', # Allow user interaction when AppleEvents are sent from applications on the same machine (default) + 'interact_with_all' : 'eInA', # Allow user interaction from both local and remote AppleEvents +} + +_Enum_Lang = { + 'C' : 'LC ', # + 'C_2b__2b_' : 'LC++', # + 'Pascal' : 'LP ', # + 'Object_Pascal' : 'LP++', # + 'Java' : 'LJav', # + 'Assembler' : 'LAsm', # + 'Unknown' : 'L? ', # +} + +_Enum_PPrm = { + 'absolute' : 'Abso', # An absolute path name, including volume name. + 'project_relative' : 'PRel', # A path relative to the current project\xd5s folder. + 'shell_relative' : 'SRel', # A path relative to the CodeWarrior\xaa folder. + 'system_relative' : 'YRel', # A path relative to the system folder + 'root_relative' : 'RRel', # +} + +_Enum_PXdg = { + 'Diagnose_None' : 'PXd1', # No Plugin Diagnostics. + 'Diagnose_Errors' : 'PXd2', # Plugin Diagnostics for errors only. + 'Diagnose_All' : 'PXd3', # Plugin Diagnostics for everything. +} + +_Enum_PthF = { + 'Generic_Path' : 'PFGn', # + 'MacOS_Path' : 'PFMc', # MacOS path using colon as separator + 'Windows_Path' : 'PFWn', # Windows path using backslash as separator + 'Unix_Path' : 'PFUx', # Unix path using slash as separator +} + +_Enum_RefP = { + 'Think_Reference' : 'DanR', # + 'QuickView' : 'ALTV', # +} + +_Enum_STKd = { + 'Absolute_Path' : 'STK0', # The \xd2path\xd3 property is an absolute path to the location of the source tree. + 'Registry_Key' : 'STK1', # The \xd2path\xd3 property is the name of a registry key that contains the path to the root. + 'Environment_Variable' : 'STK2', # The \xd2path\xd3 property is the name of an environment variable that contains the path to the root. +} + +_Enum_SrcT = { + 'source' : 'FTxt', # A source file (.c, .cp, .p, etc). + 'unknown' : 'FUnk', # An unknown file type. +} + +_Enum_TmpB = { + 'User_Specified' : 'Usrs', # Use user specified symbols when setting temporary breakpoints on program launch. + 'Default' : 'Dflt', # Use system default symbols when setting temporary breakpoints on program launch. +} + +_Enum_TxtF = { + 'MacOS' : 'TxF0', # MacOS text format + 'DOS' : 'TxF1', # DOS text format + 'Unix' : 'TxF2', # Unix text format +} + +_Enum_savo = { + 'yes' : 'yes ', # Save changes + 'no' : 'no ', # Do not save changes + 'ask' : 'ask ', # Ask the user whether to save +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'BRKW' : Browser_Coloring, + 'BSTG' : Build_Settings, + 'BsCl' : base_class, + 'CUKW' : Custom_Keywords, + 'Cata' : browser_catalog, + 'Clas' : class_, + 'DbDS' : Debugger_Display, + 'DbGL' : Debugger_Global, + 'DbTG' : Debugger_Target, + 'DbWN' : Debugger_Windowing, + 'DtMb' : data_member, + 'EDTR' : Editor, + 'EnvV' : Environment_Variable, + 'ErrM' : Error_Information, + 'FDef' : Function_Information, + 'FLMP' : File_Mappings, + 'FMap' : File_Mapping, + 'GSTs' : Global_Source_Trees, + 'GXTR' : Extras, + 'LXTR' : Build_Extras, + 'MbFn' : member_function, + 'PATH' : Access_Paths, + 'PInf' : Path_Information, + 'PSTG' : Plugin_Settings, + 'RSTG' : Runtime_Settings, + 'RlPt' : Relative_Path, + 'SFit' : Shielded_Folder, + 'SHFL' : Shielded_Folders, + 'SNTX' : Syntax_Coloring, + 'Seg ' : Segment, + 'SrcF' : ProjectFile, + 'SrcT' : Source_Tree, + 'TARG' : Target_Settings, + 'TSTs' : Target_Source_Trees, + 'VCSs' : VCS_Setup, + 'mFNT' : Font, +} + +_propdeclarations = { + 'Acce' : _Prop_access, + 'BW00' : _Prop_Browser_Keywords, + 'BW01' : _Prop_Classes_Color, + 'BW02' : _Prop_Constants_Color, + 'BW03' : _Prop_Enums_Color, + 'BW04' : _Prop_Functions_Color, + 'BW05' : _Prop_Globals_Color, + 'BW06' : _Prop_Macros_Color, + 'BW07' : _Prop_Templates_Color, + 'BW08' : _Prop_Typedefs_Color, + 'BW10' : _Prop_Template_Commands_in_Menu, + 'BX01' : _Prop_Completion_Sound, + 'BX02' : _Prop_Success_Sound, + 'BX03' : _Prop_Failure_Sound, + 'BX04' : _Prop_Build_Before_Running, + 'BX05' : _Prop_Include_Cache_Size, + 'BX06' : _Prop_Compiler_Thread_Stack_Size, + 'BX07' : _Prop_Save_Before_Building, + 'Bfor' : _Prop_initialize_before, + 'CSiz' : _Prop_codesize, + 'Clas' : _Prop_class_, + 'DSiz' : _Prop_datasize, + 'Db01' : _Prop_Show_Variable_Types, + 'Db02' : _Prop_Sort_By_Method, + 'Db03' : _Prop_Use_RTTI, + 'Db04' : _Prop_Threads_in_Window, + 'Db05' : _Prop_Variable_Hints, + 'Db06' : _Prop_Watchpoint_Hilite, + 'Db07' : _Prop_Variable_Changed_Hilite, + 'Db08' : _Prop_Default_Array_Size, + 'Db09' : _Prop_Show_Locals, + 'Db10' : _Prop_Show_As_Decimal, + 'DcEn' : _Prop_declaration_end_offset, + 'DcFl' : _Prop_declaration_file, + 'DcSt' : _Prop_declaration_start_offset, + 'DfEn' : _Prop_implementation_end_offset, + 'DfFl' : _Prop_implementation_file, + 'DfSt' : _Prop_implementation_start_offset, + 'Dg01' : _Prop_Ignore_Mod_Dates, + 'Dg02' : _Prop_Open_All_Classes, + 'Dg03' : _Prop_Launch_Apps_on_Open, + 'Dg04' : _Prop_Confirm_Kill, + 'Dg05' : _Prop_Stop_at_Main, + 'Dg06' : _Prop_Select_Stack_Crawl, + 'Dg07' : _Prop_Dont_Step_in_Runtime, + 'Dg11' : _Prop_Auto_Target_Libraries, + 'Dg12' : _Prop_Cache_Edited_Files, + 'Dg13' : _Prop_File_Cache_Duration, + 'Dt02' : _Prop_Log_System_Messages, + 'Dt08' : _Prop_Update_Data_While_Running, + 'Dt09' : _Prop_Data_Update_Interval, + 'Dt10' : _Prop_Relocated_Executable_Path, + 'Dt13' : _Prop_Stop_at_temp_breakpoint, + 'Dt14' : _Prop_Temp_breakpoint_names, + 'Dt15' : _Prop_Cache_symbolics, + 'Dt16' : _Prop_Temp_Breakpoint_Type, + 'Dw01' : _Prop_Debugging_Start_Action, + 'Dw02' : _Prop_Do_Nothing_To_Projects, + 'ED01' : _Prop_Flash_Delay, + 'ED02' : _Prop_Dynamic_Scroll, + 'ED03' : _Prop_Balance, + 'ED04' : _Prop_Use_Drag__26__Drop_Editing, + 'ED06' : _Prop_Sort_Function_Popup, + 'ED07' : _Prop_Use_Multiple_Undo, + 'ED08' : _Prop_Remember_Font, + 'ED09' : _Prop_Remember_Selection, + 'ED10' : _Prop_Remember_Window, + 'ED12' : _Prop_Main_Text_Color, + 'ED13' : _Prop_Background_Color, + 'ED14' : _Prop_Context_Popup_Delay, + 'ED15' : _Prop_Relaxed_C_Popup_Parsing, + 'ED16' : _Prop_Left_Margin_Line_Select, + 'ED17' : _Prop_Default_Text_File_Format, + 'EX04' : _Prop_Modification_Date_Caching, + 'EX07' : _Prop_Full_Screen_Zoom, + 'EX08' : _Prop_External_Reference, + 'EX09' : _Prop_Browser_Active, + 'EX10' : _Prop_Use_Editor_Extensions, + 'EX11' : _Prop_Use_External_Editor, + 'EX12' : _Prop_Use_Script_Menu, + 'EX16' : _Prop_Recent_Editor_Count, + 'EX17' : _Prop_Recent_Project_Count, + 'EX18' : _Prop_Use_ToolServer_Menu, + 'EX19' : _Prop_Automatic_Toolbar_Help, + 'EX30' : _Prop_Dump_Browser_Info, + 'EX31' : _Prop_Cache_Subproject_Data, + 'ErrL' : _Prop_lineNumber, + 'ErrS' : _Prop_message, + 'ErrT' : _Prop_messageKind, + 'FMps' : _Prop_Mappings, + 'FN01' : _Prop_Auto_Indent, + 'FN02' : _Prop_Tab_Size, + 'FN03' : _Prop_Tab_Indents_Selection, + 'FN04' : _Prop_Tab_Inserts_Spaces, + 'Frmt' : _Prop_format, + 'Frmw' : _Prop_framework, + 'GH01' : _Prop_Syntax_Coloring, + 'GH02' : _Prop_Comment_Color, + 'GH03' : _Prop_Keyword_Color, + 'GH04' : _Prop_String_Color, + 'GH05' : _Prop_Custom_Color_1, + 'GH06' : _Prop_Custom_Color_2, + 'GH07' : _Prop_Custom_Color_3, + 'GH08' : _Prop_Custom_Color_4, + 'HstF' : _Prop_host_flags, + 'IncF' : _Prop_includes, + 'Kind' : _Prop_path_kind, + 'Lang' : _Prop_language, + 'NumF' : _Prop_filecount, + 'Orig' : _Prop_origin, + 'PA01' : _Prop_User_Paths, + 'PA02' : _Prop_Always_Full_Search, + 'PA03' : _Prop_System_Paths, + 'PA04' : _Prop_Convert_Paths, + 'PA05' : _Prop_Require_Framework_Includes, + 'PLck' : _Prop_seg_2d_locked, + 'PR04' : _Prop_File_Type, + 'PX01' : _Prop_Plugin_Diagnostics_Level, + 'PX02' : _Prop_Disable_Third_Party_COM_Plugins, + 'Path' : _Prop_path, + 'Prel' : _Prop_seg_2d_preloaded, + 'Prot' : _Prop_seg_2d_protected, + 'Purg' : _Prop_seg_2d_purgeable, + 'RS01' : _Prop_Host_Application, + 'RS02' : _Prop_Command_Line_Arguments, + 'RS03' : _Prop_Working_Directory, + 'RS04' : _Prop_Environment_Variables, + 'Recu' : _Prop_recursive, + 'Root' : _Prop_root, + 'SF01' : _Prop_Expression_To_Match, + 'SF02' : _Prop_Skip_Project_Operations, + 'SF03' : _Prop_Skip_Find_And_Compare_Operations, + 'SFis' : _Prop_Shielded_Items, + 'ST01' : _Prop_Source_Trees, + 'SrcT' : _Prop_filetype, + 'Stat' : _Prop_static, + 'SubA' : _Prop_all_subclasses, + 'SubC' : _Prop_subclasses, + 'SymG' : _Prop_symbols, + 'SysH' : _Prop_seg_2d_system_heap, + 'TA01' : _Prop_Linker, + 'TA02' : _Prop_Extension, + 'TA03' : _Prop_Precompiled, + 'TA04' : _Prop_Resource_File, + 'TA05' : _Prop_Launchable, + 'TA06' : _Prop_Ignored_by_Make, + 'TA07' : _Prop_Compiler, + 'TA09' : _Prop_Post_Linker, + 'TA10' : _Prop_Target_Name, + 'TA11' : _Prop_Output_Directory_Path, + 'TA12' : _Prop_Output_Directory_Origin, + 'TA13' : _Prop_Pre_Linker, + 'TA15' : _Prop_Use_Relative_Paths, + 'TA16' : _Prop_Output_Directory_Location, + 'UpTD' : _Prop_up_to_date, + 'VC01' : _Prop_VCS_Active, + 'VC02' : _Prop_Connection_Method, + 'VC03' : _Prop_Username, + 'VC04' : _Prop_Password, + 'VC05' : _Prop_Auto_Connect, + 'VC06' : _Prop_Store_Password, + 'VC07' : _Prop_Always_Prompt, + 'VC08' : _Prop_Mount_Volume, + 'VC09' : _Prop_Database_Path, + 'VC10' : _Prop_Local_Path, + 'VC11' : _Prop_Use_Global_Settings, + 'Valu' : _Prop_value, + 'Virt' : _Prop_virtual, + 'Weak' : _Prop_weak_link, + 'file' : _Prop_disk_file, + 'pnam' : _Prop_name, + 'ptps' : _Prop_Text_Size, + 'ptxf' : _Prop_Text_Font, +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'Acce' : _Enum_Acce, + 'BXbr' : _Enum_BXbr, + 'DbSA' : _Enum_DbSA, + 'DgBL' : _Enum_DgBL, + 'ErrT' : _Enum_ErrT, + 'Inte' : _Enum_Inte, + 'Lang' : _Enum_Lang, + 'PPrm' : _Enum_PPrm, + 'PXdg' : _Enum_PXdg, + 'PthF' : _Enum_PthF, + 'RefP' : _Enum_RefP, + 'STKd' : _Enum_STKd, + 'SrcT' : _Enum_SrcT, + 'TmpB' : _Enum_TmpB, + 'TxtF' : _Enum_TxtF, + 'savo' : _Enum_savo, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/Required.py b/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/Required.py new file mode 100644 index 000000000..b0749e873 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/Required.py @@ -0,0 +1,62 @@ +"""Suite Required: Terms that every application should support +Level 1, version 1 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Metrowerks CodeWarrior 7.0/Metrowerks CodeWarrior/CodeWarrior IDE 4.2.5 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'reqd' + +from StdSuites.Required_Suite import * +class Required_Events(Required_Suite_Events): + + _argmap_open = { + 'converting' : 'Conv', + } + + def open(self, _object, _attributes={}, **_arguments): + """open: Open the specified object(s) + Required argument: list of objects to open + Keyword argument converting: Whether to convert project to latest version (yes/no; default is ask). + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'odoc' + + aetools.keysubst(_arguments, self._argmap_open) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'Conv', _Enum_Conv) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + +_Enum_Conv = { + 'yes' : 'yes ', # Convert the project if necessary on open + 'no' : 'no ', # Do not convert the project if needed on open +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'Conv' : _Enum_Conv, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/Standard_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/Standard_Suite.py new file mode 100644 index 000000000..ae277a276 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/Standard_Suite.py @@ -0,0 +1,408 @@ +"""Suite Standard Suite: Common terms for most applications +Level 1, version 1 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Metrowerks CodeWarrior 7.0/Metrowerks CodeWarrior/CodeWarrior IDE 4.2.5 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'CoRe' + +from StdSuites.Standard_Suite import * +class Standard_Suite_Events(Standard_Suite_Events): + + _argmap_close = { + 'saving' : 'savo', + 'saving_in' : 'kfil', + } + + def close(self, _object, _attributes={}, **_arguments): + """close: close an object + Required argument: the object to close + Keyword argument saving: specifies whether or not changes should be saved before closing + Keyword argument saving_in: the file in which to save the object + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'clos' + + aetools.keysubst(_arguments, self._argmap_close) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'savo', _Enum_savo) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_count = { + 'each' : 'kocl', + } + + def count(self, _object, _attributes={}, **_arguments): + """count: return the number of elements of a particular class within an object + Required argument: the object whose elements are to be counted + Keyword argument each: the class of the elements to be counted. Keyword 'each' is optional in AppleScript + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the number of elements + """ + _code = 'core' + _subcode = 'cnte' + + aetools.keysubst(_arguments, self._argmap_count) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_get = { + 'as' : 'rtyp', + } + + def get(self, _object, _attributes={}, **_arguments): + """get: get the data for an object + Required argument: the object whose data is to be returned + Keyword argument as: the desired types for the data, in order of preference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: The data from the object + """ + _code = 'core' + _subcode = 'getd' + + aetools.keysubst(_arguments, self._argmap_get) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_make = { + 'new' : 'kocl', + 'as' : 'rtyp', + 'at' : 'insh', + 'with_data' : 'data', + 'with_properties' : 'prdt', + } + + def make(self, _no_object=None, _attributes={}, **_arguments): + """make: make a new element + Keyword argument new: the class of the new element\xd1keyword 'new' is optional in AppleScript + Keyword argument as: the desired types for the data, in order of preference + Keyword argument at: the location at which to insert the element + Keyword argument with_data: the initial data for the element + Keyword argument with_properties: the initial values for the properties of the element + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: to the new object(s) + """ + _code = 'core' + _subcode = 'crel' + + aetools.keysubst(_arguments, self._argmap_make) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def select(self, _object=None, _attributes={}, **_arguments): + """select: select the specified object + Required argument: the object to select + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'misc' + _subcode = 'slct' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_set = { + 'to' : 'data', + } + + def set(self, _object, _attributes={}, **_arguments): + """set: set an object's data + Required argument: the object to change + Keyword argument to: the new value + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'setd' + + aetools.keysubst(_arguments, self._argmap_set) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - an application program """ + want = 'capp' +class _Prop_user_interaction(aetools.NProperty): + """user interaction - user interaction level """ + which = 'inte' + want = 'Inte' +user_interaction = _Prop_user_interaction() +# element 'cwin' as ['indx', 'name', 'rang'] +# element 'docu' as ['indx', 'name', 'rang'] + +class character(aetools.ComponentItem): + """character - a character """ + want = 'cha ' +class _Prop_length(aetools.NProperty): + """length - length in characters of this object """ + which = 'pLen' + want = 'long' +class _Prop_offset(aetools.NProperty): + """offset - offset of a text object from the beginning of the document (first char has offset 1) """ + which = 'pOff' + want = 'long' + +class insertion_point(aetools.ComponentItem): + """insertion point - An insertion location between two objects """ + want = 'cins' + +class line(aetools.ComponentItem): + """line - lines of text """ + want = 'clin' +class _Prop_index(aetools.NProperty): + """index - index of a line object from the beginning of the document (first line has index 1) """ + which = 'pidx' + want = 'long' +# element 'cha ' as ['indx', 'rang', 'rele'] + +lines = line + +class selection_2d_object(aetools.ComponentItem): + """selection-object - the selection visible to the user """ + want = 'csel' +class _Prop_contents(aetools.NProperty): + """contents - the contents of the selection """ + which = 'pcnt' + want = 'type' +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'clin' as ['indx', 'rang', 'rele'] +# element 'ctxt' as ['rang'] + +class text(aetools.ComponentItem): + """text - Text """ + want = 'ctxt' +# element 'cha ' as ['indx', 'rele', 'rang'] +# element 'cins' as ['rele'] +# element 'clin' as ['indx', 'rang', 'rele'] +# element 'ctxt' as ['rang'] + +class window(aetools.ComponentItem): + """window - A window """ + want = 'cwin' +class _Prop_bounds(aetools.NProperty): + """bounds - the boundary rectangle for the window """ + which = 'pbnd' + want = 'qdrt' +class _Prop_document(aetools.NProperty): + """document - the document that owns this window """ + which = 'docu' + want = 'docu' +class _Prop_name(aetools.NProperty): + """name - the title of the window """ + which = 'pnam' + want = 'itxt' +class _Prop_position(aetools.NProperty): + """position - upper left coordinates of window """ + which = 'ppos' + want = 'QDpt' +class _Prop_visible(aetools.NProperty): + """visible - is the window visible? """ + which = 'pvis' + want = 'bool' +class _Prop_zoomed(aetools.NProperty): + """zoomed - Is the window zoomed? """ + which = 'pzum' + want = 'bool' + +windows = window + +class document(aetools.ComponentItem): + """document - a document """ + want = 'docu' +class _Prop_file_permissions(aetools.NProperty): + """file permissions - the file permissions for the document """ + which = 'PERM' + want = 'PERM' +class _Prop_kind(aetools.NProperty): + """kind - the kind of document """ + which = 'DKND' + want = 'DKND' +class _Prop_location(aetools.NProperty): + """location - the file of the document """ + which = 'FILE' + want = 'fss ' +class _Prop_window(aetools.NProperty): + """window - the window of the document. """ + which = 'cwin' + want = 'cwin' + +documents = document + +class files(aetools.ComponentItem): + """files - Every file """ + want = 'file' + +file = files +application._superclassnames = [] +application._privpropdict = { + 'user_interaction' : _Prop_user_interaction, +} +application._privelemdict = { + 'document' : document, + 'window' : window, +} +character._superclassnames = [] +character._privpropdict = { + 'length' : _Prop_length, + 'offset' : _Prop_offset, +} +character._privelemdict = { +} +insertion_point._superclassnames = [] +insertion_point._privpropdict = { + 'length' : _Prop_length, + 'offset' : _Prop_offset, +} +insertion_point._privelemdict = { +} +line._superclassnames = [] +line._privpropdict = { + 'index' : _Prop_index, + 'length' : _Prop_length, + 'offset' : _Prop_offset, +} +line._privelemdict = { + 'character' : character, +} +selection_2d_object._superclassnames = [] +selection_2d_object._privpropdict = { + 'contents' : _Prop_contents, + 'length' : _Prop_length, + 'offset' : _Prop_offset, +} +selection_2d_object._privelemdict = { + 'character' : character, + 'line' : line, + 'text' : text, +} +text._superclassnames = [] +text._privpropdict = { + 'length' : _Prop_length, + 'offset' : _Prop_offset, +} +text._privelemdict = { + 'character' : character, + 'insertion_point' : insertion_point, + 'line' : line, + 'text' : text, +} +window._superclassnames = [] +window._privpropdict = { + 'bounds' : _Prop_bounds, + 'document' : _Prop_document, + 'index' : _Prop_index, + 'name' : _Prop_name, + 'position' : _Prop_position, + 'visible' : _Prop_visible, + 'zoomed' : _Prop_zoomed, +} +window._privelemdict = { +} +document._superclassnames = [] +document._privpropdict = { + 'file_permissions' : _Prop_file_permissions, + 'index' : _Prop_index, + 'kind' : _Prop_kind, + 'location' : _Prop_location, + 'name' : _Prop_name, + 'window' : _Prop_window, +} +document._privelemdict = { +} +files._superclassnames = [] +files._privpropdict = { +} +files._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, + 'cha ' : character, + 'cins' : insertion_point, + 'clin' : line, + 'csel' : selection_2d_object, + 'ctxt' : text, + 'cwin' : window, + 'docu' : document, + 'file' : files, +} + +_propdeclarations = { + 'DKND' : _Prop_kind, + 'FILE' : _Prop_location, + 'PERM' : _Prop_file_permissions, + 'cwin' : _Prop_window, + 'docu' : _Prop_document, + 'inte' : _Prop_user_interaction, + 'pLen' : _Prop_length, + 'pOff' : _Prop_offset, + 'pbnd' : _Prop_bounds, + 'pcnt' : _Prop_contents, + 'pidx' : _Prop_index, + 'pnam' : _Prop_name, + 'ppos' : _Prop_position, + 'pvis' : _Prop_visible, + 'pzum' : _Prop_zoomed, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/__init__.py b/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/__init__.py new file mode 100644 index 000000000..5ef7ca964 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/CodeWarrior/__init__.py @@ -0,0 +1,189 @@ +""" +Package generated from /Volumes/Sap/Applications (Mac OS 9)/Metrowerks CodeWarrior 7.0/Metrowerks CodeWarrior/CodeWarrior IDE 4.2.5 +""" +import aetools +Error = aetools.Error +import CodeWarrior_suite +import Standard_Suite +import Metrowerks_Shell_Suite +import Required + + +_code_to_module = { + 'CWIE' : CodeWarrior_suite, + 'CoRe' : Standard_Suite, + 'MMPR' : Metrowerks_Shell_Suite, + 'reqd' : Required, +} + + + +_code_to_fullname = { + 'CWIE' : ('CodeWarrior.CodeWarrior_suite', 'CodeWarrior_suite'), + 'CoRe' : ('CodeWarrior.Standard_Suite', 'Standard_Suite'), + 'MMPR' : ('CodeWarrior.Metrowerks_Shell_Suite', 'Metrowerks_Shell_Suite'), + 'reqd' : ('CodeWarrior.Required', 'Required'), +} + +from CodeWarrior_suite import * +from Standard_Suite import * +from Metrowerks_Shell_Suite import * +from Required import * + +def getbaseclasses(v): + if not getattr(v, '_propdict', None): + v._propdict = {} + v._elemdict = {} + for superclassname in getattr(v, '_superclassnames', []): + superclass = eval(superclassname) + getbaseclasses(superclass) + v._propdict.update(getattr(superclass, '_propdict', {})) + v._elemdict.update(getattr(superclass, '_elemdict', {})) + v._propdict.update(getattr(v, '_privpropdict', {})) + v._elemdict.update(getattr(v, '_privelemdict', {})) + +import StdSuites + +# +# Set property and element dictionaries now that all classes have been defined +# +getbaseclasses(character) +getbaseclasses(selection_2d_object) +getbaseclasses(application) +getbaseclasses(document) +getbaseclasses(text) +getbaseclasses(window) +getbaseclasses(file) +getbaseclasses(line) +getbaseclasses(insertion_point) +getbaseclasses(single_class_browser) +getbaseclasses(project_document) +getbaseclasses(symbol_browser) +getbaseclasses(editor_document) +getbaseclasses(file_compare_document) +getbaseclasses(class_browser) +getbaseclasses(subtarget) +getbaseclasses(message_document) +getbaseclasses(project_inspector) +getbaseclasses(text_document) +getbaseclasses(catalog_document) +getbaseclasses(class_hierarchy) +getbaseclasses(target) +getbaseclasses(build_progress_document) +getbaseclasses(target_file) +getbaseclasses(ToolServer_worksheet) +getbaseclasses(single_class_hierarchy) +getbaseclasses(File_Mapping) +getbaseclasses(browser_catalog) +getbaseclasses(Build_Settings) +getbaseclasses(ProjectFile) +getbaseclasses(VCS_Setup) +getbaseclasses(data_member) +getbaseclasses(Shielded_Folder) +getbaseclasses(Custom_Keywords) +getbaseclasses(Path_Information) +getbaseclasses(Segment) +getbaseclasses(Source_Tree) +getbaseclasses(Access_Paths) +getbaseclasses(Debugger_Windowing) +getbaseclasses(Relative_Path) +getbaseclasses(Environment_Variable) +getbaseclasses(base_class) +getbaseclasses(Debugger_Display) +getbaseclasses(Build_Extras) +getbaseclasses(Error_Information) +getbaseclasses(Editor) +getbaseclasses(Shielded_Folders) +getbaseclasses(Extras) +getbaseclasses(File_Mappings) +getbaseclasses(Function_Information) +getbaseclasses(Debugger_Target) +getbaseclasses(Syntax_Coloring) +getbaseclasses(class_) +getbaseclasses(Global_Source_Trees) +getbaseclasses(Target_Settings) +getbaseclasses(Debugger_Global) +getbaseclasses(member_function) +getbaseclasses(Runtime_Settings) +getbaseclasses(Plugin_Settings) +getbaseclasses(Browser_Coloring) +getbaseclasses(Font) +getbaseclasses(Target_Source_Trees) + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'cha ' : character, + 'csel' : selection_2d_object, + 'capp' : application, + 'docu' : document, + 'ctxt' : text, + 'cwin' : window, + 'file' : file, + 'clin' : line, + 'cins' : insertion_point, + '1BRW' : single_class_browser, + 'PRJD' : project_document, + 'SYMB' : symbol_browser, + 'EDIT' : editor_document, + 'COMP' : file_compare_document, + 'BROW' : class_browser, + 'SBTG' : subtarget, + 'MSSG' : message_document, + 'INSP' : project_inspector, + 'TXTD' : text_document, + 'CTLG' : catalog_document, + 'HIER' : class_hierarchy, + 'TRGT' : target, + 'PRGS' : build_progress_document, + 'SRCF' : target_file, + 'TOOL' : ToolServer_worksheet, + '1HIR' : single_class_hierarchy, + 'FMap' : File_Mapping, + 'Cata' : browser_catalog, + 'BSTG' : Build_Settings, + 'SrcF' : ProjectFile, + 'VCSs' : VCS_Setup, + 'DtMb' : data_member, + 'SFit' : Shielded_Folder, + 'CUKW' : Custom_Keywords, + 'PInf' : Path_Information, + 'Seg ' : Segment, + 'SrcT' : Source_Tree, + 'PATH' : Access_Paths, + 'DbWN' : Debugger_Windowing, + 'RlPt' : Relative_Path, + 'EnvV' : Environment_Variable, + 'BsCl' : base_class, + 'DbDS' : Debugger_Display, + 'LXTR' : Build_Extras, + 'ErrM' : Error_Information, + 'EDTR' : Editor, + 'SHFL' : Shielded_Folders, + 'GXTR' : Extras, + 'FLMP' : File_Mappings, + 'FDef' : Function_Information, + 'DbTG' : Debugger_Target, + 'SNTX' : Syntax_Coloring, + 'Clas' : class_, + 'GSTs' : Global_Source_Trees, + 'TARG' : Target_Settings, + 'DbGL' : Debugger_Global, + 'MbFn' : member_function, + 'RSTG' : Runtime_Settings, + 'PSTG' : Plugin_Settings, + 'BRKW' : Browser_Coloring, + 'mFNT' : Font, + 'TSTs' : Target_Source_Trees, +} + + +class CodeWarrior(CodeWarrior_suite_Events, + Standard_Suite_Events, + Metrowerks_Shell_Suite_Events, + Required_Events, + aetools.TalkTo): + _signature = 'CWIE' + + _moduleName = 'CodeWarrior' diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Microsoft_Internet_Explorer.py b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Microsoft_Internet_Explorer.py new file mode 100644 index 000000000..bce9e7698 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Microsoft_Internet_Explorer.py @@ -0,0 +1,96 @@ +"""Suite Microsoft Internet Explorer Suite: Events defined by Internet Explorer +Level 1, version 1 + +Generated from /Applications/Internet Explorer.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'MSIE' + +class Microsoft_Internet_Explorer_Events: + + def GetSource(self, _object=None, _attributes={}, **_arguments): + """GetSource: Get the HTML source of a browser window + Required argument: Window Identifier of window from which to get the source. No value means get the source from the frontmost window. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: undocumented, typecode 'TEXT' + """ + _code = 'MSIE' + _subcode = 'SORC' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def PrintBrowserWindow(self, _object=None, _attributes={}, **_arguments): + """PrintBrowserWindow: Print contents of browser window (HTML) + Required argument: Window Identifier of the window to print. No value means print the frontmost browser window. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'misc' + _subcode = 'pWND' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_do_script = { + 'window' : 'WIND', + } + + def do_script(self, _object, _attributes={}, **_arguments): + """do script: Execute script commands + Required argument: JavaScript text to execute + Keyword argument window: optional Window Identifier (as supplied by the ListWindows event) specifying context in which to execute the script + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Return value + """ + _code = 'misc' + _subcode = 'dosc' + + aetools.keysubst(_arguments, self._argmap_do_script) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Netscape_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Netscape_Suite.py new file mode 100644 index 000000000..c274e70d1 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Netscape_Suite.py @@ -0,0 +1,49 @@ +"""Suite Netscape Suite: Events defined by Netscape +Level 1, version 1 + +Generated from /Applications/Internet Explorer.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'MOSS' + +class Netscape_Suite_Events: + + def Open_bookmark(self, _object=None, _attributes={}, **_arguments): + """Open bookmark: Opens a bookmark file + Required argument: If not available, reloads the current bookmark file + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MOSS' + _subcode = 'book' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Required_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Required_Suite.py new file mode 100644 index 000000000..0a985d123 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Required_Suite.py @@ -0,0 +1,108 @@ +"""Suite Required Suite: Events that every application should support +Level 1, version 1 + +Generated from /Applications/Internet Explorer.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'reqd' + +from StdSuites.Required_Suite import * +class Required_Suite_Events(Required_Suite_Events): + + def open(self, _object, _attributes={}, **_arguments): + """open: Open documents + Required argument: undocumented, typecode 'alis' + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'odoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def print_(self, _object, _attributes={}, **_arguments): + """print: Print documents + Required argument: undocumented, typecode 'alis' + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'pdoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def quit(self, _no_object=None, _attributes={}, **_arguments): + """quit: Quit application + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'quit' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def run(self, _no_object=None, _attributes={}, **_arguments): + """run: + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'oapp' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Standard_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Standard_Suite.py new file mode 100644 index 000000000..7ead98af9 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Standard_Suite.py @@ -0,0 +1,72 @@ +"""Suite Standard Suite: Common terms for most applications +Level 1, version 1 + +Generated from /Applications/Internet Explorer.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = '****' + +class Standard_Suite_Events: + + _argmap_get = { + 'as' : 'rtyp', + } + + def get(self, _object, _attributes={}, **_arguments): + """get: + Required argument: an AE object reference + Keyword argument as: undocumented, typecode 'type' + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'core' + _subcode = 'getd' + + aetools.keysubst(_arguments, self._argmap_get) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - An application program """ + want = 'capp' +class _Prop_selected_text(aetools.NProperty): + """selected text - the selected text """ + which = 'stxt' + want = 'TEXT' +selected_text = _Prop_selected_text() +application._superclassnames = [] +application._privpropdict = { + 'selected_text' : _Prop_selected_text, +} +application._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, +} + +_propdeclarations = { + 'stxt' : _Prop_selected_text, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/URL_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/URL_Suite.py new file mode 100644 index 000000000..e234546ce --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/URL_Suite.py @@ -0,0 +1,54 @@ +"""Suite URL Suite: Standard suite for Uniform Resource Locators +Level 1, version 1 + +Generated from /Applications/Internet Explorer.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'GURL' + +class URL_Suite_Events: + + _argmap_GetURL = { + 'to' : 'dest', + } + + def GetURL(self, _object, _attributes={}, **_arguments): + """GetURL: Open the URL (and optionally save it to disk) + Required argument: URL to open + Keyword argument to: File into which to save resource located at URL. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'GURL' + _subcode = 'GURL' + + aetools.keysubst(_arguments, self._argmap_GetURL) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Web_Browser_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Web_Browser_Suite.py new file mode 100644 index 000000000..ff808eb96 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/Web_Browser_Suite.py @@ -0,0 +1,226 @@ +"""Suite Web Browser Suite: Class of events supported by Web Browser applications +Level 1, version 1 + +Generated from /Applications/Internet Explorer.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'WWW!' + +class Web_Browser_Suite_Events: + + def Activate(self, _object=None, _attributes={}, **_arguments): + """Activate: Activate Internet Explorer and optionally select window designated by Window Identifier. + Required argument: Window Identifier + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Window Identifier of window to activate + """ + _code = 'WWW!' + _subcode = 'ACTV' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def CloseAllWindows(self, _no_object=None, _attributes={}, **_arguments): + """CloseAllWindows: Closes all windows + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Success + """ + _code = 'WWW!' + _subcode = 'CLSA' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_CloseWindow = { + 'ID' : 'WIND', + 'Title' : 'TITL', + } + + def CloseWindow(self, _no_object=None, _attributes={}, **_arguments): + """CloseWindow: Close the window specified by either Window Identifier or Title. If no parameter is specified, close the top window. + Keyword argument ID: ID of the window to close. (Can use -1 for top window) + Keyword argument Title: Title of the window to close + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Success + """ + _code = 'WWW!' + _subcode = 'CLOS' + + aetools.keysubst(_arguments, self._argmap_CloseWindow) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def GetWindowInfo(self, _object, _attributes={}, **_arguments): + """GetWindowInfo: Returns a window info record (URL/Title) for the specified window. + Required argument: Window Identifier of the window + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: + """ + _code = 'WWW!' + _subcode = 'WNFO' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def ListWindows(self, _no_object=None, _attributes={}, **_arguments): + """ListWindows: Returns list of Window Identifiers for all open windows. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: undocumented, typecode 'list' + """ + _code = 'WWW!' + _subcode = 'LSTW' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_OpenURL = { + 'to' : 'INTO', + 'toWindow' : 'WIND', + 'Flags' : 'FLGS', + 'FormData' : 'POST', + 'MIME_Type' : 'MIME', + } + + def OpenURL(self, _object, _attributes={}, **_arguments): + """OpenURL: Retrieves URL off the Web. + Required argument: Fully-qualified URL + Keyword argument to: Target file for saving downloaded data + Keyword argument toWindow: Target window for resource at URL (-1 for top window, 0 for new window) + Keyword argument Flags: Valid Flags settings are: 1-Ignore the document cache; 2-Ignore the image cache; 4-Operate in background mode. + Keyword argument FormData: data to post + Keyword argument MIME_Type: MIME type of data being posted + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'WWW!' + _subcode = 'OURL' + + aetools.keysubst(_arguments, self._argmap_OpenURL) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_ParseAnchor = { + 'withURL' : 'RELA', + } + + def ParseAnchor(self, _object, _attributes={}, **_arguments): + """ParseAnchor: Combines a base URL and a relative URL to produce a fully-qualified URL + Required argument: Base URL + Keyword argument withURL: Relative URL that is combined with the Base URL (in the direct object) to produce a fully-qualified URL. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Fully-qualified URL + """ + _code = 'WWW!' + _subcode = 'PRSA' + + aetools.keysubst(_arguments, self._argmap_ParseAnchor) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_ShowFile = { + 'MIME_Type' : 'MIME', + 'Window_Identifier' : 'WIND', + 'URL' : 'URL ', + } + + def ShowFile(self, _object, _attributes={}, **_arguments): + """ShowFile: FileSpec containing data of specified MIME type to be rendered in window specified by Window Identifier. + Required argument: The file + Keyword argument MIME_Type: MIME type + Keyword argument Window_Identifier: Identifier of the target window for the URL. (Can use -1 for top window) + Keyword argument URL: URL that allows this document to be reloaded. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'WWW!' + _subcode = 'SHWF' + + aetools.keysubst(_arguments, self._argmap_ShowFile) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/__init__.py b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/__init__.py new file mode 100644 index 000000000..a9b09b041 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Explorer/__init__.py @@ -0,0 +1,80 @@ +""" +Package generated from /Applications/Internet Explorer.app +""" +import aetools +Error = aetools.Error +import Standard_Suite +import URL_Suite +import Netscape_Suite +import Microsoft_Internet_Explorer +import Web_Browser_Suite +import Required_Suite + + +_code_to_module = { + '****' : Standard_Suite, + 'GURL' : URL_Suite, + 'MOSS' : Netscape_Suite, + 'MSIE' : Microsoft_Internet_Explorer, + 'WWW!' : Web_Browser_Suite, + 'reqd' : Required_Suite, +} + + + +_code_to_fullname = { + '****' : ('Explorer.Standard_Suite', 'Standard_Suite'), + 'GURL' : ('Explorer.URL_Suite', 'URL_Suite'), + 'MOSS' : ('Explorer.Netscape_Suite', 'Netscape_Suite'), + 'MSIE' : ('Explorer.Microsoft_Internet_Explorer', 'Microsoft_Internet_Explorer'), + 'WWW!' : ('Explorer.Web_Browser_Suite', 'Web_Browser_Suite'), + 'reqd' : ('Explorer.Required_Suite', 'Required_Suite'), +} + +from Standard_Suite import * +from URL_Suite import * +from Netscape_Suite import * +from Microsoft_Internet_Explorer import * +from Web_Browser_Suite import * +from Required_Suite import * + +def getbaseclasses(v): + if not getattr(v, '_propdict', None): + v._propdict = {} + v._elemdict = {} + for superclassname in getattr(v, '_superclassnames', []): + superclass = eval(superclassname) + getbaseclasses(superclass) + v._propdict.update(getattr(superclass, '_propdict', {})) + v._elemdict.update(getattr(superclass, '_elemdict', {})) + v._propdict.update(getattr(v, '_privpropdict', {})) + v._elemdict.update(getattr(v, '_privelemdict', {})) + +import StdSuites + +# +# Set property and element dictionaries now that all classes have been defined +# +getbaseclasses(application) + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, +} + + +class Explorer(Standard_Suite_Events, + URL_Suite_Events, + Netscape_Suite_Events, + Microsoft_Internet_Explorer_Events, + Web_Browser_Suite_Events, + Required_Suite_Events, + aetools.TalkTo): + _signature = 'MSIE' + + _moduleName = 'Explorer' + + _elemdict = application._elemdict + _propdict = application._propdict diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Containers_and_folders.py b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Containers_and_folders.py new file mode 100644 index 000000000..e495ef496 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Containers_and_folders.py @@ -0,0 +1,279 @@ +"""Suite Containers and folders: Classes that can contain other file system items +Level 1, version 1 + +Generated from /System/Library/CoreServices/Finder.app +AETE/AEUT resource version 0/144, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'fndr' + +class Containers_and_folders_Events: + + pass + + +class disk(aetools.ComponentItem): + """disk - A disk """ + want = 'cdis' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - inherits some of its properties from the container class """ + which = 'c@#^' + want = 'ctnr' +class _Prop_capacity(aetools.NProperty): + """capacity - the total number of bytes (free or used) on the disk """ + which = 'capa' + want = 'comp' +class _Prop_ejectable(aetools.NProperty): + """ejectable - Can the media be ejected (floppies, CD's, and so on)? """ + which = 'isej' + want = 'bool' +class _Prop_format(aetools.NProperty): + """format - the filesystem format of this disk """ + which = 'dfmt' + want = 'edfm' +class _Prop_free_space(aetools.NProperty): + """free space - the number of free bytes left on the disk """ + which = 'frsp' + want = 'comp' +class _Prop_ignore_privileges(aetools.NProperty): + """ignore privileges - Ignore permissions on this disk? """ + which = 'igpr' + want = 'bool' +class _Prop_local_volume(aetools.NProperty): + """local volume - Is the media a local volume (as opposed to a file server)? """ + which = 'isrv' + want = 'bool' +class _Prop_startup(aetools.NProperty): + """startup - Is this disk the boot disk? """ + which = 'istd' + want = 'bool' +# element 'alia' as ['indx', 'name'] +# element 'appf' as ['indx', 'name', 'ID '] +# element 'cfol' as ['indx', 'name', 'ID '] +# element 'clpf' as ['indx', 'name'] +# element 'cobj' as ['indx', 'name'] +# element 'ctnr' as ['indx', 'name'] +# element 'docf' as ['indx', 'name'] +# element 'file' as ['indx', 'name'] +# element 'inlf' as ['indx', 'name'] +# element 'pack' as ['indx', 'name'] + +disks = disk + +class desktop_2d_object(aetools.ComponentItem): + """desktop-object - Desktop-object is the class of the \xd2desktop\xd3 object """ + want = 'cdsk' +# element 'alia' as ['indx', 'name'] +# element 'appf' as ['indx', 'name', 'ID '] +# element 'cdis' as ['indx', 'name'] +# element 'cfol' as ['indx', 'name', 'ID '] +# element 'clpf' as ['indx', 'name'] +# element 'cobj' as ['indx', 'name'] +# element 'ctnr' as ['indx', 'name'] +# element 'docf' as ['indx', 'name'] +# element 'file' as ['indx', 'name'] +# element 'inlf' as ['indx', 'name'] +# element 'pack' as ['indx', 'name'] + +class folder(aetools.ComponentItem): + """folder - A folder """ + want = 'cfol' +# element 'alia' as ['indx', 'name'] +# element 'appf' as ['indx', 'name', 'ID '] +# element 'cfol' as ['indx', 'name', 'ID '] +# element 'clpf' as ['indx', 'name'] +# element 'cobj' as ['indx', 'name'] +# element 'ctnr' as ['indx', 'name'] +# element 'docf' as ['indx', 'name'] +# element 'file' as ['indx', 'name'] +# element 'inlf' as ['indx', 'name'] +# element 'pack' as ['indx', 'name'] + +folders = folder + +class container(aetools.ComponentItem): + """container - An item that contains other items """ + want = 'ctnr' +class _Prop_completely_expanded(aetools.NProperty): + """completely expanded - (NOT AVAILABLE YET) Are the container and all of its children opened as outlines? (can only be set for containers viewed as lists) """ + which = 'pexc' + want = 'bool' +class _Prop_container_window(aetools.NProperty): + """container window - the container window for this folder """ + which = 'cwnd' + want = 'obj ' +class _Prop_entire_contents(aetools.NProperty): + """entire contents - the entire contents of the container, including the contents of its children """ + which = 'ects' + want = 'obj ' +class _Prop_expandable(aetools.NProperty): + """expandable - (NOT AVAILABLE YET) Is the container capable of being expanded as an outline? """ + which = 'pexa' + want = 'bool' +class _Prop_expanded(aetools.NProperty): + """expanded - (NOT AVAILABLE YET) Is the container opened as an outline? (can only be set for containers viewed as lists) """ + which = 'pexp' + want = 'bool' +# element 'alia' as ['indx', 'name'] +# element 'appf' as ['indx', 'name', 'ID '] +# element 'cfol' as ['indx', 'name', 'ID '] +# element 'clpf' as ['indx', 'name'] +# element 'cobj' as ['indx', 'name'] +# element 'ctnr' as ['indx', 'name'] +# element 'docf' as ['indx', 'name'] +# element 'file' as ['indx', 'name'] +# element 'inlf' as ['indx', 'name'] +# element 'pack' as ['indx', 'name'] + +containers = container + +class trash_2d_object(aetools.ComponentItem): + """trash-object - Trash-object is the class of the \xd2trash\xd3 object """ + want = 'ctrs' +class _Prop_warns_before_emptying(aetools.NProperty): + """warns before emptying - Display a dialog when emptying the trash? """ + which = 'warn' + want = 'bool' +# element 'alia' as ['indx', 'name'] +# element 'appf' as ['indx', 'name', 'ID '] +# element 'cfol' as ['indx', 'name', 'ID '] +# element 'clpf' as ['indx', 'name'] +# element 'cobj' as ['indx', 'name'] +# element 'ctnr' as ['indx', 'name'] +# element 'docf' as ['indx', 'name'] +# element 'file' as ['indx', 'name'] +# element 'inlf' as ['indx', 'name'] +# element 'pack' as ['indx', 'name'] +disk._superclassnames = ['container'] +import Files +import Finder_items +disk._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'capacity' : _Prop_capacity, + 'ejectable' : _Prop_ejectable, + 'format' : _Prop_format, + 'free_space' : _Prop_free_space, + 'ignore_privileges' : _Prop_ignore_privileges, + 'local_volume' : _Prop_local_volume, + 'startup' : _Prop_startup, +} +disk._privelemdict = { + 'alias_file' : Files.alias_file, + 'application_file' : Files.application_file, + 'clipping' : Files.clipping, + 'container' : container, + 'document_file' : Files.document_file, + 'file' : Files.file, + 'folder' : folder, + 'internet_location_file' : Files.internet_location_file, + 'item' : Finder_items.item, + 'package' : Files.package, +} +desktop_2d_object._superclassnames = ['container'] +desktop_2d_object._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, +} +desktop_2d_object._privelemdict = { + 'alias_file' : Files.alias_file, + 'application_file' : Files.application_file, + 'clipping' : Files.clipping, + 'container' : container, + 'disk' : disk, + 'document_file' : Files.document_file, + 'file' : Files.file, + 'folder' : folder, + 'internet_location_file' : Files.internet_location_file, + 'item' : Finder_items.item, + 'package' : Files.package, +} +folder._superclassnames = ['container'] +folder._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, +} +folder._privelemdict = { + 'alias_file' : Files.alias_file, + 'application_file' : Files.application_file, + 'clipping' : Files.clipping, + 'container' : container, + 'document_file' : Files.document_file, + 'file' : Files.file, + 'folder' : folder, + 'internet_location_file' : Files.internet_location_file, + 'item' : Finder_items.item, + 'package' : Files.package, +} +container._superclassnames = ['item'] +container._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'completely_expanded' : _Prop_completely_expanded, + 'container_window' : _Prop_container_window, + 'entire_contents' : _Prop_entire_contents, + 'expandable' : _Prop_expandable, + 'expanded' : _Prop_expanded, +} +container._privelemdict = { + 'alias_file' : Files.alias_file, + 'application_file' : Files.application_file, + 'clipping' : Files.clipping, + 'container' : container, + 'document_file' : Files.document_file, + 'file' : Files.file, + 'folder' : folder, + 'internet_location_file' : Files.internet_location_file, + 'item' : Finder_items.item, + 'package' : Files.package, +} +trash_2d_object._superclassnames = ['container'] +trash_2d_object._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'warns_before_emptying' : _Prop_warns_before_emptying, +} +trash_2d_object._privelemdict = { + 'alias_file' : Files.alias_file, + 'application_file' : Files.application_file, + 'clipping' : Files.clipping, + 'container' : container, + 'document_file' : Files.document_file, + 'file' : Files.file, + 'folder' : folder, + 'internet_location_file' : Files.internet_location_file, + 'item' : Finder_items.item, + 'package' : Files.package, +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'cdis' : disk, + 'cdsk' : desktop_2d_object, + 'cfol' : folder, + 'ctnr' : container, + 'ctrs' : trash_2d_object, +} + +_propdeclarations = { + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'capa' : _Prop_capacity, + 'cwnd' : _Prop_container_window, + 'dfmt' : _Prop_format, + 'ects' : _Prop_entire_contents, + 'frsp' : _Prop_free_space, + 'igpr' : _Prop_ignore_privileges, + 'isej' : _Prop_ejectable, + 'isrv' : _Prop_local_volume, + 'istd' : _Prop_startup, + 'pexa' : _Prop_expandable, + 'pexc' : _Prop_completely_expanded, + 'pexp' : _Prop_expanded, + 'warn' : _Prop_warns_before_emptying, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Enumerations.py b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Enumerations.py new file mode 100644 index 000000000..558d7ff23 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Enumerations.py @@ -0,0 +1,145 @@ +"""Suite Enumerations: Enumerations for the Finder +Level 1, version 1 + +Generated from /System/Library/CoreServices/Finder.app +AETE/AEUT resource version 0/144, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'tpnm' + +from StdSuites.Type_Names_Suite import * +class Enumerations_Events(Type_Names_Suite_Events): + + pass + +_Enum_earr = { + 'not_arranged' : 'narr', # + 'snap_to_grid' : 'grda', # + 'arranged_by_name' : 'nama', # + 'arranged_by_modification_date' : 'mdta', # + 'arranged_by_creation_date' : 'cdta', # + 'arranged_by_size' : 'siza', # + 'arranged_by_kind' : 'kina', # + 'arranged_by_label' : 'laba', # +} + +_Enum_ecvw = { + 'icon_view' : 'icnv', # + 'list_view' : 'lsvw', # + 'column_view' : 'clvw', # +} + +_Enum_edfm = { + 'Mac_OS_format' : 'dfhf', # + 'Mac_OS_Extended_format' : 'dfh+', # + 'UFS_format' : 'dfuf', # + 'NFS_format' : 'dfnf', # + 'audio_format' : 'dfau', # + 'ProDOS_format' : 'dfpr', # + 'MS_2d_DOS_format' : 'dfms', # + 'ISO_9660_format' : 'df96', # + 'High_Sierra_format' : 'dfhs', # + 'QuickTake_format' : 'dfqt', # + 'Apple_Photo_format' : 'dfph', # + 'AppleShare_format' : 'dfas', # + 'UDF_format' : 'dfud', # + 'WebDAV_format' : 'dfwd', # + 'FTP_format' : 'dfft', # + 'Packet_2d_written_UDF_format' : 'dfpu', # + 'unknown_format' : 'df??', # +} + +_Enum_elsv = { + 'name_column' : 'elsn', # + 'modification_date_column' : 'elsm', # + 'creation_date_column' : 'elsc', # + 'size_column' : 'elss', # + 'kind_column' : 'elsk', # + 'label_column' : 'elsl', # + 'version_column' : 'elsv', # + 'comment_column' : 'elsC', # +} + +_Enum_ipnl = { + 'General_Information_panel' : 'gpnl', # + 'Sharing_panel' : 'spnl', # + 'Memory_panel' : 'mpnl', # + 'Preview_panel' : 'vpnl', # + 'Application_panel' : 'apnl', # + 'Languages_panel' : 'pklg', # + 'Plugins_panel' : 'pkpg', # + 'Name__26__Extension_panel' : 'npnl', # + 'Comments_panel' : 'cpnl', # + 'Content_Index_panel' : 'cinl', # +} + +_Enum_isiz = { + 'mini' : 'miic', # + 'small' : 'smic', # + 'large' : 'lgic', # +} + +_Enum_lvic = { + 'small_icon' : 'smic', # + 'large_icon' : 'lgic', # +} + +_Enum_priv = { + 'read_only' : 'read', # + 'read_write' : 'rdwr', # + 'write_only' : 'writ', # + 'none' : 'none', # +} + +_Enum_sodr = { + 'normal' : 'snrm', # + 'reversed' : 'srvs', # +} + +_Enum_vwby = { + 'conflicts' : 'cflc', # + 'existing_items' : 'exsi', # + 'small_icon' : 'smic', # + 'icon' : 'iimg', # + 'name' : 'pnam', # + 'modification_date' : 'asmo', # + 'size' : 'ptsz', # + 'kind' : 'kind', # + 'comment' : 'comt', # + 'label' : 'labi', # + 'version' : 'vers', # + 'creation_date' : 'ascd', # + 'small_button' : 'smbu', # + 'large_button' : 'lgbu', # + 'grid' : 'grid', # + 'all' : 'kyal', # +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'earr' : _Enum_earr, + 'ecvw' : _Enum_ecvw, + 'edfm' : _Enum_edfm, + 'elsv' : _Enum_elsv, + 'ipnl' : _Enum_ipnl, + 'isiz' : _Enum_isiz, + 'lvic' : _Enum_lvic, + 'priv' : _Enum_priv, + 'sodr' : _Enum_sodr, + 'vwby' : _Enum_vwby, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Files.py b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Files.py new file mode 100644 index 000000000..ddbe1bafb --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Files.py @@ -0,0 +1,212 @@ +"""Suite Files: Classes representing files +Level 1, version 1 + +Generated from /System/Library/CoreServices/Finder.app +AETE/AEUT resource version 0/144, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'fndr' + +class Files_Events: + + pass + + +class alias_file(aetools.ComponentItem): + """alias file - An alias file (created with \xd2Make Alias\xd3) """ + want = 'alia' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - inherits some of its properties from the file class """ + which = 'c@#^' + want = 'file' +class _Prop_original_item(aetools.NProperty): + """original item - the original item pointed to by the alias """ + which = 'orig' + want = 'obj ' + +alias_files = alias_file + +class application_file(aetools.ComponentItem): + """application file - An application's file on disk """ + want = 'appf' +class _Prop_accepts_high_level_events(aetools.NProperty): + """accepts high level events - Is the application high-level event aware? (OBSOLETE: always returns true) """ + which = 'isab' + want = 'bool' +class _Prop_has_scripting_terminology(aetools.NProperty): + """has scripting terminology - Does the process have a scripting terminology, i.e., can it be scripted? """ + which = 'hscr' + want = 'bool' +class _Prop_minimum_size(aetools.NProperty): + """minimum size - the smallest memory size with which the application can be launched """ + which = 'mprt' + want = 'long' +class _Prop_opens_in_Classic(aetools.NProperty): + """opens in Classic - Should the application launch in the Classic environment? """ + which = 'Clsc' + want = 'bool' +class _Prop_preferred_size(aetools.NProperty): + """preferred size - the memory size with which the application will be launched """ + which = 'appt' + want = 'long' +class _Prop_suggested_size(aetools.NProperty): + """suggested size - the memory size with which the developer recommends the application be launched """ + which = 'sprt' + want = 'long' + +application_files = application_file + +class clipping(aetools.ComponentItem): + """clipping - A clipping """ + want = 'clpf' +class _Prop_clipping_window(aetools.NProperty): + """clipping window - (NOT AVAILABLE YET) the clipping window for this clipping """ + which = 'lwnd' + want = 'obj ' + +clippings = clipping + +class document_file(aetools.ComponentItem): + """document file - A document file """ + want = 'docf' + +document_files = document_file + +class file(aetools.ComponentItem): + """file - A file """ + want = 'file' +class _Prop_creator_type(aetools.NProperty): + """creator type - the OSType identifying the application that created the item """ + which = 'fcrt' + want = 'type' +class _Prop_file_type(aetools.NProperty): + """file type - the OSType identifying the type of data contained in the item """ + which = 'asty' + want = 'type' +class _Prop_product_version(aetools.NProperty): + """product version - the version of the product (visible at the top of the \xd2Get Info\xd3 window) """ + which = 'ver2' + want = 'utxt' +class _Prop_stationery(aetools.NProperty): + """stationery - Is the file a stationery pad? """ + which = 'pspd' + want = 'bool' +class _Prop_version(aetools.NProperty): + """version - the version of the file (visible at the bottom of the \xd2Get Info\xd3 window) """ + which = 'vers' + want = 'utxt' + +files = file + +class internet_location_file(aetools.ComponentItem): + """internet location file - An file containing an internet location """ + want = 'inlf' +class _Prop_location(aetools.NProperty): + """location - the internet location """ + which = 'iloc' + want = 'utxt' + +internet_location_files = internet_location_file + +class package(aetools.ComponentItem): + """package - A package """ + want = 'pack' + +packages = package +alias_file._superclassnames = ['file'] +alias_file._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'original_item' : _Prop_original_item, +} +alias_file._privelemdict = { +} +application_file._superclassnames = ['file'] +application_file._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'accepts_high_level_events' : _Prop_accepts_high_level_events, + 'has_scripting_terminology' : _Prop_has_scripting_terminology, + 'minimum_size' : _Prop_minimum_size, + 'opens_in_Classic' : _Prop_opens_in_Classic, + 'preferred_size' : _Prop_preferred_size, + 'suggested_size' : _Prop_suggested_size, +} +application_file._privelemdict = { +} +clipping._superclassnames = ['file'] +clipping._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'clipping_window' : _Prop_clipping_window, +} +clipping._privelemdict = { +} +document_file._superclassnames = ['file'] +document_file._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, +} +document_file._privelemdict = { +} +import Finder_items +file._superclassnames = ['item'] +file._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'creator_type' : _Prop_creator_type, + 'file_type' : _Prop_file_type, + 'product_version' : _Prop_product_version, + 'stationery' : _Prop_stationery, + 'version' : _Prop_version, +} +file._privelemdict = { +} +internet_location_file._superclassnames = ['file'] +internet_location_file._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'location' : _Prop_location, +} +internet_location_file._privelemdict = { +} +package._superclassnames = ['item'] +package._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, +} +package._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'alia' : alias_file, + 'appf' : application_file, + 'clpf' : clipping, + 'docf' : document_file, + 'file' : file, + 'inlf' : internet_location_file, + 'pack' : package, +} + +_propdeclarations = { + 'Clsc' : _Prop_opens_in_Classic, + 'appt' : _Prop_preferred_size, + 'asty' : _Prop_file_type, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'fcrt' : _Prop_creator_type, + 'hscr' : _Prop_has_scripting_terminology, + 'iloc' : _Prop_location, + 'isab' : _Prop_accepts_high_level_events, + 'lwnd' : _Prop_clipping_window, + 'mprt' : _Prop_minimum_size, + 'orig' : _Prop_original_item, + 'pspd' : _Prop_stationery, + 'sprt' : _Prop_suggested_size, + 'ver2' : _Prop_product_version, + 'vers' : _Prop_version, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Finder_Basics.py b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Finder_Basics.py new file mode 100644 index 000000000..c0a7b2005 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Finder_Basics.py @@ -0,0 +1,207 @@ +"""Suite Finder Basics: Commonly-used Finder commands and object classes +Level 1, version 1 + +Generated from /System/Library/CoreServices/Finder.app +AETE/AEUT resource version 0/144, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'fndr' + +class Finder_Basics_Events: + + def copy(self, _no_object=None, _attributes={}, **_arguments): + """copy: (NOT AVAILABLE YET) Copy the selected items to the clipboard (the Finder must be the front application) + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'misc' + _subcode = 'copy' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_sort = { + 'by' : 'by ', + } + + def sort(self, _object, _attributes={}, **_arguments): + """sort: (NOT AVAILABLE YET) Return the specified object(s) in a sorted list + Required argument: a list of finder objects to sort + Keyword argument by: the property to sort the items by (name, index, date, etc.) + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the sorted items in their new order + """ + _code = 'DATA' + _subcode = 'SORT' + + aetools.keysubst(_arguments, self._argmap_sort) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - The Finder """ + want = 'capp' +class _Prop_Finder_preferences(aetools.NProperty): + """Finder preferences - (NOT AVAILABLE YET) Various preferences that apply to the Finder as a whole """ + which = 'pfrp' + want = 'cprf' +Finder_preferences = _Prop_Finder_preferences() +class _Prop_clipboard(aetools.NProperty): + """clipboard - (NOT AVAILABLE YET) the Finder\xd5s clipboard window """ + which = 'pcli' + want = 'obj ' +clipboard = _Prop_clipboard() +class _Prop_desktop(aetools.NProperty): + """desktop - the desktop """ + which = 'desk' + want = 'cdsk' +desktop = _Prop_desktop() +class _Prop_frontmost(aetools.NProperty): + """frontmost - Is the Finder the frontmost process? """ + which = 'pisf' + want = 'bool' +frontmost = _Prop_frontmost() +class _Prop_home(aetools.NProperty): + """home - the home directory """ + which = 'home' + want = 'cfol' +home = _Prop_home() +class _Prop_insertion_location(aetools.NProperty): + """insertion location - the container in which a new folder would appear if \xd2New Folder\xd3 was selected """ + which = 'pins' + want = 'obj ' +insertion_location = _Prop_insertion_location() +class _Prop_name(aetools.NProperty): + """name - the Finder\xd5s name """ + which = 'pnam' + want = 'itxt' +name = _Prop_name() +class _Prop_product_version(aetools.NProperty): + """product version - the version of the System software running on this computer """ + which = 'ver2' + want = 'utxt' +product_version = _Prop_product_version() +class _Prop_selection(aetools.NProperty): + """selection - the selection in the frontmost Finder window """ + which = 'sele' + want = 'obj ' +selection = _Prop_selection() +class _Prop_startup_disk(aetools.NProperty): + """startup disk - the startup disk """ + which = 'sdsk' + want = 'cdis' +startup_disk = _Prop_startup_disk() +class _Prop_trash(aetools.NProperty): + """trash - the trash """ + which = 'trsh' + want = 'ctrs' +trash = _Prop_trash() +class _Prop_version(aetools.NProperty): + """version - the version of the Finder """ + which = 'vers' + want = 'utxt' +version = _Prop_version() +class _Prop_visible(aetools.NProperty): + """visible - Is the Finder\xd5s layer visible? """ + which = 'pvis' + want = 'bool' +visible = _Prop_visible() +# element 'alia' as ['indx', 'name'] +# element 'appf' as ['indx', 'name', 'ID '] +# element 'brow' as ['indx', 'ID '] +# element 'cdis' as ['indx', 'name', 'ID '] +# element 'cfol' as ['indx', 'name', 'ID '] +# element 'clpf' as ['indx', 'name'] +# element 'cobj' as ['indx', 'rele', 'name', 'rang', 'test'] +# element 'ctnr' as ['indx', 'name'] +# element 'cwin' as ['indx', 'name'] +# element 'docf' as ['indx', 'name'] +# element 'file' as ['indx', 'name'] +# element 'inlf' as ['indx', 'name'] +# element 'lwnd' as ['indx', 'name'] +# element 'pack' as ['indx', 'name'] +application._superclassnames = [] +import Files +import Window_classes +import Containers_and_folders +import Finder_items +application._privpropdict = { + 'Finder_preferences' : _Prop_Finder_preferences, + 'clipboard' : _Prop_clipboard, + 'desktop' : _Prop_desktop, + 'frontmost' : _Prop_frontmost, + 'home' : _Prop_home, + 'insertion_location' : _Prop_insertion_location, + 'name' : _Prop_name, + 'product_version' : _Prop_product_version, + 'selection' : _Prop_selection, + 'startup_disk' : _Prop_startup_disk, + 'trash' : _Prop_trash, + 'version' : _Prop_version, + 'visible' : _Prop_visible, +} +application._privelemdict = { + 'Finder_window' : Window_classes.Finder_window, + 'alias_file' : Files.alias_file, + 'application_file' : Files.application_file, + 'clipping' : Files.clipping, + 'clipping_window' : Window_classes.clipping_window, + 'container' : Containers_and_folders.container, + 'disk' : Containers_and_folders.disk, + 'document_file' : Files.document_file, + 'file' : Files.file, + 'folder' : Containers_and_folders.folder, + 'internet_location_file' : Files.internet_location_file, + 'item' : Finder_items.item, + 'package' : Files.package, + 'window' : Window_classes.window, +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, +} + +_propdeclarations = { + 'desk' : _Prop_desktop, + 'home' : _Prop_home, + 'pcli' : _Prop_clipboard, + 'pfrp' : _Prop_Finder_preferences, + 'pins' : _Prop_insertion_location, + 'pisf' : _Prop_frontmost, + 'pnam' : _Prop_name, + 'pvis' : _Prop_visible, + 'sdsk' : _Prop_startup_disk, + 'sele' : _Prop_selection, + 'trsh' : _Prop_trash, + 'ver2' : _Prop_product_version, + 'vers' : _Prop_version, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Finder_items.py b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Finder_items.py new file mode 100644 index 000000000..7120ea6c5 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Finder_items.py @@ -0,0 +1,355 @@ +"""Suite Finder items: Commands used with file system items, and basic item definition +Level 1, version 1 + +Generated from /System/Library/CoreServices/Finder.app +AETE/AEUT resource version 0/144, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'fndr' + +class Finder_items_Events: + + def add_to_favorites(self, _object, _attributes={}, **_arguments): + """add to favorites: (NOT AVAILABLE YET) Add the items to the user\xd5s Favorites + Required argument: the items to add to the collection of Favorites + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'ffav' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_clean_up = { + 'by' : 'by ', + } + + def clean_up(self, _object, _attributes={}, **_arguments): + """clean up: (NOT AVAILABLE YET) Arrange items in window nicely (only applies to open windows in icon view that are not kept arranged) + Required argument: the window to clean up + Keyword argument by: the order in which to clean up the objects (name, index, date, etc.) + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'fclu' + + aetools.keysubst(_arguments, self._argmap_clean_up) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def eject(self, _object=None, _attributes={}, **_arguments): + """eject: Eject the specified disk(s) + Required argument: the disk(s) to eject + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'ejct' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def empty(self, _object=None, _attributes={}, **_arguments): + """empty: Empty the trash + Required argument: \xd2empty\xd3 and \xd2empty trash\xd3 both do the same thing + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'empt' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def erase(self, _object, _attributes={}, **_arguments): + """erase: (NOT AVAILABLE) Erase the specified disk(s) + Required argument: the items to erase + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'fera' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def reveal(self, _object, _attributes={}, **_arguments): + """reveal: Bring the specified object(s) into view + Required argument: the object to be made visible + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'misc' + _subcode = 'mvis' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_update = { + 'necessity' : 'nec?', + 'registering_applications' : 'reg?', + } + + def update(self, _object, _attributes={}, **_arguments): + """update: Update the display of the specified object(s) to match their on-disk representation + Required argument: the item to update + Keyword argument necessity: only update if necessary (i.e. a finder window is open). default is false + Keyword argument registering_applications: register applications. default is true + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'fupd' + + aetools.keysubst(_arguments, self._argmap_update) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class item(aetools.ComponentItem): + """item - An item """ + want = 'cobj' +class _Prop_bounds(aetools.NProperty): + """bounds - the bounding rectangle of the item (can only be set for an item in a window viewed as icons or buttons) """ + which = 'pbnd' + want = 'qdrt' +class _Prop_comment(aetools.NProperty): + """comment - the comment of the item, displayed in the \xd2Get Info\xd3 window """ + which = 'comt' + want = 'utxt' +class _Prop_container(aetools.NProperty): + """container - the container of the item """ + which = 'ctnr' + want = 'obj ' +class _Prop_creation_date(aetools.NProperty): + """creation date - the date on which the item was created """ + which = 'ascd' + want = 'ldt ' +class _Prop_description(aetools.NProperty): + """description - a description of the item """ + which = 'dscr' + want = 'utxt' +class _Prop_disk(aetools.NProperty): + """disk - the disk on which the item is stored """ + which = 'cdis' + want = 'obj ' +class _Prop_displayed_name(aetools.NProperty): + """displayed name - the user-visible name of the item """ + which = 'dnam' + want = 'utxt' +class _Prop_everyones_privileges(aetools.NProperty): + """everyones privileges - """ + which = 'gstp' + want = 'priv' +class _Prop_extension_hidden(aetools.NProperty): + """extension hidden - Is the item's extension hidden from the user? """ + which = 'hidx' + want = 'bool' +class _Prop_group(aetools.NProperty): + """group - the user or group that has special access to the container """ + which = 'sgrp' + want = 'utxt' +class _Prop_group_privileges(aetools.NProperty): + """group privileges - """ + which = 'gppr' + want = 'priv' +class _Prop_icon(aetools.NProperty): + """icon - the icon bitmap of the item """ + which = 'iimg' + want = 'ifam' +class _Prop_index(aetools.NProperty): + """index - the index in the front-to-back ordering within its container """ + which = 'pidx' + want = 'long' +class _Prop_information_window(aetools.NProperty): + """information window - the information window for the item """ + which = 'iwnd' + want = 'obj ' +class _Prop_kind(aetools.NProperty): + """kind - the kind of the item """ + which = 'kind' + want = 'utxt' +class _Prop_label_index(aetools.NProperty): + """label index - the label of the item """ + which = 'labi' + want = 'long' +class _Prop_locked(aetools.NProperty): + """locked - Is the file locked? """ + which = 'aslk' + want = 'bool' +class _Prop_modification_date(aetools.NProperty): + """modification date - the date on which the item was last modified """ + which = 'asmo' + want = 'ldt ' +class _Prop_name(aetools.NProperty): + """name - the name of the item """ + which = 'pnam' + want = 'utxt' +class _Prop_name_extension(aetools.NProperty): + """name extension - the name extension of the item (such as \xd2txt\xd3) """ + which = 'nmxt' + want = 'utxt' +class _Prop_owner(aetools.NProperty): + """owner - the user that owns the container """ + which = 'sown' + want = 'utxt' +class _Prop_owner_privileges(aetools.NProperty): + """owner privileges - """ + which = 'ownr' + want = 'priv' +class _Prop_physical_size(aetools.NProperty): + """physical size - the actual space used by the item on disk """ + which = 'phys' + want = 'comp' +class _Prop_position(aetools.NProperty): + """position - the position of the item within its parent window (can only be set for an item in a window viewed as icons or buttons) """ + which = 'posn' + want = 'QDpt' +class _Prop_properties(aetools.NProperty): + """properties - every property of an item """ + which = 'pALL' + want = 'reco' +class _Prop_size(aetools.NProperty): + """size - the logical size of the item """ + which = 'ptsz' + want = 'comp' +class _Prop_url(aetools.NProperty): + """url - the url of the item """ + which = 'pURL' + want = 'utxt' + +items = item +item._superclassnames = [] +item._privpropdict = { + 'bounds' : _Prop_bounds, + 'comment' : _Prop_comment, + 'container' : _Prop_container, + 'creation_date' : _Prop_creation_date, + 'description' : _Prop_description, + 'disk' : _Prop_disk, + 'displayed_name' : _Prop_displayed_name, + 'everyones_privileges' : _Prop_everyones_privileges, + 'extension_hidden' : _Prop_extension_hidden, + 'group' : _Prop_group, + 'group_privileges' : _Prop_group_privileges, + 'icon' : _Prop_icon, + 'index' : _Prop_index, + 'information_window' : _Prop_information_window, + 'kind' : _Prop_kind, + 'label_index' : _Prop_label_index, + 'locked' : _Prop_locked, + 'modification_date' : _Prop_modification_date, + 'name' : _Prop_name, + 'name_extension' : _Prop_name_extension, + 'owner' : _Prop_owner, + 'owner_privileges' : _Prop_owner_privileges, + 'physical_size' : _Prop_physical_size, + 'position' : _Prop_position, + 'properties' : _Prop_properties, + 'size' : _Prop_size, + 'url' : _Prop_url, +} +item._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'cobj' : item, +} + +_propdeclarations = { + 'ascd' : _Prop_creation_date, + 'aslk' : _Prop_locked, + 'asmo' : _Prop_modification_date, + 'cdis' : _Prop_disk, + 'comt' : _Prop_comment, + 'ctnr' : _Prop_container, + 'dnam' : _Prop_displayed_name, + 'dscr' : _Prop_description, + 'gppr' : _Prop_group_privileges, + 'gstp' : _Prop_everyones_privileges, + 'hidx' : _Prop_extension_hidden, + 'iimg' : _Prop_icon, + 'iwnd' : _Prop_information_window, + 'kind' : _Prop_kind, + 'labi' : _Prop_label_index, + 'nmxt' : _Prop_name_extension, + 'ownr' : _Prop_owner_privileges, + 'pALL' : _Prop_properties, + 'pURL' : _Prop_url, + 'pbnd' : _Prop_bounds, + 'phys' : _Prop_physical_size, + 'pidx' : _Prop_index, + 'pnam' : _Prop_name, + 'posn' : _Prop_position, + 'ptsz' : _Prop_size, + 'sgrp' : _Prop_group, + 'sown' : _Prop_owner, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Legacy_suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Legacy_suite.py new file mode 100644 index 000000000..69da62668 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Legacy_suite.py @@ -0,0 +1,224 @@ +"""Suite Legacy suite: Operations formerly handled by the Finder, but now automatically delegated to other applications +Level 1, version 1 + +Generated from /System/Library/CoreServices/Finder.app +AETE/AEUT resource version 0/144, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'fleg' + +class Legacy_suite_Events: + + def restart(self, _no_object=None, _attributes={}, **_arguments): + """restart: Restart the computer + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'rest' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def shut_down(self, _no_object=None, _attributes={}, **_arguments): + """shut down: Shut Down the computer + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'shut' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def sleep(self, _no_object=None, _attributes={}, **_arguments): + """sleep: Put the computer to sleep + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'slep' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - The Finder """ + want = 'capp' +class _Prop_desktop_picture(aetools.NProperty): + """desktop picture - the desktop picture of the main monitor """ + which = 'dpic' + want = 'file' +desktop_picture = _Prop_desktop_picture() + +class application_process(aetools.ComponentItem): + """application process - A process launched from an application file """ + want = 'pcap' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - inherits some of its properties from the process class """ + which = 'c@#^' + want = 'prcs' +class _Prop_application_file(aetools.NProperty): + """application file - the application file from which this process was launched """ + which = 'appf' + want = 'appf' + +application_processes = application_process + +class desk_accessory_process(aetools.ComponentItem): + """desk accessory process - A process launched from a desk accessory file """ + want = 'pcda' +class _Prop_desk_accessory_file(aetools.NProperty): + """desk accessory file - the desk accessory file from which this process was launched """ + which = 'dafi' + want = 'obj ' + +desk_accessory_processes = desk_accessory_process + +class process(aetools.ComponentItem): + """process - A process running on this computer """ + want = 'prcs' +class _Prop_accepts_high_level_events(aetools.NProperty): + """accepts high level events - Is the process high-level event aware (accepts open application, open document, print document, and quit)? """ + which = 'isab' + want = 'bool' +class _Prop_accepts_remote_events(aetools.NProperty): + """accepts remote events - Does the process accept remote events? """ + which = 'revt' + want = 'bool' +class _Prop_creator_type(aetools.NProperty): + """creator type - the OSType of the creator of the process (the signature) """ + which = 'fcrt' + want = 'type' +class _Prop_file(aetools.NProperty): + """file - the file from which the process was launched """ + which = 'file' + want = 'obj ' +class _Prop_file_type(aetools.NProperty): + """file type - the OSType of the file type of the process """ + which = 'asty' + want = 'type' +class _Prop_frontmost(aetools.NProperty): + """frontmost - Is the process the frontmost process? """ + which = 'pisf' + want = 'bool' +class _Prop_has_scripting_terminology(aetools.NProperty): + """has scripting terminology - Does the process have a scripting terminology, i.e., can it be scripted? """ + which = 'hscr' + want = 'bool' +class _Prop_name(aetools.NProperty): + """name - the name of the process """ + which = 'pnam' + want = 'itxt' +class _Prop_partition_space_used(aetools.NProperty): + """partition space used - the number of bytes currently used in the process' partition """ + which = 'pusd' + want = 'long' +class _Prop_total_partition_size(aetools.NProperty): + """total partition size - the size of the partition with which the process was launched """ + which = 'appt' + want = 'long' +class _Prop_visible(aetools.NProperty): + """visible - Is the process' layer visible? """ + which = 'pvis' + want = 'bool' + +processes = process +application._superclassnames = [] +application._privpropdict = { + 'desktop_picture' : _Prop_desktop_picture, +} +application._privelemdict = { +} +application_process._superclassnames = ['process'] +application_process._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'application_file' : _Prop_application_file, +} +application_process._privelemdict = { +} +desk_accessory_process._superclassnames = ['process'] +desk_accessory_process._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'desk_accessory_file' : _Prop_desk_accessory_file, +} +desk_accessory_process._privelemdict = { +} +process._superclassnames = [] +process._privpropdict = { + 'accepts_high_level_events' : _Prop_accepts_high_level_events, + 'accepts_remote_events' : _Prop_accepts_remote_events, + 'creator_type' : _Prop_creator_type, + 'file' : _Prop_file, + 'file_type' : _Prop_file_type, + 'frontmost' : _Prop_frontmost, + 'has_scripting_terminology' : _Prop_has_scripting_terminology, + 'name' : _Prop_name, + 'partition_space_used' : _Prop_partition_space_used, + 'total_partition_size' : _Prop_total_partition_size, + 'visible' : _Prop_visible, +} +process._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, + 'pcap' : application_process, + 'pcda' : desk_accessory_process, + 'prcs' : process, +} + +_propdeclarations = { + 'appf' : _Prop_application_file, + 'appt' : _Prop_total_partition_size, + 'asty' : _Prop_file_type, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'dafi' : _Prop_desk_accessory_file, + 'dpic' : _Prop_desktop_picture, + 'fcrt' : _Prop_creator_type, + 'file' : _Prop_file, + 'hscr' : _Prop_has_scripting_terminology, + 'isab' : _Prop_accepts_high_level_events, + 'pisf' : _Prop_frontmost, + 'pnam' : _Prop_name, + 'pusd' : _Prop_partition_space_used, + 'pvis' : _Prop_visible, + 'revt' : _Prop_accepts_remote_events, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Standard_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Standard_Suite.py new file mode 100644 index 000000000..830f58c83 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Standard_Suite.py @@ -0,0 +1,335 @@ +"""Suite Standard Suite: Common terms that most applications should support +Level 1, version 1 + +Generated from /System/Library/CoreServices/Finder.app +AETE/AEUT resource version 0/144, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'CoRe' + +from StdSuites.Standard_Suite import * +class Standard_Suite_Events(Standard_Suite_Events): + + def close(self, _object, _attributes={}, **_arguments): + """close: Close an object + Required argument: the object to close + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'clos' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_count = { + 'each' : 'kocl', + } + + def count(self, _object, _attributes={}, **_arguments): + """count: Return the number of elements of a particular class within an object + Required argument: the object whose elements are to be counted + Keyword argument each: the class of the elements to be counted + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the number of elements + """ + _code = 'core' + _subcode = 'cnte' + + aetools.keysubst(_arguments, self._argmap_count) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_data_size = { + 'as' : 'rtyp', + } + + def data_size(self, _object, _attributes={}, **_arguments): + """data size: Return the size in bytes of an object + Required argument: the object whose data size is to be returned + Keyword argument as: the data type for which the size is calculated + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the size of the object in bytes + """ + _code = 'core' + _subcode = 'dsiz' + + aetools.keysubst(_arguments, self._argmap_data_size) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def delete(self, _object, _attributes={}, **_arguments): + """delete: Move an item from its container to the trash + Required argument: the item to delete + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: to the item that was just deleted + """ + _code = 'core' + _subcode = 'delo' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_duplicate = { + 'to' : 'insh', + 'replacing' : 'alrp', + 'routing_suppressed' : 'rout', + } + + def duplicate(self, _object, _attributes={}, **_arguments): + """duplicate: Duplicate one or more object(s) + Required argument: the object(s) to duplicate + Keyword argument to: the new location for the object(s) + Keyword argument replacing: Specifies whether or not to replace items in the destination that have the same name as items being duplicated + Keyword argument routing_suppressed: Specifies whether or not to autoroute items (default is false). Only applies when copying to the system folder. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: to the duplicated object(s) + """ + _code = 'core' + _subcode = 'clon' + + aetools.keysubst(_arguments, self._argmap_duplicate) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'alrp', _Enum_bool) + aetools.enumsubst(_arguments, 'rout', _Enum_bool) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def exists(self, _object, _attributes={}, **_arguments): + """exists: Verify if an object exists + Required argument: the object in question + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: true if it exists, false if not + """ + _code = 'core' + _subcode = 'doex' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_make = { + 'new' : 'kocl', + 'at' : 'insh', + 'to' : 'to ', + 'with_properties' : 'prdt', + } + + def make(self, _no_object=None, _attributes={}, **_arguments): + """make: Make a new element + Keyword argument new: the class of the new element + Keyword argument at: the location at which to insert the element + Keyword argument to: when creating an alias file, the original item to create an alias to or when creating a file viewer window, the target of the window + Keyword argument with_properties: the initial values for the properties of the element + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: to the new object(s) + """ + _code = 'core' + _subcode = 'crel' + + aetools.keysubst(_arguments, self._argmap_make) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_move = { + 'to' : 'insh', + 'replacing' : 'alrp', + 'positioned_at' : 'mvpl', + 'routing_suppressed' : 'rout', + } + + def move(self, _object, _attributes={}, **_arguments): + """move: Move object(s) to a new location + Required argument: the object(s) to move + Keyword argument to: the new location for the object(s) + Keyword argument replacing: Specifies whether or not to replace items in the destination that have the same name as items being moved + Keyword argument positioned_at: Gives a list (in local window coordinates) of positions for the destination items + Keyword argument routing_suppressed: Specifies whether or not to autoroute items (default is false). Only applies when moving to the system folder. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: to the object(s) after they have been moved + """ + _code = 'core' + _subcode = 'move' + + aetools.keysubst(_arguments, self._argmap_move) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'alrp', _Enum_bool) + aetools.enumsubst(_arguments, 'mvpl', _Enum_list) + aetools.enumsubst(_arguments, 'rout', _Enum_bool) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_open = { + 'using' : 'usin', + 'with_properties' : 'prdt', + } + + def open(self, _object, _attributes={}, **_arguments): + """open: Open the specified object(s) + Required argument: list of objects to open + Keyword argument using: the application file to open the object with + Keyword argument with_properties: the initial values for the properties, to be included with the open command sent to the application that opens the direct object + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'odoc' + + aetools.keysubst(_arguments, self._argmap_open) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_print_ = { + 'with_properties' : 'prdt', + } + + def print_(self, _object, _attributes={}, **_arguments): + """print: Print the specified object(s) + Required argument: list of objects to print + Keyword argument with_properties: optional properties to be included with the print command sent to the application that prints the direct object + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'pdoc' + + aetools.keysubst(_arguments, self._argmap_print_) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def quit(self, _no_object=None, _attributes={}, **_arguments): + """quit: Quit the Finder + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'quit' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def select(self, _object, _attributes={}, **_arguments): + """select: Select the specified object(s) + Required argument: the object to select + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'misc' + _subcode = 'slct' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + +_Enum_list = None # XXXX enum list not found!! +_Enum_bool = None # XXXX enum bool not found!! + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Type_Definitions.py b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Type_Definitions.py new file mode 100644 index 000000000..3e7d81799 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Type_Definitions.py @@ -0,0 +1,346 @@ +"""Suite Type Definitions: Definitions of records used in scripting the Finder +Level 1, version 1 + +Generated from /System/Library/CoreServices/Finder.app +AETE/AEUT resource version 0/144, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'tpdf' + +class Type_Definitions_Events: + + pass + + +class alias_list(aetools.ComponentItem): + """alias list - A list of aliases. Use \xd4as alias list\xd5 when a list of aliases is needed (instead of a list of file system item references). """ + want = 'alst' + +class label(aetools.ComponentItem): + """label - (NOT AVAILABLE YET) A Finder label (name and color) """ + want = 'clbl' +class _Prop_color(aetools.NProperty): + """color - the color associated with the label """ + which = 'colr' + want = 'cRGB' +class _Prop_index(aetools.NProperty): + """index - the index in the front-to-back ordering within its container """ + which = 'pidx' + want = 'long' +class _Prop_name(aetools.NProperty): + """name - the name associated with the label """ + which = 'pnam' + want = 'utxt' + +class preferences(aetools.ComponentItem): + """preferences - (NOT AVAILABLE, SUBJECT TO CHANGE) The Finder Preferences """ + want = 'cprf' +class _Prop_button_view_arrangement(aetools.NProperty): + """button view arrangement - the method of arrangement of icons in default Finder button view windows """ + which = 'barr' + want = 'earr' +class _Prop_button_view_icon_size(aetools.NProperty): + """button view icon size - the size of icons displayed in Finder button view windows. """ + which = 'bisz' + want = 'long' +class _Prop_calculates_folder_sizes(aetools.NProperty): + """calculates folder sizes - Are folder sizes calculated and displayed in Finder list view windows? """ + which = 'sfsz' + want = 'bool' +class _Prop_delay_before_springing(aetools.NProperty): + """delay before springing - the delay before springing open a container in ticks (1/60th of a second) (12 is shortest delay, 60 is longest delay) """ + which = 'dela' + want = 'shor' +class _Prop_list_view_icon_size(aetools.NProperty): + """list view icon size - the size of icons displayed in Finder list view windows. """ + which = 'lisz' + want = 'long' +class _Prop_shows_comments(aetools.NProperty): + """shows comments - Are comments displayed in default Finder list view windows? """ + which = 'scom' + want = 'bool' +class _Prop_shows_creation_date(aetools.NProperty): + """shows creation date - Are creation dates displayed in default Finder list view windows? """ + which = 'scda' + want = 'bool' +class _Prop_shows_kind(aetools.NProperty): + """shows kind - Are document kinds displayed in default Finder list view windows? """ + which = 'sknd' + want = 'bool' +class _Prop_shows_label(aetools.NProperty): + """shows label - Are labels displayed in default Finder list view windows? """ + which = 'slbl' + want = 'bool' +class _Prop_shows_modification_date(aetools.NProperty): + """shows modification date - Are modification dates displayed in default Finder list view windows? """ + which = 'sdat' + want = 'bool' +class _Prop_shows_size(aetools.NProperty): + """shows size - Are file sizes displayed in default Finder list view windows? """ + which = 'ssiz' + want = 'bool' +class _Prop_shows_version(aetools.NProperty): + """shows version - Are file versions displayed in default Finder list view windows? """ + which = 'svrs' + want = 'bool' +class _Prop_spatial_view_arrangement(aetools.NProperty): + """spatial view arrangement - the method of arrangement of icons in default Finder spatial view windows """ + which = 'iarr' + want = 'earr' +class _Prop_spatial_view_icon_size(aetools.NProperty): + """spatial view icon size - the size of icons displayed in Finder spatial view windows. """ + which = 'iisz' + want = 'long' +class _Prop_spring_open_folders(aetools.NProperty): + """spring open folders - Spring open folders after the specified delay? """ + which = 'sprg' + want = 'bool' +class _Prop_uses_relative_dates(aetools.NProperty): + """uses relative dates - Are relative dates (e.g., today, yesterday) shown in Finder list view windows? """ + which = 'urdt' + want = 'bool' +class _Prop_uses_simple_menus(aetools.NProperty): + """uses simple menus - Use simplified Finder menus? """ + which = 'usme' + want = 'bool' +class _Prop_uses_wide_grid(aetools.NProperty): + """uses wide grid - Space icons on a wide grid? """ + which = 'uswg' + want = 'bool' +class _Prop_view_font(aetools.NProperty): + """view font - the id of the font used in Finder views. """ + which = 'vfnt' + want = 'long' +class _Prop_view_font_size(aetools.NProperty): + """view font size - the size of the font used in Finder views """ + which = 'vfsz' + want = 'long' +class _Prop_window(aetools.NProperty): + """window - the window that would open if Finder preferences was opened """ + which = 'cwin' + want = 'pwnd' +# element 'clbl' as ['indx', 'name'] + +class icon_view_options(aetools.ComponentItem): + """icon view options - the icon view options """ + want = 'icop' + +_Prop_arrangement = _Prop_spatial_view_arrangement +class _Prop_icon_size(aetools.NProperty): + """icon size - the size of icons displayed in the icon view """ + which = 'lvis' + want = 'shor' + +class icon_family(aetools.ComponentItem): + """icon family - (NOT AVAILABLE YET) A family of icons """ + want = 'ifam' +class _Prop_large_32_bit_icon(aetools.NProperty): + """large 32 bit icon - the large 32-bit color icon """ + which = 'il32' + want = 'il32' +class _Prop_large_4_bit_icon(aetools.NProperty): + """large 4 bit icon - the large 4-bit color icon """ + which = 'icl4' + want = 'icl4' +class _Prop_large_8_bit_icon(aetools.NProperty): + """large 8 bit icon - the large 8-bit color icon """ + which = 'icl8' + want = 'icl8' +class _Prop_large_8_bit_mask(aetools.NProperty): + """large 8 bit mask - the large 8-bit mask for large 32-bit icons """ + which = 'l8mk' + want = 'l8mk' +class _Prop_large_monochrome_icon_and_mask(aetools.NProperty): + """large monochrome icon and mask - the large black-and-white icon and the mask for large icons """ + which = 'ICN#' + want = 'ICN#' +class _Prop_small_32_bit_icon(aetools.NProperty): + """small 32 bit icon - the small 32-bit color icon """ + which = 'is32' + want = 'is32' +class _Prop_small_4_bit_icon(aetools.NProperty): + """small 4 bit icon - the small 4-bit color icon """ + which = 'ics4' + want = 'ics4' +class _Prop_small_8_bit_icon(aetools.NProperty): + """small 8 bit icon - the small 8-bit color icon """ + which = 'ics8' + want = 'ics8' + +_Prop_small_8_bit_mask = _Prop_small_8_bit_icon +class _Prop_small_monochrome_icon_and_mask(aetools.NProperty): + """small monochrome icon and mask - the small black-and-white icon and the mask for small icons """ + which = 'ics#' + want = 'ics#' + +class column(aetools.ComponentItem): + """column - a column of a list view """ + want = 'lvcl' +class _Prop_sort_direction(aetools.NProperty): + """sort direction - The direction in which the window is sorted """ + which = 'sord' + want = 'sodr' +class _Prop_visible(aetools.NProperty): + """visible - is this column visible """ + which = 'pvis' + want = 'bool' +class _Prop_width(aetools.NProperty): + """width - the width of this column """ + which = 'clwd' + want = 'shor' + +columns = column + +class list_view_options(aetools.ComponentItem): + """list view options - the list view options """ + want = 'lvop' +class _Prop_sort_column(aetools.NProperty): + """sort column - the column that the list view is sorted on """ + which = 'srtc' + want = 'lvcl' +# element 'lvcl' as ['indx', 'rele', 'rang', 'test'] +alias_list._superclassnames = [] +alias_list._privpropdict = { +} +alias_list._privelemdict = { +} +label._superclassnames = [] +label._privpropdict = { + 'color' : _Prop_color, + 'index' : _Prop_index, + 'name' : _Prop_name, +} +label._privelemdict = { +} +preferences._superclassnames = [] +preferences._privpropdict = { + 'button_view_arrangement' : _Prop_button_view_arrangement, + 'button_view_icon_size' : _Prop_button_view_icon_size, + 'calculates_folder_sizes' : _Prop_calculates_folder_sizes, + 'delay_before_springing' : _Prop_delay_before_springing, + 'list_view_icon_size' : _Prop_list_view_icon_size, + 'shows_comments' : _Prop_shows_comments, + 'shows_creation_date' : _Prop_shows_creation_date, + 'shows_kind' : _Prop_shows_kind, + 'shows_label' : _Prop_shows_label, + 'shows_modification_date' : _Prop_shows_modification_date, + 'shows_size' : _Prop_shows_size, + 'shows_version' : _Prop_shows_version, + 'spatial_view_arrangement' : _Prop_spatial_view_arrangement, + 'spatial_view_icon_size' : _Prop_spatial_view_icon_size, + 'spring_open_folders' : _Prop_spring_open_folders, + 'uses_relative_dates' : _Prop_uses_relative_dates, + 'uses_simple_menus' : _Prop_uses_simple_menus, + 'uses_wide_grid' : _Prop_uses_wide_grid, + 'view_font' : _Prop_view_font, + 'view_font_size' : _Prop_view_font_size, + 'window' : _Prop_window, +} +preferences._privelemdict = { + 'label' : label, +} +icon_view_options._superclassnames = [] +icon_view_options._privpropdict = { + 'arrangement' : _Prop_arrangement, + 'icon_size' : _Prop_icon_size, +} +icon_view_options._privelemdict = { +} +icon_family._superclassnames = [] +icon_family._privpropdict = { + 'large_32_bit_icon' : _Prop_large_32_bit_icon, + 'large_4_bit_icon' : _Prop_large_4_bit_icon, + 'large_8_bit_icon' : _Prop_large_8_bit_icon, + 'large_8_bit_mask' : _Prop_large_8_bit_mask, + 'large_monochrome_icon_and_mask' : _Prop_large_monochrome_icon_and_mask, + 'small_32_bit_icon' : _Prop_small_32_bit_icon, + 'small_4_bit_icon' : _Prop_small_4_bit_icon, + 'small_8_bit_icon' : _Prop_small_8_bit_icon, + 'small_8_bit_mask' : _Prop_small_8_bit_mask, + 'small_monochrome_icon_and_mask' : _Prop_small_monochrome_icon_and_mask, +} +icon_family._privelemdict = { +} +column._superclassnames = [] +column._privpropdict = { + 'index' : _Prop_index, + 'name' : _Prop_name, + 'sort_direction' : _Prop_sort_direction, + 'visible' : _Prop_visible, + 'width' : _Prop_width, +} +column._privelemdict = { +} +list_view_options._superclassnames = [] +list_view_options._privpropdict = { + 'calculates_folder_sizes' : _Prop_calculates_folder_sizes, + 'icon_size' : _Prop_icon_size, + 'sort_column' : _Prop_sort_column, + 'uses_relative_dates' : _Prop_uses_relative_dates, +} +list_view_options._privelemdict = { + 'column' : column, +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'alst' : alias_list, + 'clbl' : label, + 'cprf' : preferences, + 'icop' : icon_view_options, + 'ifam' : icon_family, + 'lvcl' : column, + 'lvop' : list_view_options, +} + +_propdeclarations = { + 'ICN#' : _Prop_large_monochrome_icon_and_mask, + 'barr' : _Prop_button_view_arrangement, + 'bisz' : _Prop_button_view_icon_size, + 'clwd' : _Prop_width, + 'colr' : _Prop_color, + 'cwin' : _Prop_window, + 'dela' : _Prop_delay_before_springing, + 'iarr' : _Prop_spatial_view_arrangement, + 'icl4' : _Prop_large_4_bit_icon, + 'icl8' : _Prop_large_8_bit_icon, + 'ics#' : _Prop_small_monochrome_icon_and_mask, + 'ics4' : _Prop_small_4_bit_icon, + 'ics8' : _Prop_small_8_bit_icon, + 'iisz' : _Prop_spatial_view_icon_size, + 'il32' : _Prop_large_32_bit_icon, + 'is32' : _Prop_small_32_bit_icon, + 'l8mk' : _Prop_large_8_bit_mask, + 'lisz' : _Prop_list_view_icon_size, + 'lvis' : _Prop_icon_size, + 'pidx' : _Prop_index, + 'pnam' : _Prop_name, + 'pvis' : _Prop_visible, + 'scda' : _Prop_shows_creation_date, + 'scom' : _Prop_shows_comments, + 'sdat' : _Prop_shows_modification_date, + 'sfsz' : _Prop_calculates_folder_sizes, + 'sknd' : _Prop_shows_kind, + 'slbl' : _Prop_shows_label, + 'sord' : _Prop_sort_direction, + 'sprg' : _Prop_spring_open_folders, + 'srtc' : _Prop_sort_column, + 'ssiz' : _Prop_shows_size, + 'svrs' : _Prop_shows_version, + 'urdt' : _Prop_uses_relative_dates, + 'usme' : _Prop_uses_simple_menus, + 'uswg' : _Prop_uses_wide_grid, + 'vfnt' : _Prop_view_font, + 'vfsz' : _Prop_view_font_size, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Window_classes.py b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Window_classes.py new file mode 100644 index 000000000..496968a64 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/Window_classes.py @@ -0,0 +1,229 @@ +"""Suite Window classes: Classes representing windows +Level 1, version 1 + +Generated from /System/Library/CoreServices/Finder.app +AETE/AEUT resource version 0/144, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'fndr' + +class Window_classes_Events: + + pass + + +class Finder_window(aetools.ComponentItem): + """Finder window - A file viewer window """ + want = 'brow' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - inherits some of its properties from the window class """ + which = 'c@#^' + want = 'cwin' +class _Prop_current_view(aetools.NProperty): + """current view - the current view for the container window """ + which = 'pvew' + want = 'ecvw' +class _Prop_icon_view_options(aetools.NProperty): + """icon view options - the icon view options for the container window """ + which = 'icop' + want = 'icop' +class _Prop_list_view_options(aetools.NProperty): + """list view options - the list view options for the container window """ + which = 'lvop' + want = 'lvop' +class _Prop_target(aetools.NProperty): + """target - the container at which this file viewer is targeted """ + which = 'fvtg' + want = 'obj ' + +Finder_windows = Finder_window + +class window(aetools.ComponentItem): + """window - A window """ + want = 'cwin' +class _Prop_bounds(aetools.NProperty): + """bounds - the boundary rectangle for the window """ + which = 'pbnd' + want = 'qdrt' +class _Prop_closeable(aetools.NProperty): + """closeable - Does the window have a close box? """ + which = 'hclb' + want = 'bool' +class _Prop_collapsed(aetools.NProperty): + """collapsed - Is the window collapsed """ + which = 'wshd' + want = 'bool' +class _Prop_floating(aetools.NProperty): + """floating - Does the window have a title bar? """ + which = 'isfl' + want = 'bool' +class _Prop_id(aetools.NProperty): + """id - the unique id for this window """ + which = 'ID ' + want = 'magn' +class _Prop_index(aetools.NProperty): + """index - the number of the window in the front-to-back layer ordering """ + which = 'pidx' + want = 'long' +class _Prop_modal(aetools.NProperty): + """modal - Is the window modal? """ + which = 'pmod' + want = 'bool' +class _Prop_name(aetools.NProperty): + """name - the name of the window """ + which = 'pnam' + want = 'utxt' +class _Prop_position(aetools.NProperty): + """position - the upper left position of the window """ + which = 'posn' + want = 'QDpt' +class _Prop_properties(aetools.NProperty): + """properties - every property of a window """ + which = 'pALL' + want = 'reco' +class _Prop_resizable(aetools.NProperty): + """resizable - Is the window resizable? """ + which = 'prsz' + want = 'bool' +class _Prop_titled(aetools.NProperty): + """titled - Does the window have a title bar? """ + which = 'ptit' + want = 'bool' +class _Prop_visible(aetools.NProperty): + """visible - Is the window visible (always true for open Finder windows)? """ + which = 'pvis' + want = 'bool' +class _Prop_zoomable(aetools.NProperty): + """zoomable - Is the window zoomable? """ + which = 'iszm' + want = 'bool' +class _Prop_zoomed(aetools.NProperty): + """zoomed - Is the window zoomed? """ + which = 'pzum' + want = 'bool' +class _Prop_zoomed_full_size(aetools.NProperty): + """zoomed full size - Is the window zoomed to the full size of the screen? (can only be set, not read) """ + which = 'zumf' + want = 'bool' + +windows = window + +class information_window(aetools.ComponentItem): + """information window - An inspector window (opened by \xd2Show Info\xd3) """ + want = 'iwnd' +class _Prop_current_panel(aetools.NProperty): + """current panel - the current panel in the information window """ + which = 'panl' + want = 'ipnl' +class _Prop_item(aetools.NProperty): + """item - the item from which this window was opened """ + which = 'cobj' + want = 'obj ' + +class clipping_window(aetools.ComponentItem): + """clipping window - The window containing a clipping """ + want = 'lwnd' + +clipping_windows = clipping_window + +class preferences_window(aetools.ComponentItem): + """preferences window - (NOT AVAILABLE YET) The Finder Preferences window """ + want = 'pwnd' +Finder_window._superclassnames = ['window'] +Finder_window._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'current_view' : _Prop_current_view, + 'icon_view_options' : _Prop_icon_view_options, + 'list_view_options' : _Prop_list_view_options, + 'target' : _Prop_target, +} +Finder_window._privelemdict = { +} +window._superclassnames = [] +window._privpropdict = { + 'bounds' : _Prop_bounds, + 'closeable' : _Prop_closeable, + 'collapsed' : _Prop_collapsed, + 'floating' : _Prop_floating, + 'id' : _Prop_id, + 'index' : _Prop_index, + 'modal' : _Prop_modal, + 'name' : _Prop_name, + 'position' : _Prop_position, + 'properties' : _Prop_properties, + 'resizable' : _Prop_resizable, + 'titled' : _Prop_titled, + 'visible' : _Prop_visible, + 'zoomable' : _Prop_zoomable, + 'zoomed' : _Prop_zoomed, + 'zoomed_full_size' : _Prop_zoomed_full_size, +} +window._privelemdict = { +} +information_window._superclassnames = ['window'] +information_window._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'current_panel' : _Prop_current_panel, + 'item' : _Prop_item, +} +information_window._privelemdict = { +} +clipping_window._superclassnames = ['window'] +clipping_window._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, +} +clipping_window._privelemdict = { +} +preferences_window._superclassnames = ['window'] +preferences_window._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'current_panel' : _Prop_current_panel, +} +preferences_window._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'brow' : Finder_window, + 'cwin' : window, + 'iwnd' : information_window, + 'lwnd' : clipping_window, + 'pwnd' : preferences_window, +} + +_propdeclarations = { + 'ID ' : _Prop_id, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'cobj' : _Prop_item, + 'fvtg' : _Prop_target, + 'hclb' : _Prop_closeable, + 'icop' : _Prop_icon_view_options, + 'isfl' : _Prop_floating, + 'iszm' : _Prop_zoomable, + 'lvop' : _Prop_list_view_options, + 'pALL' : _Prop_properties, + 'panl' : _Prop_current_panel, + 'pbnd' : _Prop_bounds, + 'pidx' : _Prop_index, + 'pmod' : _Prop_modal, + 'pnam' : _Prop_name, + 'posn' : _Prop_position, + 'prsz' : _Prop_resizable, + 'ptit' : _Prop_titled, + 'pvew' : _Prop_current_view, + 'pvis' : _Prop_visible, + 'pzum' : _Prop_zoomed, + 'wshd' : _Prop_collapsed, + 'zumf' : _Prop_zoomed_full_size, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Finder/__init__.py b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/__init__.py new file mode 100644 index 000000000..8782a4f81 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Finder/__init__.py @@ -0,0 +1,233 @@ +""" +Package generated from /System/Library/CoreServices/Finder.app +""" +import aetools +Error = aetools.Error +import Standard_Suite +import Legacy_suite +import Containers_and_folders +import Files +import Finder_Basics +import Finder_items +import Window_classes +import Type_Definitions +import Enumerations + + +_code_to_module = { + 'CoRe' : Standard_Suite, + 'fleg' : Legacy_suite, + 'fndr' : Containers_and_folders, + 'fndr' : Files, + 'fndr' : Finder_Basics, + 'fndr' : Finder_items, + 'fndr' : Window_classes, + 'tpdf' : Type_Definitions, + 'tpnm' : Enumerations, +} + + + +_code_to_fullname = { + 'CoRe' : ('Finder.Standard_Suite', 'Standard_Suite'), + 'fleg' : ('Finder.Legacy_suite', 'Legacy_suite'), + 'fndr' : ('Finder.Containers_and_folders', 'Containers_and_folders'), + 'fndr' : ('Finder.Files', 'Files'), + 'fndr' : ('Finder.Finder_Basics', 'Finder_Basics'), + 'fndr' : ('Finder.Finder_items', 'Finder_items'), + 'fndr' : ('Finder.Window_classes', 'Window_classes'), + 'tpdf' : ('Finder.Type_Definitions', 'Type_Definitions'), + 'tpnm' : ('Finder.Enumerations', 'Enumerations'), +} + +from Standard_Suite import * +from Legacy_suite import * +from Containers_and_folders import * +from Files import * +from Finder_Basics import * +from Finder_items import * +from Window_classes import * +from Type_Definitions import * +from Enumerations import * + +def getbaseclasses(v): + if not getattr(v, '_propdict', None): + v._propdict = {} + v._elemdict = {} + for superclassname in getattr(v, '_superclassnames', []): + superclass = eval(superclassname) + getbaseclasses(superclass) + v._propdict.update(getattr(superclass, '_propdict', {})) + v._elemdict.update(getattr(superclass, '_elemdict', {})) + v._propdict.update(getattr(v, '_privpropdict', {})) + v._elemdict.update(getattr(v, '_privelemdict', {})) + +import StdSuites + +# +# Set property and element dictionaries now that all classes have been defined +# +getbaseclasses(StdSuites.Type_Names_Suite.small_integer) +getbaseclasses(StdSuites.Type_Names_Suite.system_dictionary) +getbaseclasses(StdSuites.Type_Names_Suite.color_table) +getbaseclasses(StdSuites.Type_Names_Suite.fixed_point) +getbaseclasses(StdSuites.Type_Names_Suite.string) +getbaseclasses(StdSuites.Type_Names_Suite.type_element_info) +getbaseclasses(StdSuites.Type_Names_Suite.machine_location) +getbaseclasses(StdSuites.Type_Names_Suite.PostScript_picture) +getbaseclasses(StdSuites.Type_Names_Suite.type_property_info) +getbaseclasses(StdSuites.Type_Names_Suite.menu_item) +getbaseclasses(StdSuites.Type_Names_Suite.scrap_styles) +getbaseclasses(StdSuites.Type_Names_Suite.fixed_rectangle) +getbaseclasses(StdSuites.Type_Names_Suite.null) +getbaseclasses(StdSuites.Type_Names_Suite.type_event_info) +getbaseclasses(StdSuites.Type_Names_Suite.rotation) +getbaseclasses(StdSuites.Type_Names_Suite.long_fixed_rectangle) +getbaseclasses(StdSuites.Type_Names_Suite.long_point) +getbaseclasses(StdSuites.Type_Names_Suite.target_id) +getbaseclasses(StdSuites.Type_Names_Suite.type_suite_info) +getbaseclasses(StdSuites.Type_Names_Suite.type_parameter_info) +getbaseclasses(StdSuites.Type_Names_Suite.long_fixed_point) +getbaseclasses(StdSuites.Type_Names_Suite.bounding_rectangle) +getbaseclasses(StdSuites.Type_Names_Suite.TIFF_picture) +getbaseclasses(StdSuites.Type_Names_Suite.long_fixed) +getbaseclasses(StdSuites.Type_Names_Suite.version) +getbaseclasses(StdSuites.Type_Names_Suite.RGB16_color) +getbaseclasses(StdSuites.Type_Names_Suite.double_integer) +getbaseclasses(StdSuites.Type_Names_Suite.location_reference) +getbaseclasses(StdSuites.Type_Names_Suite.point) +getbaseclasses(StdSuites.Type_Names_Suite.application_dictionary) +getbaseclasses(StdSuites.Type_Names_Suite.unsigned_integer) +getbaseclasses(StdSuites.Type_Names_Suite.menu) +getbaseclasses(StdSuites.Type_Names_Suite.small_real) +getbaseclasses(StdSuites.Type_Names_Suite.fixed) +getbaseclasses(StdSuites.Type_Names_Suite.type_class_info) +getbaseclasses(StdSuites.Type_Names_Suite.RGB96_color) +getbaseclasses(StdSuites.Type_Names_Suite.dash_style) +getbaseclasses(StdSuites.Type_Names_Suite.pixel_map_record) +getbaseclasses(StdSuites.Type_Names_Suite.extended_real) +getbaseclasses(StdSuites.Type_Names_Suite.long_rectangle) +getbaseclasses(process) +getbaseclasses(application_process) +getbaseclasses(desk_accessory_process) +getbaseclasses(application) +getbaseclasses(trash_2d_object) +getbaseclasses(desktop_2d_object) +getbaseclasses(container) +getbaseclasses(folder) +getbaseclasses(disk) +getbaseclasses(application) +getbaseclasses(alias_file) +getbaseclasses(package) +getbaseclasses(file) +getbaseclasses(application_file) +getbaseclasses(internet_location_file) +getbaseclasses(document_file) +getbaseclasses(clipping) +getbaseclasses(preferences_window) +getbaseclasses(Finder_window) +getbaseclasses(window) +getbaseclasses(clipping_window) +getbaseclasses(information_window) +getbaseclasses(item) +getbaseclasses(icon_view_options) +getbaseclasses(preferences) +getbaseclasses(alias_list) +getbaseclasses(icon_family) +getbaseclasses(label) +getbaseclasses(column) +getbaseclasses(list_view_options) + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'shor' : StdSuites.Type_Names_Suite.small_integer, + 'aeut' : StdSuites.Type_Names_Suite.system_dictionary, + 'clrt' : StdSuites.Type_Names_Suite.color_table, + 'fpnt' : StdSuites.Type_Names_Suite.fixed_point, + 'TEXT' : StdSuites.Type_Names_Suite.string, + 'elin' : StdSuites.Type_Names_Suite.type_element_info, + 'mLoc' : StdSuites.Type_Names_Suite.machine_location, + 'EPS ' : StdSuites.Type_Names_Suite.PostScript_picture, + 'pinf' : StdSuites.Type_Names_Suite.type_property_info, + 'cmen' : StdSuites.Type_Names_Suite.menu_item, + 'styl' : StdSuites.Type_Names_Suite.scrap_styles, + 'frct' : StdSuites.Type_Names_Suite.fixed_rectangle, + 'null' : StdSuites.Type_Names_Suite.null, + 'evin' : StdSuites.Type_Names_Suite.type_event_info, + 'trot' : StdSuites.Type_Names_Suite.rotation, + 'lfrc' : StdSuites.Type_Names_Suite.long_fixed_rectangle, + 'lpnt' : StdSuites.Type_Names_Suite.long_point, + 'targ' : StdSuites.Type_Names_Suite.target_id, + 'suin' : StdSuites.Type_Names_Suite.type_suite_info, + 'pmin' : StdSuites.Type_Names_Suite.type_parameter_info, + 'lfpt' : StdSuites.Type_Names_Suite.long_fixed_point, + 'qdrt' : StdSuites.Type_Names_Suite.bounding_rectangle, + 'TIFF' : StdSuites.Type_Names_Suite.TIFF_picture, + 'lfxd' : StdSuites.Type_Names_Suite.long_fixed, + 'vers' : StdSuites.Type_Names_Suite.version, + 'tr16' : StdSuites.Type_Names_Suite.RGB16_color, + 'comp' : StdSuites.Type_Names_Suite.double_integer, + 'insl' : StdSuites.Type_Names_Suite.location_reference, + 'QDpt' : StdSuites.Type_Names_Suite.point, + 'aete' : StdSuites.Type_Names_Suite.application_dictionary, + 'magn' : StdSuites.Type_Names_Suite.unsigned_integer, + 'cmnu' : StdSuites.Type_Names_Suite.menu, + 'sing' : StdSuites.Type_Names_Suite.small_real, + 'fixd' : StdSuites.Type_Names_Suite.fixed, + 'gcli' : StdSuites.Type_Names_Suite.type_class_info, + 'tr96' : StdSuites.Type_Names_Suite.RGB96_color, + 'tdas' : StdSuites.Type_Names_Suite.dash_style, + 'tpmm' : StdSuites.Type_Names_Suite.pixel_map_record, + 'exte' : StdSuites.Type_Names_Suite.extended_real, + 'lrct' : StdSuites.Type_Names_Suite.long_rectangle, + 'prcs' : process, + 'pcap' : application_process, + 'pcda' : desk_accessory_process, + 'capp' : application, + 'ctrs' : trash_2d_object, + 'cdsk' : desktop_2d_object, + 'ctnr' : container, + 'cfol' : folder, + 'cdis' : disk, + 'capp' : application, + 'alia' : alias_file, + 'pack' : package, + 'file' : file, + 'appf' : application_file, + 'inlf' : internet_location_file, + 'docf' : document_file, + 'clpf' : clipping, + 'pwnd' : preferences_window, + 'brow' : Finder_window, + 'cwin' : window, + 'lwnd' : clipping_window, + 'iwnd' : information_window, + 'cobj' : item, + 'icop' : icon_view_options, + 'cprf' : preferences, + 'alst' : alias_list, + 'ifam' : icon_family, + 'clbl' : label, + 'lvcl' : column, + 'lvop' : list_view_options, +} + + +class Finder(Standard_Suite_Events, + Legacy_suite_Events, + Containers_and_folders_Events, + Files_Events, + Finder_Basics_Events, + Finder_items_Events, + Window_classes_Events, + Type_Definitions_Events, + Enumerations_Events, + aetools.TalkTo): + _signature = 'MACS' + + _moduleName = 'Finder' + + _elemdict = application._elemdict + _propdict = application._propdict diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Mozilla_suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Mozilla_suite.py new file mode 100644 index 000000000..f4aea730c --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Mozilla_suite.py @@ -0,0 +1,269 @@ +"""Suite Mozilla suite: Experimental Mozilla suite +Level 1, version 1 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Netscape Communicator\xe2\x84\xa2 Folder/Netscape Communicator\xe2\x84\xa2 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'MOSS' + +class Mozilla_suite_Events: + + def Get_Import_Data(self, _no_object=None, _attributes={}, **_arguments): + """Get Import Data: Returns a structure containing information that is of use to an external module in importing data from an external mail application into Communicator. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: vRefNum and dirID of profile folder (2+4 bytes), vRefNum and DirID of the local mail folder (2+4 bytes), window type of front window (0 if none, \xd4Brwz\xd5 browser, \xd4Addr\xd5 addressbook, \xd4Mesg\xd5 messenger, etc., 4 bytes) + """ + _code = 'MOSS' + _subcode = 'Impt' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Get_Profile_Name(self, _no_object=None, _attributes={}, **_arguments): + """Get Profile Name: Get the current User Profile + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Name of the current profile, like \xd2Joe Bloggs\xd3. This is the name of the profile folder in the Netscape Users folder. + """ + _code = 'MOSS' + _subcode = 'upro' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Get_workingURL(self, _no_object=None, _attributes={}, **_arguments): + """Get workingURL: Get the path to the running application in URL format. This will allow a script to construct a relative URL + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Will return text of the from \xd2FILE://foo/applicationname\xd3 + """ + _code = 'MOSS' + _subcode = 'wurl' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Go = { + 'direction' : 'dire', + } + + def Go(self, _object, _attributes={}, **_arguments): + """Go: navigate a window: back, forward, again(reload), home) + Required argument: window + Keyword argument direction: undocumented, typecode 'dire' + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MOSS' + _subcode = 'gogo' + + aetools.keysubst(_arguments, self._argmap_Go) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'dire', _Enum_dire) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Handle_command(self, _object, _attributes={}, **_arguments): + """Handle command: Handle a command + Required argument: The command to handle + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MOSS' + _subcode = 'hcmd' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Open_Address_Book(self, _no_object=None, _attributes={}, **_arguments): + """Open Address Book: Opens the address book + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MOSS' + _subcode = 'addr' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Open_Component(self, _object, _attributes={}, **_arguments): + """Open Component: Open a Communicator component + Required argument: The component to open + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MOSS' + _subcode = 'cpnt' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Open_Profile_Manager(self, _no_object=None, _attributes={}, **_arguments): + """Open Profile Manager: Open the user profile manager (obsolete) + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MOSS' + _subcode = 'prfl' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def Open_bookmark(self, _object=None, _attributes={}, **_arguments): + """Open bookmark: Reads in a bookmark file + Required argument: If not available, reloads the current bookmark file + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MOSS' + _subcode = 'book' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Read_help_file = { + 'with_index' : 'idid', + 'search_text' : 'sear', + } + + def Read_help_file(self, _object, _attributes={}, **_arguments): + """Read help file: Reads in the help file (file should be in the help file format) + Required argument: undocumented, typecode 'alis' + Keyword argument with_index: Index to the help file. Defaults to \xd4DEFAULT\xd5) + Keyword argument search_text: Optional text to search for + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'MOSS' + _subcode = 'help' + + aetools.keysubst(_arguments, self._argmap_Read_help_file) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + +_Enum_comp = { + 'Navigator' : 'navg', # The Navigator component + 'InBox' : 'inbx', # The InBox component + 'Newsgroups' : 'colb', # The Newsgroups component + 'Composer' : 'cpsr', # The Page Composer component + 'Conference' : 'conf', # The Conference Component + 'Calendar' : 'cald', # The Calendar Component +} + +_Enum_dire = { + 'again' : 'agai', # Again (reload) + 'home' : 'home', # Home + 'backward' : 'prev', # Previous page + 'forward' : 'next', # Next page +} + +_Enum_ncmd = { + 'Get_new_mail' : '\x00\x00\x04W', # + 'Send_queued_messages' : '\x00\x00\x04X', # + 'Read_newsgroups' : '\x00\x00\x04\x04', # + 'Show_Inbox' : '\x00\x00\x04\x05', # + 'Show_Bookmarks_window' : '\x00\x00\x04\x06', # + 'Show_History_window' : '\x00\x00\x04\x07', # + 'Show_Address_Book_window' : '\x00\x00\x04\t', # +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'comp' : _Enum_comp, + 'dire' : _Enum_dire, + 'ncmd' : _Enum_ncmd, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/PowerPlant.py b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/PowerPlant.py new file mode 100644 index 000000000..7767305cb --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/PowerPlant.py @@ -0,0 +1,86 @@ +"""Suite PowerPlant: +Level 0, version 0 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Netscape Communicator\xe2\x84\xa2 Folder/Netscape Communicator\xe2\x84\xa2 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'ppnt' + +class PowerPlant_Events: + + _argmap_SwitchTellTarget = { + 'to' : 'data', + } + + def SwitchTellTarget(self, _no_object=None, _attributes={}, **_arguments): + """SwitchTellTarget: Makes an object the \xd2focus\xd3 of AppleEvents + Keyword argument to: reference to new focus of AppleEvents + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'ppnt' + _subcode = 'sttg' + + aetools.keysubst(_arguments, self._argmap_SwitchTellTarget) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_select = { + 'data' : 'data', + } + + def select(self, _object, _attributes={}, **_arguments): + """select: Sets the present selection + Required argument: object to select or container of sub-objects to select + Keyword argument data: sub-object(s) to select + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'misc' + _subcode = 'slct' + + aetools.keysubst(_arguments, self._argmap_select) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + +_Enum_dbac = { + 'DoNothing' : '\x00\x00\x00\x00', # No debugging action is taken. + 'PostAlert' : '\x00\x00\x00\x01', # Post an alert. + 'LowLevelDebugger' : '\x00\x00\x00\x02', # Break into the low level debugger (MacsBug). + 'SourceDebugger' : '\x00\x00\x00\x03', # Break into the source level debugger (if source debugger is executing). +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'dbac' : _Enum_dbac, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Required_suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Required_suite.py new file mode 100644 index 000000000..b5c411048 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Required_suite.py @@ -0,0 +1,108 @@ +"""Suite Required suite: +Level 0, version 0 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Netscape Communicator\xe2\x84\xa2 Folder/Netscape Communicator\xe2\x84\xa2 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'reqd' + +from StdSuites.Required_Suite import * +class Required_suite_Events(Required_Suite_Events): + + def open(self, _object, _attributes={}, **_arguments): + """open: Open the specified object(s) + Required argument: list of objects to open + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'odoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def print_(self, _object, _attributes={}, **_arguments): + """print: Print the specified object(s) + Required argument: list of objects to print + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'pdoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def quit(self, _no_object=None, _attributes={}, **_arguments): + """quit: Quit Navigator + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'quit' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def run(self, _no_object=None, _attributes={}, **_arguments): + """run: Sent to an application when it is double-clicked + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'oapp' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Standard_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Standard_Suite.py new file mode 100644 index 000000000..5c3e92789 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Standard_Suite.py @@ -0,0 +1,243 @@ +"""Suite Standard Suite: Common terms for most applications +Level 1, version 1 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Netscape Communicator\xe2\x84\xa2 Folder/Netscape Communicator\xe2\x84\xa2 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'CoRe' + +from StdSuites.Standard_Suite import * +class Standard_Suite_Events(Standard_Suite_Events): + + def close(self, _object, _attributes={}, **_arguments): + """close: Close an object + Required argument: the objects to close + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'clos' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def data_size(self, _object, _attributes={}, **_arguments): + """data size: Return the size in bytes of an object + Required argument: the object whose data size is to be returned + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the size of the object in bytes + """ + _code = 'core' + _subcode = 'dsiz' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def get(self, _object, _attributes={}, **_arguments): + """get: Get the data for an object + Required argument: the object whose data is to be returned + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: The data from the object + """ + _code = 'core' + _subcode = 'getd' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_set = { + 'to' : 'data', + } + + def set(self, _object, _attributes={}, **_arguments): + """set: Set an object\xd5s data + Required argument: the object to change + Keyword argument to: the new value + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'setd' + + aetools.keysubst(_arguments, self._argmap_set) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - An application program """ + want = 'capp' +class _Prop_alert_application(aetools.NProperty): + """alert application - Most of the alerts will be sent to this application using yet unspecified AE interface. We need a few alert boxes: alert, confirm and notify. Any ideas on how to design this event? mailto:atotic@netscape.com. I\xd5d like to conform to the standard. """ + which = 'ALAP' + want = 'type' +alert_application = _Prop_alert_application() +class _Prop_kiosk_mode(aetools.NProperty): + """kiosk mode - Kiosk mode leaves very few menus enabled """ + which = 'KOSK' + want = 'long' +kiosk_mode = _Prop_kiosk_mode() +# element 'cwin' as ['indx', 'name', 'ID '] + +class window(aetools.ComponentItem): + """window - A Window """ + want = 'cwin' +class _Prop_URL(aetools.NProperty): + """URL - Current URL """ + which = 'curl' + want = 'TEXT' +class _Prop_bounds(aetools.NProperty): + """bounds - the boundary rectangle for the window """ + which = 'pbnd' + want = 'qdrt' +class _Prop_busy(aetools.NProperty): + """busy - Is window loading something right now. 2, window is busy and will reject load requests. 1, window is busy, but will interrupt outstanding loads """ + which = 'busy' + want = 'long' +class _Prop_closeable(aetools.NProperty): + """closeable - Does the window have a close box? """ + which = 'hclb' + want = 'bool' +class _Prop_floating(aetools.NProperty): + """floating - Does the window float? """ + which = 'isfl' + want = 'bool' +class _Prop_index(aetools.NProperty): + """index - the number of the window """ + which = 'pidx' + want = 'long' +class _Prop_modal(aetools.NProperty): + """modal - Is the window modal? """ + which = 'pmod' + want = 'bool' +class _Prop_name(aetools.NProperty): + """name - the title of the window """ + which = 'pnam' + want = 'itxt' +class _Prop_position(aetools.NProperty): + """position - upper left coordinates of window """ + which = 'ppos' + want = 'QDpt' +class _Prop_resizable(aetools.NProperty): + """resizable - Is the window resizable? """ + which = 'prsz' + want = 'bool' +class _Prop_titled(aetools.NProperty): + """titled - Does the window have a title bar? """ + which = 'ptit' + want = 'bool' +class _Prop_unique_ID(aetools.NProperty): + """unique ID - Window\xd5s unique ID (a bridge between WWW! suite window id\xd5s and standard AE windows) """ + which = 'wiid' + want = 'long' +class _Prop_visible(aetools.NProperty): + """visible - is the window visible? """ + which = 'pvis' + want = 'bool' +class _Prop_zoomable(aetools.NProperty): + """zoomable - Is the window zoomable? """ + which = 'iszm' + want = 'bool' +class _Prop_zoomed(aetools.NProperty): + """zoomed - Is the window zoomed? """ + which = 'pzum' + want = 'bool' +application._superclassnames = [] +application._privpropdict = { + 'alert_application' : _Prop_alert_application, + 'kiosk_mode' : _Prop_kiosk_mode, +} +application._privelemdict = { + 'window' : window, +} +window._superclassnames = [] +window._privpropdict = { + 'URL' : _Prop_URL, + 'bounds' : _Prop_bounds, + 'busy' : _Prop_busy, + 'closeable' : _Prop_closeable, + 'floating' : _Prop_floating, + 'index' : _Prop_index, + 'modal' : _Prop_modal, + 'name' : _Prop_name, + 'position' : _Prop_position, + 'resizable' : _Prop_resizable, + 'titled' : _Prop_titled, + 'unique_ID' : _Prop_unique_ID, + 'visible' : _Prop_visible, + 'zoomable' : _Prop_zoomable, + 'zoomed' : _Prop_zoomed, +} +window._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, + 'cwin' : window, +} + +_propdeclarations = { + 'ALAP' : _Prop_alert_application, + 'KOSK' : _Prop_kiosk_mode, + 'busy' : _Prop_busy, + 'curl' : _Prop_URL, + 'hclb' : _Prop_closeable, + 'isfl' : _Prop_floating, + 'iszm' : _Prop_zoomable, + 'pbnd' : _Prop_bounds, + 'pidx' : _Prop_index, + 'pmod' : _Prop_modal, + 'pnam' : _Prop_name, + 'ppos' : _Prop_position, + 'prsz' : _Prop_resizable, + 'ptit' : _Prop_titled, + 'pvis' : _Prop_visible, + 'pzum' : _Prop_zoomed, + 'wiid' : _Prop_unique_ID, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Standard_URL_suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Standard_URL_suite.py new file mode 100644 index 000000000..de4a01c9e --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Standard_URL_suite.py @@ -0,0 +1,60 @@ +"""Suite Standard URL suite: Mac URL standard, supported by many apps + + +Level 1, version 1 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Netscape Communicator\xe2\x84\xa2 Folder/Netscape Communicator\xe2\x84\xa2 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'GURL' + +class Standard_URL_suite_Events: + + _argmap_GetURL = { + 'to' : 'dest', + 'inside' : 'HWIN', + 'from_' : 'refe', + } + + def GetURL(self, _object, _attributes={}, **_arguments): + """GetURL: Loads the URL (optionally to disk) + Required argument: The url + Keyword argument to: file the URL should be loaded into + Keyword argument inside: Window the URL should be loaded to + Keyword argument from_: Referrer, to be sent with the HTTP request + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'GURL' + _subcode = 'GURL' + + aetools.keysubst(_arguments, self._argmap_GetURL) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Text.py b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Text.py new file mode 100644 index 000000000..2360d949a --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/Text.py @@ -0,0 +1,122 @@ +"""Suite Text: +Level 0, version 0 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Netscape Communicator\xe2\x84\xa2 Folder/Netscape Communicator\xe2\x84\xa2 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'TEXT' + +from StdSuites.Text_Suite import * +class Text_Events(Text_Suite_Events): + + pass + + +class text(aetools.ComponentItem): + """text - independent text view objects """ + want = 'ctxt' +class _Prop_beginning(aetools.NProperty): + """beginning - Beginning of element """ + which = 'bgng' + want = 'obj ' +class _Prop_end(aetools.NProperty): + """end - Ending of element """ + which = 'end ' + want = 'obj ' +class _Prop_infront(aetools.NProperty): + """infront - Immediately before element """ + which = 'pBef' + want = 'obj ' +class _Prop_justbehind(aetools.NProperty): + """justbehind - Immediately after element """ + which = 'pAft' + want = 'obj ' +class _Prop_updateLevel(aetools.NProperty): + """updateLevel - updating level. Can only be incremented or decremented. Do so only in a try block -- if the level is greater than zero, visual text updating will cease. """ + which = 'pUpL' + want = 'long' +# element 'stys' as ['indx', 'name'] + +class styleset(aetools.ComponentItem): + """styleset - A style \xd2set\xd3 that may be used repeatedly in text objects. """ + want = 'stys' +class _Prop_color(aetools.NProperty): + """color - the color """ + which = 'colr' + want = 'RGB ' +class _Prop_font(aetools.NProperty): + """font - font name """ + which = 'font' + want = 'TEXT' +class _Prop_name(aetools.NProperty): + """name - style name """ + which = 'pnam' + want = 'TEXT' +class _Prop_size(aetools.NProperty): + """size - the size in points """ + which = 'ptsz' + want = 'long' +class _Prop_style(aetools.NProperty): + """style - the text styles or face attributes """ + which = 'txst' + want = 'tsty' +class _Prop_writing_code(aetools.NProperty): + """writing code - the script system and language """ + which = 'psct' + want = 'tsty' + +stylesets = styleset +text._superclassnames = [] +text._privpropdict = { + 'beginning' : _Prop_beginning, + 'end' : _Prop_end, + 'infront' : _Prop_infront, + 'justbehind' : _Prop_justbehind, + 'updateLevel' : _Prop_updateLevel, +} +text._privelemdict = { + 'styleset' : styleset, +} +styleset._superclassnames = [] +styleset._privpropdict = { + 'color' : _Prop_color, + 'font' : _Prop_font, + 'name' : _Prop_name, + 'size' : _Prop_size, + 'style' : _Prop_style, + 'writing_code' : _Prop_writing_code, +} +styleset._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'ctxt' : text, + 'stys' : styleset, +} + +_propdeclarations = { + 'bgng' : _Prop_beginning, + 'colr' : _Prop_color, + 'end ' : _Prop_end, + 'font' : _Prop_font, + 'pAft' : _Prop_justbehind, + 'pBef' : _Prop_infront, + 'pUpL' : _Prop_updateLevel, + 'pnam' : _Prop_name, + 'psct' : _Prop_writing_code, + 'ptsz' : _Prop_size, + 'txst' : _Prop_style, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/WorldWideWeb_suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/WorldWideWeb_suite.py new file mode 100644 index 000000000..06cbfa7ac --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/WorldWideWeb_suite.py @@ -0,0 +1,426 @@ +"""Suite WorldWideWeb suite, as defined in Spyglass spec.: +Level 1, version 1 + +Generated from /Volumes/Sap/Applications (Mac OS 9)/Netscape Communicator\xe2\x84\xa2 Folder/Netscape Communicator\xe2\x84\xa2 +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'WWW!' + +class WorldWideWeb_suite_Events: + + _argmap_OpenURL = { + 'to' : 'INTO', + 'toWindow' : 'WIND', + 'flags' : 'FLGS', + 'post_data' : 'POST', + 'post_type' : 'MIME', + 'progressApp' : 'PROG', + } + + def OpenURL(self, _object, _attributes={}, **_arguments): + """OpenURL: Opens a URL. Allows for more options than GetURL event + Required argument: URL + Keyword argument to: file destination + Keyword argument toWindow: window iD + Keyword argument flags: Binary: any combination of 1, 2 and 4 is allowed: 1 and 2 mean force reload the document. 4 is ignored + Keyword argument post_data: Form posting data + Keyword argument post_type: MIME type of the posting data. Defaults to application/x-www-form-urlencoded + Keyword argument progressApp: Application that will display progress + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: ID of the loading window + """ + _code = 'WWW!' + _subcode = 'OURL' + + aetools.keysubst(_arguments, self._argmap_OpenURL) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_ShowFile = { + 'MIME_type' : 'MIME', + 'Window_ID' : 'WIND', + 'URL' : 'URL ', + } + + def ShowFile(self, _object, _attributes={}, **_arguments): + """ShowFile: Similar to OpenDocuments, except that it specifies the parent URL, and MIME type of the file + Required argument: File to open + Keyword argument MIME_type: MIME type + Keyword argument Window_ID: Window to open the file in + Keyword argument URL: Use this as a base URL + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Window ID of the loaded window. 0 means ShowFile failed, FFFFFFF means that data was not appropriate type to display in the browser. + """ + _code = 'WWW!' + _subcode = 'SHWF' + + aetools.keysubst(_arguments, self._argmap_ShowFile) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_cancel_progress = { + 'in_window' : 'WIND', + } + + def cancel_progress(self, _object=None, _attributes={}, **_arguments): + """cancel progress: Interrupts the download of the document in the given window + Required argument: progress ID, obtained from the progress app + Keyword argument in_window: window ID of the progress to cancel + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'WWW!' + _subcode = 'CNCL' + + aetools.keysubst(_arguments, self._argmap_cancel_progress) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def find_URL(self, _object, _attributes={}, **_arguments): + """find URL: If the file was downloaded by Netscape, you can call FindURL to find out the URL used to download the file. + Required argument: File spec + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: The URL + """ + _code = 'WWW!' + _subcode = 'FURL' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def get_window_info(self, _object=None, _attributes={}, **_arguments): + """get window info: Returns the information about the window as a list. Currently the list contains the window title and the URL. You can get the same information using standard Apple Event GetProperty. + Required argument: window ID + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: undocumented, typecode 'list' + """ + _code = 'WWW!' + _subcode = 'WNFO' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def list_windows(self, _no_object=None, _attributes={}, **_arguments): + """list windows: Lists the IDs of all the hypertext windows + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: List of unique IDs of all the hypertext windows + """ + _code = 'WWW!' + _subcode = 'LSTW' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_parse_anchor = { + 'relative_to' : 'RELA', + } + + def parse_anchor(self, _object, _attributes={}, **_arguments): + """parse anchor: Resolves the relative URL + Required argument: Main URL + Keyword argument relative_to: Relative URL + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: Parsed URL + """ + _code = 'WWW!' + _subcode = 'PRSA' + + aetools.keysubst(_arguments, self._argmap_parse_anchor) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def register_URL_echo(self, _object=None, _attributes={}, **_arguments): + """register URL echo: Registers the \xd2echo\xd3 application. Each download from now on will be echoed to this application. + Required argument: Application signature + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'WWW!' + _subcode = 'RGUE' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_register_protocol = { + 'for_protocol' : 'PROT', + } + + def register_protocol(self, _object=None, _attributes={}, **_arguments): + """register protocol: Registers application as a \xd2handler\xd3 for this protocol with a given prefix. The handler will receive \xd2OpenURL\xd3, or if that fails, \xd2GetURL\xd3 event. + Required argument: Application sig + Keyword argument for_protocol: protocol prefix: \xd2finger:\xd3, \xd2file\xd3, + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: TRUE if registration has been successful + """ + _code = 'WWW!' + _subcode = 'RGPR' + + aetools.keysubst(_arguments, self._argmap_register_protocol) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_register_viewer = { + 'MIME_type' : 'MIME', + 'with_file_type' : 'FTYP', + } + + def register_viewer(self, _object, _attributes={}, **_arguments): + """register viewer: Registers an application as a \xd4special\xd5 viewer for this MIME type. The application will be launched with ViewDoc events + Required argument: Application sig + Keyword argument MIME_type: MIME type viewer is registering for + Keyword argument with_file_type: Mac file type for the downloaded files + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: TRUE if registration has been successful + """ + _code = 'WWW!' + _subcode = 'RGVW' + + aetools.keysubst(_arguments, self._argmap_register_viewer) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_register_window_close = { + 'for_window' : 'WIND', + } + + def register_window_close(self, _object=None, _attributes={}, **_arguments): + """register window close: Netscape will notify registered application when this window closes + Required argument: Application signature + Keyword argument for_window: window ID + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: true if successful + """ + _code = 'WWW!' + _subcode = 'RGWC' + + aetools.keysubst(_arguments, self._argmap_register_window_close) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def unregister_URL_echo(self, _object, _attributes={}, **_arguments): + """unregister URL echo: cancels URL echo + Required argument: application signature + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'WWW!' + _subcode = 'UNRU' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_unregister_protocol = { + 'for_protocol' : 'PROT', + } + + def unregister_protocol(self, _object=None, _attributes={}, **_arguments): + """unregister protocol: reverses the effects of \xd2register protocol\xd3 + Required argument: Application sig. + Keyword argument for_protocol: protocol prefix. If none, unregister for all protocols + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: TRUE if successful + """ + _code = 'WWW!' + _subcode = 'UNRP' + + aetools.keysubst(_arguments, self._argmap_unregister_protocol) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_unregister_viewer = { + 'MIME_type' : 'MIME', + } + + def unregister_viewer(self, _object, _attributes={}, **_arguments): + """unregister viewer: Revert to the old way of handling this MIME type + Required argument: Application sig + Keyword argument MIME_type: MIME type to be unregistered + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: TRUE if the event was successful + """ + _code = 'WWW!' + _subcode = 'UNRV' + + aetools.keysubst(_arguments, self._argmap_unregister_viewer) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_unregister_window_close = { + 'for_window' : 'WIND', + } + + def unregister_window_close(self, _object=None, _attributes={}, **_arguments): + """unregister window close: Undo for register window close + Required argument: Application signature + Keyword argument for_window: window ID + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: true if successful + """ + _code = 'WWW!' + _subcode = 'UNRC' + + aetools.keysubst(_arguments, self._argmap_unregister_window_close) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def webActivate(self, _object=None, _attributes={}, **_arguments): + """webActivate: Makes Netscape the frontmost application, and selects a given window. This event is here for suite completeness/ cross-platform compatibility only, you should use standard AppleEvents instead. + Required argument: window to bring to front + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'WWW!' + _subcode = 'ACTV' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/__init__.py b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/__init__.py new file mode 100644 index 000000000..0dc5398a0 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Netscape/__init__.py @@ -0,0 +1,105 @@ +""" +Package generated from /Volumes/Sap/Applications (Mac OS 9)/Netscape Communicator\xe2\x84\xa2 Folder/Netscape Communicator\xe2\x84\xa2 +""" +import aetools +Error = aetools.Error +import Standard_Suite +import Standard_URL_suite +import Mozilla_suite +import Text +import WorldWideWeb_suite +import PowerPlant +import Required_suite + + +_code_to_module = { + 'CoRe' : Standard_Suite, + 'GURL' : Standard_URL_suite, + 'MOSS' : Mozilla_suite, + 'TEXT' : Text, + 'WWW!' : WorldWideWeb_suite, + 'ppnt' : PowerPlant, + 'reqd' : Required_suite, +} + + + +_code_to_fullname = { + 'CoRe' : ('Netscape.Standard_Suite', 'Standard_Suite'), + 'GURL' : ('Netscape.Standard_URL_suite', 'Standard_URL_suite'), + 'MOSS' : ('Netscape.Mozilla_suite', 'Mozilla_suite'), + 'TEXT' : ('Netscape.Text', 'Text'), + 'WWW!' : ('Netscape.WorldWideWeb_suite', 'WorldWideWeb_suite'), + 'ppnt' : ('Netscape.PowerPlant', 'PowerPlant'), + 'reqd' : ('Netscape.Required_suite', 'Required_suite'), +} + +from Standard_Suite import * +from Standard_URL_suite import * +from Mozilla_suite import * +from Text import * +from WorldWideWeb_suite import * +from PowerPlant import * +from Required_suite import * + +def getbaseclasses(v): + if not getattr(v, '_propdict', None): + v._propdict = {} + v._elemdict = {} + for superclassname in getattr(v, '_superclassnames', []): + superclass = eval(superclassname) + getbaseclasses(superclass) + v._propdict.update(getattr(superclass, '_propdict', {})) + v._elemdict.update(getattr(superclass, '_elemdict', {})) + v._propdict.update(getattr(v, '_privpropdict', {})) + v._elemdict.update(getattr(v, '_privelemdict', {})) + +import StdSuites + +# +# Set property and element dictionaries now that all classes have been defined +# +getbaseclasses(text) +getbaseclasses(styleset) +getbaseclasses(StdSuites.Text_Suite.character) +getbaseclasses(StdSuites.Text_Suite.text_flow) +getbaseclasses(StdSuites.Text_Suite.word) +getbaseclasses(StdSuites.Text_Suite.paragraph) +getbaseclasses(StdSuites.Text_Suite.text_style_info) +getbaseclasses(StdSuites.Text_Suite.line) +getbaseclasses(StdSuites.Text_Suite.text) +getbaseclasses(window) +getbaseclasses(application) + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'ctxt' : text, + 'stys' : styleset, + 'cha ' : StdSuites.Text_Suite.character, + 'cflo' : StdSuites.Text_Suite.text_flow, + 'cwor' : StdSuites.Text_Suite.word, + 'cpar' : StdSuites.Text_Suite.paragraph, + 'tsty' : StdSuites.Text_Suite.text_style_info, + 'clin' : StdSuites.Text_Suite.line, + 'ctxt' : StdSuites.Text_Suite.text, + 'cwin' : window, + 'capp' : application, +} + + +class Netscape(Standard_Suite_Events, + Standard_URL_suite_Events, + Mozilla_suite_Events, + Text_Events, + WorldWideWeb_suite_Events, + PowerPlant_Events, + Required_suite_Events, + aetools.TalkTo): + _signature = 'MOSS' + + _moduleName = 'Netscape' + + _elemdict = application._elemdict + _propdict = application._propdict diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/AppleScript_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/AppleScript_Suite.py new file mode 100644 index 000000000..574043d4a --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/AppleScript_Suite.py @@ -0,0 +1,2215 @@ +"""Suite AppleScript Suite: Standard terms for AppleScript +Level 1, version 1 + +Generated from /Volumes/Sap/System Folder/Extensions/AppleScript +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'ascr' + +class AppleScript_Suite_Events: + + def _26_(self, _object, _attributes={}, **_arguments): + """&: Concatenation + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'ccat' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _2a_(self, _object, _attributes={}, **_arguments): + """*: Multiplication + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '* ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _2b_(self, _object, _attributes={}, **_arguments): + """+: Addition + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '+ ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _2d_(self, _object, _attributes={}, **_arguments): + """-: Subtraction + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '- ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _3c_(self, _object, _attributes={}, **_arguments): + """<: Less than + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '< ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _3d_(self, _object, _attributes={}, **_arguments): + """=: Equality + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '= ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _3e_(self, _object, _attributes={}, **_arguments): + """>: Greater than + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '> ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_Call_a5_subroutine = { + 'at' : 'at ', + 'from_' : 'from', + 'for_' : 'for ', + 'to' : 'to ', + 'thru' : 'thru', + 'through' : 'thgh', + 'by' : 'by ', + 'on' : 'on ', + 'into' : 'into', + 'onto' : 'onto', + 'between' : 'btwn', + 'against' : 'agst', + 'out_of' : 'outo', + 'instead_of' : 'isto', + 'aside_from' : 'asdf', + 'around' : 'arnd', + 'beside' : 'bsid', + 'beneath' : 'bnth', + 'under' : 'undr', + 'over' : 'over', + 'above' : 'abve', + 'below' : 'belw', + 'apart_from' : 'aprt', + 'about' : 'abou', + 'since' : 'snce', + 'given' : 'givn', + 'with' : 'with', + 'without' : 'wout', + } + + def Call_a5_subroutine(self, _object=None, _attributes={}, **_arguments): + """Call\xa5subroutine: A subroutine call + Required argument: anything + Keyword argument at: a preposition + Keyword argument from_: a preposition + Keyword argument for_: a preposition + Keyword argument to: a preposition + Keyword argument thru: a preposition + Keyword argument through: a preposition + Keyword argument by: a preposition + Keyword argument on: a preposition + Keyword argument into: a preposition + Keyword argument onto: a preposition + Keyword argument between: a preposition + Keyword argument against: a preposition + Keyword argument out_of: a preposition + Keyword argument instead_of: a preposition + Keyword argument aside_from: a preposition + Keyword argument around: a preposition + Keyword argument beside: a preposition + Keyword argument beneath: a preposition + Keyword argument under: a preposition + Keyword argument over: a preposition + Keyword argument above: a preposition + Keyword argument below: a preposition + Keyword argument apart_from: a preposition + Keyword argument about: a preposition + Keyword argument since: a preposition + Keyword argument given: parameter:value pairs, comma-separated + Keyword argument with: formal parameter set to true if matching actual parameter is provided + Keyword argument without: formal parameter set to false if matching actual parmeter is provided + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'psbr' + + aetools.keysubst(_arguments, self._argmap_Call_a5_subroutine) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _5e_(self, _object, _attributes={}, **_arguments): + """^: Exponentiation + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '^ ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def activate(self, _no_object=None, _attributes={}, **_arguments): + """activate: Bring the targeted application program to the front + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'misc' + _subcode = 'actv' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def and_(self, _object, _attributes={}, **_arguments): + """and: Logical conjunction + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'AND ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def as(self, _object, _attributes={}, **_arguments): + """as: Coercion + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'coer' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def contains(self, _object, _attributes={}, **_arguments): + """contains: Containment + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'cont' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def div(self, _object, _attributes={}, **_arguments): + """div: Quotient + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'div ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def end_tell(self, _no_object=None, _attributes={}, **_arguments): + """end tell: Record or log an \xd4end tell\xd5 statement + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'ascr' + _subcode = 'tend' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def ends_with(self, _object, _attributes={}, **_arguments): + """ends with: Ends with + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'ends' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_error = { + 'number' : 'errn', + 'partial_result' : 'ptlr', + 'from_' : 'erob', + 'to' : 'errt', + } + + def error(self, _object=None, _attributes={}, **_arguments): + """error: Raise an error + Required argument: anything + Keyword argument number: an error number + Keyword argument partial_result: any partial result occurring before the error + Keyword argument from_: the object that caused the error + Keyword argument to: the desired class for a failed coercion + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'ascr' + _subcode = 'err ' + + aetools.keysubst(_arguments, self._argmap_error) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def idle(self, _no_object=None, _attributes={}, **_arguments): + """idle: Sent to a script application when it is idle + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the number of seconds to wait for next idle event + """ + _code = 'misc' + _subcode = 'idle' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def launch(self, _no_object=None, _attributes={}, **_arguments): + """launch: Start an application for scripting + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'ascr' + _subcode = 'noop' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def log(self, _object, _attributes={}, **_arguments): + """log: Cause a comment to be logged + Required argument: undocumented, typecode 'TEXT' + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'ascr' + _subcode = 'cmnt' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def mod(self, _object, _attributes={}, **_arguments): + """mod: Remainder + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'mod ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def negate(self, _object, _attributes={}, **_arguments): + """negate: Numeric negation + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'neg ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def not_(self, _object, _attributes={}, **_arguments): + """not: Logical negation + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'NOT ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def or_(self, _object, _attributes={}, **_arguments): + """or: Logical disjunction + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'OR ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def start_log(self, _no_object=None, _attributes={}, **_arguments): + """start log: Start event logging in the script editor + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'ToyS' + _subcode = 'log1' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def starts_with(self, _object, _attributes={}, **_arguments): + """starts with: Starts with + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = 'bgwt' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def stop_log(self, _no_object=None, _attributes={}, **_arguments): + """stop log: Stop event logging in the script editor + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'ToyS' + _subcode = 'log0' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def tell(self, _no_object=None, _attributes={}, **_arguments): + """tell: Record or log a \xd4tell\xd5 statement + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'ascr' + _subcode = 'tell' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _ad_(self, _object, _attributes={}, **_arguments): + """\xad: Inequality + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '\xad ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _b2_(self, _object, _attributes={}, **_arguments): + """\xb2: Less than or equal to + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '<= ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _b3_(self, _object, _attributes={}, **_arguments): + """\xb3: Greater than or equal to + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '>= ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _d6_(self, _object, _attributes={}, **_arguments): + """\xd6: Division + Required argument: an AE object reference + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: anything + """ + _code = 'ascr' + _subcode = '/ ' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class anything(aetools.ComponentItem): + """anything - any class or reference """ + want = '****' + +class pictures(aetools.ComponentItem): + """pictures - """ + want = 'PICT' + +picture = pictures + +class styled_text(aetools.ComponentItem): + """styled text - text with font, size, and style information """ + want = 'STXT' + +styled_text = styled_text + +class strings(aetools.ComponentItem): + """strings - """ + want = 'TEXT' + +string = strings + +class alias(aetools.ComponentItem): + """alias - a file on a disk or server. The file must exist when you check the syntax of your script. """ + want = 'alis' +class _Prop_POSIX_path(aetools.NProperty): + """POSIX path - the POSIX path of the file """ + which = 'psxp' + want = 'TEXT' + +aliases = alias + +class April(aetools.ComponentItem): + """April - the month of April """ + want = 'apr ' + +class August(aetools.ComponentItem): + """August - the month of August """ + want = 'aug ' + +class booleans(aetools.ComponentItem): + """booleans - """ + want = 'bool' + +boolean = booleans + +class RGB_colors(aetools.ComponentItem): + """RGB colors - """ + want = 'cRGB' + +RGB_color = RGB_colors + +class application(aetools.ComponentItem): + """application - specifies global properties of AppleScript """ + want = 'capp' +class _Prop_AppleScript(aetools.NProperty): + """AppleScript - the top-level script object """ + which = 'ascr' + want = 'scpt' +AppleScript = _Prop_AppleScript() +class _Prop_days(aetools.NProperty): + """days - the number of seconds in a day """ + which = 'days' + want = 'long' +days = _Prop_days() +class _Prop_hours(aetools.NProperty): + """hours - the number of seconds in an hour """ + which = 'hour' + want = 'long' +hours = _Prop_hours() +class _Prop_minutes(aetools.NProperty): + """minutes - the number of seconds in a minute """ + which = 'min ' + want = 'long' +minutes = _Prop_minutes() +class _Prop_pi(aetools.NProperty): + """pi - the constant pi """ + which = 'pi ' + want = 'doub' +pi = _Prop_pi() +class _Prop_print_depth(aetools.NProperty): + """print depth - the maximum depth to print """ + which = 'prdp' + want = 'long' +print_depth = _Prop_print_depth() +class _Prop_print_length(aetools.NProperty): + """print length - the maximum length to print """ + which = 'prln' + want = 'long' +print_length = _Prop_print_length() +class _Prop_result(aetools.NProperty): + """result - the last result of evaluation """ + which = 'rslt' + want = '****' +result = _Prop_result() +class _Prop_return_(aetools.NProperty): + """return - a return character """ + which = 'ret ' + want = 'cha ' +return_ = _Prop_return_() +class _Prop_space(aetools.NProperty): + """space - a space character """ + which = 'spac' + want = 'cha ' +space = _Prop_space() +class _Prop_tab(aetools.NProperty): + """tab - a tab character """ + which = 'tab ' + want = 'cha ' +tab = _Prop_tab() +class _Prop_text_item_delimiters(aetools.NProperty): + """text item delimiters - the text item delimiters of a string """ + which = 'txdl' + want = 'list' +text_item_delimiters = _Prop_text_item_delimiters() +class _Prop_weeks(aetools.NProperty): + """weeks - the number of seconds in a week """ + which = 'week' + want = 'long' +weeks = _Prop_weeks() + +applications = application + +app = application + +class upper_case(aetools.ComponentItem): + """upper case - Text with lower case converted to upper case """ + want = 'case' + +class cubic_centimeters(aetools.ComponentItem): + """cubic centimeters - a volume measurement in SI cubic centimeters """ + want = 'ccmt' + +cubic_centimetres = cubic_centimeters + +class cubic_feet(aetools.ComponentItem): + """cubic feet - a volume measurement in Imperial cubic feet """ + want = 'cfet' + +class characters(aetools.ComponentItem): + """characters - """ + want = 'cha ' + +character = characters + +class writing_code_info(aetools.ComponentItem): + """writing code info - script code and language code of text run """ + want = 'citl' +class _Prop_language_code(aetools.NProperty): + """language code - the language code for the text """ + which = 'plcd' + want = 'shor' +class _Prop_script_code(aetools.NProperty): + """script code - the script code for the text """ + which = 'pscd' + want = 'shor' + +writing_code_infos = writing_code_info + +class text_items(aetools.ComponentItem): + """text items - """ + want = 'citm' + +text_item = text_items + +class cubic_meters(aetools.ComponentItem): + """cubic meters - a volume measurement in SI cubic meters """ + want = 'cmet' + +cubic_metres = cubic_meters + +class centimeters(aetools.ComponentItem): + """centimeters - a distance measurement in SI centimeters """ + want = 'cmtr' + +centimetres = centimeters + +class item(aetools.ComponentItem): + """item - An item of any type """ + want = 'cobj' +class _Prop_id(aetools.NProperty): + """id - the unique ID number of this object """ + which = 'ID ' + want = 'long' + +items = item + +class C_strings(aetools.ComponentItem): + """C strings - """ + want = 'cstr' + +C_string = C_strings + +class text(aetools.ComponentItem): + """text - text with language and style information """ + want = 'ctxt' + +class cubic_inches(aetools.ComponentItem): + """cubic inches - a volume measurement in Imperial cubic inches """ + want = 'cuin' + +class cubic_yards(aetools.ComponentItem): + """cubic yards - a distance measurement in Imperial cubic yards """ + want = 'cyrd' + +class December(aetools.ComponentItem): + """December - the month of December """ + want = 'dec ' + +class degrees_Celsius(aetools.ComponentItem): + """degrees Celsius - a temperature measurement in SI degrees Celsius """ + want = 'degc' + +class degrees_Fahrenheit(aetools.ComponentItem): + """degrees Fahrenheit - a temperature measurement in degrees Fahrenheit """ + want = 'degf' + +class degrees_Kelvin(aetools.ComponentItem): + """degrees Kelvin - a temperature measurement in degrees Kelvin """ + want = 'degk' + +class reals(aetools.ComponentItem): + """reals - """ + want = 'doub' + +real = reals + +class encoded_strings(aetools.ComponentItem): + """encoded strings - """ + want = 'encs' + +encoded_string = encoded_strings + +class constants(aetools.ComponentItem): + """constants - """ + want = 'enum' + +constant = constants + +class events(aetools.ComponentItem): + """events - """ + want = 'evnt' + +event = events + +class February(aetools.ComponentItem): + """February - the month of February """ + want = 'feb ' + +class feet(aetools.ComponentItem): + """feet - a distance measurement in Imperial feet """ + want = 'feet' + +class Friday(aetools.ComponentItem): + """Friday - Friday """ + want = 'fri ' + +class file_specification(aetools.ComponentItem): + """file specification - a file specification as used by the operating system """ + want = 'fss ' + +file_specifications = file_specification + +class gallons(aetools.ComponentItem): + """gallons - a volume measurement in Imperial gallons """ + want = 'galn' + +class grams(aetools.ComponentItem): + """grams - a mass measurement in SI meters """ + want = 'gram' + +class handlers(aetools.ComponentItem): + """handlers - """ + want = 'hand' + +handler = handlers + +class inches(aetools.ComponentItem): + """inches - a distance measurement in Imperial inches """ + want = 'inch' + +class international_text(aetools.ComponentItem): + """international text - text that begins with a writing code """ + want = 'itxt' + +international_text = international_text + +class January(aetools.ComponentItem): + """January - the month of January """ + want = 'jan ' + +class July(aetools.ComponentItem): + """July - the month of July """ + want = 'jul ' + +class June(aetools.ComponentItem): + """June - the month of June """ + want = 'jun ' + +class reference_forms(aetools.ComponentItem): + """reference forms - """ + want = 'kfrm' + +reference_form = reference_forms + +class kilograms(aetools.ComponentItem): + """kilograms - a mass measurement in SI kilograms """ + want = 'kgrm' + +class kilometers(aetools.ComponentItem): + """kilometers - a distance measurement in SI kilometers """ + want = 'kmtr' + +kilometres = kilometers + +class keystroke(aetools.ComponentItem): + """keystroke - a press of a key combination on a Macintosh keyboard """ + want = 'kprs' +class _Prop_key(aetools.NProperty): + """key - the character for the key was pressed (ignoring modifiers) """ + which = 'kMsg' + want = 'cha ' +class _Prop_key_kind(aetools.NProperty): + """key kind - the kind of key that was pressed """ + which = 'kknd' + want = 'ekst' +class _Prop_modifiers(aetools.NProperty): + """modifiers - the modifier keys pressed in combination """ + which = 'kMod' + want = 'eMds' + +keystrokes = keystroke + +class pounds(aetools.ComponentItem): + """pounds - a weight measurement in SI meters """ + want = 'lbs ' + +class date(aetools.ComponentItem): + """date - Absolute date and time values """ + want = 'ldt ' +class _Prop_date_string(aetools.NProperty): + """date string - the date portion of a date-time value as text """ + which = 'dstr' + want = 'TEXT' +class _Prop_day(aetools.NProperty): + """day - the day of the month of a date """ + which = 'day ' + want = 'long' +class _Prop_month(aetools.NProperty): + """month - the month of a date """ + which = 'mnth' + want = 'mnth' +class _Prop_time(aetools.NProperty): + """time - the time since midnight of a date """ + which = 'time' + want = 'long' +class _Prop_time_string(aetools.NProperty): + """time string - the time portion of a date-time value as text """ + which = 'tstr' + want = 'TEXT' +class _Prop_weekday(aetools.NProperty): + """weekday - the day of a week of a date """ + which = 'wkdy' + want = 'wkdy' +class _Prop_year(aetools.NProperty): + """year - the year of a date """ + which = 'year' + want = 'long' + +dates = date + +class list(aetools.ComponentItem): + """list - An ordered collection of items """ + want = 'list' +class _Prop_length(aetools.NProperty): + """length - the length of a list """ + which = 'leng' + want = 'long' +class _Prop_rest(aetools.NProperty): + """rest - all items of the list excluding first """ + which = 'rest' + want = 'list' +class _Prop_reverse(aetools.NProperty): + """reverse - the items of the list in reverse order """ + which = 'rvse' + want = 'list' + +lists = list + +class liters(aetools.ComponentItem): + """liters - a volume measurement in SI liters """ + want = 'litr' + +litres = liters + +class linked_list(aetools.ComponentItem): + """linked list - An ordered collection of items """ + want = 'llst' + +linked_lists = linked_list + +class integers(aetools.ComponentItem): + """integers - """ + want = 'long' + +integer = integers + +class list_or_record(aetools.ComponentItem): + """list or record - a list or record """ + want = 'lr ' + +class list_2c__record_or_text(aetools.ComponentItem): + """list, record or text - a list, record or text """ + want = 'lrs ' + +class list_or_string(aetools.ComponentItem): + """list or string - a list or string """ + want = 'ls ' + +class machines(aetools.ComponentItem): + """machines - """ + want = 'mach' + +machine = machines + +class March(aetools.ComponentItem): + """March - the month of March """ + want = 'mar ' + +class May(aetools.ComponentItem): + """May - the month of May """ + want = 'may ' + +class meters(aetools.ComponentItem): + """meters - a distance measurement in SI meters """ + want = 'metr' + +metres = meters + +class miles(aetools.ComponentItem): + """miles - a distance measurement in Imperial miles """ + want = 'mile' + +class months(aetools.ComponentItem): + """months - """ + want = 'mnth' + +month = months + +class Monday(aetools.ComponentItem): + """Monday - Monday """ + want = 'mon ' + +class missing_values(aetools.ComponentItem): + """missing values - """ + want = 'msng' + +missing_value = missing_values + +class number_or_date(aetools.ComponentItem): + """number or date - a number or date """ + want = 'nd ' + +class number_2c__date_or_text(aetools.ComponentItem): + """number, date or text - a number, date or text """ + want = 'nds ' + +class numbers(aetools.ComponentItem): + """numbers - """ + want = 'nmbr' + +number = numbers + +class November(aetools.ComponentItem): + """November - the month of November """ + want = 'nov ' + +class number_or_string(aetools.ComponentItem): + """number or string - a number or string """ + want = 'ns ' + +class references(aetools.ComponentItem): + """references - """ + want = 'obj ' + +reference = references + +class October(aetools.ComponentItem): + """October - the month of October """ + want = 'oct ' + +class ounces(aetools.ComponentItem): + """ounces - a weight measurement in SI meters """ + want = 'ozs ' + +class class_(aetools.ComponentItem): + """class - the type of a value """ + want = 'pcls' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - inherits some of its properties from this class """ + which = 'c@#^' + want = 'type' + +classes = class_ + +class prepositions(aetools.ComponentItem): + """prepositions - """ + want = 'prep' + +preposition = prepositions + +class properties(aetools.ComponentItem): + """properties - """ + want = 'prop' + +property = properties + +class writing_code(aetools.ComponentItem): + """writing code - codes that identify the language and script system """ + want = 'psct' + +class Pascal_strings(aetools.ComponentItem): + """Pascal strings - """ + want = 'pstr' + +Pascal_string = Pascal_strings + +class quarts(aetools.ComponentItem): + """quarts - a volume measurement in Imperial quarts """ + want = 'qrts' + +class data(aetools.ComponentItem): + """data - an AppleScript raw data object """ + want = 'rdat' + +class records(aetools.ComponentItem): + """records - """ + want = 'reco' + +record = records + +class Saturday(aetools.ComponentItem): + """Saturday - Saturday """ + want = 'sat ' + +class seconds(aetools.ComponentItem): + """seconds - more than one second """ + want = 'scnd' + +class script(aetools.ComponentItem): + """script - An AppleScript script """ + want = 'scpt' +class _Prop_name(aetools.NProperty): + """name - the name of the script """ + which = 'pnam' + want = 'TEXT' +class _Prop_parent(aetools.NProperty): + """parent - its parent, i.e. the script that will handle events that this script doesn\xd5t """ + which = 'pare' + want = 'scpt' + +scripts = script + +class September(aetools.ComponentItem): + """September - the month of September """ + want = 'sep ' + +class alias_or_string(aetools.ComponentItem): + """alias or string - an alias or string """ + want = 'sf ' + +class sounds(aetools.ComponentItem): + """sounds - """ + want = 'snd ' + +sound = sounds + +class square_feet(aetools.ComponentItem): + """square feet - an area measurement in Imperial square feet """ + want = 'sqft' + +class square_kilometers(aetools.ComponentItem): + """square kilometers - an area measurement in SI square kilometers """ + want = 'sqkm' + +square_kilometres = square_kilometers + +class square_miles(aetools.ComponentItem): + """square miles - an area measurement in Imperial square miles """ + want = 'sqmi' + +class square_meters(aetools.ComponentItem): + """square meters - an area measurement in SI square meters """ + want = 'sqrm' + +square_metres = square_meters + +class square_yards(aetools.ComponentItem): + """square yards - an area measurement in Imperial square yards """ + want = 'sqyd' + +class styled_Clipboard_text(aetools.ComponentItem): + """styled Clipboard text - clipboard text with font, size, and style information """ + want = 'styl' + +styled_Clipboard_text = styled_Clipboard_text + +class Sunday(aetools.ComponentItem): + """Sunday - Sunday """ + want = 'sun ' + +class styled_Unicode_text(aetools.ComponentItem): + """styled Unicode text - styled text in the Unicode format """ + want = 'sutx' + +styled_Unicode_text = styled_Unicode_text + +class Thursday(aetools.ComponentItem): + """Thursday - Thursday """ + want = 'thu ' + +class Tuesday(aetools.ComponentItem): + """Tuesday - Tuesday """ + want = 'tue ' + +class type_class(aetools.ComponentItem): + """type class - the name of a particular class (or any four-character code) """ + want = 'type' + +class empty_ae_name_(aetools.ComponentItem): + """ - the undefined value """ + want = 'undf' + +class Unicode_text(aetools.ComponentItem): + """Unicode text - text in the Unicode format (cannot be viewed without conversion) """ + want = 'utxt' + +Unicode_text = Unicode_text + +class vector(aetools.ComponentItem): + """vector - An ordered collection of items """ + want = 'vect' + +vectors = vector + +class version(aetools.ComponentItem): + """version - a version value """ + want = 'vers' + +class Wednesday(aetools.ComponentItem): + """Wednesday - Wednesday """ + want = 'wed ' + +class weekdays(aetools.ComponentItem): + """weekdays - """ + want = 'wkdy' + +weekday = weekdays + +class yards(aetools.ComponentItem): + """yards - a distance measurement in Imperial yards """ + want = 'yard' + +class zones(aetools.ComponentItem): + """zones - """ + want = 'zone' + +zone = zones +anything._superclassnames = [] +anything._privpropdict = { +} +anything._privelemdict = { +} +pictures._superclassnames = [] +pictures._privpropdict = { +} +pictures._privelemdict = { +} +styled_text._superclassnames = [] +styled_text._privpropdict = { +} +styled_text._privelemdict = { +} +styled_text._superclassnames = [] +styled_text._privpropdict = { +} +styled_text._privelemdict = { +} +strings._superclassnames = [] +strings._privpropdict = { +} +strings._privelemdict = { +} +alias._superclassnames = [] +alias._privpropdict = { + 'POSIX_path' : _Prop_POSIX_path, +} +alias._privelemdict = { +} +April._superclassnames = [] +April._privpropdict = { +} +April._privelemdict = { +} +August._superclassnames = [] +August._privpropdict = { +} +August._privelemdict = { +} +booleans._superclassnames = [] +booleans._privpropdict = { +} +booleans._privelemdict = { +} +RGB_colors._superclassnames = [] +RGB_colors._privpropdict = { +} +RGB_colors._privelemdict = { +} +application._superclassnames = [] +application._privpropdict = { + 'AppleScript' : _Prop_AppleScript, + 'days' : _Prop_days, + 'hours' : _Prop_hours, + 'minutes' : _Prop_minutes, + 'pi' : _Prop_pi, + 'print_depth' : _Prop_print_depth, + 'print_length' : _Prop_print_length, + 'result' : _Prop_result, + 'return_' : _Prop_return_, + 'space' : _Prop_space, + 'tab' : _Prop_tab, + 'text_item_delimiters' : _Prop_text_item_delimiters, + 'weeks' : _Prop_weeks, +} +application._privelemdict = { +} +upper_case._superclassnames = [] +upper_case._privpropdict = { +} +upper_case._privelemdict = { +} +cubic_centimeters._superclassnames = [] +cubic_centimeters._privpropdict = { +} +cubic_centimeters._privelemdict = { +} +cubic_feet._superclassnames = [] +cubic_feet._privpropdict = { +} +cubic_feet._privelemdict = { +} +characters._superclassnames = [] +characters._privpropdict = { +} +characters._privelemdict = { +} +writing_code_info._superclassnames = [] +writing_code_info._privpropdict = { + 'language_code' : _Prop_language_code, + 'script_code' : _Prop_script_code, +} +writing_code_info._privelemdict = { +} +text_items._superclassnames = [] +text_items._privpropdict = { +} +text_items._privelemdict = { +} +cubic_meters._superclassnames = [] +cubic_meters._privpropdict = { +} +cubic_meters._privelemdict = { +} +centimeters._superclassnames = [] +centimeters._privpropdict = { +} +centimeters._privelemdict = { +} +item._superclassnames = [] +item._privpropdict = { + 'id' : _Prop_id, +} +item._privelemdict = { +} +C_strings._superclassnames = [] +C_strings._privpropdict = { +} +C_strings._privelemdict = { +} +text._superclassnames = [] +text._privpropdict = { +} +text._privelemdict = { +} +cubic_inches._superclassnames = [] +cubic_inches._privpropdict = { +} +cubic_inches._privelemdict = { +} +cubic_yards._superclassnames = [] +cubic_yards._privpropdict = { +} +cubic_yards._privelemdict = { +} +December._superclassnames = [] +December._privpropdict = { +} +December._privelemdict = { +} +degrees_Celsius._superclassnames = [] +degrees_Celsius._privpropdict = { +} +degrees_Celsius._privelemdict = { +} +degrees_Fahrenheit._superclassnames = [] +degrees_Fahrenheit._privpropdict = { +} +degrees_Fahrenheit._privelemdict = { +} +degrees_Kelvin._superclassnames = [] +degrees_Kelvin._privpropdict = { +} +degrees_Kelvin._privelemdict = { +} +reals._superclassnames = [] +reals._privpropdict = { +} +reals._privelemdict = { +} +encoded_strings._superclassnames = [] +encoded_strings._privpropdict = { +} +encoded_strings._privelemdict = { +} +constants._superclassnames = [] +constants._privpropdict = { +} +constants._privelemdict = { +} +events._superclassnames = [] +events._privpropdict = { +} +events._privelemdict = { +} +February._superclassnames = [] +February._privpropdict = { +} +February._privelemdict = { +} +feet._superclassnames = [] +feet._privpropdict = { +} +feet._privelemdict = { +} +Friday._superclassnames = [] +Friday._privpropdict = { +} +Friday._privelemdict = { +} +file_specification._superclassnames = [] +file_specification._privpropdict = { + 'POSIX_path' : _Prop_POSIX_path, +} +file_specification._privelemdict = { +} +gallons._superclassnames = [] +gallons._privpropdict = { +} +gallons._privelemdict = { +} +grams._superclassnames = [] +grams._privpropdict = { +} +grams._privelemdict = { +} +handlers._superclassnames = [] +handlers._privpropdict = { +} +handlers._privelemdict = { +} +inches._superclassnames = [] +inches._privpropdict = { +} +inches._privelemdict = { +} +international_text._superclassnames = [] +international_text._privpropdict = { +} +international_text._privelemdict = { +} +international_text._superclassnames = [] +international_text._privpropdict = { +} +international_text._privelemdict = { +} +January._superclassnames = [] +January._privpropdict = { +} +January._privelemdict = { +} +July._superclassnames = [] +July._privpropdict = { +} +July._privelemdict = { +} +June._superclassnames = [] +June._privpropdict = { +} +June._privelemdict = { +} +reference_forms._superclassnames = [] +reference_forms._privpropdict = { +} +reference_forms._privelemdict = { +} +kilograms._superclassnames = [] +kilograms._privpropdict = { +} +kilograms._privelemdict = { +} +kilometers._superclassnames = [] +kilometers._privpropdict = { +} +kilometers._privelemdict = { +} +keystroke._superclassnames = [] +keystroke._privpropdict = { + 'key' : _Prop_key, + 'key_kind' : _Prop_key_kind, + 'modifiers' : _Prop_modifiers, +} +keystroke._privelemdict = { +} +pounds._superclassnames = [] +pounds._privpropdict = { +} +pounds._privelemdict = { +} +date._superclassnames = [] +date._privpropdict = { + 'date_string' : _Prop_date_string, + 'day' : _Prop_day, + 'month' : _Prop_month, + 'time' : _Prop_time, + 'time_string' : _Prop_time_string, + 'weekday' : _Prop_weekday, + 'year' : _Prop_year, +} +date._privelemdict = { +} +list._superclassnames = [] +list._privpropdict = { + 'length' : _Prop_length, + 'rest' : _Prop_rest, + 'reverse' : _Prop_reverse, +} +list._privelemdict = { +} +liters._superclassnames = [] +liters._privpropdict = { +} +liters._privelemdict = { +} +linked_list._superclassnames = [] +linked_list._privpropdict = { + 'length' : _Prop_length, +} +linked_list._privelemdict = { +} +integers._superclassnames = [] +integers._privpropdict = { +} +integers._privelemdict = { +} +list_or_record._superclassnames = [] +list_or_record._privpropdict = { +} +list_or_record._privelemdict = { +} +list_2c__record_or_text._superclassnames = [] +list_2c__record_or_text._privpropdict = { +} +list_2c__record_or_text._privelemdict = { +} +list_or_string._superclassnames = [] +list_or_string._privpropdict = { +} +list_or_string._privelemdict = { +} +machines._superclassnames = [] +machines._privpropdict = { +} +machines._privelemdict = { +} +March._superclassnames = [] +March._privpropdict = { +} +March._privelemdict = { +} +May._superclassnames = [] +May._privpropdict = { +} +May._privelemdict = { +} +meters._superclassnames = [] +meters._privpropdict = { +} +meters._privelemdict = { +} +miles._superclassnames = [] +miles._privpropdict = { +} +miles._privelemdict = { +} +months._superclassnames = [] +months._privpropdict = { +} +months._privelemdict = { +} +Monday._superclassnames = [] +Monday._privpropdict = { +} +Monday._privelemdict = { +} +missing_values._superclassnames = [] +missing_values._privpropdict = { +} +missing_values._privelemdict = { +} +number_or_date._superclassnames = [] +number_or_date._privpropdict = { +} +number_or_date._privelemdict = { +} +number_2c__date_or_text._superclassnames = [] +number_2c__date_or_text._privpropdict = { +} +number_2c__date_or_text._privelemdict = { +} +numbers._superclassnames = [] +numbers._privpropdict = { +} +numbers._privelemdict = { +} +November._superclassnames = [] +November._privpropdict = { +} +November._privelemdict = { +} +number_or_string._superclassnames = [] +number_or_string._privpropdict = { +} +number_or_string._privelemdict = { +} +references._superclassnames = [] +references._privpropdict = { +} +references._privelemdict = { +} +October._superclassnames = [] +October._privpropdict = { +} +October._privelemdict = { +} +ounces._superclassnames = [] +ounces._privpropdict = { +} +ounces._privelemdict = { +} +class_._superclassnames = ['type_class'] +class_._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, +} +class_._privelemdict = { +} +prepositions._superclassnames = [] +prepositions._privpropdict = { +} +prepositions._privelemdict = { +} +properties._superclassnames = [] +properties._privpropdict = { +} +properties._privelemdict = { +} +writing_code._superclassnames = [] +writing_code._privpropdict = { +} +writing_code._privelemdict = { +} +Pascal_strings._superclassnames = [] +Pascal_strings._privpropdict = { +} +Pascal_strings._privelemdict = { +} +quarts._superclassnames = [] +quarts._privpropdict = { +} +quarts._privelemdict = { +} +data._superclassnames = [] +data._privpropdict = { +} +data._privelemdict = { +} +records._superclassnames = [] +records._privpropdict = { +} +records._privelemdict = { +} +Saturday._superclassnames = [] +Saturday._privpropdict = { +} +Saturday._privelemdict = { +} +seconds._superclassnames = [] +seconds._privpropdict = { +} +seconds._privelemdict = { +} +script._superclassnames = [] +script._privpropdict = { + 'name' : _Prop_name, + 'parent' : _Prop_parent, +} +script._privelemdict = { +} +September._superclassnames = [] +September._privpropdict = { +} +September._privelemdict = { +} +alias_or_string._superclassnames = [] +alias_or_string._privpropdict = { +} +alias_or_string._privelemdict = { +} +sounds._superclassnames = [] +sounds._privpropdict = { +} +sounds._privelemdict = { +} +square_feet._superclassnames = [] +square_feet._privpropdict = { +} +square_feet._privelemdict = { +} +square_kilometers._superclassnames = [] +square_kilometers._privpropdict = { +} +square_kilometers._privelemdict = { +} +square_miles._superclassnames = [] +square_miles._privpropdict = { +} +square_miles._privelemdict = { +} +square_meters._superclassnames = [] +square_meters._privpropdict = { +} +square_meters._privelemdict = { +} +square_yards._superclassnames = [] +square_yards._privpropdict = { +} +square_yards._privelemdict = { +} +styled_Clipboard_text._superclassnames = [] +styled_Clipboard_text._privpropdict = { +} +styled_Clipboard_text._privelemdict = { +} +styled_Clipboard_text._superclassnames = [] +styled_Clipboard_text._privpropdict = { +} +styled_Clipboard_text._privelemdict = { +} +Sunday._superclassnames = [] +Sunday._privpropdict = { +} +Sunday._privelemdict = { +} +styled_Unicode_text._superclassnames = [] +styled_Unicode_text._privpropdict = { +} +styled_Unicode_text._privelemdict = { +} +styled_Unicode_text._superclassnames = [] +styled_Unicode_text._privpropdict = { +} +styled_Unicode_text._privelemdict = { +} +Thursday._superclassnames = [] +Thursday._privpropdict = { +} +Thursday._privelemdict = { +} +Tuesday._superclassnames = [] +Tuesday._privpropdict = { +} +Tuesday._privelemdict = { +} +type_class._superclassnames = [] +type_class._privpropdict = { +} +type_class._privelemdict = { +} +empty_ae_name_._superclassnames = [] +empty_ae_name_._privpropdict = { +} +empty_ae_name_._privelemdict = { +} +Unicode_text._superclassnames = [] +Unicode_text._privpropdict = { +} +Unicode_text._privelemdict = { +} +Unicode_text._superclassnames = [] +Unicode_text._privpropdict = { +} +Unicode_text._privelemdict = { +} +vector._superclassnames = [] +vector._privpropdict = { + 'length' : _Prop_length, +} +vector._privelemdict = { +} +version._superclassnames = [] +version._privpropdict = { +} +version._privelemdict = { +} +Wednesday._superclassnames = [] +Wednesday._privpropdict = { +} +Wednesday._privelemdict = { +} +weekdays._superclassnames = [] +weekdays._privpropdict = { +} +weekdays._privelemdict = { +} +yards._superclassnames = [] +yards._privpropdict = { +} +yards._privelemdict = { +} +zones._superclassnames = [] +zones._privpropdict = { +} +zones._privelemdict = { +} +_Enum_boov = { + 'true' : 'true', # the true boolean value + 'false' : 'fals', # the false boolean value +} + +_Enum_cons = { + 'case' : 'case', # case + 'diacriticals' : 'diac', # diacriticals + 'white_space' : 'whit', # white space + 'hyphens' : 'hyph', # hyphens + 'expansion' : 'expa', # expansion + 'punctuation' : 'punc', # punctuation + 'application_responses' : 'rmte', # remote event replies +} + +_Enum_eMds = { + 'option_down' : 'Kopt', # + 'command_down' : 'Kcmd', # + 'control_down' : 'Kctl', # + 'shift_down' : 'Ksft', # + 'caps_lock_down' : 'Kclk', # +} + +_Enum_ekst = { + 'escape_key' : 'ks5\x00', # + 'delete_key' : 'ks3\x00', # + 'tab_key' : 'ks0\x00', # + 'return_key' : 'ks$\x00', # + 'clear_key' : 'ksG\x00', # + 'enter_key' : 'ksL\x00', # + 'up_arrow_key' : 'ks~\x00', # + 'down_arrow_key' : 'ks}\x00', # + 'left_arrow_key' : 'ks{\x00', # + 'right_arrow_key' : 'ks|\x00', # + 'help_key' : 'ksr\x00', # + 'home_key' : 'kss\x00', # + 'page_up_key' : 'kst\x00', # + 'page_down_key' : 'ksy\x00', # + 'forward_del_key' : 'ksu\x00', # + 'end_key' : 'ksw\x00', # + 'F1_key' : 'ksz\x00', # + 'F2_key' : 'ksx\x00', # + 'F3_key' : 'ksc\x00', # + 'F4_key' : 'ksv\x00', # + 'F5_key' : 'ks`\x00', # + 'F6_key' : 'ksa\x00', # + 'F7_key' : 'ksb\x00', # + 'F8_key' : 'ksd\x00', # + 'F9_key' : 'kse\x00', # + 'F10_key' : 'ksm\x00', # + 'F11_key' : 'ksg\x00', # + 'F12_key' : 'kso\x00', # + 'F13_key' : 'ksi\x00', # + 'F14_key' : 'ksk\x00', # + 'F15_key' : 'ksq\x00', # +} + +_Enum_misc = { + 'current_application' : 'cura', # the current application +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + '****' : anything, + 'PICT' : pictures, + 'STXT' : styled_text, + 'TEXT' : strings, + 'alis' : alias, + 'apr ' : April, + 'aug ' : August, + 'bool' : booleans, + 'cRGB' : RGB_colors, + 'capp' : application, + 'case' : upper_case, + 'ccmt' : cubic_centimeters, + 'cfet' : cubic_feet, + 'cha ' : characters, + 'citl' : writing_code_info, + 'citm' : text_items, + 'cmet' : cubic_meters, + 'cmtr' : centimeters, + 'cobj' : item, + 'cstr' : C_strings, + 'ctxt' : text, + 'cuin' : cubic_inches, + 'cyrd' : cubic_yards, + 'dec ' : December, + 'degc' : degrees_Celsius, + 'degf' : degrees_Fahrenheit, + 'degk' : degrees_Kelvin, + 'doub' : reals, + 'encs' : encoded_strings, + 'enum' : constants, + 'evnt' : events, + 'feb ' : February, + 'feet' : feet, + 'fri ' : Friday, + 'fss ' : file_specification, + 'galn' : gallons, + 'gram' : grams, + 'hand' : handlers, + 'inch' : inches, + 'itxt' : international_text, + 'jan ' : January, + 'jul ' : July, + 'jun ' : June, + 'kfrm' : reference_forms, + 'kgrm' : kilograms, + 'kmtr' : kilometers, + 'kprs' : keystroke, + 'lbs ' : pounds, + 'ldt ' : date, + 'list' : list, + 'litr' : liters, + 'llst' : linked_list, + 'long' : integers, + 'lr ' : list_or_record, + 'lrs ' : list_2c__record_or_text, + 'ls ' : list_or_string, + 'mach' : machines, + 'mar ' : March, + 'may ' : May, + 'metr' : meters, + 'mile' : miles, + 'mnth' : months, + 'mon ' : Monday, + 'msng' : missing_values, + 'nd ' : number_or_date, + 'nds ' : number_2c__date_or_text, + 'nmbr' : numbers, + 'nov ' : November, + 'ns ' : number_or_string, + 'obj ' : references, + 'oct ' : October, + 'ozs ' : ounces, + 'pcls' : class_, + 'prep' : prepositions, + 'prop' : properties, + 'psct' : writing_code, + 'pstr' : Pascal_strings, + 'qrts' : quarts, + 'rdat' : data, + 'reco' : records, + 'sat ' : Saturday, + 'scnd' : seconds, + 'scpt' : script, + 'sep ' : September, + 'sf ' : alias_or_string, + 'snd ' : sounds, + 'sqft' : square_feet, + 'sqkm' : square_kilometers, + 'sqmi' : square_miles, + 'sqrm' : square_meters, + 'sqyd' : square_yards, + 'styl' : styled_Clipboard_text, + 'sun ' : Sunday, + 'sutx' : styled_Unicode_text, + 'thu ' : Thursday, + 'tue ' : Tuesday, + 'type' : type_class, + 'undf' : empty_ae_name_, + 'utxt' : Unicode_text, + 'vect' : vector, + 'vers' : version, + 'wed ' : Wednesday, + 'wkdy' : weekdays, + 'yard' : yards, + 'zone' : zones, +} + +_propdeclarations = { + 'ID ' : _Prop_id, + 'ascr' : _Prop_AppleScript, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'day ' : _Prop_day, + 'days' : _Prop_days, + 'dstr' : _Prop_date_string, + 'hour' : _Prop_hours, + 'kMod' : _Prop_modifiers, + 'kMsg' : _Prop_key, + 'kknd' : _Prop_key_kind, + 'leng' : _Prop_length, + 'min ' : _Prop_minutes, + 'mnth' : _Prop_month, + 'pare' : _Prop_parent, + 'pi ' : _Prop_pi, + 'plcd' : _Prop_language_code, + 'pnam' : _Prop_name, + 'prdp' : _Prop_print_depth, + 'prln' : _Prop_print_length, + 'pscd' : _Prop_script_code, + 'psxp' : _Prop_POSIX_path, + 'rest' : _Prop_rest, + 'ret ' : _Prop_return_, + 'rslt' : _Prop_result, + 'rvse' : _Prop_reverse, + 'spac' : _Prop_space, + 'tab ' : _Prop_tab, + 'time' : _Prop_time, + 'tstr' : _Prop_time_string, + 'txdl' : _Prop_text_item_delimiters, + 'week' : _Prop_weeks, + 'wkdy' : _Prop_weekday, + 'year' : _Prop_year, +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'boov' : _Enum_boov, + 'cons' : _Enum_cons, + 'eMds' : _Enum_eMds, + 'ekst' : _Enum_ekst, + 'misc' : _Enum_misc, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Macintosh_Connectivity_Clas.py b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Macintosh_Connectivity_Clas.py new file mode 100644 index 000000000..99fe5e348 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Macintosh_Connectivity_Clas.py @@ -0,0 +1,373 @@ +"""Suite Macintosh Connectivity Classes: Classes relating to Apple Macintosh personal computer connectivity +Level 1, version 1 + +Generated from /Volumes/Sap/System Folder/Extensions/AppleScript +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'macc' + +class Macintosh_Connectivity_Clas_Events: + + pass + + +class ADB_address(aetools.ComponentItem): + """ADB address - Addresses a device connected via Apple Desktop Bus """ + want = 'cadb' +class _Prop__3c_inheritance_3e_(aetools.NProperty): + """<inheritance> - inherits some of its properties from this class """ + which = 'c@#^' + want = 'cadr' +class _Prop_ID(aetools.NProperty): + """ID - the Apple Desktop Bus device ID """ + which = 'ID ' + want = 'shor' + +ADB_addresses = ADB_address + +class address_specification(aetools.ComponentItem): + """address specification - Unique designation of a device or service connected to this computer """ + want = 'cadr' +class _Prop_conduit(aetools.NProperty): + """conduit - How the addressee is physically connected """ + which = 'pcon' + want = 'econ' +class _Prop_properties(aetools.NProperty): + """properties - property that allows getting and setting of multiple properties """ + which = 'pALL' + want = 'reco' +class _Prop_protocol(aetools.NProperty): + """protocol - How to talk to this addressee """ + which = 'pprt' + want = 'epro' + +address_specifications = address_specification + +class AppleTalk_address(aetools.ComponentItem): + """AppleTalk address - Addresses a device or service connected via the AppleTalk protocol """ + want = 'cat ' +class _Prop_AppleTalk_machine(aetools.NProperty): + """AppleTalk machine - the machine name part of the address """ + which = 'patm' + want = 'TEXT' +class _Prop_AppleTalk_type(aetools.NProperty): + """AppleTalk type - the type part of the AppleTalk address """ + which = 'patt' + want = 'TEXT' +class _Prop_AppleTalk_zone(aetools.NProperty): + """AppleTalk zone - the zone part of the address """ + which = 'patz' + want = 'TEXT' + +AppleTalk_addresses = AppleTalk_address + +class bus_slot(aetools.ComponentItem): + """bus slot - Addresses a PC, PCI, or NuBus card """ + want = 'cbus' + +bus_slots = bus_slot + +class device_specification(aetools.ComponentItem): + """device specification - A device connected to a computer """ + want = 'cdev' +class _Prop_device_address(aetools.NProperty): + """device address - the address of the device """ + which = 'pdva' + want = 'cadr' +class _Prop_device_type(aetools.NProperty): + """device type - the kind of device """ + which = 'pdvt' + want = 'edvt' + +device_specifications = device_specification + +class Ethernet_address(aetools.ComponentItem): + """Ethernet address - Addresses a device by its Ethernet address """ + want = 'cen ' + +Ethernet_addresses = Ethernet_address + +class FireWire_address(aetools.ComponentItem): + """FireWire address - Addresses a device on the FireWire bus """ + want = 'cfw ' + +FireWire_addresses = FireWire_address + +class IP_address(aetools.ComponentItem): + """IP address - Addresses a device or service via the Internet Protocol (IP) """ + want = 'cip ' +class _Prop_DNS_form(aetools.NProperty): + """DNS form - the address in the form "apple.com" """ + which = 'pdns' + want = 'TEXT' +class _Prop_port(aetools.NProperty): + """port - the port number of the service or client being addressed """ + which = 'ppor' + want = 'TEXT' + +IP_addresses = IP_address + +class LocalTalk_address(aetools.ComponentItem): + """LocalTalk address - Addresses a device by its LocalTalk address """ + want = 'clt ' +class _Prop_network(aetools.NProperty): + """network - the LocalTalk network number """ + which = 'pnet' + want = 'shor' +class _Prop_node(aetools.NProperty): + """node - the LocalTalk node number """ + which = 'pnod' + want = 'shor' +class _Prop_socket(aetools.NProperty): + """socket - the LocalTalk socket number """ + which = 'psoc' + want = 'shor' + +LocalTalk_addresses = LocalTalk_address + +class SCSI_address(aetools.ComponentItem): + """SCSI address - Addresses a SCSI device """ + want = 'cscs' +class _Prop_LUN(aetools.NProperty): + """LUN - the SCSI logical unit number """ + which = 'pslu' + want = 'shor' +class _Prop_SCSI_bus(aetools.NProperty): + """SCSI bus - the SCSI bus number """ + which = 'pscb' + want = 'shor' + +SCSI_addresses = SCSI_address + +class Token_Ring_address(aetools.ComponentItem): + """Token Ring address - Addresses a device or service via the Token Ring protocol """ + want = 'ctok' + +Token_Ring_addresses = Token_Ring_address + +class USB_address(aetools.ComponentItem): + """USB address - Addresses a device on the Universal Serial Bus """ + want = 'cusb' +class _Prop_name(aetools.NProperty): + """name - the USB device name """ + which = 'pnam' + want = 'TEXT' + +USB_Addresses = USB_address +ADB_address._superclassnames = ['address_specification'] +ADB_address._privpropdict = { + 'ID' : _Prop_ID, + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, +} +ADB_address._privelemdict = { +} +address_specification._superclassnames = [] +address_specification._privpropdict = { + 'conduit' : _Prop_conduit, + 'properties' : _Prop_properties, + 'protocol' : _Prop_protocol, +} +address_specification._privelemdict = { +} +AppleTalk_address._superclassnames = ['address_specification'] +AppleTalk_address._privpropdict = { + 'AppleTalk_machine' : _Prop_AppleTalk_machine, + 'AppleTalk_type' : _Prop_AppleTalk_type, + 'AppleTalk_zone' : _Prop_AppleTalk_zone, + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, +} +AppleTalk_address._privelemdict = { +} +bus_slot._superclassnames = ['address_specification'] +bus_slot._privpropdict = { + 'ID' : _Prop_ID, + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, +} +bus_slot._privelemdict = { +} +device_specification._superclassnames = [] +device_specification._privpropdict = { + 'device_address' : _Prop_device_address, + 'device_type' : _Prop_device_type, + 'properties' : _Prop_properties, +} +device_specification._privelemdict = { +} +Ethernet_address._superclassnames = ['address_specification'] +Ethernet_address._privpropdict = { + 'ID' : _Prop_ID, + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, +} +Ethernet_address._privelemdict = { +} +FireWire_address._superclassnames = ['address_specification'] +FireWire_address._privpropdict = { + 'ID' : _Prop_ID, + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, +} +FireWire_address._privelemdict = { +} +IP_address._superclassnames = ['address_specification'] +IP_address._privpropdict = { + 'DNS_form' : _Prop_DNS_form, + 'ID' : _Prop_ID, + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, + 'port' : _Prop_port, +} +IP_address._privelemdict = { +} +LocalTalk_address._superclassnames = ['address_specification'] +LocalTalk_address._privpropdict = { + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, + 'network' : _Prop_network, + 'node' : _Prop_node, + 'socket' : _Prop_socket, +} +LocalTalk_address._privelemdict = { +} +SCSI_address._superclassnames = ['address_specification'] +SCSI_address._privpropdict = { + 'ID' : _Prop_ID, + 'LUN' : _Prop_LUN, + 'SCSI_bus' : _Prop_SCSI_bus, + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, +} +SCSI_address._privelemdict = { +} +Token_Ring_address._superclassnames = ['address_specification'] +Token_Ring_address._privpropdict = { + 'ID' : _Prop_ID, + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, +} +Token_Ring_address._privelemdict = { +} +USB_address._superclassnames = ['address_specification'] +USB_address._privpropdict = { + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, + 'name' : _Prop_name, +} +USB_address._privelemdict = { +} +_Enum_econ = { + 'ADB' : 'eadb', # + 'printer_port' : 'ecpp', # + 'modem_port' : 'ecmp', # + 'modem_printer_port' : 'empp', # + 'LocalTalk' : 'eclt', # + 'Ethernet' : 'ecen', # + 'Token_Ring' : 'etok', # + 'SCSI' : 'ecsc', # + 'USB' : 'ecus', # + 'FireWire' : 'ecfw', # + 'infrared' : 'ecir', # + 'PC_card' : 'ecpc', # + 'PCI_bus' : 'ecpi', # + 'NuBus' : 'enub', # + 'PDS_slot' : 'ecpd', # + 'Comm_slot' : 'eccm', # + 'monitor_out' : 'ecmn', # + 'video_out' : 'ecvo', # + 'video_in' : 'ecvi', # + 'audio_out' : 'ecao', # + 'audio_line_in' : 'ecai', # + 'audio_line_out' : 'ecal', # + 'microphone' : 'ecmi', # +} + +_Enum_edvt = { + 'hard_disk_drive' : 'ehd ', # + 'floppy_disk_drive' : 'efd ', # + 'CD_ROM_drive' : 'ecd ', # + 'DVD_drive' : 'edvd', # + 'storage_device' : 'edst', # + 'keyboard' : 'ekbd', # + 'mouse' : 'emou', # + 'trackball' : 'etrk', # + 'trackpad' : 'edtp', # + 'pointing_device' : 'edpd', # + 'video_monitor' : 'edvm', # + 'LCD_display' : 'edlc', # + 'display' : 'edds', # + 'modem' : 'edmm', # + 'PC_card' : 'ecpc', # + 'PCI_card' : 'edpi', # + 'NuBus_card' : 'ednb', # + 'printer' : 'edpr', # + 'speakers' : 'edsp', # + 'microphone' : 'ecmi', # +} + +_Enum_epro = { + 'serial' : 'epsr', # + 'AppleTalk' : 'epat', # + 'IP' : 'epip', # + 'SCSI' : 'ecsc', # + 'ADB' : 'eadb', # + 'FireWire' : 'ecfw', # + 'IrDA' : 'epir', # + 'IRTalk' : 'epit', # + 'USB' : 'ecus', # + 'PC_card' : 'ecpc', # + 'PCI_bus' : 'ecpi', # + 'NuBus' : 'enub', # + 'bus' : 'ebus', # + 'Macintosh_video' : 'epmv', # + 'SVGA' : 'epsg', # + 'S_video' : 'epsv', # + 'analog_audio' : 'epau', # + 'digital_audio' : 'epda', # + 'PostScript' : 'epps', # +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'cadb' : ADB_address, + 'cadr' : address_specification, + 'cat ' : AppleTalk_address, + 'cbus' : bus_slot, + 'cdev' : device_specification, + 'cen ' : Ethernet_address, + 'cfw ' : FireWire_address, + 'cip ' : IP_address, + 'clt ' : LocalTalk_address, + 'cscs' : SCSI_address, + 'ctok' : Token_Ring_address, + 'cusb' : USB_address, +} + +_propdeclarations = { + 'ID ' : _Prop_ID, + 'c@#^' : _Prop__3c_inheritance_3e_, + 'pALL' : _Prop_properties, + 'patm' : _Prop_AppleTalk_machine, + 'patt' : _Prop_AppleTalk_type, + 'patz' : _Prop_AppleTalk_zone, + 'pcon' : _Prop_conduit, + 'pdns' : _Prop_DNS_form, + 'pdva' : _Prop_device_address, + 'pdvt' : _Prop_device_type, + 'pnam' : _Prop_name, + 'pnet' : _Prop_network, + 'pnod' : _Prop_node, + 'ppor' : _Prop_port, + 'pprt' : _Prop_protocol, + 'pscb' : _Prop_SCSI_bus, + 'pslu' : _Prop_LUN, + 'psoc' : _Prop_socket, +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'econ' : _Enum_econ, + 'edvt' : _Enum_edvt, + 'epro' : _Enum_epro, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/QuickDraw_Graphics_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/QuickDraw_Graphics_Suite.py new file mode 100644 index 000000000..11747f9c3 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/QuickDraw_Graphics_Suite.py @@ -0,0 +1,417 @@ +"""Suite QuickDraw Graphics Suite: A set of basic classes for graphics +Level 1, version 1 + +Generated from /Volumes/Sap/System Folder/Extensions/AppleScript +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'qdrw' + +class QuickDraw_Graphics_Suite_Events: + + pass + + +class arc(aetools.ComponentItem): + """arc - An arc """ + want = 'carc' +class _Prop_arc_angle(aetools.NProperty): + """arc angle - the angle of the arc in degrees """ + which = 'parc' + want = 'fixd' +class _Prop_bounds(aetools.NProperty): + """bounds - the smallest rectangle that contains the entire arc """ + which = 'pbnd' + want = 'qdrt' +class _Prop_definition_rect(aetools.NProperty): + """definition rect - the rectangle that contains the circle or oval used to define the arc """ + which = 'pdrt' + want = 'qdrt' +class _Prop_fill_color(aetools.NProperty): + """fill color - the fill color """ + which = 'flcl' + want = 'cRGB' +class _Prop_fill_pattern(aetools.NProperty): + """fill pattern - the fill pattern """ + which = 'flpt' + want = 'cpix' +class _Prop_pen_color(aetools.NProperty): + """pen color - the pen color """ + which = 'ppcl' + want = 'cRGB' +class _Prop_pen_pattern(aetools.NProperty): + """pen pattern - the pen pattern """ + which = 'pppa' + want = 'cpix' +class _Prop_pen_width(aetools.NProperty): + """pen width - the pen width """ + which = 'ppwd' + want = 'shor' +class _Prop_start_angle(aetools.NProperty): + """start angle - the angle that defines the start of the arc, in degrees """ + which = 'pang' + want = 'fixd' +class _Prop_transfer_mode(aetools.NProperty): + """transfer mode - the transfer mode """ + which = 'pptm' + want = 'tran' + +arcs = arc + +class drawing_area(aetools.ComponentItem): + """drawing area - Container for graphics and supporting information """ + want = 'cdrw' +class _Prop_background_color(aetools.NProperty): + """background color - the color used to fill in unoccupied areas """ + which = 'pbcl' + want = 'cRGB' +class _Prop_background_pattern(aetools.NProperty): + """background pattern - the pattern used to fill in unoccupied areas """ + which = 'pbpt' + want = 'cpix' +class _Prop_color_table(aetools.NProperty): + """color table - the color table """ + which = 'cltb' + want = 'clrt' +class _Prop_default_font(aetools.NProperty): + """default font - the name of the default font for text objects """ + which = 'ptxf' + want = 'itxt' +class _Prop_default_location(aetools.NProperty): + """default location - the default location of each new graphic object """ + which = 'pnel' + want = 'QDpt' +class _Prop_default_size(aetools.NProperty): + """default size - the default size for text objects """ + which = 'ptps' + want = 'fixd' +class _Prop_name(aetools.NProperty): + """name - the name """ + which = 'pnam' + want = 'itxt' +class _Prop_ordering(aetools.NProperty): + """ordering - the ordered list of graphic objects in the drawing area """ + which = 'gobs' + want = 'obj ' +class _Prop_pixel_depth(aetools.NProperty): + """pixel depth - the number of bits per pixel """ + which = 'pdpt' + want = 'shor' +class _Prop_style(aetools.NProperty): + """style - the default text style for text objects """ + which = 'txst' + want = 'tsty' +class _Prop_text_color(aetools.NProperty): + """text color - the default color for text objects """ + which = 'ptxc' + want = 'cRGB' +class _Prop_update_on_change(aetools.NProperty): + """update on change - Redraw after each change? """ + which = 'pupd' + want = 'bool' +class _Prop_writing_code(aetools.NProperty): + """writing code - the script system and language of text objects in the drawing area """ + which = 'psct' + want = 'intl' + +drawing_areas = drawing_area + +class graphic_objects(aetools.ComponentItem): + """graphic objects - """ + want = 'cgob' + +graphic_object = graphic_objects + +class graphic_shapes(aetools.ComponentItem): + """graphic shapes - """ + want = 'cgsh' + +graphic_shape = graphic_shapes + +class graphic_text(aetools.ComponentItem): + """graphic text - A series of characters within a drawing area """ + want = 'cgtx' +class _Prop_color(aetools.NProperty): + """color - the color of the first character """ + which = 'colr' + want = 'cRGB' +class _Prop_font(aetools.NProperty): + """font - the name of the font of the first character """ + which = 'font' + want = 'ctxt' +class _Prop_size(aetools.NProperty): + """size - the size in points of the first character """ + which = 'ptsz' + want = 'fixd' +class _Prop_uniform_styles(aetools.NProperty): + """uniform styles - the text styles that are uniform throughout the text """ + which = 'ustl' + want = 'tsty' + +class ovals(aetools.ComponentItem): + """ovals - """ + want = 'covl' + +oval = ovals + +class polygon(aetools.ComponentItem): + """polygon - A polygon """ + want = 'cpgn' +class _Prop_point_list(aetools.NProperty): + """point list - the list of points that define the polygon """ + which = 'ptlt' + want = 'QDpt' + +polygons = polygon + +class graphic_groups(aetools.ComponentItem): + """graphic groups - """ + want = 'cpic' + +graphic_group = graphic_groups + +class pixel_maps(aetools.ComponentItem): + """pixel maps - """ + want = 'cpix' + +pixel_map = pixel_maps + +class pixel(aetools.ComponentItem): + """pixel - A pixel """ + want = 'cpxl' + +pixels = pixel + +class rectangles(aetools.ComponentItem): + """rectangles - """ + want = 'crec' + +rectangle = rectangles + +class rounded_rectangle(aetools.ComponentItem): + """rounded rectangle - A rounded rectangle """ + want = 'crrc' +class _Prop_corner_curve_height(aetools.NProperty): + """corner curve height - the height of the oval used to define the shape of the rounded corners """ + which = 'pchd' + want = 'shor' +class _Prop_corner_curve_width(aetools.NProperty): + """corner curve width - the width of the oval used to define the shape of the rounded corners """ + which = 'pcwd' + want = 'shor' + +rounded_rectangles = rounded_rectangle + +class graphic_line(aetools.ComponentItem): + """graphic line - A graphic line """ + want = 'glin' +class _Prop_arrow_style(aetools.NProperty): + """arrow style - the arrow style """ + which = 'arro' + want = 'arro' +class _Prop_dash_style(aetools.NProperty): + """dash style - the dash style """ + which = 'pdst' + want = 'tdas' +class _Prop_end_point(aetools.NProperty): + """end point - the ending point of the line """ + which = 'pend' + want = 'QDpt' +class _Prop_start_point(aetools.NProperty): + """start point - the starting point of the line """ + which = 'pstp' + want = 'QDpt' + +graphic_lines = graphic_line +arc._superclassnames = [] +arc._privpropdict = { + 'arc_angle' : _Prop_arc_angle, + 'bounds' : _Prop_bounds, + 'definition_rect' : _Prop_definition_rect, + 'fill_color' : _Prop_fill_color, + 'fill_pattern' : _Prop_fill_pattern, + 'pen_color' : _Prop_pen_color, + 'pen_pattern' : _Prop_pen_pattern, + 'pen_width' : _Prop_pen_width, + 'start_angle' : _Prop_start_angle, + 'transfer_mode' : _Prop_transfer_mode, +} +arc._privelemdict = { +} +drawing_area._superclassnames = [] +drawing_area._privpropdict = { + 'background_color' : _Prop_background_color, + 'background_pattern' : _Prop_background_pattern, + 'color_table' : _Prop_color_table, + 'default_font' : _Prop_default_font, + 'default_location' : _Prop_default_location, + 'default_size' : _Prop_default_size, + 'name' : _Prop_name, + 'ordering' : _Prop_ordering, + 'pixel_depth' : _Prop_pixel_depth, + 'style' : _Prop_style, + 'text_color' : _Prop_text_color, + 'update_on_change' : _Prop_update_on_change, + 'writing_code' : _Prop_writing_code, +} +drawing_area._privelemdict = { +} +graphic_objects._superclassnames = [] +graphic_objects._privpropdict = { +} +graphic_objects._privelemdict = { +} +graphic_shapes._superclassnames = [] +graphic_shapes._privpropdict = { +} +graphic_shapes._privelemdict = { +} +graphic_text._superclassnames = [] +graphic_text._privpropdict = { + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, + 'uniform_styles' : _Prop_uniform_styles, +} +graphic_text._privelemdict = { +} +ovals._superclassnames = [] +ovals._privpropdict = { +} +ovals._privelemdict = { +} +polygon._superclassnames = [] +polygon._privpropdict = { + 'point_list' : _Prop_point_list, +} +polygon._privelemdict = { +} +graphic_groups._superclassnames = [] +graphic_groups._privpropdict = { +} +graphic_groups._privelemdict = { +} +pixel_maps._superclassnames = [] +pixel_maps._privpropdict = { +} +pixel_maps._privelemdict = { +} +pixel._superclassnames = [] +pixel._privpropdict = { + 'color' : _Prop_color, +} +pixel._privelemdict = { +} +rectangles._superclassnames = [] +rectangles._privpropdict = { +} +rectangles._privelemdict = { +} +rounded_rectangle._superclassnames = [] +rounded_rectangle._privpropdict = { + 'corner_curve_height' : _Prop_corner_curve_height, + 'corner_curve_width' : _Prop_corner_curve_width, +} +rounded_rectangle._privelemdict = { +} +graphic_line._superclassnames = [] +graphic_line._privpropdict = { + 'arrow_style' : _Prop_arrow_style, + 'dash_style' : _Prop_dash_style, + 'end_point' : _Prop_end_point, + 'start_point' : _Prop_start_point, +} +graphic_line._privelemdict = { +} +_Enum_arro = { + 'no_arrow' : 'arno', # No arrow on line + 'arrow_at_start' : 'arst', # Arrow at start of line + 'arrow_at_end' : 'aren', # Arrow at end of line + 'arrow_at_both_ends' : 'arbo', # Arrow at both the start and the end of the line +} + +_Enum_tran = { + 'copy_pixels' : 'cpy ', # + 'not_copy_pixels' : 'ncpy', # + 'or_pixels' : 'or ', # + 'not_or_pixels' : 'ntor', # + 'bic_pixels' : 'bic ', # + 'not_bic_pixels' : 'nbic', # + 'xor_pixels' : 'xor ', # + 'not_xor_pixels' : 'nxor', # + 'add_over_pixels' : 'addo', # + 'add_pin_pixels' : 'addp', # + 'sub_over_pixels' : 'subo', # + 'sub_pin_pixels' : 'subp', # + 'ad_max_pixels' : 'admx', # + 'ad_min_pixels' : 'admn', # + 'blend_pixels' : 'blnd', # +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'carc' : arc, + 'cdrw' : drawing_area, + 'cgob' : graphic_objects, + 'cgsh' : graphic_shapes, + 'cgtx' : graphic_text, + 'covl' : ovals, + 'cpgn' : polygon, + 'cpic' : graphic_groups, + 'cpix' : pixel_maps, + 'cpxl' : pixel, + 'crec' : rectangles, + 'crrc' : rounded_rectangle, + 'glin' : graphic_line, +} + +_propdeclarations = { + 'arro' : _Prop_arrow_style, + 'cltb' : _Prop_color_table, + 'colr' : _Prop_color, + 'flcl' : _Prop_fill_color, + 'flpt' : _Prop_fill_pattern, + 'font' : _Prop_font, + 'gobs' : _Prop_ordering, + 'pang' : _Prop_start_angle, + 'parc' : _Prop_arc_angle, + 'pbcl' : _Prop_background_color, + 'pbnd' : _Prop_bounds, + 'pbpt' : _Prop_background_pattern, + 'pchd' : _Prop_corner_curve_height, + 'pcwd' : _Prop_corner_curve_width, + 'pdpt' : _Prop_pixel_depth, + 'pdrt' : _Prop_definition_rect, + 'pdst' : _Prop_dash_style, + 'pend' : _Prop_end_point, + 'pnam' : _Prop_name, + 'pnel' : _Prop_default_location, + 'ppcl' : _Prop_pen_color, + 'pppa' : _Prop_pen_pattern, + 'pptm' : _Prop_transfer_mode, + 'ppwd' : _Prop_pen_width, + 'psct' : _Prop_writing_code, + 'pstp' : _Prop_start_point, + 'ptlt' : _Prop_point_list, + 'ptps' : _Prop_default_size, + 'ptsz' : _Prop_size, + 'ptxc' : _Prop_text_color, + 'ptxf' : _Prop_default_font, + 'pupd' : _Prop_update_on_change, + 'txst' : _Prop_style, + 'ustl' : _Prop_uniform_styles, +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'arro' : _Enum_arro, + 'tran' : _Enum_tran, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/QuickDraw_Graphics_Suppleme.py b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/QuickDraw_Graphics_Suppleme.py new file mode 100644 index 000000000..d78193796 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/QuickDraw_Graphics_Suppleme.py @@ -0,0 +1,73 @@ +"""Suite QuickDraw Graphics Supplemental Suite: Defines transformations of graphic objects +Level 1, version 1 + +Generated from /Volumes/Sap/System Folder/Extensions/AppleScript +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'qdsp' + +class QuickDraw_Graphics_Suppleme_Events: + + pass + + +class drawing_area(aetools.ComponentItem): + """drawing area - Container for graphics and supporting information """ + want = 'cdrw' +class _Prop_rotation(aetools.NProperty): + """rotation - the default rotation for objects in the drawing area """ + which = 'prot' + want = 'trot' +class _Prop_scale(aetools.NProperty): + """scale - the default scaling for objects in the drawing area """ + which = 'pscl' + want = 'fixd' +class _Prop_translation(aetools.NProperty): + """translation - the default repositioning for objects in the drawing area """ + which = 'ptrs' + want = 'QDpt' + +drawing_areas = drawing_area + +class graphic_groups(aetools.ComponentItem): + """graphic groups - """ + want = 'cpic' + +graphic_group = graphic_groups +drawing_area._superclassnames = [] +drawing_area._privpropdict = { + 'rotation' : _Prop_rotation, + 'scale' : _Prop_scale, + 'translation' : _Prop_translation, +} +drawing_area._privelemdict = { +} +graphic_groups._superclassnames = [] +graphic_groups._privpropdict = { +} +graphic_groups._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'cdrw' : drawing_area, + 'cpic' : graphic_groups, +} + +_propdeclarations = { + 'prot' : _Prop_rotation, + 'pscl' : _Prop_scale, + 'ptrs' : _Prop_translation, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Required_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Required_Suite.py new file mode 100644 index 000000000..7e77dbbf5 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Required_Suite.py @@ -0,0 +1,32 @@ +"""Suite Required Suite: Every application supports open, print, run, and quit +Level 1, version 1 + +Generated from /Volumes/Sap/System Folder/Extensions/AppleScript +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'reqd' + +from _builtinSuites.builtin_Suite import * +class Required_Suite_Events(builtin_Suite_Events): + + pass + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Standard_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Standard_Suite.py new file mode 100644 index 000000000..86681f57b --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Standard_Suite.py @@ -0,0 +1,738 @@ +"""Suite Standard Suite: Common terms for most applications +Level 1, version 1 + +Generated from /Volumes/Sap/System Folder/Extensions/AppleScript +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'core' + +from _builtinSuites.builtin_Suite import * +class Standard_Suite_Events(builtin_Suite_Events): + + _argmap_class_info = { + 'in_' : 'wrcd', + } + + def class_info(self, _object=None, _attributes={}, **_arguments): + """class info: (optional) Get information about an object class + Required argument: the object class about which information is requested + Keyword argument in_: the human language and script system in which to return information + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: a record containing the object\xd5s properties and elements + """ + _code = 'core' + _subcode = 'qobj' + + aetools.keysubst(_arguments, self._argmap_class_info) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_close = { + 'saving' : 'savo', + 'saving_in' : 'kfil', + } + + def close(self, _object, _attributes={}, **_arguments): + """close: Close an object + Required argument: the object to close + Keyword argument saving: specifies whether changes should be saved before closing + Keyword argument saving_in: the file or alias in which to save the object + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'clos' + + aetools.keysubst(_arguments, self._argmap_close) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'savo', _Enum_savo) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_count = { + 'each' : 'kocl', + } + + def count(self, _object, _attributes={}, **_arguments): + """count: Return the number of elements of an object + Required argument: the object whose elements are to be counted + Keyword argument each: if specified, restricts counting to objects of this class + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the number of elements + """ + _code = 'core' + _subcode = 'cnte' + + aetools.keysubst(_arguments, self._argmap_count) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_data_size = { + 'as' : 'rtyp', + } + + def data_size(self, _object, _attributes={}, **_arguments): + """data size: (optional) Return the size in bytes of an object + Required argument: the object whose data size is to be returned + Keyword argument as: the data type for which the size is calculated + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the size of the object in bytes + """ + _code = 'core' + _subcode = 'dsiz' + + aetools.keysubst(_arguments, self._argmap_data_size) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def delete(self, _object, _attributes={}, **_arguments): + """delete: Delete an object from its container. Note this does not work on script variables, only on elements of application classes. + Required argument: the element to delete + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'delo' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_duplicate = { + 'to' : 'insh', + 'with_properties' : 'prdt', + } + + def duplicate(self, _object, _attributes={}, **_arguments): + """duplicate: Duplicate one or more objects + Required argument: the object(s) to duplicate + Keyword argument to: the new location for the object(s) + Keyword argument with_properties: the initial values for properties of the new object that are to be different from the original + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: to the duplicated object(s) + """ + _code = 'core' + _subcode = 'clon' + + aetools.keysubst(_arguments, self._argmap_duplicate) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_event_info = { + 'in_' : 'wrcd', + } + + def event_info(self, _object, _attributes={}, **_arguments): + """event info: (optional) Get information about the Apple events in a suite + Required argument: the event class of the Apple events for which to return information + Keyword argument in_: the human language and script system in which to return information + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: a record containing the events and their parameters + """ + _code = 'core' + _subcode = 'gtei' + + aetools.keysubst(_arguments, self._argmap_event_info) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def exists(self, _object, _attributes={}, **_arguments): + """exists: Verify if an object exists + Required argument: the object in question + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: true if it exists, false if not + """ + _code = 'core' + _subcode = 'doex' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def handleBreakpoint(self, _object, _attributes={}, **_arguments): + """handleBreakpoint: return true to stop at a breakpoint + Required argument: the call frame of the breakpoint + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: true to stop, false if not + """ + _code = 'core' + _subcode = 'brak' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_make = { + 'new' : 'kocl', + 'at' : 'insh', + 'with_data' : 'data', + 'with_properties' : 'prdt', + } + + def make(self, _no_object=None, _attributes={}, **_arguments): + """make: Make a new element + Keyword argument new: the class of the new element + Keyword argument at: the location at which to insert the element + Keyword argument with_data: the initial data for the element + Keyword argument with_properties: the initial values for the properties of the element + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: to the new object(s) + """ + _code = 'core' + _subcode = 'crel' + + aetools.keysubst(_arguments, self._argmap_make) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_move = { + 'to' : 'insh', + } + + def move(self, _object, _attributes={}, **_arguments): + """move: Move object(s) to a new location + Required argument: the object(s) to move + Keyword argument to: the new location for the object(s) + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: to the object(s) after they have been moved + """ + _code = 'core' + _subcode = 'move' + + aetools.keysubst(_arguments, self._argmap_move) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def open(self, _object, _attributes={}, **_arguments): + """open: Open the specified object(s) + Required argument: list of objects to open + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'odoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def print_(self, _object, _attributes={}, **_arguments): + """print: Print the specified object(s) + Required argument: list of objects to print + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'pdoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_quit = { + 'saving' : 'savo', + } + + def quit(self, _no_object=None, _attributes={}, **_arguments): + """quit: Quit an application + Keyword argument saving: specifies whether to save currently open documents + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'quit' + + aetools.keysubst(_arguments, self._argmap_quit) + if _no_object != None: raise TypeError, 'No direct arg expected' + + aetools.enumsubst(_arguments, 'savo', _Enum_savo) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def reopen(self, _no_object=None, _attributes={}, **_arguments): + """reopen: Reactivate a running application. Some applications will open a new untitled window if no window is open. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'rapp' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def run(self, _no_object=None, _attributes={}, **_arguments): + """run: Run an application. Most applications will open an empty, untitled window. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'oapp' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_save = { + 'in_' : 'kfil', + 'as' : 'fltp', + } + + def save(self, _object, _attributes={}, **_arguments): + """save: Save an object + Required argument: the object to save, usually a document or window + Keyword argument in_: the file or alias in which to save the object + Keyword argument as: the file type of the document in which to save the data + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'save' + + aetools.keysubst(_arguments, self._argmap_save) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def select(self, _object, _attributes={}, **_arguments): + """select: Make a selection + Required argument: the object to select + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'misc' + _subcode = 'slct' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_suite_info = { + 'in_' : 'wrcd', + } + + def suite_info(self, _object, _attributes={}, **_arguments): + """suite info: (optional) Get information about event suite(s) + Required argument: the suite for which to return information + Keyword argument in_: the human language and script system in which to return information + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: a record containing the suites and their versions + """ + _code = 'core' + _subcode = 'gtsi' + + aetools.keysubst(_arguments, self._argmap_suite_info) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class alias(aetools.ComponentItem): + """alias - a file on a disk or server. The file must exist when you check the syntax of your script. """ + want = 'alis' +class _Prop_POSIX_path(aetools.NProperty): + """POSIX path - the POSIX path of the file """ + which = 'psxp' + want = 'TEXT' + +aliases = alias + +class application(aetools.ComponentItem): + """application - An application program """ + want = 'capp' +class _Prop_clipboard(aetools.NProperty): + """clipboard - the contents of the clipboard for this application """ + which = 'pcli' + want = '****' +clipboard = _Prop_clipboard() +class _Prop_frontmost(aetools.NProperty): + """frontmost - Is this the frontmost application? """ + which = 'pisf' + want = 'bool' +frontmost = _Prop_frontmost() +class _Prop_name(aetools.NProperty): + """name - the name of the application """ + which = 'pnam' + want = 'itxt' +name = _Prop_name() +class _Prop_selection(aetools.NProperty): + """selection - the selection visible to the user. Use the \xd4select\xd5 command to set a new selection; use \xd4contents of selection\xd5 to get or change information in the document. """ + which = 'sele' + want = 'csel' +selection = _Prop_selection() +class _Prop_version(aetools.NProperty): + """version - the version of the application """ + which = 'vers' + want = 'vers' +version = _Prop_version() + +applications = application + +class insertion_points(aetools.ComponentItem): + """insertion points - """ + want = 'cins' + +insertion_point = insertion_points + +class selection_2d_object(aetools.ComponentItem): + """selection-object - A way to refer to the state of the current of the selection. Use the \xd4select\xd5 command to make a new selection. """ + want = 'csel' +class _Prop_contents(aetools.NProperty): + """contents - the information currently selected. Use \xd4contents of selection\xd5 to get or change information in a document. """ + which = 'pcnt' + want = '****' + +class window(aetools.ComponentItem): + """window - A window """ + want = 'cwin' +class _Prop_bounds(aetools.NProperty): + """bounds - the boundary rectangle for the window """ + which = 'pbnd' + want = 'qdrt' +class _Prop_closeable(aetools.NProperty): + """closeable - Does the window have a close box? """ + which = 'hclb' + want = 'bool' +class _Prop_floating(aetools.NProperty): + """floating - Does the window float? """ + which = 'isfl' + want = 'bool' +class _Prop_index(aetools.NProperty): + """index - the number of the window """ + which = 'pidx' + want = 'long' +class _Prop_modal(aetools.NProperty): + """modal - Is the window modal? """ + which = 'pmod' + want = 'bool' +class _Prop_resizable(aetools.NProperty): + """resizable - Is the window resizable? """ + which = 'prsz' + want = 'bool' +class _Prop_titled(aetools.NProperty): + """titled - Does the window have a title bar? """ + which = 'ptit' + want = 'bool' +class _Prop_visible(aetools.NProperty): + """visible - Is the window visible? """ + which = 'pvis' + want = 'bool' +class _Prop_zoomable(aetools.NProperty): + """zoomable - Is the window zoomable? """ + which = 'iszm' + want = 'bool' +class _Prop_zoomed(aetools.NProperty): + """zoomed - Is the window zoomed? """ + which = 'pzum' + want = 'bool' + +windows = window + +class document(aetools.ComponentItem): + """document - A document of a scriptable application """ + want = 'docu' +class _Prop_modified(aetools.NProperty): + """modified - Has the document been modified since the last save? """ + which = 'imod' + want = 'bool' + +documents = document + +class file(aetools.ComponentItem): + """file - a file on a disk or server """ + want = 'file' + +files = file +alias._superclassnames = [] +alias._privpropdict = { + 'POSIX_path' : _Prop_POSIX_path, +} +alias._privelemdict = { +} +application._superclassnames = [] +application._privpropdict = { + 'clipboard' : _Prop_clipboard, + 'frontmost' : _Prop_frontmost, + 'name' : _Prop_name, + 'selection' : _Prop_selection, + 'version' : _Prop_version, +} +application._privelemdict = { +} +insertion_points._superclassnames = [] +insertion_points._privpropdict = { +} +insertion_points._privelemdict = { +} +selection_2d_object._superclassnames = [] +selection_2d_object._privpropdict = { + 'contents' : _Prop_contents, +} +selection_2d_object._privelemdict = { +} +window._superclassnames = [] +window._privpropdict = { + 'bounds' : _Prop_bounds, + 'closeable' : _Prop_closeable, + 'floating' : _Prop_floating, + 'index' : _Prop_index, + 'modal' : _Prop_modal, + 'resizable' : _Prop_resizable, + 'titled' : _Prop_titled, + 'visible' : _Prop_visible, + 'zoomable' : _Prop_zoomable, + 'zoomed' : _Prop_zoomed, +} +window._privelemdict = { +} +document._superclassnames = [] +document._privpropdict = { + 'modified' : _Prop_modified, +} +document._privelemdict = { +} +file._superclassnames = [] +file._privpropdict = { + 'POSIX_path' : _Prop_POSIX_path, +} +file._privelemdict = { +} +class _3c_(aetools.NComparison): + """< - Less than """ +class _3d_(aetools.NComparison): + """= - Equal """ +class _3e_(aetools.NComparison): + """> - Greater than """ +class contains(aetools.NComparison): + """contains - Contains """ +class ends_with(aetools.NComparison): + """ends with - Ends with """ +class starts_with(aetools.NComparison): + """starts with - Starts with """ +class _b2_(aetools.NComparison): + """\xb2 - Less than or equal to """ +class _b3_(aetools.NComparison): + """\xb3 - Greater than or equal to """ +_Enum_kfrm = { + 'index' : 'indx', # keyform designating indexed access + 'named' : 'name', # keyform designating named access + 'id' : 'ID ', # keyform designating access by unique identifier +} + +_Enum_savo = { + 'yes' : 'yes ', # Save objects now + 'no' : 'no ', # Do not save objects + 'ask' : 'ask ', # Ask the user whether to save +} + +_Enum_styl = { + 'plain' : 'plan', # Plain + 'bold' : 'bold', # Bold + 'italic' : 'ital', # Italic + 'outline' : 'outl', # Outline + 'shadow' : 'shad', # Shadow + 'underline' : 'undl', # Underline + 'superscript' : 'spsc', # Superscript + 'subscript' : 'sbsc', # Subscript + 'strikethrough' : 'strk', # Strikethrough + 'small_caps' : 'smcp', # Small caps + 'all_caps' : 'alcp', # All capital letters + 'all_lowercase' : 'lowc', # Lowercase + 'condensed' : 'cond', # Condensed + 'expanded' : 'pexp', # Expanded + 'hidden' : 'hidn', # Hidden +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'alis' : alias, + 'capp' : application, + 'cins' : insertion_points, + 'csel' : selection_2d_object, + 'cwin' : window, + 'docu' : document, + 'file' : file, +} + +_propdeclarations = { + 'hclb' : _Prop_closeable, + 'imod' : _Prop_modified, + 'isfl' : _Prop_floating, + 'iszm' : _Prop_zoomable, + 'pbnd' : _Prop_bounds, + 'pcli' : _Prop_clipboard, + 'pcnt' : _Prop_contents, + 'pidx' : _Prop_index, + 'pisf' : _Prop_frontmost, + 'pmod' : _Prop_modal, + 'pnam' : _Prop_name, + 'prsz' : _Prop_resizable, + 'psxp' : _Prop_POSIX_path, + 'ptit' : _Prop_titled, + 'pvis' : _Prop_visible, + 'pzum' : _Prop_zoomed, + 'sele' : _Prop_selection, + 'vers' : _Prop_version, +} + +_compdeclarations = { + '< ' : _3c_, + '<= ' : _b2_, + '= ' : _3d_, + '> ' : _3e_, + '>= ' : _b3_, + 'bgwt' : starts_with, + 'cont' : contains, + 'ends' : ends_with, +} + +_enumdeclarations = { + 'kfrm' : _Enum_kfrm, + 'savo' : _Enum_savo, + 'styl' : _Enum_styl, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Table_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Table_Suite.py new file mode 100644 index 000000000..afa01a0e0 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Table_Suite.py @@ -0,0 +1,104 @@ +"""Suite Table Suite: Classes for manipulating tables +Level 1, version 1 + +Generated from /Volumes/Sap/System Folder/Extensions/AppleScript +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'tbls' + +class Table_Suite_Events: + + pass + + +class cell(aetools.ComponentItem): + """cell - A cell """ + want = 'ccel' +class _Prop_formula(aetools.NProperty): + """formula - the formula of the cell """ + which = 'pfor' + want = 'ctxt' +class _Prop_protection(aetools.NProperty): + """protection - Indicates whether value or formula in the cell can be changed """ + which = 'ppro' + want = 'prtn' + +cells = cell + +class column(aetools.ComponentItem): + """column - A column """ + want = 'ccol' +class _Prop_name(aetools.NProperty): + """name - the name of the column """ + which = 'pnam' + want = 'itxt' + +columns = column + +class rows(aetools.ComponentItem): + """rows - """ + want = 'crow' + +row = rows + +class tables(aetools.ComponentItem): + """tables - """ + want = 'ctbl' + +table = tables +cell._superclassnames = [] +cell._privpropdict = { + 'formula' : _Prop_formula, + 'protection' : _Prop_protection, +} +cell._privelemdict = { +} +column._superclassnames = [] +column._privpropdict = { + 'name' : _Prop_name, +} +column._privelemdict = { +} +rows._superclassnames = [] +rows._privpropdict = { +} +rows._privelemdict = { +} +tables._superclassnames = [] +tables._privpropdict = { +} +tables._privelemdict = { +} +_Enum_prtn = { + 'read_only' : 'nmod', # Can\xd5t change values or formulas + 'formulas_protected' : 'fpro', # Can changes values but not formulas + 'read_2f_write' : 'modf', # Can change values and formulas +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'ccel' : cell, + 'ccol' : column, + 'crow' : rows, + 'ctbl' : tables, +} + +_propdeclarations = { + 'pfor' : _Prop_formula, + 'pnam' : _Prop_name, + 'ppro' : _Prop_protection, +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'prtn' : _Enum_prtn, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Text_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Text_Suite.py new file mode 100644 index 000000000..1845f4d43 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Text_Suite.py @@ -0,0 +1,224 @@ +"""Suite Text Suite: A set of basic classes for text processing +Level 1, version 1 + +Generated from /Volumes/Sap/System Folder/Extensions/AppleScript +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'TEXT' + +class Text_Suite_Events: + + pass + + +class text_flow(aetools.ComponentItem): + """text flow - A contiguous block of text. Page layout applications call this a \xd4story.\xd5 """ + want = 'cflo' +class _Prop__3c_inheritance_3e_(aetools.NProperty): + """<inheritance> - inherits some of its properties from this class """ + which = 'c@#^' + want = 'ctxt' +class _Prop_name(aetools.NProperty): + """name - the name """ + which = 'pnam' + want = 'itxt' + +text_flows = text_flow + +class character(aetools.ComponentItem): + """character - A character """ + want = 'cha ' + +class line(aetools.ComponentItem): + """line - A line of text """ + want = 'clin' +class _Prop_justification(aetools.NProperty): + """justification - the justification of the text """ + which = 'pjst' + want = 'just' + +lines = line + +class paragraph(aetools.ComponentItem): + """paragraph - A paragraph """ + want = 'cpar' + +paragraphs = paragraph + +class text(aetools.ComponentItem): + """text - Text """ + want = 'ctxt' +class _Prop_color(aetools.NProperty): + """color - the color of the first character """ + which = 'colr' + want = 'cRGB' +class _Prop_font(aetools.NProperty): + """font - the name of the font of the first character """ + which = 'font' + want = 'ctxt' +class _Prop_quoted_form(aetools.NProperty): + """quoted form - the text in quoted form """ + which = 'strq' + want = 'ctxt' +class _Prop_size(aetools.NProperty): + """size - the size in points of the first character """ + which = 'ptsz' + want = 'fixd' +class _Prop_style(aetools.NProperty): + """style - the text style of the first character of the first character """ + which = 'txst' + want = 'tsty' +class _Prop_uniform_styles(aetools.NProperty): + """uniform styles - the text styles that are uniform throughout the text """ + which = 'ustl' + want = 'tsty' +class _Prop_writing_code(aetools.NProperty): + """writing code - the script system and language """ + which = 'psct' + want = 'intl' +# element 'cha ' as ['indx'] +# element 'clin' as ['indx'] +# element 'cpar' as ['indx'] +# element 'ctxt' as ['indx'] +# element 'cwor' as ['indx'] + +class word(aetools.ComponentItem): + """word - A word """ + want = 'cwor' + +words = word + +class text_style_info(aetools.ComponentItem): + """text style info - On and Off styles of text run """ + want = 'tsty' +class _Prop_off_styles(aetools.NProperty): + """off styles - the styles that are off for the text """ + which = 'ofst' + want = 'styl' +class _Prop_on_styles(aetools.NProperty): + """on styles - the styles that are on for the text """ + which = 'onst' + want = 'styl' + +text_style_infos = text_style_info +text_flow._superclassnames = ['text'] +text_flow._privpropdict = { + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, + 'name' : _Prop_name, +} +text_flow._privelemdict = { +} +character._superclassnames = ['text'] +character._privpropdict = { + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, +} +character._privelemdict = { +} +line._superclassnames = ['text'] +line._privpropdict = { + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, + 'justification' : _Prop_justification, +} +line._privelemdict = { +} +paragraph._superclassnames = ['text'] +paragraph._privpropdict = { + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, +} +paragraph._privelemdict = { +} +text._superclassnames = [] +text._privpropdict = { + 'color' : _Prop_color, + 'font' : _Prop_font, + 'quoted_form' : _Prop_quoted_form, + 'size' : _Prop_size, + 'style' : _Prop_style, + 'uniform_styles' : _Prop_uniform_styles, + 'writing_code' : _Prop_writing_code, +} +text._privelemdict = { + 'character' : character, + 'line' : line, + 'paragraph' : paragraph, + 'text' : text, + 'word' : word, +} +word._superclassnames = ['text'] +word._privpropdict = { + '_3c_inheritance_3e_' : _Prop__3c_inheritance_3e_, +} +word._privelemdict = { +} +text_style_info._superclassnames = [] +text_style_info._privpropdict = { + 'off_styles' : _Prop_off_styles, + 'on_styles' : _Prop_on_styles, +} +text_style_info._privelemdict = { +} +_Enum_just = { + 'left' : 'left', # Align with left margin + 'right' : 'rght', # Align with right margin + 'center' : 'cent', # Align with center + 'full' : 'full', # Align with both left and right margins +} + +_Enum_styl = { + 'plain' : 'plan', # Plain + 'bold' : 'bold', # Bold + 'italic' : 'ital', # Italic + 'outline' : 'outl', # Outline + 'shadow' : 'shad', # Shadow + 'underline' : 'undl', # Underline + 'superscript' : 'spsc', # Superscript + 'subscript' : 'sbsc', # Subscript + 'strikethrough' : 'strk', # Strikethrough + 'small_caps' : 'smcp', # Small caps + 'all_caps' : 'alcp', # All capital letters + 'all_lowercase' : 'lowc', # Lowercase + 'condensed' : 'cond', # Condensed + 'expanded' : 'pexp', # Expanded + 'hidden' : 'hidn', # Hidden +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'cflo' : text_flow, + 'cha ' : character, + 'clin' : line, + 'cpar' : paragraph, + 'ctxt' : text, + 'cwor' : word, + 'tsty' : text_style_info, +} + +_propdeclarations = { + 'c@#^' : _Prop__3c_inheritance_3e_, + 'colr' : _Prop_color, + 'font' : _Prop_font, + 'ofst' : _Prop_off_styles, + 'onst' : _Prop_on_styles, + 'pjst' : _Prop_justification, + 'pnam' : _Prop_name, + 'psct' : _Prop_writing_code, + 'ptsz' : _Prop_size, + 'strq' : _Prop_quoted_form, + 'txst' : _Prop_style, + 'ustl' : _Prop_uniform_styles, +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'just' : _Enum_just, + 'styl' : _Enum_styl, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Type_Names_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Type_Names_Suite.py new file mode 100644 index 000000000..cd9fa1987 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/Type_Names_Suite.py @@ -0,0 +1,435 @@ +"""Suite Type Names Suite: Terminology for Registry data types +Level 1, version 1 + +Generated from /Volumes/Sap/System Folder/Extensions/AppleScript +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'tpnm' + +class Type_Names_Suite_Events: + + pass + + +class PostScript_picture(aetools.ComponentItem): + """PostScript picture - """ + want = 'EPS ' + +class point(aetools.ComponentItem): + """point - point coordinates """ + want = 'QDpt' + +class string(aetools.ComponentItem): + """string - a string of characters """ + want = 'TEXT' + +plain_text = string + +plain_text = string + +class TIFF_picture(aetools.ComponentItem): + """TIFF picture - """ + want = 'TIFF' + +class application_dictionary(aetools.ComponentItem): + """application dictionary - """ + want = 'aete' + +class system_dictionary(aetools.ComponentItem): + """system dictionary - """ + want = 'aeut' + +class color_table(aetools.ComponentItem): + """color table - """ + want = 'clrt' + +class menu_item(aetools.ComponentItem): + """menu item - """ + want = 'cmen' + +class menu(aetools.ComponentItem): + """menu - """ + want = 'cmnu' + +class double_integer(aetools.ComponentItem): + """double integer - """ + want = 'comp' + +class type_element_info(aetools.ComponentItem): + """type element info - """ + want = 'elin' + +class type_event_info(aetools.ComponentItem): + """type event info - information about an event """ + want = 'evin' + +class extended_real(aetools.ComponentItem): + """extended real - """ + want = 'exte' + +class fixed(aetools.ComponentItem): + """fixed - a real number """ + want = 'fixd' + +class fixed_point(aetools.ComponentItem): + """fixed point - """ + want = 'fpnt' + +class fixed_rectangle(aetools.ComponentItem): + """fixed rectangle - """ + want = 'frct' + +class type_class_info(aetools.ComponentItem): + """type class info - information about properties and elements of a class """ + want = 'gcli' + +class location_reference(aetools.ComponentItem): + """location reference - """ + want = 'insl' + +class long_fixed_point(aetools.ComponentItem): + """long fixed point - """ + want = 'lfpt' + +class long_fixed_rectangle(aetools.ComponentItem): + """long fixed rectangle - """ + want = 'lfrc' + +class long_fixed(aetools.ComponentItem): + """long fixed - """ + want = 'lfxd' + +class long_point(aetools.ComponentItem): + """long point - """ + want = 'lpnt' + +class long_rectangle(aetools.ComponentItem): + """long rectangle - """ + want = 'lrct' + +class machine_location(aetools.ComponentItem): + """machine location - """ + want = 'mLoc' + +class unsigned_integer(aetools.ComponentItem): + """unsigned integer - """ + want = 'magn' + +class null(aetools.ComponentItem): + """null - """ + want = 'null' + +class type_property_info(aetools.ComponentItem): + """type property info - """ + want = 'pinf' + +class type_parameter_info(aetools.ComponentItem): + """type parameter info - """ + want = 'pmin' + +class bounding_rectangle(aetools.ComponentItem): + """bounding rectangle - bounding rectangle """ + want = 'qdrt' + +class small_integer(aetools.ComponentItem): + """small integer - """ + want = 'shor' + +class small_real(aetools.ComponentItem): + """small real - """ + want = 'sing' + +class scrap_styles(aetools.ComponentItem): + """scrap styles - """ + want = 'styl' + +class type_suite_info(aetools.ComponentItem): + """type suite info - """ + want = 'suin' + +class target_id(aetools.ComponentItem): + """target id - """ + want = 'targ' + +class dash_style(aetools.ComponentItem): + """dash style - """ + want = 'tdas' + +class pixel_map_record(aetools.ComponentItem): + """pixel map record - """ + want = 'tpmm' + +class RGB16_color(aetools.ComponentItem): + """RGB16 color - """ + want = 'tr16' + +class RGB96_color(aetools.ComponentItem): + """RGB96 color - """ + want = 'tr96' + +class rotation(aetools.ComponentItem): + """rotation - """ + want = 'trot' + +class version(aetools.ComponentItem): + """version - """ + want = 'vers' +PostScript_picture._superclassnames = [] +PostScript_picture._privpropdict = { +} +PostScript_picture._privelemdict = { +} +point._superclassnames = [] +point._privpropdict = { +} +point._privelemdict = { +} +string._superclassnames = [] +string._privpropdict = { +} +string._privelemdict = { +} +TIFF_picture._superclassnames = [] +TIFF_picture._privpropdict = { +} +TIFF_picture._privelemdict = { +} +application_dictionary._superclassnames = [] +application_dictionary._privpropdict = { +} +application_dictionary._privelemdict = { +} +system_dictionary._superclassnames = [] +system_dictionary._privpropdict = { +} +system_dictionary._privelemdict = { +} +color_table._superclassnames = [] +color_table._privpropdict = { +} +color_table._privelemdict = { +} +menu_item._superclassnames = [] +menu_item._privpropdict = { +} +menu_item._privelemdict = { +} +menu._superclassnames = [] +menu._privpropdict = { +} +menu._privelemdict = { +} +double_integer._superclassnames = [] +double_integer._privpropdict = { +} +double_integer._privelemdict = { +} +type_element_info._superclassnames = [] +type_element_info._privpropdict = { +} +type_element_info._privelemdict = { +} +type_event_info._superclassnames = [] +type_event_info._privpropdict = { +} +type_event_info._privelemdict = { +} +extended_real._superclassnames = [] +extended_real._privpropdict = { +} +extended_real._privelemdict = { +} +fixed._superclassnames = [] +fixed._privpropdict = { +} +fixed._privelemdict = { +} +fixed_point._superclassnames = [] +fixed_point._privpropdict = { +} +fixed_point._privelemdict = { +} +fixed_rectangle._superclassnames = [] +fixed_rectangle._privpropdict = { +} +fixed_rectangle._privelemdict = { +} +type_class_info._superclassnames = [] +type_class_info._privpropdict = { +} +type_class_info._privelemdict = { +} +location_reference._superclassnames = [] +location_reference._privpropdict = { +} +location_reference._privelemdict = { +} +long_fixed_point._superclassnames = [] +long_fixed_point._privpropdict = { +} +long_fixed_point._privelemdict = { +} +long_fixed_rectangle._superclassnames = [] +long_fixed_rectangle._privpropdict = { +} +long_fixed_rectangle._privelemdict = { +} +long_fixed._superclassnames = [] +long_fixed._privpropdict = { +} +long_fixed._privelemdict = { +} +long_point._superclassnames = [] +long_point._privpropdict = { +} +long_point._privelemdict = { +} +long_rectangle._superclassnames = [] +long_rectangle._privpropdict = { +} +long_rectangle._privelemdict = { +} +machine_location._superclassnames = [] +machine_location._privpropdict = { +} +machine_location._privelemdict = { +} +unsigned_integer._superclassnames = [] +unsigned_integer._privpropdict = { +} +unsigned_integer._privelemdict = { +} +null._superclassnames = [] +null._privpropdict = { +} +null._privelemdict = { +} +type_property_info._superclassnames = [] +type_property_info._privpropdict = { +} +type_property_info._privelemdict = { +} +type_parameter_info._superclassnames = [] +type_parameter_info._privpropdict = { +} +type_parameter_info._privelemdict = { +} +bounding_rectangle._superclassnames = [] +bounding_rectangle._privpropdict = { +} +bounding_rectangle._privelemdict = { +} +small_integer._superclassnames = [] +small_integer._privpropdict = { +} +small_integer._privelemdict = { +} +small_real._superclassnames = [] +small_real._privpropdict = { +} +small_real._privelemdict = { +} +scrap_styles._superclassnames = [] +scrap_styles._privpropdict = { +} +scrap_styles._privelemdict = { +} +type_suite_info._superclassnames = [] +type_suite_info._privpropdict = { +} +type_suite_info._privelemdict = { +} +target_id._superclassnames = [] +target_id._privpropdict = { +} +target_id._privelemdict = { +} +dash_style._superclassnames = [] +dash_style._privpropdict = { +} +dash_style._privelemdict = { +} +pixel_map_record._superclassnames = [] +pixel_map_record._privpropdict = { +} +pixel_map_record._privelemdict = { +} +RGB16_color._superclassnames = [] +RGB16_color._privpropdict = { +} +RGB16_color._privelemdict = { +} +RGB96_color._superclassnames = [] +RGB96_color._privpropdict = { +} +RGB96_color._privelemdict = { +} +rotation._superclassnames = [] +rotation._privpropdict = { +} +rotation._privelemdict = { +} +version._superclassnames = [] +version._privpropdict = { +} +version._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'EPS ' : PostScript_picture, + 'QDpt' : point, + 'TEXT' : string, + 'TIFF' : TIFF_picture, + 'aete' : application_dictionary, + 'aeut' : system_dictionary, + 'clrt' : color_table, + 'cmen' : menu_item, + 'cmnu' : menu, + 'comp' : double_integer, + 'elin' : type_element_info, + 'evin' : type_event_info, + 'exte' : extended_real, + 'fixd' : fixed, + 'fpnt' : fixed_point, + 'frct' : fixed_rectangle, + 'gcli' : type_class_info, + 'insl' : location_reference, + 'lfpt' : long_fixed_point, + 'lfrc' : long_fixed_rectangle, + 'lfxd' : long_fixed, + 'lpnt' : long_point, + 'lrct' : long_rectangle, + 'mLoc' : machine_location, + 'magn' : unsigned_integer, + 'null' : null, + 'pinf' : type_property_info, + 'pmin' : type_parameter_info, + 'qdrt' : bounding_rectangle, + 'shor' : small_integer, + 'sing' : small_real, + 'styl' : scrap_styles, + 'suin' : type_suite_info, + 'targ' : target_id, + 'tdas' : dash_style, + 'tpmm' : pixel_map_record, + 'tr16' : RGB16_color, + 'tr96' : RGB96_color, + 'trot' : rotation, + 'vers' : version, +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/__init__.py b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/__init__.py new file mode 100644 index 000000000..b80e3bacc --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/StdSuites/__init__.py @@ -0,0 +1,471 @@ +""" +Package generated from /Volumes/Sap/System Folder/Extensions/AppleScript +Resource aeut resid 0 Standard Event Suites for English +""" +import aetools +Error = aetools.Error +import Text_Suite +import AppleScript_Suite +import Standard_Suite +import Macintosh_Connectivity_Clas +import QuickDraw_Graphics_Suite +import QuickDraw_Graphics_Suppleme +import Required_Suite +import Table_Suite +import Type_Names_Suite + + +_code_to_module = { + 'TEXT' : Text_Suite, + 'ascr' : AppleScript_Suite, + 'core' : Standard_Suite, + 'macc' : Macintosh_Connectivity_Clas, + 'qdrw' : QuickDraw_Graphics_Suite, + 'qdsp' : QuickDraw_Graphics_Suppleme, + 'reqd' : Required_Suite, + 'tbls' : Table_Suite, + 'tpnm' : Type_Names_Suite, +} + + + +_code_to_fullname = { + 'TEXT' : ('StdSuites.Text_Suite', 'Text_Suite'), + 'ascr' : ('StdSuites.AppleScript_Suite', 'AppleScript_Suite'), + 'core' : ('StdSuites.Standard_Suite', 'Standard_Suite'), + 'macc' : ('StdSuites.Macintosh_Connectivity_Clas', 'Macintosh_Connectivity_Clas'), + 'qdrw' : ('StdSuites.QuickDraw_Graphics_Suite', 'QuickDraw_Graphics_Suite'), + 'qdsp' : ('StdSuites.QuickDraw_Graphics_Suppleme', 'QuickDraw_Graphics_Suppleme'), + 'reqd' : ('StdSuites.Required_Suite', 'Required_Suite'), + 'tbls' : ('StdSuites.Table_Suite', 'Table_Suite'), + 'tpnm' : ('StdSuites.Type_Names_Suite', 'Type_Names_Suite'), +} + +from Text_Suite import * +from AppleScript_Suite import * +from Standard_Suite import * +from Macintosh_Connectivity_Clas import * +from QuickDraw_Graphics_Suite import * +from QuickDraw_Graphics_Suppleme import * +from Required_Suite import * +from Table_Suite import * +from Type_Names_Suite import * + +def getbaseclasses(v): + if not getattr(v, '_propdict', None): + v._propdict = {} + v._elemdict = {} + for superclassname in getattr(v, '_superclassnames', []): + superclass = eval(superclassname) + getbaseclasses(superclass) + v._propdict.update(getattr(superclass, '_propdict', {})) + v._elemdict.update(getattr(superclass, '_elemdict', {})) + v._propdict.update(getattr(v, '_privpropdict', {})) + v._elemdict.update(getattr(v, '_privelemdict', {})) + +import StdSuites + +# +# Set property and element dictionaries now that all classes have been defined +# +getbaseclasses(graphic_group) +getbaseclasses(oval) +getbaseclasses(graphic_text) +getbaseclasses(graphic_shape) +getbaseclasses(drawing_area) +getbaseclasses(graphic_line) +getbaseclasses(polygon) +getbaseclasses(pixel) +getbaseclasses(rounded_rectangle) +getbaseclasses(graphic_object) +getbaseclasses(arc) +getbaseclasses(pixel_map) +getbaseclasses(rectangle) +getbaseclasses(selection_2d_object) +getbaseclasses(application) +getbaseclasses(document) +getbaseclasses(window) +getbaseclasses(file) +getbaseclasses(alias) +getbaseclasses(insertion_point) +getbaseclasses(character) +getbaseclasses(paragraph) +getbaseclasses(word) +getbaseclasses(text_flow) +getbaseclasses(text_style_info) +getbaseclasses(line) +getbaseclasses(text) +getbaseclasses(AppleTalk_address) +getbaseclasses(address_specification) +getbaseclasses(Token_Ring_address) +getbaseclasses(FireWire_address) +getbaseclasses(bus_slot) +getbaseclasses(SCSI_address) +getbaseclasses(ADB_address) +getbaseclasses(USB_address) +getbaseclasses(device_specification) +getbaseclasses(LocalTalk_address) +getbaseclasses(IP_address) +getbaseclasses(Ethernet_address) +getbaseclasses(graphic_group) +getbaseclasses(drawing_area) +getbaseclasses(cell) +getbaseclasses(column) +getbaseclasses(table) +getbaseclasses(row) +getbaseclasses(small_integer) +getbaseclasses(system_dictionary) +getbaseclasses(color_table) +getbaseclasses(fixed_point) +getbaseclasses(plain_text) +getbaseclasses(type_element_info) +getbaseclasses(machine_location) +getbaseclasses(PostScript_picture) +getbaseclasses(type_suite_info) +getbaseclasses(menu_item) +getbaseclasses(pixel_map_record) +getbaseclasses(small_real) +getbaseclasses(null) +getbaseclasses(rotation) +getbaseclasses(fixed) +getbaseclasses(long_point) +getbaseclasses(target_id) +getbaseclasses(type_property_info) +getbaseclasses(type_parameter_info) +getbaseclasses(long_fixed_point) +getbaseclasses(bounding_rectangle) +getbaseclasses(TIFF_picture) +getbaseclasses(long_fixed) +getbaseclasses(location_reference) +getbaseclasses(version) +getbaseclasses(RGB16_color) +getbaseclasses(double_integer) +getbaseclasses(type_event_info) +getbaseclasses(point) +getbaseclasses(application_dictionary) +getbaseclasses(unsigned_integer) +getbaseclasses(menu) +getbaseclasses(fixed_rectangle) +getbaseclasses(long_fixed_rectangle) +getbaseclasses(type_class_info) +getbaseclasses(RGB96_color) +getbaseclasses(dash_style) +getbaseclasses(scrap_styles) +getbaseclasses(extended_real) +getbaseclasses(long_rectangle) +getbaseclasses(May) +getbaseclasses(string) +getbaseclasses(miles) +getbaseclasses(number_or_date) +getbaseclasses(October) +getbaseclasses(event) +getbaseclasses(Pascal_string) +getbaseclasses(zone) +getbaseclasses(picture) +getbaseclasses(list_or_string) +getbaseclasses(number) +getbaseclasses(Tuesday) +getbaseclasses(version) +getbaseclasses(December) +getbaseclasses(square_kilometres) +getbaseclasses(reference) +getbaseclasses(vector) +getbaseclasses(weekday) +getbaseclasses(Sunday) +getbaseclasses(international_text) +getbaseclasses(seconds) +getbaseclasses(RGB_color) +getbaseclasses(kilometres) +getbaseclasses(styled_Unicode_text) +getbaseclasses(missing_value) +getbaseclasses(metres) +getbaseclasses(number_or_string) +getbaseclasses(list) +getbaseclasses(linked_list) +getbaseclasses(real) +getbaseclasses(encoded_string) +getbaseclasses(list_or_record) +getbaseclasses(Monday) +getbaseclasses(September) +getbaseclasses(anything) +getbaseclasses(property) +getbaseclasses(reference_form) +getbaseclasses(item) +getbaseclasses(grams) +getbaseclasses(record) +getbaseclasses(empty_ae_name_) +getbaseclasses(constant) +getbaseclasses(square_miles) +getbaseclasses(data) +getbaseclasses(Unicode_text) +getbaseclasses(yards) +getbaseclasses(cubic_yards) +getbaseclasses(pounds) +getbaseclasses(cubic_centimetres) +getbaseclasses(text) +getbaseclasses(July) +getbaseclasses(cubic_metres) +getbaseclasses(styled_text) +getbaseclasses(number_2c__date_or_text) +getbaseclasses(feet) +getbaseclasses(February) +getbaseclasses(degrees_Celsius) +getbaseclasses(keystroke) +getbaseclasses(integer) +getbaseclasses(degrees_Fahrenheit) +getbaseclasses(list_2c__record_or_text) +getbaseclasses(date) +getbaseclasses(degrees_Kelvin) +getbaseclasses(centimetres) +getbaseclasses(writing_code) +getbaseclasses(alias_or_string) +getbaseclasses(writing_code_info) +getbaseclasses(text_item) +getbaseclasses(machine) +getbaseclasses(type_class) +getbaseclasses(preposition) +getbaseclasses(Wednesday) +getbaseclasses(upper_case) +getbaseclasses(March) +getbaseclasses(square_feet) +getbaseclasses(November) +getbaseclasses(quarts) +getbaseclasses(alias) +getbaseclasses(January) +getbaseclasses(month) +getbaseclasses(June) +getbaseclasses(August) +getbaseclasses(styled_Clipboard_text) +getbaseclasses(gallons) +getbaseclasses(cubic_inches) +getbaseclasses(Friday) +getbaseclasses(sound) +getbaseclasses(class_) +getbaseclasses(kilograms) +getbaseclasses(script) +getbaseclasses(litres) +getbaseclasses(boolean) +getbaseclasses(square_metres) +getbaseclasses(inches) +getbaseclasses(character) +getbaseclasses(April) +getbaseclasses(ounces) +getbaseclasses(app) +getbaseclasses(handler) +getbaseclasses(C_string) +getbaseclasses(Thursday) +getbaseclasses(square_yards) +getbaseclasses(cubic_feet) +getbaseclasses(Saturday) +getbaseclasses(file_specification) + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'cpic' : graphic_group, + 'covl' : oval, + 'cgtx' : graphic_text, + 'cgsh' : graphic_shape, + 'cdrw' : drawing_area, + 'glin' : graphic_line, + 'cpgn' : polygon, + 'cpxl' : pixel, + 'crrc' : rounded_rectangle, + 'cgob' : graphic_object, + 'carc' : arc, + 'cpix' : pixel_map, + 'crec' : rectangle, + 'csel' : selection_2d_object, + 'capp' : application, + 'docu' : document, + 'cwin' : window, + 'file' : file, + 'alis' : alias, + 'cins' : insertion_point, + 'cha ' : character, + 'cpar' : paragraph, + 'cwor' : word, + 'cflo' : text_flow, + 'tsty' : text_style_info, + 'clin' : line, + 'ctxt' : text, + 'cat ' : AppleTalk_address, + 'cadr' : address_specification, + 'ctok' : Token_Ring_address, + 'cfw ' : FireWire_address, + 'cbus' : bus_slot, + 'cscs' : SCSI_address, + 'cadb' : ADB_address, + 'cusb' : USB_address, + 'cdev' : device_specification, + 'clt ' : LocalTalk_address, + 'cip ' : IP_address, + 'cen ' : Ethernet_address, + 'cpic' : graphic_group, + 'cdrw' : drawing_area, + 'ccel' : cell, + 'ccol' : column, + 'ctbl' : table, + 'crow' : row, + 'shor' : small_integer, + 'aeut' : system_dictionary, + 'clrt' : color_table, + 'fpnt' : fixed_point, + 'TEXT' : plain_text, + 'elin' : type_element_info, + 'mLoc' : machine_location, + 'EPS ' : PostScript_picture, + 'suin' : type_suite_info, + 'cmen' : menu_item, + 'tpmm' : pixel_map_record, + 'sing' : small_real, + 'null' : null, + 'trot' : rotation, + 'fixd' : fixed, + 'lpnt' : long_point, + 'targ' : target_id, + 'pinf' : type_property_info, + 'pmin' : type_parameter_info, + 'lfpt' : long_fixed_point, + 'qdrt' : bounding_rectangle, + 'TIFF' : TIFF_picture, + 'lfxd' : long_fixed, + 'insl' : location_reference, + 'vers' : version, + 'tr16' : RGB16_color, + 'comp' : double_integer, + 'evin' : type_event_info, + 'QDpt' : point, + 'aete' : application_dictionary, + 'magn' : unsigned_integer, + 'cmnu' : menu, + 'frct' : fixed_rectangle, + 'lfrc' : long_fixed_rectangle, + 'gcli' : type_class_info, + 'tr96' : RGB96_color, + 'tdas' : dash_style, + 'styl' : scrap_styles, + 'exte' : extended_real, + 'lrct' : long_rectangle, + 'may ' : May, + 'TEXT' : string, + 'mile' : miles, + 'nd ' : number_or_date, + 'oct ' : October, + 'evnt' : event, + 'pstr' : Pascal_string, + 'zone' : zone, + 'PICT' : picture, + 'ls ' : list_or_string, + 'nmbr' : number, + 'tue ' : Tuesday, + 'vers' : version, + 'dec ' : December, + 'sqkm' : square_kilometres, + 'obj ' : reference, + 'vect' : vector, + 'wkdy' : weekday, + 'sun ' : Sunday, + 'itxt' : international_text, + 'scnd' : seconds, + 'cRGB' : RGB_color, + 'kmtr' : kilometres, + 'sutx' : styled_Unicode_text, + 'msng' : missing_value, + 'metr' : metres, + 'ns ' : number_or_string, + 'list' : list, + 'llst' : linked_list, + 'doub' : real, + 'encs' : encoded_string, + 'lr ' : list_or_record, + 'mon ' : Monday, + 'sep ' : September, + '****' : anything, + 'prop' : property, + 'kfrm' : reference_form, + 'cobj' : item, + 'gram' : grams, + 'reco' : record, + 'undf' : empty_ae_name_, + 'enum' : constant, + 'sqmi' : square_miles, + 'rdat' : data, + 'utxt' : Unicode_text, + 'yard' : yards, + 'cyrd' : cubic_yards, + 'lbs ' : pounds, + 'ccmt' : cubic_centimetres, + 'ctxt' : text, + 'jul ' : July, + 'cmet' : cubic_metres, + 'STXT' : styled_text, + 'nds ' : number_2c__date_or_text, + 'feet' : feet, + 'feb ' : February, + 'degc' : degrees_Celsius, + 'kprs' : keystroke, + 'long' : integer, + 'degf' : degrees_Fahrenheit, + 'lrs ' : list_2c__record_or_text, + 'ldt ' : date, + 'degk' : degrees_Kelvin, + 'cmtr' : centimetres, + 'psct' : writing_code, + 'sf ' : alias_or_string, + 'citl' : writing_code_info, + 'citm' : text_item, + 'mach' : machine, + 'type' : type_class, + 'prep' : preposition, + 'wed ' : Wednesday, + 'case' : upper_case, + 'mar ' : March, + 'sqft' : square_feet, + 'nov ' : November, + 'qrts' : quarts, + 'alis' : alias, + 'jan ' : January, + 'mnth' : month, + 'jun ' : June, + 'aug ' : August, + 'styl' : styled_Clipboard_text, + 'galn' : gallons, + 'cuin' : cubic_inches, + 'fri ' : Friday, + 'snd ' : sound, + 'pcls' : class_, + 'kgrm' : kilograms, + 'scpt' : script, + 'litr' : litres, + 'bool' : boolean, + 'sqrm' : square_metres, + 'inch' : inches, + 'cha ' : character, + 'apr ' : April, + 'ozs ' : ounces, + 'capp' : app, + 'hand' : handler, + 'cstr' : C_string, + 'thu ' : Thursday, + 'sqyd' : square_yards, + 'cfet' : cubic_feet, + 'sat ' : Saturday, + 'fss ' : file_specification, +} + + +class StdSuites(Text_Suite_Events, + AppleScript_Suite_Events, + Standard_Suite_Events, + Macintosh_Connectivity_Clas_Events, + QuickDraw_Graphics_Suite_Events, + QuickDraw_Graphics_Suppleme_Events, + Required_Suite_Events, + Table_Suite_Events, + Type_Names_Suite_Events, + aetools.TalkTo): + _signature = 'ascr' + + _moduleName = 'StdSuites' diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Disk_Folder_File_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Disk_Folder_File_Suite.py new file mode 100644 index 000000000..a9ac3dd27 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Disk_Folder_File_Suite.py @@ -0,0 +1,381 @@ +"""Suite Disk-Folder-File Suite: Terms and Events for controlling Disks, Folders, and Files +Level 1, version 1 + +Generated from /System/Library/CoreServices/System Events.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'cdis' + +class Disk_Folder_File_Suite_Events: + + _argmap_move = { + 'to' : 'insh', + } + + def move(self, _object, _attributes={}, **_arguments): + """move: Move disk item(s) to a new location. + Required argument: the object for the command + Keyword argument to: The new location for the disk item(s). + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'core' + _subcode = 'move' + + aetools.keysubst(_arguments, self._argmap_move) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - The Disk-Folder-File Suite host program """ + want = 'capp' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'capp' +_3c_Inheritance_3e_ = _Prop__3c_Inheritance_3e_() +class _Prop_folder_actions_enabled(aetools.NProperty): + """folder actions enabled - Are Folder Actions currently being processed? """ + which = 'faen' + want = 'bool' +folder_actions_enabled = _Prop_folder_actions_enabled() +class _Prop_properties(aetools.NProperty): + """properties - every property of the Disk-Folder-File Suite host program """ + which = 'pALL' + want = '****' +properties = _Prop_properties() +# element 'cdis' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cfol' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cobj' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cwin' as ['name', 'indx', 'rele', 'rang', 'test', 'ID '] +# element 'docu' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'file' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'foac' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'logi' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'pcap' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'pcda' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'prcs' as ['name', 'indx', 'rele', 'rang', 'test'] + +applications = application + +class disk(aetools.ComponentItem): + """disk - A disk in the file system """ + want = 'cdis' +class _Prop_POSIX_path(aetools.NProperty): + """POSIX path - the POSIX file system path of the disk """ + which = 'posx' + want = 'utxt' +class _Prop_capacity(aetools.NProperty): + """capacity - the total number of bytes (free or used) on the disk """ + which = 'capa' + want = 'magn' +class _Prop_ejectable(aetools.NProperty): + """ejectable - Can the media be ejected (floppies, CD's, and so on)? """ + which = 'isej' + want = 'bool' +class _Prop_format(aetools.NProperty): + """format - the file system format of this disk """ + which = 'dfmt' + want = 'edfm' +class _Prop_free_space(aetools.NProperty): + """free space - the number of free bytes left on the disk """ + which = 'frsp' + want = 'magn' +class _Prop_ignore_privileges(aetools.NProperty): + """ignore privileges - Ignore permissions on this disk? """ + which = 'igpr' + want = 'bool' +class _Prop_local_volume(aetools.NProperty): + """local volume - Is the media a local volume (as opposed to a file server? """ + which = 'isrv' + want = 'bool' +class _Prop_name(aetools.NProperty): + """name - the name of the disk """ + which = 'pnam' + want = 'utxt' +class _Prop_path(aetools.NProperty): + """path - the file system path of the disk """ + which = 'ppth' + want = 'utxt' +class _Prop_startup(aetools.NProperty): + """startup - Is this disk the boot disk? """ + which = 'istd' + want = 'bool' +class _Prop_volume(aetools.NProperty): + """volume - the volume on which the folder resides """ + which = 'volu' + want = 'utxt' +# element 'cfol' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cobj' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'file' as ['name', 'indx', 'rele', 'rang', 'test'] + +disks = disk + +class folder(aetools.ComponentItem): + """folder - A folder in the file system """ + want = 'cfol' +# element 'cfol' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cfol' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cobj' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cobj' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'file' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'file' as ['name', 'indx', 'rele', 'rang', 'test'] + +folders = folder + +class item(aetools.ComponentItem): + """item - An item in the file system """ + want = 'cobj' +class _Prop_busy_status(aetools.NProperty): + """busy status - Is the item busy? """ + which = 'busy' + want = 'bool' +class _Prop_creation_date(aetools.NProperty): + """creation date - the date on which the item was created """ + which = 'ascd' + want = '****' +class _Prop_modification_date(aetools.NProperty): + """modification date - the date on which the item was last modified """ + which = 'asmo' + want = '****' +class _Prop_name_extension(aetools.NProperty): + """name extension - the extension portion of the name """ + which = 'extn' + want = 'utxt' +class _Prop_package_folder(aetools.NProperty): + """package folder - Is the item a package? """ + which = 'pkgf' + want = 'bool' +class _Prop_url(aetools.NProperty): + """url - the url of the item """ + which = 'url ' + want = 'utxt' +class _Prop_visible(aetools.NProperty): + """visible - Is the item visible? """ + which = 'visi' + want = 'bool' +# element 'cfol' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cobj' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'file' as ['name', 'indx', 'rele', 'rang', 'test'] + +items = item + +class file(aetools.ComponentItem): + """file - A file in the file system """ + want = 'file' +class _Prop_creator_type(aetools.NProperty): + """creator type - the OSType identifying the application that created the item """ + which = 'fcrt' + want = 'utxt' +class _Prop_file_type(aetools.NProperty): + """file type - the OSType identifying the type of data contained in the item """ + which = 'asty' + want = 'utxt' +class _Prop_physical_size(aetools.NProperty): + """physical size - the actual space used by the file on disk """ + which = 'phys' + want = 'magn' +class _Prop_product_version(aetools.NProperty): + """product version - the version of the product (visible at the top of the ?et Info?window) """ + which = 'ver2' + want = 'utxt' +class _Prop_size(aetools.NProperty): + """size - the logical size of the file """ + which = 'ptsz' + want = 'magn' +class _Prop_stationery(aetools.NProperty): + """stationery - Is the file a stationery pad? """ + which = 'pspd' + want = 'bool' +class _Prop_version(aetools.NProperty): + """version - the version of the file (visible at the bottom of the ?et Info?window) """ + which = 'vers' + want = 'utxt' +# element 'cfol' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cobj' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'file' as ['name', 'indx', 'rele', 'rang', 'test'] + +files = file +application._superclassnames = [] +import Standard_Suite +import Folder_Actions_Suite +import Login_Items_Suite +import Processes_Suite +application._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'folder_actions_enabled' : _Prop_folder_actions_enabled, + 'properties' : _Prop_properties, +} +application._privelemdict = { + 'application_process' : Processes_Suite.application_process, + 'desk_accessory_process' : Processes_Suite.desk_accessory_process, + 'disk' : disk, + 'document' : Standard_Suite.document, + 'file' : file, + 'folder' : folder, + 'folder_action' : Folder_Actions_Suite.folder_action, + 'item' : item, + 'login_item' : Login_Items_Suite.login_item, + 'process' : Processes_Suite.process, + 'window' : Standard_Suite.window, +} +disk._superclassnames = ['item'] +disk._privpropdict = { + 'POSIX_path' : _Prop_POSIX_path, + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'capacity' : _Prop_capacity, + 'ejectable' : _Prop_ejectable, + 'format' : _Prop_format, + 'free_space' : _Prop_free_space, + 'ignore_privileges' : _Prop_ignore_privileges, + 'local_volume' : _Prop_local_volume, + 'name' : _Prop_name, + 'path' : _Prop_path, + 'properties' : _Prop_properties, + 'startup' : _Prop_startup, + 'volume' : _Prop_volume, +} +disk._privelemdict = { + 'file' : file, + 'folder' : folder, + 'item' : item, +} +folder._superclassnames = ['item'] +folder._privpropdict = { + 'POSIX_path' : _Prop_POSIX_path, + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'name' : _Prop_name, + 'path' : _Prop_path, + 'properties' : _Prop_properties, + 'volume' : _Prop_volume, +} +folder._privelemdict = { + 'file' : file, + 'file' : file, + 'folder' : folder, + 'folder' : folder, + 'item' : item, + 'item' : item, +} +item._superclassnames = [] +item._privpropdict = { + 'POSIX_path' : _Prop_POSIX_path, + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'busy_status' : _Prop_busy_status, + 'creation_date' : _Prop_creation_date, + 'modification_date' : _Prop_modification_date, + 'name' : _Prop_name, + 'name_extension' : _Prop_name_extension, + 'package_folder' : _Prop_package_folder, + 'path' : _Prop_path, + 'properties' : _Prop_properties, + 'url' : _Prop_url, + 'visible' : _Prop_visible, + 'volume' : _Prop_volume, +} +item._privelemdict = { + 'file' : file, + 'folder' : folder, + 'item' : item, +} +file._superclassnames = ['item'] +file._privpropdict = { + 'POSIX_path' : _Prop_POSIX_path, + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'creator_type' : _Prop_creator_type, + 'file_type' : _Prop_file_type, + 'name' : _Prop_name, + 'path' : _Prop_path, + 'physical_size' : _Prop_physical_size, + 'product_version' : _Prop_product_version, + 'properties' : _Prop_properties, + 'size' : _Prop_size, + 'stationery' : _Prop_stationery, + 'version' : _Prop_version, + 'volume' : _Prop_volume, +} +file._privelemdict = { + 'file' : file, + 'folder' : folder, + 'item' : item, +} +_Enum_edfm = { + 'MS_2d_DOS_format' : 'dfms', # MS-DOS format + 'Apple_Photo_format' : 'dfph', # Apple Photo format + 'ISO_9660_format' : 'df96', # ISO 9660 format + 'QuickTake_format' : 'dfqt', # QuickTake format + 'AppleShare_format' : 'dfas', # AppleShare format + 'High_Sierra_format' : 'dfhs', # High Sierra format + 'Mac_OS_Extended_format' : 'dfh+', # Mac OS Extended format + 'UDF_format' : 'dfud', # UDF format + 'unknown_format' : 'df??', # unknown format + 'audio_format' : 'dfau', # audio format + 'Mac_OS_format' : 'dfhf', # Mac OS format + 'UFS_format' : 'dfuf', # UFS format + 'NFS_format' : 'dfnf', # NFS format + 'ProDOS_format' : 'dfpr', # ProDOS format + 'WebDAV_format' : 'dfwd', # WebDAV format +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, + 'cdis' : disk, + 'cfol' : folder, + 'cobj' : item, + 'file' : file, +} + +_propdeclarations = { + 'ascd' : _Prop_creation_date, + 'asmo' : _Prop_modification_date, + 'asty' : _Prop_file_type, + 'busy' : _Prop_busy_status, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'capa' : _Prop_capacity, + 'dfmt' : _Prop_format, + 'extn' : _Prop_name_extension, + 'faen' : _Prop_folder_actions_enabled, + 'fcrt' : _Prop_creator_type, + 'frsp' : _Prop_free_space, + 'igpr' : _Prop_ignore_privileges, + 'isej' : _Prop_ejectable, + 'isrv' : _Prop_local_volume, + 'istd' : _Prop_startup, + 'pALL' : _Prop_properties, + 'phys' : _Prop_physical_size, + 'pkgf' : _Prop_package_folder, + 'pnam' : _Prop_name, + 'posx' : _Prop_POSIX_path, + 'ppth' : _Prop_path, + 'pspd' : _Prop_stationery, + 'ptsz' : _Prop_size, + 'url ' : _Prop_url, + 'ver2' : _Prop_product_version, + 'vers' : _Prop_version, + 'visi' : _Prop_visible, + 'volu' : _Prop_volume, +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'edfm' : _Enum_edfm, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Folder_Actions_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Folder_Actions_Suite.py new file mode 100644 index 000000000..c2c7e5e03 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Folder_Actions_Suite.py @@ -0,0 +1,287 @@ +"""Suite Folder Actions Suite: Terms and Events for controlling Folder Actions +Level 1, version 1 + +Generated from /System/Library/CoreServices/System Events.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'faco' + +class Folder_Actions_Suite_Events: + + _argmap_attach_action_to = { + 'using' : 'faal', + } + + def attach_action_to(self, _object, _attributes={}, **_arguments): + """attach action to: Attach an action to a folder + Required argument: the object for the command + Keyword argument using: a file containing the script to attach + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'faco' + _subcode = 'atfa' + + aetools.keysubst(_arguments, self._argmap_attach_action_to) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def attached_scripts(self, _object, _attributes={}, **_arguments): + """attached scripts: List the actions attached to a folder + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'faco' + _subcode = 'lact' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_do_folder_action = { + 'with_window_size' : 'fnsz', + 'with_item_list' : 'flst', + 'folder_action_code' : 'actn', + } + + def do_folder_action(self, _object, _attributes={}, **_arguments): + """do folder action: Event the Finder sends to the Folder Actions FBA + Required argument: the object for the command + Keyword argument with_window_size: the new window size for the folder action message to process + Keyword argument with_item_list: a list of items for the folder action message to process + Keyword argument folder_action_code: the folder action message to process + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'faco' + _subcode = 'fola' + + aetools.keysubst(_arguments, self._argmap_do_folder_action) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'actn', _Enum_actn) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_edit_action_of = { + 'using_action_name' : 'snam', + 'using_action_number' : 'indx', + } + + def edit_action_of(self, _object, _attributes={}, **_arguments): + """edit action of: Edit as action of a folder + Required argument: the object for the command + Keyword argument using_action_name: ...or the name of the action to edit + Keyword argument using_action_number: the index number of the action to edit... + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'faco' + _subcode = 'edfa' + + aetools.keysubst(_arguments, self._argmap_edit_action_of) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_remove_action_from = { + 'using_action_name' : 'snam', + 'using_action_number' : 'indx', + } + + def remove_action_from(self, _object, _attributes={}, **_arguments): + """remove action from: Remove a folder action from a folder + Required argument: the object for the command + Keyword argument using_action_name: ...or the name of the action to remove + Keyword argument using_action_number: the index number of the action to remove... + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'faco' + _subcode = 'rmfa' + + aetools.keysubst(_arguments, self._argmap_remove_action_from) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - The Folder Actions Suite host program """ + want = 'capp' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'capp' +_3c_Inheritance_3e_ = _Prop__3c_Inheritance_3e_() +class _Prop_folder_actions_enabled(aetools.NProperty): + """folder actions enabled - Are Folder Actions currently being processed? """ + which = 'faen' + want = 'bool' +folder_actions_enabled = _Prop_folder_actions_enabled() +class _Prop_properties(aetools.NProperty): + """properties - every property of the Folder Actions Suite host program """ + which = 'pALL' + want = '****' +properties = _Prop_properties() +# element 'cdis' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cfol' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cobj' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cwin' as ['name', 'indx', 'rele', 'rang', 'test', 'ID '] +# element 'docu' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'file' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'foac' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'logi' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'pcap' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'pcda' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'prcs' as ['name', 'indx', 'rele', 'rang', 'test'] + +applications = application + +class folder_action(aetools.ComponentItem): + """folder action - An action attached to a folder in the file system """ + want = 'foac' +class _Prop_name(aetools.NProperty): + """name - the name of the folder action, which is also the name of the folder """ + which = 'pnam' + want = 'utxt' +class _Prop_path(aetools.NProperty): + """path - the path to the folder to which the folder action applies """ + which = 'ppth' + want = '****' +class _Prop_volume(aetools.NProperty): + """volume - the volume on which the folder action resides """ + which = 'volu' + want = 'utxt' +# element 'scpt' as ['name', 'indx', 'rele', 'rang', 'test'] + +folder_actions = folder_action + +class script(aetools.ComponentItem): + """script - A script invoked by a folder action """ + want = 'scpt' +class _Prop_POSIX_path(aetools.NProperty): + """POSIX path - the POSIX file system path of the disk """ + which = 'posx' + want = 'utxt' + +scripts = script +application._superclassnames = [] +import Disk_Folder_File_Suite +import Standard_Suite +import Login_Items_Suite +import Processes_Suite +application._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'folder_actions_enabled' : _Prop_folder_actions_enabled, + 'properties' : _Prop_properties, +} +application._privelemdict = { + 'application_process' : Processes_Suite.application_process, + 'desk_accessory_process' : Processes_Suite.desk_accessory_process, + 'disk' : Disk_Folder_File_Suite.disk, + 'document' : Standard_Suite.document, + 'file' : Disk_Folder_File_Suite.file, + 'folder' : Disk_Folder_File_Suite.folder, + 'folder_action' : folder_action, + 'item' : Disk_Folder_File_Suite.item, + 'login_item' : Login_Items_Suite.login_item, + 'process' : Processes_Suite.process, + 'window' : Standard_Suite.window, +} +folder_action._superclassnames = ['item'] +folder_action._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'name' : _Prop_name, + 'path' : _Prop_path, + 'properties' : _Prop_properties, + 'volume' : _Prop_volume, +} +folder_action._privelemdict = { + 'script' : script, +} +script._superclassnames = ['item'] +script._privpropdict = { + 'POSIX_path' : _Prop_POSIX_path, + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'name' : _Prop_name, + 'path' : _Prop_path, + 'properties' : _Prop_properties, +} +script._privelemdict = { +} +_Enum_actn = { + 'items_added' : 'fget', # items added + 'items_removed' : 'flos', # items removed + 'window_closed' : 'fclo', # window closed + 'window_moved' : 'fsiz', # window moved + 'window_opened' : 'fopn', # window opened +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, + 'foac' : folder_action, + 'scpt' : script, +} + +_propdeclarations = { + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'faen' : _Prop_folder_actions_enabled, + 'pALL' : _Prop_properties, + 'pnam' : _Prop_name, + 'posx' : _Prop_POSIX_path, + 'ppth' : _Prop_path, + 'volu' : _Prop_volume, +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'actn' : _Enum_actn, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Hidden_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Hidden_Suite.py new file mode 100644 index 000000000..e80ace1e5 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Hidden_Suite.py @@ -0,0 +1,50 @@ +"""Suite Hidden Suite: Hidden Terms and Events for controlling the System Events application +Level 1, version 1 + +Generated from /System/Library/CoreServices/System Events.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'tpnm' + +from StdSuites.Type_Names_Suite import * +class Hidden_Suite_Events(Type_Names_Suite_Events): + + def do_script(self, _object, _attributes={}, **_arguments): + """do script: Execute an OSA script. + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'misc' + _subcode = 'dosc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Login_Items_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Login_Items_Suite.py new file mode 100644 index 000000000..ed0924515 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Login_Items_Suite.py @@ -0,0 +1,74 @@ +"""Suite Login Items Suite: Terms and Events for controlling the Login Items application +Level 1, version 1 + +Generated from /System/Library/CoreServices/System Events.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'logi' + +class Login_Items_Suite_Events: + + pass + + +class login_item(aetools.ComponentItem): + """login item - an item to be launched or opened at login """ + want = 'logi' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'cobj' +class _Prop_hidden(aetools.NProperty): + """hidden - Is the Login Item hidden when launched? """ + which = 'hidn' + want = 'bool' +class _Prop_kind(aetools.NProperty): + """kind - the file type of the Login Item """ + which = 'kind' + want = 'utxt' +class _Prop_name(aetools.NProperty): + """name - the name of the Login Item """ + which = 'pnam' + want = 'utxt' +class _Prop_path(aetools.NProperty): + """path - the file system path to the Login Item """ + which = 'ppth' + want = 'utxt' + +login_items = login_item +import Standard_Suite +login_item._superclassnames = ['item'] +login_item._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'hidden' : _Prop_hidden, + 'kind' : _Prop_kind, + 'name' : _Prop_name, + 'path' : _Prop_path, +} +login_item._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'logi' : login_item, +} + +_propdeclarations = { + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'hidn' : _Prop_hidden, + 'kind' : _Prop_kind, + 'pnam' : _Prop_name, + 'ppth' : _Prop_path, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Power_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Power_Suite.py new file mode 100644 index 000000000..ef539b1e0 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Power_Suite.py @@ -0,0 +1,149 @@ +"""Suite Power Suite: Terms and Events for controlling System power +Level 1, version 1 + +Generated from /System/Library/CoreServices/System Events.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'powr' + +class Power_Suite_Events: + + def restart(self, _object, _attributes={}, **_arguments): + """restart: Restart the computer + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'rest' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def shut_down(self, _object, _attributes={}, **_arguments): + """shut down: Shut Down the computer + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'shut' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def sleep(self, _object, _attributes={}, **_arguments): + """sleep: Put the computer to sleep + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'fndr' + _subcode = 'slep' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - The System Events application """ + want = 'capp' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'capp' +_3c_Inheritance_3e_ = _Prop__3c_Inheritance_3e_() +class _Prop_folder_actions_enabled(aetools.NProperty): + """folder actions enabled - Are Folder Actions currently being processed? """ + which = 'faen' + want = 'bool' +folder_actions_enabled = _Prop_folder_actions_enabled() +class _Prop_properties(aetools.NProperty): + """properties - every property of the System Events application """ + which = 'pALL' + want = '****' +properties = _Prop_properties() +# element 'cdis' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cfol' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cobj' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cwin' as ['name', 'indx', 'rele', 'rang', 'test', 'ID '] +# element 'docu' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'file' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'foac' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'logi' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'pcap' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'pcda' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'prcs' as ['name', 'indx', 'rele', 'rang', 'test'] + +applications = application +application._superclassnames = [] +import Disk_Folder_File_Suite +import Standard_Suite +import Folder_Actions_Suite +import Login_Items_Suite +import Processes_Suite +application._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'folder_actions_enabled' : _Prop_folder_actions_enabled, + 'properties' : _Prop_properties, +} +application._privelemdict = { + 'application_process' : Processes_Suite.application_process, + 'desk_accessory_process' : Processes_Suite.desk_accessory_process, + 'disk' : Disk_Folder_File_Suite.disk, + 'document' : Standard_Suite.document, + 'file' : Disk_Folder_File_Suite.file, + 'folder' : Disk_Folder_File_Suite.folder, + 'folder_action' : Folder_Actions_Suite.folder_action, + 'item' : Disk_Folder_File_Suite.item, + 'login_item' : Login_Items_Suite.login_item, + 'process' : Processes_Suite.process, + 'window' : Standard_Suite.window, +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, +} + +_propdeclarations = { + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'faen' : _Prop_folder_actions_enabled, + 'pALL' : _Prop_properties, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Processes_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Processes_Suite.py new file mode 100644 index 000000000..9dcb85fb2 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Processes_Suite.py @@ -0,0 +1,214 @@ +"""Suite Processes Suite: Terms and Events for controlling Processes +Level 1, version 1 + +Generated from /System/Library/CoreServices/System Events.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'prcs' + +class Processes_Suite_Events: + + pass + + +class application(aetools.ComponentItem): + """application - The Processes Suite host program """ + want = 'capp' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'capp' +_3c_Inheritance_3e_ = _Prop__3c_Inheritance_3e_() +class _Prop_folder_actions_enabled(aetools.NProperty): + """folder actions enabled - Are Folder Actions currently being processed? """ + which = 'faen' + want = 'bool' +folder_actions_enabled = _Prop_folder_actions_enabled() +class _Prop_properties(aetools.NProperty): + """properties - every property of the Processes Suite host program """ + which = 'pALL' + want = '****' +properties = _Prop_properties() +# element 'cdis' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cfol' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cobj' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cwin' as ['name', 'indx', 'rele', 'rang', 'test', 'ID '] +# element 'docu' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'file' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'foac' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'logi' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'pcap' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'pcda' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'prcs' as ['name', 'indx', 'rele', 'rang', 'test'] + +applications = application + +class application_process(aetools.ComponentItem): + """application process - A process launched from an application file """ + want = 'pcap' +class _Prop_application_file(aetools.NProperty): + """application file - a reference to the application file from which this process was launched """ + which = 'appf' + want = '****' + +application_processes = application_process + +class desk_accessory_process(aetools.ComponentItem): + """desk accessory process - A process launched from an desk accessory file """ + want = 'pcda' +class _Prop_desk_accessory_file(aetools.NProperty): + """desk accessory file - a reference to the desk accessory file from which this process was launched """ + which = 'dafi' + want = '****' + +desk_accessory_processes = desk_accessory_process + +class process(aetools.ComponentItem): + """process - A process running on this computer """ + want = 'prcs' +class _Prop_accepts_high_level_events(aetools.NProperty): + """accepts high level events - Is the process high-level event aware (accepts open application, open document, print document, and quit)? """ + which = 'isab' + want = 'bool' +class _Prop_accepts_remote_events(aetools.NProperty): + """accepts remote events - Does the process accept remote events? """ + which = 'revt' + want = 'bool' +class _Prop_classic(aetools.NProperty): + """classic - Is the process running in the Classic environment? """ + which = 'clsc' + want = 'bool' +class _Prop_creator_type(aetools.NProperty): + """creator type - the OSType of the creator of the process (the signature) """ + which = 'fcrt' + want = 'utxt' +class _Prop_file(aetools.NProperty): + """file - the file from which the process was launched """ + which = 'file' + want = '****' +class _Prop_file_type(aetools.NProperty): + """file type - the OSType of the file type of the process """ + which = 'asty' + want = 'utxt' +class _Prop_frontmost(aetools.NProperty): + """frontmost - Is the process the frontmost process """ + which = 'pisf' + want = 'bool' +class _Prop_has_scripting_terminology(aetools.NProperty): + """has scripting terminology - Does the process have a scripting terminology, i.e., can it be scripted? """ + which = 'hscr' + want = 'bool' +class _Prop_name(aetools.NProperty): + """name - the name of the process """ + which = 'pnam' + want = 'utxt' +class _Prop_partition_space_used(aetools.NProperty): + """partition space used - the number of bytes currently used in the process' partition """ + which = 'pusd' + want = 'magn' +class _Prop_total_partition_size(aetools.NProperty): + """total partition size - the size of the partition with which the process was launched """ + which = 'appt' + want = 'magn' +class _Prop_visible(aetools.NProperty): + """visible - Is the process' layer visible? """ + which = 'pvis' + want = 'bool' + +processes = process +application._superclassnames = [] +import Disk_Folder_File_Suite +import Standard_Suite +import Folder_Actions_Suite +import Login_Items_Suite +application._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'folder_actions_enabled' : _Prop_folder_actions_enabled, + 'properties' : _Prop_properties, +} +application._privelemdict = { + 'application_process' : application_process, + 'desk_accessory_process' : desk_accessory_process, + 'disk' : Disk_Folder_File_Suite.disk, + 'document' : Standard_Suite.document, + 'file' : Disk_Folder_File_Suite.file, + 'folder' : Disk_Folder_File_Suite.folder, + 'folder_action' : Folder_Actions_Suite.folder_action, + 'item' : Disk_Folder_File_Suite.item, + 'login_item' : Login_Items_Suite.login_item, + 'process' : process, + 'window' : Standard_Suite.window, +} +application_process._superclassnames = ['process'] +application_process._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'application_file' : _Prop_application_file, +} +application_process._privelemdict = { +} +desk_accessory_process._superclassnames = ['process'] +desk_accessory_process._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'desk_accessory_file' : _Prop_desk_accessory_file, +} +desk_accessory_process._privelemdict = { +} +process._superclassnames = ['item'] +process._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'accepts_high_level_events' : _Prop_accepts_high_level_events, + 'accepts_remote_events' : _Prop_accepts_remote_events, + 'classic' : _Prop_classic, + 'creator_type' : _Prop_creator_type, + 'file' : _Prop_file, + 'file_type' : _Prop_file_type, + 'frontmost' : _Prop_frontmost, + 'has_scripting_terminology' : _Prop_has_scripting_terminology, + 'name' : _Prop_name, + 'partition_space_used' : _Prop_partition_space_used, + 'properties' : _Prop_properties, + 'total_partition_size' : _Prop_total_partition_size, + 'visible' : _Prop_visible, +} +process._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, + 'pcap' : application_process, + 'pcda' : desk_accessory_process, + 'prcs' : process, +} + +_propdeclarations = { + 'appf' : _Prop_application_file, + 'appt' : _Prop_total_partition_size, + 'asty' : _Prop_file_type, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'clsc' : _Prop_classic, + 'dafi' : _Prop_desk_accessory_file, + 'faen' : _Prop_folder_actions_enabled, + 'fcrt' : _Prop_creator_type, + 'file' : _Prop_file, + 'hscr' : _Prop_has_scripting_terminology, + 'isab' : _Prop_accepts_high_level_events, + 'pALL' : _Prop_properties, + 'pisf' : _Prop_frontmost, + 'pnam' : _Prop_name, + 'pusd' : _Prop_partition_space_used, + 'pvis' : _Prop_visible, + 'revt' : _Prop_accepts_remote_events, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Standard_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Standard_Suite.py new file mode 100644 index 000000000..f20ef8434 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Standard_Suite.py @@ -0,0 +1,582 @@ +"""Suite Standard Suite: Common classes and commands for most applications. +Level 1, version 1 + +Generated from /System/Library/CoreServices/System Events.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = '????' + +class Standard_Suite_Events: + + _argmap_close = { + 'saving_in' : 'kfil', + 'saving' : 'savo', + } + + def close(self, _object, _attributes={}, **_arguments): + """close: Close an object. + Required argument: the object for the command + Keyword argument saving_in: The file in which to save the object. + Keyword argument saving: Specifies whether changes should be saved before closing. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'clos' + + aetools.keysubst(_arguments, self._argmap_close) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'savo', _Enum_savo) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_count = { + 'each' : 'kocl', + } + + def count(self, _object, _attributes={}, **_arguments): + """count: Return the number of elements of a particular class within an object. + Required argument: the object for the command + Keyword argument each: The class of objects to be counted. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'core' + _subcode = 'cnte' + + aetools.keysubst(_arguments, self._argmap_count) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def delete(self, _object, _attributes={}, **_arguments): + """delete: Delete an object. + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'delo' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_duplicate = { + 'to' : 'insh', + 'with_properties' : 'prdt', + } + + def duplicate(self, _object, _attributes={}, **_arguments): + """duplicate: Copy object(s) and put the copies at a new location. + Required argument: the object for the command + Keyword argument to: The location for the new object(s). + Keyword argument with_properties: Properties to be set in the new duplicated object(s). + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'clon' + + aetools.keysubst(_arguments, self._argmap_duplicate) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def exists(self, _object, _attributes={}, **_arguments): + """exists: Verify if an object exists. + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'core' + _subcode = 'doex' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def get(self, _object, _attributes={}, **_arguments): + """get: Get the data for an object. + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'core' + _subcode = 'getd' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_make = { + 'at' : 'insh', + 'new' : 'kocl', + 'with_data' : 'data', + 'with_properties' : 'prdt', + } + + def make(self, _no_object=None, _attributes={}, **_arguments): + """make: Make a new object. + Keyword argument at: The location at which to insert the object. + Keyword argument new: The class of the new object. + Keyword argument with_data: The initial data for the object. + Keyword argument with_properties: The initial values for properties of the object. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'core' + _subcode = 'crel' + + aetools.keysubst(_arguments, self._argmap_make) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_move = { + 'to' : 'insh', + } + + def move(self, _object, _attributes={}, **_arguments): + """move: Move object(s) to a new location. + Required argument: the object for the command + Keyword argument to: The new location for the object(s). + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'move' + + aetools.keysubst(_arguments, self._argmap_move) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def open(self, _object=None, _attributes={}, **_arguments): + """open: Open an object. + Required argument: list of objects + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'odoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def print_(self, _object=None, _attributes={}, **_arguments): + """print: Print an object. + Required argument: list of objects + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'pdoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_quit = { + 'saving' : 'savo', + } + + def quit(self, _object, _attributes={}, **_arguments): + """quit: Quit an application. + Required argument: the object for the command + Keyword argument saving: Specifies whether changes should be saved before quitting. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'quit' + + aetools.keysubst(_arguments, self._argmap_quit) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'savo', _Enum_savo) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_save = { + 'in_' : 'kfil', + 'as' : 'fltp', + } + + def save(self, _object, _attributes={}, **_arguments): + """save: Save an object. + Required argument: the object for the command + Keyword argument in_: The file in which to save the object. + Keyword argument as: The file type in which to save the data. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'save' + + aetools.keysubst(_arguments, self._argmap_save) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_set = { + 'to' : 'data', + } + + def set(self, _object, _attributes={}, **_arguments): + """set: Set an object's data. + Required argument: the object for the command + Keyword argument to: The new value. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'setd' + + aetools.keysubst(_arguments, self._argmap_set) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - An application's top level scripting object. """ + want = 'capp' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'cobj' +_3c_Inheritance_3e_ = _Prop__3c_Inheritance_3e_() +class _Prop_frontmost(aetools.NProperty): + """frontmost - Is this the frontmost (active) application? """ + which = 'pisf' + want = 'bool' +frontmost = _Prop_frontmost() +class _Prop_name(aetools.NProperty): + """name - The name of the application. """ + which = 'pnam' + want = 'utxt' +name = _Prop_name() +class _Prop_version(aetools.NProperty): + """version - The version of the application. """ + which = 'vers' + want = 'utxt' +version = _Prop_version() +# element 'cwin' as ['name', 'indx', 'rele', 'rang', 'test', 'ID '] +# element 'docu' as ['name', 'indx', 'rele', 'rang', 'test'] + +applications = application + +class item(aetools.ComponentItem): + """item - A scriptable object. """ + want = 'cobj' +class _Prop_class_(aetools.NProperty): + """class - The class of the object. """ + which = 'pcls' + want = 'type' +class _Prop_properties(aetools.NProperty): + """properties - All of the object's properties. """ + which = 'pALL' + want = 'reco' + +items = item + +class color(aetools.ComponentItem): + """color - A color. """ + want = 'colr' + +colors = color + +class window(aetools.ComponentItem): + """window - A window. """ + want = 'cwin' +class _Prop_bounds(aetools.NProperty): + """bounds - The bounding rectangle of the window. """ + which = 'pbnd' + want = 'qdrt' +class _Prop_closeable(aetools.NProperty): + """closeable - Whether the window has a close box. """ + which = 'hclb' + want = 'bool' +class _Prop_document(aetools.NProperty): + """document - The document whose contents are being displayed in the window. """ + which = 'docu' + want = 'docu' +class _Prop_floating(aetools.NProperty): + """floating - Whether the window floats. """ + which = 'isfl' + want = 'bool' +class _Prop_id(aetools.NProperty): + """id - The unique identifier of the window. """ + which = 'ID ' + want = 'long' +class _Prop_index(aetools.NProperty): + """index - The index of the window in the back-to-front window ordering. """ + which = 'pidx' + want = 'long' +class _Prop_miniaturizable(aetools.NProperty): + """miniaturizable - Whether the window can be miniaturized. """ + which = 'ismn' + want = 'bool' +class _Prop_miniaturized(aetools.NProperty): + """miniaturized - Whether the window is currently miniaturized. """ + which = 'pmnd' + want = 'bool' +class _Prop_modal(aetools.NProperty): + """modal - Whether the window is the application's current modal window. """ + which = 'pmod' + want = 'bool' +class _Prop_resizable(aetools.NProperty): + """resizable - Whether the window can be resized. """ + which = 'prsz' + want = 'bool' +class _Prop_titled(aetools.NProperty): + """titled - Whether the window has a title bar. """ + which = 'ptit' + want = 'bool' +class _Prop_visible(aetools.NProperty): + """visible - Whether the window is currently visible. """ + which = 'pvis' + want = 'bool' +class _Prop_zoomable(aetools.NProperty): + """zoomable - Whether the window can be zoomed. """ + which = 'iszm' + want = 'bool' +class _Prop_zoomed(aetools.NProperty): + """zoomed - Whether the window is currently zoomed. """ + which = 'pzum' + want = 'bool' + +windows = window + +class document(aetools.ComponentItem): + """document - A document. """ + want = 'docu' +class _Prop_modified(aetools.NProperty): + """modified - Has the document been modified since the last save? """ + which = 'imod' + want = 'bool' +class _Prop_path(aetools.NProperty): + """path - The document's path. """ + which = 'ppth' + want = 'utxt' + +documents = document +application._superclassnames = ['item'] +application._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'frontmost' : _Prop_frontmost, + 'name' : _Prop_name, + 'version' : _Prop_version, +} +application._privelemdict = { + 'document' : document, + 'window' : window, +} +item._superclassnames = [] +item._privpropdict = { + 'class_' : _Prop_class_, + 'properties' : _Prop_properties, +} +item._privelemdict = { +} +color._superclassnames = ['item'] +color._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, +} +color._privelemdict = { +} +window._superclassnames = ['item'] +window._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'bounds' : _Prop_bounds, + 'closeable' : _Prop_closeable, + 'document' : _Prop_document, + 'floating' : _Prop_floating, + 'id' : _Prop_id, + 'index' : _Prop_index, + 'miniaturizable' : _Prop_miniaturizable, + 'miniaturized' : _Prop_miniaturized, + 'modal' : _Prop_modal, + 'name' : _Prop_name, + 'resizable' : _Prop_resizable, + 'titled' : _Prop_titled, + 'visible' : _Prop_visible, + 'zoomable' : _Prop_zoomable, + 'zoomed' : _Prop_zoomed, +} +window._privelemdict = { +} +document._superclassnames = ['item'] +document._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'modified' : _Prop_modified, + 'name' : _Prop_name, + 'path' : _Prop_path, +} +document._privelemdict = { +} +class _3c_(aetools.NComparison): + """< - Less than """ +class _3d_(aetools.NComparison): + """= - Equal """ +class _3e_(aetools.NComparison): + """> - Greater than """ +class contains(aetools.NComparison): + """contains - Contains """ +class ends_with(aetools.NComparison): + """ends with - Ends with """ +class starts_with(aetools.NComparison): + """starts with - Starts with """ +class _b2_(aetools.NComparison): + """\xb2 - Less than or equal to """ +class _b3_(aetools.NComparison): + """\xb3 - Greater than or equal to """ +_Enum_savo = { + 'ask' : 'ask ', # Ask the user whether or not to save the file. + 'yes' : 'yes ', # Save the file. + 'no' : 'no ', # Do not save the file. +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, + 'cobj' : item, + 'colr' : color, + 'cwin' : window, + 'docu' : document, +} + +_propdeclarations = { + 'ID ' : _Prop_id, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'docu' : _Prop_document, + 'hclb' : _Prop_closeable, + 'imod' : _Prop_modified, + 'isfl' : _Prop_floating, + 'ismn' : _Prop_miniaturizable, + 'iszm' : _Prop_zoomable, + 'pALL' : _Prop_properties, + 'pbnd' : _Prop_bounds, + 'pcls' : _Prop_class_, + 'pidx' : _Prop_index, + 'pisf' : _Prop_frontmost, + 'pmnd' : _Prop_miniaturized, + 'pmod' : _Prop_modal, + 'pnam' : _Prop_name, + 'ppth' : _Prop_path, + 'prsz' : _Prop_resizable, + 'ptit' : _Prop_titled, + 'pvis' : _Prop_visible, + 'pzum' : _Prop_zoomed, + 'vers' : _Prop_version, +} + +_compdeclarations = { + '< ' : _3c_, + '<= ' : _b2_, + '= ' : _3d_, + '> ' : _3e_, + '>= ' : _b3_, + 'bgwt' : starts_with, + 'cont' : contains, + 'ends' : ends_with, +} + +_enumdeclarations = { + 'savo' : _Enum_savo, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/System_Events_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/System_Events_Suite.py new file mode 100644 index 000000000..d5b4bfc6e --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/System_Events_Suite.py @@ -0,0 +1,109 @@ +"""Suite System Events Suite: Terms and Events for controlling the System Events application +Level 1, version 1 + +Generated from /System/Library/CoreServices/System Events.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'sevs' + +class System_Events_Suite_Events: + + def do_script(self, _object, _attributes={}, **_arguments): + """do script: Execute an OSA script. + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'misc' + _subcode = 'dosc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - The System Events application """ + want = 'capp' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'capp' +_3c_Inheritance_3e_ = _Prop__3c_Inheritance_3e_() +class _Prop_folder_actions_enabled(aetools.NProperty): + """folder actions enabled - Are Folder Actions currently being processed? """ + which = 'faen' + want = 'bool' +folder_actions_enabled = _Prop_folder_actions_enabled() +class _Prop_properties(aetools.NProperty): + """properties - every property of the System Events application """ + which = 'pALL' + want = '****' +properties = _Prop_properties() +# element 'cdis' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cfol' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cobj' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'cwin' as ['name', 'indx', 'rele', 'rang', 'test', 'ID '] +# element 'docu' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'file' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'foac' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'logi' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'pcap' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'pcda' as ['name', 'indx', 'rele', 'rang', 'test'] +# element 'prcs' as ['name', 'indx', 'rele', 'rang', 'test'] + +applications = application +application._superclassnames = [] +import Disk_Folder_File_Suite +import Standard_Suite +import Folder_Actions_Suite +import Login_Items_Suite +import Processes_Suite +application._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'folder_actions_enabled' : _Prop_folder_actions_enabled, + 'properties' : _Prop_properties, +} +application._privelemdict = { + 'application_process' : Processes_Suite.application_process, + 'desk_accessory_process' : Processes_Suite.desk_accessory_process, + 'disk' : Disk_Folder_File_Suite.disk, + 'document' : Standard_Suite.document, + 'file' : Disk_Folder_File_Suite.file, + 'folder' : Disk_Folder_File_Suite.folder, + 'folder_action' : Folder_Actions_Suite.folder_action, + 'item' : Disk_Folder_File_Suite.item, + 'login_item' : Login_Items_Suite.login_item, + 'process' : Processes_Suite.process, + 'window' : Standard_Suite.window, +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, +} + +_propdeclarations = { + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'faen' : _Prop_folder_actions_enabled, + 'pALL' : _Prop_properties, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Text_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Text_Suite.py new file mode 100644 index 000000000..9f109e111 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/Text_Suite.py @@ -0,0 +1,195 @@ +"""Suite Text Suite: A set of basic classes for text processing. +Level 1, version 1 + +Generated from /System/Library/CoreServices/System Events.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = '????' + +class Text_Suite_Events: + + pass + + +class attachment(aetools.ComponentItem): + """attachment - Represents an inline text attachment. This class is used mainly for make commands. """ + want = 'atts' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'ctxt' +class _Prop_file_name(aetools.NProperty): + """file name - The path to the file for the attachment """ + which = 'atfn' + want = 'utxt' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +class attribute_run(aetools.ComponentItem): + """attribute run - This subdivides the text into chunks that all have the same attributes. """ + want = 'catr' +class _Prop_color(aetools.NProperty): + """color - The color of the first character. """ + which = 'colr' + want = 'colr' +class _Prop_font(aetools.NProperty): + """font - The name of the font of the first character. """ + which = 'font' + want = 'utxt' +class _Prop_size(aetools.NProperty): + """size - The size in points of the first character. """ + which = 'ptsz' + want = 'long' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +attribute_runs = attribute_run + +class character(aetools.ComponentItem): + """character - This subdivides the text into characters. """ + want = 'cha ' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +characters = character + +class paragraph(aetools.ComponentItem): + """paragraph - This subdivides the text into paragraphs. """ + want = 'cpar' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +paragraphs = paragraph + +class text(aetools.ComponentItem): + """text - Rich (styled) text """ + want = 'ctxt' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +class word(aetools.ComponentItem): + """word - This subdivides the text into words. """ + want = 'cwor' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +words = word +attachment._superclassnames = ['text'] +attachment._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'file_name' : _Prop_file_name, +} +attachment._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} +import Standard_Suite +attribute_run._superclassnames = ['item'] +attribute_run._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, +} +attribute_run._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} +character._superclassnames = ['item'] +character._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, +} +character._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} +paragraph._superclassnames = ['item'] +paragraph._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, +} +paragraph._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} +text._superclassnames = ['item'] +text._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, +} +text._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} +word._superclassnames = ['item'] +word._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, +} +word._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'atts' : attachment, + 'catr' : attribute_run, + 'cha ' : character, + 'cpar' : paragraph, + 'ctxt' : text, + 'cwor' : word, +} + +_propdeclarations = { + 'atfn' : _Prop_file_name, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'colr' : _Prop_color, + 'font' : _Prop_font, + 'ptsz' : _Prop_size, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/__init__.py b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/__init__.py new file mode 100644 index 000000000..95f985ccc --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/SystemEvents/__init__.py @@ -0,0 +1,140 @@ +""" +Package generated from /System/Library/CoreServices/System Events.app +""" +import aetools +Error = aetools.Error +import Standard_Suite +import Text_Suite +import Disk_Folder_File_Suite +import Folder_Actions_Suite +import Login_Items_Suite +import Power_Suite +import Processes_Suite +import System_Events_Suite + + +_code_to_module = { + '????' : Standard_Suite, + '????' : Text_Suite, + 'cdis' : Disk_Folder_File_Suite, + 'faco' : Folder_Actions_Suite, + 'logi' : Login_Items_Suite, + 'powr' : Power_Suite, + 'prcs' : Processes_Suite, + 'sevs' : System_Events_Suite, +} + + + +_code_to_fullname = { + '????' : ('SystemEvents.Standard_Suite', 'Standard_Suite'), + '????' : ('SystemEvents.Text_Suite', 'Text_Suite'), + 'cdis' : ('SystemEvents.Disk_Folder_File_Suite', 'Disk_Folder_File_Suite'), + 'faco' : ('SystemEvents.Folder_Actions_Suite', 'Folder_Actions_Suite'), + 'logi' : ('SystemEvents.Login_Items_Suite', 'Login_Items_Suite'), + 'powr' : ('SystemEvents.Power_Suite', 'Power_Suite'), + 'prcs' : ('SystemEvents.Processes_Suite', 'Processes_Suite'), + 'sevs' : ('SystemEvents.System_Events_Suite', 'System_Events_Suite'), +} + +from Standard_Suite import * +from Text_Suite import * +from Disk_Folder_File_Suite import * +from Folder_Actions_Suite import * +from Login_Items_Suite import * +from Power_Suite import * +from Processes_Suite import * +from System_Events_Suite import * + +def getbaseclasses(v): + if not getattr(v, '_propdict', None): + v._propdict = {} + v._elemdict = {} + for superclassname in getattr(v, '_superclassnames', []): + superclass = eval(superclassname) + getbaseclasses(superclass) + v._propdict.update(getattr(superclass, '_propdict', {})) + v._elemdict.update(getattr(superclass, '_elemdict', {})) + v._propdict.update(getattr(v, '_privpropdict', {})) + v._elemdict.update(getattr(v, '_privelemdict', {})) + +import StdSuites + +# +# Set property and element dictionaries now that all classes have been defined +# +getbaseclasses(login_item) +getbaseclasses(color) +getbaseclasses(window) +getbaseclasses(application) +getbaseclasses(item) +getbaseclasses(document) +getbaseclasses(character) +getbaseclasses(attachment) +getbaseclasses(paragraph) +getbaseclasses(word) +getbaseclasses(attribute_run) +getbaseclasses(text) +getbaseclasses(file) +getbaseclasses(application) +getbaseclasses(item) +getbaseclasses(folder) +getbaseclasses(disk) +getbaseclasses(script) +getbaseclasses(application) +getbaseclasses(folder_action) +getbaseclasses(application) +getbaseclasses(application) +getbaseclasses(process) +getbaseclasses(application_process) +getbaseclasses(desk_accessory_process) +getbaseclasses(application) + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'logi' : login_item, + 'colr' : color, + 'cwin' : window, + 'capp' : application, + 'cobj' : item, + 'docu' : document, + 'cha ' : character, + 'atts' : attachment, + 'cpar' : paragraph, + 'cwor' : word, + 'catr' : attribute_run, + 'ctxt' : text, + 'file' : file, + 'capp' : application, + 'cobj' : item, + 'cfol' : folder, + 'cdis' : disk, + 'scpt' : script, + 'capp' : application, + 'foac' : folder_action, + 'capp' : application, + 'capp' : application, + 'prcs' : process, + 'pcap' : application_process, + 'pcda' : desk_accessory_process, + 'capp' : application, +} + + +class SystemEvents(Standard_Suite_Events, + Text_Suite_Events, + Disk_Folder_File_Suite_Events, + Folder_Actions_Suite_Events, + Login_Items_Suite_Events, + Power_Suite_Events, + Processes_Suite_Events, + System_Events_Suite_Events, + aetools.TalkTo): + _signature = 'sevs' + + _moduleName = 'SystemEvents' + + _elemdict = application._elemdict + _propdict = application._propdict diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/Standard_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/Standard_Suite.py new file mode 100644 index 000000000..035290f32 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/Standard_Suite.py @@ -0,0 +1,582 @@ +"""Suite Standard Suite: Common classes and commands for most applications. +Level 1, version 1 + +Generated from /Applications/Utilities/Terminal.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = '????' + +class Standard_Suite_Events: + + _argmap_close = { + 'saving_in' : 'kfil', + 'saving' : 'savo', + } + + def close(self, _object, _attributes={}, **_arguments): + """close: Close an object. + Required argument: the object for the command + Keyword argument saving_in: The file in which to save the object. + Keyword argument saving: Specifies whether changes should be saved before closing. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'clos' + + aetools.keysubst(_arguments, self._argmap_close) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'savo', _Enum_savo) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_count = { + 'each' : 'kocl', + } + + def count(self, _object, _attributes={}, **_arguments): + """count: Return the number of elements of a particular class within an object. + Required argument: the object for the command + Keyword argument each: The class of objects to be counted. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'core' + _subcode = 'cnte' + + aetools.keysubst(_arguments, self._argmap_count) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def delete(self, _object, _attributes={}, **_arguments): + """delete: Delete an object. + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'delo' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_duplicate = { + 'to' : 'insh', + 'with_properties' : 'prdt', + } + + def duplicate(self, _object, _attributes={}, **_arguments): + """duplicate: Copy object(s) and put the copies at a new location. + Required argument: the object for the command + Keyword argument to: The location for the new object(s). + Keyword argument with_properties: Properties to be set in the new duplicated object(s). + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'clon' + + aetools.keysubst(_arguments, self._argmap_duplicate) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def exists(self, _object, _attributes={}, **_arguments): + """exists: Verify if an object exists. + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'core' + _subcode = 'doex' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def get(self, _object, _attributes={}, **_arguments): + """get: Get the data for an object. + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'core' + _subcode = 'getd' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_make = { + 'at' : 'insh', + 'new' : 'kocl', + 'with_data' : 'data', + 'with_properties' : 'prdt', + } + + def make(self, _no_object=None, _attributes={}, **_arguments): + """make: Make a new object. + Keyword argument at: The location at which to insert the object. + Keyword argument new: The class of the new object. + Keyword argument with_data: The initial data for the object. + Keyword argument with_properties: The initial values for properties of the object. + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'core' + _subcode = 'crel' + + aetools.keysubst(_arguments, self._argmap_make) + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_move = { + 'to' : 'insh', + } + + def move(self, _object, _attributes={}, **_arguments): + """move: Move object(s) to a new location. + Required argument: the object for the command + Keyword argument to: The new location for the object(s). + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'move' + + aetools.keysubst(_arguments, self._argmap_move) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def open(self, _object=None, _attributes={}, **_arguments): + """open: Open an object. + Required argument: list of objects + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'odoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def print_(self, _object=None, _attributes={}, **_arguments): + """print: Print an object. + Required argument: list of objects + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'pdoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_quit = { + 'saving' : 'savo', + } + + def quit(self, _object, _attributes={}, **_arguments): + """quit: Quit an application. + Required argument: the object for the command + Keyword argument saving: Specifies whether changes should be saved before quitting. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'quit' + + aetools.keysubst(_arguments, self._argmap_quit) + _arguments['----'] = _object + + aetools.enumsubst(_arguments, 'savo', _Enum_savo) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_save = { + 'in_' : 'kfil', + 'as' : 'fltp', + } + + def save(self, _object, _attributes={}, **_arguments): + """save: Save an object. + Required argument: the object for the command + Keyword argument in_: The file in which to save the object. + Keyword argument as: The file type in which to save the data. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'save' + + aetools.keysubst(_arguments, self._argmap_save) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_set = { + 'to' : 'data', + } + + def set(self, _object, _attributes={}, **_arguments): + """set: Set an object's data. + Required argument: the object for the command + Keyword argument to: The new value. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'core' + _subcode = 'setd' + + aetools.keysubst(_arguments, self._argmap_set) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - An application's top level scripting object. """ + want = 'capp' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'cobj' +_3c_Inheritance_3e_ = _Prop__3c_Inheritance_3e_() +class _Prop_frontmost(aetools.NProperty): + """frontmost - Is this the frontmost (active) application? """ + which = 'pisf' + want = 'bool' +frontmost = _Prop_frontmost() +class _Prop_name(aetools.NProperty): + """name - The name of the application. """ + which = 'pnam' + want = 'utxt' +name = _Prop_name() +class _Prop_version(aetools.NProperty): + """version - The version of the application. """ + which = 'vers' + want = 'utxt' +version = _Prop_version() +# element 'cwin' as ['name', 'indx', 'rele', 'rang', 'test', 'ID '] +# element 'docu' as ['name', 'indx', 'rele', 'rang', 'test'] + +applications = application + +class item(aetools.ComponentItem): + """item - A scriptable object. """ + want = 'cobj' +class _Prop_class_(aetools.NProperty): + """class - The class of the object. """ + which = 'pcls' + want = 'type' +class _Prop_properties(aetools.NProperty): + """properties - All of the object's properties. """ + which = 'pALL' + want = 'reco' + +items = item + +class color(aetools.ComponentItem): + """color - A color. """ + want = 'colr' + +colors = color + +class window(aetools.ComponentItem): + """window - A window. """ + want = 'cwin' +class _Prop_bounds(aetools.NProperty): + """bounds - The bounding rectangle of the window. """ + which = 'pbnd' + want = 'qdrt' +class _Prop_closeable(aetools.NProperty): + """closeable - Whether the window has a close box. """ + which = 'hclb' + want = 'bool' +class _Prop_document(aetools.NProperty): + """document - The document whose contents are being displayed in the window. """ + which = 'docu' + want = 'docu' +class _Prop_floating(aetools.NProperty): + """floating - Whether the window floats. """ + which = 'isfl' + want = 'bool' +class _Prop_id(aetools.NProperty): + """id - The unique identifier of the window. """ + which = 'ID ' + want = 'long' +class _Prop_index(aetools.NProperty): + """index - The index of the window in the back-to-front window ordering. """ + which = 'pidx' + want = 'long' +class _Prop_miniaturizable(aetools.NProperty): + """miniaturizable - Whether the window can be miniaturized. """ + which = 'ismn' + want = 'bool' +class _Prop_miniaturized(aetools.NProperty): + """miniaturized - Whether the window is currently miniaturized. """ + which = 'pmnd' + want = 'bool' +class _Prop_modal(aetools.NProperty): + """modal - Whether the window is the application's current modal window. """ + which = 'pmod' + want = 'bool' +class _Prop_resizable(aetools.NProperty): + """resizable - Whether the window can be resized. """ + which = 'prsz' + want = 'bool' +class _Prop_titled(aetools.NProperty): + """titled - Whether the window has a title bar. """ + which = 'ptit' + want = 'bool' +class _Prop_visible(aetools.NProperty): + """visible - Whether the window is currently visible. """ + which = 'pvis' + want = 'bool' +class _Prop_zoomable(aetools.NProperty): + """zoomable - Whether the window can be zoomed. """ + which = 'iszm' + want = 'bool' +class _Prop_zoomed(aetools.NProperty): + """zoomed - Whether the window is currently zoomed. """ + which = 'pzum' + want = 'bool' + +windows = window + +class document(aetools.ComponentItem): + """document - A document. """ + want = 'docu' +class _Prop_modified(aetools.NProperty): + """modified - Has the document been modified since the last save? """ + which = 'imod' + want = 'bool' +class _Prop_path(aetools.NProperty): + """path - The document's path. """ + which = 'ppth' + want = 'utxt' + +documents = document +application._superclassnames = ['item'] +application._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'frontmost' : _Prop_frontmost, + 'name' : _Prop_name, + 'version' : _Prop_version, +} +application._privelemdict = { + 'document' : document, + 'window' : window, +} +item._superclassnames = [] +item._privpropdict = { + 'class_' : _Prop_class_, + 'properties' : _Prop_properties, +} +item._privelemdict = { +} +color._superclassnames = ['item'] +color._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, +} +color._privelemdict = { +} +window._superclassnames = ['item'] +window._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'bounds' : _Prop_bounds, + 'closeable' : _Prop_closeable, + 'document' : _Prop_document, + 'floating' : _Prop_floating, + 'id' : _Prop_id, + 'index' : _Prop_index, + 'miniaturizable' : _Prop_miniaturizable, + 'miniaturized' : _Prop_miniaturized, + 'modal' : _Prop_modal, + 'name' : _Prop_name, + 'resizable' : _Prop_resizable, + 'titled' : _Prop_titled, + 'visible' : _Prop_visible, + 'zoomable' : _Prop_zoomable, + 'zoomed' : _Prop_zoomed, +} +window._privelemdict = { +} +document._superclassnames = ['item'] +document._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'modified' : _Prop_modified, + 'name' : _Prop_name, + 'path' : _Prop_path, +} +document._privelemdict = { +} +class _3c_(aetools.NComparison): + """< - Less than """ +class _3d_(aetools.NComparison): + """= - Equal """ +class _3e_(aetools.NComparison): + """> - Greater than """ +class contains(aetools.NComparison): + """contains - Contains """ +class ends_with(aetools.NComparison): + """ends with - Ends with """ +class starts_with(aetools.NComparison): + """starts with - Starts with """ +class _b2_(aetools.NComparison): + """\xb2 - Less than or equal to """ +class _b3_(aetools.NComparison): + """\xb3 - Greater than or equal to """ +_Enum_savo = { + 'ask' : 'ask ', # Ask the user whether or not to save the file. + 'yes' : 'yes ', # Save the file. + 'no' : 'no ', # Do not save the file. +} + + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, + 'cobj' : item, + 'colr' : color, + 'cwin' : window, + 'docu' : document, +} + +_propdeclarations = { + 'ID ' : _Prop_id, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'docu' : _Prop_document, + 'hclb' : _Prop_closeable, + 'imod' : _Prop_modified, + 'isfl' : _Prop_floating, + 'ismn' : _Prop_miniaturizable, + 'iszm' : _Prop_zoomable, + 'pALL' : _Prop_properties, + 'pbnd' : _Prop_bounds, + 'pcls' : _Prop_class_, + 'pidx' : _Prop_index, + 'pisf' : _Prop_frontmost, + 'pmnd' : _Prop_miniaturized, + 'pmod' : _Prop_modal, + 'pnam' : _Prop_name, + 'ppth' : _Prop_path, + 'prsz' : _Prop_resizable, + 'ptit' : _Prop_titled, + 'pvis' : _Prop_visible, + 'pzum' : _Prop_zoomed, + 'vers' : _Prop_version, +} + +_compdeclarations = { + '< ' : _3c_, + '<= ' : _b2_, + '= ' : _3d_, + '> ' : _3e_, + '>= ' : _b3_, + 'bgwt' : starts_with, + 'cont' : contains, + 'ends' : ends_with, +} + +_enumdeclarations = { + 'savo' : _Enum_savo, +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/Terminal_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/Terminal_Suite.py new file mode 100644 index 000000000..afa02b39f --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/Terminal_Suite.py @@ -0,0 +1,254 @@ +"""Suite Terminal Suite: Terms and Events for controlling the Terminal application +Level 1, version 1 + +Generated from /Applications/Utilities/Terminal.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = 'trmx' + +class Terminal_Suite_Events: + + def GetURL(self, _object, _attributes={}, **_arguments): + """GetURL: Opens a telnet: URL + Required argument: the object for the command + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'GURL' + _subcode = 'GURL' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_do_script = { + 'in_' : 'kfil', + 'with_command' : 'cmnd', + } + + def do_script(self, _object, _attributes={}, **_arguments): + """do script: Run a UNIX shell script or command + Required argument: the object for the command + Keyword argument in_: the window in which to execute the command + Keyword argument with_command: data to be passed to the Terminal application as the command line, deprecated, use direct parameter + Keyword argument _attributes: AppleEvent attribute dictionary + Returns: the reply for the command + """ + _code = 'core' + _subcode = 'dosc' + + aetools.keysubst(_arguments, self._argmap_do_script) + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + +class application(aetools.ComponentItem): + """application - The Terminal program """ + want = 'capp' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'capp' +_3c_Inheritance_3e_ = _Prop__3c_Inheritance_3e_() +class _Prop_properties(aetools.NProperty): + """properties - every property of the Terminal program """ + which = 'pALL' + want = '****' +properties = _Prop_properties() +# element 'cwin' as ['name', 'indx', 'rele', 'rang', 'test', 'ID '] +# element 'docu' as ['name', 'indx', 'rele', 'rang', 'test'] + +applications = application + +class window(aetools.ComponentItem): + """window - A Terminal window """ + want = 'cwin' +class _Prop_background_color(aetools.NProperty): + """background color - the background color for the window """ + which = 'pbcl' + want = '****' +class _Prop_bold_text_color(aetools.NProperty): + """bold text color - the bold text color for the window """ + which = 'pbtc' + want = '****' +class _Prop_bounds(aetools.NProperty): + """bounds - the boundary rectangle for the window, relative to the upper left corner of the screen """ + which = 'pbnd' + want = '****' +class _Prop_busy(aetools.NProperty): + """busy - Is the window busy running a process? """ + which = 'busy' + want = 'bool' +class _Prop_contents(aetools.NProperty): + """contents - the currently visible contents of the window """ + which = 'pcnt' + want = 'utxt' +class _Prop_cursor_color(aetools.NProperty): + """cursor color - the cursor color for the window """ + which = 'pcuc' + want = '****' +class _Prop_custom_title(aetools.NProperty): + """custom title - the custom title for the window """ + which = 'titl' + want = 'utxt' +class _Prop_frame(aetools.NProperty): + """frame - the origin and size of the window """ + which = 'pfra' + want = '****' +class _Prop_frontmost(aetools.NProperty): + """frontmost - Is the window in front of the other Terminal windows? """ + which = 'pisf' + want = 'bool' +class _Prop_history(aetools.NProperty): + """history - the contents of the entire scrolling buffer of the window """ + which = 'hist' + want = 'utxt' +class _Prop_normal_text_color(aetools.NProperty): + """normal text color - the normal text color for the window """ + which = 'ptxc' + want = '****' +class _Prop_number_of_columns(aetools.NProperty): + """number of columns - the number of columns in the window """ + which = 'ccol' + want = 'long' +class _Prop_number_of_rows(aetools.NProperty): + """number of rows - the number of rows in the window """ + which = 'crow' + want = 'long' +class _Prop_origin(aetools.NProperty): + """origin - the lower left coordinates of the window, relative to the lower left corner of the screen """ + which = 'pori' + want = '****' +class _Prop_position(aetools.NProperty): + """position - the upper left coordinates of the window, relative to the upper left corner of the screen """ + which = 'ppos' + want = '****' +class _Prop_processes(aetools.NProperty): + """processes - a list of the currently running processes """ + which = 'prcs' + want = 'utxt' +class _Prop_size(aetools.NProperty): + """size - the width and height of the window """ + which = 'psiz' + want = '****' +class _Prop_title_displays_custom_title(aetools.NProperty): + """title displays custom title - Does the title for the window contain a custom title? """ + which = 'tdct' + want = 'bool' +class _Prop_title_displays_device_name(aetools.NProperty): + """title displays device name - Does the title for the window contain the device name? """ + which = 'tddn' + want = 'bool' +class _Prop_title_displays_file_name(aetools.NProperty): + """title displays file name - Does the title for the window contain the file name? """ + which = 'tdfn' + want = 'bool' +class _Prop_title_displays_shell_path(aetools.NProperty): + """title displays shell path - Does the title for the window contain the shell path? """ + which = 'tdsp' + want = 'bool' +class _Prop_title_displays_window_size(aetools.NProperty): + """title displays window size - Does the title for the window contain the window size? """ + which = 'tdws' + want = 'bool' + +windows = window +application._superclassnames = [] +import Standard_Suite +application._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'properties' : _Prop_properties, +} +application._privelemdict = { + 'document' : Standard_Suite.document, + 'window' : window, +} +window._superclassnames = [] +window._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'background_color' : _Prop_background_color, + 'bold_text_color' : _Prop_bold_text_color, + 'bounds' : _Prop_bounds, + 'busy' : _Prop_busy, + 'contents' : _Prop_contents, + 'cursor_color' : _Prop_cursor_color, + 'custom_title' : _Prop_custom_title, + 'frame' : _Prop_frame, + 'frontmost' : _Prop_frontmost, + 'history' : _Prop_history, + 'normal_text_color' : _Prop_normal_text_color, + 'number_of_columns' : _Prop_number_of_columns, + 'number_of_rows' : _Prop_number_of_rows, + 'origin' : _Prop_origin, + 'position' : _Prop_position, + 'processes' : _Prop_processes, + 'properties' : _Prop_properties, + 'size' : _Prop_size, + 'title_displays_custom_title' : _Prop_title_displays_custom_title, + 'title_displays_device_name' : _Prop_title_displays_device_name, + 'title_displays_file_name' : _Prop_title_displays_file_name, + 'title_displays_shell_path' : _Prop_title_displays_shell_path, + 'title_displays_window_size' : _Prop_title_displays_window_size, +} +window._privelemdict = { +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'capp' : application, + 'cwin' : window, +} + +_propdeclarations = { + 'busy' : _Prop_busy, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'ccol' : _Prop_number_of_columns, + 'crow' : _Prop_number_of_rows, + 'hist' : _Prop_history, + 'pALL' : _Prop_properties, + 'pbcl' : _Prop_background_color, + 'pbnd' : _Prop_bounds, + 'pbtc' : _Prop_bold_text_color, + 'pcnt' : _Prop_contents, + 'pcuc' : _Prop_cursor_color, + 'pfra' : _Prop_frame, + 'pisf' : _Prop_frontmost, + 'pori' : _Prop_origin, + 'ppos' : _Prop_position, + 'prcs' : _Prop_processes, + 'psiz' : _Prop_size, + 'ptxc' : _Prop_normal_text_color, + 'tdct' : _Prop_title_displays_custom_title, + 'tddn' : _Prop_title_displays_device_name, + 'tdfn' : _Prop_title_displays_file_name, + 'tdsp' : _Prop_title_displays_shell_path, + 'tdws' : _Prop_title_displays_window_size, + 'titl' : _Prop_custom_title, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/Text_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/Text_Suite.py new file mode 100644 index 000000000..62f4744b2 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/Text_Suite.py @@ -0,0 +1,195 @@ +"""Suite Text Suite: A set of basic classes for text processing. +Level 1, version 1 + +Generated from /Applications/Utilities/Terminal.app +AETE/AEUT resource version 1/0, language 0, script 0 +""" + +import aetools +import MacOS + +_code = '????' + +class Text_Suite_Events: + + pass + + +class attachment(aetools.ComponentItem): + """attachment - Represents an inline text attachment. This class is used mainly for make commands. """ + want = 'atts' +class _Prop__3c_Inheritance_3e_(aetools.NProperty): + """<Inheritance> - All of the properties of the superclass. """ + which = 'c@#^' + want = 'ctxt' +class _Prop_file_name(aetools.NProperty): + """file name - The path to the file for the attachment """ + which = 'atfn' + want = 'utxt' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +class attribute_run(aetools.ComponentItem): + """attribute run - This subdivides the text into chunks that all have the same attributes. """ + want = 'catr' +class _Prop_color(aetools.NProperty): + """color - The color of the first character. """ + which = 'colr' + want = 'colr' +class _Prop_font(aetools.NProperty): + """font - The name of the font of the first character. """ + which = 'font' + want = 'utxt' +class _Prop_size(aetools.NProperty): + """size - The size in points of the first character. """ + which = 'ptsz' + want = 'long' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +attribute_runs = attribute_run + +class character(aetools.ComponentItem): + """character - This subdivides the text into characters. """ + want = 'cha ' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +characters = character + +class paragraph(aetools.ComponentItem): + """paragraph - This subdivides the text into paragraphs. """ + want = 'cpar' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +paragraphs = paragraph + +class text(aetools.ComponentItem): + """text - Rich (styled) text """ + want = 'ctxt' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +class word(aetools.ComponentItem): + """word - This subdivides the text into words. """ + want = 'cwor' +# element 'catr' as ['indx', 'rele', 'rang', 'test'] +# element 'cha ' as ['indx', 'rele', 'rang', 'test'] +# element 'cpar' as ['indx', 'rele', 'rang', 'test'] +# element 'cwor' as ['indx', 'rele', 'rang', 'test'] + +words = word +attachment._superclassnames = ['text'] +attachment._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'file_name' : _Prop_file_name, +} +attachment._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} +import Standard_Suite +attribute_run._superclassnames = ['item'] +attribute_run._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, +} +attribute_run._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} +character._superclassnames = ['item'] +character._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, +} +character._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} +paragraph._superclassnames = ['item'] +paragraph._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, +} +paragraph._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} +text._superclassnames = ['item'] +text._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, +} +text._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} +word._superclassnames = ['item'] +word._privpropdict = { + '_3c_Inheritance_3e_' : _Prop__3c_Inheritance_3e_, + 'color' : _Prop_color, + 'font' : _Prop_font, + 'size' : _Prop_size, +} +word._privelemdict = { + 'attribute_run' : attribute_run, + 'character' : character, + 'paragraph' : paragraph, + 'word' : word, +} + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'atts' : attachment, + 'catr' : attribute_run, + 'cha ' : character, + 'cpar' : paragraph, + 'ctxt' : text, + 'cwor' : word, +} + +_propdeclarations = { + 'atfn' : _Prop_file_name, + 'c@#^' : _Prop__3c_Inheritance_3e_, + 'colr' : _Prop_color, + 'font' : _Prop_font, + 'ptsz' : _Prop_size, +} + +_compdeclarations = { +} + +_enumdeclarations = { +} diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/__init__.py b/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/__init__.py new file mode 100644 index 000000000..47b75f2ae --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/Terminal/__init__.py @@ -0,0 +1,89 @@ +""" +Package generated from /Applications/Utilities/Terminal.app +""" +import aetools +Error = aetools.Error +import Standard_Suite +import Text_Suite +import Terminal_Suite + + +_code_to_module = { + '????' : Standard_Suite, + '????' : Text_Suite, + 'trmx' : Terminal_Suite, +} + + + +_code_to_fullname = { + '????' : ('Terminal.Standard_Suite', 'Standard_Suite'), + '????' : ('Terminal.Text_Suite', 'Text_Suite'), + 'trmx' : ('Terminal.Terminal_Suite', 'Terminal_Suite'), +} + +from Standard_Suite import * +from Text_Suite import * +from Terminal_Suite import * + +def getbaseclasses(v): + if not getattr(v, '_propdict', None): + v._propdict = {} + v._elemdict = {} + for superclassname in getattr(v, '_superclassnames', []): + superclass = eval(superclassname) + getbaseclasses(superclass) + v._propdict.update(getattr(superclass, '_propdict', {})) + v._elemdict.update(getattr(superclass, '_elemdict', {})) + v._propdict.update(getattr(v, '_privpropdict', {})) + v._elemdict.update(getattr(v, '_privelemdict', {})) + +import StdSuites + +# +# Set property and element dictionaries now that all classes have been defined +# +getbaseclasses(color) +getbaseclasses(window) +getbaseclasses(application) +getbaseclasses(item) +getbaseclasses(document) +getbaseclasses(window) +getbaseclasses(application) +getbaseclasses(character) +getbaseclasses(attachment) +getbaseclasses(paragraph) +getbaseclasses(word) +getbaseclasses(attribute_run) +getbaseclasses(text) + +# +# Indices of types declared in this module +# +_classdeclarations = { + 'colr' : color, + 'cwin' : window, + 'capp' : application, + 'cobj' : item, + 'docu' : document, + 'cwin' : window, + 'capp' : application, + 'cha ' : character, + 'atts' : attachment, + 'cpar' : paragraph, + 'cwor' : word, + 'catr' : attribute_run, + 'ctxt' : text, +} + + +class Terminal(Standard_Suite_Events, + Text_Suite_Events, + Terminal_Suite_Events, + aetools.TalkTo): + _signature = 'trmx' + + _moduleName = 'Terminal' + + _elemdict = application._elemdict + _propdict = application._propdict diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/_builtinSuites/__init__.py b/sys/lib/python/plat-mac/lib-scriptpackages/_builtinSuites/__init__.py new file mode 100644 index 000000000..2c722d9f5 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/_builtinSuites/__init__.py @@ -0,0 +1,27 @@ +""" +Manually generated suite used as base class for StdSuites Required and Standard +suites. This is needed because the events and enums in this suite belong +in the Required suite according to the Apple docs, but they often seem to be +in the Standard suite. +""" +import aetools +import builtin_Suite + + +_code_to_module = { + 'reqd' : builtin_Suite, + 'core' : builtin_Suite, +} + + + +_code_to_fullname = { + 'reqd' : ('_builtinSuites.builtin_Suite', 'builtin_Suite'), + 'core' : ('_builtinSuites.builtin_Suite', 'builtin_Suite'), +} + +from builtin_Suite import * + +class _builtinSuites(builtin_Suite_Events, + aetools.TalkTo): + _signature = 'ascr' diff --git a/sys/lib/python/plat-mac/lib-scriptpackages/_builtinSuites/builtin_Suite.py b/sys/lib/python/plat-mac/lib-scriptpackages/_builtinSuites/builtin_Suite.py new file mode 100644 index 000000000..318250fa2 --- /dev/null +++ b/sys/lib/python/plat-mac/lib-scriptpackages/_builtinSuites/builtin_Suite.py @@ -0,0 +1,140 @@ +"""Suite builtin_Suite: Every application supports open, reopen, print, run, and quit +Level 1, version 1 +""" + +import aetools +import MacOS + +_code = 'aevt' + +class builtin_Suite_Events: + + def open(self, _object, _attributes={}, **_arguments): + """open: Open the specified object(s) + Required argument: list of objects to open + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'odoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def run(self, _no_object=None, _attributes={}, **_arguments): + """run: Run an application. Most applications will open an empty, untitled window. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'oapp' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def reopen(self, _no_object=None, _attributes={}, **_arguments): + """reopen: Reactivate a running application. Some applications will open a new untitled window if no window is open. + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'rapp' + + if _arguments: raise TypeError, 'No optional args expected' + if _no_object != None: raise TypeError, 'No direct arg expected' + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + def _print(self, _object, _attributes={}, **_arguments): + """print: Print the specified object(s) + Required argument: list of objects to print + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'pdoc' + + if _arguments: raise TypeError, 'No optional args expected' + _arguments['----'] = _object + + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_quit = { + 'saving' : 'savo', + } + + def quit(self, _no_object=None, _attributes={}, **_arguments): + """quit: Quit an application + Keyword argument saving: specifies whether to save currently open documents + Keyword argument _attributes: AppleEvent attribute dictionary + """ + _code = 'aevt' + _subcode = 'quit' + + aetools.keysubst(_arguments, self._argmap_quit) + if _no_object != None: raise TypeError, 'No direct arg expected' + + aetools.enumsubst(_arguments, 'savo', _Enum_savo) + + _reply, _arguments, _attributes = self.send(_code, _subcode, + _arguments, _attributes) + if _arguments.get('errn', 0): + raise aetools.Error, aetools.decodeerror(_arguments) + # XXXX Optionally decode result + if _arguments.has_key('----'): + return _arguments['----'] + + _argmap_close = { + 'saving' : 'savo', + 'saving_in' : 'kfil', + } + +_Enum_savo = { + 'yes' : 'yes ', # Save objects now + 'no' : 'no ', # Do not save objects + 'ask' : 'ask ', # Ask the user whether to save +} + +# +# Indices of types declared in this module +# +_classdeclarations = { +} + +_propdeclarations = { +} + +_compdeclarations = { +} + +_enumdeclarations = { + 'savo' : _Enum_savo, +} diff --git a/sys/lib/python/plat-mac/macerrors.py b/sys/lib/python/plat-mac/macerrors.py new file mode 100644 index 000000000..ce2a11828 --- /dev/null +++ b/sys/lib/python/plat-mac/macerrors.py @@ -0,0 +1,1852 @@ +svTempDisable = -32768 #svTempDisable +svDisabled = -32640 #Reserve range -32640 to -32768 for Apple temp disables. +fontNotOutlineErr = -32615 #bitmap font passed to routine that does outlines only +kURL68kNotSupportedError = -30788 #kURL68kNotSupportedError +kURLAccessNotAvailableError = -30787 #kURLAccessNotAvailableError +kURLInvalidConfigurationError = -30786 #kURLInvalidConfigurationError +kURLExtensionFailureError = -30785 #kURLExtensionFailureError +kURLFileEmptyError = -30783 #kURLFileEmptyError +kURLInvalidCallError = -30781 #kURLInvalidCallError +kURLUnsettablePropertyError = -30780 #kURLUnsettablePropertyError +kURLPropertyBufferTooSmallError = -30779 #kURLPropertyBufferTooSmallError +kURLUnknownPropertyError = -30778 #kURLUnknownPropertyError +kURLPropertyNotYetKnownError = -30777 #kURLPropertyNotYetKnownError +kURLAuthenticationError = -30776 #kURLAuthenticationError +kURLServerBusyError = -30775 #kURLServerBusyError +kURLUnsupportedSchemeError = -30774 #kURLUnsupportedSchemeError +kURLInvalidURLError = -30773 #kURLInvalidURLError +kURLDestinationExistsError = -30772 #kURLDestinationExistsError +kURLProgressAlreadyDisplayedError = -30771 #kURLProgressAlreadyDisplayedError +kURLInvalidURLReferenceError = -30770 #kURLInvalidURLReferenceError +controlHandleInvalidErr = -30599 #controlHandleInvalidErr +controlInvalidDataVersionErr = -30597 #controlInvalidDataVersionErr +errItemNotControl = -30596 #errItemNotControl +errCantEmbedRoot = -30595 #errCantEmbedRoot +errCantEmbedIntoSelf = -30594 #errCantEmbedIntoSelf +errWindowRegionCodeInvalid = -30593 #errWindowRegionCodeInvalid +errControlHiddenOrDisabled = -30592 #errControlHiddenOrDisabled +errDataSizeMismatch = -30591 #errDataSizeMismatch +errControlIsNotEmbedder = -30590 #errControlIsNotEmbedder +errControlsAlreadyExist = -30589 #errControlsAlreadyExist +errInvalidPartCode = -30588 #errInvalidPartCode +errRootAlreadyExists = -30587 #errRootAlreadyExists +errNoRootControl = -30586 #errNoRootControl +errCouldntSetFocus = -30585 #errCouldntSetFocus +errUnknownControl = -30584 #errUnknownControl +errWindowDoesntSupportFocus = -30583 #errWindowDoesntSupportFocus +errControlDoesntSupportFocus = -30582 #errControlDoesntSupportFocus +errDataNotSupported = -30581 #errDataNotSupported +errMessageNotSupported = -30580 #errMessageNotSupported +themeMonitorDepthNotSupportedErr = -30567 #theme not supported at monitor depth +themeScriptFontNotFoundErr = -30566 #theme font requested for uninstalled script system +themeBadCursorIndexErr = -30565 #themeBadCursorIndexErr +themeHasNoAccentsErr = -30564 #themeHasNoAccentsErr +themeBadTextColorErr = -30563 #themeBadTextColorErr +themeProcessNotRegisteredErr = -30562 #themeProcessNotRegisteredErr +themeProcessRegisteredErr = -30561 #themeProcessRegisteredErr +themeInvalidBrushErr = -30560 #pattern index invalid +qtvrUninitialized = -30555 #qtvrUninitialized +qtvrLibraryLoadErr = -30554 #qtvrLibraryLoadErr +streamingNodeNotReadyErr = -30553 #streamingNodeNotReadyErr +noMemoryNodeFailedInitialize = -30552 #noMemoryNodeFailedInitialize +invalidHotSpotIDErr = -30551 #invalidHotSpotIDErr +invalidNodeFormatErr = -30550 #invalidNodeFormatErr +limitReachedErr = -30549 #limitReachedErr +settingNotSupportedByNodeErr = -30548 #settingNotSupportedByNodeErr +propertyNotSupportedByNodeErr = -30547 #propertyNotSupportedByNodeErr +timeNotInViewErr = -30546 #timeNotInViewErr +invalidViewStateErr = -30545 #invalidViewStateErr +invalidNodeIDErr = -30544 #invalidNodeIDErr +selectorNotSupportedByNodeErr = -30543 #selectorNotSupportedByNodeErr +callNotSupportedByNodeErr = -30542 #callNotSupportedByNodeErr +constraintReachedErr = -30541 #constraintReachedErr +notAQTVRMovieErr = -30540 #notAQTVRMovieErr +kFBCnoSuchHit = -30532 #kFBCnoSuchHit +kFBCbadSearchSession = -30531 #kFBCbadSearchSession +kFBCindexDiskIOFailed = -30530 #kFBCindexDiskIOFailed +kFBCsummarizationCanceled = -30529 #kFBCsummarizationCanceled +kFBCbadIndexFileVersion = -30528 #kFBCbadIndexFileVersion +kFBCanalysisNotAvailable = -30527 #kFBCanalysisNotAvailable +kFBCillegalSessionChange = -30526 #tried to add/remove vols to a session +kFBCsomeFilesNotIndexed = -30525 #kFBCsomeFilesNotIndexed +kFBCsearchFailed = -30524 #kFBCsearchFailed +kFBCindexNotAvailable = -30523 #kFBCindexNotAvailable +kFBCindexFileDestroyed = -30522 #kFBCindexFileDestroyed +kFBCaccessCanceled = -30521 #kFBCaccessCanceled +kFBCindexingCanceled = -30520 #kFBCindexingCanceled +kFBCnoSearchSession = -30519 #kFBCnoSearchSession +kFBCindexNotFound = -30518 #kFBCindexNotFound +kFBCflushFailed = -30517 #kFBCflushFailed +kFBCaddDocFailed = -30516 #kFBCaddDocFailed +kFBCaccessorStoreFailed = -30515 #kFBCaccessorStoreFailed +kFBCindexCreationFailed = -30514 #couldn't create index +kFBCmergingFailed = -30513 #couldn't merge index files +kFBCtokenizationFailed = -30512 #couldn't read from document or query +kFBCmoveFailed = -30511 #V-Twin exception caught +kFBCdeletionFailed = -30510 #V-Twin exception caught +kFBCcommitFailed = -30509 #V-Twin exception caught +kFBCindexingFailed = -30508 #V-Twin exception caught +kFBCvalidationFailed = -30507 #V-Twin exception caught +kFBCcompactionFailed = -30506 #V-Twin exception caught +kFBCbadIndexFile = -30505 #bad FSSpec, or bad data in file +kFBCfileNotIndexed = -30504 #kFBCfileNotIndexed +kFBCbadParam = -30503 #kFBCbadParam +kFBCallocFailed = -30502 #probably low memory +kFBCnoIndexesFound = -30501 #kFBCnoIndexesFound +kFBCvTwinExceptionErr = -30500 #no telling what it was +kDSpStereoContextErr = -30450 #kDSpStereoContextErr +kDSpInternalErr = -30449 #kDSpInternalErr +kDSpConfirmSwitchWarning = -30448 #kDSpConfirmSwitchWarning +kDSpFrameRateNotReadyErr = -30447 #kDSpFrameRateNotReadyErr +kDSpContextNotFoundErr = -30446 #kDSpContextNotFoundErr +kDSpContextNotReservedErr = -30445 #kDSpContextNotReservedErr +kDSpContextAlreadyReservedErr = -30444 #kDSpContextAlreadyReservedErr +kDSpInvalidAttributesErr = -30443 #kDSpInvalidAttributesErr +kDSpInvalidContextErr = -30442 #kDSpInvalidContextErr +kDSpSystemSWTooOldErr = -30441 #kDSpSystemSWTooOldErr +kDSpNotInitializedErr = -30440 #kDSpNotInitializedErr +kISpListBusyErr = -30429 #kISpListBusyErr +kISpDeviceActiveErr = -30428 #kISpDeviceActiveErr +kISpSystemActiveErr = -30427 #kISpSystemActiveErr +kISpDeviceInactiveErr = -30426 #kISpDeviceInactiveErr +kISpSystemInactiveErr = -30425 #kISpSystemInactiveErr +kISpElementNotInListErr = -30424 #kISpElementNotInListErr +kISpElementInListErr = -30423 #kISpElementInListErr +kISpBufferToSmallErr = -30422 #kISpBufferToSmallErr +kISpSystemListErr = -30421 #kISpSystemListErr +kISpInternalErr = -30420 #kISpInternalErr +kNSpJoinFailedErr = -30399 #kNSpJoinFailedErr +kNSpCantBlockErr = -30398 #kNSpCantBlockErr +kNSpMessageTooBigErr = -30397 #kNSpMessageTooBigErr +kNSpSendFailedErr = -30396 #kNSpSendFailedErr +kNSpConnectFailedErr = -30395 #kNSpConnectFailedErr +kNSpGameTerminatedErr = -30394 #kNSpGameTerminatedErr +kNSpTimeoutErr = -30393 #kNSpTimeoutErr +kNSpInvalidProtocolListErr = -30392 #kNSpInvalidProtocolListErr +kNSpInvalidProtocolRefErr = -30391 #kNSpInvalidProtocolRefErr +kNSpInvalidDefinitionErr = -30390 #kNSpInvalidDefinitionErr +kNSpAddPlayerFailedErr = -30389 #kNSpAddPlayerFailedErr +kNSpCreateGroupFailedErr = -30388 #kNSpCreateGroupFailedErr +kNSpNoHostVolunteersErr = -30387 #kNSpNoHostVolunteersErr +kNSpNoGroupsErr = -30386 #kNSpNoGroupsErr +kNSpNoPlayersErr = -30385 #kNSpNoPlayersErr +kNSpInvalidGroupIDErr = -30384 #kNSpInvalidGroupIDErr +kNSpInvalidPlayerIDErr = -30383 #kNSpInvalidPlayerIDErr +kNSpNameRequiredErr = -30382 #kNSpNameRequiredErr +kNSpFeatureNotImplementedErr = -30381 #kNSpFeatureNotImplementedErr +kNSpAddressInUseErr = -30380 #kNSpAddressInUseErr +kNSpRemovePlayerFailedErr = -30379 #kNSpRemovePlayerFailedErr +kNSpFreeQExhaustedErr = -30378 #kNSpFreeQExhaustedErr +kNSpInvalidAddressErr = -30377 #kNSpInvalidAddressErr +kNSpNotAdvertisingErr = -30376 #kNSpNotAdvertisingErr +kNSpAlreadyAdvertisingErr = -30374 #kNSpAlreadyAdvertisingErr +kNSpMemAllocationErr = -30373 #kNSpMemAllocationErr +kNSpOTVersionTooOldErr = -30371 #kNSpOTVersionTooOldErr +kNSpOTNotPresentErr = -30370 #kNSpOTNotPresentErr +kNSpInvalidParameterErr = -30369 #kNSpInvalidParameterErr +kNSpInvalidGameRefErr = -30367 #kNSpInvalidGameRefErr +kNSpProtocolNotAvailableErr = -30366 #kNSpProtocolNotAvailableErr +kNSpHostFailedErr = -30365 #kNSpHostFailedErr +kNSpPipeFullErr = -30364 #kNSpPipeFullErr +kNSpTopologyNotSupportedErr = -30362 #kNSpTopologyNotSupportedErr +kNSpAlreadyInitializedErr = -30361 #kNSpAlreadyInitializedErr +kNSpInitializationFailedErr = -30360 #kNSpInitializationFailedErr +kSSpScaleToZeroErr = -30344 #kSSpScaleToZeroErr +kSSpParallelUpVectorErr = -30343 #kSSpParallelUpVectorErr +kSSpCantInstallErr = -30342 #kSSpCantInstallErr +kSSpVersionErr = -30341 #kSSpVersionErr +kSSpInternalErr = -30340 #kSSpInternalErr +kALMInternalErr = -30049 #kALMInternalErr +kALMGroupNotFoundErr = -30048 #kALMGroupNotFoundErr +kALMNoSuchModuleErr = -30047 #kALMNoSuchModuleErr +kALMModuleCommunicationErr = -30046 #kALMModuleCommunicationErr +kALMDuplicateModuleErr = -30045 #kALMDuplicateModuleErr +kALMInstallationErr = -30044 #kALMInstallationErr +kALMDeferSwitchErr = -30043 #kALMDeferSwitchErr +kALMRebootFlagsLevelErr = -30042 #kALMRebootFlagsLevelErr +kLocalesDefaultDisplayStatus = -30029 #Requested display locale unavailable, used default +kLocalesTableFormatErr = -30002 #kLocalesTableFormatErr +kLocalesBufferTooSmallErr = -30001 #kLocalesBufferTooSmallErr +kFNSNameNotFoundErr = -29589 #The name with the requested paramters was not found +kFNSBadFlattenedSizeErr = -29587 #flattened size didn't match input or was too small +kFNSInsufficientDataErr = -29586 #insufficient data for the operation +kFNSMismatchErr = -29585 #reference didn't match or wasn't found in profile +kFNSDuplicateReferenceErr = -29584 #the ref. being added is already in the profile +kFNSBadProfileVersionErr = -29583 #profile version is out of known range +kFNSInvalidProfileErr = -29582 #profile is NULL or otherwise bad +kFNSBadReferenceVersionErr = -29581 #ref. version is out of known range +kFNSInvalidReferenceErr = -29580 #ref. was NULL or otherwise bad +kCollateInvalidCollationRef = -29507 #kCollateInvalidCollationRef +kCollateBufferTooSmall = -29506 #kCollateBufferTooSmall +kCollateInvalidChar = -29505 #kCollateInvalidChar +kCollatePatternNotFoundErr = -29504 #kCollatePatternNotFoundErr +kCollateUnicodeConvertFailedErr = -29503 #kCollateUnicodeConvertFailedErr +kCollateMissingUnicodeTableErr = -29502 #kCollateMissingUnicodeTableErr +kCollateInvalidOptions = -29501 #kCollateInvalidOptions +kCollateAttributesNotFoundErr = -29500 #kCollateAttributesNotFoundErr +kMPInvalidIDErr = -29299 #kMPInvalidIDErr +kMPInsufficientResourcesErr = -29298 #kMPInsufficientResourcesErr +kMPTaskAbortedErr = -29297 #kMPTaskAbortedErr +kMPTimeoutErr = -29296 #kMPTimeoutErr +kMPDeletedErr = -29295 #kMPDeletedErr +kMPBlueBlockingErr = -29293 #kMPBlueBlockingErr +kMPTaskStoppedErr = -29292 #A convention used with MPThrowException. +kMPTaskBlockedErr = -29291 #kMPTaskBlockedErr +kMPTaskCreatedErr = -29290 #kMPTaskCreatedErr +kMPProcessTerminatedErr = -29289 #kMPProcessTerminatedErr +kMPProcessCreatedErr = -29288 #kMPProcessCreatedErr +kMPPrivilegedErr = -29276 #kMPPrivilegedErr +kMPIterationEndErr = -29275 #kMPIterationEndErr +kUCTextBreakLocatorMissingType = -25341 #Unicode text break error +kUCOutputBufferTooSmall = -25340 #Output buffer too small for Unicode string result +errKCCreateChainFailed = -25318 #errKCCreateChainFailed +errKCDataNotModifiable = -25317 #errKCDataNotModifiable +errKCDataNotAvailable = -25316 #errKCDataNotAvailable +errKCInteractionRequired = -25315 #errKCInteractionRequired +errKCNoPolicyModule = -25314 #errKCNoPolicyModule +errKCNoCertificateModule = -25313 #errKCNoCertificateModule +errKCNoStorageModule = -25312 #errKCNoStorageModule +errKCKeySizeNotAllowed = -25311 #errKCKeySizeNotAllowed +errKCWrongKCVersion = -25310 #errKCWrongKCVersion +errKCReadOnlyAttr = -25309 #errKCReadOnlyAttr +errKCInteractionNotAllowed = -25308 #errKCInteractionNotAllowed +errKCNoDefaultKeychain = -25307 #errKCNoDefaultKeychain +errKCNoSuchClass = -25306 #errKCNoSuchClass +errKCInvalidSearchRef = -25305 #errKCInvalidSearchRef +errKCInvalidItemRef = -25304 #errKCInvalidItemRef +errKCNoSuchAttr = -25303 #errKCNoSuchAttr +errKCDataTooLarge = -25302 #errKCDataTooLarge +errKCBufferTooSmall = -25301 #errKCBufferTooSmall +errKCItemNotFound = -25300 #errKCItemNotFound +errKCDuplicateItem = -25299 #errKCDuplicateItem +errKCInvalidCallback = -25298 #errKCInvalidCallback +errKCDuplicateCallback = -25297 #errKCDuplicateCallback +errKCDuplicateKeychain = -25296 #errKCDuplicateKeychain +errKCInvalidKeychain = -25295 #errKCInvalidKeychain +errKCNoSuchKeychain = -25294 #errKCNoSuchKeychain +errKCAuthFailed = -25293 #errKCAuthFailed +errKCReadOnly = -25292 #errKCReadOnly +errKCNotAvailable = -25291 #errKCNotAvailable +printerStatusOpCodeNotSupportedErr = -25280 #printerStatusOpCodeNotSupportedErr +kTXNOutsideOfFrameErr = -22018 #kTXNOutsideOfFrameErr +kTXNOutsideOfLineErr = -22017 #kTXNOutsideOfLineErr +kTXNATSUIIsNotInstalledErr = -22016 #kTXNATSUIIsNotInstalledErr +kTXNDataTypeNotAllowedErr = -22015 #kTXNDataTypeNotAllowedErr +kTXNCopyNotAllowedInEchoModeErr = -22014 #kTXNCopyNotAllowedInEchoModeErr +kTXNCannotTurnTSMOffWhenUsingUnicodeErr = -22013 #kTXNCannotTurnTSMOffWhenUsingUnicodeErr +kTXNAlreadyInitializedErr = -22012 #kTXNAlreadyInitializedErr +kTXNInvalidRunIndex = -22011 #kTXNInvalidRunIndex +kTXNSomeOrAllTagsInvalidForRunErr = -22010 #kTXNSomeOrAllTagsInvalidForRunErr +kTXNAttributeTagInvalidForRunErr = -22009 #dataValue is set to this per invalid tag +kTXNNoMatchErr = -22008 #kTXNNoMatchErr +kTXNRunIndexOutofBoundsErr = -22007 #kTXNRunIndexOutofBoundsErr +kTXNCannotSetAutoIndentErr = -22006 #kTXNCannotSetAutoIndentErr +kTXNBadDefaultFileTypeWarning = -22005 #kTXNBadDefaultFileTypeWarning +kTXNUserCanceledOperationErr = -22004 #kTXNUserCanceledOperationErr +kTXNIllegalToCrossDataBoundariesErr = -22003 #kTXNIllegalToCrossDataBoundariesErr +kTXNInvalidFrameIDErr = -22002 #kTXNInvalidFrameIDErr +kTXNCannotAddFrameErr = -22001 #kTXNCannotAddFrameErr +kTXNEndIterationErr = -22000 #kTXNEndIterationErr +invalidIndexErr = -20002 #The recordIndex parameter is not valid. +recordDataTooBigErr = -20001 #The record data is bigger than buffer size (1024 bytes). +unknownInsertModeErr = -20000 #There is no such an insert mode. +kModemScriptMissing = -14002 #kModemScriptMissing +kModemPreferencesMissing = -14001 #kModemPreferencesMissing +kModemOutOfMemory = -14000 #kModemOutOfMemory +kHIDBaseError = -13950 #kHIDBaseError +kHIDNullStateErr = -13949 #kHIDNullStateErr +kHIDBufferTooSmallErr = -13948 #kHIDBufferTooSmallErr +kHIDValueOutOfRangeErr = -13947 #kHIDValueOutOfRangeErr +kHIDUsageNotFoundErr = -13946 #kHIDUsageNotFoundErr +kHIDNotValueArrayErr = -13945 #kHIDNotValueArrayErr +kHIDInvalidPreparsedDataErr = -13944 #kHIDInvalidPreparsedDataErr +kHIDIncompatibleReportErr = -13943 #kHIDIncompatibleReportErr +kHIDBadLogPhysValuesErr = -13942 #kHIDBadLogPhysValuesErr +kHIDInvalidReportTypeErr = -13941 #kHIDInvalidReportTypeErr +kHIDInvalidReportLengthErr = -13940 #kHIDInvalidReportLengthErr +kHIDNullPointerErr = -13939 #kHIDNullPointerErr +kHIDBadParameterErr = -13938 #kHIDBadParameterErr +kHIDNotEnoughMemoryErr = -13937 #kHIDNotEnoughMemoryErr +kHIDEndOfDescriptorErr = -13936 #kHIDEndOfDescriptorErr +kHIDUsagePageZeroErr = -13935 #kHIDUsagePageZeroErr +kHIDBadLogicalMinimumErr = -13934 #kHIDBadLogicalMinimumErr +kHIDBadLogicalMaximumErr = -13933 #kHIDBadLogicalMaximumErr +kHIDInvertedLogicalRangeErr = -13932 #kHIDInvertedLogicalRangeErr +kHIDInvertedPhysicalRangeErr = -13931 #kHIDInvertedPhysicalRangeErr +kHIDUnmatchedUsageRangeErr = -13930 #kHIDUnmatchedUsageRangeErr +kHIDInvertedUsageRangeErr = -13929 #kHIDInvertedUsageRangeErr +kHIDUnmatchedStringRangeErr = -13928 #kHIDUnmatchedStringRangeErr +kHIDUnmatchedDesignatorRangeErr = -13927 #kHIDUnmatchedDesignatorRangeErr +kHIDReportSizeZeroErr = -13926 #kHIDReportSizeZeroErr +kHIDReportCountZeroErr = -13925 #kHIDReportCountZeroErr +kHIDReportIDZeroErr = -13924 #kHIDReportIDZeroErr +kHIDInvalidRangePageErr = -13923 #kHIDInvalidRangePageErr +kHIDDeviceNotReady = -13910 #The device is still initializing, try again later +kHIDVersionIncompatibleErr = -13909 #kHIDVersionIncompatibleErr +debuggingNoMatchErr = -13887 #debugging component or option not found at this index +debuggingNoCallbackErr = -13886 #debugging component has no callback +debuggingInvalidNameErr = -13885 #componentName or optionName is invalid (NULL) +debuggingInvalidOptionErr = -13884 #optionSelectorNum is not registered +debuggingInvalidSignatureErr = -13883 #componentSignature not registered +debuggingDuplicateOptionErr = -13882 #optionSelectorNum already registered +debuggingDuplicateSignatureErr = -13881 #componentSignature already registered +debuggingExecutionContextErr = -13880 #routine cannot be called at this time +kBridgeSoftwareRunningCantSleep = -13038 #kBridgeSoftwareRunningCantSleep +kNoSuchPowerSource = -13020 #kNoSuchPowerSource +kProcessorTempRoutineRequiresMPLib2 = -13014 #kProcessorTempRoutineRequiresMPLib2 +kCantReportProcessorTemperatureErr = -13013 #kCantReportProcessorTemperatureErr +kPowerMgtRequestDenied = -13010 #kPowerMgtRequestDenied +kPowerMgtMessageNotHandled = -13009 #kPowerMgtMessageNotHandled +kPowerHandlerNotFoundForProcErr = -13008 #kPowerHandlerNotFoundForProcErr +kPowerHandlerNotFoundForDeviceErr = -13007 #kPowerHandlerNotFoundForDeviceErr +kPowerHandlerExistsForDeviceErr = -13006 #kPowerHandlerExistsForDeviceErr +pmRecvEndErr = -13005 #during receive, pmgr did not finish hs configured for this connection +pmRecvStartErr = -13004 #during receive, pmgr did not start hs +pmSendEndErr = -13003 #during send, pmgr did not finish hs +pmSendStartErr = -13002 #during send, pmgr did not start hs +pmReplyTOErr = -13001 #Timed out waiting for reply +pmBusyErr = -13000 #Power Mgr never ready to start handshake +pictureDataErr = -11005 #the picture data was invalid +colorsRequestedErr = -11004 #the number of colors requested was illegal +cantLoadPickMethodErr = -11003 #unable to load the custom pick proc +pictInfoVerbErr = -11002 #the passed verb was invalid +pictInfoIDErr = -11001 #the internal consistancy check for the PictInfoID is wrong +pictInfoVersionErr = -11000 #wrong version of the PictInfo structure +errTaskNotFound = -10780 #no task with that task id exists +telNotEnoughdspBW = -10116 #not enough real-time for allocation +telBadSampleRate = -10115 #incompatible sample rate +telBadSWErr = -10114 #Software not installed properly +telDetAlreadyOn = -10113 #detection is already turned on +telAutoAnsNotOn = -10112 #autoAnswer in not turned on +telValidateFailed = -10111 #telValidate failed +telBadProcID = -10110 #invalid procID +telDeviceNotFound = -10109 #device not found +telBadCodeResource = -10108 #code resource not found +telInitFailed = -10107 #initialization failed +telNoCommFolder = -10106 #Communications/Extensions € not found +telUnknownErr = -10103 #unable to set config +telNoSuchTool = -10102 #unable to find tool with name specified +telBadFunction = -10091 #bad msgCode specified +telPBErr = -10090 #parameter block error, bad format +telCANotDeflectable = -10082 #CA not "deflectable" +telCANotRejectable = -10081 #CA not "rejectable" +telCANotAcceptable = -10080 #CA not "acceptable" +telTermNotOpen = -10072 #terminal not opened via TELOpenTerm +telStillNeeded = -10071 #terminal driver still needed by someone else +telAlreadyOpen = -10070 #terminal already open +telNoCallbackRef = -10064 #no call back reference was specified, but is required +telDisplayModeNotSupp = -10063 #display mode not supported by tool +telBadDisplayMode = -10062 #bad display mode specified +telFwdTypeNotSupp = -10061 #forward type not supported by tool +telDNTypeNotSupp = -10060 #DN type not supported by tool +telBadRate = -10059 #bad rate specified +telBadBearerType = -10058 #bad bearerType specified +telBadSelect = -10057 #unable to select or deselect DN +telBadParkID = -10056 #bad park id specified +telBadPickupGroupID = -10055 #bad pickup group ID specified +telBadFwdType = -10054 #bad fwdType specified +telBadFeatureID = -10053 #bad feature ID specified +telBadIntercomID = -10052 #bad intercom ID specified +telBadPageID = -10051 #bad page ID specified +telBadDNType = -10050 #DN type invalid +telConfLimitExceeded = -10047 #attempt to exceed switch conference limits +telCBErr = -10046 #call back feature not set previously +telTransferRej = -10045 #transfer request rejected +telTransferErr = -10044 #transfer not prepared +telConfRej = -10043 #conference request was rejected +telConfErr = -10042 #conference was not prepared +telConfNoLimit = -10041 #no limit was specified but required +telConfLimitErr = -10040 #limit specified is too high for this configuration +telFeatNotSupp = -10033 #feature program call not supported by this tool +telFeatActive = -10032 #feature already active +telFeatNotAvail = -10031 #feature subscribed but not available +telFeatNotSub = -10030 #feature not subscribed +errAEPropertiesClash = -10025 #illegal combination of properties settings for Set Data, make new, or duplicate +errAECantPutThatThere = -10024 #in make new, duplicate, etc. class can't be an element of container +errAENotAnEnumMember = -10023 #enumerated value in SetData is not allowed for this property +telIntExtNotSupp = -10022 #internal external type not supported by this tool +telBadIntExt = -10021 #bad internal external error +telStateNotSupp = -10020 #device state not supported by tool +telBadStateErr = -10019 #bad device state specified +telIndexNotSupp = -10018 #index not supported by this tool +telBadIndex = -10017 #bad index specified +telAPattNotSupp = -10016 #alerting pattern not supported by tool +telBadAPattErr = -10015 #bad alerting pattern specified +telVTypeNotSupp = -10014 #volume type not supported by this tool +telBadVTypeErr = -10013 #bad volume type error +telBadLevelErr = -10012 #bad volume level setting +telHTypeNotSupp = -10011 #hook type not supported by this tool +telBadHTypeErr = -10010 #bad hook type specified +errAECantSupplyType = -10009 #errAECantSupplyType +telNoOpenErr = -10008 #unable to open terminal +telNoMemErr = -10007 #no memory to allocate handle +errOSACantAssign = -10006 #Signaled when an object cannot be set in a container. +telBadProcErr = -10005 #bad msgProc specified +telBadHandErr = -10004 #bad handle specified +OSAIllegalAssign = -10003 #Signaled when an object can never be set in a container +telBadDNErr = -10002 #TELDNHandle not found or invalid +telBadTermErr = -10001 #invalid TELHandle or handle not found +errAEEventFailed = -10000 #errAEEventFailed +cannotMoveAttachedController = -9999 #cannotMoveAttachedController +controllerHasFixedHeight = -9998 #controllerHasFixedHeight +cannotSetWidthOfAttachedController = -9997 #cannotSetWidthOfAttachedController +controllerBoundsNotExact = -9996 #controllerBoundsNotExact +editingNotAllowed = -9995 #editingNotAllowed +badControllerHeight = -9994 #badControllerHeight +deviceCantMeetRequest = -9408 #deviceCantMeetRequest +seqGrabInfoNotAvailable = -9407 #seqGrabInfoNotAvailable +badSGChannel = -9406 #badSGChannel +couldntGetRequiredComponent = -9405 #couldntGetRequiredComponent +notEnoughDiskSpaceToGrab = -9404 #notEnoughDiskSpaceToGrab +notEnoughMemoryToGrab = -9403 #notEnoughMemoryToGrab +cantDoThatInCurrentMode = -9402 #cantDoThatInCurrentMode +grabTimeComplete = -9401 #grabTimeComplete +noDeviceForChannel = -9400 #noDeviceForChannel +kNoCardBusCISErr = -9109 #No valid CIS exists for this CardBus card +kNotZVCapableErr = -9108 #This socket does not support Zoomed Video +kCardPowerOffErr = -9107 #Power to the card has been turned off +kAttemptDupCardEntryErr = -9106 #The Enabler was asked to create a duplicate card entry +kAlreadySavedStateErr = -9105 #The state has been saved on previous call +kTooManyIOWindowsErr = -9104 #device requested more than one I/O window +kNotReadyErr = -9103 #PC Card failed to go ready +kClientRequestDenied = -9102 #CS Clients should return this code inorder to +kNoCompatibleNameErr = -9101 #There is no compatible driver name for this device +kNoEnablerForCardErr = -9100 #No Enablers were found that can support the card +kNoCardEnablersFoundErr = -9099 #No Enablers were found +kUnsupportedCardErr = -9098 #Card not supported by generic enabler +kNoClientTableErr = -9097 #The client table has not be initialized yet +kNoMoreInterruptSlotsErr = -9096 #All internal Interrupt slots are in use +kNoMoreTimerClientsErr = -9095 #All timer callbacks are in use +kNoIOWindowRequestedErr = -9094 #Request I/O window before calling configuration +kBadCustomIFIDErr = -9093 #Custom interface ID is invalid +kBadTupleDataErr = -9092 #Data in tuple is invalid +kInvalidCSClientErr = -9091 #Card Services ClientID is not registered +kUnsupportedVsErr = -9090 #Unsupported Voltage Sense +kInvalidDeviceNumber = -9089 #kInvalidDeviceNumber +kPostCardEventErr = -9088 #_PCCSLPostCardEvent failed and dropped an event +kCantConfigureCardErr = -9087 #kCantConfigureCardErr +kPassCallToChainErr = -9086 #kPassCallToChainErr +kCardBusCardErr = -9085 #kCardBusCardErr +k16BitCardErr = -9084 #k16BitCardErr +kBadDeviceErr = -9083 #kBadDeviceErr +kBadLinkErr = -9082 #kBadLinkErr +kInvalidRegEntryErr = -9081 #kInvalidRegEntryErr +kNoCardSevicesSocketsErr = -9080 #kNoCardSevicesSocketsErr +kOutOfResourceErr = -9079 #Card Services has exhausted the resource +kNoMoreItemsErr = -9078 #there are no more of the requested item +kInUseErr = -9077 #requested resource is being used by a client +kConfigurationLockedErr = -9076 #a configuration has already been locked +kWriteProtectedErr = -9075 #media is write-protected +kBusyErr = -9074 #unable to process request at this time - try later +kUnsupportedModeErr = -9073 #mode is not supported +kUnsupportedFunctionErr = -9072 #function is not supported by this implementation +kNoCardErr = -9071 #no PC card in the socket +kGeneralFailureErr = -9070 #an undefined error has occurred +kWriteFailureErr = -9069 #unable to complete write request +kReadFailureErr = -9068 #unable to complete read request +kBadSpeedErr = -9067 #specified speed is unavailable +kBadCISErr = -9066 #CIS on card is invalid +kBadHandleErr = -9065 #clientHandle is invalid +kBadArgsErr = -9064 #values in argument packet are invalid +kBadArgLengthErr = -9063 #ArgLength argument is invalid +kBadWindowErr = -9062 #specified window is invalid +kBadVppErr = -9061 #specified Vpp1 or Vpp2 power level index is invalid +kBadVccErr = -9060 #specified Vcc power level index is invalid +kBadTypeErr = -9059 #specified window or interface type is invalid +kBadSocketErr = -9058 #specified logical or physical socket number is invalid +kBadSizeErr = -9057 #specified size is invalid +kBadPageErr = -9056 #specified page is invalid +kBadOffsetErr = -9055 #specified PC card memory array offset is invalid +kBadIRQErr = -9054 #specified IRQ level is invalid +kBadEDCErr = -9053 #specified EDC generator specified is invalid +kBadBaseErr = -9052 #specified base system memory address is invalid +kBadAttributeErr = -9051 #specified attributes field value is invalid +kBadAdapterErr = -9050 #invalid adapter number +codecOffscreenFailedPleaseRetryErr = -8992 #codecOffscreenFailedPleaseRetryErr +lockPortBitsWrongGDeviceErr = -8991 #lockPortBitsWrongGDeviceErr +directXObjectAlreadyExists = -8990 #directXObjectAlreadyExists +codecDroppedFrameErr = -8989 #returned from ImageCodecDrawBand +codecOffscreenFailedErr = -8988 #codecOffscreenFailedErr +codecNeedAccessKeyErr = -8987 #codec needs password in order to decompress +codecParameterDialogConfirm = -8986 #codecParameterDialogConfirm +lockPortBitsSurfaceLostErr = -8985 #lockPortBitsSurfaceLostErr +lockPortBitsBadPortErr = -8984 #lockPortBitsBadPortErr +lockPortBitsWindowClippedErr = -8983 #lockPortBitsWindowClippedErr +lockPortBitsWindowResizedErr = -8982 #lockPortBitsWindowResizedErr +lockPortBitsWindowMovedErr = -8981 #lockPortBitsWindowMovedErr +lockPortBitsBadSurfaceErr = -8980 #lockPortBitsBadSurfaceErr +codecNeedToFlushChainErr = -8979 #codecNeedToFlushChainErr +codecDisabledErr = -8978 #codec disabled itself -- pass codecFlagReenable to reset +codecNoMemoryPleaseWaitErr = -8977 #codecNoMemoryPleaseWaitErr +codecNothingToBlitErr = -8976 #codecNothingToBlitErr +codecCantQueueErr = -8975 #codecCantQueueErr +codecCantWhenErr = -8974 #codecCantWhenErr +codecOpenErr = -8973 #codecOpenErr +codecConditionErr = -8972 #codecConditionErr +codecExtensionNotFoundErr = -8971 #codecExtensionNotFoundErr +codecDataVersErr = -8970 #codecDataVersErr +codecBadDataErr = -8969 #codecBadDataErr +codecWouldOffscreenErr = -8968 #codecWouldOffscreenErr +codecAbortErr = -8967 #codecAbortErr +codecSpoolErr = -8966 #codecSpoolErr +codecImageBufErr = -8965 #codecImageBufErr +codecScreenBufErr = -8964 #codecScreenBufErr +codecSizeErr = -8963 #codecSizeErr +codecUnimpErr = -8962 #codecUnimpErr +noCodecErr = -8961 #noCodecErr +codecErr = -8960 #codecErr +kIllegalClockValueErr = -8852 #kIllegalClockValueErr +kUTCOverflowErr = -8851 #kUTCOverflowErr +kUTCUnderflowErr = -8850 #kUTCUnderflowErr +kATSULastErr = -8809 #The last ATSUI error code. +kATSULineBreakInWord = -8808 #This is not an error code but is returned by ATSUBreakLine to +kATSUCoordinateOverflowErr = -8807 #Used to indicate the coordinates provided to an ATSUI routine caused +kATSUNoFontScalerAvailableErr = -8806 #Used when no font scaler is available for the font passed +kATSUNoFontCmapAvailableErr = -8805 #Used when no CMAP table can be accessed or synthesized for the +kATSULowLevelErr = -8804 #Used when an error was encountered within the low level ATS +kATSUQuickDrawTextErr = -8803 #Used when QuickDraw Text encounters an error rendering or measuring +kATSUNoStyleRunsAssignedErr = -8802 #Used when an attempt was made to measure, highlight or draw +kATSUNotSetErr = -8801 #Used when the client attempts to retrieve an attribute, +kATSUInvalidCacheErr = -8800 #Used when an attempt was made to read in style data +kATSUInvalidAttributeTagErr = -8799 #Used when an attempt was made to use a tag value that +kATSUInvalidAttributeSizeErr = -8798 #Used when an attempt was made to use an attribute with a +kATSUInvalidAttributeValueErr = -8797 #Used when an attempt was made to use an attribute with +kATSUInvalidFontErr = -8796 #Used when an attempt was made to use an invalid font ID. +kATSUNoCorrespondingFontErr = -8795 #This value is retrned by font ID conversion +kATSUFontsNotMatched = -8794 #This value is returned by ATSUMatchFontsToText() +kATSUFontsMatched = -8793 #This is not an error code but is returned by +kATSUInvalidTextRangeErr = -8792 #An attempt was made to extract information +kATSUInvalidStyleErr = -8791 #An attempt was made to use a ATSUStyle which +kATSUInvalidTextLayoutErr = -8790 #An attempt was made to use a ATSUTextLayout +kTECOutputBufferFullStatus = -8785 #output buffer has no room for conversion of next input text element (partial conversion) +kTECNeedFlushStatus = -8784 #kTECNeedFlushStatus +kTECUsedFallbacksStatus = -8783 #kTECUsedFallbacksStatus +kTECItemUnavailableErr = -8771 #item (e.g. name) not available for specified region (& encoding if relevant) +kTECGlobalsUnavailableErr = -8770 #globals have already been deallocated (premature TERM) +unicodeChecksumErr = -8769 #unicodeChecksumErr +unicodeNoTableErr = -8768 #unicodeNoTableErr +unicodeVariantErr = -8767 #unicodeVariantErr +unicodeFallbacksErr = -8766 #unicodeFallbacksErr +unicodePartConvertErr = -8765 #unicodePartConvertErr +unicodeBufErr = -8764 #unicodeBufErr +unicodeCharErr = -8763 #unicodeCharErr +unicodeElementErr = -8762 #unicodeElementErr +unicodeNotFoundErr = -8761 #unicodeNotFoundErr +unicodeTableFormatErr = -8760 #unicodeTableFormatErr +unicodeDirectionErr = -8759 #unicodeDirectionErr +unicodeContextualErr = -8758 #unicodeContextualErr +unicodeTextEncodingDataErr = -8757 #unicodeTextEncodingDataErr +kTECDirectionErr = -8756 #direction stack overflow, etc. +kTECIncompleteElementErr = -8755 #text element may be incomplete or is too long for internal buffers +kTECUnmappableElementErr = -8754 #kTECUnmappableElementErr +kTECPartialCharErr = -8753 #input buffer ends in the middle of a multibyte character, conversion stopped +kTECBadTextRunErr = -8752 #kTECBadTextRunErr +kTECArrayFullErr = -8751 #supplied name buffer or TextRun, TextEncoding, or UnicodeMapping array is too small +kTECBufferBelowMinimumSizeErr = -8750 #output buffer too small to allow processing of first input text element +kTECNoConversionPathErr = -8749 #kTECNoConversionPathErr +kTECCorruptConverterErr = -8748 #invalid converter object reference +kTECTableFormatErr = -8747 #kTECTableFormatErr +kTECTableChecksumErr = -8746 #kTECTableChecksumErr +kTECMissingTableErr = -8745 #kTECMissingTableErr +kTextUndefinedElementErr = -8740 #text conversion errors +kTextMalformedInputErr = -8739 #in DBCS, for example, high byte followed by invalid low byte +kTextUnsupportedEncodingErr = -8738 #specified encoding not supported for this operation +kRANotEnabled = -7139 #kRANotEnabled +kRACallBackFailed = -7138 #kRACallBackFailed +kRADuplicateIPAddr = -7137 #kRADuplicateIPAddr +kRANCPRejectedbyPeer = -7136 #kRANCPRejectedbyPeer +kRAExtAuthenticationFailed = -7135 #kRAExtAuthenticationFailed +kRAATalkInactive = -7134 #kRAATalkInactive +kRAPeerNotResponding = -7133 #kRAPeerNotResponding +kRAPPPPeerDisconnected = -7132 #kRAPPPPeerDisconnected +kRAPPPUserDisconnected = -7131 #kRAPPPUserDisconnected +kRAPPPNegotiationFailed = -7130 #kRAPPPNegotiationFailed +kRAPPPAuthenticationFailed = -7129 #kRAPPPAuthenticationFailed +kRAPPPProtocolRejected = -7128 #kRAPPPProtocolRejected +dcmBufferOverflowErr = -7127 #data is larger than buffer size +kRANotPrimaryInterface = -7126 #when IPCP is not primary TCP/IP intf. +kRATCPIPNotConfigured = -7125 #TCP/IP not configured, could be loaded +kRATCPIPInactive = -7124 #TCP/IP inactive, cannot be loaded +kRARemoteAccessNotReady = -7123 #kRARemoteAccessNotReady +kRAInitOpenTransportFailed = -7122 #kRAInitOpenTransportFailed +dcmProtectedErr = -7121 #need keyword to use dictionary +kRAUserPwdEntryRequired = -7120 #kRAUserPwdEntryRequired +kRAUserPwdChangeRequired = -7119 #kRAUserPwdChangeRequired +dcmBadFindMethodErr = -7118 #no such find method supported +kRAInvalidSerialProtocol = -7117 #kRAInvalidSerialProtocol +kRAInvalidPortState = -7116 #kRAInvalidPortState +dcmBadKeyErr = -7115 #bad key information +kRAPortBusy = -7114 #kRAPortBusy +kRAInstallationDamaged = -7113 #kRAInstallationDamaged +dcmBadFieldTypeErr = -7112 #no such field type supported +dcmBadFieldInfoErr = -7111 #incomplete information +dcmNecessaryFieldErr = -7110 #lack required/identify field +dcmDupRecordErr = -7109 #same record already exist +kRANotConnected = -7108 #kRANotConnected +dcmBlockFullErr = -7107 #dictionary block full +kRAMissingResources = -7106 #kRAMissingResources +dcmDictionaryBusyErr = -7105 #dictionary is busy +dcmDictionaryNotOpenErr = -7104 #dictionary not opened +dcmPermissionErr = -7103 #invalid permission +dcmBadDictionaryErr = -7102 #invalid dictionary +dcmNotDictionaryErr = -7101 #not dictionary +kRAInvalidParameter = -7100 #kRAInvalidParameter +laEngineNotFoundErr = -7000 #can't find the engine +laPropertyErr = -6999 #Error in properties +kUSBUnknownDeviceErr = -6998 #device ref not recognised +laPropertyIsReadOnlyErr = -6997 #the property is read only +laPropertyUnknownErr = -6996 #the property is unknown to this environment +laPropertyValueErr = -6995 #Invalid property value +laDictionaryTooManyErr = -6994 #too many dictionaries +laDictionaryUnknownErr = -6993 #can't use this dictionary with this environment +laDictionaryNotOpenedErr = -6992 #the dictionary is not opened +laTextOverFlowErr = -6991 #text is too long +laFailAnalysisErr = -6990 #analysis failed +laNoMoreMorphemeErr = -6989 #nothing to read +laInvalidPathErr = -6988 #path is not correct +kUSBNotHandled = -6987 #Notification was not handled (same as NotFound) +laEnvironmentNotFoundErr = -6986 #can't fint the specified environment +laEnvironmentBusyErr = -6985 #specified environment is used +laTooSmallBufferErr = -6984 #output buffer is too small to store any result +kUSBFlagsError = -6983 #Unused flags not zeroed +kUSBAbortedError = -6982 #Pipe aborted +kUSBNoBandwidthError = -6981 #Not enough bandwidth available +kUSBPipeIdleError = -6980 #Pipe is Idle, it will not accept transactions +kUSBPipeStalledError = -6979 #Pipe has stalled, error needs to be cleared +kUSBUnknownInterfaceErr = -6978 #Interface ref not recognised +kUSBDeviceBusy = -6977 #Device is already being configured +kUSBDevicePowerProblem = -6976 #Device has a power problem +kUSBInvalidBuffer = -6975 #bad buffer, usually nil +kUSBDeviceSuspended = -6974 #Device is suspended +kUSBDeviceNotSuspended = -6973 #device is not suspended for resume +kUSBDeviceDisconnected = -6972 #Disconnected during suspend or reset +kUSBTimedOut = -6971 #Transaction timed out. +kUSBQueueAborted = -6970 #Pipe zero stall cleared. +kUSBPortDisabled = -6969 #The port you are attached to is disabled, use USBDeviceReset. +kUSBBadDispatchTable = -6950 #Improper driver dispatch table +kUSBUnknownNotification = -6949 #Notification type not defined +kUSBQueueFull = -6948 #Internal queue maxxed +kUSBLinkErr = -6916 #kUSBLinkErr +kUSBCRCErr = -6915 #Pipe stall, bad CRC +kUSBBitstufErr = -6914 #Pipe stall, bitstuffing +kUSBDataToggleErr = -6913 #Pipe stall, Bad data toggle +kUSBEndpointStallErr = -6912 #Device didn't understand +kUSBNotRespondingErr = -6911 #Pipe stall, No device, device hung +kUSBPIDCheckErr = -6910 #Pipe stall, PID CRC error +kUSBWrongPIDErr = -6909 #Pipe stall, Bad or wrong PID +kUSBOverRunErr = -6908 #Packet too large or more data than buffer +kUSBUnderRunErr = -6907 #Less data than buffer +kUSBRes1Err = -6906 #kUSBRes1Err +kUSBRes2Err = -6905 #kUSBRes2Err +kUSBBufOvrRunErr = -6904 #Host hardware failure on data in, PCI busy? +kUSBBufUnderRunErr = -6903 #Host hardware failure on data out, PCI busy? +kUSBNotSent1Err = -6902 #Transaction not sent +kUSBNotSent2Err = -6901 #Transaction not sent +kDMFoundErr = -6232 #Did not proceed because we found an item +kDMMainDisplayCannotMoveErr = -6231 #Trying to move main display (or a display mirrored to it) +kDMDisplayAlreadyInstalledErr = -6230 #Attempt to add an already installed display. +kDMDisplayNotFoundErr = -6229 #Could not find item (will someday remove). +kDMDriverNotDisplayMgrAwareErr = -6228 #Video Driver does not support display manager. +kDMSWNotInitializedErr = -6227 #Required software not initialized (eg windowmanager or display mgr). +kSysSWTooOld = -6226 #Missing critical pieces of System Software. +kDMMirroringNotOn = -6225 #Returned by all calls that need mirroring to be on to do their thing. +kDMCantBlock = -6224 #Mirroring is already on, canÕt Block now (call DMUnMirror() first). +kDMMirroringBlocked = -6223 #DMBlockMirroring() has been called. +kDMWrongNumberOfDisplays = -6222 #Can only handle 2 displays for now. +kDMMirroringOnAlready = -6221 #Returned by all calls that need mirroring to be off to do their thing. +kDMGenErr = -6220 #Unexpected Error +kQTSSUnknownErr = -6150 #kQTSSUnknownErr +collectionVersionErr = -5753 #collectionVersionErr +collectionIndexRangeErr = -5752 #collectionIndexRangeErr +collectionItemNotFoundErr = -5751 #collectionItemNotFoundErr +collectionItemLockedErr = -5750 #collectionItemLockedErr +kNavMissingKindStringErr = -5699 #kNavMissingKindStringErr +kNavInvalidCustomControlMessageErr = -5698 #kNavInvalidCustomControlMessageErr +kNavCustomControlMessageFailedErr = -5697 #kNavCustomControlMessageFailedErr +kNavInvalidSystemConfigErr = -5696 #kNavInvalidSystemConfigErr +kNavWrongDialogClassErr = -5695 #kNavWrongDialogClassErr +kNavWrongDialogStateErr = -5694 #kNavWrongDialogStateErr +dialogNoTimeoutErr = -5640 #dialogNoTimeoutErr +menuInvalidErr = -5623 #menu is invalid +menuItemNotFoundErr = -5622 #specified menu item wasn't found +menuUsesSystemDefErr = -5621 #GetMenuDefinition failed because the menu uses the system MDEF +menuNotFoundErr = -5620 #specified menu or menu ID wasn't found +windowWrongStateErr = -5615 #window is not in a state that is valid for the current action +windowManagerInternalErr = -5614 #something really weird happened inside the window manager +windowAttributesConflictErr = -5613 #passed some attributes that are mutually exclusive +windowAttributeImmutableErr = -5612 #tried to change attributes which can't be changed +errWindowDoesNotFitOnscreen = -5611 #ConstrainWindowToScreen could not make the window fit onscreen +errWindowNotFound = -5610 #returned from FindWindowOfClass +errFloatingWindowsNotInitialized = -5609 #called HideFloatingWindows or ShowFloatingWindows without calling InitFloatingWindows +errWindowsAlreadyInitialized = -5608 #tried to call InitFloatingWindows twice, or called InitWindows and then floating windows +errUserWantsToDragWindow = -5607 #if returned from TrackWindowProxyDrag, you should call DragWindow on the window +errCorruptWindowDescription = -5606 #tried to load a corrupt window description (size or version fields incorrect) +errUnrecognizedWindowClass = -5605 #tried to create a window with a bad WindowClass +errWindowPropertyNotFound = -5604 #tried to get a nonexistent property +errInvalidWindowProperty = -5603 #tried to access a property tag with private creator +errWindowDoesNotHaveProxy = -5602 #tried to do something requiring a proxy to a window which doesnÕt have a proxy +errUnsupportedWindowAttributesForClass = -5601 #tried to create a window with WindowAttributes not supported by the WindowClass +errInvalidWindowPtr = -5600 #tried to pass a bad WindowRef argument +gestaltLocationErr = -5553 #gestalt function ptr wasn't in sysheap +gestaltDupSelectorErr = -5552 #tried to add an entry that already existed +gestaltUndefSelectorErr = -5551 #undefined selector was passed to Gestalt +gestaltUnknownErr = -5550 #value returned if Gestalt doesn't know the answer +envVersTooBig = -5502 #Version bigger than call can handle +envBadVers = -5501 #Version non-positive +envNotPresent = -5500 #returned by glue. +qtsAddressBusyErr = -5421 #qtsAddressBusyErr +qtsConnectionFailedErr = -5420 #qtsConnectionFailedErr +qtsTimeoutErr = -5408 #qtsTimeoutErr +qtsUnknownValueErr = -5407 #qtsUnknownValueErr +qtsTooMuchDataErr = -5406 #qtsTooMuchDataErr +qtsUnsupportedFeatureErr = -5405 #qtsUnsupportedFeatureErr +qtsUnsupportedRateErr = -5404 #qtsUnsupportedRateErr +qtsUnsupportedDataTypeErr = -5403 #qtsUnsupportedDataTypeErr +qtsBadDataErr = -5402 #something is wrong with the data +qtsBadStateErr = -5401 #qtsBadStateErr +qtsBadSelectorErr = -5400 #qtsBadSelectorErr +errIAEndOfTextRun = -5388 #errIAEndOfTextRun +errIATextExtractionErr = -5387 #errIATextExtractionErr +errIAInvalidDocument = -5386 #errIAInvalidDocument +errIACanceled = -5385 #errIACanceled +errIABufferTooSmall = -5384 #errIABufferTooSmall +errIANoMoreItems = -5383 #errIANoMoreItems +errIAParamErr = -5382 #errIAParamErr +errIAAllocationErr = -5381 #errIAAllocationErr +errIAUnknownErr = -5380 #errIAUnknownErr +hrURLNotHandledErr = -5363 #hrURLNotHandledErr +hrUnableToResizeHandleErr = -5362 #hrUnableToResizeHandleErr +hrMiscellaneousExceptionErr = -5361 #hrMiscellaneousExceptionErr +hrHTMLRenderingLibNotInstalledErr = -5360 #hrHTMLRenderingLibNotInstalledErr +errCannotUndo = -5253 #errCannotUndo +errNonContiuousAttribute = -5252 #errNonContiuousAttribute +errUnknownElement = -5251 #errUnknownElement +errReadOnlyText = -5250 #errReadOnlyText +errEmptyScrap = -5249 #errEmptyScrap +errNoHiliteText = -5248 #errNoHiliteText +errOffsetNotOnElementBounday = -5247 #errOffsetNotOnElementBounday +errInvalidRange = -5246 #errInvalidRange +errIteratorReachedEnd = -5245 #errIteratorReachedEnd +errEngineNotFound = -5244 #errEngineNotFound +errAlreadyInImagingMode = -5243 #errAlreadyInImagingMode +errNotInImagingMode = -5242 #errNotInImagingMode +errMarginWilllNotFit = -5241 #errMarginWilllNotFit +errUnknownAttributeTag = -5240 #errUnknownAttributeTag +afpSameNodeErr = -5063 #An Attempt was made to connect to a file server running on the same machine +afpAlreadyMounted = -5062 #The volume is already mounted +afpCantMountMoreSrvre = -5061 #The Maximum number of server connections has been reached +afpBadDirIDType = -5060 #afpBadDirIDType +afpCallNotAllowed = -5048 #The server knows what you wanted to do, but won't let you do it just now +afpAlreadyLoggedInErr = -5047 #User has been authenticated but is already logged in from another machine (and that's not allowed on this server) +afpPwdPolicyErr = -5046 #Password does not conform to servers password policy +afpPwdNeedsChangeErr = -5045 #The password needs to be changed +afpInsideTrashErr = -5044 #The folder being shared is inside the trash folder OR the shared folder is being moved into the trash folder +afpInsideSharedErr = -5043 #The folder being shared is inside a shared folder OR the folder contains a shared folder and is being moved into a shared folder +afpPwdExpiredErr = -5042 #The password being used is too old: this requires the user to change the password before log-in can continue +afpPwdTooShortErr = -5041 #The password being set is too short: there is a minimum length that must be met or exceeded +afpPwdSameErr = -5040 #Someone tried to change their password to the same password on a mantadory password change +afpBadIDErr = -5039 #afpBadIDErr +afpSameObjectErr = -5038 #afpSameObjectErr +afpCatalogChanged = -5037 #afpCatalogChanged +afpDiffVolErr = -5036 #afpDiffVolErr +afpIDExists = -5035 #afpIDExists +afpIDNotFound = -5034 #afpIDNotFound +afpContainsSharedErr = -5033 #the folder being shared contains a shared folder +afpObjectLocked = -5032 #Object is M/R/D/W inhibited +afpVolLocked = -5031 #Volume is Read-Only +afpIconTypeError = -5030 #Icon size specified different from existing icon size +afpDirNotFound = -5029 #Unknown directory specified +afpCantRename = -5028 #AFPRename cannot rename volume +afpServerGoingDown = -5027 #Server is shutting down +afpTooManyFilesOpen = -5026 #Maximum open file count reached +afpObjectTypeErr = -5025 #File/Directory specified where Directory/File expected +afpCallNotSupported = -5024 #Unsupported AFP call was made +afpUserNotAuth = -5023 #No AFPLogin call has successfully been made for this session +afpSessClosed = -5022 #Session closed +afpRangeOverlap = -5021 #Some or all of range already locked by same user +afpRangeNotLocked = -5020 #Tried to unlock range that was not locked by user +afpParmErr = -5019 #A specified parameter was out of allowable range +afpObjectNotFound = -5018 #Specified file or directory does not exist +afpObjectExists = -5017 #Specified destination file or directory already exists +afpNoServer = -5016 #Server not responding +afpNoMoreLocks = -5015 #Maximum lock limit reached +afpMiscErr = -5014 #Unexpected error encountered during execution +afpLockErr = -5013 #Some or all of requested range is locked by another user +afpItemNotFound = -5012 #Unknown UserName/UserID or missing comment/APPL entry +afpFlatVol = -5011 #Cannot create directory on specified volume +afpFileBusy = -5010 #Cannot delete an open file +afpEofError = -5009 #Read beyond logical end-of-file +afpDiskFull = -5008 #Insufficient free space on volume for operation +afpDirNotEmpty = -5007 #Cannot delete non-empty directory +afpDenyConflict = -5006 #Specified open/deny modes conflict with current open modes +afpCantMove = -5005 #Move destination is offspring of source, or root was specified +afpBitmapErr = -5004 #Bitmap contained bits undefined for call +afpBadVersNum = -5003 #Unknown AFP protocol version number specified +afpBadUAM = -5002 #Unknown user authentication method specified +afpAuthContinue = -5001 #Further information required to complete AFPLogin call +afpAccessDenied = -5000 #Insufficient access privileges for operation +illegalScrapFlavorSizeErr = -4999 #illegalScrapFlavorSizeErr +illegalScrapFlavorTypeErr = -4998 #illegalScrapFlavorTypeErr +illegalScrapFlavorFlagsErr = -4997 #illegalScrapFlavorFlagsErr +scrapFlavorSizeMismatchErr = -4996 #scrapFlavorSizeMismatchErr +scrapFlavorFlagsMismatchErr = -4995 #scrapFlavorFlagsMismatchErr +nilScrapFlavorDataErr = -4994 #nilScrapFlavorDataErr +noScrapPromiseKeeperErr = -4993 #noScrapPromiseKeeperErr +scrapPromiseNotKeptErr = -4992 #scrapPromiseNotKeptErr +processStateIncorrectErr = -4991 #processStateIncorrectErr +badScrapRefErr = -4990 #badScrapRefErr +duplicateScrapFlavorErr = -4989 #duplicateScrapFlavorErr +internalScrapErr = -4988 #internalScrapErr +coreFoundationUnknownErr = -4960 #coreFoundationUnknownErr +badRoutingSizeErr = -4276 #badRoutingSizeErr +routingNotFoundErr = -4275 #routingNotFoundErr +duplicateRoutingErr = -4274 #duplicateRoutingErr +invalidFolderTypeErr = -4273 #invalidFolderTypeErr +noMoreFolderDescErr = -4272 #noMoreFolderDescErr +duplicateFolderDescErr = -4271 #duplicateFolderDescErr +badFolderDescErr = -4270 #badFolderDescErr +cmCantGamutCheckError = -4217 #Gammut checking not supported by this ColorWorld +cmNamedColorNotFound = -4216 #NamedColor not found +cmCantCopyModifiedV1Profile = -4215 #Illegal to copy version 1 profiles that have been modified +cmRangeOverFlow = -4214 #Color conversion warning that some output color values over/underflowed and were clipped +cmInvalidProfileComment = -4213 #Bad Profile comment during drawpicture +cmNoGDevicesError = -4212 #Begin/End Matching -- no gdevices available +cmInvalidDstMap = -4211 #Destination pix/bit map was invalid +cmInvalidSrcMap = -4210 #Source pix/bit map was invalid +cmInvalidColorSpace = -4209 #Profile colorspace does not match bitmap type +cmErrIncompatibleProfile = -4208 #Other ColorSync Errors +cmSearchError = -4207 #cmSearchError +cmInvalidSearch = -4206 #Bad Search Handle +cmInvalidProfileLocation = -4205 #Operation not supported for this profile location +cmInvalidProfile = -4204 #A Profile must contain a 'cs1 ' tag to be valid +cmFatalProfileErr = -4203 #cmFatalProfileErr +cmCantDeleteElement = -4202 #cmCantDeleteElement +cmIndexRangeErr = -4201 #Tag index out of range +kNSLInitializationFailed = -4200 #UNABLE TO INITIALIZE THE MANAGER!!!!! DO NOT CONTINUE!!!! +kNSLNotInitialized = -4199 #kNSLNotInitialized +kNSLInsufficientSysVer = -4198 #kNSLInsufficientSysVer +kNSLInsufficientOTVer = -4197 #kNSLInsufficientOTVer +kNSLNoElementsInList = -4196 #kNSLNoElementsInList +kNSLBadReferenceErr = -4195 #kNSLBadReferenceErr +kNSLBadServiceTypeErr = -4194 #kNSLBadServiceTypeErr +kNSLBadDataTypeErr = -4193 #kNSLBadDataTypeErr +kNSLBadNetConnection = -4192 #kNSLBadNetConnection +kNSLNoSupportForService = -4191 #kNSLNoSupportForService +kNSLInvalidPluginSpec = -4190 #kNSLInvalidPluginSpec +kNSLRequestBufferAlreadyInList = -4189 #kNSLRequestBufferAlreadyInList +kNSLNoContextAvailable = -4188 #(ContinueLookup function ptr invalid) +kNSLBufferTooSmallForData = -4187 #(Client buffer too small for data from plugin) +kNSLCannotContinueLookup = -4186 #(Can't continue lookup; error or bad state) +kNSLBadClientInfoPtr = -4185 #(nil ClientAsyncInfoPtr; no reference available) +kNSLNullListPtr = -4184 #(client is trying to add items to a nil list) +kNSLBadProtocolTypeErr = -4183 #(client is trying to add a null protocol type) +kNSLPluginLoadFailed = -4182 #(manager unable to load one of the plugins) +kNSLNoPluginsFound = -4181 #(manager didn't find any valid plugins to load) +kNSLSearchAlreadyInProgress = -4180 #(you can only have one ongoing search per clientRef) +kNSLNoPluginsForSearch = -4179 #(no plugins will respond to search request; bad protocol(s)?) +kNSLNullNeighborhoodPtr = -4178 #(client passed a null neighborhood ptr) +kNSLSomePluginsFailedToLoad = -4177 #(one or more plugins failed to load, but at least one did load; this error isn't fatal) +kNSLErrNullPtrError = -4176 #kNSLErrNullPtrError +kNSLNotImplementedYet = -4175 #kNSLNotImplementedYet +kNSLUILibraryNotAvailable = -4174 #The NSL UI Library needs to be in the Extensions Folder +kNSLNoCarbonLib = -4173 #kNSLNoCarbonLib +kNSLBadURLSyntax = -4172 #URL contains illegal characters +kNSLSchedulerError = -4171 #A custom thread routine encountered an error +kNSL68kContextNotSupported = -4170 #no 68k allowed +noHelpForItem = -4009 #noHelpForItem +badProfileError = -4008 #badProfileError +colorSyncNotInstalled = -4007 #colorSyncNotInstalled +pickerCantLive = -4006 #pickerCantLive +cantLoadPackage = -4005 #cantLoadPackage +cantCreatePickerWindow = -4004 #cantCreatePickerWindow +cantLoadPicker = -4003 #cantLoadPicker +pickerResourceError = -4002 #pickerResourceError +requiredFlagsDontMatch = -4001 #requiredFlagsDontMatch +firstPickerError = -4000 #firstPickerError +kOTPortLostConnection = -3285 # +kOTUserRequestedErr = -3284 # +kOTConfigurationChangedErr = -3283 # +kOTBadConfigurationErr = -3282 # +kOTPortWasEjectedErr = -3281 # +kOTPortHasDiedErr = -3280 # +kOTClientNotInittedErr = -3279 # +kENOMSGErr = -3278 # +kESRCHErr = -3277 # +kEINPROGRESSErr = -3276 # +kENODATAErr = -3275 # +kENOSTRErr = -3274 # +kECANCELErr = -3273 # +kEBADMSGErr = -3272 # +kENOSRErr = -3271 # +kETIMEErr = -3270 # +kEPROTOErr = -3269 #‚‚‚ fill out missing codes ‚‚‚ +kEHOSTUNREACHErr = -3264 #No route to host +kEHOSTDOWNErr = -3263 #Host is down +kECONNREFUSEDErr = -3260 #Connection refused +kETIMEDOUTErr = -3259 #Connection timed out +kETOOMANYREFSErr = -3258 #Too many references: can't splice +kESHUTDOWNErr = -3257 #Can't send after socket shutdown +kENOTCONNErr = -3256 #Socket is not connected +kEISCONNErr = -3255 #Socket is already connected +kENOBUFSErr = -3254 #No buffer space available +kECONNRESETErr = -3253 #Connection reset by peer +kECONNABORTEDErr = -3252 #Software caused connection abort +kENETRESETErr = -3251 #Network dropped connection on reset +kENETUNREACHErr = -3250 #Network is unreachable +kENETDOWNErr = -3249 #Network is down +kEADDRNOTAVAILErr = -3248 #Can't assign requested address +kEADDRINUSEErr = -3247 #Address already in use +kEOPNOTSUPPErr = -3244 #Operation not supported on socket +kESOCKTNOSUPPORTErr = -3243 #Socket type not supported +kEPROTONOSUPPORTErr = -3242 #Protocol not supported +kENOPROTOOPTErr = -3241 #Protocol not available +kEPROTOTYPEErr = -3240 #Protocol wrong type for socket +kEMSGSIZEErr = -3239 #Message too long +kEDESTADDRREQErr = -3238 #Destination address required +kENOTSOCKErr = -3237 #Socket operation on non-socket +kEALREADYErr = -3236 # +kEWOULDBLOCKErr = -3234 #Call would block, so was aborted +kERANGEErr = -3233 #Message size too large for STREAM +kEPIPEErr = -3231 #Broken pipe +kENOTTYErr = -3224 #Not a character device +kEINVALErr = -3221 #Invalid argument +kENODEVErr = -3218 #No such device +kOTDuplicateFoundErr = -3216 #OT generic duplicate found error +kEBUSYErr = -3215 #Device or resource busy +kEFAULTErr = -3213 #Bad address +kEACCESErr = -3212 #Permission denied +kOTOutOfMemoryErr = -3211 #OT ran out of memory, may be a temporary +kEAGAINErr = -3210 #Try operation again later +kEBADFErr = -3208 #Bad file number +kENXIOErr = -3205 #No such device or address +kEIOErr = -3204 #I/O error +kEINTRErr = -3203 #Interrupted system service +kENORSRCErr = -3202 #No such resource +kOTNotFoundErr = -3201 #OT generic not found error +kEPERMErr = -3200 #Permission denied +kOTCanceledErr = -3180 #XTI2OSStatus(TCANCELED) The command was cancelled +kOTBadSyncErr = -3179 #XTI2OSStatus(TBADSYNC) A synchronous call at interrupt time +kOTProtocolErr = -3178 #XTI2OSStatus(TPROTO) An unspecified provider error occurred +kOTQFullErr = -3177 #XTI2OSStatus(TQFULL) +kOTResAddressErr = -3176 #XTI2OSStatus(TRESADDR) +kOTResQLenErr = -3175 #XTI2OSStatus(TRESQLEN) +kOTProviderMismatchErr = -3174 #XTI2OSStatus(TPROVMISMATCH) Tried to accept on incompatible endpoint +kOTIndOutErr = -3173 #XTI2OSStatus(TINDOUT) Accept failed because of pending listen +kOTAddressBusyErr = -3172 #XTI2OSStatus(TADDRBUSY) Address requested is already in use +kOTBadQLenErr = -3171 #XTI2OSStatus(TBADQLEN) A Bind to an in-use addr with qlen > 0 +kOTBadNameErr = -3170 #XTI2OSStatus(TBADNAME) A bad endpoint name was supplied +kOTNoStructureTypeErr = -3169 #XTI2OSStatus(TNOSTRUCTYPE) Bad structure type requested for OTAlloc +kOTStateChangeErr = -3168 #XTI2OSStatus(TSTATECHNG) State is changing - try again later +kOTNotSupportedErr = -3167 #XTI2OSStatus(TNOTSUPPORT) Command is not supported +kOTNoReleaseErr = -3166 #XTI2OSStatus(TNOREL) No orderly release indication available +kOTBadFlagErr = -3165 #XTI2OSStatus(TBADFLAG) A Bad flag value was supplied +kOTNoUDErrErr = -3164 #XTI2OSStatus(TNOUDERR) No Unit Data Error indication available +kOTNoDisconnectErr = -3163 #XTI2OSStatus(TNODIS) No disconnect indication available +kOTNoDataErr = -3162 #XTI2OSStatus(TNODATA) No data available for reading +kOTFlowErr = -3161 #XTI2OSStatus(TFLOW) Provider is flow-controlled +kOTBufferOverflowErr = -3160 #XTI2OSStatus(TBUFOVFLW) Passed buffer not big enough +kOTBadDataErr = -3159 #XTI2OSStatus(TBADDATA) An illegal amount of data was specified +kOTLookErr = -3158 #XTI2OSStatus(TLOOK) An event occurred - call Look() +kOTSysErrorErr = -3157 #XTI2OSStatus(TSYSERR) A system error occurred +kOTBadSequenceErr = -3156 #XTI2OSStatus(TBADSEQ) Sequence specified does not exist +kOTOutStateErr = -3155 #XTI2OSStatus(TOUTSTATE) Call issued in wrong state +kOTNoAddressErr = -3154 #XTI2OSStatus(TNOADDR) No address was specified +kOTBadReferenceErr = -3153 #XTI2OSStatus(TBADF) Bad provider reference +kOTAccessErr = -3152 #XTI2OSStatus(TACCES) Missing access permission +kOTBadOptionErr = -3151 #XTI2OSStatus(TBADOPT) A Bad option was specified +kOTBadAddressErr = -3150 #XTI2OSStatus(TBADADDR) A Bad address was specified +sktClosedErr = -3109 #sktClosedErr +recNotFnd = -3108 #recNotFnd +atpBadRsp = -3107 #atpBadRsp +atpLenErr = -3106 #atpLenErr +readQErr = -3105 #readQErr +extractErr = -3104 #extractErr +ckSumErr = -3103 #ckSumErr +noMPPErr = -3102 #noMPPErr +buf2SmallErr = -3101 #buf2SmallErr +noPrefAppErr = -3032 #noPrefAppErr +badTranslationSpecErr = -3031 #badTranslationSpecErr +noTranslationPathErr = -3030 #noTranslationPathErr +couldNotParseSourceFileErr = -3026 #Source document does not contain source type +invalidTranslationPathErr = -3025 #Source type to destination type not a valid path +retryComponentRegistrationErr = -3005 #retryComponentRegistrationErr +unresolvedComponentDLLErr = -3004 #unresolvedComponentDLLErr +componentDontRegister = -3003 #componentDontRegister +componentNotCaptured = -3002 #componentNotCaptured +validInstancesExist = -3001 #validInstancesExist +invalidComponentID = -3000 #invalidComponentID +cfragLastErrCode = -2899 #The last value in the range of CFM errors. +cfragOutputLengthErr = -2831 #An output parameter is too small to hold the value. +cfragAbortClosureErr = -2830 #Used by notification handlers to abort a closure. +cfragClosureIDErr = -2829 #The closure ID was not valid. +cfragContainerIDErr = -2828 #The fragment container ID was not valid. +cfragNoRegistrationErr = -2827 #The registration name was not found. +cfragNotClosureErr = -2826 #The closure ID was actually a connection ID. +cfragFileSizeErr = -2825 #A file was too large to be mapped. +cfragFragmentUsageErr = -2824 #A semantic error in usage of the fragment. +cfragArchitectureErr = -2823 #A fragment has an unacceptable architecture. +cfragNoApplicationErr = -2822 #No application member found in the cfrg resource. +cfragInitFunctionErr = -2821 #A fragment's initialization routine returned an error. +cfragFragmentCorruptErr = -2820 #A fragment's container was corrupt (known format). +cfragCFMInternalErr = -2819 #An internal inconstistancy has been detected. +cfragCFMStartupErr = -2818 #Internal error during CFM initialization. +cfragLibConnErr = -2817 # +cfragInitAtBootErr = -2816 #A boot library has an initialization function. (System 7 only) +cfragInitLoopErr = -2815 #Circularity in required initialization order. +cfragImportTooNewErr = -2814 #An import library was too new for a client. +cfragImportTooOldErr = -2813 #An import library was too old for a client. +cfragInitOrderErr = -2812 # +cfragNoIDsErr = -2811 #No more CFM IDs for contexts, connections, etc. +cfragNoClientMemErr = -2810 #Out of memory for fragment mapping or section instances. +cfragNoPrivateMemErr = -2809 #Out of memory for internal bookkeeping. +cfragNoPositionErr = -2808 #The registration insertion point was not found. +cfragUnresolvedErr = -2807 #A fragment had "hard" unresolved imports. +cfragFragmentFormatErr = -2806 #A fragment's container format is unknown. +cfragDupRegistrationErr = -2805 #The registration name was already in use. +cfragNoLibraryErr = -2804 #The named library was not found. +cfragNoSectionErr = -2803 #The specified section was not found. +cfragNoSymbolErr = -2802 #The specified symbol was not found. +cfragConnectionIDErr = -2801 #The connection ID was not valid. +cfragFirstErrCode = -2800 #The first value in the range of CFM errors. +errASInconsistentNames = -2780 #English errors: +errASNoResultReturned = -2763 #The range -2780 thru -2799 is reserved for dialect specific error codes. (Error codes from different dialects may overlap.) +errASParameterNotForEvent = -2762 #errASParameterNotForEvent +errASIllegalFormalParameter = -2761 #errASIllegalFormalParameter +errASTerminologyNestingTooDeep = -2760 #errASTerminologyNestingTooDeep +OSAControlFlowError = -2755 #Signaled when illegal control flow occurs in an application (no catcher for throw, non-lexical loop exit, etc.) +OSAInconsistentDeclarations = -2754 #Signaled when a variable is declared inconsistently in the same scope, such as both local and global +OSAUndefinedVariable = -2753 #Signaled when a variable is accessed that has no value +OSADuplicateHandler = -2752 #Signaled when more than one handler is defined with the same name in a scope where the language doesn't allow it +OSADuplicateProperty = -2751 #Signaled when a formal parameter, local variable, or instance variable is specified more than once. +OSADuplicateParameter = -2750 #Signaled when a formal parameter, local variable, or instance variable is specified more than once +OSATokenTooLong = -2742 #Signaled when a name or number is too long to be parsed +OSASyntaxTypeError = -2741 #Signaled when another form of syntax was expected. (e.g. "expected a <type> but found <this>") +OSASyntaxError = -2740 #Signaled when a syntax error occurs. (e.g. "Syntax error" or "<this> can't go after <that>") +errASCantCompareMoreThan32k = -2721 #Parser/Compiler errors: +errASCantConsiderAndIgnore = -2720 #errASCantConsiderAndIgnore +errOSACantCreate = -2710 #errOSACantCreate +errOSACantGetTerminology = -2709 #errOSACantGetTerminology +errOSADataBlockTooLarge = -2708 #Signaled when an intrinsic limitation is exceeded for the size of a value or data structure. +errOSAInternalTableOverflow = -2707 #Signaled when a runtime internal data structure overflows +errOSAStackOverflow = -2706 #Signaled when the runtime stack overflows +errOSACorruptTerminology = -2705 #Signaled when an application's terminology resource is not readable +errOSAAppNotHighLevelEventAware = -2704 #Signaled when an application can't respond to AppleEvents +errOSACantLaunch = -2703 #Signaled when application can't be launched or when it is remote and program linking is not enabled +errOSANumericOverflow = -2702 #Signaled when integer or real value is too large to be represented +errOSADivideByZero = -2701 #Signaled when there is an attempt to divide by zero +errOSAGeneralError = -2700 #Signaled by user scripts or applications when no actual error code is to be returned. +noIconDataAvailableErr = -2582 #The necessary icon data is not available +noSuchIconErr = -2581 #The requested icon could not be found +invalidIconRefErr = -2580 #The icon ref is not valid +nrCallNotSupported = -2557 #This call is not available or supported on this machine +nrTransactionAborted = -2556 #transaction was aborted +nrExitedIteratorScope = -2555 #outer scope of iterator was exited +nrIterationDone = -2554 #iteration operation is done +nrPropertyAlreadyExists = -2553 #property already exists +nrInvalidEntryIterationOp = -2552 #invalid entry iteration operation +nrPathBufferTooSmall = -2551 #buffer for path is too small +nrPathNotFound = -2550 #a path component lookup failed +nrResultCodeBase = -2549 #nrResultCodeBase +nrOverrunErr = -2548 #nrOverrunErr +nrNotModifiedErr = -2547 #nrNotModifiedErr +nrTypeMismatchErr = -2546 #nrTypeMismatchErr +nrPowerSwitchAbortErr = -2545 #nrPowerSwitchAbortErr +nrPowerErr = -2544 #nrPowerErr +nrDataTruncatedErr = -2543 #nrDataTruncatedErr +nrNotSlotDeviceErr = -2542 #nrNotSlotDeviceErr +nrNameErr = -2541 #nrNameErr +nrNotCreatedErr = -2540 #nrNotCreatedErr +nrNotFoundErr = -2539 #nrNotFoundErr +nrInvalidNodeErr = -2538 #nrInvalidNodeErr +nrNotEnoughMemoryErr = -2537 #nrNotEnoughMemoryErr +nrLockedErr = -2536 #nrLockedErr +mmInternalError = -2526 #mmInternalError +tsmDefaultIsNotInputMethodErr = -2524 #Current Input source is KCHR or uchr, not Input Method (GetDefaultInputMethod) +tsmNoStem = -2523 #No stem exists for the token +tsmNoMoreTokens = -2522 #No more tokens are available for the source text +tsmNoHandler = -2521 #No Callback Handler exists for callback +tsmInvalidContext = -2520 #Invalid TSMContext specified in call +tsmUnknownErr = -2519 #any other errors +tsmUnsupportedTypeErr = -2518 #unSupported interface type error +tsmScriptHasNoIMErr = -2517 #script has no imput method or is using old IM +tsmInputMethodIsOldErr = -2516 #returned by GetDefaultInputMethod +tsmComponentAlreadyOpenErr = -2515 #text service already opened for the document +tsmTSNotOpenErr = -2514 #text service is not open +tsmTSHasNoMenuErr = -2513 #the text service has no menu +tsmUseInputWindowErr = -2512 #not TSM aware because we are using input window +tsmDocumentOpenErr = -2511 #there are open documents +tsmTextServiceNotFoundErr = -2510 #no text service found +tsmCantOpenComponentErr = -2509 #canÕt open the component +tsmNoOpenTSErr = -2508 #no open text service +tsmDocNotActiveErr = -2507 #document is NOT active +tsmTSMDocBusyErr = -2506 #document is still active +tsmInvalidDocIDErr = -2505 #invalid TSM documentation id +tsmNeverRegisteredErr = -2504 #app never registered error (not TSM aware) +tsmAlreadyRegisteredErr = -2503 #want to register again error +tsmNotAnAppErr = -2502 #not an application error +tsmInputMethodNotFoundErr = -2501 #tsmInputMethodNotFoundErr +tsmUnsupScriptLanguageErr = -2500 #tsmUnsupScriptLanguageErr +kernelUnrecoverableErr = -2499 #kernelUnrecoverableErr +kernelReturnValueErr = -2422 #kernelReturnValueErr +kernelAlreadyFreeErr = -2421 #kernelAlreadyFreeErr +kernelIDErr = -2419 #kernelIDErr +kernelExceptionErr = -2418 #kernelExceptionErr +kernelTerminatedErr = -2417 #kernelTerminatedErr +kernelInUseErr = -2416 #kernelInUseErr +kernelTimeoutErr = -2415 #kernelTimeoutErr +kernelAsyncReceiveLimitErr = -2414 #kernelAsyncReceiveLimitErr +kernelAsyncSendLimitErr = -2413 #kernelAsyncSendLimitErr +kernelAttributeErr = -2412 #kernelAttributeErr +kernelExecutionLevelErr = -2411 #kernelExecutionLevelErr +kernelDeletePermissionErr = -2410 #kernelDeletePermissionErr +kernelExecutePermissionErr = -2409 #kernelExecutePermissionErr +kernelReadPermissionErr = -2408 #kernelReadPermissionErr +kernelWritePermissionErr = -2407 #kernelWritePermissionErr +kernelObjectExistsErr = -2406 #kernelObjectExistsErr +kernelUnsupportedErr = -2405 #kernelUnsupportedErr +kernelPrivilegeErr = -2404 #kernelPrivilegeErr +kernelOptionsErr = -2403 #kernelOptionsErr +kernelCanceledErr = -2402 #kernelCanceledErr +kernelIncompleteErr = -2401 #kernelIncompleteErr +badCallOrderErr = -2209 #Usually due to a status call being called prior to being setup first +noDMAErr = -2208 #CanÕt do DMA digitizing (i.e. can't go to requested dest +badDepthErr = -2207 #CanÕt digitize into this depth +notExactSizeErr = -2206 #CanÕt do exact size requested +noMoreKeyColorsErr = -2205 #all key indexes in use +notExactMatrixErr = -2204 #warning of bad matrix, digitizer did its best +matrixErr = -2203 #bad matrix, digitizer did nothing +qtParamErr = -2202 #bad input parameter (out of range, etc) +digiUnimpErr = -2201 #feature unimplemented +qtXMLApplicationErr = -2159 #qtXMLApplicationErr +qtXMLParseErr = -2158 #qtXMLParseErr +qtActionNotHandledErr = -2157 #qtActionNotHandledErr +notEnoughDataErr = -2149 #notEnoughDataErr +urlDataHFTPURLErr = -2148 #urlDataHFTPURLErr +urlDataHFTPServerDisconnectedErr = -2147 #urlDataHFTPServerDisconnectedErr +urlDataHFTPNoPasswordErr = -2146 #urlDataHFTPNoPasswordErr +urlDataHFTPNeedPasswordErr = -2145 #urlDataHFTPNeedPasswordErr +urlDataHFTPBadNameListErr = -2144 #urlDataHFTPBadNameListErr +urlDataHFTPNoNetDriverErr = -2143 #urlDataHFTPNoNetDriverErr +urlDataHFTPFilenameErr = -2142 #urlDataHFTPFilenameErr +urlDataHFTPPermissionsErr = -2141 #urlDataHFTPPermissionsErr +urlDataHFTPQuotaErr = -2140 #urlDataHFTPQuotaErr +urlDataHFTPNoDirectoryErr = -2139 #urlDataHFTPNoDirectoryErr +urlDataHFTPDataConnectionErr = -2138 #urlDataHFTPDataConnectionErr +urlDataHFTPServerErr = -2137 #urlDataHFTPServerErr +urlDataHFTPBadPasswordErr = -2136 #urlDataHFTPBadPasswordErr +urlDataHFTPBadUserErr = -2135 #urlDataHFTPBadUserErr +urlDataHFTPShutdownErr = -2134 #urlDataHFTPShutdownErr +urlDataHFTPProtocolErr = -2133 #urlDataHFTPProtocolErr +urlDataHHTTPRedirectErr = -2132 #urlDataHHTTPRedirectErr +urlDataHHTTPURLErr = -2131 #urlDataHHTTPURLErr +urlDataHHTTPNoNetDriverErr = -2130 #urlDataHHTTPNoNetDriverErr +urlDataHHTTPProtocolErr = -2129 #urlDataHHTTPProtocolErr +qtNetworkAlreadyAllocatedErr = -2127 #qtNetworkAlreadyAllocatedErr +notAllowedToSaveMovieErr = -2126 #notAllowedToSaveMovieErr +fileOffsetTooBigErr = -2125 #fileOffsetTooBigErr +ASDEntryNotFoundErr = -2124 #ASDEntryNotFoundErr +ASDBadForkErr = -2123 #ASDBadForkErr +ASDBadHeaderErr = -2122 #ASDBadHeaderErr +AAPNotFoundErr = -2121 #AAPNotFoundErr +AAPNotCreatedErr = -2120 #AAPNotCreatedErr +qfcbNotCreatedErr = -2119 #qfcbNotCreatedErr +qfcbNotFoundErr = -2118 #qfcbNotFoundErr +wackBadMetaDataErr = -2117 #wackBadMetaDataErr +wackForkNotFoundErr = -2116 #wackForkNotFoundErr +wackBadFileErr = -2115 #wackBadFileErr +unknownFormatErr = -2114 #unknownFormatErr +pathNotVerifiedErr = -2113 #pathNotVerifiedErr +noPathMappingErr = -2112 #noPathMappingErr +emptyPathErr = -2111 #emptyPathErr +pathTooLongErr = -2110 #pathTooLongErr +cannotBeLeafAtomErr = -2109 #cannotBeLeafAtomErr +invalidAtomTypeErr = -2108 #invalidAtomTypeErr +invalidAtomContainerErr = -2107 #invalidAtomContainerErr +invalidAtomErr = -2106 #invalidAtomErr +duplicateAtomTypeAndIDErr = -2105 #duplicateAtomTypeAndIDErr +atomIndexInvalidErr = -2104 #atomIndexInvalidErr +atomsNotOfSameTypeErr = -2103 #atomsNotOfSameTypeErr +notLeafAtomErr = -2102 #notLeafAtomErr +cannotFindAtomErr = -2101 #cannotFindAtomErr +unsupportedProcessorErr = -2097 #unsupportedProcessorErr +unsupportedOSErr = -2096 #unsupportedOSErr +qtmlUninitialized = -2095 #qtmlUninitialized +qtmlDllEntryNotFoundErr = -2094 #Windows specific errors (when qtml is loading) +qtmlDllLoadErr = -2093 #Windows specific errors (when qtml is loading) +componentDllEntryNotFoundErr = -2092 #Windows specific errors (when component is loading) +componentDllLoadErr = -2091 #Windows specific errors (when component is loading) +videoOutputInUseErr = -2090 #videoOutputInUseErr +noExportProcAvailableErr = -2089 #noExportProcAvailableErr +tuneParseOSErr = -2087 #tuneParseOSErr +tunePlayerFullOSErr = -2086 #tunePlayerFullOSErr +noteChannelNotAllocatedOSErr = -2085 #noteChannelNotAllocatedOSErr +illegalNoteChannelOSErr = -2084 #illegalNoteChannelOSErr +synthesizerOSErr = -2083 #synthesizerOSErr +synthesizerNotRespondingOSErr = -2082 #synthesizerNotRespondingOSErr +midiManagerAbsentOSErr = -2081 #midiManagerAbsentOSErr +illegalControllerOSErr = -2080 #illegalControllerOSErr +illegalInstrumentOSErr = -2079 #illegalInstrumentOSErr +illegalKnobValueOSErr = -2078 #illegalKnobValueOSErr +illegalKnobOSErr = -2077 #illegalKnobOSErr +illegalChannelOSErr = -2076 #illegalChannelOSErr +illegalPartOSErr = -2075 #illegalPartOSErr +illegalVoiceAllocationOSErr = -2074 #illegalVoiceAllocationOSErr +cantReceiveFromSynthesizerOSErr = -2073 #cantReceiveFromSynthesizerOSErr +cantSendToSynthesizerOSErr = -2072 #cantSendToSynthesizerOSErr +notImplementedMusicOSErr = -2071 #notImplementedMusicOSErr +internalComponentErr = -2070 #internalComponentErr +invalidSpriteIDErr = -2069 #invalidSpriteIDErr +invalidImageIndexErr = -2068 #invalidImageIndexErr +invalidSpriteIndexErr = -2067 #invalidSpriteIndexErr +gWorldsNotSameDepthAndSizeErr = -2066 #gWorldsNotSameDepthAndSizeErr +invalidSpritePropertyErr = -2065 #invalidSpritePropertyErr +invalidSpriteWorldPropertyErr = -2064 #invalidSpriteWorldPropertyErr +missingRequiredParameterErr = -2063 #missingRequiredParameterErr +movieTextNotFoundErr = -2062 #movieTextNotFoundErr +sourceNotFoundErr = -2061 #sourceNotFoundErr +noSourceTreeFoundErr = -2060 #noSourceTreeFoundErr +samplesAlreadyInMediaErr = -2059 #samplesAlreadyInMediaErr +auxiliaryExportDataUnavailable = -2058 #auxiliaryExportDataUnavailable +unsupportedAuxiliaryImportData = -2057 #unsupportedAuxiliaryImportData +soundSupportNotAvailableErr = -2056 #QT for Windows error +noSoundTrackInMovieErr = -2055 #QT for Windows error +noVideoTrackInMovieErr = -2054 #QT for Windows error +featureUnsupported = -2053 #featureUnsupported +couldNotUseAnExistingSample = -2052 #couldNotUseAnExistingSample +noDefaultDataRef = -2051 #noDefaultDataRef +badDataRefIndex = -2050 #badDataRefIndex +invalidDataRefContainer = -2049 #invalidDataRefContainer +noMovieFound = -2048 #noMovieFound +dataNoDataRef = -2047 #dataNoDataRef +endOfDataReached = -2046 #endOfDataReached +dataAlreadyClosed = -2045 #dataAlreadyClosed +dataAlreadyOpenForWrite = -2044 #dataAlreadyOpenForWrite +dataNotOpenForWrite = -2043 #dataNotOpenForWrite +dataNotOpenForRead = -2042 #dataNotOpenForRead +invalidSampleDescription = -2041 #invalidSampleDescription +invalidChunkCache = -2040 #invalidChunkCache +invalidSampleDescIndex = -2039 #invalidSampleDescIndex +invalidChunkNum = -2038 #invalidChunkNum +invalidSampleNum = -2037 #invalidSampleNum +invalidRect = -2036 #invalidRect +cantEnableTrack = -2035 #cantEnableTrack +internalQuickTimeError = -2034 #internalQuickTimeError +badEditIndex = -2033 #badEditIndex +timeNotInMedia = -2032 #timeNotInMedia +timeNotInTrack = -2031 #timeNotInTrack +trackNotInMovie = -2030 #trackNotInMovie +trackIDNotFound = -2029 #trackIDNotFound +badTrackIndex = -2028 #badTrackIndex +maxSizeToGrowTooSmall = -2027 #maxSizeToGrowTooSmall +userDataItemNotFound = -2026 #userDataItemNotFound +staleEditState = -2025 #staleEditState +nonMatchingEditState = -2024 #nonMatchingEditState +invalidEditState = -2023 #invalidEditState +cantCreateSingleForkFile = -2022 #happens when file already exists +wfFileNotFound = -2021 #wfFileNotFound +movieToolboxUninitialized = -2020 #movieToolboxUninitialized +progressProcAborted = -2019 #progressProcAborted +mediaTypesDontMatch = -2018 #mediaTypesDontMatch +badEditList = -2017 #badEditList +cantPutPublicMovieAtom = -2016 #cantPutPublicMovieAtom +invalidTime = -2015 #invalidTime +invalidDuration = -2014 #invalidDuration +invalidHandler = -2013 #invalidHandler +invalidDataRef = -2012 #invalidDataRef +invalidSampleTable = -2011 #invalidSampleTable +invalidMovie = -2010 #invalidMovie +invalidTrack = -2009 #invalidTrack +invalidMedia = -2008 #invalidMedia +noDataHandler = -2007 #noDataHandler +noMediaHandler = -2006 #noMediaHandler +badComponentType = -2005 #badComponentType +cantOpenHandler = -2004 #cantOpenHandler +cantFindHandler = -2003 #cantFindHandler +badPublicMovieAtom = -2002 #badPublicMovieAtom +badImageDescription = -2001 #badImageDescription +couldNotResolveDataRef = -2000 #couldNotResolveDataRef +nonDragOriginatorErr = -1862 #illegal attempt at originator only data +badImageErr = -1861 #bad translucent image PixMap +badImageRgnErr = -1860 #bad translucent image region +noSuitableDisplaysErr = -1859 #no displays support translucency +unsupportedForPlatformErr = -1858 #call is for PowerPC only +dragNotAcceptedErr = -1857 #drag was not accepted by receiver +handlerNotFoundErr = -1856 #handler not found +duplicateHandlerErr = -1855 #handler already exists +cantGetFlavorErr = -1854 #error while trying to get flavor data +duplicateFlavorErr = -1853 #flavor type already exists +badDragFlavorErr = -1852 #unknown flavor type +badDragItemErr = -1851 #unknown drag item reference +badDragRefErr = -1850 #unknown drag reference +errEndOfBody = -1813 #errEndOfBody +errEndOfDocument = -1812 #errEndOfDocument +errTopOfBody = -1811 #errTopOfBody +errTopOfDocument = -1810 #errTopOfDocument +errOffsetIsOutsideOfView = -1801 #errOffsetIsOutsideOfView +errOffsetInvalid = -1800 #errOffsetInvalid +errOSACantOpenComponent = -1762 #Can't connect to scripting system with that ID +errOSAComponentMismatch = -1761 #Parameters are from 2 different components +errOSADataFormatTooNew = -1759 #errOSADataFormatTooNew +errOSADataFormatObsolete = -1758 #errOSADataFormatObsolete +errOSANoSuchDialect = -1757 #errOSANoSuchDialect +errOSASourceNotAvailable = -1756 #errOSASourceNotAvailable +errOSABadSelector = -1754 #errOSABadSelector +errOSAScriptError = -1753 #errOSAScriptError +errOSABadStorageType = -1752 #errOSABadStorageType +errOSAInvalidID = -1751 #errOSAInvalidID +errOSASystemError = -1750 #errOSASystemError +errAEBufferTooSmall = -1741 #buffer for AEFlattenDesc too small +errAEBuildSyntaxError = -1740 #AEBuildDesc and friends detected a syntax error +errAEDescIsNull = -1739 #attempting to perform an invalid operation on a null descriptor +errAEStreamAlreadyConverted = -1738 #attempt to convert a stream that has already been converted +errAEStreamBadNesting = -1737 #nesting violation while streaming +errAEDuplicateHandler = -1736 #attempt to install handler in table for identical class and id (1.1 or greater) +errAEEventFiltered = -1735 #event has been filtered, and should not be propogated (1.1 or greater) +errAEReceiveEscapeCurrent = -1734 #break out of only lowest level of AEReceive (1.1 or greater) +errAEReceiveTerminate = -1733 #break out of all levels of AEReceive to the topmost (1.1 or greater) +errAERecordingIsAlreadyOn = -1732 #available only in version 1.0.1 or greater +errAEUnknownObjectType = -1731 #available only in version 1.0.1 or greater +errAEEmptyListContainer = -1730 #Attempt to pass empty list as container to accessor +errAENegativeCount = -1729 #CountProc returned negative value +errAENoSuchObject = -1728 #e.g.,: specifier asked for the 3rd, but there are only 2. Basically, this indicates a run-time resolution error. +errAENotAnObjSpec = -1727 #Param to AEResolve not of type 'obj ' +errAEBadTestKey = -1726 #Test is neither typeLogicalDescriptor nor typeCompDescriptor +errAENoSuchLogical = -1725 #Something other than AND, OR, or NOT +errAEAccessorNotFound = -1723 #Accessor proc matching wantClass and containerType or wildcards not found +errAEWrongNumberArgs = -1721 #Logical op kAENOT used with other than 1 term +errAEImpossibleRange = -1720 #A range like 3rd to 2nd, or 1st to all. +errAEIllegalIndex = -1719 #index is out of range in a put operation +errAEReplyNotArrived = -1718 #the contents of the reply you are accessing have not arrived yet +errAEHandlerNotFound = -1717 #no handler in the dispatch tables fits the parameters to AEGetEventHandler or AEGetCoercionHandler +errAEUnknownAddressType = -1716 #the target address type is not known +errAEParamMissed = -1715 #a required parameter was not accessed +errAENotASpecialFunction = -1714 #there is no special function for/with this keyword +errAENoUserInteraction = -1713 #no user interaction is allowed +errAETimeout = -1712 #the AppleEvent timed out +errAEWaitCanceled = -1711 #in AESend, the user cancelled out of wait loop for reply or receipt +errAEUnknownSendMode = -1710 #mode wasn't NoReply, WaitReply, or QueueReply or Interaction level is unknown +errAEReplyNotValid = -1709 #AEResetTimer was passed an invalid reply parameter +errAEEventNotHandled = -1708 #the AppleEvent was not handled by any handler +errAENotAppleEvent = -1707 #the event is not in AppleEvent format +errAENewerVersion = -1706 #need newer version of the AppleEvent manager +errAEBadListItem = -1705 #the specified list item does not exist +errAENotAEDesc = -1704 #errAENotAEDesc +errAEWrongDataType = -1703 #errAEWrongDataType +errAECorruptData = -1702 #errAECorruptData +errAEDescNotFound = -1701 #errAEDescNotFound +errAECoercionFail = -1700 #bad parameter data or unable to coerce the data supplied +errFSIteratorNotSupported = -1424 #The iterator's flags or container are not supported by this call +errFSIteratorNotFound = -1423 #Passed FSIterator is not an open iterator +errFSBadIteratorFlags = -1422 #Flags passed to FSOpenIterator are bad +errFSForkExists = -1421 #Named fork already exists. +errFSRefsDifferent = -1420 #FSCompareFSRefs; refs are for different objects +errFSBadSearchParams = -1419 #Something wrong with CatalogSearch searchParams +errFSBadItemCount = -1418 #maximumItems was zero +errFSNoMoreItems = -1417 #Iteration ran out of items to return +errFSBadAllocFlags = -1413 #Invalid bits set in allocationFlags +errFSBadPosMode = -1412 #Newline bits set in positionMode +errFSMissingName = -1411 #A Unicode name parameter was NULL or nameLength parameter was zero +errFSNameTooLong = -1410 #File/fork name is too long to create/rename +errFSForkNotFound = -1409 #Named fork does not exist +errFSNotAFolder = -1407 #Expected a folder, got a file +errFSMissingCatInfo = -1406 #A CatalogInfo parameter was NULL +errFSBadInfoBitmap = -1405 #A CatalogInfoBitmap or VolumeInfoBitmap has reserved or invalid bits set +errFSBadForkRef = -1404 #A ForkRefNum parameter was bad +errFSBadBuffer = -1403 #A buffer parameter was bad +errFSBadForkName = -1402 #Fork name parameter is bad +errFSBadFSRef = -1401 #FSRef parameter is bad +errFSUnknownCall = -1400 #selector is not recognized by this filesystem +badFCBErr = -1327 #FCBRecPtr is not valid +volVMBusyErr = -1311 #can't eject because volume is in use by VM +fsDataTooBigErr = -1310 #file or volume is too big for system +fileBoundsErr = -1309 #file's EOF, offset, mark or size is too big +notARemountErr = -1308 #when _Mount allows only remounts and doesn't get one +badFidErr = -1307 #file id is dangling or doesn't match with the file number +sameFileErr = -1306 #can't exchange a file with itself +desktopDamagedErr = -1305 #desktop database files are corrupted +catChangedErr = -1304 #the catalog has been modified +diffVolErr = -1303 #files on different volumes +notAFileErr = -1302 #directory specified +fidExists = -1301 #file id already exists +fidNotFound = -1300 #no file thread exists. +errRefNum = -1280 #bad connection refNum +errAborted = -1279 #control call was aborted +errState = -1278 #bad connection state for this operation +errOpening = -1277 #open connection request failed +errAttention = -1276 #attention message too long +errFwdReset = -1275 #read terminated by forward reset +errDSPQueueSize = -1274 #DSP Read/Write Queue Too small +errOpenDenied = -1273 #open connection request was denied +reqAborted = -1105 #reqAborted +noDataArea = -1104 #noDataArea +noSendResp = -1103 #noSendResp +cbNotFound = -1102 #cbNotFound +noRelErr = -1101 #noRelErr +badBuffNum = -1100 #badBuffNum +badATPSkt = -1099 #badATPSkt +tooManySkts = -1098 #tooManySkts +tooManyReqs = -1097 #tooManyReqs +reqFailed = -1096 #reqFailed +aspNoAck = -1075 #No ack on attention request (server err) +aspTooMany = -1074 #Too many clients (server error) +aspSizeErr = -1073 #Command block too big +aspSessClosed = -1072 #Session closed +aspServerBusy = -1071 #Server cannot open another session +aspParamErr = -1070 #Parameter error +aspNoServers = -1069 #No servers at that address +aspNoMoreSess = -1068 #No more sessions on server +aspBufTooSmall = -1067 #Buffer too small +aspBadVersNum = -1066 #Server cannot support this ASP version +nbpNISErr = -1029 #Error trying to open the NIS +nbpNotFound = -1028 #Name not found on remove +nbpDuplicate = -1027 #Duplicate name exists already +nbpConfDiff = -1026 #Name confirmed at different socket +nbpNoConfirm = -1025 #nbpNoConfirm +nbpBuffOvr = -1024 #Buffer overflow in LookupName +noMaskFoundErr = -1000 #Icon Utilties Error +kFMFontContainerAccessErr = -985 #kFMFontContainerAccessErr +kFMFontTableAccessErr = -984 #kFMFontTableAccessErr +kFMIterationScopeModifiedErr = -983 #kFMIterationScopeModifiedErr +kFMInvalidFontErr = -982 #kFMInvalidFontErr +kFMInvalidFontFamilyErr = -981 #kFMInvalidFontFamilyErr +kFMIterationCompleted = -980 #kFMIterationCompleted +guestNotAllowedErr = -932 #destination port requires authentication +badLocNameErr = -931 #location name malformed +badServiceMethodErr = -930 #illegal service type, or not supported +noUserRecErr = -928 #Invalid user reference number +authFailErr = -927 #unable to authenticate user at destination +noInformErr = -926 #PPCStart failed because destination did not have inform pending +networkErr = -925 #An error has occurred in the network, not too likely +noUserRefErr = -924 #unable to create a new userRefNum +notLoggedInErr = -923 #The default userRefNum does not yet exist +noDefaultUserErr = -922 #user hasn't typed in owners name in Network Setup Control Pannel +badPortNameErr = -919 #PPCPortRec malformed +sessClosedErr = -917 #session was closed +portClosedErr = -916 #port was closed +noResponseErr = -915 #unable to contact destination +noToolboxNameErr = -914 #A system resource is missing, not too likely +noMachineNameErr = -913 #user hasn't named his Macintosh in the Network Setup Control Panel +userRejectErr = -912 #Destination rejected the session request +noUserNameErr = -911 #user name unknown on destination machine +portNameExistsErr = -910 #port is already open (perhaps in another app) +badReqErr = -909 #bad parameter or invalid state for operation +noSessionErr = -908 #Invalid session reference number +sessTableErr = -907 #Out of session tables, try again later +destPortErr = -906 #Port does not exist at destination +localOnlyErr = -905 #Network activity is currently disabled +noGlobalsErr = -904 #The system is hosed, better re-boot +noPortErr = -903 #Unable to open port or bad portRefNum. If you're calling +nameTypeErr = -902 #Invalid or inappropriate locationKindSelector in locationName +notInitErr = -900 #PPCToolBox not initialized +notAppropriateForClassic = -877 #This application won't or shouldn't run on Classic (Problem 2481058). +appVersionTooOld = -876 #The application's creator and version are incompatible with the current version of Mac OS. +wrongApplicationPlatform = -875 #The application could not launch because the required platform is not available +hmCloseViewActive = -863 #Returned from HMRemoveBalloon if CloseView was active +hmNoBalloonUp = -862 #Returned from HMRemoveBalloon if no balloon was visible when call was made +hmOperationUnsupported = -861 #Returned from HMShowBalloon call if bad method passed to routine +hmUnknownHelpType = -859 #Returned if help msg record contained a bad type +hmWrongVersion = -858 #Returned if help mgr resource was the wrong version +hmSkippedBalloon = -857 #Returned from calls if helpmsg specified a skip balloon +hmHelpManagerNotInited = -855 #Returned from HMGetHelpMenuHandle if help menu not setup +hmSameAsLastBalloon = -854 #Returned from HMShowMenuBalloon if menu & item is same as last time +hmBalloonAborted = -853 #Returned if mouse was moving or mouse wasn't in window port rect +hmHelpDisabled = -850 #Show Balloons mode was off, call to routine ignored +rcDBPackNotInited = -813 #attempt to call other routine before InitDBPack +rcDBWrongVersion = -812 #incompatible versions +rcDBNoHandler = -811 #no app handler for specified data type +rcDBBadAsyncPB = -810 #tried to kill a bad pb +rcDBAsyncNotSupp = -809 #ddev does not support async calls +rcDBBadDDEV = -808 #bad ddev specified on DBInit +rcDBBadSessNum = -807 #bad session number for DBGetConnInfo +rcDBBadSessID = -806 #rcDBBadSessID +rcDBExec = -805 #rcDBExec +rcDBBreak = -804 #rcDBBreak +rcDBBadType = -803 #rcDBBadType +rcDBError = -802 #rcDBError +rcDBValue = -801 #rcDBValue +rcDBNull = -800 #rcDBNull +icTooManyProfilesErr = -677 #too many profiles in database +icProfileNotFoundErr = -676 #profile not found +icConfigInappropriateErr = -675 #incorrect manufacturer code +icConfigNotFoundErr = -674 #no internet configuration was found +icNoURLErr = -673 #no URL found +icNothingToOverrideErr = -672 #no component for the override component to capture +icNoMoreWritersErr = -671 #you cannot begin a write session because someone else is already doing it +icTruncatedErr = -670 #more data was present than was returned +icInternalErr = -669 #Internet Config internal error +icPrefDataErr = -668 #problem with preference data +icPermErr = -667 #cannot set preference +icPrefNotFoundErr = -666 #Internet preference not found +vmInvalidOwningProcessErr = -648 #current process does not own the BackingFileID or FileViewID +vmAddressNotInFileViewErr = -647 #address is not in a FileView +vmNoMoreFileViewsErr = -646 #no more FileViews were found +vmFileViewAccessErr = -645 #requested FileViewAccess cannot be obtained +vmInvalidFileViewIDErr = -644 #invalid FileViewID +vmNoMoreBackingFilesErr = -643 #no more BackingFiles were found +vmBusyBackingFileErr = -642 #open views found on BackingFile +vmMappingPrivilegesErr = -641 #requested MappingPrivileges cannot be obtained +vmInvalidBackingFileIDErr = -640 #invalid BackingFileID +noMMUErr = -626 #no MMU present +cannotDeferErr = -625 #unable to defer additional functions +interruptsMaskedErr = -624 #donÕt call with interrupts masked +notLockedErr = -623 #specified range of memory is not locked +cannotMakeContiguousErr = -622 #cannot make specified range contiguous +notHeldErr = -621 #specified range of memory is not held +notEnoughMemoryErr = -620 #insufficient physical memory +threadProtocolErr = -619 #threadProtocolErr +threadNotFoundErr = -618 #threadNotFoundErr +threadTooManyReqsErr = -617 #threadTooManyReqsErr +noUserInteractionAllowed = -610 #no user interaction allowed +connectionInvalid = -609 #connectionInvalid +noOutstandingHLE = -608 #noOutstandingHLE +bufferIsSmall = -607 #error returns from Post and Accept +appIsDaemon = -606 #app is BG-only, and launch flags disallow this +appMemFullErr = -605 #application SIZE not big enough for launch +hardwareConfigErr = -604 #hardware configuration not correct for call +protocolErr = -603 #app made module calls in improper order +appModeErr = -602 #memory mode is 32-bit, but app not 32-bit clean +memFragErr = -601 #not enough room to launch app w/special requirements +procNotFound = -600 #no eligible process with specified descriptor +driverHardwareGoneErr = -503 #disk driver's hardware was disconnected +hwParamErr = -502 #bad selector for _HWPriv +teScrapSizeErr = -501 #scrap item too big for text edit record +rgnTooBigErr = -500 #rgnTooBigErr +exUserBreak = -492 #user debugger break; execute debugger commands on stack +strUserBreak = -491 #user debugger break; display string on stack +userBreak = -490 #user debugger break +notThePublisherWrn = -463 #not the first registered publisher for that container +containerAlreadyOpenWrn = -462 #container already opened by this section +containerNotFoundWrn = -461 #could not find editionContainer at this time +multiplePublisherWrn = -460 #A Publisher is already registered for that container +badSubPartErr = -454 #can not use sub parts in this release +badEditionFileErr = -453 #edition file is corrupt +notRegisteredSectionErr = -452 #not a registered SectionRecord +badSectionErr = -451 #not a valid SectionRecord +editionMgrInitErr = -450 #edition manager not inited by this app +fsmUnknownFSMMessageErr = -438 #unknown message passed to FSM +fsmNoAlternateStackErr = -437 #no alternate stack for HFS CI +fsmBadFSDVersionErr = -436 #FSM version incompatible with FSD +fsmDuplicateFSIDErr = -435 #FSID already exists on InstallFS +fsmBadFSDLenErr = -434 #FSD size incompatible with current FSM vers +fsmBadFFSNameErr = -433 #Name length not 1 <= length <= 31 +fsmBusyFFSErr = -432 #File system is busy, cannot be removed +fsmFFSNotFoundErr = -431 #Foreign File system does not exist - new Pack2 could return this error too +btKeyAttrErr = -417 #There is no such a key attribute. +btKeyLenErr = -416 #Maximum key length is too long or equal to zero. +btRecNotFnd = -415 #Record cannot be found. +btDupRecErr = -414 #Record already exists. +btNoSpace = -413 #Can't allocate disk space. +notBTree = -410 #The file is not a dictionary. +gcrOnMFMErr = -400 #gcr format on high density media error +slotNumErr = -360 #invalid slot # error +smRecNotFnd = -351 #Record not found in the SRT. +smSRTOvrFlErr = -350 #SRT over flow. +smNoGoodOpens = -349 #No opens were successfull in the loop. +smOffsetErr = -348 #Offset was too big (temporary error +smByteLanesErr = -347 #NumByteLanes was determined to be zero. +smBadsPtrErr = -346 #Bad pointer was passed to sCalcsPointer +smsGetDrvrErr = -345 #Error occurred during _sGetDriver. +smNoMoresRsrcs = -344 #No more sResources +smDisDrvrNamErr = -343 #Error occurred during _sDisDrvrName. +smGetDrvrNamErr = -342 #Error occurred during _sGetDrvrName. +smCkStatusErr = -341 #Status of slot = fail. +smBlkMoveErr = -340 #_BlockMove error +smNewPErr = -339 #_NewPtr error +smSelOOBErr = -338 #Selector out of bounds error +smSlotOOBErr = -337 #Slot out of bounds error +smNilsBlockErr = -336 #Nil sBlock error (Dont allocate and try to use a nil sBlock) +smsPointerNil = -335 #LPointer is nil From sOffsetData. If this error occurs; check sInfo rec for more information. +smCPUErr = -334 #Code revision is wrong +smCodeRevErr = -333 #Code revision is wrong +smReservedErr = -332 #Reserved field not zero +smBadsList = -331 #Bad sList: Id1 < Id2 < Id3 ...format is not followed. +smBadRefId = -330 #Reference Id not found in List +smBusErrTO = -320 #BusError time out. +smBadBoardId = -319 #BoardId was wrong; re-init the PRAM record. +smReservedSlot = -318 #slot is reserved, VM should not use this address space. +smInitTblVErr = -317 #An error occurred while trying to initialize the Slot Resource Table. +smInitStatVErr = -316 #The InitStatusV field was negative after primary or secondary init. +smNoBoardId = -315 #No Board Id. +smGetPRErr = -314 #Error occurred during _sGetPRAMRec (See SIMStatus). +smNoBoardSRsrc = -313 #No Board sResource. +smDisposePErr = -312 #_DisposePointer error +smFHBlkDispErr = -311 #Error occurred during _sDisposePtr (Dispose of FHeader block). +smFHBlockRdErr = -310 #Error occurred during _sGetFHeader. +smBLFieldBad = -309 #ByteLanes field was bad. +smUnExBusErr = -308 #Unexpected BusError +smResrvErr = -307 #Fatal reserved error. Resreved field <> 0. +smNosInfoArray = -306 #No sInfoArray. Memory Mgr error. +smDisabledSlot = -305 #This slot is disabled (-305 use to be smLWTstBad) +smNoDir = -304 #Directory offset is Nil +smRevisionErr = -303 #Wrong revison level +smFormatErr = -302 #FHeader Format is not Apple's +smCRCFail = -301 #CRC check failed for declaration data +smEmptySlot = -300 #No card in slot +nmTypErr = -299 #Notification Manager:wrong queue type +smPriInitErr = -293 #Error; Cards could not be initialized. +smPRAMInitErr = -292 #Error; Slot Resource Table could not be initialized. +smSRTInitErr = -291 #Error; Slot Resource Table could not be initialized. +smSDMInitErr = -290 #Error; SDM could not be initialized. +midiInvalidCmdErr = -261 #command not supported for port type +midiDupIDErr = -260 #duplicate client ID +midiNameLenErr = -259 #name supplied is longer than 31 characters +midiWriteErr = -258 #MIDIWritePacket couldn't write to all connected ports +midiNoConErr = -257 #no connection exists between specified ports +midiVConnectRmvd = -256 #pending virtual connection removed +midiVConnectMade = -255 #pending virtual connection resolved +midiVConnectErr = -254 #pending virtual connection created +midiTooManyConsErr = -253 #too many connections made +midiTooManyPortsErr = -252 #too many ports already installed in the system +midiNoPortErr = -251 #no port with that ID found +midiNoClientErr = -250 #no client with that ID found +badInputText = -247 #badInputText +badDictFormat = -246 #badDictFormat +incompatibleVoice = -245 #incompatibleVoice +voiceNotFound = -244 #voiceNotFound +bufTooSmall = -243 #bufTooSmall +synthNotReady = -242 #synthNotReady +synthOpenFailed = -241 #synthOpenFailed +noSynthFound = -240 #noSynthFound +siUnknownQuality = -232 #invalid quality selector (returned by driver) +siUnknownInfoType = -231 #invalid info type selector (returned by driver) +siInputDeviceErr = -230 #input device hardware failure +siBadRefNum = -229 #invalid input device reference number +siBadDeviceName = -228 #input device could not be opened +siDeviceBusyErr = -227 #input device already in use +siInvalidSampleSize = -226 #invalid sample size +siInvalidSampleRate = -225 #invalid sample rate +siHardDriveTooSlow = -224 #hard drive too slow to record to disk +siInvalidCompression = -223 #invalid compression type +siNoBufferSpecified = -222 #returned by synchronous SPBRecord if nil buffer passed +siBadSoundInDevice = -221 #invalid index passed to SoundInGetIndexedDevice +siNoSoundInHardware = -220 #no Sound Input hardware +siVBRCompressionNotSupported = -213 #vbr audio compression not supported for this operation +noMoreRealTime = -212 #not enough CPU cycles left to add another task +channelNotBusy = -211 #channelNotBusy +buffersTooSmall = -210 #can not operate in the memory allowed +channelBusy = -209 #the Channel is being used for a PFD already +badFileFormat = -208 #was not type AIFF or was of bad format,corrupt +notEnoughBufferSpace = -207 #could not allocate enough memory +badFormat = -206 #Sound Manager Error Returns +badChannel = -205 #Sound Manager Error Returns +resProblem = -204 #Sound Manager Error Returns +queueFull = -203 #Sound Manager Error Returns +notEnoughHardwareErr = -201 #Sound Manager Error Returns +noHardwareErr = -200 #Sound Manager Error Returns +mapReadErr = -199 #map inconsistent with operation +resAttrErr = -198 #attribute inconsistent with operation +rmvRefFailed = -197 #RmveReference failed +rmvResFailed = -196 #RmveResource failed +addRefFailed = -195 #AddReference failed +addResFailed = -194 #AddResource failed +resFNotFound = -193 #Resource file not found +resNotFound = -192 #Resource not found +inputOutOfBounds = -190 #Offset of Count out of bounds +writingPastEnd = -189 #Writing past end of file +resourceInMemory = -188 #Resource already in memory +CantDecompress = -186 #resource bent ("the bends") - can't decompress a compressed resource +badExtResource = -185 #extended resource has a bad format. +cmNoCurrentProfile = -182 #Responder error +cmUnsupportedDataType = -181 #Responder error +cmCantDeleteProfile = -180 #Responder error +cmCantXYZ = -179 #CMM cant handle XYZ space +cmCantConcatenateError = -178 #Profile can't be concatenated +cmProfilesIdentical = -177 #Profiles the same +cmProfileNotFound = -176 #Responder error +cmMethodNotFound = -175 #CMM not present +cmMethodError = -171 #cmMethodError +cmProfileError = -170 #cmProfileError +cDepthErr = -157 #invalid pixel depth +cResErr = -156 #invalid resolution for MakeITable +cDevErr = -155 #invalid type of graphics device +cProtectErr = -154 #colorTable entry protection violation +cRangeErr = -153 #range error on colorTable request +cNoMemErr = -152 #failed to allocate memory for structure +cTempMemErr = -151 #failed to allocate memory for temporary structures +cMatchErr = -150 #Color2Index failed to find an index +insufficientStackErr = -149 #insufficientStackErr +pixMapTooDeepErr = -148 #pixMapTooDeepErr +rgnOverflowErr = -147 #rgnOverflowErr +noMemForPictPlaybackErr = -145 #noMemForPictPlaybackErr +userCanceledErr = -128 #userCanceledErr +hMenuFindErr = -127 #could not find HMenu's parent in MenuKey (wrong error code - obsolete) +mBarNFnd = -126 #system error code for MBDF not found +updPixMemErr = -125 #insufficient memory to update a pixmap +volGoneErr = -124 #Server volume has been disconnected. +wrgVolTypErr = -123 #Wrong volume type error [operation not supported for MFS] +badMovErr = -122 #Move into offspring error +tmwdoErr = -121 #No free WDCB available +dirNFErr = -120 #Directory not found +memLockedErr = -117 #trying to move a locked block (MoveHHi) +memSCErr = -116 #Size Check failed +memBCErr = -115 #Block Check failed +memPCErr = -114 #Pointer Check failed +memAZErr = -113 #Address in zone check failed +memPurErr = -112 #trying to purge a locked or non-purgeable block +memWZErr = -111 #WhichZone failed (applied to free block) +memAdrErr = -110 #address was odd; or out of range +nilHandleErr = -109 #Master Pointer was NIL in HandleZone or other +memFullErr = -108 #Not enough room in heap zone +noTypeErr = -102 #No object of that type in scrap +noScrapErr = -100 #No scrap exists error +memROZWarn = -99 #soft error in ROZ +portNotCf = -98 #driver Open error code (parameter RAM not configured for this connection) +portInUse = -97 #driver Open error code (port is in use) +portNotPwr = -96 #serial port not currently powered +excessCollsns = -95 #excessive collisions on write +lapProtErr = -94 #error in attaching/detaching protocol +noBridgeErr = -93 #no network bridge for non-local send +eLenErr = -92 #Length error ddpLenErr +eMultiErr = -91 #Multicast address error ddpSktErr +breakRecd = -90 #Break received (SCC) +rcvrErr = -89 #SCC receiver error (framing; parity; OR) +prInitErr = -88 #InitUtil found the parameter ram uninitialized +prWrErr = -87 #parameter ram written didn't read-verify +clkWrErr = -86 #time written did not verify +clkRdErr = -85 #unable to read same clock value twice +verErr = -84 #track failed to verify +fmt2Err = -83 #can't get enough sync +fmt1Err = -82 #can't find sector 0 after track format +sectNFErr = -81 #sector number never found on a track +seekErr = -80 #track number wrong on address mark +spdAdjErr = -79 #unable to correctly adjust disk speed +twoSideErr = -78 #tried to read 2nd side on a 1-sided drive +initIWMErr = -77 #unable to initialize IWM +tk0BadErr = -76 #track 0 detect doesn't change +cantStepErr = -75 #step handshake failed +wrUnderrun = -74 #write underrun occurred +badDBtSlp = -73 #bad data mark bit slip nibbles +badDCksum = -72 #bad data mark checksum +noDtaMkErr = -71 #couldn't find a data mark header +badBtSlpErr = -70 #bad addr mark bit slip nibbles +badCksmErr = -69 #addr mark checksum didn't check +dataVerErr = -68 #read verify compare failed +noAdrMkErr = -67 #couldn't find valid addr mark +noNybErr = -66 #couldn't find 5 nybbles in 200 tries +offLinErr = -65 #r/w requested for an off-line drive +fontDecError = -64 #error during font declaration +wrPermErr = -61 #write permissions error +badMDBErr = -60 #bad master directory block +fsRnErr = -59 #file system internal error:during rename the old entry was deleted but could not be restored. +extFSErr = -58 #volume in question belongs to an external fs +noMacDskErr = -57 #not a mac diskette (sig bytes are wrong) +nsDrvErr = -56 #no such drive (tried to mount a bad drive num) +volOnLinErr = -55 #drive volume already on-line at MountVol +permErr = -54 #permissions error (on file open) +volOffLinErr = -53 #volume not on line error (was Ejected) +gfpErr = -52 #get file position error +rfNumErr = -51 #refnum error +paramErr = -50 #error in user parameter list +opWrErr = -49 #file already open with with write permission +dupFNErr = -48 #duplicate filename (rename) +fBsyErr = -47 #File is busy (delete) +vLckdErr = -46 #volume is locked +fLckdErr = -45 #file is locked +wPrErr = -44 #diskette is write protected. +fnfErr = -43 #File not found +tmfoErr = -42 #too many files open +mFulErr = -41 #memory full (open) or file won't fit (load) +posErr = -40 #tried to position to before start of file (r/w) +eofErr = -39 #End of file +fnOpnErr = -38 #File not open +bdNamErr = -37 #there may be no bad names in the final system! +ioErr = -36 #I/O error (bummers) +nsvErr = -35 #no such volume +dskFulErr = -34 #disk full +dirFulErr = -33 #Directory full +dceExtErr = -30 #dce extension error +unitTblFullErr = -29 #unit table has no more entries +notOpenErr = -28 #Couldn't rd/wr/ctl/sts cause driver not opened +iIOAbortErr = -27 #IO abort error (Printing Manager) +dInstErr = -26 #DrvrInstall couldn't find driver in resources +dRemovErr = -25 #tried to remove an open driver +closErr = -24 #I/O System Errors +openErr = -23 #I/O System Errors +unitEmptyErr = -22 #I/O System Errors +badUnitErr = -21 #I/O System Errors +writErr = -20 #I/O System Errors +readErr = -19 #I/O System Errors +statusErr = -18 #I/O System Errors +controlErr = -17 #I/O System Errors +dsExtensionsDisabled = -13 #say –Extensions Disabled” +dsHD20Installed = -12 #say –HD20 Startup” +dsDisassemblerInstalled = -11 #say –Disassembler Installed” +dsMacsBugInstalled = -10 #say –MacsBug Installed” +seNoDB = -8 #no debugger installed to handle debugger command +SlpTypeErr = -5 #invalid queue element +unimpErr = -4 #unimplemented core routine +corErr = -3 #core routine number out of range +dsNoExtsDisassembler = -2 #not a SysErr, just a placeholder +qErr = -1 #queue element not found during deletion +tsmComponentNoErr = 0 #component result = no error +EPERM = 1 #Operation not permitted +ENOENT = 2 #No such file or directory +ESRCH = 3 #No such process +EINTR = 4 #Interrupted system call +EIO = 5 #Input/output error +ENXIO = 6 #Device not configured +E2BIG = 7 #Argument list too long +ENOEXEC = 8 #Exec format error +EBADF = 9 #Bad file descriptor +ECHILD = 10 #No child processes +EDEADLK = 11 #Resource deadlock avoided +ENOMEM = 12 #Cannot allocate memory +EACCES = 13 #Permission denied +EFAULT = 14 #Bad address +ECANCELED = 15 #Operation cancelled +EBUSY = 16 #Device busy +EEXIST = 17 #File exists +EXDEV = 18 #Cross-device link +ENODEV = 19 #Operation not supported by device +ENOTDIR = 20 #Not a directory +EISDIR = 21 #Is a directory +EINVAL = 22 #Invalid argument +ENFILE = 23 #Too many open files in system +EMFILE = 24 #Too many open files +ENOTTY = 25 #Inappropriate ioctl for device +ESIGPARM = 26 #Signal error +EFBIG = 27 #File too large +ENOSPC = 28 #No space left on device +ESPIPE = 29 #Illegal seek +EROFS = 30 #Read-only file system +EMLINK = 31 #Too many links +EPIPE = 32 #Broken pipe +EDOM = 33 #Numerical argument out of domain +ERANGE = 34 #Result too large +EAGAIN = 35 #Resource temporarily unavailable +EINPROGRESS = 36 #Operation now in progress +EALREADY = 37 #Operation already in progress +ENOTSOCK = 38 #Socket operation on non-socket +EDESTADDRREQ = 39 #Destination address required +EMSGSIZE = 40 #Message too long +EPROTOTYPE = 41 #Protocol wrong type for socket +ENOPROTOOPT = 42 #Protocol not available +EPROTONOSUPPORT = 43 #Protocol not supported +ESOCKTNOSUPPORT = 44 #Socket type not supported +EOPNOTSUPP = 45 #Operation not supported +EPFNOSUPPORT = 46 #Protocol family not supported +EAFNOSUPPORT = 47 #Address family not supported by protocol family +EADDRINUSE = 48 #Address already in use +EADDRNOTAVAIL = 49 #Can't assign requested address +ENETDOWN = 50 #Network is down +ENETUNREACH = 51 #Network is unreachable +ENETRESET = 52 #Network dropped connection on reset +ECONNABORTED = 53 #Software caused connection abort +ECONNRESET = 54 #Connection reset by peer +ENOBUFS = 55 #No buffer space available +EISCONN = 56 #Socket is already connected +ENOTCONN = 57 #Socket is not connected +ESHUTDOWN = 58 #Can't send after socket shutdown +ETOOMANYREFS = 59 #Too many references: can't splice +ETIMEDOUT = 60 #Operation timed out +ECONNREFUSED = 61 #Connection refused +ELOOP = 62 #Too many levels of symbolic links +ENAMETOOLONG = 63 #File name too long +EHOSTDOWN = 64 #Host is down +EHOSTUNREACH = 65 #No route to host +ENOTEMPTY = 66 #Directory not empty +ELOOK = 67 #Internal mapping for kOTLookErr, don't return to client +ENOLCK = 77 #No locks available +ENOSYS = 78 #Function not implemented +EILSEQ = 88 #Wide character encoding error +EUNKNOWN = 99 #Unknown error diff --git a/sys/lib/python/plat-mac/macfs.py b/sys/lib/python/plat-mac/macfs.py new file mode 100644 index 000000000..73815aeb3 --- /dev/null +++ b/sys/lib/python/plat-mac/macfs.py @@ -0,0 +1,198 @@ +"""macfs - Pure Python module designed to be backward compatible with +macfs and MACFS. +""" +import sys +import struct +import Carbon.Res +import Carbon.File +import warnings + +warnings.warn("macfs is deprecated, use Carbon.File, Carbon.Folder or EasyDialogs", + DeprecationWarning, stacklevel=2) + +# First step: ensure we also emulate the MACFS module, which contained +# all the constants + +sys.modules['MACFS'] = sys.modules[__name__] + +# Import all those constants +from Carbon.Files import * +from Carbon.Folders import * + +# For some obscure historical reason these are here too: +READ = 1 +WRITE = 2 +smAllScripts = -3 + +# +# Find the epoch conversion for file dates in a way that works on OS9 and OSX +import time +if time.gmtime(0)[0] == 1970: + _EPOCHCONVERT = -((1970-1904)*365 + 17) * (24*60*60) + 0x100000000L + def _utc2time(utc): + t = utc[1] + _EPOCHCONVERT + return int(t) + def _time2utc(t): + t = int(t) - _EPOCHCONVERT + if t < -0x7fffffff: + t = t + 0x10000000L + return (0, int(t), 0) +else: + def _utc2time(utc): + t = utc[1] + if t < 0: + t = t + 0x100000000L + return t + def _time2utc(t): + if t > 0x7fffffff: + t = t - 0x100000000L + return (0, int(t), 0) + +# The old name of the error object: +error = Carbon.File.Error + +# +# The various objects macfs used to export. We override them here, because some +# of the method names are subtly different. +# +class FSSpec(Carbon.File.FSSpec): + def as_fsref(self): + return FSRef(self) + + def NewAlias(self, src=None): + return Alias(Carbon.File.NewAlias(src, self)) + + def GetCreatorType(self): + finfo = self.FSpGetFInfo() + return finfo.Creator, finfo.Type + + def SetCreatorType(self, ctor, tp): + finfo = self.FSpGetFInfo() + finfo.Creator = ctor + finfo.Type = tp + self.FSpSetFInfo(finfo) + + def GetFInfo(self): + return self.FSpGetFInfo() + + def SetFInfo(self, info): + return self.FSpSetFInfo(info) + + def GetDates(self): + catInfoFlags = kFSCatInfoCreateDate|kFSCatInfoContentMod|kFSCatInfoBackupDate + catinfo, d1, d2, d3 = FSRef(self).FSGetCatalogInfo(catInfoFlags) + cdate = catinfo.createDate + mdate = catinfo.contentModDate + bdate = catinfo.backupDate + return _utc2time(cdate), _utc2time(mdate), _utc2time(bdate) + + def SetDates(self, cdate, mdate, bdate): + catInfoFlags = kFSCatInfoCreateDate|kFSCatInfoContentMod|kFSCatInfoBackupDate + catinfo = Carbon.File.FSCatalogInfo( + createDate = _time2utc(cdate), + contentModDate = _time2utc(mdate), + backupDate = _time2utc(bdate)) + FSRef(self).FSSetCatalogInfo(catInfoFlags, catinfo) + +class FSRef(Carbon.File.FSRef): + def as_fsspec(self): + return FSSpec(self) + +class Alias(Carbon.File.Alias): + + def GetInfo(self, index): + return self.GetAliasInfo(index) + + def Update(self, *args): + pass # print "Alias.Update not yet implemented" + + def Resolve(self, src=None): + fss, changed = self.ResolveAlias(src) + return FSSpec(fss), changed + +from Carbon.File import FInfo + +# Backward-compatible type names: +FSSpecType = FSSpec +FSRefType = FSRef +AliasType = Alias +FInfoType = FInfo + +# Global functions: +def ResolveAliasFile(fss, chain=1): + fss, isdir, isalias = Carbon.File.ResolveAliasFile(fss, chain) + return FSSpec(fss), isdir, isalias + +def RawFSSpec(data): + return FSSpec(rawdata=data) + +def RawAlias(data): + return Alias(rawdata=data) + +def FindApplication(*args): + raise NotImplementedError, "FindApplication no longer implemented" + +def NewAliasMinimalFromFullPath(path): + return Alias(Carbon.File.NewAliasMinimalFromFullPath(path, '', '')) + +# Another global function: +from Carbon.Folder import FindFolder + +# +# Finally the old Standard File routine emulators. +# + +_curfolder = None + +def StandardGetFile(*typelist): + """Ask for an input file, optionally specifying 4-char file types that are + allowable""" + return PromptGetFile('', *typelist) + +def PromptGetFile(prompt, *typelist): + """Ask for an input file giving the user a prompt message. Optionally you can + specifying 4-char file types that are allowable""" + import EasyDialogs + warnings.warn("macfs.StandardGetFile and friends are deprecated, use EasyDialogs.AskFileForOpen", + DeprecationWarning, stacklevel=2) + if not typelist: + typelist = None + fss = EasyDialogs.AskFileForOpen(message=prompt, wanted=FSSpec, + typeList=typelist, defaultLocation=_handleSetFolder()) + return fss, not fss is None + +def StandardPutFile(prompt, default=None): + """Ask the user for an output file, with a prompt. Optionally you cn supply a + default output filename""" + import EasyDialogs + warnings.warn("macfs.StandardGetFile and friends are deprecated, use EasyDialogs.AskFileForOpen", + DeprecationWarning, stacklevel=2) + fss = EasyDialogs.AskFileForSave(wanted=FSSpec, message=prompt, + savedFileName=default, defaultLocation=_handleSetFolder()) + return fss, not fss is None + +def SetFolder(folder): + global _curfolder + warnings.warn("macfs.StandardGetFile and friends are deprecated, use EasyDialogs.AskFileForOpen", + DeprecationWarning, stacklevel=2) + if _curfolder: + rv = FSSpec(_curfolder) + else: + rv = None + _curfolder = folder + return rv + +def _handleSetFolder(): + global _curfolder + rv = _curfolder + _curfolder = None + return rv + +def GetDirectory(prompt=None): + """Ask the user to select a folder. Optionally you can give a prompt.""" + import EasyDialogs + warnings.warn("macfs.StandardGetFile and friends are deprecated, use EasyDialogs.AskFileForOpen", + DeprecationWarning, stacklevel=2) + fss = EasyDialogs.AskFolder(message=prompt, wanted=FSSpec, + defaultLocation=_handleSetFolder()) + return fss, not fss is None diff --git a/sys/lib/python/plat-mac/macostools.py b/sys/lib/python/plat-mac/macostools.py new file mode 100644 index 000000000..f7ce46826 --- /dev/null +++ b/sys/lib/python/plat-mac/macostools.py @@ -0,0 +1,142 @@ +"""macostools - Various utility functions for MacOS. + +mkalias(src, dst) - Create a finder alias 'dst' pointing to 'src' +copy(src, dst) - Full copy of 'src' to 'dst' +""" + +from Carbon import Res +from Carbon import File, Files +import os +import sys +import MacOS +import time +try: + openrf = MacOS.openrf +except AttributeError: + # Backward compatibility + openrf = open + +Error = 'macostools.Error' + +BUFSIZ=0x80000 # Copy in 0.5Mb chunks + +COPY_FLAGS = (Files.kIsStationary|Files.kNameLocked|Files.kHasBundle| + Files.kIsInvisible|Files.kIsAlias) + +# +# Not guaranteed to be correct or stay correct (Apple doesn't tell you +# how to do this), but it seems to work. +# +def mkalias(src, dst, relative=None): + """Create a finder alias""" + srcfsr = File.FSRef(src) + # The next line will fail under unix-Python if the destination + # doesn't exist yet. We should change this code to be fsref-based. + dstdir, dstname = os.path.split(dst) + if not dstdir: dstdir = os.curdir + dstdirfsr = File.FSRef(dstdir) + if relative: + relativefsr = File.FSRef(relative) + # ik mag er geen None in stoppen :-( + alias = File.FSNewAlias(relativefsr, srcfsr) + else: + alias = srcfsr.FSNewAliasMinimal() + + dstfsr, dstfss = Res.FSCreateResourceFile(dstdirfsr, unicode(dstname), + File.FSGetResourceForkName()) + h = Res.FSOpenResourceFile(dstfsr, File.FSGetResourceForkName(), 3) + resource = Res.Resource(alias.data) + resource.AddResource('alis', 0, '') + Res.CloseResFile(h) + + dstfinfo = dstfss.FSpGetFInfo() + dstfinfo.Flags = dstfinfo.Flags|0x8000 # Alias flag + dstfss.FSpSetFInfo(dstfinfo) + +def mkdirs(dst): + """Make directories leading to 'dst' if they don't exist yet""" + if dst == '' or os.path.exists(dst): + return + head, tail = os.path.split(dst) + if os.sep == ':' and not ':' in head: + head = head + ':' + mkdirs(head) + os.mkdir(dst, 0777) + +def touched(dst): + """Tell the finder a file has changed. No-op on MacOSX.""" + if sys.platform != 'mac': return + import warnings + warnings.filterwarnings("ignore", "macfs.*", DeprecationWarning, __name__) + import macfs + file_fss = macfs.FSSpec(dst) + vRefNum, dirID, name = file_fss.as_tuple() + dir_fss = macfs.FSSpec((vRefNum, dirID, '')) + crdate, moddate, bkdate = dir_fss.GetDates() + now = time.time() + if now == moddate: + now = now + 1 + try: + dir_fss.SetDates(crdate, now, bkdate) + except macfs.error: + pass + +def touched_ae(dst): + """Tell the finder a file has changed""" + pardir = os.path.split(dst)[0] + if not pardir: + pardir = os.curdir + import Finder + f = Finder.Finder() + f.update(File.FSRef(pardir)) + +def copy(src, dst, createpath=0, copydates=1, forcetype=None): + """Copy a file, including finder info, resource fork, etc""" + src = File.pathname(src) + dst = File.pathname(dst) + if createpath: + mkdirs(os.path.split(dst)[0]) + + ifp = open(src, 'rb') + ofp = open(dst, 'wb') + d = ifp.read(BUFSIZ) + while d: + ofp.write(d) + d = ifp.read(BUFSIZ) + ifp.close() + ofp.close() + + ifp = openrf(src, '*rb') + ofp = openrf(dst, '*wb') + d = ifp.read(BUFSIZ) + while d: + ofp.write(d) + d = ifp.read(BUFSIZ) + ifp.close() + ofp.close() + + srcfss = File.FSSpec(src) + dstfss = File.FSSpec(dst) + sf = srcfss.FSpGetFInfo() + df = dstfss.FSpGetFInfo() + df.Creator, df.Type = sf.Creator, sf.Type + if forcetype != None: + df.Type = forcetype + df.Flags = (sf.Flags & COPY_FLAGS) + dstfss.FSpSetFInfo(df) + if copydates: + srcfsr = File.FSRef(src) + dstfsr = File.FSRef(dst) + catinfo, _, _, _ = srcfsr.FSGetCatalogInfo(Files.kFSCatInfoAllDates) + dstfsr.FSSetCatalogInfo(Files.kFSCatInfoAllDates, catinfo) + touched(dstfss) + +def copytree(src, dst, copydates=1): + """Copy a complete file tree to a new destination""" + if os.path.isdir(src): + mkdirs(dst) + files = os.listdir(src) + for f in files: + copytree(os.path.join(src, f), os.path.join(dst, f), copydates) + else: + copy(src, dst, 1, copydates) diff --git a/sys/lib/python/plat-mac/macresource.py b/sys/lib/python/plat-mac/macresource.py new file mode 100644 index 000000000..f68ecdc8a --- /dev/null +++ b/sys/lib/python/plat-mac/macresource.py @@ -0,0 +1,146 @@ +"""macresource - Locate and open the resources needed for a script.""" + +from Carbon import Res +import os +import sys +import MacOS +import macostools + +class ArgumentError(TypeError): pass +class ResourceFileNotFoundError(ImportError): pass + +def need(restype, resid, filename=None, modname=None): + """Open a resource file, if needed. restype and resid + are required parameters, and identify the resource for which to test. If it + is available we are done. If it is not available we look for a file filename + (default: modname with .rsrc appended) either in the same folder as + where modname was loaded from, or otherwise across sys.path. + + Returns the refno of the resource file opened (or None)""" + + if modname is None and filename is None: + raise ArgumentError, "Either filename or modname argument (or both) must be given" + + if type(resid) is type(1): + try: + h = Res.GetResource(restype, resid) + except Res.Error: + pass + else: + return None + else: + try: + h = Res.GetNamedResource(restype, resid) + except Res.Error: + pass + else: + return None + + # Construct a filename if we don't have one + if not filename: + if '.' in modname: + filename = modname.split('.')[-1] + '.rsrc' + else: + filename = modname + '.rsrc' + + # Now create a list of folders to search + searchdirs = [] + if modname == '__main__': + # If we're main we look in the current directory + searchdirs = [os.curdir] + if sys.modules.has_key(modname): + mod = sys.modules[modname] + if hasattr(mod, '__file__'): + searchdirs = [os.path.dirname(mod.__file__)] + searchdirs.extend(sys.path) + + # And look for the file + for dir in searchdirs: + pathname = os.path.join(dir, filename) + if os.path.exists(pathname): + break + else: + raise ResourceFileNotFoundError, filename + + refno = open_pathname(pathname) + + # And check that the resource exists now + if type(resid) is type(1): + h = Res.GetResource(restype, resid) + else: + h = Res.GetNamedResource(restype, resid) + return refno + +def open_pathname(pathname, verbose=0): + """Open a resource file given by pathname, possibly decoding an + AppleSingle file""" + try: + refno = Res.FSpOpenResFile(pathname, 1) + except Res.Error, arg: + if arg[0] in (-37, -39): + # No resource fork. We may be on OSX, and this may be either + # a data-fork based resource file or a AppleSingle file + # from the CVS repository. + try: + refno = Res.FSOpenResourceFile(pathname, u'', 1) + except Res.Error, arg: + if arg[0] != -199: + # -199 is "bad resource map" + raise + else: + return refno + # Finally try decoding an AppleSingle file + pathname = _decode(pathname, verbose=verbose) + refno = Res.FSOpenResourceFile(pathname, u'', 1) + else: + raise + return refno + +def resource_pathname(pathname, verbose=0): + """Return the pathname for a resource file (either DF or RF based). + If the pathname given already refers to such a file simply return it, + otherwise first decode it.""" + try: + refno = Res.FSpOpenResFile(pathname, 1) + Res.CloseResFile(refno) + except Res.Error, arg: + if arg[0] in (-37, -39): + # No resource fork. We may be on OSX, and this may be either + # a data-fork based resource file or a AppleSingle file + # from the CVS repository. + try: + refno = Res.FSOpenResourceFile(pathname, u'', 1) + except Res.Error, arg: + if arg[0] != -199: + # -199 is "bad resource map" + raise + else: + return refno + # Finally try decoding an AppleSingle file + pathname = _decode(pathname, verbose=verbose) + else: + raise + return pathname + +def open_error_resource(): + """Open the resource file containing the error code to error message + mapping.""" + need('Estr', 1, filename="errors.rsrc", modname=__name__) + +def _decode(pathname, verbose=0): + # Decode an AppleSingle resource file, return the new pathname. + newpathname = pathname + '.df.rsrc' + if os.path.exists(newpathname) and \ + os.stat(newpathname).st_mtime >= os.stat(pathname).st_mtime: + return newpathname + if hasattr(os, 'access') and not \ + os.access(os.path.dirname(pathname), os.W_OK|os.X_OK): + # The destination directory isn't writeable. Create the file in + # a temporary directory + import tempfile + fd, newpathname = tempfile.mkstemp(".rsrc") + if verbose: + print 'Decoding', pathname, 'to', newpathname + import applesingle + applesingle.decode(pathname, newpathname, resonly=1) + return newpathname diff --git a/sys/lib/python/plat-mac/pimp.py b/sys/lib/python/plat-mac/pimp.py new file mode 100644 index 000000000..456427c1c --- /dev/null +++ b/sys/lib/python/plat-mac/pimp.py @@ -0,0 +1,1177 @@ +"""Package Install Manager for Python. + +This is currently a MacOSX-only strawman implementation. +Despite other rumours the name stands for "Packman IMPlementation". + +Tools to allow easy installation of packages. The idea is that there is +an online XML database per (platform, python-version) containing packages +known to work with that combination. This module contains tools for getting +and parsing the database, testing whether packages are installed, computing +dependencies and installing packages. + +There is a minimal main program that works as a command line tool, but the +intention is that the end user will use this through a GUI. +""" +import sys +import os +import popen2 +import urllib +import urllib2 +import urlparse +import plistlib +import distutils.util +import distutils.sysconfig +import hashlib +import tarfile +import tempfile +import shutil +import time + +__all__ = ["PimpPreferences", "PimpDatabase", "PimpPackage", "main", + "getDefaultDatabase", "PIMP_VERSION", "main"] + +_scriptExc_NotInstalled = "pimp._scriptExc_NotInstalled" +_scriptExc_OldInstalled = "pimp._scriptExc_OldInstalled" +_scriptExc_BadInstalled = "pimp._scriptExc_BadInstalled" + +NO_EXECUTE=0 + +PIMP_VERSION="0.5" + +# Flavors: +# source: setup-based package +# binary: tar (or other) archive created with setup.py bdist. +# installer: something that can be opened +DEFAULT_FLAVORORDER=['source', 'binary', 'installer'] +DEFAULT_DOWNLOADDIR='/tmp' +DEFAULT_BUILDDIR='/tmp' +DEFAULT_INSTALLDIR=distutils.sysconfig.get_python_lib() +DEFAULT_PIMPDATABASE_FMT="http://www.python.org/packman/version-%s/%s-%s-%s-%s-%s.plist" + +def getDefaultDatabase(experimental=False): + if experimental: + status = "exp" + else: + status = "prod" + + major, minor, micro, state, extra = sys.version_info + pyvers = '%d.%d' % (major, minor) + if micro == 0 and state != 'final': + pyvers = pyvers + '%s%d' % (state, extra) + + longplatform = distutils.util.get_platform() + osname, release, machine = longplatform.split('-') + # For some platforms we may want to differentiate between + # installation types + if osname == 'darwin': + if sys.prefix.startswith('/System/Library/Frameworks/Python.framework'): + osname = 'darwin_apple' + elif sys.prefix.startswith('/Library/Frameworks/Python.framework'): + osname = 'darwin_macpython' + # Otherwise we don't know... + # Now we try various URLs by playing with the release string. + # We remove numbers off the end until we find a match. + rel = release + while True: + url = DEFAULT_PIMPDATABASE_FMT % (PIMP_VERSION, status, pyvers, osname, rel, machine) + try: + urllib2.urlopen(url) + except urllib2.HTTPError, arg: + pass + else: + break + if not rel: + # We're out of version numbers to try. Use the + # full release number, this will give a reasonable + # error message later + url = DEFAULT_PIMPDATABASE_FMT % (PIMP_VERSION, status, pyvers, osname, release, machine) + break + idx = rel.rfind('.') + if idx < 0: + rel = '' + else: + rel = rel[:idx] + return url + +def _cmd(output, dir, *cmditems): + """Internal routine to run a shell command in a given directory.""" + + cmd = ("cd \"%s\"; " % dir) + " ".join(cmditems) + if output: + output.write("+ %s\n" % cmd) + if NO_EXECUTE: + return 0 + child = popen2.Popen4(cmd) + child.tochild.close() + while 1: + line = child.fromchild.readline() + if not line: + break + if output: + output.write(line) + return child.wait() + +class PimpDownloader: + """Abstract base class - Downloader for archives""" + + def __init__(self, argument, + dir="", + watcher=None): + self.argument = argument + self._dir = dir + self._watcher = watcher + + def download(self, url, filename, output=None): + return None + + def update(self, str): + if self._watcher: + return self._watcher.update(str) + return True + +class PimpCurlDownloader(PimpDownloader): + + def download(self, url, filename, output=None): + self.update("Downloading %s..." % url) + exitstatus = _cmd(output, self._dir, + "curl", + "--output", filename, + url) + self.update("Downloading %s: finished" % url) + return (not exitstatus) + +class PimpUrllibDownloader(PimpDownloader): + + def download(self, url, filename, output=None): + output = open(filename, 'wb') + self.update("Downloading %s: opening connection" % url) + keepgoing = True + download = urllib2.urlopen(url) + if download.headers.has_key("content-length"): + length = long(download.headers['content-length']) + else: + length = -1 + + data = download.read(4096) #read 4K at a time + dlsize = 0 + lasttime = 0 + while keepgoing: + dlsize = dlsize + len(data) + if len(data) == 0: + #this is our exit condition + break + output.write(data) + if int(time.time()) != lasttime: + # Update at most once per second + lasttime = int(time.time()) + if length == -1: + keepgoing = self.update("Downloading %s: %d bytes..." % (url, dlsize)) + else: + keepgoing = self.update("Downloading %s: %d%% (%d bytes)..." % (url, int(100.0*dlsize/length), dlsize)) + data = download.read(4096) + if keepgoing: + self.update("Downloading %s: finished" % url) + return keepgoing + +class PimpUnpacker: + """Abstract base class - Unpacker for archives""" + + _can_rename = False + + def __init__(self, argument, + dir="", + renames=[], + watcher=None): + self.argument = argument + if renames and not self._can_rename: + raise RuntimeError, "This unpacker cannot rename files" + self._dir = dir + self._renames = renames + self._watcher = watcher + + def unpack(self, archive, output=None, package=None): + return None + + def update(self, str): + if self._watcher: + return self._watcher.update(str) + return True + +class PimpCommandUnpacker(PimpUnpacker): + """Unpack archives by calling a Unix utility""" + + _can_rename = False + + def unpack(self, archive, output=None, package=None): + cmd = self.argument % archive + if _cmd(output, self._dir, cmd): + return "unpack command failed" + +class PimpTarUnpacker(PimpUnpacker): + """Unpack tarfiles using the builtin tarfile module""" + + _can_rename = True + + def unpack(self, archive, output=None, package=None): + tf = tarfile.open(archive, "r") + members = tf.getmembers() + skip = [] + if self._renames: + for member in members: + for oldprefix, newprefix in self._renames: + if oldprefix[:len(self._dir)] == self._dir: + oldprefix2 = oldprefix[len(self._dir):] + else: + oldprefix2 = None + if member.name[:len(oldprefix)] == oldprefix: + if newprefix is None: + skip.append(member) + #print 'SKIP', member.name + else: + member.name = newprefix + member.name[len(oldprefix):] + print ' ', member.name + break + elif oldprefix2 and member.name[:len(oldprefix2)] == oldprefix2: + if newprefix is None: + skip.append(member) + #print 'SKIP', member.name + else: + member.name = newprefix + member.name[len(oldprefix2):] + #print ' ', member.name + break + else: + skip.append(member) + #print '????', member.name + for member in members: + if member in skip: + self.update("Skipping %s" % member.name) + continue + self.update("Extracting %s" % member.name) + tf.extract(member, self._dir) + if skip: + names = [member.name for member in skip if member.name[-1] != '/'] + if package: + names = package.filterExpectedSkips(names) + if names: + return "Not all files were unpacked: %s" % " ".join(names) + +ARCHIVE_FORMATS = [ + (".tar.Z", PimpTarUnpacker, None), + (".taz", PimpTarUnpacker, None), + (".tar.gz", PimpTarUnpacker, None), + (".tgz", PimpTarUnpacker, None), + (".tar.bz", PimpTarUnpacker, None), + (".zip", PimpCommandUnpacker, "unzip \"%s\""), +] + +class PimpPreferences: + """Container for per-user preferences, such as the database to use + and where to install packages.""" + + def __init__(self, + flavorOrder=None, + downloadDir=None, + buildDir=None, + installDir=None, + pimpDatabase=None): + if not flavorOrder: + flavorOrder = DEFAULT_FLAVORORDER + if not downloadDir: + downloadDir = DEFAULT_DOWNLOADDIR + if not buildDir: + buildDir = DEFAULT_BUILDDIR + if not pimpDatabase: + pimpDatabase = getDefaultDatabase() + self.setInstallDir(installDir) + self.flavorOrder = flavorOrder + self.downloadDir = downloadDir + self.buildDir = buildDir + self.pimpDatabase = pimpDatabase + self.watcher = None + + def setWatcher(self, watcher): + self.watcher = watcher + + def setInstallDir(self, installDir=None): + if installDir: + # Installing to non-standard location. + self.installLocations = [ + ('--install-lib', installDir), + ('--install-headers', None), + ('--install-scripts', None), + ('--install-data', None)] + else: + installDir = DEFAULT_INSTALLDIR + self.installLocations = [] + self.installDir = installDir + + def isUserInstall(self): + return self.installDir != DEFAULT_INSTALLDIR + + def check(self): + """Check that the preferences make sense: directories exist and are + writable, the install directory is on sys.path, etc.""" + + rv = "" + RWX_OK = os.R_OK|os.W_OK|os.X_OK + if not os.path.exists(self.downloadDir): + rv += "Warning: Download directory \"%s\" does not exist\n" % self.downloadDir + elif not os.access(self.downloadDir, RWX_OK): + rv += "Warning: Download directory \"%s\" is not writable or not readable\n" % self.downloadDir + if not os.path.exists(self.buildDir): + rv += "Warning: Build directory \"%s\" does not exist\n" % self.buildDir + elif not os.access(self.buildDir, RWX_OK): + rv += "Warning: Build directory \"%s\" is not writable or not readable\n" % self.buildDir + if not os.path.exists(self.installDir): + rv += "Warning: Install directory \"%s\" does not exist\n" % self.installDir + elif not os.access(self.installDir, RWX_OK): + rv += "Warning: Install directory \"%s\" is not writable or not readable\n" % self.installDir + else: + installDir = os.path.realpath(self.installDir) + for p in sys.path: + try: + realpath = os.path.realpath(p) + except: + pass + if installDir == realpath: + break + else: + rv += "Warning: Install directory \"%s\" is not on sys.path\n" % self.installDir + return rv + + def compareFlavors(self, left, right): + """Compare two flavor strings. This is part of your preferences + because whether the user prefers installing from source or binary is.""" + if left in self.flavorOrder: + if right in self.flavorOrder: + return cmp(self.flavorOrder.index(left), self.flavorOrder.index(right)) + return -1 + if right in self.flavorOrder: + return 1 + return cmp(left, right) + +class PimpDatabase: + """Class representing a pimp database. It can actually contain + information from multiple databases through inclusion, but the + toplevel database is considered the master, as its maintainer is + "responsible" for the contents.""" + + def __init__(self, prefs): + self._packages = [] + self.preferences = prefs + self._url = "" + self._urllist = [] + self._version = "" + self._maintainer = "" + self._description = "" + + # Accessor functions + def url(self): return self._url + def version(self): return self._version + def maintainer(self): return self._maintainer + def description(self): return self._description + + def close(self): + """Clean up""" + self._packages = [] + self.preferences = None + + def appendURL(self, url, included=0): + """Append packages from the database with the given URL. + Only the first database should specify included=0, so the + global information (maintainer, description) get stored.""" + + if url in self._urllist: + return + self._urllist.append(url) + fp = urllib2.urlopen(url).fp + plistdata = plistlib.Plist.fromFile(fp) + # Test here for Pimp version, etc + if included: + version = plistdata.get('Version') + if version and version > self._version: + sys.stderr.write("Warning: included database %s is for pimp version %s\n" % + (url, version)) + else: + self._version = plistdata.get('Version') + if not self._version: + sys.stderr.write("Warning: database has no Version information\n") + elif self._version > PIMP_VERSION: + sys.stderr.write("Warning: database version %s newer than pimp version %s\n" + % (self._version, PIMP_VERSION)) + self._maintainer = plistdata.get('Maintainer', '') + self._description = plistdata.get('Description', '').strip() + self._url = url + self._appendPackages(plistdata['Packages'], url) + others = plistdata.get('Include', []) + for o in others: + o = urllib.basejoin(url, o) + self.appendURL(o, included=1) + + def _appendPackages(self, packages, url): + """Given a list of dictionaries containing package + descriptions create the PimpPackage objects and append them + to our internal storage.""" + + for p in packages: + p = dict(p) + if p.has_key('Download-URL'): + p['Download-URL'] = urllib.basejoin(url, p['Download-URL']) + flavor = p.get('Flavor') + if flavor == 'source': + pkg = PimpPackage_source(self, p) + elif flavor == 'binary': + pkg = PimpPackage_binary(self, p) + elif flavor == 'installer': + pkg = PimpPackage_installer(self, p) + elif flavor == 'hidden': + pkg = PimpPackage_installer(self, p) + else: + pkg = PimpPackage(self, dict(p)) + self._packages.append(pkg) + + def list(self): + """Return a list of all PimpPackage objects in the database.""" + + return self._packages + + def listnames(self): + """Return a list of names of all packages in the database.""" + + rv = [] + for pkg in self._packages: + rv.append(pkg.fullname()) + rv.sort() + return rv + + def dump(self, pathOrFile): + """Dump the contents of the database to an XML .plist file. + + The file can be passed as either a file object or a pathname. + All data, including included databases, is dumped.""" + + packages = [] + for pkg in self._packages: + packages.append(pkg.dump()) + plistdata = { + 'Version': self._version, + 'Maintainer': self._maintainer, + 'Description': self._description, + 'Packages': packages + } + plist = plistlib.Plist(**plistdata) + plist.write(pathOrFile) + + def find(self, ident): + """Find a package. The package can be specified by name + or as a dictionary with name, version and flavor entries. + + Only name is obligatory. If there are multiple matches the + best one (higher version number, flavors ordered according to + users' preference) is returned.""" + + if type(ident) == str: + # Remove ( and ) for pseudo-packages + if ident[0] == '(' and ident[-1] == ')': + ident = ident[1:-1] + # Split into name-version-flavor + fields = ident.split('-') + if len(fields) < 1 or len(fields) > 3: + return None + name = fields[0] + if len(fields) > 1: + version = fields[1] + else: + version = None + if len(fields) > 2: + flavor = fields[2] + else: + flavor = None + else: + name = ident['Name'] + version = ident.get('Version') + flavor = ident.get('Flavor') + found = None + for p in self._packages: + if name == p.name() and \ + (not version or version == p.version()) and \ + (not flavor or flavor == p.flavor()): + if not found or found < p: + found = p + return found + +ALLOWED_KEYS = [ + "Name", + "Version", + "Flavor", + "Description", + "Home-page", + "Download-URL", + "Install-test", + "Install-command", + "Pre-install-command", + "Post-install-command", + "Prerequisites", + "MD5Sum", + "User-install-skips", + "Systemwide-only", +] + +class PimpPackage: + """Class representing a single package.""" + + def __init__(self, db, plistdata): + self._db = db + name = plistdata["Name"] + for k in plistdata.keys(): + if not k in ALLOWED_KEYS: + sys.stderr.write("Warning: %s: unknown key %s\n" % (name, k)) + self._dict = plistdata + + def __getitem__(self, key): + return self._dict[key] + + def name(self): return self._dict['Name'] + def version(self): return self._dict.get('Version') + def flavor(self): return self._dict.get('Flavor') + def description(self): return self._dict['Description'].strip() + def shortdescription(self): return self.description().splitlines()[0] + def homepage(self): return self._dict.get('Home-page') + def downloadURL(self): return self._dict.get('Download-URL') + def systemwideOnly(self): return self._dict.get('Systemwide-only') + + def fullname(self): + """Return the full name "name-version-flavor" of a package. + + If the package is a pseudo-package, something that cannot be + installed through pimp, return the name in (parentheses).""" + + rv = self._dict['Name'] + if self._dict.has_key('Version'): + rv = rv + '-%s' % self._dict['Version'] + if self._dict.has_key('Flavor'): + rv = rv + '-%s' % self._dict['Flavor'] + if self._dict.get('Flavor') == 'hidden': + # Pseudo-package, show in parentheses + rv = '(%s)' % rv + return rv + + def dump(self): + """Return a dict object containing the information on the package.""" + return self._dict + + def __cmp__(self, other): + """Compare two packages, where the "better" package sorts lower.""" + + if not isinstance(other, PimpPackage): + return cmp(id(self), id(other)) + if self.name() != other.name(): + return cmp(self.name(), other.name()) + if self.version() != other.version(): + return -cmp(self.version(), other.version()) + return self._db.preferences.compareFlavors(self.flavor(), other.flavor()) + + def installed(self): + """Test wheter the package is installed. + + Returns two values: a status indicator which is one of + "yes", "no", "old" (an older version is installed) or "bad" + (something went wrong during the install test) and a human + readable string which may contain more details.""" + + namespace = { + "NotInstalled": _scriptExc_NotInstalled, + "OldInstalled": _scriptExc_OldInstalled, + "BadInstalled": _scriptExc_BadInstalled, + "os": os, + "sys": sys, + } + installTest = self._dict['Install-test'].strip() + '\n' + try: + exec installTest in namespace + except ImportError, arg: + return "no", str(arg) + except _scriptExc_NotInstalled, arg: + return "no", str(arg) + except _scriptExc_OldInstalled, arg: + return "old", str(arg) + except _scriptExc_BadInstalled, arg: + return "bad", str(arg) + except: + sys.stderr.write("-------------------------------------\n") + sys.stderr.write("---- %s: install test got exception\n" % self.fullname()) + sys.stderr.write("---- source:\n") + sys.stderr.write(installTest) + sys.stderr.write("---- exception:\n") + import traceback + traceback.print_exc(file=sys.stderr) + if self._db._maintainer: + sys.stderr.write("---- Please copy this and mail to %s\n" % self._db._maintainer) + sys.stderr.write("-------------------------------------\n") + return "bad", "Package install test got exception" + return "yes", "" + + def prerequisites(self): + """Return a list of prerequisites for this package. + + The list contains 2-tuples, of which the first item is either + a PimpPackage object or None, and the second is a descriptive + string. The first item can be None if this package depends on + something that isn't pimp-installable, in which case the descriptive + string should tell the user what to do.""" + + rv = [] + if not self._dict.get('Download-URL'): + # For pseudo-packages that are already installed we don't + # return an error message + status, _ = self.installed() + if status == "yes": + return [] + return [(None, + "Package %s cannot be installed automatically, see the description" % + self.fullname())] + if self.systemwideOnly() and self._db.preferences.isUserInstall(): + return [(None, + "Package %s can only be installed system-wide" % + self.fullname())] + if not self._dict.get('Prerequisites'): + return [] + for item in self._dict['Prerequisites']: + if type(item) == str: + pkg = None + descr = str(item) + else: + name = item['Name'] + if item.has_key('Version'): + name = name + '-' + item['Version'] + if item.has_key('Flavor'): + name = name + '-' + item['Flavor'] + pkg = self._db.find(name) + if not pkg: + descr = "Requires unknown %s"%name + else: + descr = pkg.shortdescription() + rv.append((pkg, descr)) + return rv + + + def downloadPackageOnly(self, output=None): + """Download a single package, if needed. + + An MD5 signature is used to determine whether download is needed, + and to test that we actually downloaded what we expected. + If output is given it is a file-like object that will receive a log + of what happens. + + If anything unforeseen happened the method returns an error message + string. + """ + + scheme, loc, path, query, frag = urlparse.urlsplit(self._dict['Download-URL']) + path = urllib.url2pathname(path) + filename = os.path.split(path)[1] + self.archiveFilename = os.path.join(self._db.preferences.downloadDir, filename) + if not self._archiveOK(): + if scheme == 'manual': + return "Please download package manually and save as %s" % self.archiveFilename + downloader = PimpUrllibDownloader(None, self._db.preferences.downloadDir, + watcher=self._db.preferences.watcher) + if not downloader.download(self._dict['Download-URL'], + self.archiveFilename, output): + return "download command failed" + if not os.path.exists(self.archiveFilename) and not NO_EXECUTE: + return "archive not found after download" + if not self._archiveOK(): + return "archive does not have correct MD5 checksum" + + def _archiveOK(self): + """Test an archive. It should exist and the MD5 checksum should be correct.""" + + if not os.path.exists(self.archiveFilename): + return 0 + if not self._dict.get('MD5Sum'): + sys.stderr.write("Warning: no MD5Sum for %s\n" % self.fullname()) + return 1 + data = open(self.archiveFilename, 'rb').read() + checksum = hashlib.md5(data).hexdigest() + return checksum == self._dict['MD5Sum'] + + def unpackPackageOnly(self, output=None): + """Unpack a downloaded package archive.""" + + filename = os.path.split(self.archiveFilename)[1] + for ext, unpackerClass, arg in ARCHIVE_FORMATS: + if filename[-len(ext):] == ext: + break + else: + return "unknown extension for archive file: %s" % filename + self.basename = filename[:-len(ext)] + unpacker = unpackerClass(arg, dir=self._db.preferences.buildDir, + watcher=self._db.preferences.watcher) + rv = unpacker.unpack(self.archiveFilename, output=output) + if rv: + return rv + + def installPackageOnly(self, output=None): + """Default install method, to be overridden by subclasses""" + return "%s: This package needs to be installed manually (no support for flavor=\"%s\")" \ + % (self.fullname(), self._dict.get(flavor, "")) + + def installSinglePackage(self, output=None): + """Download, unpack and install a single package. + + If output is given it should be a file-like object and it + will receive a log of what happened.""" + + if not self._dict.get('Download-URL'): + return "%s: This package needs to be installed manually (no Download-URL field)" % self.fullname() + msg = self.downloadPackageOnly(output) + if msg: + return "%s: download: %s" % (self.fullname(), msg) + + msg = self.unpackPackageOnly(output) + if msg: + return "%s: unpack: %s" % (self.fullname(), msg) + + return self.installPackageOnly(output) + + def beforeInstall(self): + """Bookkeeping before installation: remember what we have in site-packages""" + self._old_contents = os.listdir(self._db.preferences.installDir) + + def afterInstall(self): + """Bookkeeping after installation: interpret any new .pth files that have + appeared""" + + new_contents = os.listdir(self._db.preferences.installDir) + for fn in new_contents: + if fn in self._old_contents: + continue + if fn[-4:] != '.pth': + continue + fullname = os.path.join(self._db.preferences.installDir, fn) + f = open(fullname) + for line in f.readlines(): + if not line: + continue + if line[0] == '#': + continue + if line[:6] == 'import': + exec line + continue + if line[-1] == '\n': + line = line[:-1] + if not os.path.isabs(line): + line = os.path.join(self._db.preferences.installDir, line) + line = os.path.realpath(line) + if not line in sys.path: + sys.path.append(line) + + def filterExpectedSkips(self, names): + """Return a list that contains only unpexpected skips""" + if not self._db.preferences.isUserInstall(): + return names + expected_skips = self._dict.get('User-install-skips') + if not expected_skips: + return names + newnames = [] + for name in names: + for skip in expected_skips: + if name[:len(skip)] == skip: + break + else: + newnames.append(name) + return newnames + +class PimpPackage_binary(PimpPackage): + + def unpackPackageOnly(self, output=None): + """We don't unpack binary packages until installing""" + pass + + def installPackageOnly(self, output=None): + """Install a single source package. + + If output is given it should be a file-like object and it + will receive a log of what happened.""" + + if self._dict.has_key('Install-command'): + return "%s: Binary package cannot have Install-command" % self.fullname() + + if self._dict.has_key('Pre-install-command'): + if _cmd(output, '/tmp', self._dict['Pre-install-command']): + return "pre-install %s: running \"%s\" failed" % \ + (self.fullname(), self._dict['Pre-install-command']) + + self.beforeInstall() + + # Install by unpacking + filename = os.path.split(self.archiveFilename)[1] + for ext, unpackerClass, arg in ARCHIVE_FORMATS: + if filename[-len(ext):] == ext: + break + else: + return "%s: unknown extension for archive file: %s" % (self.fullname(), filename) + self.basename = filename[:-len(ext)] + + install_renames = [] + for k, newloc in self._db.preferences.installLocations: + if not newloc: + continue + if k == "--install-lib": + oldloc = DEFAULT_INSTALLDIR + else: + return "%s: Don't know installLocation %s" % (self.fullname(), k) + install_renames.append((oldloc, newloc)) + + unpacker = unpackerClass(arg, dir="/", renames=install_renames) + rv = unpacker.unpack(self.archiveFilename, output=output, package=self) + if rv: + return rv + + self.afterInstall() + + if self._dict.has_key('Post-install-command'): + if _cmd(output, '/tmp', self._dict['Post-install-command']): + return "%s: post-install: running \"%s\" failed" % \ + (self.fullname(), self._dict['Post-install-command']) + + return None + + +class PimpPackage_source(PimpPackage): + + def unpackPackageOnly(self, output=None): + """Unpack a source package and check that setup.py exists""" + PimpPackage.unpackPackageOnly(self, output) + # Test that a setup script has been create + self._buildDirname = os.path.join(self._db.preferences.buildDir, self.basename) + setupname = os.path.join(self._buildDirname, "setup.py") + if not os.path.exists(setupname) and not NO_EXECUTE: + return "no setup.py found after unpack of archive" + + def installPackageOnly(self, output=None): + """Install a single source package. + + If output is given it should be a file-like object and it + will receive a log of what happened.""" + + if self._dict.has_key('Pre-install-command'): + if _cmd(output, self._buildDirname, self._dict['Pre-install-command']): + return "pre-install %s: running \"%s\" failed" % \ + (self.fullname(), self._dict['Pre-install-command']) + + self.beforeInstall() + installcmd = self._dict.get('Install-command') + if installcmd and self._install_renames: + return "Package has install-command and can only be installed to standard location" + # This is the "bit-bucket" for installations: everything we don't + # want. After installation we check that it is actually empty + unwanted_install_dir = None + if not installcmd: + extra_args = "" + for k, v in self._db.preferences.installLocations: + if not v: + # We don't want these files installed. Send them + # to the bit-bucket. + if not unwanted_install_dir: + unwanted_install_dir = tempfile.mkdtemp() + v = unwanted_install_dir + extra_args = extra_args + " %s \"%s\"" % (k, v) + installcmd = '"%s" setup.py install %s' % (sys.executable, extra_args) + if _cmd(output, self._buildDirname, installcmd): + return "install %s: running \"%s\" failed" % \ + (self.fullname(), installcmd) + if unwanted_install_dir and os.path.exists(unwanted_install_dir): + unwanted_files = os.listdir(unwanted_install_dir) + if unwanted_files: + rv = "Warning: some files were not installed: %s" % " ".join(unwanted_files) + else: + rv = None + shutil.rmtree(unwanted_install_dir) + return rv + + self.afterInstall() + + if self._dict.has_key('Post-install-command'): + if _cmd(output, self._buildDirname, self._dict['Post-install-command']): + return "post-install %s: running \"%s\" failed" % \ + (self.fullname(), self._dict['Post-install-command']) + return None + +class PimpPackage_installer(PimpPackage): + + def unpackPackageOnly(self, output=None): + """We don't unpack dmg packages until installing""" + pass + + def installPackageOnly(self, output=None): + """Install a single source package. + + If output is given it should be a file-like object and it + will receive a log of what happened.""" + + if self._dict.has_key('Post-install-command'): + return "%s: Installer package cannot have Post-install-command" % self.fullname() + + if self._dict.has_key('Pre-install-command'): + if _cmd(output, '/tmp', self._dict['Pre-install-command']): + return "pre-install %s: running \"%s\" failed" % \ + (self.fullname(), self._dict['Pre-install-command']) + + self.beforeInstall() + + installcmd = self._dict.get('Install-command') + if installcmd: + if '%' in installcmd: + installcmd = installcmd % self.archiveFilename + else: + installcmd = 'open \"%s\"' % self.archiveFilename + if _cmd(output, "/tmp", installcmd): + return '%s: install command failed (use verbose for details)' % self.fullname() + return '%s: downloaded and opened. Install manually and restart Package Manager' % self.archiveFilename + +class PimpInstaller: + """Installer engine: computes dependencies and installs + packages in the right order.""" + + def __init__(self, db): + self._todo = [] + self._db = db + self._curtodo = [] + self._curmessages = [] + + def __contains__(self, package): + return package in self._todo + + def _addPackages(self, packages): + for package in packages: + if not package in self._todo: + self._todo.append(package) + + def _prepareInstall(self, package, force=0, recursive=1): + """Internal routine, recursive engine for prepareInstall. + + Test whether the package is installed and (if not installed + or if force==1) prepend it to the temporary todo list and + call ourselves recursively on all prerequisites.""" + + if not force: + status, message = package.installed() + if status == "yes": + return + if package in self._todo or package in self._curtodo: + return + self._curtodo.insert(0, package) + if not recursive: + return + prereqs = package.prerequisites() + for pkg, descr in prereqs: + if pkg: + self._prepareInstall(pkg, False, recursive) + else: + self._curmessages.append("Problem with dependency: %s" % descr) + + def prepareInstall(self, package, force=0, recursive=1): + """Prepare installation of a package. + + If the package is already installed and force is false nothing + is done. If recursive is true prerequisites are installed first. + + Returns a list of packages (to be passed to install) and a list + of messages of any problems encountered. + """ + + self._curtodo = [] + self._curmessages = [] + self._prepareInstall(package, force, recursive) + rv = self._curtodo, self._curmessages + self._curtodo = [] + self._curmessages = [] + return rv + + def install(self, packages, output): + """Install a list of packages.""" + + self._addPackages(packages) + status = [] + for pkg in self._todo: + msg = pkg.installSinglePackage(output) + if msg: + status.append(msg) + return status + + + +def _run(mode, verbose, force, args, prefargs, watcher): + """Engine for the main program""" + + prefs = PimpPreferences(**prefargs) + if watcher: + prefs.setWatcher(watcher) + rv = prefs.check() + if rv: + sys.stdout.write(rv) + db = PimpDatabase(prefs) + db.appendURL(prefs.pimpDatabase) + + if mode == 'dump': + db.dump(sys.stdout) + elif mode =='list': + if not args: + args = db.listnames() + print "%-20.20s\t%s" % ("Package", "Description") + print + for pkgname in args: + pkg = db.find(pkgname) + if pkg: + description = pkg.shortdescription() + pkgname = pkg.fullname() + else: + description = 'Error: no such package' + print "%-20.20s\t%s" % (pkgname, description) + if verbose: + print "\tHome page:\t", pkg.homepage() + try: + print "\tDownload URL:\t", pkg.downloadURL() + except KeyError: + pass + description = pkg.description() + description = '\n\t\t\t\t\t'.join(description.splitlines()) + print "\tDescription:\t%s" % description + elif mode =='status': + if not args: + args = db.listnames() + print "%-20.20s\t%s\t%s" % ("Package", "Installed", "Message") + print + for pkgname in args: + pkg = db.find(pkgname) + if pkg: + status, msg = pkg.installed() + pkgname = pkg.fullname() + else: + status = 'error' + msg = 'No such package' + print "%-20.20s\t%-9.9s\t%s" % (pkgname, status, msg) + if verbose and status == "no": + prereq = pkg.prerequisites() + for pkg, msg in prereq: + if not pkg: + pkg = '' + else: + pkg = pkg.fullname() + print "%-20.20s\tRequirement: %s %s" % ("", pkg, msg) + elif mode == 'install': + if not args: + print 'Please specify packages to install' + sys.exit(1) + inst = PimpInstaller(db) + for pkgname in args: + pkg = db.find(pkgname) + if not pkg: + print '%s: No such package' % pkgname + continue + list, messages = inst.prepareInstall(pkg, force) + if messages and not force: + print "%s: Not installed:" % pkgname + for m in messages: + print "\t", m + else: + if verbose: + output = sys.stdout + else: + output = None + messages = inst.install(list, output) + if messages: + print "%s: Not installed:" % pkgname + for m in messages: + print "\t", m + +def main(): + """Minimal commandline tool to drive pimp.""" + + import getopt + def _help(): + print "Usage: pimp [options] -s [package ...] List installed status" + print " pimp [options] -l [package ...] Show package information" + print " pimp [options] -i package ... Install packages" + print " pimp -d Dump database to stdout" + print " pimp -V Print version number" + print "Options:" + print " -v Verbose" + print " -f Force installation" + print " -D dir Set destination directory" + print " (default: %s)" % DEFAULT_INSTALLDIR + print " -u url URL for database" + sys.exit(1) + + class _Watcher: + def update(self, msg): + sys.stderr.write(msg + '\r') + return 1 + + try: + opts, args = getopt.getopt(sys.argv[1:], "slifvdD:Vu:") + except getopt.GetoptError: + _help() + if not opts and not args: + _help() + mode = None + force = 0 + verbose = 0 + prefargs = {} + watcher = None + for o, a in opts: + if o == '-s': + if mode: + _help() + mode = 'status' + if o == '-l': + if mode: + _help() + mode = 'list' + if o == '-d': + if mode: + _help() + mode = 'dump' + if o == '-V': + if mode: + _help() + mode = 'version' + if o == '-i': + mode = 'install' + if o == '-f': + force = 1 + if o == '-v': + verbose = 1 + watcher = _Watcher() + if o == '-D': + prefargs['installDir'] = a + if o == '-u': + prefargs['pimpDatabase'] = a + if not mode: + _help() + if mode == 'version': + print 'Pimp version %s; module name is %s' % (PIMP_VERSION, __name__) + else: + _run(mode, verbose, force, args, prefargs, watcher) + +# Finally, try to update ourselves to a newer version. +# If the end-user updates pimp through pimp the new version +# will be called pimp_update and live in site-packages +# or somewhere similar +if __name__ != 'pimp_update': + try: + import pimp_update + except ImportError: + pass + else: + if pimp_update.PIMP_VERSION <= PIMP_VERSION: + import warnings + warnings.warn("pimp_update is version %s, not newer than pimp version %s" % + (pimp_update.PIMP_VERSION, PIMP_VERSION)) + else: + from pimp_update import * + +if __name__ == '__main__': + main() diff --git a/sys/lib/python/plat-mac/plistlib.py b/sys/lib/python/plat-mac/plistlib.py new file mode 100644 index 000000000..49bd5563c --- /dev/null +++ b/sys/lib/python/plat-mac/plistlib.py @@ -0,0 +1,470 @@ +"""plistlib.py -- a tool to generate and parse MacOSX .plist files. + +The PropertList (.plist) file format is a simple XML pickle supporting +basic object types, like dictionaries, lists, numbers and strings. +Usually the top level object is a dictionary. + +To write out a plist file, use the writePlist(rootObject, pathOrFile) +function. 'rootObject' is the top level object, 'pathOrFile' is a +filename or a (writable) file object. + +To parse a plist from a file, use the readPlist(pathOrFile) function, +with a file name or a (readable) file object as the only argument. It +returns the top level object (again, usually a dictionary). + +To work with plist data in strings, you can use readPlistFromString() +and writePlistToString(). + +Values can be strings, integers, floats, booleans, tuples, lists, +dictionaries, Data or datetime.datetime objects. String values (including +dictionary keys) may be unicode strings -- they will be written out as +UTF-8. + +The <data> plist type is supported through the Data class. This is a +thin wrapper around a Python string. + +Generate Plist example: + + pl = dict( + aString="Doodah", + aList=["A", "B", 12, 32.1, [1, 2, 3]], + aFloat = 0.1, + anInt = 728, + aDict=dict( + anotherString="<hello & hi there!>", + aUnicodeValue=u'M\xe4ssig, Ma\xdf', + aTrueValue=True, + aFalseValue=False, + ), + someData = Data("<binary gunk>"), + someMoreData = Data("<lots of binary gunk>" * 10), + aDate = datetime.datetime.fromtimestamp(time.mktime(time.gmtime())), + ) + # unicode keys are possible, but a little awkward to use: + pl[u'\xc5benraa'] = "That was a unicode key." + writePlist(pl, fileName) + +Parse Plist example: + + pl = readPlist(pathOrFile) + print pl["aKey"] +""" + + +__all__ = [ + "readPlist", "writePlist", "readPlistFromString", "writePlistToString", + "readPlistFromResource", "writePlistToResource", + "Plist", "Data", "Dict" +] +# Note: the Plist and Dict classes have been deprecated. + +import binascii +import datetime +from cStringIO import StringIO +import re + + +def readPlist(pathOrFile): + """Read a .plist file. 'pathOrFile' may either be a file name or a + (readable) file object. Return the unpacked root object (which + usually is a dictionary). + """ + didOpen = 0 + if isinstance(pathOrFile, (str, unicode)): + pathOrFile = open(pathOrFile) + didOpen = 1 + p = PlistParser() + rootObject = p.parse(pathOrFile) + if didOpen: + pathOrFile.close() + return rootObject + + +def writePlist(rootObject, pathOrFile): + """Write 'rootObject' to a .plist file. 'pathOrFile' may either be a + file name or a (writable) file object. + """ + didOpen = 0 + if isinstance(pathOrFile, (str, unicode)): + pathOrFile = open(pathOrFile, "w") + didOpen = 1 + writer = PlistWriter(pathOrFile) + writer.writeln("<plist version=\"1.0\">") + writer.writeValue(rootObject) + writer.writeln("</plist>") + if didOpen: + pathOrFile.close() + + +def readPlistFromString(data): + """Read a plist data from a string. Return the root object. + """ + return readPlist(StringIO(data)) + + +def writePlistToString(rootObject): + """Return 'rootObject' as a plist-formatted string. + """ + f = StringIO() + writePlist(rootObject, f) + return f.getvalue() + + +def readPlistFromResource(path, restype='plst', resid=0): + """Read plst resource from the resource fork of path. + """ + from Carbon.File import FSRef, FSGetResourceForkName + from Carbon.Files import fsRdPerm + from Carbon import Res + fsRef = FSRef(path) + resNum = Res.FSOpenResourceFile(fsRef, FSGetResourceForkName(), fsRdPerm) + Res.UseResFile(resNum) + plistData = Res.Get1Resource(restype, resid).data + Res.CloseResFile(resNum) + return readPlistFromString(plistData) + + +def writePlistToResource(rootObject, path, restype='plst', resid=0): + """Write 'rootObject' as a plst resource to the resource fork of path. + """ + from Carbon.File import FSRef, FSGetResourceForkName + from Carbon.Files import fsRdWrPerm + from Carbon import Res + plistData = writePlistToString(rootObject) + fsRef = FSRef(path) + resNum = Res.FSOpenResourceFile(fsRef, FSGetResourceForkName(), fsRdWrPerm) + Res.UseResFile(resNum) + try: + Res.Get1Resource(restype, resid).RemoveResource() + except Res.Error: + pass + res = Res.Resource(plistData) + res.AddResource(restype, resid, '') + res.WriteResource() + Res.CloseResFile(resNum) + + +class DumbXMLWriter: + + def __init__(self, file, indentLevel=0, indent="\t"): + self.file = file + self.stack = [] + self.indentLevel = indentLevel + self.indent = indent + + def beginElement(self, element): + self.stack.append(element) + self.writeln("<%s>" % element) + self.indentLevel += 1 + + def endElement(self, element): + assert self.indentLevel > 0 + assert self.stack.pop() == element + self.indentLevel -= 1 + self.writeln("</%s>" % element) + + def simpleElement(self, element, value=None): + if value is not None: + value = _escapeAndEncode(value) + self.writeln("<%s>%s</%s>" % (element, value, element)) + else: + self.writeln("<%s/>" % element) + + def writeln(self, line): + if line: + self.file.write(self.indentLevel * self.indent + line + "\n") + else: + self.file.write("\n") + + +# Contents should conform to a subset of ISO 8601 +# (in particular, YYYY '-' MM '-' DD 'T' HH ':' MM ':' SS 'Z'. Smaller units may be omitted with +# a loss of precision) +_dateParser = re.compile(r"(?P<year>\d\d\d\d)(?:-(?P<month>\d\d)(?:-(?P<day>\d\d)(?:T(?P<hour>\d\d)(?::(?P<minute>\d\d)(?::(?P<second>\d\d))?)?)?)?)?Z") + +def _dateFromString(s): + order = ('year', 'month', 'day', 'hour', 'minute', 'second') + gd = _dateParser.match(s).groupdict() + lst = [] + for key in order: + val = gd[key] + if val is None: + break + lst.append(int(val)) + return datetime.datetime(*lst) + +def _dateToString(d): + return '%04d-%02d-%02dT%02d:%02d:%02dZ' % ( + d.year, d.month, d.day, + d.hour, d.minute, d.second + ) + + +# Regex to find any control chars, except for \t \n and \r +_controlCharPat = re.compile( + r"[\x00\x01\x02\x03\x04\x05\x06\x07\x08\x0b\x0c\x0e\x0f" + r"\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f]") + +def _escapeAndEncode(text): + m = _controlCharPat.search(text) + if m is not None: + raise ValueError("strings can't contains control characters; " + "use plistlib.Data instead") + text = text.replace("\r\n", "\n") # convert DOS line endings + text = text.replace("\r", "\n") # convert Mac line endings + text = text.replace("&", "&") # escape '&' + text = text.replace("<", "<") # escape '<' + text = text.replace(">", ">") # escape '>' + return text.encode("utf-8") # encode as UTF-8 + + +PLISTHEADER = """\ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +""" + +class PlistWriter(DumbXMLWriter): + + def __init__(self, file, indentLevel=0, indent="\t", writeHeader=1): + if writeHeader: + file.write(PLISTHEADER) + DumbXMLWriter.__init__(self, file, indentLevel, indent) + + def writeValue(self, value): + if isinstance(value, (str, unicode)): + self.simpleElement("string", value) + elif isinstance(value, bool): + # must switch for bool before int, as bool is a + # subclass of int... + if value: + self.simpleElement("true") + else: + self.simpleElement("false") + elif isinstance(value, int): + self.simpleElement("integer", str(value)) + elif isinstance(value, float): + self.simpleElement("real", repr(value)) + elif isinstance(value, dict): + self.writeDict(value) + elif isinstance(value, Data): + self.writeData(value) + elif isinstance(value, datetime.datetime): + self.simpleElement("date", _dateToString(value)) + elif isinstance(value, (tuple, list)): + self.writeArray(value) + else: + raise TypeError("unsuported type: %s" % type(value)) + + def writeData(self, data): + self.beginElement("data") + self.indentLevel -= 1 + maxlinelength = 76 - len(self.indent.replace("\t", " " * 8) * + self.indentLevel) + for line in data.asBase64(maxlinelength).split("\n"): + if line: + self.writeln(line) + self.indentLevel += 1 + self.endElement("data") + + def writeDict(self, d): + self.beginElement("dict") + items = d.items() + items.sort() + for key, value in items: + if not isinstance(key, (str, unicode)): + raise TypeError("keys must be strings") + self.simpleElement("key", key) + self.writeValue(value) + self.endElement("dict") + + def writeArray(self, array): + self.beginElement("array") + for value in array: + self.writeValue(value) + self.endElement("array") + + +class _InternalDict(dict): + + # This class is needed while Dict is scheduled for deprecation: + # we only need to warn when a *user* instantiates Dict or when + # the "attribute notation for dict keys" is used. + + def __getattr__(self, attr): + try: + value = self[attr] + except KeyError: + raise AttributeError, attr + from warnings import warn + warn("Attribute access from plist dicts is deprecated, use d[key] " + "notation instead", PendingDeprecationWarning) + return value + + def __setattr__(self, attr, value): + from warnings import warn + warn("Attribute access from plist dicts is deprecated, use d[key] " + "notation instead", PendingDeprecationWarning) + self[attr] = value + + def __delattr__(self, attr): + try: + del self[attr] + except KeyError: + raise AttributeError, attr + from warnings import warn + warn("Attribute access from plist dicts is deprecated, use d[key] " + "notation instead", PendingDeprecationWarning) + +class Dict(_InternalDict): + + def __init__(self, **kwargs): + from warnings import warn + warn("The plistlib.Dict class is deprecated, use builtin dict instead", + PendingDeprecationWarning) + super(Dict, self).__init__(**kwargs) + + +class Plist(_InternalDict): + + """This class has been deprecated. Use readPlist() and writePlist() + functions instead, together with regular dict objects. + """ + + def __init__(self, **kwargs): + from warnings import warn + warn("The Plist class is deprecated, use the readPlist() and " + "writePlist() functions instead", PendingDeprecationWarning) + super(Plist, self).__init__(**kwargs) + + def fromFile(cls, pathOrFile): + """Deprecated. Use the readPlist() function instead.""" + rootObject = readPlist(pathOrFile) + plist = cls() + plist.update(rootObject) + return plist + fromFile = classmethod(fromFile) + + def write(self, pathOrFile): + """Deprecated. Use the writePlist() function instead.""" + writePlist(self, pathOrFile) + + +def _encodeBase64(s, maxlinelength=76): + # copied from base64.encodestring(), with added maxlinelength argument + maxbinsize = (maxlinelength//4)*3 + pieces = [] + for i in range(0, len(s), maxbinsize): + chunk = s[i : i + maxbinsize] + pieces.append(binascii.b2a_base64(chunk)) + return "".join(pieces) + +class Data: + + """Wrapper for binary data.""" + + def __init__(self, data): + self.data = data + + def fromBase64(cls, data): + # base64.decodestring just calls binascii.a2b_base64; + # it seems overkill to use both base64 and binascii. + return cls(binascii.a2b_base64(data)) + fromBase64 = classmethod(fromBase64) + + def asBase64(self, maxlinelength=76): + return _encodeBase64(self.data, maxlinelength) + + def __cmp__(self, other): + if isinstance(other, self.__class__): + return cmp(self.data, other.data) + elif isinstance(other, str): + return cmp(self.data, other) + else: + return cmp(id(self), id(other)) + + def __repr__(self): + return "%s(%s)" % (self.__class__.__name__, repr(self.data)) + + +class PlistParser: + + def __init__(self): + self.stack = [] + self.currentKey = None + self.root = None + + def parse(self, fileobj): + from xml.parsers.expat import ParserCreate + parser = ParserCreate() + parser.StartElementHandler = self.handleBeginElement + parser.EndElementHandler = self.handleEndElement + parser.CharacterDataHandler = self.handleData + parser.ParseFile(fileobj) + return self.root + + def handleBeginElement(self, element, attrs): + self.data = [] + handler = getattr(self, "begin_" + element, None) + if handler is not None: + handler(attrs) + + def handleEndElement(self, element): + handler = getattr(self, "end_" + element, None) + if handler is not None: + handler() + + def handleData(self, data): + self.data.append(data) + + def addObject(self, value): + if self.currentKey is not None: + self.stack[-1][self.currentKey] = value + self.currentKey = None + elif not self.stack: + # this is the root object + self.root = value + else: + self.stack[-1].append(value) + + def getData(self): + data = "".join(self.data) + try: + data = data.encode("ascii") + except UnicodeError: + pass + self.data = [] + return data + + # element handlers + + def begin_dict(self, attrs): + d = _InternalDict() + self.addObject(d) + self.stack.append(d) + def end_dict(self): + self.stack.pop() + + def end_key(self): + self.currentKey = self.getData() + + def begin_array(self, attrs): + a = [] + self.addObject(a) + self.stack.append(a) + def end_array(self): + self.stack.pop() + + def end_true(self): + self.addObject(True) + def end_false(self): + self.addObject(False) + def end_integer(self): + self.addObject(int(self.getData())) + def end_real(self): + self.addObject(float(self.getData())) + def end_string(self): + self.addObject(self.getData()) + def end_data(self): + self.addObject(Data.fromBase64(self.getData())) + def end_date(self): + self.addObject(_dateFromString(self.getData())) diff --git a/sys/lib/python/plat-mac/terminalcommand.py b/sys/lib/python/plat-mac/terminalcommand.py new file mode 100644 index 000000000..292f09c7d --- /dev/null +++ b/sys/lib/python/plat-mac/terminalcommand.py @@ -0,0 +1,47 @@ +"""terminalcommand.py -- A minimal interface to Terminal.app. + +To run a shell command in a new Terminal.app window: + + import terminalcommand + terminalcommand.run("ls -l") + +No result is returned; it is purely meant as a quick way to run a script +with a decent input/output window. +""" + +# +# This module is a fairly straightforward translation of Jack Jansen's +# Mac/OSX/PythonLauncher/doscript.m. +# + +import time +import os +from Carbon import AE +from Carbon.AppleEvents import * + + +TERMINAL_SIG = "trmx" +START_TERMINAL = "/usr/bin/open /Applications/Utilities/Terminal.app" +SEND_MODE = kAENoReply # kAEWaitReply hangs when run from Terminal.app itself + + +def run(command): + """Run a shell command in a new Terminal.app window.""" + termAddress = AE.AECreateDesc(typeApplSignature, TERMINAL_SIG) + theEvent = AE.AECreateAppleEvent(kAECoreSuite, kAEDoScript, termAddress, + kAutoGenerateReturnID, kAnyTransactionID) + commandDesc = AE.AECreateDesc(typeChar, command) + theEvent.AEPutParamDesc(kAECommandClass, commandDesc) + + try: + theEvent.AESend(SEND_MODE, kAENormalPriority, kAEDefaultTimeout) + except AE.Error, why: + if why[0] != -600: # Terminal.app not yet running + raise + os.system(START_TERMINAL) + time.sleep(1) + theEvent.AESend(SEND_MODE, kAENormalPriority, kAEDefaultTimeout) + + +if __name__ == "__main__": + run("ls -l") diff --git a/sys/lib/python/plat-mac/videoreader.py b/sys/lib/python/plat-mac/videoreader.py new file mode 100644 index 000000000..f16228b82 --- /dev/null +++ b/sys/lib/python/plat-mac/videoreader.py @@ -0,0 +1,291 @@ +# Video file reader, using QuickTime +# +# This module was quickly ripped out of another software package, so there is a good +# chance that it does not work as-is and it needs some hacking. +# +# Jack Jansen, August 2000 +# +import sys +from Carbon import Qt +from Carbon import QuickTime +from Carbon import Qd +from Carbon import Qdoffs +from Carbon import QDOffscreen +from Carbon import Res +try: + import MediaDescr +except ImportError: + def _audiodescr(data): + return None +else: + def _audiodescr(data): + return MediaDescr.SoundDescription.decode(data) +try: + from imgformat import macrgb +except ImportError: + macrgb = "Macintosh RGB format" +import os +# import audio.format + +class VideoFormat: + def __init__(self, name, descr, width, height, format): + self.__name = name + self.__descr = descr + self.__width = width + self.__height = height + self.__format = format + + def getname(self): + return self.__name + + def getdescr(self): + return self.__descr + + def getsize(self): + return self.__width, self.__height + + def getformat(self): + return self.__format + +class _Reader: + def __init__(self, path): + fd = Qt.OpenMovieFile(path, 0) + self.movie, d1, d2 = Qt.NewMovieFromFile(fd, 0, 0) + self.movietimescale = self.movie.GetMovieTimeScale() + try: + self.audiotrack = self.movie.GetMovieIndTrackType(1, + QuickTime.AudioMediaCharacteristic, QuickTime.movieTrackCharacteristic) + self.audiomedia = self.audiotrack.GetTrackMedia() + except Qt.Error: + self.audiotrack = self.audiomedia = None + self.audiodescr = {} + else: + handle = Res.Handle('') + n = self.audiomedia.GetMediaSampleDescriptionCount() + self.audiomedia.GetMediaSampleDescription(1, handle) + self.audiodescr = _audiodescr(handle.data) + self.audiotimescale = self.audiomedia.GetMediaTimeScale() + del handle + + try: + self.videotrack = self.movie.GetMovieIndTrackType(1, + QuickTime.VisualMediaCharacteristic, QuickTime.movieTrackCharacteristic) + self.videomedia = self.videotrack.GetTrackMedia() + except Qt.Error: + self.videotrack = self.videomedia = self.videotimescale = None + if self.videotrack: + self.videotimescale = self.videomedia.GetMediaTimeScale() + x0, y0, x1, y1 = self.movie.GetMovieBox() + self.videodescr = {'width':(x1-x0), 'height':(y1-y0)} + self._initgworld() + self.videocurtime = None + self.audiocurtime = None + + + def __del__(self): + self.audiomedia = None + self.audiotrack = None + self.videomedia = None + self.videotrack = None + self.movie = None + + def _initgworld(self): + old_port, old_dev = Qdoffs.GetGWorld() + try: + movie_w = self.videodescr['width'] + movie_h = self.videodescr['height'] + movie_rect = (0, 0, movie_w, movie_h) + self.gworld = Qdoffs.NewGWorld(32, movie_rect, None, None, QDOffscreen.keepLocal) + self.pixmap = self.gworld.GetGWorldPixMap() + Qdoffs.LockPixels(self.pixmap) + Qdoffs.SetGWorld(self.gworld.as_GrafPtr(), None) + Qd.EraseRect(movie_rect) + self.movie.SetMovieGWorld(self.gworld.as_GrafPtr(), None) + self.movie.SetMovieBox(movie_rect) + self.movie.SetMovieActive(1) + self.movie.MoviesTask(0) + self.movie.SetMoviePlayHints(QuickTime.hintsHighQuality, QuickTime.hintsHighQuality) + # XXXX framerate + finally: + Qdoffs.SetGWorld(old_port, old_dev) + + def _gettrackduration_ms(self, track): + tracktime = track.GetTrackDuration() + return self._movietime_to_ms(tracktime) + + def _movietime_to_ms(self, time): + value, d1, d2 = Qt.ConvertTimeScale((time, self.movietimescale, None), 1000) + return value + + def _videotime_to_ms(self, time): + value, d1, d2 = Qt.ConvertTimeScale((time, self.videotimescale, None), 1000) + return value + + def _audiotime_to_ms(self, time): + value, d1, d2 = Qt.ConvertTimeScale((time, self.audiotimescale, None), 1000) + return value + + def _videotime_to_movietime(self, time): + value, d1, d2 = Qt.ConvertTimeScale((time, self.videotimescale, None), + self.movietimescale) + return value + + def HasAudio(self): + return not self.audiotrack is None + + def HasVideo(self): + return not self.videotrack is None + + def GetAudioDuration(self): + if not self.audiotrack: + return 0 + return self._gettrackduration_ms(self.audiotrack) + + def GetVideoDuration(self): + if not self.videotrack: + return 0 + return self._gettrackduration_ms(self.videotrack) + + def GetAudioFormat(self): + if not self.audiodescr: + return None, None, None, None, None + bps = self.audiodescr['sampleSize'] + nch = self.audiodescr['numChannels'] + if nch == 1: + channels = ['mono'] + elif nch == 2: + channels = ['left', 'right'] + else: + channels = map(lambda x: str(x+1), range(nch)) + if bps % 8: + # Funny bits-per sample. We pretend not to understand + blocksize = 0 + fpb = 0 + else: + # QuickTime is easy (for as far as we support it): samples are always a whole + # number of bytes, so frames are nchannels*samplesize, and there's one frame per block. + blocksize = (bps/8)*nch + fpb = 1 + if self.audiodescr['dataFormat'] == 'raw ': + encoding = 'linear-excess' + elif self.audiodescr['dataFormat'] == 'twos': + encoding = 'linear-signed' + else: + encoding = 'quicktime-coding-%s'%self.audiodescr['dataFormat'] +## return audio.format.AudioFormatLinear('quicktime_audio', 'QuickTime Audio Format', +## channels, encoding, blocksize=blocksize, fpb=fpb, bps=bps) + return channels, encoding, blocksize, fpb, bps + + def GetAudioFrameRate(self): + if not self.audiodescr: + return None + return int(self.audiodescr['sampleRate']) + + def GetVideoFormat(self): + width = self.videodescr['width'] + height = self.videodescr['height'] + return VideoFormat('dummy_format', 'Dummy Video Format', width, height, macrgb) + + def GetVideoFrameRate(self): + tv = self.videocurtime + if tv == None: + tv = 0 + flags = QuickTime.nextTimeStep|QuickTime.nextTimeEdgeOK + tv, dur = self.videomedia.GetMediaNextInterestingTime(flags, tv, 1.0) + dur = self._videotime_to_ms(dur) + return int((1000.0/dur)+0.5) + + def ReadAudio(self, nframes, time=None): + if not time is None: + self.audiocurtime = time + flags = QuickTime.nextTimeStep|QuickTime.nextTimeEdgeOK + if self.audiocurtime == None: + self.audiocurtime = 0 + tv = self.audiomedia.GetMediaNextInterestingTimeOnly(flags, self.audiocurtime, 1.0) + if tv < 0 or (self.audiocurtime and tv < self.audiocurtime): + return self._audiotime_to_ms(self.audiocurtime), None + h = Res.Handle('') + desc_h = Res.Handle('') + size, actualtime, sampleduration, desc_index, actualcount, flags = \ + self.audiomedia.GetMediaSample(h, 0, tv, desc_h, nframes) + self.audiocurtime = actualtime + actualcount*sampleduration + return self._audiotime_to_ms(actualtime), h.data + + def ReadVideo(self, time=None): + if not time is None: + self.videocurtime = time + flags = QuickTime.nextTimeStep + if self.videocurtime == None: + flags = flags | QuickTime.nextTimeEdgeOK + self.videocurtime = 0 + tv = self.videomedia.GetMediaNextInterestingTimeOnly(flags, self.videocurtime, 1.0) + if tv < 0 or (self.videocurtime and tv <= self.videocurtime): + return self._videotime_to_ms(self.videocurtime), None + self.videocurtime = tv + moviecurtime = self._videotime_to_movietime(self.videocurtime) + self.movie.SetMovieTimeValue(moviecurtime) + self.movie.MoviesTask(0) + return self._videotime_to_ms(self.videocurtime), self._getpixmapcontent() + + def _getpixmapcontent(self): + """Shuffle the offscreen PixMap data, because it may have funny stride values""" + rowbytes = Qdoffs.GetPixRowBytes(self.pixmap) + width = self.videodescr['width'] + height = self.videodescr['height'] + start = 0 + rv = '' + for i in range(height): + nextline = Qdoffs.GetPixMapBytes(self.pixmap, start, width*4) + start = start + rowbytes + rv = rv + nextline + return rv + +def reader(url): + try: + rdr = _Reader(url) + except IOError: + return None + return rdr + +def _test(): + import EasyDialogs + try: + import img + except ImportError: + img = None + import MacOS + Qt.EnterMovies() + path = EasyDialogs.AskFileForOpen(message='Video to convert') + if not path: sys.exit(0) + rdr = reader(path) + if not rdr: + sys.exit(1) + dstdir = EasyDialogs.AskFileForSave(message='Name for output folder') + if not dstdir: sys.exit(0) + num = 0 + os.mkdir(dstdir) + videofmt = rdr.GetVideoFormat() + imgfmt = videofmt.getformat() + imgw, imgh = videofmt.getsize() + timestamp, data = rdr.ReadVideo() + while data: + fname = 'frame%04.4d.jpg'%num + num = num+1 + pname = os.path.join(dstdir, fname) + if not img: print 'Not', + print 'Writing %s, size %dx%d, %d bytes'%(fname, imgw, imgh, len(data)) + if img: + wrt = img.writer(imgfmt, pname) + wrt.width = imgw + wrt.height = imgh + wrt.write(data) + timestamp, data = rdr.ReadVideo() + MacOS.SetCreatorAndType(pname, 'ogle', 'JPEG') + if num > 20: + print 'stopping at 20 frames so your disk does not fill up:-)' + break + print 'Total frames:', num + +if __name__ == '__main__': + _test() + sys.exit(1) |