ColorPickerComponents.h
上传用户:xjjlds
上传日期:2015-12-05
资源大小:22823k
文件大小:68k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. /*
  2.      File:       ColorPickerComponents.h
  3.  
  4.      Contains:   Color Picker Component Interfaces.
  5.  
  6.      Version:    Technology: Mac OS 8.5
  7.                  Release:    QuickTime 6.0.2
  8.  
  9.      Copyright:  (c) 1994-2001 by Apple Computer, Inc., all rights reserved.
  10.  
  11.      Bugs?:      For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. */
  17. #ifndef __COLORPICKERCOMPONENTS__
  18. #define __COLORPICKERCOMPONENTS__
  19. #ifndef __COLORPICKER__
  20. #include "ColorPicker.h"
  21. #endif
  22. #ifndef __COMPONENTS__
  23. #include "Components.h"
  24. #endif
  25. #ifndef __MIXEDMODE__
  26. #include "MixedMode.h"
  27. #endif
  28. #ifndef __BALLOONS__
  29. #include "Balloons.h"
  30. #endif
  31. #if PRAGMA_ONCE
  32. #pragma once
  33. #endif
  34. #ifdef __cplusplus
  35. extern "C" {
  36. #endif
  37. #if PRAGMA_IMPORT
  38. #pragma import on
  39. #endif
  40. #if PRAGMA_STRUCT_ALIGN
  41.     #pragma options align=mac68k
  42. #elif PRAGMA_STRUCT_PACKPUSH
  43.     #pragma pack(push, 2)
  44. #elif PRAGMA_STRUCT_PACK
  45.     #pragma pack(2)
  46. #endif
  47. enum {
  48.     kPickerComponentType        = FOUR_CHAR_CODE('cpkr')
  49. };
  50. enum {
  51.     kPickerInit                 = 0,
  52.     kPickerTestGraphicsWorld    = 1,
  53.     kPickerGetDialog            = 2,
  54.     kPickerGetItemList          = 3,
  55.     kPickerGetColor             = 4,
  56.     kPickerSetColor             = 5,
  57.     kPickerEvent                = 6,
  58.     kPickerEdit                 = 7,
  59.     kPickerSetVisibility        = 8,
  60.     kPickerDisplay              = 9,
  61.     kPickerItemHit              = 10,
  62.     kPickerSetBaseItem          = 11,
  63.     kPickerGetProfile           = 12,
  64.     kPickerSetProfile           = 13,
  65.     kPickerGetPrompt            = 14,
  66.     kPickerSetPrompt            = 15,
  67.     kPickerGetIconData          = 16,
  68.     kPickerGetEditMenuState     = 17,
  69.     kPickerSetOrigin            = 18,
  70.     kPickerExtractHelpItem      = 19,
  71.     kPickerSetColorChangedProc  = 20,
  72.     kNPickerGetColor            = 21,
  73.     kNPickerSetColor            = 22,
  74.     kNPickerGetProfile          = 23,
  75.     kNPickerSetProfile          = 24,
  76.     kNPickerSetColorChangedProc = 25
  77. };
  78. /* These structs were moved here from the ColorPicker header.*/
  79. enum {
  80.     kPickerDidNothing           = 0,                            /* was kDidNothing */
  81.     kPickerColorChanged         = 1,                            /* was kColorChanged */
  82.     kPickerOkHit                = 2,                            /* was kOkHit */
  83.     kPickerCancelHit            = 3,                            /* was kCancelHit */
  84.     kPickerNewPickerChosen      = 4,                            /* was kNewPickerChosen */
  85.     kPickerApplItemHit          = 5                             /* was kApplItemHit */
  86. };
  87. typedef short                           PickerAction;
  88. enum {
  89.     kOriginalColor              = 0,
  90.     kNewColor                   = 1
  91. };
  92. typedef short                           PickerColorType;
  93. enum {
  94.     kPickerCut                  = 0,                            /* was kCut */
  95.     kPickerCopy                 = 1,                            /* was kCopy */
  96.     kPickerPaste                = 2,                            /* was kPaste */
  97.     kPickerClear                = 3,                            /* was kClear */
  98.     kPickerUndo                 = 4                             /* was kUndo */
  99. };
  100. typedef short                           PickerEditOperation;
  101. enum {
  102.     kPickerMouseDown            = 0,                            /* was kMouseDown */
  103.     kPickerKeyDown              = 1,                            /* was kKeyDown */
  104.     kPickerFieldEntered         = 2,                            /* was kFieldEntered */
  105.     kPickerFieldLeft            = 3,                            /* was kFieldLeft */
  106.     kPickerCutOp                = 4,                            /* was kCutOp */
  107.     kPickerCopyOp               = 5,                            /* was kCopyOp */
  108.     kPickerPasteOp              = 6,                            /* was kPasteOp */
  109.     kPickerClearOp              = 7,                            /* was kClearOp */
  110.     kPickerUndoOp               = 8                             /* was kUndoOp */
  111. };
  112. typedef short                           PickerItemModifier;
  113. /* These are for the flags field in the picker's 'thng' resource. */
  114. enum {
  115.     kPickerCanDoColor           = 1,                            /* was CanDoColor */
  116.     kPickerCanDoBlackWhite      = 2,                            /* was CanDoBlackWhite */
  117.     kPickerAlwaysModifiesPalette = 4,                           /* was AlwaysModifiesPalette */
  118.     kPickerMayModifyPalette     = 8,                            /* was MayModifyPalette */
  119.     kPickerIsColorSyncAware     = 16,                           /* was PickerIsColorSyncAware */
  120.     kPickerCanDoSystemDialog    = 32,                           /* was CanDoSystemDialog */
  121.     kPickerCanDoApplDialog      = 64,                           /* was CanDoApplDialog */
  122.     kPickerHasOwnDialog         = 128,                          /* was HasOwnDialog */
  123.     kPickerCanDetach            = 256,                          /* was CanDetach */
  124.     kPickerIsColorSync2Aware    = 512                           /* was PickerIsColorSync2Aware */
  125. };
  126. enum {
  127.     kPickerNoForcast            = 0,                            /* was kNoForcast */
  128.     kPickerMenuChoice           = 1,                            /* was kMenuChoice */
  129.     kPickerDialogAccept         = 2,                            /* was kDialogAccept */
  130.     kPickerDialogCancel         = 3,                            /* was kDialogCancel */
  131.     kPickerLeaveFocus           = 4,                            /* was kLeaveFocus */
  132.     kPickerSwitch               = 5,
  133.     kPickerNormalKeyDown        = 6,                            /* was kNormalKeyDown */
  134.     kPickerNormalMouseDown      = 7                             /* was kNormalMouseDown */
  135. };
  136. typedef short                           PickerEventForcaster;
  137. struct PickerIconData {
  138.     short                           scriptCode;
  139.     short                           iconSuiteID;
  140.     ResType                         helpResType;
  141.     short                           helpResID;
  142. };
  143. typedef struct PickerIconData           PickerIconData;
  144. struct PickerInitData {
  145.     DialogPtr                       pickerDialog;
  146.     DialogPtr                       choicesDialog;
  147.     long                            flags;
  148.     Picker                          yourself;
  149. };
  150. typedef struct PickerInitData           PickerInitData;
  151. struct PickerMenuState {
  152.     Boolean                         cutEnabled;
  153.     Boolean                         copyEnabled;
  154.     Boolean                         pasteEnabled;
  155.     Boolean                         clearEnabled;
  156.     Boolean                         undoEnabled;
  157.     SInt8                           filler;
  158.     Str255                          undoString;
  159. };
  160. typedef struct PickerMenuState          PickerMenuState;
  161. struct SystemDialogInfo {
  162.     long                            flags;
  163.     long                            pickerType;
  164.     DialogPlacementSpec             placeWhere;
  165.     Point                           dialogOrigin;
  166.     PickerMenuItemInfo              mInfo;
  167. };
  168. typedef struct SystemDialogInfo         SystemDialogInfo;
  169. struct PickerDialogInfo {
  170.     long                            flags;
  171.     long                            pickerType;
  172.     Point *                         dialogOrigin;
  173.     PickerMenuItemInfo              mInfo;
  174. };
  175. typedef struct PickerDialogInfo         PickerDialogInfo;
  176. struct ApplicationDialogInfo {
  177.     long                            flags;
  178.     long                            pickerType;
  179.     DialogPtr                       theDialog;
  180.     Point                           pickerOrigin;
  181.     PickerMenuItemInfo              mInfo;
  182. };
  183. typedef struct ApplicationDialogInfo    ApplicationDialogInfo;
  184. struct PickerEventData {
  185.     EventRecord *                   event;
  186.     PickerAction                    action;
  187.     short                           itemHit;
  188.     Boolean                         handled;
  189.     SInt8                           filler;
  190.     ColorChangedUPP                 colorProc;
  191.     long                            colorProcData;
  192.     PickerEventForcaster            forcast;
  193. };
  194. typedef struct PickerEventData          PickerEventData;
  195. struct PickerEditData {
  196.     PickerEditOperation             theEdit;
  197.     PickerAction                    action;
  198.     Boolean                         handled;
  199.     SInt8                           filler;
  200. };
  201. typedef struct PickerEditData           PickerEditData;
  202. struct PickerItemHitData {
  203.     short                           itemHit;
  204.     PickerItemModifier              iMod;
  205.     PickerAction                    action;
  206.     ColorChangedUPP                 colorProc;
  207.     long                            colorProcData;
  208.     Point                           where;
  209. };
  210. typedef struct PickerItemHitData        PickerItemHitData;
  211. struct PickerHelpItemInfo {
  212.     long                            options;
  213.     Point                           tip;
  214.     Rect                            altRect;
  215.     short                           theProc;
  216.     short                           helpVariant;
  217.     HMMessageRecord                 helpMessage;
  218. };
  219. typedef struct PickerHelpItemInfo       PickerHelpItemInfo;
  220. #if OLDROUTINENAMES
  221. enum {
  222.     kInitPicker                 = kPickerInit,
  223.     kTestGraphicsWorld          = kPickerTestGraphicsWorld,
  224.     kGetDialog                  = kPickerGetDialog,
  225.     kGetItemList                = kPickerGetItemList,
  226.     kGetColor                   = kPickerGetColor,
  227.     kSetColor                   = kPickerSetColor,
  228.     kEvent                      = kPickerEvent,
  229.     kEdit                       = kPickerEdit,
  230.     kSetVisibility              = kPickerSetVisibility,
  231.     kDrawPicker                 = kPickerDisplay,
  232.     kItemHit                    = kPickerItemHit,
  233.     kSetBaseItem                = kPickerSetBaseItem,
  234.     kGetProfile                 = kPickerGetProfile,
  235.     kSetProfile                 = kPickerSetProfile,
  236.     kGetPrompt                  = kPickerGetPrompt,
  237.     kSetPrompt                  = kPickerSetPrompt,
  238.     kGetIconData                = kPickerGetIconData,
  239.     kGetEditMenuState           = kPickerGetEditMenuState,
  240.     kSetOrigin                  = kPickerSetOrigin,
  241.     kExtractHelpItem            = kPickerExtractHelpItem
  242. };
  243. enum {
  244.     kDidNothing                 = kPickerDidNothing,
  245.     kColorChanged               = kPickerColorChanged,
  246.     kOkHit                      = kPickerOkHit,
  247.     kCancelHit                  = kPickerCancelHit,
  248.     kNewPickerChosen            = kPickerNewPickerChosen,
  249.     kApplItemHit                = kPickerApplItemHit
  250. };
  251. enum {
  252.     kCut                        = kPickerCut,
  253.     kCopy                       = kPickerCopy,
  254.     kPaste                      = kPickerPaste,
  255.     kClear                      = kPickerClear,
  256.     kUndo                       = kPickerUndo
  257. };
  258. enum {
  259.     kMouseDown                  = kPickerMouseDown,
  260.     kKeyDown                    = kPickerKeyDown,
  261.     kFieldEntered               = kPickerFieldEntered,
  262.     kFieldLeft                  = kPickerFieldLeft,
  263.     kCutOp                      = kPickerCutOp,
  264.     kCopyOp                     = kPickerCopyOp,
  265.     kPasteOp                    = kPickerPasteOp,
  266.     kClearOp                    = kPickerClearOp,
  267.     kUndoOp                     = kPickerUndoOp
  268. };
  269. enum {
  270.     kNoForcast                  = kPickerNoForcast,
  271.     kMenuChoice                 = kPickerMenuChoice,
  272.     kDialogAccept               = kPickerDialogAccept,
  273.     kDialogCancel               = kPickerDialogCancel,
  274.     kLeaveFocus                 = kPickerLeaveFocus,
  275.     kNormalKeyDown              = kPickerNormalKeyDown,
  276.     kNormalMouseDown            = kPickerNormalMouseDown
  277. };
  278. typedef short                           ColorType;
  279. typedef short                           EditOperation;
  280. typedef short                           ItemModifier;
  281. typedef short                           EventForcaster;
  282. struct EventData {
  283.     EventRecord *                   event;
  284.     PickerAction                    action;
  285.     short                           itemHit;
  286.     Boolean                         handled;
  287.     SInt8                           filler;
  288.     ColorChangedUPP                 colorProc;
  289.     long                            colorProcData;
  290.     EventForcaster                  forcast;
  291. };
  292. typedef struct EventData                EventData;
  293. struct EditData {
  294.     EditOperation                   theEdit;
  295.     PickerAction                    action;
  296.     Boolean                         handled;
  297.     SInt8                           filler;
  298. };
  299. typedef struct EditData                 EditData;
  300. struct ItemHitData {
  301.     short                           itemHit;
  302.     ItemModifier                    iMod;
  303.     PickerAction                    action;
  304.     ColorChangedUPP                 colorProc;
  305.     long                            colorProcData;
  306.     Point                           where;
  307. };
  308. typedef struct ItemHitData              ItemHitData;
  309. struct HelpItemInfo {
  310.     long                            options;
  311.     Point                           tip;
  312.     Rect                            altRect;
  313.     short                           theProc;
  314.     short                           helpVariant;
  315.     HMMessageRecord                 helpMessage;
  316. };
  317. typedef struct HelpItemInfo             HelpItemInfo;
  318. #endif  /* OLDROUTINENAMES */
  319. typedef CALLBACK_API( ComponentResult , PickerOpenProcPtr )(long storage, ComponentInstance self);
  320. typedef CALLBACK_API( ComponentResult , PickerCloseProcPtr )(long storage, ComponentInstance self);
  321. typedef CALLBACK_API( ComponentResult , PickerCanDoProcPtr )(long storage, short selector);
  322. typedef CALLBACK_API( ComponentResult , PickerVersionProcPtr )(long storage);
  323. typedef CALLBACK_API( ComponentResult , PickerRegisterProcPtr )(long storage);
  324. typedef CALLBACK_API( ComponentResult , PickerSetTargetProcPtr )(long storage, ComponentInstance topOfCallChain);
  325. typedef STACK_UPP_TYPE(PickerOpenProcPtr)                       PickerOpenUPP;
  326. typedef STACK_UPP_TYPE(PickerCloseProcPtr)                      PickerCloseUPP;
  327. typedef STACK_UPP_TYPE(PickerCanDoProcPtr)                      PickerCanDoUPP;
  328. typedef STACK_UPP_TYPE(PickerVersionProcPtr)                    PickerVersionUPP;
  329. typedef STACK_UPP_TYPE(PickerRegisterProcPtr)                   PickerRegisterUPP;
  330. typedef STACK_UPP_TYPE(PickerSetTargetProcPtr)                  PickerSetTargetUPP;
  331. EXTERN_API( ComponentResult )
  332. PickerInit                      (long                   storage,
  333.                                  PickerInitData *       data)                               FIVEWORDINLINE(0x2F3C, 0x0004, 0x0000, 0x7000, 0xA82A);
  334. typedef CALLBACK_API( ComponentResult , PickerInitProcPtr )(long storage, PickerInitData *data);
  335. EXTERN_API( ComponentResult )
  336. PickerTestGraphicsWorld         (long                   storage,
  337.                                  PickerInitData *       data)                               FIVEWORDINLINE(0x2F3C, 0x0004, 0x0001, 0x7000, 0xA82A);
  338. typedef CALLBACK_API( ComponentResult , PickerTestGraphicsWorldProcPtr )(long storage, PickerInitData *data);
  339. EXTERN_API( ComponentResult )
  340. PickerGetDialog                 (long                   storage)                            FIVEWORDINLINE(0x2F3C, 0x0000, 0x0002, 0x7000, 0xA82A);
  341. typedef CALLBACK_API( ComponentResult , PickerGetDialogProcPtr )(long storage);
  342. EXTERN_API( ComponentResult )
  343. PickerGetItemList               (long                   storage)                            FIVEWORDINLINE(0x2F3C, 0x0000, 0x0003, 0x7000, 0xA82A);
  344. typedef CALLBACK_API( ComponentResult , PickerGetItemListProcPtr )(long storage);
  345. EXTERN_API( ComponentResult )
  346. PickerGetColor                  (long                   storage,
  347.                                  PickerColorType        whichColor,
  348.                                  PMColorPtr             color)                              FIVEWORDINLINE(0x2F3C, 0x0006, 0x0004, 0x7000, 0xA82A);
  349. typedef CALLBACK_API( ComponentResult , PickerGetColorProcPtr )(long storage, PickerColorType whichColor, PMColorPtr color);
  350. typedef STACK_UPP_TYPE(PickerInitProcPtr)                       PickerInitUPP;
  351. typedef STACK_UPP_TYPE(PickerTestGraphicsWorldProcPtr)          PickerTestGraphicsWorldUPP;
  352. typedef STACK_UPP_TYPE(PickerGetDialogProcPtr)                  PickerGetDialogUPP;
  353. typedef STACK_UPP_TYPE(PickerGetItemListProcPtr)                PickerGetItemListUPP;
  354. typedef STACK_UPP_TYPE(PickerGetColorProcPtr)                   PickerGetColorUPP;
  355. #if OPAQUE_UPP_TYPES
  356. #if CALL_NOT_IN_CARBON
  357.     EXTERN_API(PickerOpenUPP)
  358.     NewPickerOpenUPP               (PickerOpenProcPtr       userRoutine);
  359.     EXTERN_API(PickerCloseUPP)
  360.     NewPickerCloseUPP              (PickerCloseProcPtr      userRoutine);
  361.     EXTERN_API(PickerCanDoUPP)
  362.     NewPickerCanDoUPP              (PickerCanDoProcPtr      userRoutine);
  363.     EXTERN_API(PickerVersionUPP)
  364.     NewPickerVersionUPP            (PickerVersionProcPtr    userRoutine);
  365.     EXTERN_API(PickerRegisterUPP)
  366.     NewPickerRegisterUPP           (PickerRegisterProcPtr   userRoutine);
  367.     EXTERN_API(PickerSetTargetUPP)
  368.     NewPickerSetTargetUPP          (PickerSetTargetProcPtr  userRoutine);
  369.     EXTERN_API(PickerInitUPP)
  370.     NewPickerInitUPP               (PickerInitProcPtr       userRoutine);
  371.     EXTERN_API(PickerTestGraphicsWorldUPP)
  372.     NewPickerTestGraphicsWorldUPP    (PickerTestGraphicsWorldProcPtr userRoutine);
  373.     EXTERN_API(PickerGetDialogUPP)
  374.     NewPickerGetDialogUPP          (PickerGetDialogProcPtr  userRoutine);
  375.     EXTERN_API(PickerGetItemListUPP)
  376.     NewPickerGetItemListUPP        (PickerGetItemListProcPtr userRoutine);
  377.     EXTERN_API(PickerGetColorUPP)
  378.     NewPickerGetColorUPP           (PickerGetColorProcPtr   userRoutine);
  379.     EXTERN_API(void)
  380.     DisposePickerOpenUPP           (PickerOpenUPP           userUPP);
  381.     EXTERN_API(void)
  382.     DisposePickerCloseUPP          (PickerCloseUPP          userUPP);
  383.     EXTERN_API(void)
  384.     DisposePickerCanDoUPP          (PickerCanDoUPP          userUPP);
  385.     EXTERN_API(void)
  386.     DisposePickerVersionUPP        (PickerVersionUPP        userUPP);
  387.     EXTERN_API(void)
  388.     DisposePickerRegisterUPP       (PickerRegisterUPP       userUPP);
  389.     EXTERN_API(void)
  390.     DisposePickerSetTargetUPP      (PickerSetTargetUPP      userUPP);
  391.     EXTERN_API(void)
  392.     DisposePickerInitUPP           (PickerInitUPP           userUPP);
  393.     EXTERN_API(void)
  394.     DisposePickerTestGraphicsWorldUPP    (PickerTestGraphicsWorldUPP userUPP);
  395.     EXTERN_API(void)
  396.     DisposePickerGetDialogUPP      (PickerGetDialogUPP      userUPP);
  397.     EXTERN_API(void)
  398.     DisposePickerGetItemListUPP    (PickerGetItemListUPP    userUPP);
  399.     EXTERN_API(void)
  400.     DisposePickerGetColorUPP       (PickerGetColorUPP       userUPP);
  401.     EXTERN_API(ComponentResult)
  402.     InvokePickerOpenUPP            (long                    storage,
  403.                                     ComponentInstance       self,
  404.                                     PickerOpenUPP           userUPP);
  405.     EXTERN_API(ComponentResult)
  406.     InvokePickerCloseUPP           (long                    storage,
  407.                                     ComponentInstance       self,
  408.                                     PickerCloseUPP          userUPP);
  409.     EXTERN_API(ComponentResult)
  410.     InvokePickerCanDoUPP           (long                    storage,
  411.                                     short                   selector,
  412.                                     PickerCanDoUPP          userUPP);
  413.     EXTERN_API(ComponentResult)
  414.     InvokePickerVersionUPP         (long                    storage,
  415.                                     PickerVersionUPP        userUPP);
  416.     EXTERN_API(ComponentResult)
  417.     InvokePickerRegisterUPP        (long                    storage,
  418.                                     PickerRegisterUPP       userUPP);
  419.     EXTERN_API(ComponentResult)
  420.     InvokePickerSetTargetUPP       (long                    storage,
  421.                                     ComponentInstance       topOfCallChain,
  422.                                     PickerSetTargetUPP      userUPP);
  423.     EXTERN_API(ComponentResult)
  424.     InvokePickerInitUPP            (long                    storage,
  425.                                     PickerInitData *        data,
  426.                                     PickerInitUPP           userUPP);
  427.     EXTERN_API(ComponentResult)
  428.     InvokePickerTestGraphicsWorldUPP    (long               storage,
  429.                                     PickerInitData *        data,
  430.                                     PickerTestGraphicsWorldUPP userUPP);
  431.     EXTERN_API(ComponentResult)
  432.     InvokePickerGetDialogUPP       (long                    storage,
  433.                                     PickerGetDialogUPP      userUPP);
  434.     EXTERN_API(ComponentResult)
  435.     InvokePickerGetItemListUPP     (long                    storage,
  436.                                     PickerGetItemListUPP    userUPP);
  437.     EXTERN_API(ComponentResult)
  438.     InvokePickerGetColorUPP        (long                    storage,
  439.                                     PickerColorType         whichColor,
  440.                                     PMColorPtr              color,
  441.                                     PickerGetColorUPP       userUPP);
  442. #endif  /* CALL_NOT_IN_CARBON */
  443. #else
  444.     enum { uppPickerOpenProcInfo = 0x000003F0 };                    /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  445.     enum { uppPickerCloseProcInfo = 0x000003F0 };                   /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  446.     enum { uppPickerCanDoProcInfo = 0x000002F0 };                   /* pascal 4_bytes Func(4_bytes, 2_bytes) */
  447.     enum { uppPickerVersionProcInfo = 0x000000F0 };                 /* pascal 4_bytes Func(4_bytes) */
  448.     enum { uppPickerRegisterProcInfo = 0x000000F0 };                /* pascal 4_bytes Func(4_bytes) */
  449.     enum { uppPickerSetTargetProcInfo = 0x000003F0 };               /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  450.     enum { uppPickerInitProcInfo = 0x000003F0 };                    /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  451.     enum { uppPickerTestGraphicsWorldProcInfo = 0x000003F0 };       /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  452.     enum { uppPickerGetDialogProcInfo = 0x000000F0 };               /* pascal 4_bytes Func(4_bytes) */
  453.     enum { uppPickerGetItemListProcInfo = 0x000000F0 };             /* pascal 4_bytes Func(4_bytes) */
  454.     enum { uppPickerGetColorProcInfo = 0x00000EF0 };                /* pascal 4_bytes Func(4_bytes, 2_bytes, 4_bytes) */
  455.     #define NewPickerOpenUPP(userRoutine)                           (PickerOpenUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerOpenProcInfo, GetCurrentArchitecture())
  456.     #define NewPickerCloseUPP(userRoutine)                          (PickerCloseUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerCloseProcInfo, GetCurrentArchitecture())
  457.     #define NewPickerCanDoUPP(userRoutine)                          (PickerCanDoUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerCanDoProcInfo, GetCurrentArchitecture())
  458.     #define NewPickerVersionUPP(userRoutine)                        (PickerVersionUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerVersionProcInfo, GetCurrentArchitecture())
  459.     #define NewPickerRegisterUPP(userRoutine)                       (PickerRegisterUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerRegisterProcInfo, GetCurrentArchitecture())
  460.     #define NewPickerSetTargetUPP(userRoutine)                      (PickerSetTargetUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetTargetProcInfo, GetCurrentArchitecture())
  461.     #define NewPickerInitUPP(userRoutine)                           (PickerInitUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerInitProcInfo, GetCurrentArchitecture())
  462.     #define NewPickerTestGraphicsWorldUPP(userRoutine)              (PickerTestGraphicsWorldUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerTestGraphicsWorldProcInfo, GetCurrentArchitecture())
  463.     #define NewPickerGetDialogUPP(userRoutine)                      (PickerGetDialogUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetDialogProcInfo, GetCurrentArchitecture())
  464.     #define NewPickerGetItemListUPP(userRoutine)                    (PickerGetItemListUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetItemListProcInfo, GetCurrentArchitecture())
  465.     #define NewPickerGetColorUPP(userRoutine)                       (PickerGetColorUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetColorProcInfo, GetCurrentArchitecture())
  466.     #define DisposePickerOpenUPP(userUPP)                           DisposeRoutineDescriptor(userUPP)
  467.     #define DisposePickerCloseUPP(userUPP)                          DisposeRoutineDescriptor(userUPP)
  468.     #define DisposePickerCanDoUPP(userUPP)                          DisposeRoutineDescriptor(userUPP)
  469.     #define DisposePickerVersionUPP(userUPP)                        DisposeRoutineDescriptor(userUPP)
  470.     #define DisposePickerRegisterUPP(userUPP)                       DisposeRoutineDescriptor(userUPP)
  471.     #define DisposePickerSetTargetUPP(userUPP)                      DisposeRoutineDescriptor(userUPP)
  472.     #define DisposePickerInitUPP(userUPP)                           DisposeRoutineDescriptor(userUPP)
  473.     #define DisposePickerTestGraphicsWorldUPP(userUPP)              DisposeRoutineDescriptor(userUPP)
  474.     #define DisposePickerGetDialogUPP(userUPP)                      DisposeRoutineDescriptor(userUPP)
  475.     #define DisposePickerGetItemListUPP(userUPP)                    DisposeRoutineDescriptor(userUPP)
  476.     #define DisposePickerGetColorUPP(userUPP)                       DisposeRoutineDescriptor(userUPP)
  477.     #define InvokePickerOpenUPP(storage, self, userUPP)             (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerOpenProcInfo, (storage), (self))
  478.     #define InvokePickerCloseUPP(storage, self, userUPP)            (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerCloseProcInfo, (storage), (self))
  479.     #define InvokePickerCanDoUPP(storage, selector, userUPP)        (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerCanDoProcInfo, (storage), (selector))
  480.     #define InvokePickerVersionUPP(storage, userUPP)                (ComponentResult)CALL_ONE_PARAMETER_UPP((userUPP), uppPickerVersionProcInfo, (storage))
  481.     #define InvokePickerRegisterUPP(storage, userUPP)               (ComponentResult)CALL_ONE_PARAMETER_UPP((userUPP), uppPickerRegisterProcInfo, (storage))
  482.     #define InvokePickerSetTargetUPP(storage, topOfCallChain, userUPP)  (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerSetTargetProcInfo, (storage), (topOfCallChain))
  483.     #define InvokePickerInitUPP(storage, data, userUPP)             (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerInitProcInfo, (storage), (data))
  484.     #define InvokePickerTestGraphicsWorldUPP(storage, data, userUPP)  (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerTestGraphicsWorldProcInfo, (storage), (data))
  485.     #define InvokePickerGetDialogUPP(storage, userUPP)              (ComponentResult)CALL_ONE_PARAMETER_UPP((userUPP), uppPickerGetDialogProcInfo, (storage))
  486.     #define InvokePickerGetItemListUPP(storage, userUPP)            (ComponentResult)CALL_ONE_PARAMETER_UPP((userUPP), uppPickerGetItemListProcInfo, (storage))
  487.     #define InvokePickerGetColorUPP(storage, whichColor, color, userUPP)  (ComponentResult)CALL_THREE_PARAMETER_UPP((userUPP), uppPickerGetColorProcInfo, (storage), (whichColor), (color))
  488. #endif
  489. /* support for pre-Carbon UPP routines: NewXXXProc and CallXXXProc */
  490. #define NewPickerOpenProc(userRoutine)                          NewPickerOpenUPP(userRoutine)
  491. #define NewPickerCloseProc(userRoutine)                         NewPickerCloseUPP(userRoutine)
  492. #define NewPickerCanDoProc(userRoutine)                         NewPickerCanDoUPP(userRoutine)
  493. #define NewPickerVersionProc(userRoutine)                       NewPickerVersionUPP(userRoutine)
  494. #define NewPickerRegisterProc(userRoutine)                      NewPickerRegisterUPP(userRoutine)
  495. #define NewPickerSetTargetProc(userRoutine)                     NewPickerSetTargetUPP(userRoutine)
  496. #define NewPickerInitProc(userRoutine)                          NewPickerInitUPP(userRoutine)
  497. #define NewPickerTestGraphicsWorldProc(userRoutine)             NewPickerTestGraphicsWorldUPP(userRoutine)
  498. #define NewPickerGetDialogProc(userRoutine)                     NewPickerGetDialogUPP(userRoutine)
  499. #define NewPickerGetItemListProc(userRoutine)                   NewPickerGetItemListUPP(userRoutine)
  500. #define NewPickerGetColorProc(userRoutine)                      NewPickerGetColorUPP(userRoutine)
  501. #define CallPickerOpenProc(userRoutine, storage, self)          InvokePickerOpenUPP(storage, self, userRoutine)
  502. #define CallPickerCloseProc(userRoutine, storage, self)         InvokePickerCloseUPP(storage, self, userRoutine)
  503. #define CallPickerCanDoProc(userRoutine, storage, selector)     InvokePickerCanDoUPP(storage, selector, userRoutine)
  504. #define CallPickerVersionProc(userRoutine, storage)             InvokePickerVersionUPP(storage, userRoutine)
  505. #define CallPickerRegisterProc(userRoutine, storage)            InvokePickerRegisterUPP(storage, userRoutine)
  506. #define CallPickerSetTargetProc(userRoutine, storage, topOfCallChain) InvokePickerSetTargetUPP(storage, topOfCallChain, userRoutine)
  507. #define CallPickerInitProc(userRoutine, storage, data)          InvokePickerInitUPP(storage, data, userRoutine)
  508. #define CallPickerTestGraphicsWorldProc(userRoutine, storage, data) InvokePickerTestGraphicsWorldUPP(storage, data, userRoutine)
  509. #define CallPickerGetDialogProc(userRoutine, storage)           InvokePickerGetDialogUPP(storage, userRoutine)
  510. #define CallPickerGetItemListProc(userRoutine, storage)         InvokePickerGetItemListUPP(storage, userRoutine)
  511. #define CallPickerGetColorProc(userRoutine, storage, whichColor, color) InvokePickerGetColorUPP(storage, whichColor, color, userRoutine)
  512. #if CALL_NOT_IN_CARBON
  513. #if CALL_NOT_IN_CARBON
  514. EXTERN_API( ComponentResult )
  515. PickerSetColor                  (long                   storage,
  516.                                  PickerColorType        whichColor,
  517.                                  PMColorPtr             color)                              FIVEWORDINLINE(0x2F3C, 0x0006, 0x0005, 0x7000, 0xA82A);
  518. #endif  /* CALL_NOT_IN_CARBON */
  519. typedef CALLBACK_API( ComponentResult , PickerSetColorProcPtr )(long storage, PickerColorType whichColor, PMColorPtr color);
  520. #if CALL_NOT_IN_CARBON
  521. EXTERN_API( ComponentResult )
  522. PickerEvent                     (long                   storage,
  523.                                  PickerEventData *      data)                               FIVEWORDINLINE(0x2F3C, 0x0004, 0x0006, 0x7000, 0xA82A);
  524. #endif  /* CALL_NOT_IN_CARBON */
  525. typedef CALLBACK_API( ComponentResult , PickerEventProcPtr )(long storage, PickerEventData *data);
  526. #if CALL_NOT_IN_CARBON
  527. EXTERN_API( ComponentResult )
  528. PickerEdit                      (long                   storage,
  529.                                  PickerEditData *       data)                               FIVEWORDINLINE(0x2F3C, 0x0004, 0x0007, 0x7000, 0xA82A);
  530. #endif  /* CALL_NOT_IN_CARBON */
  531. typedef CALLBACK_API( ComponentResult , PickerEditProcPtr )(long storage, PickerEditData *data);
  532. #if CALL_NOT_IN_CARBON
  533. EXTERN_API( ComponentResult )
  534. PickerSetVisibility             (long                   storage,
  535.                                  Boolean                visible)                            FIVEWORDINLINE(0x2F3C, 0x0002, 0x0008, 0x7000, 0xA82A);
  536. #endif  /* CALL_NOT_IN_CARBON */
  537. typedef CALLBACK_API( ComponentResult , PickerSetVisibilityProcPtr )(long storage, Boolean visible);
  538. #if CALL_NOT_IN_CARBON
  539. EXTERN_API( ComponentResult )
  540. PickerDisplay                   (long                   storage)                            FIVEWORDINLINE(0x2F3C, 0x0000, 0x0009, 0x7000, 0xA82A);
  541. #endif  /* CALL_NOT_IN_CARBON */
  542. typedef CALLBACK_API( ComponentResult , PickerDisplayProcPtr )(long storage);
  543. #if CALL_NOT_IN_CARBON
  544. EXTERN_API( ComponentResult )
  545. PickerItemHit                   (long                   storage,
  546.                                  PickerItemHitData *    data)                               FIVEWORDINLINE(0x2F3C, 0x0004, 0x000A, 0x7000, 0xA82A);
  547. #endif  /* CALL_NOT_IN_CARBON */
  548. typedef CALLBACK_API( ComponentResult , PickerItemHitProcPtr )(long storage, PickerItemHitData *data);
  549. #if CALL_NOT_IN_CARBON
  550. EXTERN_API( ComponentResult )
  551. PickerSetBaseItem               (long                   storage,
  552.                                  short                  baseItem)                           FIVEWORDINLINE(0x2F3C, 0x0002, 0x000B, 0x7000, 0xA82A);
  553. #endif  /* CALL_NOT_IN_CARBON */
  554. typedef CALLBACK_API( ComponentResult , PickerSetBaseItemProcPtr )(long storage, short baseItem);
  555. #if CALL_NOT_IN_CARBON
  556. EXTERN_API( ComponentResult )
  557. PickerGetProfile                (long                   storage)                            FIVEWORDINLINE(0x2F3C, 0x0000, 0x000C, 0x7000, 0xA82A);
  558. #endif  /* CALL_NOT_IN_CARBON */
  559. typedef CALLBACK_API( ComponentResult , PickerGetProfileProcPtr )(long storage);
  560. #if CALL_NOT_IN_CARBON
  561. EXTERN_API( ComponentResult )
  562. PickerSetProfile                (long                   storage,
  563.                                  CMProfileHandle        profile)                            FIVEWORDINLINE(0x2F3C, 0x0004, 0x000D, 0x7000, 0xA82A);
  564. #endif  /* CALL_NOT_IN_CARBON */
  565. typedef CALLBACK_API( ComponentResult , PickerSetProfileProcPtr )(long storage, CMProfileHandle profile);
  566. #if CALL_NOT_IN_CARBON
  567. EXTERN_API( ComponentResult )
  568. PickerGetPrompt                 (long                   storage,
  569.                                  Str255                 prompt)                             FIVEWORDINLINE(0x2F3C, 0x0004, 0x000E, 0x7000, 0xA82A);
  570. #endif  /* CALL_NOT_IN_CARBON */
  571. typedef CALLBACK_API( ComponentResult , PickerGetPromptProcPtr )(long storage, Str255 prompt);
  572. #if CALL_NOT_IN_CARBON
  573. EXTERN_API( ComponentResult )
  574. PickerSetPrompt                 (long                   storage,
  575.                                  ConstStr255Param       prompt)                             FIVEWORDINLINE(0x2F3C, 0x0004, 0x000F, 0x7000, 0xA82A);
  576. #endif  /* CALL_NOT_IN_CARBON */
  577. typedef CALLBACK_API( ComponentResult , PickerSetPromptProcPtr )(long storage, ConstStr255Param prompt);
  578. #if CALL_NOT_IN_CARBON
  579. EXTERN_API( ComponentResult )
  580. PickerGetIconData               (long                   storage,
  581.                                  PickerIconData *       data)                               FIVEWORDINLINE(0x2F3C, 0x0004, 0x0010, 0x7000, 0xA82A);
  582. #endif  /* CALL_NOT_IN_CARBON */
  583. typedef CALLBACK_API( ComponentResult , PickerGetIconDataProcPtr )(long storage, PickerIconData *data);
  584. #if CALL_NOT_IN_CARBON
  585. EXTERN_API( ComponentResult )
  586. PickerGetEditMenuState          (long                   storage,
  587.                                  PickerMenuState *      mState)                             FIVEWORDINLINE(0x2F3C, 0x0004, 0x0011, 0x7000, 0xA82A);
  588. #endif  /* CALL_NOT_IN_CARBON */
  589. typedef CALLBACK_API( ComponentResult , PickerGetEditMenuStateProcPtr )(long storage, PickerMenuState *mState);
  590. #if CALL_NOT_IN_CARBON
  591. EXTERN_API( ComponentResult )
  592. PickerSetOrigin                 (long                   storage,
  593.                                  Point                  where)                              FIVEWORDINLINE(0x2F3C, 0x0004, 0x0012, 0x7000, 0xA82A);
  594. #endif  /* CALL_NOT_IN_CARBON */
  595. typedef CALLBACK_API( ComponentResult , PickerSetOriginProcPtr )(long storage, Point where);
  596. /*  Below are the ColorPicker 2.1 routines.*/
  597. #if CALL_NOT_IN_CARBON
  598. EXTERN_API( ComponentResult )
  599. PickerSetColorChangedProc       (long                   storage,
  600.                                  ColorChangedUPP        colorProc,
  601.                                  long                   colorProcData)                      FIVEWORDINLINE(0x2F3C, 0x0008, 0x0014, 0x7000, 0xA82A);
  602. #endif  /* CALL_NOT_IN_CARBON */
  603. typedef CALLBACK_API( ComponentResult , PickerSetColorChangedProcProcPtr )(long storage, NColorChangedUPP colorProc, long colorProcData);
  604. /* New Color Picker 2.1 messages.  If you don't wish to support these you should already be... */
  605. /* returning a badComponentSelector in your main entry routine.  They have new selectors*/
  606. #if CALL_NOT_IN_CARBON
  607. EXTERN_API( ComponentResult )
  608. NPickerGetColor                 (long                   storage,
  609.                                  PickerColorType        whichColor,
  610.                                  NPMColor *             color)                              FIVEWORDINLINE(0x2F3C, 0x0006, 0x0015, 0x7000, 0xA82A);
  611. #endif  /* CALL_NOT_IN_CARBON */
  612. typedef CALLBACK_API( ComponentResult , NPickerGetColorProcPtr )(long storage, PickerColorType whichColor, NPMColor *color);
  613. #if CALL_NOT_IN_CARBON
  614. EXTERN_API( ComponentResult )
  615. NPickerSetColor                 (long                   storage,
  616.                                  PickerColorType        whichColor,
  617.                                  NPMColor *             color)                              FIVEWORDINLINE(0x2F3C, 0x0006, 0x0016, 0x7000, 0xA82A);
  618. #endif  /* CALL_NOT_IN_CARBON */
  619. typedef CALLBACK_API( ComponentResult , NPickerSetColorProcPtr )(long storage, PickerColorType whichColor, NPMColor *color);
  620. #if CALL_NOT_IN_CARBON
  621. EXTERN_API( ComponentResult )
  622. NPickerGetProfile               (long                   storage,
  623.                                  CMProfileRef *         profile)                            FIVEWORDINLINE(0x2F3C, 0x0004, 0x0017, 0x7000, 0xA82A);
  624. #endif  /* CALL_NOT_IN_CARBON */
  625. typedef CALLBACK_API( ComponentResult , NPickerGetProfileProcPtr )(long storage, CMProfileRef *profile);
  626. #if CALL_NOT_IN_CARBON
  627. EXTERN_API( ComponentResult )
  628. NPickerSetProfile               (long                   storage,
  629.                                  CMProfileRef           profile)                            FIVEWORDINLINE(0x2F3C, 0x0004, 0x0018, 0x7000, 0xA82A);
  630. #endif  /* CALL_NOT_IN_CARBON */
  631. typedef CALLBACK_API( ComponentResult , NPickerSetProfileProcPtr )(long storage, CMProfileRef profile);
  632. #if CALL_NOT_IN_CARBON
  633. EXTERN_API( ComponentResult )
  634. NPickerSetColorChangedProc      (long                   storage,
  635.                                  NColorChangedUPP       colorProc,
  636.                                  long                   colorProcData)                      FIVEWORDINLINE(0x2F3C, 0x0008, 0x0019, 0x7000, 0xA82A);
  637. #endif  /* CALL_NOT_IN_CARBON */
  638. typedef CALLBACK_API( ComponentResult , NPickerSetColorChangedProcProcPtr )(long storage, NColorChangedUPP colorProc, long colorProcData);
  639. #if CALL_NOT_IN_CARBON
  640. EXTERN_API( ComponentResult )
  641. PickerExtractHelpItem           (long                   storage,
  642.                                  short                  itemNo,
  643.                                  short                  whichMsg,
  644.                                  PickerHelpItemInfo *   helpInfo)                           FIVEWORDINLINE(0x2F3C, 0x0008, 0x0013, 0x7000, 0xA82A);
  645. #endif  /* CALL_NOT_IN_CARBON */
  646. typedef CALLBACK_API( ComponentResult , PickerExtractHelpItemProcPtr )(long storage, short itemNo, short whichMsg, PickerHelpItemInfo *helpInfo);
  647. typedef STACK_UPP_TYPE(PickerSetColorProcPtr)                   PickerSetColorUPP;
  648. typedef STACK_UPP_TYPE(PickerEventProcPtr)                      PickerEventUPP;
  649. typedef STACK_UPP_TYPE(PickerEditProcPtr)                       PickerEditUPP;
  650. typedef STACK_UPP_TYPE(PickerSetVisibilityProcPtr)              PickerSetVisibilityUPP;
  651. typedef STACK_UPP_TYPE(PickerDisplayProcPtr)                    PickerDisplayUPP;
  652. typedef STACK_UPP_TYPE(PickerItemHitProcPtr)                    PickerItemHitUPP;
  653. typedef STACK_UPP_TYPE(PickerSetBaseItemProcPtr)                PickerSetBaseItemUPP;
  654. typedef STACK_UPP_TYPE(PickerGetProfileProcPtr)                 PickerGetProfileUPP;
  655. typedef STACK_UPP_TYPE(PickerSetProfileProcPtr)                 PickerSetProfileUPP;
  656. typedef STACK_UPP_TYPE(PickerGetPromptProcPtr)                  PickerGetPromptUPP;
  657. typedef STACK_UPP_TYPE(PickerSetPromptProcPtr)                  PickerSetPromptUPP;
  658. typedef STACK_UPP_TYPE(PickerGetIconDataProcPtr)                PickerGetIconDataUPP;
  659. typedef STACK_UPP_TYPE(PickerGetEditMenuStateProcPtr)           PickerGetEditMenuStateUPP;
  660. typedef STACK_UPP_TYPE(PickerSetOriginProcPtr)                  PickerSetOriginUPP;
  661. typedef STACK_UPP_TYPE(PickerSetColorChangedProcProcPtr)        PickerSetColorChangedProcUPP;
  662. typedef STACK_UPP_TYPE(NPickerGetColorProcPtr)                  NPickerGetColorUPP;
  663. typedef STACK_UPP_TYPE(NPickerSetColorProcPtr)                  NPickerSetColorUPP;
  664. typedef STACK_UPP_TYPE(NPickerGetProfileProcPtr)                NPickerGetProfileUPP;
  665. typedef STACK_UPP_TYPE(NPickerSetProfileProcPtr)                NPickerSetProfileUPP;
  666. typedef STACK_UPP_TYPE(NPickerSetColorChangedProcProcPtr)       NPickerSetColorChangedProcUPP;
  667. typedef STACK_UPP_TYPE(PickerExtractHelpItemProcPtr)            PickerExtractHelpItemUPP;
  668. #if OPAQUE_UPP_TYPES
  669. #if CALL_NOT_IN_CARBON
  670.     EXTERN_API(PickerSetColorUPP)
  671.     NewPickerSetColorUPP           (PickerSetColorProcPtr   userRoutine);
  672.     EXTERN_API(PickerEventUPP)
  673.     NewPickerEventUPP              (PickerEventProcPtr      userRoutine);
  674.     EXTERN_API(PickerEditUPP)
  675.     NewPickerEditUPP               (PickerEditProcPtr       userRoutine);
  676.     EXTERN_API(PickerSetVisibilityUPP)
  677.     NewPickerSetVisibilityUPP      (PickerSetVisibilityProcPtr userRoutine);
  678.     EXTERN_API(PickerDisplayUPP)
  679.     NewPickerDisplayUPP            (PickerDisplayProcPtr    userRoutine);
  680.     EXTERN_API(PickerItemHitUPP)
  681.     NewPickerItemHitUPP            (PickerItemHitProcPtr    userRoutine);
  682.     EXTERN_API(PickerSetBaseItemUPP)
  683.     NewPickerSetBaseItemUPP        (PickerSetBaseItemProcPtr userRoutine);
  684.     EXTERN_API(PickerGetProfileUPP)
  685.     NewPickerGetProfileUPP         (PickerGetProfileProcPtr userRoutine);
  686.     EXTERN_API(PickerSetProfileUPP)
  687.     NewPickerSetProfileUPP         (PickerSetProfileProcPtr userRoutine);
  688.     EXTERN_API(PickerGetPromptUPP)
  689.     NewPickerGetPromptUPP          (PickerGetPromptProcPtr  userRoutine);
  690.     EXTERN_API(PickerSetPromptUPP)
  691.     NewPickerSetPromptUPP          (PickerSetPromptProcPtr  userRoutine);
  692.     EXTERN_API(PickerGetIconDataUPP)
  693.     NewPickerGetIconDataUPP        (PickerGetIconDataProcPtr userRoutine);
  694.     EXTERN_API(PickerGetEditMenuStateUPP)
  695.     NewPickerGetEditMenuStateUPP    (PickerGetEditMenuStateProcPtr userRoutine);
  696.     EXTERN_API(PickerSetOriginUPP)
  697.     NewPickerSetOriginUPP          (PickerSetOriginProcPtr  userRoutine);
  698.     EXTERN_API(PickerSetColorChangedProcUPP)
  699.     NewPickerSetColorChangedProcUPP    (PickerSetColorChangedProcProcPtr userRoutine);
  700.     EXTERN_API(NPickerGetColorUPP)
  701.     NewNPickerGetColorUPP          (NPickerGetColorProcPtr  userRoutine);
  702.     EXTERN_API(NPickerSetColorUPP)
  703.     NewNPickerSetColorUPP          (NPickerSetColorProcPtr  userRoutine);
  704.     EXTERN_API(NPickerGetProfileUPP)
  705.     NewNPickerGetProfileUPP        (NPickerGetProfileProcPtr userRoutine);
  706.     EXTERN_API(NPickerSetProfileUPP)
  707.     NewNPickerSetProfileUPP        (NPickerSetProfileProcPtr userRoutine);
  708.     EXTERN_API(NPickerSetColorChangedProcUPP)
  709.     NewNPickerSetColorChangedProcUPP    (NPickerSetColorChangedProcProcPtr userRoutine);
  710.     EXTERN_API(PickerExtractHelpItemUPP)
  711.     NewPickerExtractHelpItemUPP    (PickerExtractHelpItemProcPtr userRoutine);
  712.     EXTERN_API(void)
  713.     DisposePickerSetColorUPP       (PickerSetColorUPP       userUPP);
  714.     EXTERN_API(void)
  715.     DisposePickerEventUPP          (PickerEventUPP          userUPP);
  716.     EXTERN_API(void)
  717.     DisposePickerEditUPP           (PickerEditUPP           userUPP);
  718.     EXTERN_API(void)
  719.     DisposePickerSetVisibilityUPP    (PickerSetVisibilityUPP userUPP);
  720.     EXTERN_API(void)
  721.     DisposePickerDisplayUPP        (PickerDisplayUPP        userUPP);
  722.     EXTERN_API(void)
  723.     DisposePickerItemHitUPP        (PickerItemHitUPP        userUPP);
  724.     EXTERN_API(void)
  725.     DisposePickerSetBaseItemUPP    (PickerSetBaseItemUPP    userUPP);
  726.     EXTERN_API(void)
  727.     DisposePickerGetProfileUPP     (PickerGetProfileUPP     userUPP);
  728.     EXTERN_API(void)
  729.     DisposePickerSetProfileUPP     (PickerSetProfileUPP     userUPP);
  730.     EXTERN_API(void)
  731.     DisposePickerGetPromptUPP      (PickerGetPromptUPP      userUPP);
  732.     EXTERN_API(void)
  733.     DisposePickerSetPromptUPP      (PickerSetPromptUPP      userUPP);
  734.     EXTERN_API(void)
  735.     DisposePickerGetIconDataUPP    (PickerGetIconDataUPP    userUPP);
  736.     EXTERN_API(void)
  737.     DisposePickerGetEditMenuStateUPP    (PickerGetEditMenuStateUPP userUPP);
  738.     EXTERN_API(void)
  739.     DisposePickerSetOriginUPP      (PickerSetOriginUPP      userUPP);
  740.     EXTERN_API(void)
  741.     DisposePickerSetColorChangedProcUPP    (PickerSetColorChangedProcUPP userUPP);
  742.     EXTERN_API(void)
  743.     DisposeNPickerGetColorUPP      (NPickerGetColorUPP      userUPP);
  744.     EXTERN_API(void)
  745.     DisposeNPickerSetColorUPP      (NPickerSetColorUPP      userUPP);
  746.     EXTERN_API(void)
  747.     DisposeNPickerGetProfileUPP    (NPickerGetProfileUPP    userUPP);
  748.     EXTERN_API(void)
  749.     DisposeNPickerSetProfileUPP    (NPickerSetProfileUPP    userUPP);
  750.     EXTERN_API(void)
  751.     DisposeNPickerSetColorChangedProcUPP    (NPickerSetColorChangedProcUPP userUPP);
  752.     EXTERN_API(void)
  753.     DisposePickerExtractHelpItemUPP    (PickerExtractHelpItemUPP userUPP);
  754.     EXTERN_API(ComponentResult)
  755.     InvokePickerSetColorUPP        (long                    storage,
  756.                                     PickerColorType         whichColor,
  757.                                     PMColorPtr              color,
  758.                                     PickerSetColorUPP       userUPP);
  759.     EXTERN_API(ComponentResult)
  760.     InvokePickerEventUPP           (long                    storage,
  761.                                     PickerEventData *       data,
  762.                                     PickerEventUPP          userUPP);
  763.     EXTERN_API(ComponentResult)
  764.     InvokePickerEditUPP            (long                    storage,
  765.                                     PickerEditData *        data,
  766.                                     PickerEditUPP           userUPP);
  767.     EXTERN_API(ComponentResult)
  768.     InvokePickerSetVisibilityUPP    (long                   storage,
  769.                                     Boolean                 visible,
  770.                                     PickerSetVisibilityUPP  userUPP);
  771.     EXTERN_API(ComponentResult)
  772.     InvokePickerDisplayUPP         (long                    storage,
  773.                                     PickerDisplayUPP        userUPP);
  774.     EXTERN_API(ComponentResult)
  775.     InvokePickerItemHitUPP         (long                    storage,
  776.                                     PickerItemHitData *     data,
  777.                                     PickerItemHitUPP        userUPP);
  778.     EXTERN_API(ComponentResult)
  779.     InvokePickerSetBaseItemUPP     (long                    storage,
  780.                                     short                   baseItem,
  781.                                     PickerSetBaseItemUPP    userUPP);
  782.     EXTERN_API(ComponentResult)
  783.     InvokePickerGetProfileUPP      (long                    storage,
  784.                                     PickerGetProfileUPP     userUPP);
  785.     EXTERN_API(ComponentResult)
  786.     InvokePickerSetProfileUPP      (long                    storage,
  787.                                     CMProfileHandle         profile,
  788.                                     PickerSetProfileUPP     userUPP);
  789.     EXTERN_API(ComponentResult)
  790.     InvokePickerGetPromptUPP       (long                    storage,
  791.                                     Str255                  prompt,
  792.                                     PickerGetPromptUPP      userUPP);
  793.     EXTERN_API(ComponentResult)
  794.     InvokePickerSetPromptUPP       (long                    storage,
  795.                                     ConstStr255Param        prompt,
  796.                                     PickerSetPromptUPP      userUPP);
  797.     EXTERN_API(ComponentResult)
  798.     InvokePickerGetIconDataUPP     (long                    storage,
  799.                                     PickerIconData *        data,
  800.                                     PickerGetIconDataUPP    userUPP);
  801.     EXTERN_API(ComponentResult)
  802.     InvokePickerGetEditMenuStateUPP    (long                storage,
  803.                                     PickerMenuState *       mState,
  804.                                     PickerGetEditMenuStateUPP userUPP);
  805.     EXTERN_API(ComponentResult)
  806.     InvokePickerSetOriginUPP       (long                    storage,
  807.                                     Point                   where,
  808.                                     PickerSetOriginUPP      userUPP);
  809.     EXTERN_API(ComponentResult)
  810.     InvokePickerSetColorChangedProcUPP    (long             storage,
  811.                                     NColorChangedUPP        colorProc,
  812.                                     long                    colorProcData,
  813.                                     PickerSetColorChangedProcUPP userUPP);
  814.     EXTERN_API(ComponentResult)
  815.     InvokeNPickerGetColorUPP       (long                    storage,
  816.                                     PickerColorType         whichColor,
  817.                                     NPMColor *              color,
  818.                                     NPickerGetColorUPP      userUPP);
  819.     EXTERN_API(ComponentResult)
  820.     InvokeNPickerSetColorUPP       (long                    storage,
  821.                                     PickerColorType         whichColor,
  822.                                     NPMColor *              color,
  823.                                     NPickerSetColorUPP      userUPP);
  824.     EXTERN_API(ComponentResult)
  825.     InvokeNPickerGetProfileUPP     (long                    storage,
  826.                                     CMProfileRef *          profile,
  827.                                     NPickerGetProfileUPP    userUPP);
  828.     EXTERN_API(ComponentResult)
  829.     InvokeNPickerSetProfileUPP     (long                    storage,
  830.                                     CMProfileRef            profile,
  831.                                     NPickerSetProfileUPP    userUPP);
  832.     EXTERN_API(ComponentResult)
  833.     InvokeNPickerSetColorChangedProcUPP    (long            storage,
  834.                                     NColorChangedUPP        colorProc,
  835.                                     long                    colorProcData,
  836.                                     NPickerSetColorChangedProcUPP userUPP);
  837.     EXTERN_API(ComponentResult)
  838.     InvokePickerExtractHelpItemUPP    (long                 storage,
  839.                                     short                   itemNo,
  840.                                     short                   whichMsg,
  841.                                     PickerHelpItemInfo *    helpInfo,
  842.                                     PickerExtractHelpItemUPP userUPP);
  843. #endif  /* CALL_NOT_IN_CARBON */
  844. #else
  845.     enum { uppPickerSetColorProcInfo = 0x00000EF0 };                /* pascal 4_bytes Func(4_bytes, 2_bytes, 4_bytes) */
  846.     enum { uppPickerEventProcInfo = 0x000003F0 };                   /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  847.     enum { uppPickerEditProcInfo = 0x000003F0 };                    /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  848.     enum { uppPickerSetVisibilityProcInfo = 0x000001F0 };           /* pascal 4_bytes Func(4_bytes, 1_byte) */
  849.     enum { uppPickerDisplayProcInfo = 0x000000F0 };                 /* pascal 4_bytes Func(4_bytes) */
  850.     enum { uppPickerItemHitProcInfo = 0x000003F0 };                 /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  851.     enum { uppPickerSetBaseItemProcInfo = 0x000002F0 };             /* pascal 4_bytes Func(4_bytes, 2_bytes) */
  852.     enum { uppPickerGetProfileProcInfo = 0x000000F0 };              /* pascal 4_bytes Func(4_bytes) */
  853.     enum { uppPickerSetProfileProcInfo = 0x000003F0 };              /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  854.     enum { uppPickerGetPromptProcInfo = 0x000003F0 };               /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  855.     enum { uppPickerSetPromptProcInfo = 0x000003F0 };               /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  856.     enum { uppPickerGetIconDataProcInfo = 0x000003F0 };             /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  857.     enum { uppPickerGetEditMenuStateProcInfo = 0x000003F0 };        /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  858.     enum { uppPickerSetOriginProcInfo = 0x000003F0 };               /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  859.     enum { uppPickerSetColorChangedProcProcInfo = 0x00000FF0 };     /* pascal 4_bytes Func(4_bytes, 4_bytes, 4_bytes) */
  860.     enum { uppNPickerGetColorProcInfo = 0x00000EF0 };               /* pascal 4_bytes Func(4_bytes, 2_bytes, 4_bytes) */
  861.     enum { uppNPickerSetColorProcInfo = 0x00000EF0 };               /* pascal 4_bytes Func(4_bytes, 2_bytes, 4_bytes) */
  862.     enum { uppNPickerGetProfileProcInfo = 0x000003F0 };             /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  863.     enum { uppNPickerSetProfileProcInfo = 0x000003F0 };             /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  864.     enum { uppNPickerSetColorChangedProcProcInfo = 0x00000FF0 };    /* pascal 4_bytes Func(4_bytes, 4_bytes, 4_bytes) */
  865.     enum { uppPickerExtractHelpItemProcInfo = 0x00003AF0 };         /* pascal 4_bytes Func(4_bytes, 2_bytes, 2_bytes, 4_bytes) */
  866.     #define NewPickerSetColorUPP(userRoutine)                       (PickerSetColorUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetColorProcInfo, GetCurrentArchitecture())
  867.     #define NewPickerEventUPP(userRoutine)                          (PickerEventUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerEventProcInfo, GetCurrentArchitecture())
  868.     #define NewPickerEditUPP(userRoutine)                           (PickerEditUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerEditProcInfo, GetCurrentArchitecture())
  869.     #define NewPickerSetVisibilityUPP(userRoutine)                  (PickerSetVisibilityUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetVisibilityProcInfo, GetCurrentArchitecture())
  870.     #define NewPickerDisplayUPP(userRoutine)                        (PickerDisplayUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerDisplayProcInfo, GetCurrentArchitecture())
  871.     #define NewPickerItemHitUPP(userRoutine)                        (PickerItemHitUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerItemHitProcInfo, GetCurrentArchitecture())
  872.     #define NewPickerSetBaseItemUPP(userRoutine)                    (PickerSetBaseItemUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetBaseItemProcInfo, GetCurrentArchitecture())
  873.     #define NewPickerGetProfileUPP(userRoutine)                     (PickerGetProfileUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetProfileProcInfo, GetCurrentArchitecture())
  874.     #define NewPickerSetProfileUPP(userRoutine)                     (PickerSetProfileUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetProfileProcInfo, GetCurrentArchitecture())
  875.     #define NewPickerGetPromptUPP(userRoutine)                      (PickerGetPromptUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetPromptProcInfo, GetCurrentArchitecture())
  876.     #define NewPickerSetPromptUPP(userRoutine)                      (PickerSetPromptUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetPromptProcInfo, GetCurrentArchitecture())
  877.     #define NewPickerGetIconDataUPP(userRoutine)                    (PickerGetIconDataUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetIconDataProcInfo, GetCurrentArchitecture())
  878.     #define NewPickerGetEditMenuStateUPP(userRoutine)               (PickerGetEditMenuStateUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetEditMenuStateProcInfo, GetCurrentArchitecture())
  879.     #define NewPickerSetOriginUPP(userRoutine)                      (PickerSetOriginUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetOriginProcInfo, GetCurrentArchitecture())
  880.     #define NewPickerSetColorChangedProcUPP(userRoutine)            (PickerSetColorChangedProcUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetColorChangedProcProcInfo, GetCurrentArchitecture())
  881.     #define NewNPickerGetColorUPP(userRoutine)                      (NPickerGetColorUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppNPickerGetColorProcInfo, GetCurrentArchitecture())
  882.     #define NewNPickerSetColorUPP(userRoutine)                      (NPickerSetColorUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppNPickerSetColorProcInfo, GetCurrentArchitecture())
  883.     #define NewNPickerGetProfileUPP(userRoutine)                    (NPickerGetProfileUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppNPickerGetProfileProcInfo, GetCurrentArchitecture())
  884.     #define NewNPickerSetProfileUPP(userRoutine)                    (NPickerSetProfileUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppNPickerSetProfileProcInfo, GetCurrentArchitecture())
  885.     #define NewNPickerSetColorChangedProcUPP(userRoutine)           (NPickerSetColorChangedProcUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppNPickerSetColorChangedProcProcInfo, GetCurrentArchitecture())
  886.     #define NewPickerExtractHelpItemUPP(userRoutine)                (PickerExtractHelpItemUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerExtractHelpItemProcInfo, GetCurrentArchitecture())
  887.     #define DisposePickerSetColorUPP(userUPP)                       DisposeRoutineDescriptor(userUPP)
  888.     #define DisposePickerEventUPP(userUPP)                          DisposeRoutineDescriptor(userUPP)
  889.     #define DisposePickerEditUPP(userUPP)                           DisposeRoutineDescriptor(userUPP)
  890.     #define DisposePickerSetVisibilityUPP(userUPP)                  DisposeRoutineDescriptor(userUPP)
  891.     #define DisposePickerDisplayUPP(userUPP)                        DisposeRoutineDescriptor(userUPP)
  892.     #define DisposePickerItemHitUPP(userUPP)                        DisposeRoutineDescriptor(userUPP)
  893.     #define DisposePickerSetBaseItemUPP(userUPP)                    DisposeRoutineDescriptor(userUPP)
  894.     #define DisposePickerGetProfileUPP(userUPP)                     DisposeRoutineDescriptor(userUPP)
  895.     #define DisposePickerSetProfileUPP(userUPP)                     DisposeRoutineDescriptor(userUPP)
  896.     #define DisposePickerGetPromptUPP(userUPP)                      DisposeRoutineDescriptor(userUPP)
  897.     #define DisposePickerSetPromptUPP(userUPP)                      DisposeRoutineDescriptor(userUPP)
  898.     #define DisposePickerGetIconDataUPP(userUPP)                    DisposeRoutineDescriptor(userUPP)
  899.     #define DisposePickerGetEditMenuStateUPP(userUPP)               DisposeRoutineDescriptor(userUPP)
  900.     #define DisposePickerSetOriginUPP(userUPP)                      DisposeRoutineDescriptor(userUPP)
  901.     #define DisposePickerSetColorChangedProcUPP(userUPP)            DisposeRoutineDescriptor(userUPP)
  902.     #define DisposeNPickerGetColorUPP(userUPP)                      DisposeRoutineDescriptor(userUPP)
  903.     #define DisposeNPickerSetColorUPP(userUPP)                      DisposeRoutineDescriptor(userUPP)
  904.     #define DisposeNPickerGetProfileUPP(userUPP)                    DisposeRoutineDescriptor(userUPP)
  905.     #define DisposeNPickerSetProfileUPP(userUPP)                    DisposeRoutineDescriptor(userUPP)
  906.     #define DisposeNPickerSetColorChangedProcUPP(userUPP)           DisposeRoutineDescriptor(userUPP)
  907.     #define DisposePickerExtractHelpItemUPP(userUPP)                DisposeRoutineDescriptor(userUPP)
  908.     #define InvokePickerSetColorUPP(storage, whichColor, color, userUPP)  (ComponentResult)CALL_THREE_PARAMETER_UPP((userUPP), uppPickerSetColorProcInfo, (storage), (whichColor), (color))
  909.     #define InvokePickerEventUPP(storage, data, userUPP)            (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerEventProcInfo, (storage), (data))
  910.     #define InvokePickerEditUPP(storage, data, userUPP)             (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerEditProcInfo, (storage), (data))
  911.     #define InvokePickerSetVisibilityUPP(storage, visible, userUPP)  (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerSetVisibilityProcInfo, (storage), (visible))
  912.     #define InvokePickerDisplayUPP(storage, userUPP)                (ComponentResult)CALL_ONE_PARAMETER_UPP((userUPP), uppPickerDisplayProcInfo, (storage))
  913.     #define InvokePickerItemHitUPP(storage, data, userUPP)          (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerItemHitProcInfo, (storage), (data))
  914.     #define InvokePickerSetBaseItemUPP(storage, baseItem, userUPP)  (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerSetBaseItemProcInfo, (storage), (baseItem))
  915.     #define InvokePickerGetProfileUPP(storage, userUPP)             (ComponentResult)CALL_ONE_PARAMETER_UPP((userUPP), uppPickerGetProfileProcInfo, (storage))
  916.     #define InvokePickerSetProfileUPP(storage, profile, userUPP)    (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerSetProfileProcInfo, (storage), (profile))
  917.     #define InvokePickerGetPromptUPP(storage, prompt, userUPP)      (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerGetPromptProcInfo, (storage), (prompt))
  918.     #define InvokePickerSetPromptUPP(storage, prompt, userUPP)      (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerSetPromptProcInfo, (storage), (prompt))
  919.     #define InvokePickerGetIconDataUPP(storage, data, userUPP)      (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerGetIconDataProcInfo, (storage), (data))
  920.     #define InvokePickerGetEditMenuStateUPP(storage, mState, userUPP)  (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerGetEditMenuStateProcInfo, (storage), (mState))
  921.     #define InvokePickerSetOriginUPP(storage, where, userUPP)       (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppPickerSetOriginProcInfo, (storage), (where))
  922.     #define InvokePickerSetColorChangedProcUPP(storage, colorProc, colorProcData, userUPP)  (ComponentResult)CALL_THREE_PARAMETER_UPP((userUPP), uppPickerSetColorChangedProcProcInfo, (storage), (colorProc), (colorProcData))
  923.     #define InvokeNPickerGetColorUPP(storage, whichColor, color, userUPP)  (ComponentResult)CALL_THREE_PARAMETER_UPP((userUPP), uppNPickerGetColorProcInfo, (storage), (whichColor), (color))
  924.     #define InvokeNPickerSetColorUPP(storage, whichColor, color, userUPP)  (ComponentResult)CALL_THREE_PARAMETER_UPP((userUPP), uppNPickerSetColorProcInfo, (storage), (whichColor), (color))
  925.     #define InvokeNPickerGetProfileUPP(storage, profile, userUPP)   (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppNPickerGetProfileProcInfo, (storage), (profile))
  926.     #define InvokeNPickerSetProfileUPP(storage, profile, userUPP)   (ComponentResult)CALL_TWO_PARAMETER_UPP((userUPP), uppNPickerSetProfileProcInfo, (storage), (profile))
  927.     #define InvokeNPickerSetColorChangedProcUPP(storage, colorProc, colorProcData, userUPP)  (ComponentResult)CALL_THREE_PARAMETER_UPP((userUPP), uppNPickerSetColorChangedProcProcInfo, (storage), (colorProc), (colorProcData))
  928.     #define InvokePickerExtractHelpItemUPP(storage, itemNo, whichMsg, helpInfo, userUPP)  (ComponentResult)CALL_FOUR_PARAMETER_UPP((userUPP), uppPickerExtractHelpItemProcInfo, (storage), (itemNo), (whichMsg), (helpInfo))
  929. #endif
  930. /* support for pre-Carbon UPP routines: NewXXXProc and CallXXXProc */
  931. #define NewPickerSetColorProc(userRoutine)                      NewPickerSetColorUPP(userRoutine)
  932. #define NewPickerEventProc(userRoutine)                         NewPickerEventUPP(userRoutine)
  933. #define NewPickerEditProc(userRoutine)                          NewPickerEditUPP(userRoutine)
  934. #define NewPickerSetVisibilityProc(userRoutine)                 NewPickerSetVisibilityUPP(userRoutine)
  935. #define NewPickerDisplayProc(userRoutine)                       NewPickerDisplayUPP(userRoutine)
  936. #define NewPickerItemHitProc(userRoutine)                       NewPickerItemHitUPP(userRoutine)
  937. #define NewPickerSetBaseItemProc(userRoutine)                   NewPickerSetBaseItemUPP(userRoutine)
  938. #define NewPickerGetProfileProc(userRoutine)                    NewPickerGetProfileUPP(userRoutine)
  939. #define NewPickerSetProfileProc(userRoutine)                    NewPickerSetProfileUPP(userRoutine)
  940. #define NewPickerGetPromptProc(userRoutine)                     NewPickerGetPromptUPP(userRoutine)
  941. #define NewPickerSetPromptProc(userRoutine)                     NewPickerSetPromptUPP(userRoutine)
  942. #define NewPickerGetIconDataProc(userRoutine)                   NewPickerGetIconDataUPP(userRoutine)
  943. #define NewPickerGetEditMenuStateProc(userRoutine)              NewPickerGetEditMenuStateUPP(userRoutine)
  944. #define NewPickerSetOriginProc(userRoutine)                     NewPickerSetOriginUPP(userRoutine)
  945. #define NewPickerSetColorChangedProcProc(userRoutine)           NewPickerSetColorChangedProcUPP(userRoutine)
  946. #define NewNPickerGetColorProc(userRoutine)                     NewNPickerGetColorUPP(userRoutine)
  947. #define NewNPickerSetColorProc(userRoutine)                     NewNPickerSetColorUPP(userRoutine)
  948. #define NewNPickerGetProfileProc(userRoutine)                   NewNPickerGetProfileUPP(userRoutine)
  949. #define NewNPickerSetProfileProc(userRoutine)                   NewNPickerSetProfileUPP(userRoutine)
  950. #define NewNPickerSetColorChangedProcProc(userRoutine)          NewNPickerSetColorChangedProcUPP(userRoutine)
  951. #define NewPickerExtractHelpItemProc(userRoutine)               NewPickerExtractHelpItemUPP(userRoutine)
  952. #define CallPickerSetColorProc(userRoutine, storage, whichColor, color) InvokePickerSetColorUPP(storage, whichColor, color, userRoutine)
  953. #define CallPickerEventProc(userRoutine, storage, data)         InvokePickerEventUPP(storage, data, userRoutine)
  954. #define CallPickerEditProc(userRoutine, storage, data)          InvokePickerEditUPP(storage, data, userRoutine)
  955. #define CallPickerSetVisibilityProc(userRoutine, storage, visible) InvokePickerSetVisibilityUPP(storage, visible, userRoutine)
  956. #define CallPickerDisplayProc(userRoutine, storage)             InvokePickerDisplayUPP(storage, userRoutine)
  957. #define CallPickerItemHitProc(userRoutine, storage, data)       InvokePickerItemHitUPP(storage, data, userRoutine)
  958. #define CallPickerSetBaseItemProc(userRoutine, storage, baseItem) InvokePickerSetBaseItemUPP(storage, baseItem, userRoutine)
  959. #define CallPickerGetProfileProc(userRoutine, storage)          InvokePickerGetProfileUPP(storage, userRoutine)
  960. #define CallPickerSetProfileProc(userRoutine, storage, profile) InvokePickerSetProfileUPP(storage, profile, userRoutine)
  961. #define CallPickerGetPromptProc(userRoutine, storage, prompt)   InvokePickerGetPromptUPP(storage, prompt, userRoutine)
  962. #define CallPickerSetPromptProc(userRoutine, storage, prompt)   InvokePickerSetPromptUPP(storage, prompt, userRoutine)
  963. #define CallPickerGetIconDataProc(userRoutine, storage, data)   InvokePickerGetIconDataUPP(storage, data, userRoutine)
  964. #define CallPickerGetEditMenuStateProc(userRoutine, storage, mState) InvokePickerGetEditMenuStateUPP(storage, mState, userRoutine)
  965. #define CallPickerSetOriginProc(userRoutine, storage, where)    InvokePickerSetOriginUPP(storage, where, userRoutine)
  966. #define CallPickerSetColorChangedProcProc(userRoutine, storage, colorProc, colorProcData) InvokePickerSetColorChangedProcUPP(storage, colorProc, colorProcData, userRoutine)
  967. #define CallNPickerGetColorProc(userRoutine, storage, whichColor, color) InvokeNPickerGetColorUPP(storage, whichColor, color, userRoutine)
  968. #define CallNPickerSetColorProc(userRoutine, storage, whichColor, color) InvokeNPickerSetColorUPP(storage, whichColor, color, userRoutine)
  969. #define CallNPickerGetProfileProc(userRoutine, storage, profile) InvokeNPickerGetProfileUPP(storage, profile, userRoutine)
  970. #define CallNPickerSetProfileProc(userRoutine, storage, profile) InvokeNPickerSetProfileUPP(storage, profile, userRoutine)
  971. #define CallNPickerSetColorChangedProcProc(userRoutine, storage, colorProc, colorProcData) InvokeNPickerSetColorChangedProcUPP(storage, colorProc, colorProcData, userRoutine)
  972. #define CallPickerExtractHelpItemProc(userRoutine, storage, itemNo, whichMsg, helpInfo) InvokePickerExtractHelpItemUPP(storage, itemNo, whichMsg, helpInfo, userRoutine)
  973. #endif  /* CALL_NOT_IN_CARBON */
  974. #if PRAGMA_STRUCT_ALIGN
  975.     #pragma options align=reset
  976. #elif PRAGMA_STRUCT_PACKPUSH
  977.     #pragma pack(pop)
  978. #elif PRAGMA_STRUCT_PACK
  979.     #pragma pack()
  980. #endif
  981. #ifdef PRAGMA_IMPORT_OFF
  982. #pragma import off
  983. #elif PRAGMA_IMPORT
  984. #pragma import reset
  985. #endif
  986. #ifdef __cplusplus
  987. }
  988. #endif
  989. #endif /* __COLORPICKERCOMPONENTS__ */