Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

7874 lines
223 KiB

  1. /*
  2. File: Quickdraw.h
  3. Contains: Interface to Quickdraw Graphics
  4. Version: QuickTime 7.3
  5. Copyright: (c) 2007 (c) 1985-2003 by Apple Computer, Inc., all rights reserved
  6. Bugs?: For bug reports, consult the following page on
  7. the World Wide Web:
  8. http://developer.apple.com/bugreporter/
  9. */
  10. #ifndef __QUICKDRAW__
  11. #define __QUICKDRAW__
  12. #ifndef __COMPONENTS__
  13. #include <Components.h>
  14. #endif
  15. #ifndef __MACTYPES__
  16. #include <MacTypes.h>
  17. #endif
  18. #ifndef __MIXEDMODE__
  19. #include <MixedMode.h>
  20. #endif
  21. #ifndef __QUICKDRAWTEXT__
  22. #include <QuickdrawText.h>
  23. #endif
  24. #ifndef __CGCONTEXT__
  25. #include <CGContext.h>
  26. #endif
  27. #if PRAGMA_ONCE
  28. #pragma once
  29. #endif
  30. #ifdef __cplusplus
  31. extern "C" {
  32. #endif
  33. #if PRAGMA_IMPORT
  34. #pragma import on
  35. #endif
  36. #if PRAGMA_STRUCT_ALIGN
  37. #pragma options align=mac68k
  38. #elif PRAGMA_STRUCT_PACKPUSH
  39. #pragma pack(push, 2)
  40. #elif PRAGMA_STRUCT_PACK
  41. #pragma pack(2)
  42. #endif
  43. enum {
  44. invalColReq = -1 /*invalid color table request*/
  45. };
  46. enum {
  47. /* transfer modes */
  48. srcCopy = 0, /*the 16 transfer modes*/
  49. srcOr = 1,
  50. srcXor = 2,
  51. srcBic = 3,
  52. notSrcCopy = 4,
  53. notSrcOr = 5,
  54. notSrcXor = 6,
  55. notSrcBic = 7,
  56. patCopy = 8,
  57. patOr = 9,
  58. patXor = 10,
  59. patBic = 11,
  60. notPatCopy = 12,
  61. notPatOr = 13,
  62. notPatXor = 14,
  63. notPatBic = 15, /* Special Text Transfer Mode */
  64. grayishTextOr = 49,
  65. hilitetransfermode = 50,
  66. hilite = 50, /* Arithmetic transfer modes */
  67. blend = 32,
  68. addPin = 33,
  69. addOver = 34,
  70. subPin = 35,
  71. addMax = 37,
  72. adMax = 37,
  73. subOver = 38,
  74. adMin = 39,
  75. ditherCopy = 64, /* Transparent mode constant */
  76. transparent = 36
  77. };
  78. enum {
  79. italicBit = 1,
  80. ulineBit = 2,
  81. outlineBit = 3,
  82. shadowBit = 4,
  83. condenseBit = 5,
  84. extendBit = 6
  85. };
  86. enum {
  87. /* QuickDraw color separation constants */
  88. normalBit = 0, /*normal screen mapping*/
  89. inverseBit = 1, /*inverse screen mapping*/
  90. redBit = 4, /*RGB additive mapping*/
  91. greenBit = 3,
  92. blueBit = 2,
  93. cyanBit = 8, /*CMYBk subtractive mapping*/
  94. magentaBit = 7,
  95. yellowBit = 6,
  96. blackBit = 5
  97. };
  98. enum {
  99. blackColor = 33, /*colors expressed in these mappings*/
  100. whiteColor = 30,
  101. redColor = 205,
  102. greenColor = 341,
  103. blueColor = 409,
  104. cyanColor = 273,
  105. magentaColor = 137,
  106. yellowColor = 69
  107. };
  108. enum {
  109. picLParen = 0, /*standard picture comments*/
  110. picRParen = 1,
  111. clutType = 0, /*0 if lookup table*/
  112. fixedType = 1, /*1 if fixed table*/
  113. directType = 2, /*2 if direct values*/
  114. gdDevType = 0 /*0 = monochrome 1 = color*/
  115. };
  116. enum {
  117. interlacedDevice = 2, /* 1 if single pixel lines look bad */
  118. hwMirroredDevice = 4, /* 1 if device is HW mirrored */
  119. roundedDevice = 5, /* 1 if device has been "rounded" into the GrayRgn */
  120. hasAuxMenuBar = 6, /* 1 if device has an aux menu bar on it */
  121. burstDevice = 7,
  122. ext32Device = 8,
  123. ramInit = 10, /*1 if initialized from 'scrn' resource*/
  124. mainScreen = 11, /* 1 if main screen */
  125. allInit = 12, /* 1 if all devices initialized */
  126. screenDevice = 13, /*1 if screen device [not used]*/
  127. noDriver = 14, /* 1 if no driver for this GDevice */
  128. screenActive = 15, /*1 if in use*/
  129. hiliteBit = 7, /*flag bit in LMGet/SetHiliteMode*/
  130. pHiliteBit = 0, /*flag bit in LMGet/SetHiliteMode when used with BitClr*/
  131. defQDColors = 127, /*resource ID of clut for default QDColors*/
  132. /* pixel type */
  133. RGBDirect = 16, /* 16 & 32 bits/pixel pixelType value */
  134. /* pmVersion values */
  135. baseAddr32 = 4 /*pixmap base address is 32-bit address*/
  136. };
  137. enum {
  138. sysPatListID = 0,
  139. iBeamCursor = 1,
  140. crossCursor = 2,
  141. plusCursor = 3,
  142. watchCursor = 4
  143. };
  144. enum {
  145. kQDGrafVerbFrame = 0,
  146. kQDGrafVerbPaint = 1,
  147. kQDGrafVerbErase = 2,
  148. kQDGrafVerbInvert = 3,
  149. kQDGrafVerbFill = 4
  150. };
  151. #if OLDROUTINENAMES
  152. enum {
  153. frame = kQDGrafVerbFrame,
  154. paint = kQDGrafVerbPaint,
  155. erase = kQDGrafVerbErase,
  156. invert = kQDGrafVerbInvert,
  157. fill = kQDGrafVerbFill
  158. };
  159. #endif /* OLDROUTINENAMES */
  160. typedef SInt8 GrafVerb;
  161. enum {
  162. chunky = 0,
  163. chunkyPlanar = 1,
  164. planar = 2
  165. };
  166. typedef SInt8 PixelType;
  167. typedef short Bits16[16];
  168. /*************** IMPORTANT NOTE REGARDING Pattern **************************************
  169. Patterns were originally defined as:
  170. C: typedef unsigned char Pattern[8];
  171. Pascal: Pattern = PACKED ARRAY [0..7] OF 0..255;
  172. The old array definition of Pattern would cause 68000 based CPU's to crash in certain circum-
  173. stances. The new struct definition is safe, but may require source code changes to compile.
  174. *********************************************************************************************/
  175. struct Pattern {
  176. UInt8 pat[8];
  177. };
  178. typedef struct Pattern Pattern;
  179. /*
  180. ConstPatternParam is no longer needed. It was first created when Pattern was an array.
  181. Now that Pattern is a struct, it is more straight forward to just add the "const" qualifier
  182. on the parameter type (e.g. "const Pattern * pat" instead of "ConstPatternParam pat").
  183. */
  184. typedef const Pattern * ConstPatternParam;
  185. typedef Pattern * PatPtr;
  186. typedef PatPtr * PatHandle;
  187. typedef SignedByte QDByte;
  188. typedef QDByte * QDPtr;
  189. typedef QDPtr * QDHandle;
  190. typedef short QDErr;
  191. enum {
  192. singleDevicesBit = 0,
  193. dontMatchSeedsBit = 1,
  194. allDevicesBit = 2
  195. };
  196. enum {
  197. singleDevices = 1 << singleDevicesBit,
  198. dontMatchSeeds = 1 << dontMatchSeedsBit,
  199. allDevices = 1 << allDevicesBit
  200. };
  201. typedef unsigned long DeviceLoopFlags;
  202. /*
  203. PrinterStatusOpcode. For communication with downloading and printing services.
  204. */
  205. typedef SInt32 PrinterStatusOpcode;
  206. enum {
  207. kPrinterFontStatus = 0,
  208. kPrinterScalingStatus = 1
  209. };
  210. struct PrinterFontStatus {
  211. SInt32 oResult;
  212. SInt16 iFondID;
  213. Style iStyle;
  214. };
  215. typedef struct PrinterFontStatus PrinterFontStatus;
  216. struct PrinterScalingStatus {
  217. Point oScalingFactors;
  218. };
  219. typedef struct PrinterScalingStatus PrinterScalingStatus;
  220. struct BitMap {
  221. Ptr baseAddr;
  222. short rowBytes;
  223. Rect bounds;
  224. };
  225. typedef struct BitMap BitMap;
  226. typedef BitMap * BitMapPtr;
  227. typedef BitMapPtr * BitMapHandle;
  228. struct Cursor {
  229. Bits16 data;
  230. Bits16 mask;
  231. Point hotSpot;
  232. };
  233. typedef struct ::Cursor Cursor;
  234. typedef ::Cursor * CursPtr;
  235. typedef CursPtr * CursHandle;
  236. struct PenState {
  237. Point pnLoc;
  238. Point pnSize;
  239. short pnMode;
  240. Pattern pnPat;
  241. };
  242. typedef struct PenState PenState;
  243. #if !OPAQUE_TOOLBOX_STRUCTS
  244. struct MacRegion {
  245. unsigned short rgnSize; /* size in bytes; don't rely on it */
  246. Rect rgnBBox; /* enclosing rectangle; in Carbon use GetRegionBounds */
  247. };
  248. typedef struct MacRegion MacRegion;
  249. typedef MacRegion * RgnPtr;
  250. typedef RgnPtr * RgnHandle;
  251. #else
  252. typedef struct OpaqueRgnHandle* RgnHandle;
  253. #endif /* !OPAQUE_TOOLBOX_STRUCTS */
  254. struct Picture {
  255. short picSize;
  256. Rect picFrame;
  257. };
  258. typedef struct Picture Picture;
  259. typedef Picture * PicPtr;
  260. typedef PicPtr * PicHandle;
  261. struct MacPolygon {
  262. short polySize;
  263. Rect polyBBox;
  264. Point polyPoints[1];
  265. };
  266. typedef struct MacPolygon MacPolygon;
  267. typedef MacPolygon * PolyPtr;
  268. typedef PolyPtr * PolyHandle;
  269. typedef CALLBACK_API( void , QDTextProcPtr )(short byteCount, const void *textBuf, Point numer, Point denom);
  270. typedef CALLBACK_API( void , QDLineProcPtr )(Point newPt);
  271. typedef CALLBACK_API( void , QDRectProcPtr )(GrafVerb verb, const Rect *r);
  272. typedef CALLBACK_API( void , QDRRectProcPtr )(GrafVerb verb, const Rect *r, short ovalWidth, short ovalHeight);
  273. typedef CALLBACK_API( void , QDOvalProcPtr )(GrafVerb verb, const Rect *r);
  274. typedef CALLBACK_API( void , QDArcProcPtr )(GrafVerb verb, const Rect *r, short startAngle, short arcAngle);
  275. typedef CALLBACK_API( void , QDPolyProcPtr )(GrafVerb verb, PolyHandle poly);
  276. typedef CALLBACK_API( void , QDRgnProcPtr )(GrafVerb verb, RgnHandle rgn);
  277. typedef CALLBACK_API( void , QDBitsProcPtr )(const BitMap *srcBits, const Rect *srcRect, const Rect *dstRect, short mode, RgnHandle maskRgn);
  278. typedef CALLBACK_API( void , QDCommentProcPtr )(short kind, short dataSize, Handle dataHandle);
  279. typedef CALLBACK_API( short , QDTxMeasProcPtr )(short byteCount, const void *textAddr, Point *numer, Point *denom, FontInfo *info);
  280. typedef CALLBACK_API( void , QDGetPicProcPtr )(void *dataPtr, short byteCount);
  281. typedef CALLBACK_API( void , QDPutPicProcPtr )(const void *dataPtr, short byteCount);
  282. typedef CALLBACK_API( void , QDOpcodeProcPtr )(const Rect *fromRect, const Rect *toRect, UInt16 opcode, SInt16 version);
  283. typedef CALLBACK_API_C( OSStatus , QDStdGlyphsProcPtr )(void *dataStream, ByteCount size);
  284. typedef CALLBACK_API( void , QDJShieldCursorProcPtr )(short left, short top, short right, short bottom);
  285. typedef STACK_UPP_TYPE(QDTextProcPtr) QDTextUPP;
  286. typedef STACK_UPP_TYPE(QDLineProcPtr) QDLineUPP;
  287. typedef STACK_UPP_TYPE(QDRectProcPtr) QDRectUPP;
  288. typedef STACK_UPP_TYPE(QDRRectProcPtr) QDRRectUPP;
  289. typedef STACK_UPP_TYPE(QDOvalProcPtr) QDOvalUPP;
  290. typedef STACK_UPP_TYPE(QDArcProcPtr) QDArcUPP;
  291. typedef STACK_UPP_TYPE(QDPolyProcPtr) QDPolyUPP;
  292. typedef STACK_UPP_TYPE(QDRgnProcPtr) QDRgnUPP;
  293. typedef STACK_UPP_TYPE(QDBitsProcPtr) QDBitsUPP;
  294. typedef STACK_UPP_TYPE(QDCommentProcPtr) QDCommentUPP;
  295. typedef STACK_UPP_TYPE(QDTxMeasProcPtr) QDTxMeasUPP;
  296. typedef STACK_UPP_TYPE(QDGetPicProcPtr) QDGetPicUPP;
  297. typedef STACK_UPP_TYPE(QDPutPicProcPtr) QDPutPicUPP;
  298. typedef STACK_UPP_TYPE(QDOpcodeProcPtr) QDOpcodeUPP;
  299. typedef STACK_UPP_TYPE(QDStdGlyphsProcPtr) QDStdGlyphsUPP;
  300. typedef STACK_UPP_TYPE(QDJShieldCursorProcPtr) QDJShieldCursorUPP;
  301. struct QDProcs {
  302. QDTextUPP textProc;
  303. QDLineUPP lineProc;
  304. QDRectUPP rectProc;
  305. QDRRectUPP rRectProc;
  306. QDOvalUPP ovalProc;
  307. QDArcUPP arcProc;
  308. QDPolyUPP polyProc;
  309. QDRgnUPP rgnProc;
  310. QDBitsUPP bitsProc;
  311. QDCommentUPP commentProc;
  312. QDTxMeasUPP txMeasProc;
  313. QDGetPicUPP getPicProc;
  314. QDPutPicUPP putPicProc;
  315. };
  316. typedef struct QDProcs QDProcs;
  317. typedef QDProcs * QDProcsPtr;
  318. /*
  319. * NewQDTextUPP()
  320. *
  321. * Availability:
  322. * Non-Carbon CFM: available as macro/inline
  323. * CarbonLib: in CarbonLib 1.0 and later
  324. * Mac OS X: in version 10.0 and later
  325. */
  326. EXTERN_API_C( QDTextUPP )
  327. NewQDTextUPP(QDTextProcPtr userRoutine);
  328. #if !OPAQUE_UPP_TYPES
  329. enum { uppQDTextProcInfo = 0x00003F80 }; /* pascal no_return_value Func(2_bytes, 4_bytes, 4_bytes, 4_bytes) */
  330. #ifdef __cplusplus
  331. inline DEFINE_API_C(QDTextUPP) NewQDTextUPP(QDTextProcPtr userRoutine) { return (QDTextUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDTextProcInfo, GetCurrentArchitecture()); }
  332. #else
  333. #define NewQDTextUPP(userRoutine) (QDTextUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDTextProcInfo, GetCurrentArchitecture())
  334. #endif
  335. #endif
  336. /*
  337. * NewQDLineUPP()
  338. *
  339. * Availability:
  340. * Non-Carbon CFM: available as macro/inline
  341. * CarbonLib: in CarbonLib 1.0 and later
  342. * Mac OS X: in version 10.0 and later
  343. */
  344. EXTERN_API_C( QDLineUPP )
  345. NewQDLineUPP(QDLineProcPtr userRoutine);
  346. #if !OPAQUE_UPP_TYPES
  347. enum { uppQDLineProcInfo = 0x000000C0 }; /* pascal no_return_value Func(4_bytes) */
  348. #ifdef __cplusplus
  349. inline DEFINE_API_C(QDLineUPP) NewQDLineUPP(QDLineProcPtr userRoutine) { return (QDLineUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDLineProcInfo, GetCurrentArchitecture()); }
  350. #else
  351. #define NewQDLineUPP(userRoutine) (QDLineUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDLineProcInfo, GetCurrentArchitecture())
  352. #endif
  353. #endif
  354. /*
  355. * NewQDRectUPP()
  356. *
  357. * Availability:
  358. * Non-Carbon CFM: available as macro/inline
  359. * CarbonLib: in CarbonLib 1.0 and later
  360. * Mac OS X: in version 10.0 and later
  361. */
  362. EXTERN_API_C( QDRectUPP )
  363. NewQDRectUPP(QDRectProcPtr userRoutine);
  364. #if !OPAQUE_UPP_TYPES
  365. enum { uppQDRectProcInfo = 0x00000340 }; /* pascal no_return_value Func(1_byte, 4_bytes) */
  366. #ifdef __cplusplus
  367. inline DEFINE_API_C(QDRectUPP) NewQDRectUPP(QDRectProcPtr userRoutine) { return (QDRectUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDRectProcInfo, GetCurrentArchitecture()); }
  368. #else
  369. #define NewQDRectUPP(userRoutine) (QDRectUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDRectProcInfo, GetCurrentArchitecture())
  370. #endif
  371. #endif
  372. /*
  373. * NewQDRRectUPP()
  374. *
  375. * Availability:
  376. * Non-Carbon CFM: available as macro/inline
  377. * CarbonLib: in CarbonLib 1.0 and later
  378. * Mac OS X: in version 10.0 and later
  379. */
  380. EXTERN_API_C( QDRRectUPP )
  381. NewQDRRectUPP(QDRRectProcPtr userRoutine);
  382. #if !OPAQUE_UPP_TYPES
  383. enum { uppQDRRectProcInfo = 0x00002B40 }; /* pascal no_return_value Func(1_byte, 4_bytes, 2_bytes, 2_bytes) */
  384. #ifdef __cplusplus
  385. inline DEFINE_API_C(QDRRectUPP) NewQDRRectUPP(QDRRectProcPtr userRoutine) { return (QDRRectUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDRRectProcInfo, GetCurrentArchitecture()); }
  386. #else
  387. #define NewQDRRectUPP(userRoutine) (QDRRectUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDRRectProcInfo, GetCurrentArchitecture())
  388. #endif
  389. #endif
  390. /*
  391. * NewQDOvalUPP()
  392. *
  393. * Availability:
  394. * Non-Carbon CFM: available as macro/inline
  395. * CarbonLib: in CarbonLib 1.0 and later
  396. * Mac OS X: in version 10.0 and later
  397. */
  398. EXTERN_API_C( QDOvalUPP )
  399. NewQDOvalUPP(QDOvalProcPtr userRoutine);
  400. #if !OPAQUE_UPP_TYPES
  401. enum { uppQDOvalProcInfo = 0x00000340 }; /* pascal no_return_value Func(1_byte, 4_bytes) */
  402. #ifdef __cplusplus
  403. inline DEFINE_API_C(QDOvalUPP) NewQDOvalUPP(QDOvalProcPtr userRoutine) { return (QDOvalUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDOvalProcInfo, GetCurrentArchitecture()); }
  404. #else
  405. #define NewQDOvalUPP(userRoutine) (QDOvalUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDOvalProcInfo, GetCurrentArchitecture())
  406. #endif
  407. #endif
  408. /*
  409. * NewQDArcUPP()
  410. *
  411. * Availability:
  412. * Non-Carbon CFM: available as macro/inline
  413. * CarbonLib: in CarbonLib 1.0 and later
  414. * Mac OS X: in version 10.0 and later
  415. */
  416. EXTERN_API_C( QDArcUPP )
  417. NewQDArcUPP(QDArcProcPtr userRoutine);
  418. #if !OPAQUE_UPP_TYPES
  419. enum { uppQDArcProcInfo = 0x00002B40 }; /* pascal no_return_value Func(1_byte, 4_bytes, 2_bytes, 2_bytes) */
  420. #ifdef __cplusplus
  421. inline DEFINE_API_C(QDArcUPP) NewQDArcUPP(QDArcProcPtr userRoutine) { return (QDArcUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDArcProcInfo, GetCurrentArchitecture()); }
  422. #else
  423. #define NewQDArcUPP(userRoutine) (QDArcUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDArcProcInfo, GetCurrentArchitecture())
  424. #endif
  425. #endif
  426. /*
  427. * NewQDPolyUPP()
  428. *
  429. * Availability:
  430. * Non-Carbon CFM: available as macro/inline
  431. * CarbonLib: in CarbonLib 1.0 and later
  432. * Mac OS X: in version 10.0 and later
  433. */
  434. EXTERN_API_C( QDPolyUPP )
  435. NewQDPolyUPP(QDPolyProcPtr userRoutine);
  436. #if !OPAQUE_UPP_TYPES
  437. enum { uppQDPolyProcInfo = 0x00000340 }; /* pascal no_return_value Func(1_byte, 4_bytes) */
  438. #ifdef __cplusplus
  439. inline DEFINE_API_C(QDPolyUPP) NewQDPolyUPP(QDPolyProcPtr userRoutine) { return (QDPolyUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDPolyProcInfo, GetCurrentArchitecture()); }
  440. #else
  441. #define NewQDPolyUPP(userRoutine) (QDPolyUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDPolyProcInfo, GetCurrentArchitecture())
  442. #endif
  443. #endif
  444. /*
  445. * NewQDRgnUPP()
  446. *
  447. * Availability:
  448. * Non-Carbon CFM: available as macro/inline
  449. * CarbonLib: in CarbonLib 1.0 and later
  450. * Mac OS X: in version 10.0 and later
  451. */
  452. EXTERN_API_C( QDRgnUPP )
  453. NewQDRgnUPP(QDRgnProcPtr userRoutine);
  454. #if !OPAQUE_UPP_TYPES
  455. enum { uppQDRgnProcInfo = 0x00000340 }; /* pascal no_return_value Func(1_byte, 4_bytes) */
  456. #ifdef __cplusplus
  457. inline DEFINE_API_C(QDRgnUPP) NewQDRgnUPP(QDRgnProcPtr userRoutine) { return (QDRgnUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDRgnProcInfo, GetCurrentArchitecture()); }
  458. #else
  459. #define NewQDRgnUPP(userRoutine) (QDRgnUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDRgnProcInfo, GetCurrentArchitecture())
  460. #endif
  461. #endif
  462. /*
  463. * NewQDBitsUPP()
  464. *
  465. * Availability:
  466. * Non-Carbon CFM: available as macro/inline
  467. * CarbonLib: in CarbonLib 1.0 and later
  468. * Mac OS X: in version 10.0 and later
  469. */
  470. EXTERN_API_C( QDBitsUPP )
  471. NewQDBitsUPP(QDBitsProcPtr userRoutine);
  472. #if !OPAQUE_UPP_TYPES
  473. enum { uppQDBitsProcInfo = 0x0000EFC0 }; /* pascal no_return_value Func(4_bytes, 4_bytes, 4_bytes, 2_bytes, 4_bytes) */
  474. #ifdef __cplusplus
  475. inline DEFINE_API_C(QDBitsUPP) NewQDBitsUPP(QDBitsProcPtr userRoutine) { return (QDBitsUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDBitsProcInfo, GetCurrentArchitecture()); }
  476. #else
  477. #define NewQDBitsUPP(userRoutine) (QDBitsUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDBitsProcInfo, GetCurrentArchitecture())
  478. #endif
  479. #endif
  480. /*
  481. * NewQDCommentUPP()
  482. *
  483. * Availability:
  484. * Non-Carbon CFM: available as macro/inline
  485. * CarbonLib: in CarbonLib 1.0 and later
  486. * Mac OS X: in version 10.0 and later
  487. */
  488. EXTERN_API_C( QDCommentUPP )
  489. NewQDCommentUPP(QDCommentProcPtr userRoutine);
  490. #if !OPAQUE_UPP_TYPES
  491. enum { uppQDCommentProcInfo = 0x00000E80 }; /* pascal no_return_value Func(2_bytes, 2_bytes, 4_bytes) */
  492. #ifdef __cplusplus
  493. inline DEFINE_API_C(QDCommentUPP) NewQDCommentUPP(QDCommentProcPtr userRoutine) { return (QDCommentUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDCommentProcInfo, GetCurrentArchitecture()); }
  494. #else
  495. #define NewQDCommentUPP(userRoutine) (QDCommentUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDCommentProcInfo, GetCurrentArchitecture())
  496. #endif
  497. #endif
  498. /*
  499. * NewQDTxMeasUPP()
  500. *
  501. * Availability:
  502. * Non-Carbon CFM: available as macro/inline
  503. * CarbonLib: in CarbonLib 1.0 and later
  504. * Mac OS X: in version 10.0 and later
  505. */
  506. EXTERN_API_C( QDTxMeasUPP )
  507. NewQDTxMeasUPP(QDTxMeasProcPtr userRoutine);
  508. #if !OPAQUE_UPP_TYPES
  509. enum { uppQDTxMeasProcInfo = 0x0000FFA0 }; /* pascal 2_bytes Func(2_bytes, 4_bytes, 4_bytes, 4_bytes, 4_bytes) */
  510. #ifdef __cplusplus
  511. inline DEFINE_API_C(QDTxMeasUPP) NewQDTxMeasUPP(QDTxMeasProcPtr userRoutine) { return (QDTxMeasUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDTxMeasProcInfo, GetCurrentArchitecture()); }
  512. #else
  513. #define NewQDTxMeasUPP(userRoutine) (QDTxMeasUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDTxMeasProcInfo, GetCurrentArchitecture())
  514. #endif
  515. #endif
  516. /*
  517. * NewQDGetPicUPP()
  518. *
  519. * Availability:
  520. * Non-Carbon CFM: available as macro/inline
  521. * CarbonLib: in CarbonLib 1.0 and later
  522. * Mac OS X: in version 10.0 and later
  523. */
  524. EXTERN_API_C( QDGetPicUPP )
  525. NewQDGetPicUPP(QDGetPicProcPtr userRoutine);
  526. #if !OPAQUE_UPP_TYPES
  527. enum { uppQDGetPicProcInfo = 0x000002C0 }; /* pascal no_return_value Func(4_bytes, 2_bytes) */
  528. #ifdef __cplusplus
  529. inline DEFINE_API_C(QDGetPicUPP) NewQDGetPicUPP(QDGetPicProcPtr userRoutine) { return (QDGetPicUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDGetPicProcInfo, GetCurrentArchitecture()); }
  530. #else
  531. #define NewQDGetPicUPP(userRoutine) (QDGetPicUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDGetPicProcInfo, GetCurrentArchitecture())
  532. #endif
  533. #endif
  534. /*
  535. * NewQDPutPicUPP()
  536. *
  537. * Availability:
  538. * Non-Carbon CFM: available as macro/inline
  539. * CarbonLib: in CarbonLib 1.0 and later
  540. * Mac OS X: in version 10.0 and later
  541. */
  542. EXTERN_API_C( QDPutPicUPP )
  543. NewQDPutPicUPP(QDPutPicProcPtr userRoutine);
  544. #if !OPAQUE_UPP_TYPES
  545. enum { uppQDPutPicProcInfo = 0x000002C0 }; /* pascal no_return_value Func(4_bytes, 2_bytes) */
  546. #ifdef __cplusplus
  547. inline DEFINE_API_C(QDPutPicUPP) NewQDPutPicUPP(QDPutPicProcPtr userRoutine) { return (QDPutPicUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDPutPicProcInfo, GetCurrentArchitecture()); }
  548. #else
  549. #define NewQDPutPicUPP(userRoutine) (QDPutPicUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDPutPicProcInfo, GetCurrentArchitecture())
  550. #endif
  551. #endif
  552. /*
  553. * NewQDOpcodeUPP()
  554. *
  555. * Availability:
  556. * Non-Carbon CFM: available as macro/inline
  557. * CarbonLib: in CarbonLib 1.0 and later
  558. * Mac OS X: in version 10.0 and later
  559. */
  560. EXTERN_API_C( QDOpcodeUPP )
  561. NewQDOpcodeUPP(QDOpcodeProcPtr userRoutine);
  562. #if !OPAQUE_UPP_TYPES
  563. enum { uppQDOpcodeProcInfo = 0x00002BC0 }; /* pascal no_return_value Func(4_bytes, 4_bytes, 2_bytes, 2_bytes) */
  564. #ifdef __cplusplus
  565. inline DEFINE_API_C(QDOpcodeUPP) NewQDOpcodeUPP(QDOpcodeProcPtr userRoutine) { return (QDOpcodeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDOpcodeProcInfo, GetCurrentArchitecture()); }
  566. #else
  567. #define NewQDOpcodeUPP(userRoutine) (QDOpcodeUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDOpcodeProcInfo, GetCurrentArchitecture())
  568. #endif
  569. #endif
  570. /*
  571. * NewQDStdGlyphsUPP()
  572. *
  573. * Availability:
  574. * Non-Carbon CFM: available as macro/inline
  575. * CarbonLib: in CarbonLib 1.0 and later
  576. * Mac OS X: in version 10.0 and later
  577. */
  578. EXTERN_API_C( QDStdGlyphsUPP )
  579. NewQDStdGlyphsUPP(QDStdGlyphsProcPtr userRoutine);
  580. #if !OPAQUE_UPP_TYPES
  581. enum { uppQDStdGlyphsProcInfo = 0x000003F1 }; /* 4_bytes Func(4_bytes, 4_bytes) */
  582. #ifdef __cplusplus
  583. inline DEFINE_API_C(QDStdGlyphsUPP) NewQDStdGlyphsUPP(QDStdGlyphsProcPtr userRoutine) { return (QDStdGlyphsUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDStdGlyphsProcInfo, GetCurrentArchitecture()); }
  584. #else
  585. #define NewQDStdGlyphsUPP(userRoutine) (QDStdGlyphsUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDStdGlyphsProcInfo, GetCurrentArchitecture())
  586. #endif
  587. #endif
  588. /*
  589. * NewQDJShieldCursorUPP()
  590. *
  591. * Availability:
  592. * Non-Carbon CFM: available as macro/inline
  593. * CarbonLib: in CarbonLib 1.0 and later
  594. * Mac OS X: in version 10.0 and later
  595. */
  596. EXTERN_API_C( QDJShieldCursorUPP )
  597. NewQDJShieldCursorUPP(QDJShieldCursorProcPtr userRoutine);
  598. #if !OPAQUE_UPP_TYPES
  599. enum { uppQDJShieldCursorProcInfo = 0x00002A80 }; /* pascal no_return_value Func(2_bytes, 2_bytes, 2_bytes, 2_bytes) */
  600. #ifdef __cplusplus
  601. inline DEFINE_API_C(QDJShieldCursorUPP) NewQDJShieldCursorUPP(QDJShieldCursorProcPtr userRoutine) { return (QDJShieldCursorUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDJShieldCursorProcInfo, GetCurrentArchitecture()); }
  602. #else
  603. #define NewQDJShieldCursorUPP(userRoutine) (QDJShieldCursorUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDJShieldCursorProcInfo, GetCurrentArchitecture())
  604. #endif
  605. #endif
  606. /*
  607. * DisposeQDTextUPP()
  608. *
  609. * Availability:
  610. * Non-Carbon CFM: available as macro/inline
  611. * CarbonLib: in CarbonLib 1.0 and later
  612. * Mac OS X: in version 10.0 and later
  613. */
  614. EXTERN_API_C( void )
  615. DisposeQDTextUPP(QDTextUPP userUPP);
  616. #if !OPAQUE_UPP_TYPES
  617. #ifdef __cplusplus
  618. inline DEFINE_API_C(void) DisposeQDTextUPP(QDTextUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  619. #else
  620. #define DisposeQDTextUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  621. #endif
  622. #endif
  623. /*
  624. * DisposeQDLineUPP()
  625. *
  626. * Availability:
  627. * Non-Carbon CFM: available as macro/inline
  628. * CarbonLib: in CarbonLib 1.0 and later
  629. * Mac OS X: in version 10.0 and later
  630. */
  631. EXTERN_API_C( void )
  632. DisposeQDLineUPP(QDLineUPP userUPP);
  633. #if !OPAQUE_UPP_TYPES
  634. #ifdef __cplusplus
  635. inline DEFINE_API_C(void) DisposeQDLineUPP(QDLineUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  636. #else
  637. #define DisposeQDLineUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  638. #endif
  639. #endif
  640. /*
  641. * DisposeQDRectUPP()
  642. *
  643. * Availability:
  644. * Non-Carbon CFM: available as macro/inline
  645. * CarbonLib: in CarbonLib 1.0 and later
  646. * Mac OS X: in version 10.0 and later
  647. */
  648. EXTERN_API_C( void )
  649. DisposeQDRectUPP(QDRectUPP userUPP);
  650. #if !OPAQUE_UPP_TYPES
  651. #ifdef __cplusplus
  652. inline DEFINE_API_C(void) DisposeQDRectUPP(QDRectUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  653. #else
  654. #define DisposeQDRectUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  655. #endif
  656. #endif
  657. /*
  658. * DisposeQDRRectUPP()
  659. *
  660. * Availability:
  661. * Non-Carbon CFM: available as macro/inline
  662. * CarbonLib: in CarbonLib 1.0 and later
  663. * Mac OS X: in version 10.0 and later
  664. */
  665. EXTERN_API_C( void )
  666. DisposeQDRRectUPP(QDRRectUPP userUPP);
  667. #if !OPAQUE_UPP_TYPES
  668. #ifdef __cplusplus
  669. inline DEFINE_API_C(void) DisposeQDRRectUPP(QDRRectUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  670. #else
  671. #define DisposeQDRRectUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  672. #endif
  673. #endif
  674. /*
  675. * DisposeQDOvalUPP()
  676. *
  677. * Availability:
  678. * Non-Carbon CFM: available as macro/inline
  679. * CarbonLib: in CarbonLib 1.0 and later
  680. * Mac OS X: in version 10.0 and later
  681. */
  682. EXTERN_API_C( void )
  683. DisposeQDOvalUPP(QDOvalUPP userUPP);
  684. #if !OPAQUE_UPP_TYPES
  685. #ifdef __cplusplus
  686. inline DEFINE_API_C(void) DisposeQDOvalUPP(QDOvalUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  687. #else
  688. #define DisposeQDOvalUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  689. #endif
  690. #endif
  691. /*
  692. * DisposeQDArcUPP()
  693. *
  694. * Availability:
  695. * Non-Carbon CFM: available as macro/inline
  696. * CarbonLib: in CarbonLib 1.0 and later
  697. * Mac OS X: in version 10.0 and later
  698. */
  699. EXTERN_API_C( void )
  700. DisposeQDArcUPP(QDArcUPP userUPP);
  701. #if !OPAQUE_UPP_TYPES
  702. #ifdef __cplusplus
  703. inline DEFINE_API_C(void) DisposeQDArcUPP(QDArcUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  704. #else
  705. #define DisposeQDArcUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  706. #endif
  707. #endif
  708. /*
  709. * DisposeQDPolyUPP()
  710. *
  711. * Availability:
  712. * Non-Carbon CFM: available as macro/inline
  713. * CarbonLib: in CarbonLib 1.0 and later
  714. * Mac OS X: in version 10.0 and later
  715. */
  716. EXTERN_API_C( void )
  717. DisposeQDPolyUPP(QDPolyUPP userUPP);
  718. #if !OPAQUE_UPP_TYPES
  719. #ifdef __cplusplus
  720. inline DEFINE_API_C(void) DisposeQDPolyUPP(QDPolyUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  721. #else
  722. #define DisposeQDPolyUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  723. #endif
  724. #endif
  725. /*
  726. * DisposeQDRgnUPP()
  727. *
  728. * Availability:
  729. * Non-Carbon CFM: available as macro/inline
  730. * CarbonLib: in CarbonLib 1.0 and later
  731. * Mac OS X: in version 10.0 and later
  732. */
  733. EXTERN_API_C( void )
  734. DisposeQDRgnUPP(QDRgnUPP userUPP);
  735. #if !OPAQUE_UPP_TYPES
  736. #ifdef __cplusplus
  737. inline DEFINE_API_C(void) DisposeQDRgnUPP(QDRgnUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  738. #else
  739. #define DisposeQDRgnUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  740. #endif
  741. #endif
  742. /*
  743. * DisposeQDBitsUPP()
  744. *
  745. * Availability:
  746. * Non-Carbon CFM: available as macro/inline
  747. * CarbonLib: in CarbonLib 1.0 and later
  748. * Mac OS X: in version 10.0 and later
  749. */
  750. EXTERN_API_C( void )
  751. DisposeQDBitsUPP(QDBitsUPP userUPP);
  752. #if !OPAQUE_UPP_TYPES
  753. #ifdef __cplusplus
  754. inline DEFINE_API_C(void) DisposeQDBitsUPP(QDBitsUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  755. #else
  756. #define DisposeQDBitsUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  757. #endif
  758. #endif
  759. /*
  760. * DisposeQDCommentUPP()
  761. *
  762. * Availability:
  763. * Non-Carbon CFM: available as macro/inline
  764. * CarbonLib: in CarbonLib 1.0 and later
  765. * Mac OS X: in version 10.0 and later
  766. */
  767. EXTERN_API_C( void )
  768. DisposeQDCommentUPP(QDCommentUPP userUPP);
  769. #if !OPAQUE_UPP_TYPES
  770. #ifdef __cplusplus
  771. inline DEFINE_API_C(void) DisposeQDCommentUPP(QDCommentUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  772. #else
  773. #define DisposeQDCommentUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  774. #endif
  775. #endif
  776. /*
  777. * DisposeQDTxMeasUPP()
  778. *
  779. * Availability:
  780. * Non-Carbon CFM: available as macro/inline
  781. * CarbonLib: in CarbonLib 1.0 and later
  782. * Mac OS X: in version 10.0 and later
  783. */
  784. EXTERN_API_C( void )
  785. DisposeQDTxMeasUPP(QDTxMeasUPP userUPP);
  786. #if !OPAQUE_UPP_TYPES
  787. #ifdef __cplusplus
  788. inline DEFINE_API_C(void) DisposeQDTxMeasUPP(QDTxMeasUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  789. #else
  790. #define DisposeQDTxMeasUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  791. #endif
  792. #endif
  793. /*
  794. * DisposeQDGetPicUPP()
  795. *
  796. * Availability:
  797. * Non-Carbon CFM: available as macro/inline
  798. * CarbonLib: in CarbonLib 1.0 and later
  799. * Mac OS X: in version 10.0 and later
  800. */
  801. EXTERN_API_C( void )
  802. DisposeQDGetPicUPP(QDGetPicUPP userUPP);
  803. #if !OPAQUE_UPP_TYPES
  804. #ifdef __cplusplus
  805. inline DEFINE_API_C(void) DisposeQDGetPicUPP(QDGetPicUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  806. #else
  807. #define DisposeQDGetPicUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  808. #endif
  809. #endif
  810. /*
  811. * DisposeQDPutPicUPP()
  812. *
  813. * Availability:
  814. * Non-Carbon CFM: available as macro/inline
  815. * CarbonLib: in CarbonLib 1.0 and later
  816. * Mac OS X: in version 10.0 and later
  817. */
  818. EXTERN_API_C( void )
  819. DisposeQDPutPicUPP(QDPutPicUPP userUPP);
  820. #if !OPAQUE_UPP_TYPES
  821. #ifdef __cplusplus
  822. inline DEFINE_API_C(void) DisposeQDPutPicUPP(QDPutPicUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  823. #else
  824. #define DisposeQDPutPicUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  825. #endif
  826. #endif
  827. /*
  828. * DisposeQDOpcodeUPP()
  829. *
  830. * Availability:
  831. * Non-Carbon CFM: available as macro/inline
  832. * CarbonLib: in CarbonLib 1.0 and later
  833. * Mac OS X: in version 10.0 and later
  834. */
  835. EXTERN_API_C( void )
  836. DisposeQDOpcodeUPP(QDOpcodeUPP userUPP);
  837. #if !OPAQUE_UPP_TYPES
  838. #ifdef __cplusplus
  839. inline DEFINE_API_C(void) DisposeQDOpcodeUPP(QDOpcodeUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  840. #else
  841. #define DisposeQDOpcodeUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  842. #endif
  843. #endif
  844. /*
  845. * DisposeQDStdGlyphsUPP()
  846. *
  847. * Availability:
  848. * Non-Carbon CFM: available as macro/inline
  849. * CarbonLib: in CarbonLib 1.0 and later
  850. * Mac OS X: in version 10.0 and later
  851. */
  852. EXTERN_API_C( void )
  853. DisposeQDStdGlyphsUPP(QDStdGlyphsUPP userUPP);
  854. #if !OPAQUE_UPP_TYPES
  855. #ifdef __cplusplus
  856. inline DEFINE_API_C(void) DisposeQDStdGlyphsUPP(QDStdGlyphsUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  857. #else
  858. #define DisposeQDStdGlyphsUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  859. #endif
  860. #endif
  861. /*
  862. * DisposeQDJShieldCursorUPP()
  863. *
  864. * Availability:
  865. * Non-Carbon CFM: available as macro/inline
  866. * CarbonLib: in CarbonLib 1.0 and later
  867. * Mac OS X: in version 10.0 and later
  868. */
  869. EXTERN_API_C( void )
  870. DisposeQDJShieldCursorUPP(QDJShieldCursorUPP userUPP);
  871. #if !OPAQUE_UPP_TYPES
  872. #ifdef __cplusplus
  873. inline DEFINE_API_C(void) DisposeQDJShieldCursorUPP(QDJShieldCursorUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  874. #else
  875. #define DisposeQDJShieldCursorUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  876. #endif
  877. #endif
  878. /*
  879. * InvokeQDTextUPP()
  880. *
  881. * Availability:
  882. * Non-Carbon CFM: available as macro/inline
  883. * CarbonLib: in CarbonLib 1.0 and later
  884. * Mac OS X: in version 10.0 and later
  885. */
  886. EXTERN_API_C( void )
  887. InvokeQDTextUPP(
  888. short byteCount,
  889. const void * textBuf,
  890. Point numer,
  891. Point denom,
  892. QDTextUPP userUPP);
  893. #if !OPAQUE_UPP_TYPES
  894. #ifdef __cplusplus
  895. inline DEFINE_API_C(void) InvokeQDTextUPP(short byteCount, const void * textBuf, Point numer, Point denom, QDTextUPP userUPP) { CALL_FOUR_PARAMETER_UPP(userUPP, uppQDTextProcInfo, byteCount, textBuf, numer, denom); }
  896. #else
  897. #define InvokeQDTextUPP(byteCount, textBuf, numer, denom, userUPP) CALL_FOUR_PARAMETER_UPP((userUPP), uppQDTextProcInfo, (byteCount), (textBuf), (numer), (denom))
  898. #endif
  899. #endif
  900. /*
  901. * InvokeQDLineUPP()
  902. *
  903. * Availability:
  904. * Non-Carbon CFM: available as macro/inline
  905. * CarbonLib: in CarbonLib 1.0 and later
  906. * Mac OS X: in version 10.0 and later
  907. */
  908. EXTERN_API_C( void )
  909. InvokeQDLineUPP(
  910. Point newPt,
  911. QDLineUPP userUPP);
  912. #if !OPAQUE_UPP_TYPES
  913. #ifdef __cplusplus
  914. inline DEFINE_API_C(void) InvokeQDLineUPP(Point newPt, QDLineUPP userUPP) { CALL_ONE_PARAMETER_UPP(userUPP, uppQDLineProcInfo, newPt); }
  915. #else
  916. #define InvokeQDLineUPP(newPt, userUPP) CALL_ONE_PARAMETER_UPP((userUPP), uppQDLineProcInfo, (newPt))
  917. #endif
  918. #endif
  919. /*
  920. * InvokeQDRectUPP()
  921. *
  922. * Availability:
  923. * Non-Carbon CFM: available as macro/inline
  924. * CarbonLib: in CarbonLib 1.0 and later
  925. * Mac OS X: in version 10.0 and later
  926. */
  927. EXTERN_API_C( void )
  928. InvokeQDRectUPP(
  929. GrafVerb verb,
  930. const Rect * r,
  931. QDRectUPP userUPP);
  932. #if !OPAQUE_UPP_TYPES
  933. #ifdef __cplusplus
  934. inline DEFINE_API_C(void) InvokeQDRectUPP(GrafVerb verb, const Rect * r, QDRectUPP userUPP) { CALL_TWO_PARAMETER_UPP(userUPP, uppQDRectProcInfo, verb, r); }
  935. #else
  936. #define InvokeQDRectUPP(verb, r, userUPP) CALL_TWO_PARAMETER_UPP((userUPP), uppQDRectProcInfo, (verb), (r))
  937. #endif
  938. #endif
  939. /*
  940. * InvokeQDRRectUPP()
  941. *
  942. * Availability:
  943. * Non-Carbon CFM: available as macro/inline
  944. * CarbonLib: in CarbonLib 1.0 and later
  945. * Mac OS X: in version 10.0 and later
  946. */
  947. EXTERN_API_C( void )
  948. InvokeQDRRectUPP(
  949. GrafVerb verb,
  950. const Rect * r,
  951. short ovalWidth,
  952. short ovalHeight,
  953. QDRRectUPP userUPP);
  954. #if !OPAQUE_UPP_TYPES
  955. #ifdef __cplusplus
  956. inline DEFINE_API_C(void) InvokeQDRRectUPP(GrafVerb verb, const Rect * r, short ovalWidth, short ovalHeight, QDRRectUPP userUPP) { CALL_FOUR_PARAMETER_UPP(userUPP, uppQDRRectProcInfo, verb, r, ovalWidth, ovalHeight); }
  957. #else
  958. #define InvokeQDRRectUPP(verb, r, ovalWidth, ovalHeight, userUPP) CALL_FOUR_PARAMETER_UPP((userUPP), uppQDRRectProcInfo, (verb), (r), (ovalWidth), (ovalHeight))
  959. #endif
  960. #endif
  961. /*
  962. * InvokeQDOvalUPP()
  963. *
  964. * Availability:
  965. * Non-Carbon CFM: available as macro/inline
  966. * CarbonLib: in CarbonLib 1.0 and later
  967. * Mac OS X: in version 10.0 and later
  968. */
  969. EXTERN_API_C( void )
  970. InvokeQDOvalUPP(
  971. GrafVerb verb,
  972. const Rect * r,
  973. QDOvalUPP userUPP);
  974. #if !OPAQUE_UPP_TYPES
  975. #ifdef __cplusplus
  976. inline DEFINE_API_C(void) InvokeQDOvalUPP(GrafVerb verb, const Rect * r, QDOvalUPP userUPP) { CALL_TWO_PARAMETER_UPP(userUPP, uppQDOvalProcInfo, verb, r); }
  977. #else
  978. #define InvokeQDOvalUPP(verb, r, userUPP) CALL_TWO_PARAMETER_UPP((userUPP), uppQDOvalProcInfo, (verb), (r))
  979. #endif
  980. #endif
  981. /*
  982. * InvokeQDArcUPP()
  983. *
  984. * Availability:
  985. * Non-Carbon CFM: available as macro/inline
  986. * CarbonLib: in CarbonLib 1.0 and later
  987. * Mac OS X: in version 10.0 and later
  988. */
  989. EXTERN_API_C( void )
  990. InvokeQDArcUPP(
  991. GrafVerb verb,
  992. const Rect * r,
  993. short startAngle,
  994. short arcAngle,
  995. QDArcUPP userUPP);
  996. #if !OPAQUE_UPP_TYPES
  997. #ifdef __cplusplus
  998. inline DEFINE_API_C(void) InvokeQDArcUPP(GrafVerb verb, const Rect * r, short startAngle, short arcAngle, QDArcUPP userUPP) { CALL_FOUR_PARAMETER_UPP(userUPP, uppQDArcProcInfo, verb, r, startAngle, arcAngle); }
  999. #else
  1000. #define InvokeQDArcUPP(verb, r, startAngle, arcAngle, userUPP) CALL_FOUR_PARAMETER_UPP((userUPP), uppQDArcProcInfo, (verb), (r), (startAngle), (arcAngle))
  1001. #endif
  1002. #endif
  1003. /*
  1004. * InvokeQDPolyUPP()
  1005. *
  1006. * Availability:
  1007. * Non-Carbon CFM: available as macro/inline
  1008. * CarbonLib: in CarbonLib 1.0 and later
  1009. * Mac OS X: in version 10.0 and later
  1010. */
  1011. EXTERN_API_C( void )
  1012. InvokeQDPolyUPP(
  1013. GrafVerb verb,
  1014. PolyHandle poly,
  1015. QDPolyUPP userUPP);
  1016. #if !OPAQUE_UPP_TYPES
  1017. #ifdef __cplusplus
  1018. inline DEFINE_API_C(void) InvokeQDPolyUPP(GrafVerb verb, PolyHandle poly, QDPolyUPP userUPP) { CALL_TWO_PARAMETER_UPP(userUPP, uppQDPolyProcInfo, verb, poly); }
  1019. #else
  1020. #define InvokeQDPolyUPP(verb, poly, userUPP) CALL_TWO_PARAMETER_UPP((userUPP), uppQDPolyProcInfo, (verb), (poly))
  1021. #endif
  1022. #endif
  1023. /*
  1024. * InvokeQDRgnUPP()
  1025. *
  1026. * Availability:
  1027. * Non-Carbon CFM: available as macro/inline
  1028. * CarbonLib: in CarbonLib 1.0 and later
  1029. * Mac OS X: in version 10.0 and later
  1030. */
  1031. EXTERN_API_C( void )
  1032. InvokeQDRgnUPP(
  1033. GrafVerb verb,
  1034. RgnHandle rgn,
  1035. QDRgnUPP userUPP);
  1036. #if !OPAQUE_UPP_TYPES
  1037. #ifdef __cplusplus
  1038. inline DEFINE_API_C(void) InvokeQDRgnUPP(GrafVerb verb, RgnHandle rgn, QDRgnUPP userUPP) { CALL_TWO_PARAMETER_UPP(userUPP, uppQDRgnProcInfo, verb, rgn); }
  1039. #else
  1040. #define InvokeQDRgnUPP(verb, rgn, userUPP) CALL_TWO_PARAMETER_UPP((userUPP), uppQDRgnProcInfo, (verb), (rgn))
  1041. #endif
  1042. #endif
  1043. /*
  1044. * InvokeQDBitsUPP()
  1045. *
  1046. * Availability:
  1047. * Non-Carbon CFM: available as macro/inline
  1048. * CarbonLib: in CarbonLib 1.0 and later
  1049. * Mac OS X: in version 10.0 and later
  1050. */
  1051. EXTERN_API_C( void )
  1052. InvokeQDBitsUPP(
  1053. const BitMap * srcBits,
  1054. const Rect * srcRect,
  1055. const Rect * dstRect,
  1056. short mode,
  1057. RgnHandle maskRgn,
  1058. QDBitsUPP userUPP);
  1059. #if !OPAQUE_UPP_TYPES
  1060. #ifdef __cplusplus
  1061. inline DEFINE_API_C(void) InvokeQDBitsUPP(const BitMap * srcBits, const Rect * srcRect, const Rect * dstRect, short mode, RgnHandle maskRgn, QDBitsUPP userUPP) { CALL_FIVE_PARAMETER_UPP(userUPP, uppQDBitsProcInfo, srcBits, srcRect, dstRect, mode, maskRgn); }
  1062. #else
  1063. #define InvokeQDBitsUPP(srcBits, srcRect, dstRect, mode, maskRgn, userUPP) CALL_FIVE_PARAMETER_UPP((userUPP), uppQDBitsProcInfo, (srcBits), (srcRect), (dstRect), (mode), (maskRgn))
  1064. #endif
  1065. #endif
  1066. /*
  1067. * InvokeQDCommentUPP()
  1068. *
  1069. * Availability:
  1070. * Non-Carbon CFM: available as macro/inline
  1071. * CarbonLib: in CarbonLib 1.0 and later
  1072. * Mac OS X: in version 10.0 and later
  1073. */
  1074. EXTERN_API_C( void )
  1075. InvokeQDCommentUPP(
  1076. short kind,
  1077. short dataSize,
  1078. Handle dataHandle,
  1079. QDCommentUPP userUPP);
  1080. #if !OPAQUE_UPP_TYPES
  1081. #ifdef __cplusplus
  1082. inline DEFINE_API_C(void) InvokeQDCommentUPP(short kind, short dataSize, Handle dataHandle, QDCommentUPP userUPP) { CALL_THREE_PARAMETER_UPP(userUPP, uppQDCommentProcInfo, kind, dataSize, dataHandle); }
  1083. #else
  1084. #define InvokeQDCommentUPP(kind, dataSize, dataHandle, userUPP) CALL_THREE_PARAMETER_UPP((userUPP), uppQDCommentProcInfo, (kind), (dataSize), (dataHandle))
  1085. #endif
  1086. #endif
  1087. /*
  1088. * InvokeQDTxMeasUPP()
  1089. *
  1090. * Availability:
  1091. * Non-Carbon CFM: available as macro/inline
  1092. * CarbonLib: in CarbonLib 1.0 and later
  1093. * Mac OS X: in version 10.0 and later
  1094. */
  1095. EXTERN_API_C( short )
  1096. InvokeQDTxMeasUPP(
  1097. short byteCount,
  1098. const void * textAddr,
  1099. Point * numer,
  1100. Point * denom,
  1101. FontInfo * info,
  1102. QDTxMeasUPP userUPP);
  1103. #if !OPAQUE_UPP_TYPES
  1104. #ifdef __cplusplus
  1105. inline DEFINE_API_C(short) InvokeQDTxMeasUPP(short byteCount, const void * textAddr, Point * numer, Point * denom, FontInfo * info, QDTxMeasUPP userUPP) { return (short)CALL_FIVE_PARAMETER_UPP(userUPP, uppQDTxMeasProcInfo, byteCount, textAddr, numer, denom, info); }
  1106. #else
  1107. #define InvokeQDTxMeasUPP(byteCount, textAddr, numer, denom, info, userUPP) (short)CALL_FIVE_PARAMETER_UPP((userUPP), uppQDTxMeasProcInfo, (byteCount), (textAddr), (numer), (denom), (info))
  1108. #endif
  1109. #endif
  1110. /*
  1111. * InvokeQDGetPicUPP()
  1112. *
  1113. * Availability:
  1114. * Non-Carbon CFM: available as macro/inline
  1115. * CarbonLib: in CarbonLib 1.0 and later
  1116. * Mac OS X: in version 10.0 and later
  1117. */
  1118. EXTERN_API_C( void )
  1119. InvokeQDGetPicUPP(
  1120. void * dataPtr,
  1121. short byteCount,
  1122. QDGetPicUPP userUPP);
  1123. #if !OPAQUE_UPP_TYPES
  1124. #ifdef __cplusplus
  1125. inline DEFINE_API_C(void) InvokeQDGetPicUPP(void * dataPtr, short byteCount, QDGetPicUPP userUPP) { CALL_TWO_PARAMETER_UPP(userUPP, uppQDGetPicProcInfo, dataPtr, byteCount); }
  1126. #else
  1127. #define InvokeQDGetPicUPP(dataPtr, byteCount, userUPP) CALL_TWO_PARAMETER_UPP((userUPP), uppQDGetPicProcInfo, (dataPtr), (byteCount))
  1128. #endif
  1129. #endif
  1130. /*
  1131. * InvokeQDPutPicUPP()
  1132. *
  1133. * Availability:
  1134. * Non-Carbon CFM: available as macro/inline
  1135. * CarbonLib: in CarbonLib 1.0 and later
  1136. * Mac OS X: in version 10.0 and later
  1137. */
  1138. EXTERN_API_C( void )
  1139. InvokeQDPutPicUPP(
  1140. const void * dataPtr,
  1141. short byteCount,
  1142. QDPutPicUPP userUPP);
  1143. #if !OPAQUE_UPP_TYPES
  1144. #ifdef __cplusplus
  1145. inline DEFINE_API_C(void) InvokeQDPutPicUPP(const void * dataPtr, short byteCount, QDPutPicUPP userUPP) { CALL_TWO_PARAMETER_UPP(userUPP, uppQDPutPicProcInfo, dataPtr, byteCount); }
  1146. #else
  1147. #define InvokeQDPutPicUPP(dataPtr, byteCount, userUPP) CALL_TWO_PARAMETER_UPP((userUPP), uppQDPutPicProcInfo, (dataPtr), (byteCount))
  1148. #endif
  1149. #endif
  1150. /*
  1151. * InvokeQDOpcodeUPP()
  1152. *
  1153. * Availability:
  1154. * Non-Carbon CFM: available as macro/inline
  1155. * CarbonLib: in CarbonLib 1.0 and later
  1156. * Mac OS X: in version 10.0 and later
  1157. */
  1158. EXTERN_API_C( void )
  1159. InvokeQDOpcodeUPP(
  1160. const Rect * fromRect,
  1161. const Rect * toRect,
  1162. UInt16 opcode,
  1163. SInt16 version,
  1164. QDOpcodeUPP userUPP);
  1165. #if !OPAQUE_UPP_TYPES
  1166. #ifdef __cplusplus
  1167. inline DEFINE_API_C(void) InvokeQDOpcodeUPP(const Rect * fromRect, const Rect * toRect, UInt16 opcode, SInt16 version, QDOpcodeUPP userUPP) { CALL_FOUR_PARAMETER_UPP(userUPP, uppQDOpcodeProcInfo, fromRect, toRect, opcode, version); }
  1168. #else
  1169. #define InvokeQDOpcodeUPP(fromRect, toRect, opcode, version, userUPP) CALL_FOUR_PARAMETER_UPP((userUPP), uppQDOpcodeProcInfo, (fromRect), (toRect), (opcode), (version))
  1170. #endif
  1171. #endif
  1172. /*
  1173. * InvokeQDStdGlyphsUPP()
  1174. *
  1175. * Availability:
  1176. * Non-Carbon CFM: available as macro/inline
  1177. * CarbonLib: in CarbonLib 1.0 and later
  1178. * Mac OS X: in version 10.0 and later
  1179. */
  1180. EXTERN_API_C( OSStatus )
  1181. InvokeQDStdGlyphsUPP(
  1182. void * dataStream,
  1183. ByteCount size,
  1184. QDStdGlyphsUPP userUPP);
  1185. #if !OPAQUE_UPP_TYPES
  1186. #ifdef __cplusplus
  1187. inline DEFINE_API_C(OSStatus) InvokeQDStdGlyphsUPP(void * dataStream, ByteCount size, QDStdGlyphsUPP userUPP) { return (OSStatus)CALL_TWO_PARAMETER_UPP(userUPP, uppQDStdGlyphsProcInfo, dataStream, size); }
  1188. #else
  1189. #define InvokeQDStdGlyphsUPP(dataStream, size, userUPP) (OSStatus)CALL_TWO_PARAMETER_UPP((userUPP), uppQDStdGlyphsProcInfo, (dataStream), (size))
  1190. #endif
  1191. #endif
  1192. /*
  1193. * InvokeQDJShieldCursorUPP()
  1194. *
  1195. * Availability:
  1196. * Non-Carbon CFM: available as macro/inline
  1197. * CarbonLib: in CarbonLib 1.0 and later
  1198. * Mac OS X: in version 10.0 and later
  1199. */
  1200. EXTERN_API_C( void )
  1201. InvokeQDJShieldCursorUPP(
  1202. short left,
  1203. short top,
  1204. short right,
  1205. short bottom,
  1206. QDJShieldCursorUPP userUPP);
  1207. #if !OPAQUE_UPP_TYPES
  1208. #ifdef __cplusplus
  1209. inline DEFINE_API_C(void) InvokeQDJShieldCursorUPP(short left, short top, short right, short bottom, QDJShieldCursorUPP userUPP) { CALL_FOUR_PARAMETER_UPP(userUPP, uppQDJShieldCursorProcInfo, left, top, right, bottom); }
  1210. #else
  1211. #define InvokeQDJShieldCursorUPP(left, top, right, bottom, userUPP) CALL_FOUR_PARAMETER_UPP((userUPP), uppQDJShieldCursorProcInfo, (left), (top), (right), (bottom))
  1212. #endif
  1213. #endif
  1214. #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
  1215. /* support for pre-Carbon UPP routines: New...Proc and Call...Proc */
  1216. #define NewQDTextProc(userRoutine) NewQDTextUPP(userRoutine)
  1217. #define NewQDLineProc(userRoutine) NewQDLineUPP(userRoutine)
  1218. #define NewQDRectProc(userRoutine) NewQDRectUPP(userRoutine)
  1219. #define NewQDRRectProc(userRoutine) NewQDRRectUPP(userRoutine)
  1220. #define NewQDOvalProc(userRoutine) NewQDOvalUPP(userRoutine)
  1221. #define NewQDArcProc(userRoutine) NewQDArcUPP(userRoutine)
  1222. #define NewQDPolyProc(userRoutine) NewQDPolyUPP(userRoutine)
  1223. #define NewQDRgnProc(userRoutine) NewQDRgnUPP(userRoutine)
  1224. #define NewQDBitsProc(userRoutine) NewQDBitsUPP(userRoutine)
  1225. #define NewQDCommentProc(userRoutine) NewQDCommentUPP(userRoutine)
  1226. #define NewQDTxMeasProc(userRoutine) NewQDTxMeasUPP(userRoutine)
  1227. #define NewQDGetPicProc(userRoutine) NewQDGetPicUPP(userRoutine)
  1228. #define NewQDPutPicProc(userRoutine) NewQDPutPicUPP(userRoutine)
  1229. #define NewQDOpcodeProc(userRoutine) NewQDOpcodeUPP(userRoutine)
  1230. #define NewQDStdGlyphsProc(userRoutine) NewQDStdGlyphsUPP(userRoutine)
  1231. #define NewQDJShieldCursorProc(userRoutine) NewQDJShieldCursorUPP(userRoutine)
  1232. #define CallQDTextProc(userRoutine, byteCount, textBuf, numer, denom) InvokeQDTextUPP(byteCount, textBuf, numer, denom, userRoutine)
  1233. #define CallQDLineProc(userRoutine, newPt) InvokeQDLineUPP(newPt, userRoutine)
  1234. #define CallQDRectProc(userRoutine, verb, r) InvokeQDRectUPP(verb, r, userRoutine)
  1235. #define CallQDRRectProc(userRoutine, verb, r, ovalWidth, ovalHeight) InvokeQDRRectUPP(verb, r, ovalWidth, ovalHeight, userRoutine)
  1236. #define CallQDOvalProc(userRoutine, verb, r) InvokeQDOvalUPP(verb, r, userRoutine)
  1237. #define CallQDArcProc(userRoutine, verb, r, startAngle, arcAngle) InvokeQDArcUPP(verb, r, startAngle, arcAngle, userRoutine)
  1238. #define CallQDPolyProc(userRoutine, verb, poly) InvokeQDPolyUPP(verb, poly, userRoutine)
  1239. #define CallQDRgnProc(userRoutine, verb, rgn) InvokeQDRgnUPP(verb, rgn, userRoutine)
  1240. #define CallQDBitsProc(userRoutine, srcBits, srcRect, dstRect, mode, maskRgn) InvokeQDBitsUPP(srcBits, srcRect, dstRect, mode, maskRgn, userRoutine)
  1241. #define CallQDCommentProc(userRoutine, kind, dataSize, dataHandle) InvokeQDCommentUPP(kind, dataSize, dataHandle, userRoutine)
  1242. #define CallQDTxMeasProc(userRoutine, byteCount, textAddr, numer, denom, info) InvokeQDTxMeasUPP(byteCount, textAddr, numer, denom, info, userRoutine)
  1243. #define CallQDGetPicProc(userRoutine, dataPtr, byteCount) InvokeQDGetPicUPP(dataPtr, byteCount, userRoutine)
  1244. #define CallQDPutPicProc(userRoutine, dataPtr, byteCount) InvokeQDPutPicUPP(dataPtr, byteCount, userRoutine)
  1245. #define CallQDOpcodeProc(userRoutine, fromRect, toRect, opcode, version) InvokeQDOpcodeUPP(fromRect, toRect, opcode, version, userRoutine)
  1246. #define CallQDStdGlyphsProc(userRoutine, dataStream, size) InvokeQDStdGlyphsUPP(dataStream, size, userRoutine)
  1247. #define CallQDJShieldCursorProc(userRoutine, left, top, right, bottom) InvokeQDJShieldCursorUPP(left, top, right, bottom, userRoutine)
  1248. #endif /* CALL_NOT_IN_CARBON */
  1249. #if !OPAQUE_TOOLBOX_STRUCTS
  1250. struct GrafPort {
  1251. short device; /* not available in Carbon*/
  1252. BitMap portBits; /* in Carbon use GetPortBitMapForCopyBits or IsPortColor*/
  1253. Rect portRect; /* in Carbon use Get/SetPortBounds*/
  1254. RgnHandle visRgn; /* in Carbon use Get/SetPortVisibleRegion*/
  1255. RgnHandle clipRgn; /* in Carbon use Get/SetPortClipRegion*/
  1256. Pattern bkPat; /* not available in Carbon all GrafPorts are CGrafPorts*/
  1257. Pattern fillPat; /* not available in Carbon all GrafPorts are CGrafPorts*/
  1258. Point pnLoc; /* in Carbon use GetPortPenLocation or MoveTo*/
  1259. Point pnSize; /* in Carbon use Get/SetPortPenSize*/
  1260. short pnMode; /* in Carbon use Get/SetPortPenMode*/
  1261. Pattern pnPat; /* not available in Carbon all GrafPorts are CGrafPorts*/
  1262. short pnVis; /* in Carbon use GetPortPenVisibility or Show/HidePen*/
  1263. short txFont; /* in Carbon use GetPortTextFont or TextFont*/
  1264. StyleField txFace; /* in Carbon use GetPortTextFace or TextFace*/
  1265. /*StyleField occupies 16-bits, but only first 8-bits are used*/
  1266. short txMode; /* in Carbon use GetPortTextMode or TextMode*/
  1267. short txSize; /* in Carbon use GetPortTextSize or TextSize*/
  1268. Fixed spExtra; /* in Carbon use GetPortSpExtra or SpaceExtra*/
  1269. long fgColor; /* not available in Carbon */
  1270. long bkColor; /* not available in Carbon*/
  1271. short colrBit; /* not available in Carbon*/
  1272. short patStretch; /* not available in Carbon*/
  1273. Handle picSave; /* in Carbon use IsPortPictureBeingDefined*/
  1274. Handle rgnSave; /* not available in Carbon*/
  1275. Handle polySave; /* not available in Carbon*/
  1276. QDProcsPtr grafProcs; /* not available in Carbon all GrafPorts are CGrafPorts*/
  1277. };
  1278. typedef struct GrafPort GrafPort;
  1279. typedef GrafPort * GrafPtr;
  1280. /*
  1281. * This set of definitions "belongs" in Windows.
  1282. * But, there is a circularity in the headers where Windows includes Controls and
  1283. * Controls includes Windows. To break the circle, the information
  1284. * needed by Controls is moved from Windows to Quickdraw.
  1285. */
  1286. typedef GrafPtr WindowPtr;
  1287. typedef WindowPtr DialogPtr;
  1288. #else
  1289. typedef struct OpaqueWindowPtr* WindowPtr;
  1290. typedef struct OpaqueDialogPtr* DialogPtr;
  1291. typedef struct OpaqueGrafPtr* GrafPtr;
  1292. #endif /* !OPAQUE_TOOLBOX_STRUCTS */
  1293. typedef WindowPtr WindowRef;
  1294. /* DragConstraint constants to pass to DragGray,DragTheRgn, or ConstrainedDragRgn*/
  1295. typedef UInt16 DragConstraint;
  1296. enum {
  1297. kNoConstraint = 0,
  1298. kVerticalConstraint = 1,
  1299. kHorizontalConstraint = 2
  1300. };
  1301. typedef CALLBACK_API( void , DragGrayRgnProcPtr )(void);
  1302. /*
  1303. * Here ends the list of things that "belong" in Windows.
  1304. */
  1305. struct RGBColor {
  1306. unsigned short red; /*magnitude of red component*/
  1307. unsigned short green; /*magnitude of green component*/
  1308. unsigned short blue; /*magnitude of blue component*/
  1309. };
  1310. typedef struct RGBColor RGBColor;
  1311. typedef RGBColor * RGBColorPtr;
  1312. typedef RGBColorPtr * RGBColorHdl;
  1313. typedef CALLBACK_API( Boolean , ColorSearchProcPtr )(RGBColor *rgb, long *position);
  1314. typedef CALLBACK_API( Boolean , ColorComplementProcPtr )(RGBColor * rgb);
  1315. typedef STACK_UPP_TYPE(DragGrayRgnProcPtr) DragGrayRgnUPP;
  1316. typedef STACK_UPP_TYPE(ColorSearchProcPtr) ColorSearchUPP;
  1317. typedef STACK_UPP_TYPE(ColorComplementProcPtr) ColorComplementUPP;
  1318. /*
  1319. * NewDragGrayRgnUPP()
  1320. *
  1321. * Availability:
  1322. * Non-Carbon CFM: available as macro/inline
  1323. * CarbonLib: in CarbonLib 1.0 and later
  1324. * Mac OS X: in version 10.0 and later
  1325. */
  1326. EXTERN_API_C( DragGrayRgnUPP )
  1327. NewDragGrayRgnUPP(DragGrayRgnProcPtr userRoutine);
  1328. #if !OPAQUE_UPP_TYPES
  1329. enum { uppDragGrayRgnProcInfo = 0x00000000 }; /* pascal no_return_value Func() */
  1330. #ifdef __cplusplus
  1331. inline DEFINE_API_C(DragGrayRgnUPP) NewDragGrayRgnUPP(DragGrayRgnProcPtr userRoutine) { return (DragGrayRgnUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDragGrayRgnProcInfo, GetCurrentArchitecture()); }
  1332. #else
  1333. #define NewDragGrayRgnUPP(userRoutine) (DragGrayRgnUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDragGrayRgnProcInfo, GetCurrentArchitecture())
  1334. #endif
  1335. #endif
  1336. /*
  1337. * NewColorSearchUPP()
  1338. *
  1339. * Availability:
  1340. * Non-Carbon CFM: available as macro/inline
  1341. * CarbonLib: in CarbonLib 1.0 and later
  1342. * Mac OS X: in version 10.0 and later
  1343. */
  1344. EXTERN_API_C( ColorSearchUPP )
  1345. NewColorSearchUPP(ColorSearchProcPtr userRoutine);
  1346. #if !OPAQUE_UPP_TYPES
  1347. enum { uppColorSearchProcInfo = 0x000003D0 }; /* pascal 1_byte Func(4_bytes, 4_bytes) */
  1348. #ifdef __cplusplus
  1349. inline DEFINE_API_C(ColorSearchUPP) NewColorSearchUPP(ColorSearchProcPtr userRoutine) { return (ColorSearchUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppColorSearchProcInfo, GetCurrentArchitecture()); }
  1350. #else
  1351. #define NewColorSearchUPP(userRoutine) (ColorSearchUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppColorSearchProcInfo, GetCurrentArchitecture())
  1352. #endif
  1353. #endif
  1354. /*
  1355. * NewColorComplementUPP()
  1356. *
  1357. * Availability:
  1358. * Non-Carbon CFM: available as macro/inline
  1359. * CarbonLib: in CarbonLib 1.0 and later
  1360. * Mac OS X: in version 10.0 and later
  1361. */
  1362. EXTERN_API_C( ColorComplementUPP )
  1363. NewColorComplementUPP(ColorComplementProcPtr userRoutine);
  1364. #if !OPAQUE_UPP_TYPES
  1365. enum { uppColorComplementProcInfo = 0x000000D0 }; /* pascal 1_byte Func(4_bytes) */
  1366. #ifdef __cplusplus
  1367. inline DEFINE_API_C(ColorComplementUPP) NewColorComplementUPP(ColorComplementProcPtr userRoutine) { return (ColorComplementUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppColorComplementProcInfo, GetCurrentArchitecture()); }
  1368. #else
  1369. #define NewColorComplementUPP(userRoutine) (ColorComplementUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppColorComplementProcInfo, GetCurrentArchitecture())
  1370. #endif
  1371. #endif
  1372. /*
  1373. * DisposeDragGrayRgnUPP()
  1374. *
  1375. * Availability:
  1376. * Non-Carbon CFM: available as macro/inline
  1377. * CarbonLib: in CarbonLib 1.0 and later
  1378. * Mac OS X: in version 10.0 and later
  1379. */
  1380. EXTERN_API_C( void )
  1381. DisposeDragGrayRgnUPP(DragGrayRgnUPP userUPP);
  1382. #if !OPAQUE_UPP_TYPES
  1383. #ifdef __cplusplus
  1384. inline DEFINE_API_C(void) DisposeDragGrayRgnUPP(DragGrayRgnUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  1385. #else
  1386. #define DisposeDragGrayRgnUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  1387. #endif
  1388. #endif
  1389. /*
  1390. * DisposeColorSearchUPP()
  1391. *
  1392. * Availability:
  1393. * Non-Carbon CFM: available as macro/inline
  1394. * CarbonLib: in CarbonLib 1.0 and later
  1395. * Mac OS X: in version 10.0 and later
  1396. */
  1397. EXTERN_API_C( void )
  1398. DisposeColorSearchUPP(ColorSearchUPP userUPP);
  1399. #if !OPAQUE_UPP_TYPES
  1400. #ifdef __cplusplus
  1401. inline DEFINE_API_C(void) DisposeColorSearchUPP(ColorSearchUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  1402. #else
  1403. #define DisposeColorSearchUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  1404. #endif
  1405. #endif
  1406. /*
  1407. * DisposeColorComplementUPP()
  1408. *
  1409. * Availability:
  1410. * Non-Carbon CFM: available as macro/inline
  1411. * CarbonLib: in CarbonLib 1.0 and later
  1412. * Mac OS X: in version 10.0 and later
  1413. */
  1414. EXTERN_API_C( void )
  1415. DisposeColorComplementUPP(ColorComplementUPP userUPP);
  1416. #if !OPAQUE_UPP_TYPES
  1417. #ifdef __cplusplus
  1418. inline DEFINE_API_C(void) DisposeColorComplementUPP(ColorComplementUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  1419. #else
  1420. #define DisposeColorComplementUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  1421. #endif
  1422. #endif
  1423. /*
  1424. * InvokeDragGrayRgnUPP()
  1425. *
  1426. * Availability:
  1427. * Non-Carbon CFM: available as macro/inline
  1428. * CarbonLib: in CarbonLib 1.0 and later
  1429. * Mac OS X: in version 10.0 and later
  1430. */
  1431. EXTERN_API_C( void )
  1432. InvokeDragGrayRgnUPP(DragGrayRgnUPP userUPP);
  1433. #if !OPAQUE_UPP_TYPES
  1434. #ifdef __cplusplus
  1435. inline DEFINE_API_C(void) InvokeDragGrayRgnUPP(DragGrayRgnUPP userUPP) { CALL_ZERO_PARAMETER_UPP(userUPP, uppDragGrayRgnProcInfo); }
  1436. #else
  1437. #define InvokeDragGrayRgnUPP(userUPP) CALL_ZERO_PARAMETER_UPP((userUPP), uppDragGrayRgnProcInfo)
  1438. #endif
  1439. #endif
  1440. /*
  1441. * InvokeColorSearchUPP()
  1442. *
  1443. * Availability:
  1444. * Non-Carbon CFM: available as macro/inline
  1445. * CarbonLib: in CarbonLib 1.0 and later
  1446. * Mac OS X: in version 10.0 and later
  1447. */
  1448. EXTERN_API_C( Boolean )
  1449. InvokeColorSearchUPP(
  1450. RGBColor * rgb,
  1451. long * position,
  1452. ColorSearchUPP userUPP);
  1453. #if !OPAQUE_UPP_TYPES
  1454. #ifdef __cplusplus
  1455. inline DEFINE_API_C(Boolean) InvokeColorSearchUPP(RGBColor * rgb, long * position, ColorSearchUPP userUPP) { return (Boolean)CALL_TWO_PARAMETER_UPP(userUPP, uppColorSearchProcInfo, rgb, position); }
  1456. #else
  1457. #define InvokeColorSearchUPP(rgb, position, userUPP) (Boolean)CALL_TWO_PARAMETER_UPP((userUPP), uppColorSearchProcInfo, (rgb), (position))
  1458. #endif
  1459. #endif
  1460. /*
  1461. * InvokeColorComplementUPP()
  1462. *
  1463. * Availability:
  1464. * Non-Carbon CFM: available as macro/inline
  1465. * CarbonLib: in CarbonLib 1.0 and later
  1466. * Mac OS X: in version 10.0 and later
  1467. */
  1468. EXTERN_API_C( Boolean )
  1469. InvokeColorComplementUPP(
  1470. RGBColor * rgb,
  1471. ColorComplementUPP userUPP);
  1472. #if !OPAQUE_UPP_TYPES
  1473. #ifdef __cplusplus
  1474. inline DEFINE_API_C(Boolean) InvokeColorComplementUPP(RGBColor * rgb, ColorComplementUPP userUPP) { return (Boolean)CALL_ONE_PARAMETER_UPP(userUPP, uppColorComplementProcInfo, rgb); }
  1475. #else
  1476. #define InvokeColorComplementUPP(rgb, userUPP) (Boolean)CALL_ONE_PARAMETER_UPP((userUPP), uppColorComplementProcInfo, (rgb))
  1477. #endif
  1478. #endif
  1479. #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
  1480. /* support for pre-Carbon UPP routines: New...Proc and Call...Proc */
  1481. #define NewDragGrayRgnProc(userRoutine) NewDragGrayRgnUPP(userRoutine)
  1482. #define NewColorSearchProc(userRoutine) NewColorSearchUPP(userRoutine)
  1483. #define NewColorComplementProc(userRoutine) NewColorComplementUPP(userRoutine)
  1484. #define CallDragGrayRgnProc(userRoutine) InvokeDragGrayRgnUPP(userRoutine)
  1485. #define CallColorSearchProc(userRoutine, rgb, position) InvokeColorSearchUPP(rgb, position, userRoutine)
  1486. #define CallColorComplementProc(userRoutine, rgb) InvokeColorComplementUPP(rgb, userRoutine)
  1487. #endif /* CALL_NOT_IN_CARBON */
  1488. struct ColorSpec {
  1489. short value; /*index or other value*/
  1490. RGBColor rgb; /*true color*/
  1491. };
  1492. typedef struct ColorSpec ColorSpec;
  1493. typedef ColorSpec * ColorSpecPtr;
  1494. typedef ColorSpec CSpecArray[1];
  1495. struct ColorTable {
  1496. long ctSeed; /*unique identifier for table*/
  1497. short ctFlags; /*high bit: 0 = PixMap; 1 = device*/
  1498. short ctSize; /*number of entries in CTTable*/
  1499. CSpecArray ctTable; /*array [0..0] of ColorSpec*/
  1500. };
  1501. typedef struct ColorTable ColorTable;
  1502. typedef ColorTable * CTabPtr;
  1503. typedef CTabPtr * CTabHandle;
  1504. struct xColorSpec {
  1505. short value; /*index or other value*/
  1506. RGBColor rgb; /*true color*/
  1507. short xalpha;
  1508. };
  1509. typedef struct xColorSpec xColorSpec;
  1510. typedef xColorSpec * xColorSpecPtr;
  1511. typedef xColorSpec xCSpecArray[1];
  1512. struct MatchRec {
  1513. unsigned short red;
  1514. unsigned short green;
  1515. unsigned short blue;
  1516. long matchData;
  1517. };
  1518. typedef struct MatchRec MatchRec;
  1519. /*
  1520. QuickTime 3.0 makes PixMap data structure available on non-Mac OS's.
  1521. In order to implement PixMap in these alternate environments, the PixMap
  1522. had to be extended. The pmReserved field was changed to pmExt which is
  1523. a Handle to extra info. The planeBytes field was changed to pixelFormat.
  1524. In OS X, Quickdraw also uses the new PixMap data structure.
  1525. */
  1526. #ifndef OLDPIXMAPSTRUCT
  1527. #if TARGET_OS_MAC && TARGET_API_MAC_OS8
  1528. #define OLDPIXMAPSTRUCT 1
  1529. #else
  1530. #define OLDPIXMAPSTRUCT 0
  1531. #endif /* TARGET_OS_MAC && TARGET_API_MAC_OS8 */
  1532. #endif /* !defined(OLDPIXMAPSTRUCT) */
  1533. #if OLDPIXMAPSTRUCT
  1534. #define GETPIXMAPPIXELFORMAT(pm) ( (pm)->pixelSize )
  1535. #else
  1536. #define GETPIXMAPPIXELFORMAT(pm) ( ((pm)->pixelFormat != 0) ? (pm)->pixelFormat : (pm)->pixelSize )
  1537. #endif
  1538. /* You MUST remove the TARGET_API_MAC_OS8 because this must be 0 for OSX */
  1539. #if TARGET_OS_MAC && !TARGET_RT_LITTLE_ENDIAN
  1540. #define NON_MAC_PIXEL_FORMATS 0
  1541. #else
  1542. #define NON_MAC_PIXEL_FORMATS 1
  1543. #endif
  1544. /* pixel formats*/
  1545. enum {
  1546. k1MonochromePixelFormat = 0x00000001, /* 1 bit indexed*/
  1547. k2IndexedPixelFormat = 0x00000002, /* 2 bit indexed*/
  1548. k4IndexedPixelFormat = 0x00000004, /* 4 bit indexed*/
  1549. k8IndexedPixelFormat = 0x00000008, /* 8 bit indexed*/
  1550. k16BE555PixelFormat = 0x00000010, /* 16 bit BE rgb 555 (Mac)*/
  1551. k24RGBPixelFormat = 0x00000018, /* 24 bit rgb */
  1552. k32ARGBPixelFormat = 0x00000020, /* 32 bit argb (Mac)*/
  1553. k1IndexedGrayPixelFormat = 0x00000021, /* 1 bit indexed gray*/
  1554. k2IndexedGrayPixelFormat = 0x00000022, /* 2 bit indexed gray*/
  1555. k4IndexedGrayPixelFormat = 0x00000024, /* 4 bit indexed gray*/
  1556. k8IndexedGrayPixelFormat = 0x00000028 /* 8 bit indexed gray*/
  1557. };
  1558. /* values for PixMap.pixelFormat*/
  1559. enum {
  1560. k16LE555PixelFormat = FOUR_CHAR_CODE('L555'), /* 16 bit LE rgb 555 (PC)*/
  1561. k16LE5551PixelFormat = FOUR_CHAR_CODE('5551'), /* 16 bit LE rgb 5551*/
  1562. k16BE565PixelFormat = FOUR_CHAR_CODE('B565'), /* 16 bit BE rgb 565*/
  1563. k16LE565PixelFormat = FOUR_CHAR_CODE('L565'), /* 16 bit LE rgb 565*/
  1564. k24BGRPixelFormat = FOUR_CHAR_CODE('24BG'), /* 24 bit bgr */
  1565. k32BGRAPixelFormat = FOUR_CHAR_CODE('BGRA'), /* 32 bit bgra (Matrox)*/
  1566. k32ABGRPixelFormat = FOUR_CHAR_CODE('ABGR'), /* 32 bit abgr */
  1567. k32RGBAPixelFormat = FOUR_CHAR_CODE('RGBA'), /* 32 bit rgba */
  1568. kYUVSPixelFormat = FOUR_CHAR_CODE('yuvs'), /* YUV 4:2:2 byte ordering 16-unsigned = 'YUY2'*/
  1569. kYUVUPixelFormat = FOUR_CHAR_CODE('yuvu'), /* YUV 4:2:2 byte ordering 16-signed*/
  1570. kYVU9PixelFormat = FOUR_CHAR_CODE('YVU9'), /* YVU9 Planar 9*/
  1571. kYUV411PixelFormat = FOUR_CHAR_CODE('Y411'), /* YUV 4:1:1 Interleaved 16*/
  1572. kYVYU422PixelFormat = FOUR_CHAR_CODE('YVYU'), /* YVYU 4:2:2 byte ordering 16*/
  1573. kUYVY422PixelFormat = FOUR_CHAR_CODE('UYVY'), /* UYVY 4:2:2 byte ordering 16*/
  1574. kYUV211PixelFormat = FOUR_CHAR_CODE('Y211'), /* YUV 2:1:1 Packed 8*/
  1575. k2vuyPixelFormat = FOUR_CHAR_CODE('2vuy') /* UYVY 4:2:2 byte ordering 16*/
  1576. };
  1577. struct PixMap {
  1578. Ptr baseAddr; /*pointer to pixels*/
  1579. short rowBytes; /*offset to next line*/
  1580. Rect bounds; /*encloses bitmap*/
  1581. short pmVersion; /*pixMap version number*/
  1582. short packType; /*defines packing format*/
  1583. long packSize; /*length of pixel data*/
  1584. Fixed hRes; /*horiz. resolution (ppi)*/
  1585. Fixed vRes; /*vert. resolution (ppi)*/
  1586. short pixelType; /*defines pixel type*/
  1587. short pixelSize; /*# bits in pixel*/
  1588. short cmpCount; /*# components in pixel*/
  1589. short cmpSize; /*# bits per component*/
  1590. #if OLDPIXMAPSTRUCT
  1591. long planeBytes; /*offset to next plane*/
  1592. CTabHandle pmTable; /*color map for this pixMap*/
  1593. long pmReserved;
  1594. #else
  1595. OSType pixelFormat; /*fourCharCode representation*/
  1596. CTabHandle pmTable; /*color map for this pixMap*/
  1597. void* pmExt; /*Handle to pixMap extension*/
  1598. #endif
  1599. };
  1600. typedef struct PixMap PixMap;
  1601. typedef PixMap * PixMapPtr;
  1602. typedef PixMapPtr * PixMapHandle;
  1603. struct PixPat {
  1604. short patType; /*type of pattern*/
  1605. PixMapHandle patMap; /*the pattern's pixMap*/
  1606. Handle patData; /*pixmap's data*/
  1607. Handle patXData; /*expanded Pattern data*/
  1608. short patXValid; /*flags whether expanded Pattern valid*/
  1609. Handle patXMap; /*Handle to expanded Pattern data*/
  1610. Pattern pat1Data; /*old-Style pattern/RGB color*/
  1611. };
  1612. typedef struct PixPat PixPat;
  1613. typedef PixPat * PixPatPtr;
  1614. typedef PixPatPtr * PixPatHandle;
  1615. struct CCrsr {
  1616. short crsrType; /*type of cursor*/
  1617. PixMapHandle crsrMap; /*the cursor's pixmap*/
  1618. Handle crsrData; /*cursor's data*/
  1619. Handle crsrXData; /*expanded cursor data*/
  1620. short crsrXValid; /*depth of expanded data (0 if none)*/
  1621. Handle crsrXHandle; /*future use*/
  1622. Bits16 crsr1Data; /*one-bit cursor*/
  1623. Bits16 crsrMask; /*cursor's mask*/
  1624. Point crsrHotSpot; /*cursor's hotspot*/
  1625. long crsrXTable; /*private*/
  1626. long crsrID; /*private*/
  1627. };
  1628. typedef struct CCrsr CCrsr;
  1629. typedef CCrsr * CCrsrPtr;
  1630. typedef CCrsrPtr * CCrsrHandle;
  1631. struct GammaTbl {
  1632. short gVersion; /*gamma version number*/
  1633. short gType; /*gamma data type*/
  1634. short gFormulaSize; /*Formula data size*/
  1635. short gChanCnt; /*number of channels of data*/
  1636. short gDataCnt; /*number of values/channel*/
  1637. short gDataWidth; /*bits/corrected value (data packed to next larger byte size)*/
  1638. short gFormulaData[1]; /*data for formulas followed by gamma values*/
  1639. };
  1640. typedef struct GammaTbl GammaTbl;
  1641. typedef GammaTbl * GammaTblPtr;
  1642. typedef GammaTblPtr * GammaTblHandle;
  1643. struct ITab {
  1644. long iTabSeed; /*copy of CTSeed from source CTable*/
  1645. short iTabRes; /*bits/channel resolution of iTable*/
  1646. Byte iTTable[1]; /*byte colortable index values*/
  1647. };
  1648. typedef struct ITab ITab;
  1649. typedef ITab * ITabPtr;
  1650. typedef ITabPtr * ITabHandle;
  1651. struct SProcRec {
  1652. Handle nxtSrch; /*SProcHndl Handle to next SProcRec*/
  1653. ColorSearchUPP srchProc; /*search procedure proc ptr*/
  1654. };
  1655. typedef struct SProcRec SProcRec;
  1656. typedef SProcRec * SProcPtr;
  1657. typedef SProcPtr * SProcHndl;
  1658. struct CProcRec {
  1659. Handle nxtComp; /*CProcHndl Handle to next CProcRec*/
  1660. ColorComplementUPP compProc; /*complement procedure proc ptr*/
  1661. };
  1662. typedef struct CProcRec CProcRec;
  1663. typedef CProcRec * CProcPtr;
  1664. typedef CProcPtr * CProcHndl;
  1665. /*
  1666. QuickTime 3.0 makes GDevice data structure available on non-Mac OS's.
  1667. In order to implement GDevice in these alternate environments, the GDevice
  1668. had to be extended. The gdReserved field was changed to gdExt which is
  1669. a Handle to extra info.
  1670. */
  1671. #ifndef OLDGDEVICESTRUCT
  1672. #if TARGET_OS_MAC && TARGET_API_MAC_OS8
  1673. #define OLDGDEVICESTRUCT 1
  1674. #else
  1675. #define OLDGDEVICESTRUCT 0
  1676. #endif /* TARGET_OS_MAC && TARGET_API_MAC_OS8 */
  1677. #endif /* !defined(OLDGDEVICESTRUCT) */
  1678. typedef struct GDevice GDevice;
  1679. typedef GDevice * GDPtr;
  1680. typedef GDPtr * GDHandle;
  1681. struct GDevice {
  1682. short gdRefNum; /*driver's unit number*/
  1683. short gdID; /*client ID for search procs*/
  1684. short gdType; /*fixed/CLUT/direct*/
  1685. ITabHandle gdITable; /*Handle to inverse lookup table*/
  1686. short gdResPref; /*preferred resolution of GDITable*/
  1687. SProcHndl gdSearchProc; /*search proc list head*/
  1688. CProcHndl gdCompProc; /*complement proc list*/
  1689. short gdFlags; /*grafDevice flags word*/
  1690. PixMapHandle gdPMap; /*describing pixMap*/
  1691. long gdRefCon; /*reference value*/
  1692. GDHandle gdNextGD; /*GDHandle Handle of next gDevice*/
  1693. Rect gdRect; /* device's bounds in global coordinates*/
  1694. long gdMode; /*device's current mode*/
  1695. short gdCCBytes; /*depth of expanded cursor data*/
  1696. short gdCCDepth; /*depth of expanded cursor data*/
  1697. Handle gdCCXData; /*Handle to cursor's expanded data*/
  1698. Handle gdCCXMask; /*Handle to cursor's expanded mask*/
  1699. #if OLDGDEVICESTRUCT
  1700. long gdReserved; /*future use. MUST BE 0*/
  1701. #else
  1702. Handle gdExt; /*QuickTime 3.0 private info*/
  1703. #endif
  1704. };
  1705. struct GrafVars {
  1706. RGBColor rgbOpColor; /*color for addPin subPin and average*/
  1707. RGBColor rgbHiliteColor; /*color for hiliting*/
  1708. Handle pmFgColor; /*palette Handle for foreground color*/
  1709. short pmFgIndex; /*index value for foreground*/
  1710. Handle pmBkColor; /*palette Handle for background color*/
  1711. short pmBkIndex; /*index value for background*/
  1712. short pmFlags; /*flags for Palette Manager*/
  1713. };
  1714. typedef struct GrafVars GrafVars;
  1715. typedef GrafVars * GVarPtr;
  1716. typedef GVarPtr * GVarHandle;
  1717. #if !OPAQUE_TOOLBOX_STRUCTS
  1718. typedef struct CGrafPort CGrafPort;
  1719. typedef CGrafPort * CGrafPtr;
  1720. #else
  1721. typedef GrafPtr CGrafPtr;
  1722. #endif /* !OPAQUE_TOOLBOX_STRUCTS */
  1723. typedef CALLBACK_API_C( OSStatus , QDPrinterStatusProcPtr )(PrinterStatusOpcode opcode, CGrafPtr currentPort, void *printerStatus);
  1724. typedef STACK_UPP_TYPE(QDPrinterStatusProcPtr) QDPrinterStatusUPP;
  1725. struct CQDProcs {
  1726. QDTextUPP textProc;
  1727. QDLineUPP lineProc;
  1728. QDRectUPP rectProc;
  1729. QDRRectUPP rRectProc;
  1730. QDOvalUPP ovalProc;
  1731. QDArcUPP arcProc;
  1732. QDPolyUPP polyProc;
  1733. QDRgnUPP rgnProc;
  1734. QDBitsUPP bitsProc;
  1735. QDCommentUPP commentProc;
  1736. QDTxMeasUPP txMeasProc;
  1737. QDGetPicUPP getPicProc;
  1738. QDPutPicUPP putPicProc;
  1739. QDOpcodeUPP opcodeProc;
  1740. UniversalProcPtr newProc1; /* this is the StdPix bottleneck -- see ImageCompression.h */
  1741. QDStdGlyphsUPP glyphsProc; /* was newProc2; now used in Unicode text drawing */
  1742. QDPrinterStatusUPP printerStatusProc; /* was newProc3; now used to communicate status between Printing code and System imaging code */
  1743. UniversalProcPtr newProc4;
  1744. UniversalProcPtr newProc5;
  1745. UniversalProcPtr newProc6;
  1746. };
  1747. typedef struct CQDProcs CQDProcs;
  1748. typedef CQDProcs * CQDProcsPtr;
  1749. #if !OPAQUE_TOOLBOX_STRUCTS
  1750. struct CGrafPort {
  1751. short device; /* not available in Carbon*/
  1752. PixMapHandle portPixMap; /* in Carbon use GetPortPixMap*/
  1753. short portVersion; /* in Carbon use IsPortColor*/
  1754. Handle grafVars; /* not available in Carbon*/
  1755. short chExtra; /* in Carbon use GetPortChExtra*/
  1756. short pnLocHFrac; /* in Carbon use Get/SetPortFracHPenLocation*/
  1757. Rect portRect; /* in Carbon use Get/SetPortBounds*/
  1758. RgnHandle visRgn; /* in Carbon use Get/SetPortVisibleRegion*/
  1759. RgnHandle clipRgn; /* in Carbon use Get/SetPortClipRegion*/
  1760. PixPatHandle bkPixPat; /* in Carbon use GetPortBackPixPat or BackPixPat*/
  1761. RGBColor rgbFgColor; /* in Carbon use GetPortForeColor or RGBForeColor*/
  1762. RGBColor rgbBkColor; /* in Carbon use GetPortBackColor or RGBBackColor*/
  1763. Point pnLoc; /* in Carbon use GetPortPenLocation or MoveTo*/
  1764. Point pnSize; /* in Carbon use Get/SetPortPenSize*/
  1765. short pnMode; /* in Carbon use Get/SetPortPenMode*/
  1766. PixPatHandle pnPixPat; /* in Carbon use Get/SetPortPenPixPat*/
  1767. PixPatHandle fillPixPat; /* in Carbon use GetPortFillPixPat*/
  1768. short pnVis; /* in Carbon use GetPortPenVisibility or Show/HidePen*/
  1769. short txFont; /* in Carbon use GetPortTextFont or TextFont*/
  1770. StyleField txFace; /* in Carbon use GetPortTextFace or TextFace*/
  1771. /*StyleField occupies 16-bits, but only first 8-bits are used*/
  1772. short txMode; /* in Carbon use GetPortTextMode or TextMode*/
  1773. short txSize; /* in Carbon use GetPortTextSize or TextSize*/
  1774. Fixed spExtra; /* in Carbon use GetPortSpExtra or SpaceExtra*/
  1775. long fgColor; /* not available in Carbon*/
  1776. long bkColor; /* not available in Carbon*/
  1777. short colrBit; /* not available in Carbon*/
  1778. short patStretch; /* not available in Carbon*/
  1779. Handle picSave; /* in Carbon use IsPortPictureBeingDefined*/
  1780. Handle rgnSave; /* in Carbon use IsPortRegionBeingDefined*/
  1781. Handle polySave; /* in Carbon use IsPortPolyBeingDefined*/
  1782. CQDProcsPtr grafProcs; /* in Carbon use Get/SetPortGrafProcs*/
  1783. };
  1784. #endif /* !OPAQUE_TOOLBOX_STRUCTS */
  1785. #if OPAQUE_TOOLBOX_STRUCTS
  1786. typedef WindowPtr CWindowPtr;
  1787. #else
  1788. typedef CGrafPtr CWindowPtr;
  1789. #endif /* OPAQUE_TOOLBOX_STRUCTS */
  1790. struct ReqListRec {
  1791. short reqLSize; /*request list size*/
  1792. short reqLData[1]; /*request list data*/
  1793. };
  1794. typedef struct ReqListRec ReqListRec;
  1795. struct OpenCPicParams {
  1796. Rect srcRect;
  1797. Fixed hRes;
  1798. Fixed vRes;
  1799. short version;
  1800. short reserved1;
  1801. long reserved2;
  1802. };
  1803. typedef struct OpenCPicParams OpenCPicParams;
  1804. enum {
  1805. kCursorImageMajorVersion = 0x0001,
  1806. kCursorImageMinorVersion = 0x0000
  1807. };
  1808. struct CursorImageRec {
  1809. UInt16 majorVersion;
  1810. UInt16 minorVersion;
  1811. PixMapHandle cursorPixMap;
  1812. BitMapHandle cursorBitMask;
  1813. };
  1814. typedef struct CursorImageRec CursorImageRec;
  1815. typedef CursorImageRec * CursorImagePtr;
  1816. typedef CALLBACK_API( void , DeviceLoopDrawingProcPtr )(short depth, short deviceFlags, GDHandle targetDevice, long userData);
  1817. typedef STACK_UPP_TYPE(DeviceLoopDrawingProcPtr) DeviceLoopDrawingUPP;
  1818. #if CALL_NOT_IN_CARBON
  1819. /*
  1820. * NewQDPrinterStatusUPP()
  1821. *
  1822. * Availability:
  1823. * Non-Carbon CFM: available as macro/inline
  1824. * CarbonLib: not available
  1825. * Mac OS X: not available
  1826. */
  1827. EXTERN_API_C( QDPrinterStatusUPP )
  1828. NewQDPrinterStatusUPP(QDPrinterStatusProcPtr userRoutine);
  1829. #if !OPAQUE_UPP_TYPES
  1830. enum { uppQDPrinterStatusProcInfo = 0x00000FF1 }; /* 4_bytes Func(4_bytes, 4_bytes, 4_bytes) */
  1831. #ifdef __cplusplus
  1832. inline DEFINE_API_C(QDPrinterStatusUPP) NewQDPrinterStatusUPP(QDPrinterStatusProcPtr userRoutine) { return (QDPrinterStatusUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDPrinterStatusProcInfo, GetCurrentArchitecture()); }
  1833. #else
  1834. #define NewQDPrinterStatusUPP(userRoutine) (QDPrinterStatusUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppQDPrinterStatusProcInfo, GetCurrentArchitecture())
  1835. #endif
  1836. #endif
  1837. #endif /* CALL_NOT_IN_CARBON */
  1838. /*
  1839. * NewDeviceLoopDrawingUPP()
  1840. *
  1841. * Availability:
  1842. * Non-Carbon CFM: available as macro/inline
  1843. * CarbonLib: in CarbonLib 1.0 and later
  1844. * Mac OS X: in version 10.0 and later
  1845. */
  1846. EXTERN_API_C( DeviceLoopDrawingUPP )
  1847. NewDeviceLoopDrawingUPP(DeviceLoopDrawingProcPtr userRoutine);
  1848. #if !OPAQUE_UPP_TYPES
  1849. enum { uppDeviceLoopDrawingProcInfo = 0x00003E80 }; /* pascal no_return_value Func(2_bytes, 2_bytes, 4_bytes, 4_bytes) */
  1850. #ifdef __cplusplus
  1851. inline DEFINE_API_C(DeviceLoopDrawingUPP) NewDeviceLoopDrawingUPP(DeviceLoopDrawingProcPtr userRoutine) { return (DeviceLoopDrawingUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDeviceLoopDrawingProcInfo, GetCurrentArchitecture()); }
  1852. #else
  1853. #define NewDeviceLoopDrawingUPP(userRoutine) (DeviceLoopDrawingUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDeviceLoopDrawingProcInfo, GetCurrentArchitecture())
  1854. #endif
  1855. #endif
  1856. #if CALL_NOT_IN_CARBON
  1857. /*
  1858. * DisposeQDPrinterStatusUPP()
  1859. *
  1860. * Availability:
  1861. * Non-Carbon CFM: available as macro/inline
  1862. * CarbonLib: not available
  1863. * Mac OS X: not available
  1864. */
  1865. EXTERN_API_C( void )
  1866. DisposeQDPrinterStatusUPP(QDPrinterStatusUPP userUPP);
  1867. #if !OPAQUE_UPP_TYPES
  1868. #ifdef __cplusplus
  1869. inline DEFINE_API_C(void) DisposeQDPrinterStatusUPP(QDPrinterStatusUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  1870. #else
  1871. #define DisposeQDPrinterStatusUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  1872. #endif
  1873. #endif
  1874. #endif /* CALL_NOT_IN_CARBON */
  1875. /*
  1876. * DisposeDeviceLoopDrawingUPP()
  1877. *
  1878. * Availability:
  1879. * Non-Carbon CFM: available as macro/inline
  1880. * CarbonLib: in CarbonLib 1.0 and later
  1881. * Mac OS X: in version 10.0 and later
  1882. */
  1883. EXTERN_API_C( void )
  1884. DisposeDeviceLoopDrawingUPP(DeviceLoopDrawingUPP userUPP);
  1885. #if !OPAQUE_UPP_TYPES
  1886. #ifdef __cplusplus
  1887. inline DEFINE_API_C(void) DisposeDeviceLoopDrawingUPP(DeviceLoopDrawingUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  1888. #else
  1889. #define DisposeDeviceLoopDrawingUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  1890. #endif
  1891. #endif
  1892. #if CALL_NOT_IN_CARBON
  1893. /*
  1894. * InvokeQDPrinterStatusUPP()
  1895. *
  1896. * Availability:
  1897. * Non-Carbon CFM: available as macro/inline
  1898. * CarbonLib: not available
  1899. * Mac OS X: not available
  1900. */
  1901. EXTERN_API_C( OSStatus )
  1902. InvokeQDPrinterStatusUPP(
  1903. PrinterStatusOpcode opcode,
  1904. CGrafPtr currentPort,
  1905. void * printerStatus,
  1906. QDPrinterStatusUPP userUPP);
  1907. #if !OPAQUE_UPP_TYPES
  1908. #ifdef __cplusplus
  1909. inline DEFINE_API_C(OSStatus) InvokeQDPrinterStatusUPP(PrinterStatusOpcode opcode, CGrafPtr currentPort, void * printerStatus, QDPrinterStatusUPP userUPP) { return (OSStatus)CALL_THREE_PARAMETER_UPP(userUPP, uppQDPrinterStatusProcInfo, opcode, currentPort, printerStatus); }
  1910. #else
  1911. #define InvokeQDPrinterStatusUPP(opcode, currentPort, printerStatus, userUPP) (OSStatus)CALL_THREE_PARAMETER_UPP((userUPP), uppQDPrinterStatusProcInfo, (opcode), (currentPort), (printerStatus))
  1912. #endif
  1913. #endif
  1914. #endif /* CALL_NOT_IN_CARBON */
  1915. /*
  1916. * InvokeDeviceLoopDrawingUPP()
  1917. *
  1918. * Availability:
  1919. * Non-Carbon CFM: available as macro/inline
  1920. * CarbonLib: in CarbonLib 1.0 and later
  1921. * Mac OS X: in version 10.0 and later
  1922. */
  1923. EXTERN_API_C( void )
  1924. InvokeDeviceLoopDrawingUPP(
  1925. short depth,
  1926. short deviceFlags,
  1927. GDHandle targetDevice,
  1928. long userData,
  1929. DeviceLoopDrawingUPP userUPP);
  1930. #if !OPAQUE_UPP_TYPES
  1931. #ifdef __cplusplus
  1932. inline DEFINE_API_C(void) InvokeDeviceLoopDrawingUPP(short depth, short deviceFlags, GDHandle targetDevice, long userData, DeviceLoopDrawingUPP userUPP) { CALL_FOUR_PARAMETER_UPP(userUPP, uppDeviceLoopDrawingProcInfo, depth, deviceFlags, targetDevice, userData); }
  1933. #else
  1934. #define InvokeDeviceLoopDrawingUPP(depth, deviceFlags, targetDevice, userData, userUPP) CALL_FOUR_PARAMETER_UPP((userUPP), uppDeviceLoopDrawingProcInfo, (depth), (deviceFlags), (targetDevice), (userData))
  1935. #endif
  1936. #endif
  1937. #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
  1938. /* support for pre-Carbon UPP routines: New...Proc and Call...Proc */
  1939. #define NewQDPrinterStatusProc(userRoutine) NewQDPrinterStatusUPP(userRoutine)
  1940. #define NewDeviceLoopDrawingProc(userRoutine) NewDeviceLoopDrawingUPP(userRoutine)
  1941. #define CallQDPrinterStatusProc(userRoutine, opcode, currentPort, printerStatus) InvokeQDPrinterStatusUPP(opcode, currentPort, printerStatus, userRoutine)
  1942. #define CallDeviceLoopDrawingProc(userRoutine, depth, deviceFlags, targetDevice, userData) InvokeDeviceLoopDrawingUPP(depth, deviceFlags, targetDevice, userData, userRoutine)
  1943. #endif /* CALL_NOT_IN_CARBON */
  1944. #if !OPAQUE_TOOLBOX_STRUCTS || !TARGET_API_MAC_CARBON
  1945. struct QDGlobals {
  1946. char privates[76];
  1947. long randSeed; /* in Carbon use GetQDGlobalsRandomSeed*/
  1948. BitMap screenBits; /* in Carbon use GetQDGlobalsScreenBits*/
  1949. ::Cursor arrow; /* in Carbon use GetQDGlobalsArrow*/
  1950. Pattern dkGray; /* in Carbon use GetQDGlobalsDarkGray*/
  1951. Pattern ltGray; /* in Carbon use GetQDGlobalsLightGray*/
  1952. Pattern gray; /* in Carbon use GetQDGlobalsGray*/
  1953. Pattern black; /* in Carbon use GetQDGlobalsBlack*/
  1954. Pattern white; /* in Carbon use GetQDGlobalsWhite*/
  1955. GrafPtr thePort; /* in Carbon use GetQDGlobalsThePort*/
  1956. };
  1957. typedef struct QDGlobals QDGlobals;
  1958. typedef QDGlobals * QDGlobalsPtr;
  1959. typedef QDGlobalsPtr * QDGlobalsHdl;
  1960. extern QDGlobals qd;
  1961. #endif /* !OPAQUE_TOOLBOX_STRUCTS || !TARGET_API_MAC_CARBON */
  1962. #if CALL_NOT_IN_CARBON
  1963. /*
  1964. * InitGraf()
  1965. *
  1966. * Availability:
  1967. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1968. * CarbonLib: not available
  1969. * Mac OS X: not available
  1970. */
  1971. EXTERN_API( void )
  1972. InitGraf(void * globalPtr) ONEWORDINLINE(0xA86E);
  1973. /*
  1974. * OpenPort()
  1975. *
  1976. * Availability:
  1977. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1978. * CarbonLib: not available
  1979. * Mac OS X: not available
  1980. */
  1981. EXTERN_API( void )
  1982. OpenPort(GrafPtr port) ONEWORDINLINE(0xA86F);
  1983. /*
  1984. * InitPort()
  1985. *
  1986. * Availability:
  1987. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1988. * CarbonLib: not available
  1989. * Mac OS X: not available
  1990. */
  1991. EXTERN_API( void )
  1992. InitPort(GrafPtr port) ONEWORDINLINE(0xA86D);
  1993. /*
  1994. * ClosePort()
  1995. *
  1996. * Availability:
  1997. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1998. * CarbonLib: not available
  1999. * Mac OS X: not available
  2000. */
  2001. EXTERN_API( void )
  2002. ClosePort(GrafPtr port) ONEWORDINLINE(0xA87D);
  2003. /*
  2004. These are Carbon only routines. They do nothing at all on
  2005. Mac OS 8, but work flawlessly on Mac OS X.
  2006. */
  2007. #endif /* CALL_NOT_IN_CARBON */
  2008. /*
  2009. * LockPortBits()
  2010. *
  2011. * Availability:
  2012. * Non-Carbon CFM: not available
  2013. * CarbonLib: in CarbonLib 1.0 and later
  2014. * Mac OS X: in version 10.0 and later
  2015. */
  2016. EXTERN_API( OSErr )
  2017. LockPortBits(GrafPtr port);
  2018. /*
  2019. * UnlockPortBits()
  2020. *
  2021. * Availability:
  2022. * Non-Carbon CFM: not available
  2023. * CarbonLib: in CarbonLib 1.0 and later
  2024. * Mac OS X: in version 10.0 and later
  2025. */
  2026. EXTERN_API( OSErr )
  2027. UnlockPortBits(GrafPtr port);
  2028. /* Break a region up into rectangles.*/
  2029. enum {
  2030. kQDParseRegionFromTop = (1 << 0),
  2031. kQDParseRegionFromBottom = (1 << 1),
  2032. kQDParseRegionFromLeft = (1 << 2),
  2033. kQDParseRegionFromRight = (1 << 3),
  2034. kQDParseRegionFromTopLeft = kQDParseRegionFromTop | kQDParseRegionFromLeft,
  2035. kQDParseRegionFromBottomRight = kQDParseRegionFromBottom | kQDParseRegionFromRight
  2036. };
  2037. typedef SInt32 QDRegionParseDirection;
  2038. enum {
  2039. kQDRegionToRectsMsgInit = 1,
  2040. kQDRegionToRectsMsgParse = 2,
  2041. kQDRegionToRectsMsgTerminate = 3
  2042. };
  2043. typedef CALLBACK_API_C( OSStatus , RegionToRectsProcPtr )(UInt16 message, RgnHandle rgn, const Rect *rect, void *refCon);
  2044. typedef STACK_UPP_TYPE(RegionToRectsProcPtr) RegionToRectsUPP;
  2045. /*
  2046. * NewRegionToRectsUPP()
  2047. *
  2048. * Availability:
  2049. * Non-Carbon CFM: available as macro/inline
  2050. * CarbonLib: in CarbonLib 1.0 and later
  2051. * Mac OS X: in version 10.0 and later
  2052. */
  2053. EXTERN_API_C( RegionToRectsUPP )
  2054. NewRegionToRectsUPP(RegionToRectsProcPtr userRoutine);
  2055. #if !OPAQUE_UPP_TYPES
  2056. enum { uppRegionToRectsProcInfo = 0x00003FB1 }; /* 4_bytes Func(2_bytes, 4_bytes, 4_bytes, 4_bytes) */
  2057. #ifdef __cplusplus
  2058. inline DEFINE_API_C(RegionToRectsUPP) NewRegionToRectsUPP(RegionToRectsProcPtr userRoutine) { return (RegionToRectsUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppRegionToRectsProcInfo, GetCurrentArchitecture()); }
  2059. #else
  2060. #define NewRegionToRectsUPP(userRoutine) (RegionToRectsUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppRegionToRectsProcInfo, GetCurrentArchitecture())
  2061. #endif
  2062. #endif
  2063. /*
  2064. * DisposeRegionToRectsUPP()
  2065. *
  2066. * Availability:
  2067. * Non-Carbon CFM: available as macro/inline
  2068. * CarbonLib: in CarbonLib 1.0 and later
  2069. * Mac OS X: in version 10.0 and later
  2070. */
  2071. EXTERN_API_C( void )
  2072. DisposeRegionToRectsUPP(RegionToRectsUPP userUPP);
  2073. #if !OPAQUE_UPP_TYPES
  2074. #ifdef __cplusplus
  2075. inline DEFINE_API_C(void) DisposeRegionToRectsUPP(RegionToRectsUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
  2076. #else
  2077. #define DisposeRegionToRectsUPP(userUPP) DisposeRoutineDescriptor(userUPP)
  2078. #endif
  2079. #endif
  2080. /*
  2081. * InvokeRegionToRectsUPP()
  2082. *
  2083. * Availability:
  2084. * Non-Carbon CFM: available as macro/inline
  2085. * CarbonLib: in CarbonLib 1.0 and later
  2086. * Mac OS X: in version 10.0 and later
  2087. */
  2088. EXTERN_API_C( OSStatus )
  2089. InvokeRegionToRectsUPP(
  2090. UInt16 message,
  2091. RgnHandle rgn,
  2092. const Rect * rect,
  2093. void * refCon,
  2094. RegionToRectsUPP userUPP);
  2095. #if !OPAQUE_UPP_TYPES
  2096. #ifdef __cplusplus
  2097. inline DEFINE_API_C(OSStatus) InvokeRegionToRectsUPP(UInt16 message, RgnHandle rgn, const Rect * rect, void * refCon, RegionToRectsUPP userUPP) { return (OSStatus)CALL_FOUR_PARAMETER_UPP(userUPP, uppRegionToRectsProcInfo, message, rgn, rect, refCon); }
  2098. #else
  2099. #define InvokeRegionToRectsUPP(message, rgn, rect, refCon, userUPP) (OSStatus)CALL_FOUR_PARAMETER_UPP((userUPP), uppRegionToRectsProcInfo, (message), (rgn), (rect), (refCon))
  2100. #endif
  2101. #endif
  2102. #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
  2103. /* support for pre-Carbon UPP routines: New...Proc and Call...Proc */
  2104. #define NewRegionToRectsProc(userRoutine) NewRegionToRectsUPP(userRoutine)
  2105. #define CallRegionToRectsProc(userRoutine, message, rgn, rect, refCon) InvokeRegionToRectsUPP(message, rgn, rect, refCon, userRoutine)
  2106. #endif /* CALL_NOT_IN_CARBON */
  2107. /*
  2108. * QDRegionToRects()
  2109. *
  2110. * Availability:
  2111. * Non-Carbon CFM: not available
  2112. * CarbonLib: in CarbonLib 1.0 and later
  2113. * Mac OS X: in version 10.0 and later
  2114. */
  2115. EXTERN_API_C( OSStatus )
  2116. QDRegionToRects(
  2117. RgnHandle rgn,
  2118. QDRegionParseDirection dir,
  2119. RegionToRectsUPP proc,
  2120. void * userData);
  2121. #if !TARGET_OS_MAC
  2122. #if CALL_NOT_IN_CARBON
  2123. /*
  2124. * UpdatePort()
  2125. *
  2126. * Availability:
  2127. * Non-Carbon CFM: not available
  2128. * CarbonLib: not available
  2129. * Mac OS X: not available
  2130. */
  2131. EXTERN_API( OSErr )
  2132. UpdatePort(GrafPtr port);
  2133. /*
  2134. * GetPortNativeWindow()
  2135. *
  2136. * Availability:
  2137. * Non-Carbon CFM: not available
  2138. * CarbonLib: not available
  2139. * Mac OS X: not available
  2140. */
  2141. EXTERN_API( void * )
  2142. GetPortNativeWindow(GrafPtr macPort);
  2143. /*
  2144. * GetNativeWindowPort()
  2145. *
  2146. * Availability:
  2147. * Non-Carbon CFM: not available
  2148. * CarbonLib: not available
  2149. * Mac OS X: not available
  2150. */
  2151. EXTERN_API( GrafPtr )
  2152. GetNativeWindowPort(void * nativeWindow);
  2153. /*
  2154. * MacRegionToNativeRegion()
  2155. *
  2156. * Availability:
  2157. * Non-Carbon CFM: not available
  2158. * CarbonLib: not available
  2159. * Mac OS X: not available
  2160. */
  2161. EXTERN_API( void * )
  2162. MacRegionToNativeRegion(RgnHandle macRegion);
  2163. /*
  2164. * NativeRegionToMacRegion()
  2165. *
  2166. * Availability:
  2167. * Non-Carbon CFM: not available
  2168. * CarbonLib: not available
  2169. * Mac OS X: not available
  2170. */
  2171. EXTERN_API( RgnHandle )
  2172. NativeRegionToMacRegion(void * nativeRegion);
  2173. #endif /* CALL_NOT_IN_CARBON */
  2174. #endif /* !TARGET_OS_MAC */
  2175. #if TARGET_OS_WIN32
  2176. #if CALL_NOT_IN_CARBON
  2177. /*
  2178. * GetPortHWND()
  2179. *
  2180. * Availability:
  2181. * Non-Carbon CFM: not available
  2182. * CarbonLib: not available
  2183. * Mac OS X: not available
  2184. */
  2185. EXTERN_API( void * )
  2186. GetPortHWND(GrafPtr port);
  2187. /*
  2188. * GetHWNDPort()
  2189. *
  2190. * Availability:
  2191. * Non-Carbon CFM: not available
  2192. * CarbonLib: not available
  2193. * Mac OS X: not available
  2194. */
  2195. EXTERN_API( GrafPtr )
  2196. GetHWNDPort(void * theHWND);
  2197. #define GetPortHWND(port) (HWND)GetPortNativeWindow(port)
  2198. #define GetHWNDPort(theHWND) GetNativeWindowPort(theHWND)
  2199. /*
  2200. * GetPortHDC()
  2201. *
  2202. * Availability:
  2203. * Non-Carbon CFM: not available
  2204. * CarbonLib: not available
  2205. * Mac OS X: not available
  2206. */
  2207. EXTERN_API( void * )
  2208. GetPortHDC(GrafPtr port);
  2209. /*
  2210. * GetPortHBITMAP()
  2211. *
  2212. * Availability:
  2213. * Non-Carbon CFM: not available
  2214. * CarbonLib: not available
  2215. * Mac OS X: not available
  2216. */
  2217. EXTERN_API( void * )
  2218. GetPortHBITMAP(GrafPtr port);
  2219. /*
  2220. * GetPortHPALETTE()
  2221. *
  2222. * Availability:
  2223. * Non-Carbon CFM: not available
  2224. * CarbonLib: not available
  2225. * Mac OS X: not available
  2226. */
  2227. EXTERN_API( void * )
  2228. GetPortHPALETTE(GrafPtr port);
  2229. /*
  2230. * GetPortHFONT()
  2231. *
  2232. * Availability:
  2233. * Non-Carbon CFM: not available
  2234. * CarbonLib: not available
  2235. * Mac OS X: not available
  2236. */
  2237. EXTERN_API( void * )
  2238. GetPortHFONT(GrafPtr port);
  2239. /*
  2240. * GetDIBFromPICT()
  2241. *
  2242. * Availability:
  2243. * Non-Carbon CFM: not available
  2244. * CarbonLib: not available
  2245. * Mac OS X: not available
  2246. */
  2247. EXTERN_API( void * )
  2248. GetDIBFromPICT(PicHandle hPict);
  2249. /*
  2250. * GetPICTFromDIB()
  2251. *
  2252. * Availability:
  2253. * Non-Carbon CFM: not available
  2254. * CarbonLib: not available
  2255. * Mac OS X: not available
  2256. */
  2257. EXTERN_API( PicHandle )
  2258. GetPICTFromDIB(void * h);
  2259. /*
  2260. * QTMLFlushDirtyPorts()
  2261. *
  2262. * Availability:
  2263. * Non-Carbon CFM: not available
  2264. * CarbonLib: not available
  2265. * Mac OS X: not available
  2266. */
  2267. EXTERN_API( OSErr )
  2268. QTMLFlushDirtyPorts(void);
  2269. /*
  2270. * QTMLFlushPortDirtyRgn()
  2271. *
  2272. * Availability:
  2273. * Non-Carbon CFM: not available
  2274. * CarbonLib: not available
  2275. * Mac OS X: not available
  2276. */
  2277. EXTERN_API( OSErr )
  2278. QTMLFlushPortDirtyRgn(GrafPtr port);
  2279. /*
  2280. * QTMLAddRgnToDirtyRgn()
  2281. *
  2282. * Availability:
  2283. * Non-Carbon CFM: not available
  2284. * CarbonLib: not available
  2285. * Mac OS X: not available
  2286. */
  2287. EXTERN_API( OSErr )
  2288. QTMLAddRgnToDirtyRgn(
  2289. GrafPtr port,
  2290. RgnHandle dirtyRgn);
  2291. /*
  2292. * QTMLGetBackbufferHDC()
  2293. *
  2294. * Availability:
  2295. * Non-Carbon CFM: not available
  2296. * CarbonLib: not available
  2297. * Mac OS X: not available
  2298. */
  2299. EXTERN_API( OSErr )
  2300. QTMLGetBackbufferHDC(
  2301. GrafPtr port,
  2302. void * backbufferHDC);
  2303. /*
  2304. * QTMLReleaseBackbufferHDC()
  2305. *
  2306. * Availability:
  2307. * Non-Carbon CFM: not available
  2308. * CarbonLib: not available
  2309. * Mac OS X: not available
  2310. */
  2311. EXTERN_API( OSErr )
  2312. QTMLReleaseBackbufferHDC(
  2313. GrafPtr port,
  2314. void * backbufferHDC);
  2315. /*
  2316. * QTMLAddRectToDirtyRgn()
  2317. *
  2318. * Availability:
  2319. * Non-Carbon CFM: not available
  2320. * CarbonLib: not available
  2321. * Mac OS X: not available
  2322. */
  2323. EXTERN_API( OSErr )
  2324. QTMLAddRectToDirtyRgn(
  2325. GrafPtr port,
  2326. Rect * dirtyRect);
  2327. /*
  2328. * QTMLAddNativeRgnToDirtyRgn()
  2329. *
  2330. * Availability:
  2331. * Non-Carbon CFM: not available
  2332. * CarbonLib: not available
  2333. * Mac OS X: not available
  2334. */
  2335. EXTERN_API( OSErr )
  2336. QTMLAddNativeRgnToDirtyRgn(
  2337. GrafPtr port,
  2338. void * dirtyHRGN);
  2339. #endif /* CALL_NOT_IN_CARBON */
  2340. #endif /* TARGET_OS_WIN32 */
  2341. /*
  2342. * [Mac]SetPort()
  2343. *
  2344. * Availability:
  2345. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2346. * CarbonLib: in CarbonLib 1.0 and later
  2347. * Mac OS X: in version 10.0 and later
  2348. */
  2349. #if TARGET_OS_MAC
  2350. #define MacSetPort SetPort
  2351. #endif
  2352. EXTERN_API( void )
  2353. MacSetPort(GrafPtr port) ONEWORDINLINE(0xA873);
  2354. /*
  2355. * GetPort()
  2356. *
  2357. * Availability:
  2358. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2359. * CarbonLib: in CarbonLib 1.0 and later
  2360. * Mac OS X: in version 10.0 and later
  2361. */
  2362. EXTERN_API( void )
  2363. GetPort(GrafPtr * port) ONEWORDINLINE(0xA874);
  2364. /*
  2365. * QDSwapPort()
  2366. *
  2367. * Summary:
  2368. * Combines a GetPort(&savePort); SetPort(newPort) sequence.
  2369. *
  2370. * Discussion:
  2371. * On X, the GetPort/SetPort calls act on per-thread globals, and
  2372. * cost more processor cycles than in the past, where they were
  2373. * simple memory accessors. To optimize, use the QDSwapPort call
  2374. * which combines both, and returns a Boolean indicating if the port
  2375. * actually did change. Typical usage: portChanged =
  2376. * QDSwapPort(newPort, &savePort); // some drawing into newPort if
  2377. * (portChanged) QDSwapPort(savePort, NULL);
  2378. *
  2379. * Parameters:
  2380. *
  2381. * inNewPort:
  2382. * The new port to be set.
  2383. *
  2384. * outOldPort:
  2385. * Receives the previous port. Can be NULL.
  2386. *
  2387. * Result:
  2388. * A Boolean indicating whether the port was changed, i.e.
  2389. * (inNewPort != *outOldPort)
  2390. *
  2391. * Availability:
  2392. * Non-Carbon CFM: not available
  2393. * CarbonLib: in CarbonLib 1.5 and later
  2394. * Mac OS X: in version 10.1 and later
  2395. */
  2396. EXTERN_API( Boolean )
  2397. QDSwapPort(
  2398. CGrafPtr inNewPort,
  2399. CGrafPtr * outOldPort);
  2400. /*
  2401. * GrafDevice()
  2402. *
  2403. * Availability:
  2404. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2405. * CarbonLib: in CarbonLib 1.0 and later
  2406. * Mac OS X: in version 10.0 and later
  2407. */
  2408. EXTERN_API( void )
  2409. GrafDevice(short device) ONEWORDINLINE(0xA872);
  2410. /*
  2411. * SetPortBits()
  2412. *
  2413. * Availability:
  2414. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2415. * CarbonLib: in CarbonLib 1.0 and later
  2416. * Mac OS X: in version 10.0 and later
  2417. */
  2418. EXTERN_API( void )
  2419. SetPortBits(const BitMap * bm) ONEWORDINLINE(0xA875);
  2420. /*
  2421. * PortSize()
  2422. *
  2423. * Availability:
  2424. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2425. * CarbonLib: in CarbonLib 1.0 and later
  2426. * Mac OS X: in version 10.0 and later
  2427. */
  2428. EXTERN_API( void )
  2429. PortSize(
  2430. short width,
  2431. short height) ONEWORDINLINE(0xA876);
  2432. /*
  2433. * MovePortTo()
  2434. *
  2435. * Availability:
  2436. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2437. * CarbonLib: in CarbonLib 1.0 and later
  2438. * Mac OS X: in version 10.0 and later
  2439. */
  2440. EXTERN_API( void )
  2441. MovePortTo(
  2442. short leftGlobal,
  2443. short topGlobal) ONEWORDINLINE(0xA877);
  2444. /*
  2445. * SetOrigin()
  2446. *
  2447. * Availability:
  2448. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2449. * CarbonLib: in CarbonLib 1.0 and later
  2450. * Mac OS X: in version 10.0 and later
  2451. */
  2452. EXTERN_API( void )
  2453. SetOrigin(
  2454. short h,
  2455. short v) ONEWORDINLINE(0xA878);
  2456. /*
  2457. * SetClip()
  2458. *
  2459. * Availability:
  2460. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2461. * CarbonLib: in CarbonLib 1.0 and later
  2462. * Mac OS X: in version 10.0 and later
  2463. */
  2464. EXTERN_API( void )
  2465. SetClip(RgnHandle rgn) ONEWORDINLINE(0xA879);
  2466. /*
  2467. * GetClip()
  2468. *
  2469. * Availability:
  2470. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2471. * CarbonLib: in CarbonLib 1.0 and later
  2472. * Mac OS X: in version 10.0 and later
  2473. */
  2474. EXTERN_API( void )
  2475. GetClip(RgnHandle rgn) ONEWORDINLINE(0xA87A);
  2476. /*
  2477. * ClipRect()
  2478. *
  2479. * Availability:
  2480. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2481. * CarbonLib: in CarbonLib 1.0 and later
  2482. * Mac OS X: in version 10.0 and later
  2483. */
  2484. EXTERN_API( void )
  2485. ClipRect(const Rect * r) ONEWORDINLINE(0xA87B);
  2486. /*
  2487. * BackPat()
  2488. *
  2489. * Availability:
  2490. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2491. * CarbonLib: in CarbonLib 1.0 and later
  2492. * Mac OS X: in version 10.0 and later
  2493. */
  2494. EXTERN_API( void )
  2495. BackPat(const Pattern * pat) ONEWORDINLINE(0xA87C);
  2496. /*
  2497. * InitCursor()
  2498. *
  2499. * Availability:
  2500. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2501. * CarbonLib: in CarbonLib 1.0 and later
  2502. * Mac OS X: in version 10.0 and later
  2503. */
  2504. EXTERN_API( void )
  2505. InitCursor(void) ONEWORDINLINE(0xA850);
  2506. /*
  2507. * [Mac]SetCursor()
  2508. *
  2509. * Availability:
  2510. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2511. * CarbonLib: in CarbonLib 1.0 and later
  2512. * Mac OS X: in version 10.0 and later
  2513. */
  2514. #if TARGET_OS_MAC
  2515. #define MacSetCursor SetCursor
  2516. #endif
  2517. EXTERN_API( void )
  2518. MacSetCursor(const ::Cursor * crsr) ONEWORDINLINE(0xA851);
  2519. /*
  2520. * HideCursor()
  2521. *
  2522. * Availability:
  2523. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2524. * CarbonLib: in CarbonLib 1.0 and later
  2525. * Mac OS X: in version 10.0 and later
  2526. */
  2527. EXTERN_API( void )
  2528. HideCursor(void) ONEWORDINLINE(0xA852);
  2529. /*
  2530. * [Mac]ShowCursor()
  2531. *
  2532. * Availability:
  2533. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2534. * CarbonLib: in CarbonLib 1.0 and later
  2535. * Mac OS X: in version 10.0 and later
  2536. */
  2537. #if TARGET_OS_MAC
  2538. #define MacShowCursor ShowCursor
  2539. #endif
  2540. EXTERN_API( void )
  2541. MacShowCursor(void) ONEWORDINLINE(0xA853);
  2542. /*
  2543. * ObscureCursor()
  2544. *
  2545. * Availability:
  2546. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2547. * CarbonLib: in CarbonLib 1.0 and later
  2548. * Mac OS X: in version 10.0 and later
  2549. */
  2550. EXTERN_API( void )
  2551. ObscureCursor(void) ONEWORDINLINE(0xA856);
  2552. /*
  2553. * HidePen()
  2554. *
  2555. * Availability:
  2556. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2557. * CarbonLib: in CarbonLib 1.0 and later
  2558. * Mac OS X: in version 10.0 and later
  2559. */
  2560. EXTERN_API( void )
  2561. HidePen(void) ONEWORDINLINE(0xA896);
  2562. /*
  2563. * ShowPen()
  2564. *
  2565. * Availability:
  2566. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2567. * CarbonLib: in CarbonLib 1.0 and later
  2568. * Mac OS X: in version 10.0 and later
  2569. */
  2570. EXTERN_API( void )
  2571. ShowPen(void) ONEWORDINLINE(0xA897);
  2572. /*
  2573. * GetPen()
  2574. *
  2575. * Availability:
  2576. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2577. * CarbonLib: in CarbonLib 1.0 and later
  2578. * Mac OS X: in version 10.0 and later
  2579. */
  2580. EXTERN_API( void )
  2581. GetPen(Point * pt) ONEWORDINLINE(0xA89A);
  2582. /*
  2583. * GetPenState()
  2584. *
  2585. * Availability:
  2586. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2587. * CarbonLib: in CarbonLib 1.0 and later
  2588. * Mac OS X: in version 10.0 and later
  2589. */
  2590. EXTERN_API( void )
  2591. GetPenState(PenState * pnState) ONEWORDINLINE(0xA898);
  2592. /*
  2593. * SetPenState()
  2594. *
  2595. * Availability:
  2596. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2597. * CarbonLib: in CarbonLib 1.0 and later
  2598. * Mac OS X: in version 10.0 and later
  2599. */
  2600. EXTERN_API( void )
  2601. SetPenState(const PenState * pnState) ONEWORDINLINE(0xA899);
  2602. /*
  2603. * PenSize()
  2604. *
  2605. * Availability:
  2606. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2607. * CarbonLib: in CarbonLib 1.0 and later
  2608. * Mac OS X: in version 10.0 and later
  2609. */
  2610. EXTERN_API( void )
  2611. PenSize(
  2612. short width,
  2613. short height) ONEWORDINLINE(0xA89B);
  2614. /*
  2615. * PenMode()
  2616. *
  2617. * Availability:
  2618. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2619. * CarbonLib: in CarbonLib 1.0 and later
  2620. * Mac OS X: in version 10.0 and later
  2621. */
  2622. EXTERN_API( void )
  2623. PenMode(short mode) ONEWORDINLINE(0xA89C);
  2624. /*
  2625. * PenPat()
  2626. *
  2627. * Availability:
  2628. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2629. * CarbonLib: in CarbonLib 1.0 and later
  2630. * Mac OS X: in version 10.0 and later
  2631. */
  2632. EXTERN_API( void )
  2633. PenPat(const Pattern * pat) ONEWORDINLINE(0xA89D);
  2634. /*
  2635. * PenNormal()
  2636. *
  2637. * Availability:
  2638. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2639. * CarbonLib: in CarbonLib 1.0 and later
  2640. * Mac OS X: in version 10.0 and later
  2641. */
  2642. EXTERN_API( void )
  2643. PenNormal(void) ONEWORDINLINE(0xA89E);
  2644. /*
  2645. * MoveTo()
  2646. *
  2647. * Availability:
  2648. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2649. * CarbonLib: in CarbonLib 1.0 and later
  2650. * Mac OS X: in version 10.0 and later
  2651. */
  2652. EXTERN_API( void )
  2653. MoveTo(
  2654. short h,
  2655. short v) ONEWORDINLINE(0xA893);
  2656. /*
  2657. * Move()
  2658. *
  2659. * Availability:
  2660. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2661. * CarbonLib: in CarbonLib 1.0 and later
  2662. * Mac OS X: in version 10.0 and later
  2663. */
  2664. EXTERN_API( void )
  2665. Move(
  2666. short dh,
  2667. short dv) ONEWORDINLINE(0xA894);
  2668. /*
  2669. * [Mac]LineTo()
  2670. *
  2671. * Availability:
  2672. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2673. * CarbonLib: in CarbonLib 1.0 and later
  2674. * Mac OS X: in version 10.0 and later
  2675. */
  2676. #if TARGET_OS_MAC
  2677. #define MacLineTo LineTo
  2678. #endif
  2679. EXTERN_API( void )
  2680. MacLineTo(
  2681. short h,
  2682. short v) ONEWORDINLINE(0xA891);
  2683. /*
  2684. * Line()
  2685. *
  2686. * Availability:
  2687. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2688. * CarbonLib: in CarbonLib 1.0 and later
  2689. * Mac OS X: in version 10.0 and later
  2690. */
  2691. EXTERN_API( void )
  2692. Line(
  2693. short dh,
  2694. short dv) ONEWORDINLINE(0xA892);
  2695. /*
  2696. * ForeColor()
  2697. *
  2698. * Availability:
  2699. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2700. * CarbonLib: in CarbonLib 1.0 and later
  2701. * Mac OS X: in version 10.0 and later
  2702. */
  2703. EXTERN_API( void )
  2704. ForeColor(long color) ONEWORDINLINE(0xA862);
  2705. /*
  2706. * BackColor()
  2707. *
  2708. * Availability:
  2709. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2710. * CarbonLib: in CarbonLib 1.0 and later
  2711. * Mac OS X: in version 10.0 and later
  2712. */
  2713. EXTERN_API( void )
  2714. BackColor(long color) ONEWORDINLINE(0xA863);
  2715. /*
  2716. * ColorBit()
  2717. *
  2718. * Availability:
  2719. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2720. * CarbonLib: in CarbonLib 1.0 and later
  2721. * Mac OS X: in version 10.0 and later
  2722. */
  2723. EXTERN_API( void )
  2724. ColorBit(short whichBit) ONEWORDINLINE(0xA864);
  2725. /*
  2726. * [Mac]SetRect()
  2727. *
  2728. * Availability:
  2729. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2730. * CarbonLib: in CarbonLib 1.0 and later
  2731. * Mac OS X: in version 10.0 and later
  2732. */
  2733. #if TARGET_OS_MAC
  2734. #define MacSetRect SetRect
  2735. #endif
  2736. EXTERN_API( void )
  2737. MacSetRect(
  2738. Rect * r,
  2739. short left,
  2740. short top,
  2741. short right,
  2742. short bottom) ONEWORDINLINE(0xA8A7);
  2743. /*
  2744. * [Mac]OffsetRect()
  2745. *
  2746. * Availability:
  2747. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2748. * CarbonLib: in CarbonLib 1.0 and later
  2749. * Mac OS X: in version 10.0 and later
  2750. */
  2751. #if TARGET_OS_MAC
  2752. #define MacOffsetRect OffsetRect
  2753. #endif
  2754. EXTERN_API( void )
  2755. MacOffsetRect(
  2756. Rect * r,
  2757. short dh,
  2758. short dv) ONEWORDINLINE(0xA8A8);
  2759. /*
  2760. * [Mac]InsetRect()
  2761. *
  2762. * Availability:
  2763. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2764. * CarbonLib: in CarbonLib 1.0 and later
  2765. * Mac OS X: in version 10.0 and later
  2766. */
  2767. #if TARGET_OS_MAC
  2768. #define MacInsetRect InsetRect
  2769. #endif
  2770. EXTERN_API( void )
  2771. MacInsetRect(
  2772. Rect * r,
  2773. short dh,
  2774. short dv) ONEWORDINLINE(0xA8A9);
  2775. /*
  2776. * SectRect()
  2777. *
  2778. * Availability:
  2779. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2780. * CarbonLib: in CarbonLib 1.0 and later
  2781. * Mac OS X: in version 10.0 and later
  2782. */
  2783. EXTERN_API( Boolean )
  2784. SectRect(
  2785. const Rect * src1,
  2786. const Rect * src2,
  2787. Rect * dstRect) ONEWORDINLINE(0xA8AA);
  2788. /*
  2789. * [Mac]UnionRect()
  2790. *
  2791. * Availability:
  2792. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2793. * CarbonLib: in CarbonLib 1.0 and later
  2794. * Mac OS X: in version 10.0 and later
  2795. */
  2796. #if TARGET_OS_MAC
  2797. #define MacUnionRect UnionRect
  2798. #endif
  2799. EXTERN_API( void )
  2800. MacUnionRect(
  2801. const Rect * src1,
  2802. const Rect * src2,
  2803. Rect * dstRect) ONEWORDINLINE(0xA8AB);
  2804. /*
  2805. * [Mac]EqualRect()
  2806. *
  2807. * Availability:
  2808. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2809. * CarbonLib: in CarbonLib 1.0 and later
  2810. * Mac OS X: in version 10.0 and later
  2811. */
  2812. #if TARGET_OS_MAC
  2813. #define MacEqualRect EqualRect
  2814. #endif
  2815. EXTERN_API( Boolean )
  2816. MacEqualRect(
  2817. const Rect * rect1,
  2818. const Rect * rect2) ONEWORDINLINE(0xA8A6);
  2819. /*
  2820. * EmptyRect()
  2821. *
  2822. * Availability:
  2823. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2824. * CarbonLib: in CarbonLib 1.0 and later
  2825. * Mac OS X: in version 10.0 and later
  2826. */
  2827. EXTERN_API( Boolean )
  2828. EmptyRect(const Rect * r) ONEWORDINLINE(0xA8AE);
  2829. /*
  2830. * [Mac]FrameRect()
  2831. *
  2832. * Availability:
  2833. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2834. * CarbonLib: in CarbonLib 1.0 and later
  2835. * Mac OS X: in version 10.0 and later
  2836. */
  2837. #if TARGET_OS_MAC
  2838. #define MacFrameRect FrameRect
  2839. #endif
  2840. EXTERN_API( void )
  2841. MacFrameRect(const Rect * r) ONEWORDINLINE(0xA8A1);
  2842. /*
  2843. * PaintRect()
  2844. *
  2845. * Availability:
  2846. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2847. * CarbonLib: in CarbonLib 1.0 and later
  2848. * Mac OS X: in version 10.0 and later
  2849. */
  2850. EXTERN_API( void )
  2851. PaintRect(const Rect * r) ONEWORDINLINE(0xA8A2);
  2852. /*
  2853. * EraseRect()
  2854. *
  2855. * Availability:
  2856. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2857. * CarbonLib: in CarbonLib 1.0 and later
  2858. * Mac OS X: in version 10.0 and later
  2859. */
  2860. EXTERN_API( void )
  2861. EraseRect(const Rect * r) ONEWORDINLINE(0xA8A3);
  2862. /*
  2863. * [Mac]InvertRect()
  2864. *
  2865. * Availability:
  2866. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2867. * CarbonLib: in CarbonLib 1.0 and later
  2868. * Mac OS X: in version 10.0 and later
  2869. */
  2870. #if TARGET_OS_MAC
  2871. #define MacInvertRect InvertRect
  2872. #endif
  2873. EXTERN_API( void )
  2874. MacInvertRect(const Rect * r) ONEWORDINLINE(0xA8A4);
  2875. /*
  2876. * [Mac]FillRect()
  2877. *
  2878. * Availability:
  2879. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2880. * CarbonLib: in CarbonLib 1.0 and later
  2881. * Mac OS X: in version 10.0 and later
  2882. */
  2883. #if TARGET_OS_MAC
  2884. #define MacFillRect FillRect
  2885. #endif
  2886. EXTERN_API( void )
  2887. MacFillRect(
  2888. const Rect * r,
  2889. const Pattern * pat) ONEWORDINLINE(0xA8A5);
  2890. /*
  2891. * FrameOval()
  2892. *
  2893. * Availability:
  2894. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2895. * CarbonLib: in CarbonLib 1.0 and later
  2896. * Mac OS X: in version 10.0 and later
  2897. */
  2898. EXTERN_API( void )
  2899. FrameOval(const Rect * r) ONEWORDINLINE(0xA8B7);
  2900. /*
  2901. * PaintOval()
  2902. *
  2903. * Availability:
  2904. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2905. * CarbonLib: in CarbonLib 1.0 and later
  2906. * Mac OS X: in version 10.0 and later
  2907. */
  2908. EXTERN_API( void )
  2909. PaintOval(const Rect * r) ONEWORDINLINE(0xA8B8);
  2910. /*
  2911. * EraseOval()
  2912. *
  2913. * Availability:
  2914. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2915. * CarbonLib: in CarbonLib 1.0 and later
  2916. * Mac OS X: in version 10.0 and later
  2917. */
  2918. EXTERN_API( void )
  2919. EraseOval(const Rect * r) ONEWORDINLINE(0xA8B9);
  2920. /*
  2921. * InvertOval()
  2922. *
  2923. * Availability:
  2924. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2925. * CarbonLib: in CarbonLib 1.0 and later
  2926. * Mac OS X: in version 10.0 and later
  2927. */
  2928. EXTERN_API( void )
  2929. InvertOval(const Rect * r) ONEWORDINLINE(0xA8BA);
  2930. /*
  2931. * FillOval()
  2932. *
  2933. * Availability:
  2934. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2935. * CarbonLib: in CarbonLib 1.0 and later
  2936. * Mac OS X: in version 10.0 and later
  2937. */
  2938. EXTERN_API( void )
  2939. FillOval(
  2940. const Rect * r,
  2941. const Pattern * pat) ONEWORDINLINE(0xA8BB);
  2942. /*
  2943. * FrameRoundRect()
  2944. *
  2945. * Availability:
  2946. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2947. * CarbonLib: in CarbonLib 1.0 and later
  2948. * Mac OS X: in version 10.0 and later
  2949. */
  2950. EXTERN_API( void )
  2951. FrameRoundRect(
  2952. const Rect * r,
  2953. short ovalWidth,
  2954. short ovalHeight) ONEWORDINLINE(0xA8B0);
  2955. /*
  2956. * PaintRoundRect()
  2957. *
  2958. * Availability:
  2959. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2960. * CarbonLib: in CarbonLib 1.0 and later
  2961. * Mac OS X: in version 10.0 and later
  2962. */
  2963. EXTERN_API( void )
  2964. PaintRoundRect(
  2965. const Rect * r,
  2966. short ovalWidth,
  2967. short ovalHeight) ONEWORDINLINE(0xA8B1);
  2968. /*
  2969. * EraseRoundRect()
  2970. *
  2971. * Availability:
  2972. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2973. * CarbonLib: in CarbonLib 1.0 and later
  2974. * Mac OS X: in version 10.0 and later
  2975. */
  2976. EXTERN_API( void )
  2977. EraseRoundRect(
  2978. const Rect * r,
  2979. short ovalWidth,
  2980. short ovalHeight) ONEWORDINLINE(0xA8B2);
  2981. /*
  2982. * InvertRoundRect()
  2983. *
  2984. * Availability:
  2985. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2986. * CarbonLib: in CarbonLib 1.0 and later
  2987. * Mac OS X: in version 10.0 and later
  2988. */
  2989. EXTERN_API( void )
  2990. InvertRoundRect(
  2991. const Rect * r,
  2992. short ovalWidth,
  2993. short ovalHeight) ONEWORDINLINE(0xA8B3);
  2994. /*
  2995. * FillRoundRect()
  2996. *
  2997. * Availability:
  2998. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2999. * CarbonLib: in CarbonLib 1.0 and later
  3000. * Mac OS X: in version 10.0 and later
  3001. */
  3002. EXTERN_API( void )
  3003. FillRoundRect(
  3004. const Rect * r,
  3005. short ovalWidth,
  3006. short ovalHeight,
  3007. const Pattern * pat) ONEWORDINLINE(0xA8B4);
  3008. /*
  3009. * FrameArc()
  3010. *
  3011. * Availability:
  3012. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3013. * CarbonLib: in CarbonLib 1.0 and later
  3014. * Mac OS X: in version 10.0 and later
  3015. */
  3016. EXTERN_API( void )
  3017. FrameArc(
  3018. const Rect * r,
  3019. short startAngle,
  3020. short arcAngle) ONEWORDINLINE(0xA8BE);
  3021. /*
  3022. * PaintArc()
  3023. *
  3024. * Availability:
  3025. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3026. * CarbonLib: in CarbonLib 1.0 and later
  3027. * Mac OS X: in version 10.0 and later
  3028. */
  3029. EXTERN_API( void )
  3030. PaintArc(
  3031. const Rect * r,
  3032. short startAngle,
  3033. short arcAngle) ONEWORDINLINE(0xA8BF);
  3034. /*
  3035. * EraseArc()
  3036. *
  3037. * Availability:
  3038. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3039. * CarbonLib: in CarbonLib 1.0 and later
  3040. * Mac OS X: in version 10.0 and later
  3041. */
  3042. EXTERN_API( void )
  3043. EraseArc(
  3044. const Rect * r,
  3045. short startAngle,
  3046. short arcAngle) ONEWORDINLINE(0xA8C0);
  3047. /*
  3048. * InvertArc()
  3049. *
  3050. * Availability:
  3051. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3052. * CarbonLib: in CarbonLib 1.0 and later
  3053. * Mac OS X: in version 10.0 and later
  3054. */
  3055. EXTERN_API( void )
  3056. InvertArc(
  3057. const Rect * r,
  3058. short startAngle,
  3059. short arcAngle) ONEWORDINLINE(0xA8C1);
  3060. /*
  3061. * FillArc()
  3062. *
  3063. * Availability:
  3064. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3065. * CarbonLib: in CarbonLib 1.0 and later
  3066. * Mac OS X: in version 10.0 and later
  3067. */
  3068. EXTERN_API( void )
  3069. FillArc(
  3070. const Rect * r,
  3071. short startAngle,
  3072. short arcAngle,
  3073. const Pattern * pat) ONEWORDINLINE(0xA8C2);
  3074. /*
  3075. * NewRgn()
  3076. *
  3077. * Availability:
  3078. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3079. * CarbonLib: in CarbonLib 1.0 and later
  3080. * Mac OS X: in version 10.0 and later
  3081. */
  3082. EXTERN_API( RgnHandle )
  3083. NewRgn(void) ONEWORDINLINE(0xA8D8);
  3084. /*
  3085. * OpenRgn()
  3086. *
  3087. * Availability:
  3088. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3089. * CarbonLib: in CarbonLib 1.0 and later
  3090. * Mac OS X: in version 10.0 and later
  3091. */
  3092. EXTERN_API( void )
  3093. OpenRgn(void) ONEWORDINLINE(0xA8DA);
  3094. /*
  3095. * CloseRgn()
  3096. *
  3097. * Availability:
  3098. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3099. * CarbonLib: in CarbonLib 1.0 and later
  3100. * Mac OS X: in version 10.0 and later
  3101. */
  3102. EXTERN_API( void )
  3103. CloseRgn(RgnHandle dstRgn) ONEWORDINLINE(0xA8DB);
  3104. /*
  3105. * BitMapToRegion()
  3106. *
  3107. * Availability:
  3108. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3109. * CarbonLib: in CarbonLib 1.0 and later
  3110. * Mac OS X: in version 10.0 and later
  3111. */
  3112. EXTERN_API( OSErr )
  3113. BitMapToRegion(
  3114. RgnHandle region,
  3115. const BitMap * bMap) ONEWORDINLINE(0xA8D7);
  3116. /*
  3117. * HandleToRgn()
  3118. *
  3119. * Availability:
  3120. * Non-Carbon CFM: not available
  3121. * CarbonLib: in CarbonLib 1.1 and later
  3122. * Mac OS X: in version 10.0 and later
  3123. */
  3124. EXTERN_API( void )
  3125. HandleToRgn(
  3126. Handle oldRegion,
  3127. RgnHandle region);
  3128. /*
  3129. * RgnToHandle()
  3130. *
  3131. * Availability:
  3132. * Non-Carbon CFM: not available
  3133. * CarbonLib: in CarbonLib 1.3 and later
  3134. * Mac OS X: in version 10.1 and later
  3135. */
  3136. EXTERN_API( void )
  3137. RgnToHandle(
  3138. RgnHandle region,
  3139. Handle flattenedRgnDataHdl);
  3140. /*
  3141. * DisposeRgn()
  3142. *
  3143. * Availability:
  3144. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3145. * CarbonLib: in CarbonLib 1.0 and later
  3146. * Mac OS X: in version 10.0 and later
  3147. */
  3148. EXTERN_API( void )
  3149. DisposeRgn(RgnHandle rgn) ONEWORDINLINE(0xA8D9);
  3150. /*
  3151. * [Mac]CopyRgn()
  3152. *
  3153. * Availability:
  3154. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3155. * CarbonLib: in CarbonLib 1.0 and later
  3156. * Mac OS X: in version 10.0 and later
  3157. */
  3158. #if TARGET_OS_MAC
  3159. #define MacCopyRgn CopyRgn
  3160. #endif
  3161. EXTERN_API( void )
  3162. MacCopyRgn(
  3163. RgnHandle srcRgn,
  3164. RgnHandle dstRgn) ONEWORDINLINE(0xA8DC);
  3165. /*
  3166. * SetEmptyRgn()
  3167. *
  3168. * Availability:
  3169. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3170. * CarbonLib: in CarbonLib 1.0 and later
  3171. * Mac OS X: in version 10.0 and later
  3172. */
  3173. EXTERN_API( void )
  3174. SetEmptyRgn(RgnHandle rgn) ONEWORDINLINE(0xA8DD);
  3175. /*
  3176. * [Mac]SetRectRgn()
  3177. *
  3178. * Availability:
  3179. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3180. * CarbonLib: in CarbonLib 1.0 and later
  3181. * Mac OS X: in version 10.0 and later
  3182. */
  3183. #if TARGET_OS_MAC
  3184. #define MacSetRectRgn SetRectRgn
  3185. #endif
  3186. EXTERN_API( void )
  3187. MacSetRectRgn(
  3188. RgnHandle rgn,
  3189. short left,
  3190. short top,
  3191. short right,
  3192. short bottom) ONEWORDINLINE(0xA8DE);
  3193. /*
  3194. * RectRgn()
  3195. *
  3196. * Availability:
  3197. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3198. * CarbonLib: in CarbonLib 1.0 and later
  3199. * Mac OS X: in version 10.0 and later
  3200. */
  3201. EXTERN_API( void )
  3202. RectRgn(
  3203. RgnHandle rgn,
  3204. const Rect * r) ONEWORDINLINE(0xA8DF);
  3205. /*
  3206. * [Mac]OffsetRgn()
  3207. *
  3208. * Availability:
  3209. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3210. * CarbonLib: in CarbonLib 1.0 and later
  3211. * Mac OS X: in version 10.0 and later
  3212. */
  3213. #if TARGET_OS_MAC
  3214. #define MacOffsetRgn OffsetRgn
  3215. #endif
  3216. EXTERN_API( void )
  3217. MacOffsetRgn(
  3218. RgnHandle rgn,
  3219. short dh,
  3220. short dv) ONEWORDINLINE(0xA8E0);
  3221. /*
  3222. * InsetRgn()
  3223. *
  3224. * Availability:
  3225. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3226. * CarbonLib: in CarbonLib 1.0 and later
  3227. * Mac OS X: in version 10.0 and later
  3228. */
  3229. EXTERN_API( void )
  3230. InsetRgn(
  3231. RgnHandle rgn,
  3232. short dh,
  3233. short dv) ONEWORDINLINE(0xA8E1);
  3234. /*
  3235. * SectRgn()
  3236. *
  3237. * Availability:
  3238. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3239. * CarbonLib: in CarbonLib 1.0 and later
  3240. * Mac OS X: in version 10.0 and later
  3241. */
  3242. EXTERN_API( void )
  3243. SectRgn(
  3244. RgnHandle srcRgnA,
  3245. RgnHandle srcRgnB,
  3246. RgnHandle dstRgn) ONEWORDINLINE(0xA8E4);
  3247. /*
  3248. * [Mac]UnionRgn()
  3249. *
  3250. * Availability:
  3251. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3252. * CarbonLib: in CarbonLib 1.0 and later
  3253. * Mac OS X: in version 10.0 and later
  3254. */
  3255. #if TARGET_OS_MAC
  3256. #define MacUnionRgn UnionRgn
  3257. #endif
  3258. EXTERN_API( void )
  3259. MacUnionRgn(
  3260. RgnHandle srcRgnA,
  3261. RgnHandle srcRgnB,
  3262. RgnHandle dstRgn) ONEWORDINLINE(0xA8E5);
  3263. /*
  3264. * DiffRgn()
  3265. *
  3266. * Availability:
  3267. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3268. * CarbonLib: in CarbonLib 1.0 and later
  3269. * Mac OS X: in version 10.0 and later
  3270. */
  3271. EXTERN_API( void )
  3272. DiffRgn(
  3273. RgnHandle srcRgnA,
  3274. RgnHandle srcRgnB,
  3275. RgnHandle dstRgn) ONEWORDINLINE(0xA8E6);
  3276. /*
  3277. * [Mac]XorRgn()
  3278. *
  3279. * Availability:
  3280. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3281. * CarbonLib: in CarbonLib 1.0 and later
  3282. * Mac OS X: in version 10.0 and later
  3283. */
  3284. #if TARGET_OS_MAC
  3285. #define MacXorRgn XorRgn
  3286. #endif
  3287. EXTERN_API( void )
  3288. MacXorRgn(
  3289. RgnHandle srcRgnA,
  3290. RgnHandle srcRgnB,
  3291. RgnHandle dstRgn) ONEWORDINLINE(0xA8E7);
  3292. /*
  3293. * RectInRgn()
  3294. *
  3295. * Availability:
  3296. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3297. * CarbonLib: in CarbonLib 1.0 and later
  3298. * Mac OS X: in version 10.0 and later
  3299. */
  3300. EXTERN_API( Boolean )
  3301. RectInRgn(
  3302. const Rect * r,
  3303. RgnHandle rgn) ONEWORDINLINE(0xA8E9);
  3304. /*
  3305. * [Mac]EqualRgn()
  3306. *
  3307. * Availability:
  3308. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3309. * CarbonLib: in CarbonLib 1.0 and later
  3310. * Mac OS X: in version 10.0 and later
  3311. */
  3312. #if TARGET_OS_MAC
  3313. #define MacEqualRgn EqualRgn
  3314. #endif
  3315. EXTERN_API( Boolean )
  3316. MacEqualRgn(
  3317. RgnHandle rgnA,
  3318. RgnHandle rgnB) ONEWORDINLINE(0xA8E3);
  3319. /*
  3320. * EmptyRgn()
  3321. *
  3322. * Availability:
  3323. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3324. * CarbonLib: in CarbonLib 1.0 and later
  3325. * Mac OS X: in version 10.0 and later
  3326. */
  3327. EXTERN_API( Boolean )
  3328. EmptyRgn(RgnHandle rgn) ONEWORDINLINE(0xA8E2);
  3329. /*
  3330. * [Mac]FrameRgn()
  3331. *
  3332. * Availability:
  3333. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3334. * CarbonLib: in CarbonLib 1.0 and later
  3335. * Mac OS X: in version 10.0 and later
  3336. */
  3337. #if TARGET_OS_MAC
  3338. #define MacFrameRgn FrameRgn
  3339. #endif
  3340. EXTERN_API( void )
  3341. MacFrameRgn(RgnHandle rgn) ONEWORDINLINE(0xA8D2);
  3342. /*
  3343. * [Mac]PaintRgn()
  3344. *
  3345. * Availability:
  3346. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3347. * CarbonLib: in CarbonLib 1.0 and later
  3348. * Mac OS X: in version 10.0 and later
  3349. */
  3350. #if TARGET_OS_MAC
  3351. #define MacPaintRgn PaintRgn
  3352. #endif
  3353. EXTERN_API( void )
  3354. MacPaintRgn(RgnHandle rgn) ONEWORDINLINE(0xA8D3);
  3355. /*
  3356. * EraseRgn()
  3357. *
  3358. * Availability:
  3359. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3360. * CarbonLib: in CarbonLib 1.0 and later
  3361. * Mac OS X: in version 10.0 and later
  3362. */
  3363. EXTERN_API( void )
  3364. EraseRgn(RgnHandle rgn) ONEWORDINLINE(0xA8D4);
  3365. /*
  3366. * [Mac]InvertRgn()
  3367. *
  3368. * Availability:
  3369. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3370. * CarbonLib: in CarbonLib 1.0 and later
  3371. * Mac OS X: in version 10.0 and later
  3372. */
  3373. #if TARGET_OS_MAC
  3374. #define MacInvertRgn InvertRgn
  3375. #endif
  3376. EXTERN_API( void )
  3377. MacInvertRgn(RgnHandle rgn) ONEWORDINLINE(0xA8D5);
  3378. /*
  3379. * [Mac]FillRgn()
  3380. *
  3381. * Availability:
  3382. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3383. * CarbonLib: in CarbonLib 1.0 and later
  3384. * Mac OS X: in version 10.0 and later
  3385. */
  3386. #if TARGET_OS_MAC
  3387. #define MacFillRgn FillRgn
  3388. #endif
  3389. EXTERN_API( void )
  3390. MacFillRgn(
  3391. RgnHandle rgn,
  3392. const Pattern * pat) ONEWORDINLINE(0xA8D6);
  3393. /*
  3394. * ScrollRect()
  3395. *
  3396. * Availability:
  3397. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3398. * CarbonLib: in CarbonLib 1.0 and later
  3399. * Mac OS X: in version 10.0 and later
  3400. */
  3401. EXTERN_API( void )
  3402. ScrollRect(
  3403. const Rect * r,
  3404. short dh,
  3405. short dv,
  3406. RgnHandle updateRgn) ONEWORDINLINE(0xA8EF);
  3407. /*
  3408. * CopyBits()
  3409. *
  3410. * Availability:
  3411. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3412. * CarbonLib: in CarbonLib 1.0 and later
  3413. * Mac OS X: in version 10.0 and later
  3414. */
  3415. EXTERN_API( void )
  3416. CopyBits(
  3417. const BitMap * srcBits,
  3418. const BitMap * dstBits,
  3419. const Rect * srcRect,
  3420. const Rect * dstRect,
  3421. short mode,
  3422. RgnHandle maskRgn) /* can be NULL */ ONEWORDINLINE(0xA8EC);
  3423. /*
  3424. * SeedFill()
  3425. *
  3426. * Availability:
  3427. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3428. * CarbonLib: in CarbonLib 1.0 and later
  3429. * Mac OS X: in version 10.0 and later
  3430. */
  3431. EXTERN_API( void )
  3432. SeedFill(
  3433. const void * srcPtr,
  3434. void * dstPtr,
  3435. short srcRow,
  3436. short dstRow,
  3437. short height,
  3438. short words,
  3439. short seedH,
  3440. short seedV) ONEWORDINLINE(0xA839);
  3441. /*
  3442. * CalcMask()
  3443. *
  3444. * Availability:
  3445. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3446. * CarbonLib: in CarbonLib 1.0 and later
  3447. * Mac OS X: in version 10.0 and later
  3448. */
  3449. EXTERN_API( void )
  3450. CalcMask(
  3451. const void * srcPtr,
  3452. void * dstPtr,
  3453. short srcRow,
  3454. short dstRow,
  3455. short height,
  3456. short words) ONEWORDINLINE(0xA838);
  3457. /*
  3458. * CopyMask()
  3459. *
  3460. * Availability:
  3461. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3462. * CarbonLib: in CarbonLib 1.0 and later
  3463. * Mac OS X: in version 10.0 and later
  3464. */
  3465. EXTERN_API( void )
  3466. CopyMask(
  3467. const BitMap * srcBits,
  3468. const BitMap * maskBits,
  3469. const BitMap * dstBits,
  3470. const Rect * srcRect,
  3471. const Rect * maskRect,
  3472. const Rect * dstRect) ONEWORDINLINE(0xA817);
  3473. /*
  3474. * OpenPicture()
  3475. *
  3476. * Availability:
  3477. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3478. * CarbonLib: in CarbonLib 1.0 and later
  3479. * Mac OS X: in version 10.0 and later
  3480. */
  3481. EXTERN_API( PicHandle )
  3482. OpenPicture(const Rect * picFrame) ONEWORDINLINE(0xA8F3);
  3483. /*
  3484. * PicComment()
  3485. *
  3486. * Availability:
  3487. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3488. * CarbonLib: in CarbonLib 1.0 and later
  3489. * Mac OS X: in version 10.0 and later
  3490. */
  3491. EXTERN_API( void )
  3492. PicComment(
  3493. short kind,
  3494. short dataSize,
  3495. Handle dataHandle) ONEWORDINLINE(0xA8F2);
  3496. /*
  3497. * ClosePicture()
  3498. *
  3499. * Availability:
  3500. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3501. * CarbonLib: in CarbonLib 1.0 and later
  3502. * Mac OS X: in version 10.0 and later
  3503. */
  3504. EXTERN_API( void )
  3505. ClosePicture(void) ONEWORDINLINE(0xA8F4);
  3506. /*
  3507. * DrawPicture()
  3508. *
  3509. * Availability:
  3510. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3511. * CarbonLib: in CarbonLib 1.0 and later
  3512. * Mac OS X: in version 10.0 and later
  3513. */
  3514. EXTERN_API( void )
  3515. DrawPicture(
  3516. PicHandle myPicture,
  3517. const Rect * dstRect) ONEWORDINLINE(0xA8F6);
  3518. /*
  3519. * KillPicture()
  3520. *
  3521. * Availability:
  3522. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3523. * CarbonLib: in CarbonLib 1.0 and later
  3524. * Mac OS X: in version 10.0 and later
  3525. */
  3526. EXTERN_API( void )
  3527. KillPicture(PicHandle myPicture) ONEWORDINLINE(0xA8F5);
  3528. /*
  3529. * OpenPoly()
  3530. *
  3531. * Availability:
  3532. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3533. * CarbonLib: in CarbonLib 1.0 and later
  3534. * Mac OS X: in version 10.0 and later
  3535. */
  3536. EXTERN_API( PolyHandle )
  3537. OpenPoly(void) ONEWORDINLINE(0xA8CB);
  3538. /*
  3539. * ClosePoly()
  3540. *
  3541. * Availability:
  3542. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3543. * CarbonLib: in CarbonLib 1.0 and later
  3544. * Mac OS X: in version 10.0 and later
  3545. */
  3546. EXTERN_API( void )
  3547. ClosePoly(void) ONEWORDINLINE(0xA8CC);
  3548. /*
  3549. * KillPoly()
  3550. *
  3551. * Availability:
  3552. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3553. * CarbonLib: in CarbonLib 1.0 and later
  3554. * Mac OS X: in version 10.0 and later
  3555. */
  3556. EXTERN_API( void )
  3557. KillPoly(PolyHandle poly) ONEWORDINLINE(0xA8CD);
  3558. /*
  3559. * OffsetPoly()
  3560. *
  3561. * Availability:
  3562. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3563. * CarbonLib: in CarbonLib 1.0 and later
  3564. * Mac OS X: in version 10.0 and later
  3565. */
  3566. EXTERN_API( void )
  3567. OffsetPoly(
  3568. PolyHandle poly,
  3569. short dh,
  3570. short dv) ONEWORDINLINE(0xA8CE);
  3571. /*
  3572. * FramePoly()
  3573. *
  3574. * Availability:
  3575. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3576. * CarbonLib: in CarbonLib 1.0 and later
  3577. * Mac OS X: in version 10.0 and later
  3578. */
  3579. EXTERN_API( void )
  3580. FramePoly(PolyHandle poly) ONEWORDINLINE(0xA8C6);
  3581. /*
  3582. * PaintPoly()
  3583. *
  3584. * Availability:
  3585. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3586. * CarbonLib: in CarbonLib 1.0 and later
  3587. * Mac OS X: in version 10.0 and later
  3588. */
  3589. EXTERN_API( void )
  3590. PaintPoly(PolyHandle poly) ONEWORDINLINE(0xA8C7);
  3591. /*
  3592. * ErasePoly()
  3593. *
  3594. * Availability:
  3595. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3596. * CarbonLib: in CarbonLib 1.0 and later
  3597. * Mac OS X: in version 10.0 and later
  3598. */
  3599. EXTERN_API( void )
  3600. ErasePoly(PolyHandle poly) ONEWORDINLINE(0xA8C8);
  3601. /*
  3602. * InvertPoly()
  3603. *
  3604. * Availability:
  3605. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3606. * CarbonLib: in CarbonLib 1.0 and later
  3607. * Mac OS X: in version 10.0 and later
  3608. */
  3609. EXTERN_API( void )
  3610. InvertPoly(PolyHandle poly) ONEWORDINLINE(0xA8C9);
  3611. /*
  3612. * FillPoly()
  3613. *
  3614. * Availability:
  3615. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3616. * CarbonLib: in CarbonLib 1.0 and later
  3617. * Mac OS X: in version 10.0 and later
  3618. */
  3619. EXTERN_API( void )
  3620. FillPoly(
  3621. PolyHandle poly,
  3622. const Pattern * pat) ONEWORDINLINE(0xA8CA);
  3623. /*
  3624. * SetPt()
  3625. *
  3626. * Availability:
  3627. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3628. * CarbonLib: in CarbonLib 1.0 and later
  3629. * Mac OS X: in version 10.0 and later
  3630. */
  3631. EXTERN_API( void )
  3632. SetPt(
  3633. Point * pt,
  3634. short h,
  3635. short v) ONEWORDINLINE(0xA880);
  3636. /*
  3637. * LocalToGlobal()
  3638. *
  3639. * Availability:
  3640. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3641. * CarbonLib: in CarbonLib 1.0 and later
  3642. * Mac OS X: in version 10.0 and later
  3643. */
  3644. EXTERN_API( void )
  3645. LocalToGlobal(Point * pt) ONEWORDINLINE(0xA870);
  3646. /*
  3647. * GlobalToLocal()
  3648. *
  3649. * Availability:
  3650. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3651. * CarbonLib: in CarbonLib 1.0 and later
  3652. * Mac OS X: in version 10.0 and later
  3653. */
  3654. EXTERN_API( void )
  3655. GlobalToLocal(Point * pt) ONEWORDINLINE(0xA871);
  3656. /*
  3657. * Random()
  3658. *
  3659. * Availability:
  3660. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3661. * CarbonLib: in CarbonLib 1.0 and later
  3662. * Mac OS X: in version 10.0 and later
  3663. */
  3664. EXTERN_API( short )
  3665. Random(void) ONEWORDINLINE(0xA861);
  3666. /*
  3667. * StuffHex()
  3668. *
  3669. * Availability:
  3670. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3671. * CarbonLib: in CarbonLib 1.0 and later
  3672. * Mac OS X: in version 10.0 and later
  3673. */
  3674. EXTERN_API( void )
  3675. StuffHex(
  3676. void * thingPtr,
  3677. ConstStr255Param s) ONEWORDINLINE(0xA866);
  3678. /*
  3679. * [Mac]GetPixel()
  3680. *
  3681. * Availability:
  3682. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3683. * CarbonLib: in CarbonLib 1.0 and later
  3684. * Mac OS X: in version 10.0 and later
  3685. */
  3686. #if TARGET_OS_MAC
  3687. #define MacGetPixel GetPixel
  3688. #endif
  3689. EXTERN_API( Boolean )
  3690. MacGetPixel(
  3691. short h,
  3692. short v) ONEWORDINLINE(0xA865);
  3693. /*
  3694. * ScalePt()
  3695. *
  3696. * Availability:
  3697. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3698. * CarbonLib: in CarbonLib 1.0 and later
  3699. * Mac OS X: in version 10.0 and later
  3700. */
  3701. EXTERN_API( void )
  3702. ScalePt(
  3703. Point * pt,
  3704. const Rect * srcRect,
  3705. const Rect * dstRect) ONEWORDINLINE(0xA8F8);
  3706. /*
  3707. * MapPt()
  3708. *
  3709. * Availability:
  3710. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3711. * CarbonLib: in CarbonLib 1.0 and later
  3712. * Mac OS X: in version 10.0 and later
  3713. */
  3714. EXTERN_API( void )
  3715. MapPt(
  3716. Point * pt,
  3717. const Rect * srcRect,
  3718. const Rect * dstRect) ONEWORDINLINE(0xA8F9);
  3719. /*
  3720. * MapRect()
  3721. *
  3722. * Availability:
  3723. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3724. * CarbonLib: in CarbonLib 1.0 and later
  3725. * Mac OS X: in version 10.0 and later
  3726. */
  3727. EXTERN_API( void )
  3728. MapRect(
  3729. Rect * r,
  3730. const Rect * srcRect,
  3731. const Rect * dstRect) ONEWORDINLINE(0xA8FA);
  3732. /*
  3733. * MapRgn()
  3734. *
  3735. * Availability:
  3736. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3737. * CarbonLib: in CarbonLib 1.0 and later
  3738. * Mac OS X: in version 10.0 and later
  3739. */
  3740. EXTERN_API( void )
  3741. MapRgn(
  3742. RgnHandle rgn,
  3743. const Rect * srcRect,
  3744. const Rect * dstRect) ONEWORDINLINE(0xA8FB);
  3745. /*
  3746. * MapPoly()
  3747. *
  3748. * Availability:
  3749. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3750. * CarbonLib: in CarbonLib 1.0 and later
  3751. * Mac OS X: in version 10.0 and later
  3752. */
  3753. EXTERN_API( void )
  3754. MapPoly(
  3755. PolyHandle poly,
  3756. const Rect * srcRect,
  3757. const Rect * dstRect) ONEWORDINLINE(0xA8FC);
  3758. /*
  3759. * SetStdProcs()
  3760. *
  3761. * Availability:
  3762. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3763. * CarbonLib: in CarbonLib 1.0 and later
  3764. * Mac OS X: in version 10.0 and later
  3765. */
  3766. EXTERN_API( void )
  3767. SetStdProcs(QDProcs * procs) ONEWORDINLINE(0xA8EA);
  3768. /*
  3769. * StdRect()
  3770. *
  3771. * Availability:
  3772. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3773. * CarbonLib: in CarbonLib 1.0 and later
  3774. * Mac OS X: in version 10.0 and later
  3775. */
  3776. EXTERN_API( void )
  3777. StdRect(
  3778. GrafVerb verb,
  3779. const Rect * r) ONEWORDINLINE(0xA8A0);
  3780. /*
  3781. * StdRRect()
  3782. *
  3783. * Availability:
  3784. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3785. * CarbonLib: in CarbonLib 1.0 and later
  3786. * Mac OS X: in version 10.0 and later
  3787. */
  3788. EXTERN_API( void )
  3789. StdRRect(
  3790. GrafVerb verb,
  3791. const Rect * r,
  3792. short ovalWidth,
  3793. short ovalHeight) ONEWORDINLINE(0xA8AF);
  3794. /*
  3795. * StdOval()
  3796. *
  3797. * Availability:
  3798. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3799. * CarbonLib: in CarbonLib 1.0 and later
  3800. * Mac OS X: in version 10.0 and later
  3801. */
  3802. EXTERN_API( void )
  3803. StdOval(
  3804. GrafVerb verb,
  3805. const Rect * r) ONEWORDINLINE(0xA8B6);
  3806. /*
  3807. * StdArc()
  3808. *
  3809. * Availability:
  3810. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3811. * CarbonLib: in CarbonLib 1.0 and later
  3812. * Mac OS X: in version 10.0 and later
  3813. */
  3814. EXTERN_API( void )
  3815. StdArc(
  3816. GrafVerb verb,
  3817. const Rect * r,
  3818. short startAngle,
  3819. short arcAngle) ONEWORDINLINE(0xA8BD);
  3820. /*
  3821. * StdPoly()
  3822. *
  3823. * Availability:
  3824. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3825. * CarbonLib: in CarbonLib 1.0 and later
  3826. * Mac OS X: in version 10.0 and later
  3827. */
  3828. EXTERN_API( void )
  3829. StdPoly(
  3830. GrafVerb verb,
  3831. PolyHandle poly) ONEWORDINLINE(0xA8C5);
  3832. /*
  3833. * StdRgn()
  3834. *
  3835. * Availability:
  3836. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3837. * CarbonLib: in CarbonLib 1.0 and later
  3838. * Mac OS X: in version 10.0 and later
  3839. */
  3840. EXTERN_API( void )
  3841. StdRgn(
  3842. GrafVerb verb,
  3843. RgnHandle rgn) ONEWORDINLINE(0xA8D1);
  3844. /*
  3845. * StdBits()
  3846. *
  3847. * Availability:
  3848. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3849. * CarbonLib: in CarbonLib 1.0 and later
  3850. * Mac OS X: in version 10.0 and later
  3851. */
  3852. EXTERN_API( void )
  3853. StdBits(
  3854. const BitMap * srcBits,
  3855. const Rect * srcRect,
  3856. const Rect * dstRect,
  3857. short mode,
  3858. RgnHandle maskRgn) ONEWORDINLINE(0xA8EB);
  3859. /*
  3860. * StdComment()
  3861. *
  3862. * Availability:
  3863. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3864. * CarbonLib: in CarbonLib 1.0 and later
  3865. * Mac OS X: in version 10.0 and later
  3866. */
  3867. EXTERN_API( void )
  3868. StdComment(
  3869. short kind,
  3870. short dataSize,
  3871. Handle dataHandle) ONEWORDINLINE(0xA8F1);
  3872. /*
  3873. * StdGetPic()
  3874. *
  3875. * Availability:
  3876. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3877. * CarbonLib: in CarbonLib 1.0 and later
  3878. * Mac OS X: in version 10.0 and later
  3879. */
  3880. EXTERN_API( void )
  3881. StdGetPic(
  3882. void * dataPtr,
  3883. short byteCount) ONEWORDINLINE(0xA8EE);
  3884. /*
  3885. * StdPutPic()
  3886. *
  3887. * Availability:
  3888. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3889. * CarbonLib: in CarbonLib 1.0 and later
  3890. * Mac OS X: in version 10.0 and later
  3891. */
  3892. EXTERN_API( void )
  3893. StdPutPic(
  3894. const void * dataPtr,
  3895. short byteCount) ONEWORDINLINE(0xA8F0);
  3896. /*
  3897. * StdOpcode()
  3898. *
  3899. * Availability:
  3900. * Non-Carbon CFM: not available
  3901. * CarbonLib: in CarbonLib 1.0 and later
  3902. * Mac OS X: in version 10.0 and later
  3903. */
  3904. EXTERN_API( void )
  3905. StdOpcode(
  3906. const Rect * fromRect,
  3907. const Rect * toRect,
  3908. UInt16 opcode,
  3909. SInt16 version) ONEWORDINLINE(0xABF8);
  3910. /*
  3911. * AddPt()
  3912. *
  3913. * Availability:
  3914. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3915. * CarbonLib: in CarbonLib 1.0 and later
  3916. * Mac OS X: in version 10.0 and later
  3917. */
  3918. EXTERN_API( void )
  3919. AddPt(
  3920. Point src,
  3921. Point * dst) ONEWORDINLINE(0xA87E);
  3922. /*
  3923. * EqualPt()
  3924. *
  3925. * Availability:
  3926. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3927. * CarbonLib: in CarbonLib 1.0 and later
  3928. * Mac OS X: in version 10.0 and later
  3929. */
  3930. EXTERN_API( Boolean )
  3931. EqualPt(
  3932. Point pt1,
  3933. Point pt2) ONEWORDINLINE(0xA881);
  3934. /*
  3935. * [Mac]PtInRect()
  3936. *
  3937. * Availability:
  3938. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3939. * CarbonLib: in CarbonLib 1.0 and later
  3940. * Mac OS X: in version 10.0 and later
  3941. */
  3942. #if TARGET_OS_MAC
  3943. #define MacPtInRect PtInRect
  3944. #endif
  3945. EXTERN_API( Boolean )
  3946. MacPtInRect(
  3947. Point pt,
  3948. const Rect * r) ONEWORDINLINE(0xA8AD);
  3949. /*
  3950. * Pt2Rect()
  3951. *
  3952. * Availability:
  3953. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3954. * CarbonLib: in CarbonLib 1.0 and later
  3955. * Mac OS X: in version 10.0 and later
  3956. */
  3957. EXTERN_API( void )
  3958. Pt2Rect(
  3959. Point pt1,
  3960. Point pt2,
  3961. Rect * dstRect) ONEWORDINLINE(0xA8AC);
  3962. /*
  3963. * PtToAngle()
  3964. *
  3965. * Availability:
  3966. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3967. * CarbonLib: in CarbonLib 1.0 and later
  3968. * Mac OS X: in version 10.0 and later
  3969. */
  3970. EXTERN_API( void )
  3971. PtToAngle(
  3972. const Rect * r,
  3973. Point pt,
  3974. short * angle) ONEWORDINLINE(0xA8C3);
  3975. /*
  3976. * SubPt()
  3977. *
  3978. * Availability:
  3979. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3980. * CarbonLib: in CarbonLib 1.0 and later
  3981. * Mac OS X: in version 10.0 and later
  3982. */
  3983. EXTERN_API( void )
  3984. SubPt(
  3985. Point src,
  3986. Point * dst) ONEWORDINLINE(0xA87F);
  3987. /*
  3988. * PtInRgn()
  3989. *
  3990. * Availability:
  3991. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3992. * CarbonLib: in CarbonLib 1.0 and later
  3993. * Mac OS X: in version 10.0 and later
  3994. */
  3995. EXTERN_API( Boolean )
  3996. PtInRgn(
  3997. Point pt,
  3998. RgnHandle rgn) ONEWORDINLINE(0xA8E8);
  3999. /*
  4000. * StdLine()
  4001. *
  4002. * Availability:
  4003. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4004. * CarbonLib: in CarbonLib 1.0 and later
  4005. * Mac OS X: in version 10.0 and later
  4006. */
  4007. EXTERN_API( void )
  4008. StdLine(Point newPt) ONEWORDINLINE(0xA890);
  4009. #if CALL_NOT_IN_CARBON
  4010. /*
  4011. * OpenCPort()
  4012. *
  4013. * Availability:
  4014. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4015. * CarbonLib: not available
  4016. * Mac OS X: not available
  4017. */
  4018. EXTERN_API( void )
  4019. OpenCPort(CGrafPtr port) ONEWORDINLINE(0xAA00);
  4020. /*
  4021. * InitCPort()
  4022. *
  4023. * Availability:
  4024. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4025. * CarbonLib: not available
  4026. * Mac OS X: not available
  4027. */
  4028. EXTERN_API( void )
  4029. InitCPort(CGrafPtr port) ONEWORDINLINE(0xAA01);
  4030. /*
  4031. * CloseCPort()
  4032. *
  4033. * Availability:
  4034. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4035. * CarbonLib: not available
  4036. * Mac OS X: not available
  4037. */
  4038. EXTERN_API( void )
  4039. CloseCPort(CGrafPtr port) ONEWORDINLINE(0xAA02);
  4040. #endif /* CALL_NOT_IN_CARBON */
  4041. /*
  4042. * NewPixMap()
  4043. *
  4044. * Availability:
  4045. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4046. * CarbonLib: in CarbonLib 1.0 and later
  4047. * Mac OS X: in version 10.0 and later
  4048. */
  4049. EXTERN_API( PixMapHandle )
  4050. NewPixMap(void) ONEWORDINLINE(0xAA03);
  4051. /*
  4052. * DisposePixMap()
  4053. *
  4054. * Availability:
  4055. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4056. * CarbonLib: in CarbonLib 1.0 and later
  4057. * Mac OS X: in version 10.0 and later
  4058. */
  4059. EXTERN_API( void )
  4060. DisposePixMap(PixMapHandle pm) ONEWORDINLINE(0xAA04);
  4061. /*
  4062. * CopyPixMap()
  4063. *
  4064. * Availability:
  4065. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4066. * CarbonLib: in CarbonLib 1.0 and later
  4067. * Mac OS X: in version 10.0 and later
  4068. */
  4069. EXTERN_API( void )
  4070. CopyPixMap(
  4071. PixMapHandle srcPM,
  4072. PixMapHandle dstPM) ONEWORDINLINE(0xAA05);
  4073. /*
  4074. * NewPixPat()
  4075. *
  4076. * Availability:
  4077. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4078. * CarbonLib: in CarbonLib 1.0 and later
  4079. * Mac OS X: in version 10.0 and later
  4080. */
  4081. EXTERN_API( PixPatHandle )
  4082. NewPixPat(void) ONEWORDINLINE(0xAA07);
  4083. /*
  4084. * DisposePixPat()
  4085. *
  4086. * Availability:
  4087. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4088. * CarbonLib: in CarbonLib 1.0 and later
  4089. * Mac OS X: in version 10.0 and later
  4090. */
  4091. EXTERN_API( void )
  4092. DisposePixPat(PixPatHandle pp) ONEWORDINLINE(0xAA08);
  4093. /*
  4094. * CopyPixPat()
  4095. *
  4096. * Availability:
  4097. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4098. * CarbonLib: in CarbonLib 1.0 and later
  4099. * Mac OS X: in version 10.0 and later
  4100. */
  4101. EXTERN_API( void )
  4102. CopyPixPat(
  4103. PixPatHandle srcPP,
  4104. PixPatHandle dstPP) ONEWORDINLINE(0xAA09);
  4105. /*
  4106. * PenPixPat()
  4107. *
  4108. * Availability:
  4109. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4110. * CarbonLib: in CarbonLib 1.0 and later
  4111. * Mac OS X: in version 10.0 and later
  4112. */
  4113. EXTERN_API( void )
  4114. PenPixPat(PixPatHandle pp) ONEWORDINLINE(0xAA0A);
  4115. /*
  4116. * BackPixPat()
  4117. *
  4118. * Availability:
  4119. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4120. * CarbonLib: in CarbonLib 1.0 and later
  4121. * Mac OS X: in version 10.0 and later
  4122. */
  4123. EXTERN_API( void )
  4124. BackPixPat(PixPatHandle pp) ONEWORDINLINE(0xAA0B);
  4125. /*
  4126. * GetPixPat()
  4127. *
  4128. * Availability:
  4129. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4130. * CarbonLib: in CarbonLib 1.0 and later
  4131. * Mac OS X: in version 10.0 and later
  4132. */
  4133. EXTERN_API( PixPatHandle )
  4134. GetPixPat(short patID) ONEWORDINLINE(0xAA0C);
  4135. /*
  4136. * MakeRGBPat()
  4137. *
  4138. * Availability:
  4139. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4140. * CarbonLib: in CarbonLib 1.0 and later
  4141. * Mac OS X: in version 10.0 and later
  4142. */
  4143. EXTERN_API( void )
  4144. MakeRGBPat(
  4145. PixPatHandle pp,
  4146. const RGBColor * myColor) ONEWORDINLINE(0xAA0D);
  4147. /*
  4148. * FillCRect()
  4149. *
  4150. * Availability:
  4151. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4152. * CarbonLib: in CarbonLib 1.0 and later
  4153. * Mac OS X: in version 10.0 and later
  4154. */
  4155. EXTERN_API( void )
  4156. FillCRect(
  4157. const Rect * r,
  4158. PixPatHandle pp) ONEWORDINLINE(0xAA0E);
  4159. /*
  4160. * FillCOval()
  4161. *
  4162. * Availability:
  4163. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4164. * CarbonLib: in CarbonLib 1.0 and later
  4165. * Mac OS X: in version 10.0 and later
  4166. */
  4167. EXTERN_API( void )
  4168. FillCOval(
  4169. const Rect * r,
  4170. PixPatHandle pp) ONEWORDINLINE(0xAA0F);
  4171. /*
  4172. * FillCRoundRect()
  4173. *
  4174. * Availability:
  4175. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4176. * CarbonLib: in CarbonLib 1.0 and later
  4177. * Mac OS X: in version 10.0 and later
  4178. */
  4179. EXTERN_API( void )
  4180. FillCRoundRect(
  4181. const Rect * r,
  4182. short ovalWidth,
  4183. short ovalHeight,
  4184. PixPatHandle pp) ONEWORDINLINE(0xAA10);
  4185. /*
  4186. * FillCArc()
  4187. *
  4188. * Availability:
  4189. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4190. * CarbonLib: in CarbonLib 1.0 and later
  4191. * Mac OS X: in version 10.0 and later
  4192. */
  4193. EXTERN_API( void )
  4194. FillCArc(
  4195. const Rect * r,
  4196. short startAngle,
  4197. short arcAngle,
  4198. PixPatHandle pp) ONEWORDINLINE(0xAA11);
  4199. /*
  4200. * FillCRgn()
  4201. *
  4202. * Availability:
  4203. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4204. * CarbonLib: in CarbonLib 1.0 and later
  4205. * Mac OS X: in version 10.0 and later
  4206. */
  4207. EXTERN_API( void )
  4208. FillCRgn(
  4209. RgnHandle rgn,
  4210. PixPatHandle pp) ONEWORDINLINE(0xAA12);
  4211. /*
  4212. * FillCPoly()
  4213. *
  4214. * Availability:
  4215. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4216. * CarbonLib: in CarbonLib 1.0 and later
  4217. * Mac OS X: in version 10.0 and later
  4218. */
  4219. EXTERN_API( void )
  4220. FillCPoly(
  4221. PolyHandle poly,
  4222. PixPatHandle pp) ONEWORDINLINE(0xAA13);
  4223. /*
  4224. * RGBForeColor()
  4225. *
  4226. * Availability:
  4227. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4228. * CarbonLib: in CarbonLib 1.0 and later
  4229. * Mac OS X: in version 10.0 and later
  4230. */
  4231. EXTERN_API( void )
  4232. RGBForeColor(const RGBColor * color) ONEWORDINLINE(0xAA14);
  4233. /*
  4234. * RGBBackColor()
  4235. *
  4236. * Availability:
  4237. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4238. * CarbonLib: in CarbonLib 1.0 and later
  4239. * Mac OS X: in version 10.0 and later
  4240. */
  4241. EXTERN_API( void )
  4242. RGBBackColor(const RGBColor * color) ONEWORDINLINE(0xAA15);
  4243. /*
  4244. * SetCPixel()
  4245. *
  4246. * Availability:
  4247. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4248. * CarbonLib: in CarbonLib 1.0 and later
  4249. * Mac OS X: in version 10.0 and later
  4250. */
  4251. EXTERN_API( void )
  4252. SetCPixel(
  4253. short h,
  4254. short v,
  4255. const RGBColor * cPix) ONEWORDINLINE(0xAA16);
  4256. /*
  4257. * SetPortPix()
  4258. *
  4259. * Availability:
  4260. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4261. * CarbonLib: in CarbonLib 1.0 and later
  4262. * Mac OS X: in version 10.0 and later
  4263. */
  4264. EXTERN_API( void )
  4265. SetPortPix(PixMapHandle pm) ONEWORDINLINE(0xAA06);
  4266. /*
  4267. * GetCPixel()
  4268. *
  4269. * Availability:
  4270. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4271. * CarbonLib: in CarbonLib 1.0 and later
  4272. * Mac OS X: in version 10.0 and later
  4273. */
  4274. EXTERN_API( void )
  4275. GetCPixel(
  4276. short h,
  4277. short v,
  4278. RGBColor * cPix) ONEWORDINLINE(0xAA17);
  4279. /*
  4280. * GetForeColor()
  4281. *
  4282. * Availability:
  4283. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4284. * CarbonLib: in CarbonLib 1.0 and later
  4285. * Mac OS X: in version 10.0 and later
  4286. */
  4287. EXTERN_API( void )
  4288. GetForeColor(RGBColor * color) ONEWORDINLINE(0xAA19);
  4289. /*
  4290. * GetBackColor()
  4291. *
  4292. * Availability:
  4293. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4294. * CarbonLib: in CarbonLib 1.0 and later
  4295. * Mac OS X: in version 10.0 and later
  4296. */
  4297. EXTERN_API( void )
  4298. GetBackColor(RGBColor * color) ONEWORDINLINE(0xAA1A);
  4299. /*
  4300. * SeedCFill()
  4301. *
  4302. * Availability:
  4303. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4304. * CarbonLib: in CarbonLib 1.0 and later
  4305. * Mac OS X: in version 10.0 and later
  4306. */
  4307. EXTERN_API( void )
  4308. SeedCFill(
  4309. const BitMap * srcBits,
  4310. const BitMap * dstBits,
  4311. const Rect * srcRect,
  4312. const Rect * dstRect,
  4313. short seedH,
  4314. short seedV,
  4315. ColorSearchUPP matchProc,
  4316. long matchData) ONEWORDINLINE(0xAA50);
  4317. /*
  4318. * CalcCMask()
  4319. *
  4320. * Availability:
  4321. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4322. * CarbonLib: in CarbonLib 1.0 and later
  4323. * Mac OS X: in version 10.0 and later
  4324. */
  4325. EXTERN_API( void )
  4326. CalcCMask(
  4327. const BitMap * srcBits,
  4328. const BitMap * dstBits,
  4329. const Rect * srcRect,
  4330. const Rect * dstRect,
  4331. const RGBColor * seedRGB,
  4332. ColorSearchUPP matchProc,
  4333. long matchData) ONEWORDINLINE(0xAA4F);
  4334. /*
  4335. * OpenCPicture()
  4336. *
  4337. * Availability:
  4338. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4339. * CarbonLib: in CarbonLib 1.0 and later
  4340. * Mac OS X: in version 10.0 and later
  4341. */
  4342. EXTERN_API( PicHandle )
  4343. OpenCPicture(const OpenCPicParams * newHeader) ONEWORDINLINE(0xAA20);
  4344. /*
  4345. * OpColor()
  4346. *
  4347. * Availability:
  4348. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4349. * CarbonLib: in CarbonLib 1.0 and later
  4350. * Mac OS X: in version 10.0 and later
  4351. */
  4352. EXTERN_API( void )
  4353. OpColor(const RGBColor * color) ONEWORDINLINE(0xAA21);
  4354. /*
  4355. * HiliteColor()
  4356. *
  4357. * Availability:
  4358. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4359. * CarbonLib: in CarbonLib 1.0 and later
  4360. * Mac OS X: in version 10.0 and later
  4361. */
  4362. EXTERN_API( void )
  4363. HiliteColor(const RGBColor * color) ONEWORDINLINE(0xAA22);
  4364. /*
  4365. * DisposeCTable()
  4366. *
  4367. * Availability:
  4368. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4369. * CarbonLib: in CarbonLib 1.0 and later
  4370. * Mac OS X: in version 10.0 and later
  4371. */
  4372. EXTERN_API( void )
  4373. DisposeCTable(CTabHandle cTable) ONEWORDINLINE(0xAA24);
  4374. /*
  4375. * GetCTable()
  4376. *
  4377. * Availability:
  4378. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4379. * CarbonLib: in CarbonLib 1.0 and later
  4380. * Mac OS X: in version 10.0 and later
  4381. */
  4382. EXTERN_API( CTabHandle )
  4383. GetCTable(short ctID) ONEWORDINLINE(0xAA18);
  4384. /*
  4385. * GetCCursor()
  4386. *
  4387. * Availability:
  4388. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4389. * CarbonLib: in CarbonLib 1.0 and later
  4390. * Mac OS X: in version 10.0 and later
  4391. */
  4392. EXTERN_API( CCrsrHandle )
  4393. GetCCursor(short crsrID) ONEWORDINLINE(0xAA1B);
  4394. /*
  4395. * SetCCursor()
  4396. *
  4397. * Availability:
  4398. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4399. * CarbonLib: in CarbonLib 1.0 and later
  4400. * Mac OS X: in version 10.0 and later
  4401. */
  4402. EXTERN_API( void )
  4403. SetCCursor(CCrsrHandle cCrsr) ONEWORDINLINE(0xAA1C);
  4404. /*
  4405. * AllocCursor()
  4406. *
  4407. * Availability:
  4408. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4409. * CarbonLib: in CarbonLib 1.0 and later
  4410. * Mac OS X: in version 10.0 and later
  4411. */
  4412. EXTERN_API( void )
  4413. AllocCursor(void) ONEWORDINLINE(0xAA1D);
  4414. /*
  4415. * DisposeCCursor()
  4416. *
  4417. * Availability:
  4418. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4419. * CarbonLib: in CarbonLib 1.0 and later
  4420. * Mac OS X: in version 10.0 and later
  4421. */
  4422. EXTERN_API( void )
  4423. DisposeCCursor(CCrsrHandle cCrsr) ONEWORDINLINE(0xAA26);
  4424. /* GetCIcon(), PlotCIcon(), and DisposeCIcon() moved to Icons.h*/
  4425. /*
  4426. * SetStdCProcs()
  4427. *
  4428. * Availability:
  4429. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4430. * CarbonLib: in CarbonLib 1.0 and later
  4431. * Mac OS X: in version 10.0 and later
  4432. */
  4433. EXTERN_API( void )
  4434. SetStdCProcs(CQDProcs * procs) ONEWORDINLINE(0xAA4E);
  4435. /*
  4436. * GetMaxDevice()
  4437. *
  4438. * Availability:
  4439. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4440. * CarbonLib: in CarbonLib 1.0 and later
  4441. * Mac OS X: in version 10.0 and later
  4442. */
  4443. EXTERN_API( GDHandle )
  4444. GetMaxDevice(const Rect * globalRect) ONEWORDINLINE(0xAA27);
  4445. /*
  4446. * GetCTSeed()
  4447. *
  4448. * Availability:
  4449. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4450. * CarbonLib: in CarbonLib 1.0 and later
  4451. * Mac OS X: in version 10.0 and later
  4452. */
  4453. EXTERN_API( long )
  4454. GetCTSeed(void) ONEWORDINLINE(0xAA28);
  4455. /*
  4456. * GetDeviceList()
  4457. *
  4458. * Availability:
  4459. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4460. * CarbonLib: in CarbonLib 1.0 and later
  4461. * Mac OS X: in version 10.0 and later
  4462. */
  4463. EXTERN_API( GDHandle )
  4464. GetDeviceList(void) ONEWORDINLINE(0xAA29);
  4465. /*
  4466. * GetMainDevice()
  4467. *
  4468. * Availability:
  4469. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4470. * CarbonLib: in CarbonLib 1.0 and later
  4471. * Mac OS X: in version 10.0 and later
  4472. */
  4473. EXTERN_API( GDHandle )
  4474. GetMainDevice(void) ONEWORDINLINE(0xAA2A);
  4475. /*
  4476. * GetNextDevice()
  4477. *
  4478. * Availability:
  4479. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4480. * CarbonLib: in CarbonLib 1.0 and later
  4481. * Mac OS X: in version 10.0 and later
  4482. */
  4483. EXTERN_API( GDHandle )
  4484. GetNextDevice(GDHandle curDevice) ONEWORDINLINE(0xAA2B);
  4485. /*
  4486. * TestDeviceAttribute()
  4487. *
  4488. * Availability:
  4489. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4490. * CarbonLib: in CarbonLib 1.0 and later
  4491. * Mac OS X: in version 10.0 and later
  4492. */
  4493. EXTERN_API( Boolean )
  4494. TestDeviceAttribute(
  4495. GDHandle gdh,
  4496. short attribute) ONEWORDINLINE(0xAA2C);
  4497. /*
  4498. * SetDeviceAttribute()
  4499. *
  4500. * Availability:
  4501. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4502. * CarbonLib: in CarbonLib 1.0 and later
  4503. * Mac OS X: in version 10.0 and later
  4504. */
  4505. EXTERN_API( void )
  4506. SetDeviceAttribute(
  4507. GDHandle gdh,
  4508. short attribute,
  4509. Boolean value) ONEWORDINLINE(0xAA2D);
  4510. /*
  4511. * InitGDevice()
  4512. *
  4513. * Availability:
  4514. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4515. * CarbonLib: in CarbonLib 1.0 and later
  4516. * Mac OS X: in version 10.0 and later
  4517. */
  4518. EXTERN_API( void )
  4519. InitGDevice(
  4520. short qdRefNum,
  4521. long mode,
  4522. GDHandle gdh) ONEWORDINLINE(0xAA2E);
  4523. /*
  4524. * NewGDevice()
  4525. *
  4526. * Availability:
  4527. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4528. * CarbonLib: in CarbonLib 1.0 and later
  4529. * Mac OS X: in version 10.0 and later
  4530. */
  4531. EXTERN_API( GDHandle )
  4532. NewGDevice(
  4533. short refNum,
  4534. long mode) ONEWORDINLINE(0xAA2F);
  4535. /*
  4536. * DisposeGDevice()
  4537. *
  4538. * Availability:
  4539. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4540. * CarbonLib: in CarbonLib 1.0 and later
  4541. * Mac OS X: in version 10.0 and later
  4542. */
  4543. EXTERN_API( void )
  4544. DisposeGDevice(GDHandle gdh) ONEWORDINLINE(0xAA30);
  4545. /*
  4546. * SetGDevice()
  4547. *
  4548. * Availability:
  4549. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4550. * CarbonLib: in CarbonLib 1.0 and later
  4551. * Mac OS X: in version 10.0 and later
  4552. */
  4553. EXTERN_API( void )
  4554. SetGDevice(GDHandle gd) ONEWORDINLINE(0xAA31);
  4555. /*
  4556. * GetGDevice()
  4557. *
  4558. * Availability:
  4559. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4560. * CarbonLib: in CarbonLib 1.0 and later
  4561. * Mac OS X: in version 10.0 and later
  4562. */
  4563. EXTERN_API( GDHandle )
  4564. GetGDevice(void) ONEWORDINLINE(0xAA32);
  4565. /*
  4566. * Color2Index()
  4567. *
  4568. * Availability:
  4569. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4570. * CarbonLib: in CarbonLib 1.0 and later
  4571. * Mac OS X: in version 10.0 and later
  4572. */
  4573. EXTERN_API( long )
  4574. Color2Index(const RGBColor * myColor) ONEWORDINLINE(0xAA33);
  4575. /*
  4576. * Index2Color()
  4577. *
  4578. * Availability:
  4579. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4580. * CarbonLib: in CarbonLib 1.0 and later
  4581. * Mac OS X: in version 10.0 and later
  4582. */
  4583. EXTERN_API( void )
  4584. Index2Color(
  4585. long index,
  4586. RGBColor * aColor) ONEWORDINLINE(0xAA34);
  4587. /*
  4588. * InvertColor()
  4589. *
  4590. * Availability:
  4591. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4592. * CarbonLib: in CarbonLib 1.0 and later
  4593. * Mac OS X: in version 10.0 and later
  4594. */
  4595. EXTERN_API( void )
  4596. InvertColor(RGBColor * myColor) ONEWORDINLINE(0xAA35);
  4597. /*
  4598. * RealColor()
  4599. *
  4600. * Availability:
  4601. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4602. * CarbonLib: in CarbonLib 1.0 and later
  4603. * Mac OS X: in version 10.0 and later
  4604. */
  4605. EXTERN_API( Boolean )
  4606. RealColor(const RGBColor * color) ONEWORDINLINE(0xAA36);
  4607. /*
  4608. * GetSubTable()
  4609. *
  4610. * Availability:
  4611. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4612. * CarbonLib: in CarbonLib 1.0 and later
  4613. * Mac OS X: in version 10.0 and later
  4614. */
  4615. EXTERN_API( void )
  4616. GetSubTable(
  4617. CTabHandle myColors,
  4618. short iTabRes,
  4619. CTabHandle targetTbl) ONEWORDINLINE(0xAA37);
  4620. /*
  4621. * MakeITable()
  4622. *
  4623. * Availability:
  4624. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4625. * CarbonLib: in CarbonLib 1.0 and later
  4626. * Mac OS X: in version 10.0 and later
  4627. */
  4628. EXTERN_API( void )
  4629. MakeITable(
  4630. CTabHandle cTabH,
  4631. ITabHandle iTabH,
  4632. short res) ONEWORDINLINE(0xAA39);
  4633. /*
  4634. * AddSearch()
  4635. *
  4636. * Availability:
  4637. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4638. * CarbonLib: in CarbonLib 1.0 and later
  4639. * Mac OS X: in version 10.0 and later
  4640. */
  4641. EXTERN_API( void )
  4642. AddSearch(ColorSearchUPP searchProc) ONEWORDINLINE(0xAA3A);
  4643. /*
  4644. * AddComp()
  4645. *
  4646. * Availability:
  4647. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4648. * CarbonLib: in CarbonLib 1.0 and later
  4649. * Mac OS X: in version 10.0 and later
  4650. */
  4651. EXTERN_API( void )
  4652. AddComp(ColorComplementUPP compProc) ONEWORDINLINE(0xAA3B);
  4653. /*
  4654. * DelSearch()
  4655. *
  4656. * Availability:
  4657. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4658. * CarbonLib: in CarbonLib 1.0 and later
  4659. * Mac OS X: in version 10.0 and later
  4660. */
  4661. EXTERN_API( void )
  4662. DelSearch(ColorSearchUPP searchProc) ONEWORDINLINE(0xAA4C);
  4663. /*
  4664. * DelComp()
  4665. *
  4666. * Availability:
  4667. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4668. * CarbonLib: in CarbonLib 1.0 and later
  4669. * Mac OS X: in version 10.0 and later
  4670. */
  4671. EXTERN_API( void )
  4672. DelComp(ColorComplementUPP compProc) ONEWORDINLINE(0xAA4D);
  4673. /*
  4674. * SetClientID()
  4675. *
  4676. * Availability:
  4677. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4678. * CarbonLib: in CarbonLib 1.0 and later
  4679. * Mac OS X: in version 10.0 and later
  4680. */
  4681. EXTERN_API( void )
  4682. SetClientID(short id) ONEWORDINLINE(0xAA3C);
  4683. /*
  4684. * ProtectEntry()
  4685. *
  4686. * Availability:
  4687. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4688. * CarbonLib: in CarbonLib 1.0 and later
  4689. * Mac OS X: in version 10.0 and later
  4690. */
  4691. EXTERN_API( void )
  4692. ProtectEntry(
  4693. short index,
  4694. Boolean protect) ONEWORDINLINE(0xAA3D);
  4695. /*
  4696. * ReserveEntry()
  4697. *
  4698. * Availability:
  4699. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4700. * CarbonLib: in CarbonLib 1.0 and later
  4701. * Mac OS X: in version 10.0 and later
  4702. */
  4703. EXTERN_API( void )
  4704. ReserveEntry(
  4705. short index,
  4706. Boolean reserve) ONEWORDINLINE(0xAA3E);
  4707. /*
  4708. * SetEntries()
  4709. *
  4710. * Availability:
  4711. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4712. * CarbonLib: in CarbonLib 1.0 and later
  4713. * Mac OS X: in version 10.0 and later
  4714. */
  4715. EXTERN_API( void )
  4716. SetEntries(
  4717. short start,
  4718. short count,
  4719. CSpecArray aTable) ONEWORDINLINE(0xAA3F);
  4720. /*
  4721. * SaveEntries()
  4722. *
  4723. * Availability:
  4724. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4725. * CarbonLib: in CarbonLib 1.0 and later
  4726. * Mac OS X: in version 10.0 and later
  4727. */
  4728. EXTERN_API( void )
  4729. SaveEntries(
  4730. CTabHandle srcTable,
  4731. CTabHandle resultTable,
  4732. ReqListRec * selection) ONEWORDINLINE(0xAA49);
  4733. /*
  4734. * RestoreEntries()
  4735. *
  4736. * Availability:
  4737. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4738. * CarbonLib: in CarbonLib 1.0 and later
  4739. * Mac OS X: in version 10.0 and later
  4740. */
  4741. EXTERN_API( void )
  4742. RestoreEntries(
  4743. CTabHandle srcTable,
  4744. CTabHandle dstTable,
  4745. ReqListRec * selection) ONEWORDINLINE(0xAA4A);
  4746. /*
  4747. * QDError()
  4748. *
  4749. * Availability:
  4750. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4751. * CarbonLib: in CarbonLib 1.0 and later
  4752. * Mac OS X: in version 10.0 and later
  4753. */
  4754. EXTERN_API( short )
  4755. QDError(void) ONEWORDINLINE(0xAA40);
  4756. /*
  4757. * CopyDeepMask()
  4758. *
  4759. * Availability:
  4760. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4761. * CarbonLib: in CarbonLib 1.0 and later
  4762. * Mac OS X: in version 10.0 and later
  4763. */
  4764. EXTERN_API( void )
  4765. CopyDeepMask(
  4766. const BitMap * srcBits,
  4767. const BitMap * maskBits,
  4768. const BitMap * dstBits,
  4769. const Rect * srcRect,
  4770. const Rect * maskRect,
  4771. const Rect * dstRect,
  4772. short mode,
  4773. RgnHandle maskRgn) /* can be NULL */ ONEWORDINLINE(0xAA51);
  4774. /*
  4775. * DeviceLoop()
  4776. *
  4777. * Availability:
  4778. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4779. * CarbonLib: in CarbonLib 1.0 and later
  4780. * Mac OS X: in version 10.0 and later
  4781. */
  4782. EXTERN_API( void )
  4783. DeviceLoop(
  4784. RgnHandle drawingRgn,
  4785. DeviceLoopDrawingUPP drawingProc,
  4786. long userData,
  4787. DeviceLoopFlags flags) ONEWORDINLINE(0xABCA);
  4788. /*
  4789. * GetMaskTable()
  4790. *
  4791. * Availability:
  4792. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4793. * CarbonLib: in CarbonLib 1.0 and later
  4794. * Mac OS X: in version 10.0 and later
  4795. */
  4796. #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  4797. #pragma parameter __A0 GetMaskTable
  4798. #endif
  4799. EXTERN_API( Ptr )
  4800. GetMaskTable(void) ONEWORDINLINE(0xA836);
  4801. /*
  4802. * GetPattern()
  4803. *
  4804. * Availability:
  4805. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4806. * CarbonLib: in CarbonLib 1.0 and later
  4807. * Mac OS X: in version 10.0 and later
  4808. */
  4809. EXTERN_API( PatHandle )
  4810. GetPattern(short patternID) ONEWORDINLINE(0xA9B8);
  4811. /*
  4812. * [Mac]GetCursor()
  4813. *
  4814. * Availability:
  4815. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4816. * CarbonLib: in CarbonLib 1.0 and later
  4817. * Mac OS X: in version 10.0 and later
  4818. */
  4819. #if TARGET_OS_MAC
  4820. #define MacGetCursor GetCursor
  4821. #endif
  4822. EXTERN_API( CursHandle )
  4823. MacGetCursor(short cursorID) ONEWORDINLINE(0xA9B9);
  4824. /*
  4825. * GetPicture()
  4826. *
  4827. * Availability:
  4828. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4829. * CarbonLib: in CarbonLib 1.0 and later
  4830. * Mac OS X: in version 10.0 and later
  4831. */
  4832. EXTERN_API( PicHandle )
  4833. GetPicture(short pictureID) ONEWORDINLINE(0xA9BC);
  4834. /*
  4835. * DeltaPoint()
  4836. *
  4837. * Availability:
  4838. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4839. * CarbonLib: in CarbonLib 1.0 and later
  4840. * Mac OS X: in version 10.0 and later
  4841. */
  4842. EXTERN_API( long )
  4843. DeltaPoint(
  4844. Point ptA,
  4845. Point ptB) ONEWORDINLINE(0xA94F);
  4846. /*
  4847. * ShieldCursor()
  4848. *
  4849. * Availability:
  4850. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4851. * CarbonLib: in CarbonLib 1.0 and later
  4852. * Mac OS X: in version 10.0 and later
  4853. */
  4854. EXTERN_API( void )
  4855. ShieldCursor(
  4856. const Rect * shieldRect,
  4857. Point offsetPt) ONEWORDINLINE(0xA855);
  4858. /*
  4859. * ScreenRes()
  4860. *
  4861. * Availability:
  4862. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4863. * CarbonLib: in CarbonLib 1.0 and later
  4864. * Mac OS X: in version 10.0 and later
  4865. */
  4866. EXTERN_API( void )
  4867. ScreenRes(
  4868. short * scrnHRes,
  4869. short * scrnVRes) SIXWORDINLINE(0x225F, 0x32B8, 0x0102, 0x225F, 0x32B8, 0x0104);
  4870. /*
  4871. * GetIndPattern()
  4872. *
  4873. * Availability:
  4874. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4875. * CarbonLib: in CarbonLib 1.0 and later
  4876. * Mac OS X: in version 10.0 and later
  4877. */
  4878. EXTERN_API( void )
  4879. GetIndPattern(
  4880. Pattern * thePat,
  4881. short patternListID,
  4882. short index);
  4883. #if CALL_NOT_IN_CARBON
  4884. /*
  4885. * ptinrect()
  4886. *
  4887. * Availability:
  4888. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4889. * CarbonLib: not available
  4890. * Mac OS X: not available
  4891. */
  4892. EXTERN_API_C( Boolean )
  4893. ptinrect(
  4894. const Point * pt,
  4895. const Rect * r);
  4896. /*
  4897. * pt2rect()
  4898. *
  4899. * Availability:
  4900. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4901. * CarbonLib: not available
  4902. * Mac OS X: not available
  4903. */
  4904. EXTERN_API_C( void )
  4905. pt2rect(
  4906. const Point * pt1,
  4907. const Point * pt2,
  4908. Rect * destRect);
  4909. /*
  4910. * pttoangle()
  4911. *
  4912. * Availability:
  4913. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4914. * CarbonLib: not available
  4915. * Mac OS X: not available
  4916. */
  4917. EXTERN_API_C( void )
  4918. pttoangle(
  4919. const Rect * r,
  4920. const Point * pt,
  4921. short * angle);
  4922. /*
  4923. * ptinrgn()
  4924. *
  4925. * Availability:
  4926. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4927. * CarbonLib: not available
  4928. * Mac OS X: not available
  4929. */
  4930. EXTERN_API_C( Boolean )
  4931. ptinrgn(
  4932. const Point * pt,
  4933. RgnHandle rgn);
  4934. /*
  4935. * addpt()
  4936. *
  4937. * Availability:
  4938. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4939. * CarbonLib: not available
  4940. * Mac OS X: not available
  4941. */
  4942. EXTERN_API_C( void )
  4943. addpt(
  4944. const Point * src,
  4945. Point * dst);
  4946. /*
  4947. * subpt()
  4948. *
  4949. * Availability:
  4950. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4951. * CarbonLib: not available
  4952. * Mac OS X: not available
  4953. */
  4954. EXTERN_API_C( void )
  4955. subpt(
  4956. const Point * src,
  4957. Point * dst);
  4958. /*
  4959. * equalpt()
  4960. *
  4961. * Availability:
  4962. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4963. * CarbonLib: not available
  4964. * Mac OS X: not available
  4965. */
  4966. EXTERN_API_C( Boolean )
  4967. equalpt(
  4968. const Point * pt1,
  4969. const Point * pt2);
  4970. /*
  4971. * stuffhex()
  4972. *
  4973. * Availability:
  4974. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4975. * CarbonLib: not available
  4976. * Mac OS X: not available
  4977. */
  4978. EXTERN_API_C( void )
  4979. stuffhex(
  4980. void * thingPtr,
  4981. const char * s);
  4982. /*
  4983. * stdline()
  4984. *
  4985. * Availability:
  4986. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4987. * CarbonLib: not available
  4988. * Mac OS X: not available
  4989. */
  4990. EXTERN_API_C( void )
  4991. stdline(const Point * newPt);
  4992. /*
  4993. * shieldcursor()
  4994. *
  4995. * Availability:
  4996. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  4997. * CarbonLib: not available
  4998. * Mac OS X: not available
  4999. */
  5000. EXTERN_API_C( void )
  5001. shieldcursor(
  5002. const Rect * shieldRect,
  5003. Point * offsetPt);
  5004. #endif /* CALL_NOT_IN_CARBON */
  5005. /*
  5006. * deltapoint()
  5007. *
  5008. * Availability:
  5009. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5010. * CarbonLib: in CarbonLib 1.0 and later
  5011. * Mac OS X: in version 10.0 and later
  5012. */
  5013. EXTERN_API_C( long )
  5014. deltapoint(
  5015. Point * ptA,
  5016. Point * ptB);
  5017. #if OLDROUTINENAMES
  5018. #define DisposPixMap(pm) DisposePixMap(pm)
  5019. #define DisposPixPat(pp) DisposePixPat(pp)
  5020. #define DisposCTable(cTable) DisposeCTable(cTable)
  5021. #define DisposCCursor(cCrsr) DisposeCCursor(cCrsr)
  5022. #define DisposGDevice(gdh) DisposeGDevice(gdh)
  5023. #endif /* OLDROUTINENAMES */
  5024. /*
  5025. From ToolUtils.i
  5026. */
  5027. /*
  5028. * PackBits()
  5029. *
  5030. * Availability:
  5031. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5032. * CarbonLib: in CarbonLib 1.0 and later
  5033. * Mac OS X: in version 10.0 and later
  5034. */
  5035. EXTERN_API( void )
  5036. PackBits(
  5037. Ptr * srcPtr,
  5038. Ptr * dstPtr,
  5039. short srcBytes) ONEWORDINLINE(0xA8CF);
  5040. /*
  5041. * UnpackBits()
  5042. *
  5043. * Availability:
  5044. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5045. * CarbonLib: in CarbonLib 1.0 and later
  5046. * Mac OS X: in version 10.0 and later
  5047. */
  5048. EXTERN_API( void )
  5049. UnpackBits(
  5050. Ptr * srcPtr,
  5051. Ptr * dstPtr,
  5052. short dstBytes) ONEWORDINLINE(0xA8D0);
  5053. /*
  5054. * SlopeFromAngle()
  5055. *
  5056. * Availability:
  5057. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5058. * CarbonLib: in CarbonLib 1.0 and later
  5059. * Mac OS X: in version 10.0 and later
  5060. */
  5061. EXTERN_API( Fixed )
  5062. SlopeFromAngle(short angle) ONEWORDINLINE(0xA8BC);
  5063. /*
  5064. * AngleFromSlope()
  5065. *
  5066. * Availability:
  5067. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5068. * CarbonLib: in CarbonLib 1.0 and later
  5069. * Mac OS X: in version 10.0 and later
  5070. */
  5071. EXTERN_API( short )
  5072. AngleFromSlope(Fixed slope) ONEWORDINLINE(0xA8C4);
  5073. /* New transfer modes */
  5074. enum {
  5075. colorXorXFer = 52,
  5076. noiseXFer = 53,
  5077. customXFer = 54
  5078. };
  5079. /* Custom XFer flags */
  5080. enum {
  5081. kXFer1PixelAtATime = 0x00000001, /* 1 pixel passed to custom XFer proc*/
  5082. kXFerConvertPixelToRGB32 = 0x00000002 /* All color depths converted to 32 bit RGB*/
  5083. };
  5084. struct CustomXFerRec {
  5085. UInt32 version;
  5086. void * srcPixels;
  5087. void * destPixels;
  5088. void * resultPixels;
  5089. UInt32 refCon;
  5090. UInt32 pixelSize;
  5091. UInt32 pixelCount;
  5092. Point firstPixelHV;
  5093. Rect destBounds;
  5094. };
  5095. typedef struct CustomXFerRec CustomXFerRec;
  5096. typedef CustomXFerRec * CustomXFerRecPtr;
  5097. typedef CALLBACK_API( void , CustomXFerProcPtr )(CustomXFerRecPtr info);
  5098. /*
  5099. * GetPortCustomXFerProc()
  5100. *
  5101. * Availability:
  5102. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5103. * CarbonLib: in CarbonLib 1.0 and later
  5104. * Mac OS X: in version 10.0 and later
  5105. */
  5106. EXTERN_API( OSErr )
  5107. GetPortCustomXFerProc(
  5108. CGrafPtr port,
  5109. CustomXFerProcPtr * proc,
  5110. UInt32 * flags,
  5111. UInt32 * refCon) FOURWORDINLINE(0x203C, 0x0010, 0x0019, 0xAB1D);
  5112. /*
  5113. * SetPortCustomXFerProc()
  5114. *
  5115. * Availability:
  5116. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5117. * CarbonLib: in CarbonLib 1.0 and later
  5118. * Mac OS X: in version 10.0 and later
  5119. */
  5120. EXTERN_API( OSErr )
  5121. SetPortCustomXFerProc(
  5122. CGrafPtr port,
  5123. CustomXFerProcPtr proc,
  5124. UInt32 flags,
  5125. UInt32 refCon) FOURWORDINLINE(0x203C, 0x0010, 0x001A, 0xAB1D);
  5126. enum {
  5127. kCursorComponentsVersion = 0x00010001
  5128. };
  5129. enum {
  5130. kCursorComponentType = FOUR_CHAR_CODE('curs')
  5131. };
  5132. /* Cursor Component capabilities flags */
  5133. enum {
  5134. cursorDoesAnimate = 1L << 0,
  5135. cursorDoesHardware = 1L << 1,
  5136. cursorDoesUnreadableScreenBits = 1L << 2
  5137. };
  5138. /* Cursor Component output mode flags */
  5139. enum {
  5140. kRenderCursorInHardware = 1L << 0,
  5141. kRenderCursorInSoftware = 1L << 1
  5142. };
  5143. /* Cursor Component Info */
  5144. struct CursorInfo {
  5145. long version; /* use kCursorComponentsVersion */
  5146. long capabilities;
  5147. long animateDuration; /* approximate time between animate tickles */
  5148. Rect bounds;
  5149. Point hotspot;
  5150. long reserved; /* must set to zero */
  5151. };
  5152. typedef struct CursorInfo CursorInfo;
  5153. /* Cursor Component Selectors */
  5154. enum {
  5155. kCursorComponentInit = 0x0001,
  5156. kCursorComponentGetInfo = 0x0002,
  5157. kCursorComponentSetOutputMode = 0x0003,
  5158. kCursorComponentSetData = 0x0004,
  5159. kCursorComponentReconfigure = 0x0005,
  5160. kCursorComponentDraw = 0x0006,
  5161. kCursorComponentErase = 0x0007,
  5162. kCursorComponentMove = 0x0008,
  5163. kCursorComponentAnimate = 0x0009,
  5164. kCursorComponentLastReserved = 0x0050
  5165. };
  5166. /*
  5167. * OpenCursorComponent()
  5168. *
  5169. * Availability:
  5170. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5171. * CarbonLib: in CarbonLib 1.0 and later
  5172. * Mac OS X: in version 10.0 and later
  5173. */
  5174. EXTERN_API( OSErr )
  5175. OpenCursorComponent(
  5176. Component c,
  5177. ComponentInstance * ci) FOURWORDINLINE(0x203C, 0x0008, 0x000B, 0xABE0);
  5178. /*
  5179. * CloseCursorComponent()
  5180. *
  5181. * Availability:
  5182. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5183. * CarbonLib: in CarbonLib 1.0 and later
  5184. * Mac OS X: in version 10.0 and later
  5185. */
  5186. EXTERN_API( OSErr )
  5187. CloseCursorComponent(ComponentInstance ci) FOURWORDINLINE(0x203C, 0x0004, 0x000C, 0xABE0);
  5188. /*
  5189. * SetCursorComponent()
  5190. *
  5191. * Availability:
  5192. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5193. * CarbonLib: in CarbonLib 1.0 and later
  5194. * Mac OS X: in version 10.0 and later
  5195. */
  5196. EXTERN_API( OSErr )
  5197. SetCursorComponent(ComponentInstance ci) FOURWORDINLINE(0x203C, 0x0004, 0x000D, 0xABE0);
  5198. /*
  5199. * CursorComponentChanged()
  5200. *
  5201. * Availability:
  5202. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5203. * CarbonLib: in CarbonLib 1.0 and later
  5204. * Mac OS X: in version 10.0 and later
  5205. */
  5206. EXTERN_API( OSErr )
  5207. CursorComponentChanged(ComponentInstance ci) FOURWORDINLINE(0x203C, 0x0004, 0x000E, 0xABE0);
  5208. /*
  5209. * CursorComponentSetData()
  5210. *
  5211. * Availability:
  5212. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5213. * CarbonLib: in CarbonLib 1.0 and later
  5214. * Mac OS X: in version 10.0 and later
  5215. */
  5216. EXTERN_API( OSErr )
  5217. CursorComponentSetData(
  5218. ComponentInstance ci,
  5219. long data) FOURWORDINLINE(0x203C, 0x0008, 0x000F, 0xABE0);
  5220. /* Quickdraw-specific ColorSync matching */
  5221. /* Available in CarbonLib... */
  5222. /*
  5223. * IsValidPort()
  5224. *
  5225. * Availability:
  5226. * Non-Carbon CFM: not available
  5227. * CarbonLib: in CarbonLib 1.1 and later
  5228. * Mac OS X: in version 10.0 and later
  5229. */
  5230. EXTERN_API( Boolean )
  5231. IsValidPort(CGrafPtr port);
  5232. #if ACCESSOR_CALLS_ARE_FUNCTIONS
  5233. /* GrafPort */
  5234. /* Getters */
  5235. /*
  5236. * GetPortPixMap()
  5237. *
  5238. * Availability:
  5239. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5240. * CarbonLib: in CarbonLib 1.0 and later
  5241. * Mac OS X: in version 10.0 and later
  5242. */
  5243. EXTERN_API( PixMapHandle )
  5244. GetPortPixMap(CGrafPtr port);
  5245. /*
  5246. * GetPortBitMapForCopyBits()
  5247. *
  5248. * Discussion:
  5249. * GetPortBitMapForCopyBits is provided for the specific purpose of
  5250. * using the return value as a parameter to CopyBits. The return
  5251. * value can be used as the srcBits or dstBits parameter to CopyBits
  5252. * regardless of whether the port is color. If the port parameter is
  5253. * a color port, however, the returned BitMapPtr does not actually
  5254. * point to a BitMap; it points to the PixMapHandle and other fields
  5255. * in the CGrafPort structure. You should not dereference the
  5256. * BitMapPtr or otherwise depend on its contents unless you've
  5257. * confirmed that this port is a non-color port.
  5258. *
  5259. * Availability:
  5260. * Non-Carbon CFM: in CarbonAccessors.o 1.0.2 and later
  5261. * CarbonLib: in CarbonLib 1.0.2 and later
  5262. * Mac OS X: in version 10.0 and later
  5263. */
  5264. EXTERN_API( const BitMap * )
  5265. GetPortBitMapForCopyBits(CGrafPtr port);
  5266. /*
  5267. * GetPortBounds()
  5268. *
  5269. * Availability:
  5270. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5271. * CarbonLib: in CarbonLib 1.0 and later
  5272. * Mac OS X: in version 10.0 and later
  5273. */
  5274. EXTERN_API( Rect * )
  5275. GetPortBounds(
  5276. CGrafPtr port,
  5277. Rect * rect);
  5278. /*
  5279. * GetPortForeColor()
  5280. *
  5281. * Availability:
  5282. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5283. * CarbonLib: in CarbonLib 1.0 and later
  5284. * Mac OS X: in version 10.0 and later
  5285. */
  5286. EXTERN_API( RGBColor * )
  5287. GetPortForeColor(
  5288. CGrafPtr port,
  5289. RGBColor * foreColor);
  5290. /*
  5291. * GetPortBackColor()
  5292. *
  5293. * Availability:
  5294. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5295. * CarbonLib: in CarbonLib 1.0 and later
  5296. * Mac OS X: in version 10.0 and later
  5297. */
  5298. EXTERN_API( RGBColor * )
  5299. GetPortBackColor(
  5300. CGrafPtr port,
  5301. RGBColor * backColor);
  5302. /*
  5303. * GetPortOpColor()
  5304. *
  5305. * Availability:
  5306. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5307. * CarbonLib: in CarbonLib 1.0 and later
  5308. * Mac OS X: in version 10.0 and later
  5309. */
  5310. EXTERN_API( RGBColor * )
  5311. GetPortOpColor(
  5312. CGrafPtr port,
  5313. RGBColor * opColor);
  5314. /*
  5315. * GetPortHiliteColor()
  5316. *
  5317. * Availability:
  5318. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5319. * CarbonLib: in CarbonLib 1.0 and later
  5320. * Mac OS X: in version 10.0 and later
  5321. */
  5322. EXTERN_API( RGBColor * )
  5323. GetPortHiliteColor(
  5324. CGrafPtr port,
  5325. RGBColor * hiliteColor);
  5326. /*
  5327. * GetPortGrafProcs()
  5328. *
  5329. * Availability:
  5330. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5331. * CarbonLib: in CarbonLib 1.0 and later
  5332. * Mac OS X: in version 10.0 and later
  5333. */
  5334. EXTERN_API( CQDProcsPtr )
  5335. GetPortGrafProcs(CGrafPtr port);
  5336. /*
  5337. * GetPortTextFont()
  5338. *
  5339. * Availability:
  5340. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5341. * CarbonLib: in CarbonLib 1.0 and later
  5342. * Mac OS X: in version 10.0 and later
  5343. */
  5344. EXTERN_API( short )
  5345. GetPortTextFont(CGrafPtr port);
  5346. /*
  5347. * GetPortTextFace()
  5348. *
  5349. * Availability:
  5350. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5351. * CarbonLib: in CarbonLib 1.0 and later
  5352. * Mac OS X: in version 10.0 and later
  5353. */
  5354. EXTERN_API( Style )
  5355. GetPortTextFace(CGrafPtr port);
  5356. /*
  5357. * GetPortTextMode()
  5358. *
  5359. * Availability:
  5360. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5361. * CarbonLib: in CarbonLib 1.0 and later
  5362. * Mac OS X: in version 10.0 and later
  5363. */
  5364. EXTERN_API( short )
  5365. GetPortTextMode(CGrafPtr port);
  5366. /*
  5367. * GetPortTextSize()
  5368. *
  5369. * Availability:
  5370. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5371. * CarbonLib: in CarbonLib 1.0 and later
  5372. * Mac OS X: in version 10.0 and later
  5373. */
  5374. EXTERN_API( short )
  5375. GetPortTextSize(CGrafPtr port);
  5376. /*
  5377. * GetPortChExtra()
  5378. *
  5379. * Availability:
  5380. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5381. * CarbonLib: in CarbonLib 1.0 and later
  5382. * Mac OS X: in version 10.0 and later
  5383. */
  5384. EXTERN_API( short )
  5385. GetPortChExtra(CGrafPtr port);
  5386. /*
  5387. * GetPortFracHPenLocation()
  5388. *
  5389. * Availability:
  5390. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5391. * CarbonLib: in CarbonLib 1.0 and later
  5392. * Mac OS X: in version 10.0 and later
  5393. */
  5394. EXTERN_API( short )
  5395. GetPortFracHPenLocation(CGrafPtr port);
  5396. /*
  5397. * GetPortSpExtra()
  5398. *
  5399. * Availability:
  5400. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5401. * CarbonLib: in CarbonLib 1.0 and later
  5402. * Mac OS X: in version 10.0 and later
  5403. */
  5404. EXTERN_API( Fixed )
  5405. GetPortSpExtra(CGrafPtr port);
  5406. /*
  5407. * GetPortPenVisibility()
  5408. *
  5409. * Availability:
  5410. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5411. * CarbonLib: in CarbonLib 1.0 and later
  5412. * Mac OS X: in version 10.0 and later
  5413. */
  5414. EXTERN_API( short )
  5415. GetPortPenVisibility(CGrafPtr port);
  5416. /*
  5417. * GetPortVisibleRegion()
  5418. *
  5419. * Availability:
  5420. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5421. * CarbonLib: in CarbonLib 1.0 and later
  5422. * Mac OS X: in version 10.0 and later
  5423. */
  5424. EXTERN_API( RgnHandle )
  5425. GetPortVisibleRegion(
  5426. CGrafPtr port,
  5427. RgnHandle visRgn);
  5428. /*
  5429. * GetPortClipRegion()
  5430. *
  5431. * Availability:
  5432. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5433. * CarbonLib: in CarbonLib 1.0 and later
  5434. * Mac OS X: in version 10.0 and later
  5435. */
  5436. EXTERN_API( RgnHandle )
  5437. GetPortClipRegion(
  5438. CGrafPtr port,
  5439. RgnHandle clipRgn);
  5440. /*
  5441. * GetPortBackPixPat()
  5442. *
  5443. * Availability:
  5444. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5445. * CarbonLib: in CarbonLib 1.0 and later
  5446. * Mac OS X: in version 10.0 and later
  5447. */
  5448. EXTERN_API( PixPatHandle )
  5449. GetPortBackPixPat(
  5450. CGrafPtr port,
  5451. PixPatHandle backPattern);
  5452. /*
  5453. * GetPortPenPixPat()
  5454. *
  5455. * Availability:
  5456. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5457. * CarbonLib: in CarbonLib 1.0 and later
  5458. * Mac OS X: in version 10.0 and later
  5459. */
  5460. EXTERN_API( PixPatHandle )
  5461. GetPortPenPixPat(
  5462. CGrafPtr port,
  5463. PixPatHandle penPattern);
  5464. /*
  5465. * GetPortFillPixPat()
  5466. *
  5467. * Availability:
  5468. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5469. * CarbonLib: in CarbonLib 1.0 and later
  5470. * Mac OS X: in version 10.0 and later
  5471. */
  5472. EXTERN_API( PixPatHandle )
  5473. GetPortFillPixPat(
  5474. CGrafPtr port,
  5475. PixPatHandle fillPattern);
  5476. /*
  5477. * GetPortPenSize()
  5478. *
  5479. * Availability:
  5480. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5481. * CarbonLib: in CarbonLib 1.0 and later
  5482. * Mac OS X: in version 10.0 and later
  5483. */
  5484. EXTERN_API( Point * )
  5485. GetPortPenSize(
  5486. CGrafPtr port,
  5487. Point * penSize);
  5488. /*
  5489. * GetPortPenMode()
  5490. *
  5491. * Availability:
  5492. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5493. * CarbonLib: in CarbonLib 1.0 and later
  5494. * Mac OS X: in version 10.0 and later
  5495. */
  5496. EXTERN_API( SInt32 )
  5497. GetPortPenMode(CGrafPtr port);
  5498. /*
  5499. * GetPortPenLocation()
  5500. *
  5501. * Availability:
  5502. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5503. * CarbonLib: in CarbonLib 1.0 and later
  5504. * Mac OS X: in version 10.0 and later
  5505. */
  5506. EXTERN_API( Point * )
  5507. GetPortPenLocation(
  5508. CGrafPtr port,
  5509. Point * penLocation);
  5510. /*
  5511. * IsPortRegionBeingDefined()
  5512. *
  5513. * Availability:
  5514. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5515. * CarbonLib: in CarbonLib 1.0 and later
  5516. * Mac OS X: in version 10.0 and later
  5517. */
  5518. EXTERN_API( Boolean )
  5519. IsPortRegionBeingDefined(CGrafPtr port);
  5520. /*
  5521. * IsPortPictureBeingDefined()
  5522. *
  5523. * Availability:
  5524. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5525. * CarbonLib: in CarbonLib 1.0 and later
  5526. * Mac OS X: in version 10.0 and later
  5527. */
  5528. EXTERN_API( Boolean )
  5529. IsPortPictureBeingDefined(CGrafPtr port);
  5530. /*
  5531. * IsPortPolyBeingDefined()
  5532. *
  5533. * Availability:
  5534. * Non-Carbon CFM: in CarbonAccessors.o 1.3 and later
  5535. * CarbonLib: in CarbonLib 1.3 and later
  5536. * Mac OS X: in version 10.0 and later
  5537. */
  5538. EXTERN_API( Boolean )
  5539. IsPortPolyBeingDefined(CGrafPtr port);
  5540. /*
  5541. * IsPortOffscreen()
  5542. *
  5543. * Availability:
  5544. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5545. * CarbonLib: in CarbonLib 1.0 and later
  5546. * Mac OS X: in version 10.0 and later
  5547. */
  5548. EXTERN_API( Boolean )
  5549. IsPortOffscreen(CGrafPtr port);
  5550. /*
  5551. * IsPortColor()
  5552. *
  5553. * Availability:
  5554. * Non-Carbon CFM: in CarbonAccessors.o 1.0.2 and later
  5555. * CarbonLib: in CarbonLib 1.0.2 and later
  5556. * Mac OS X: in version 10.0 and later
  5557. */
  5558. EXTERN_API( Boolean )
  5559. IsPortColor(CGrafPtr port);
  5560. /*
  5561. * IsPortVisibleRegionEmpty()
  5562. *
  5563. * Availability:
  5564. * Non-Carbon CFM: not available
  5565. * CarbonLib: in CarbonLib 1.3 and later
  5566. * Mac OS X: in version 10.1 and later
  5567. */
  5568. EXTERN_API( Boolean )
  5569. IsPortVisibleRegionEmpty(CGrafPtr port);
  5570. /*
  5571. * IsPortClipRegionEmpty()
  5572. *
  5573. * Availability:
  5574. * Non-Carbon CFM: not available
  5575. * CarbonLib: in CarbonLib 1.3 and later
  5576. * Mac OS X: in version 10.1 and later
  5577. */
  5578. EXTERN_API( Boolean )
  5579. IsPortClipRegionEmpty(CGrafPtr port);
  5580. /*
  5581. * SectRegionWithPortClipRegion()
  5582. *
  5583. * Availability:
  5584. * Non-Carbon CFM: not available
  5585. * CarbonLib: in CarbonLib 1.3 and later
  5586. * Mac OS X: in version 10.1 and later
  5587. */
  5588. EXTERN_API( void )
  5589. SectRegionWithPortClipRegion(
  5590. CGrafPtr port,
  5591. RgnHandle ioRegion);
  5592. /*
  5593. * SectRegionWithPortVisibleRegion()
  5594. *
  5595. * Availability:
  5596. * Non-Carbon CFM: not available
  5597. * CarbonLib: in CarbonLib 1.3 and later
  5598. * Mac OS X: in version 10.1 and later
  5599. */
  5600. EXTERN_API( void )
  5601. SectRegionWithPortVisibleRegion(
  5602. CGrafPtr port,
  5603. RgnHandle ioRegion);
  5604. /* Swappers */
  5605. /*
  5606. * SwapPortPicSaveHandle()
  5607. *
  5608. * Summary:
  5609. * Sets the port's picSave Handle, and returns the previous picSave
  5610. *
  5611. * Discussion:
  5612. * Historically, the picSave field in a GrafPort is != NULL if a
  5613. * Picture is being defined; and it has been documented that picture
  5614. * definition can be temporarily suspended by saving the current
  5615. * picSave Handle and setting picSave to NULL. Restoring the saved
  5616. * picSave Handle resumes picture definition.
  5617. *
  5618. * Parameters:
  5619. *
  5620. * port:
  5621. * The port whose picSave field is being swapped.
  5622. *
  5623. * inPicSaveHdl:
  5624. * The picSave Handle to be set.
  5625. *
  5626. * Result:
  5627. * The previous picSave Handle in the port.
  5628. *
  5629. * Availability:
  5630. * Non-Carbon CFM: not available
  5631. * CarbonLib: in CarbonLib 1.5 and later
  5632. * Mac OS X: in version 10.1 and later
  5633. */
  5634. EXTERN_API( Handle )
  5635. SwapPortPicSaveHandle(
  5636. CGrafPtr port,
  5637. Handle inPicSaveHdl);
  5638. /* Similarly: */
  5639. /*
  5640. * SwapPortPolySaveHandle()
  5641. *
  5642. * Availability:
  5643. * Non-Carbon CFM: not available
  5644. * CarbonLib: in CarbonLib 1.6 and later
  5645. * Mac OS X: in version 10.2 and later
  5646. */
  5647. EXTERN_API( Handle )
  5648. SwapPortPolySaveHandle(
  5649. CGrafPtr port,
  5650. Handle inPolySaveHdl);
  5651. /*
  5652. * SwapPortRegionSaveHandle()
  5653. *
  5654. * Availability:
  5655. * Non-Carbon CFM: not available
  5656. * CarbonLib: in CarbonLib 1.6 and later
  5657. * Mac OS X: in version 10.2 and later
  5658. */
  5659. EXTERN_API( Handle )
  5660. SwapPortRegionSaveHandle(
  5661. CGrafPtr port,
  5662. Handle inRegionSaveHdl);
  5663. /* Setters */
  5664. /*
  5665. * SetPortBounds()
  5666. *
  5667. * Availability:
  5668. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5669. * CarbonLib: in CarbonLib 1.0 and later
  5670. * Mac OS X: in version 10.0 and later
  5671. */
  5672. EXTERN_API( void )
  5673. SetPortBounds(
  5674. CGrafPtr port,
  5675. const Rect * rect);
  5676. /*
  5677. * SetPortOpColor()
  5678. *
  5679. * Availability:
  5680. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5681. * CarbonLib: in CarbonLib 1.0 and later
  5682. * Mac OS X: in version 10.0 and later
  5683. */
  5684. EXTERN_API( void )
  5685. SetPortOpColor(
  5686. CGrafPtr port,
  5687. const RGBColor * opColor);
  5688. /*
  5689. * SetPortGrafProcs()
  5690. *
  5691. * Availability:
  5692. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5693. * CarbonLib: in CarbonLib 1.0 and later
  5694. * Mac OS X: in version 10.0 and later
  5695. */
  5696. EXTERN_API( void )
  5697. SetPortGrafProcs(
  5698. CGrafPtr port,
  5699. CQDProcsPtr procs);
  5700. /*
  5701. * SetPortTextFont()
  5702. *
  5703. * Availability:
  5704. * Non-Carbon CFM: not available
  5705. * CarbonLib: in CarbonLib 1.5 and later
  5706. * Mac OS X: in version 10.1 and later
  5707. */
  5708. EXTERN_API( void )
  5709. SetPortTextFont(
  5710. CGrafPtr port,
  5711. short txFont);
  5712. /*
  5713. * SetPortTextSize()
  5714. *
  5715. * Availability:
  5716. * Non-Carbon CFM: not available
  5717. * CarbonLib: in CarbonLib 1.5 and later
  5718. * Mac OS X: in version 10.1 and later
  5719. */
  5720. EXTERN_API( void )
  5721. SetPortTextSize(
  5722. CGrafPtr port,
  5723. short txSize);
  5724. /*
  5725. * SetPortTextFace()
  5726. *
  5727. * Availability:
  5728. * Non-Carbon CFM: not available
  5729. * CarbonLib: in CarbonLib 1.5 and later
  5730. * Mac OS X: in version 10.1 and later
  5731. */
  5732. EXTERN_API( void )
  5733. SetPortTextFace(
  5734. CGrafPtr port,
  5735. StyleParameter face);
  5736. /*
  5737. * SetPortTextMode()
  5738. *
  5739. * Availability:
  5740. * Non-Carbon CFM: not available
  5741. * CarbonLib: in CarbonLib 1.5 and later
  5742. * Mac OS X: in version 10.1 and later
  5743. */
  5744. EXTERN_API( void )
  5745. SetPortTextMode(
  5746. CGrafPtr port,
  5747. short mode);
  5748. /*
  5749. * SetPortVisibleRegion()
  5750. *
  5751. * Availability:
  5752. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5753. * CarbonLib: in CarbonLib 1.0 and later
  5754. * Mac OS X: in version 10.0 and later
  5755. */
  5756. EXTERN_API( void )
  5757. SetPortVisibleRegion(
  5758. CGrafPtr port,
  5759. RgnHandle visRgn);
  5760. /*
  5761. * SetPortClipRegion()
  5762. *
  5763. * Availability:
  5764. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5765. * CarbonLib: in CarbonLib 1.0 and later
  5766. * Mac OS X: in version 10.0 and later
  5767. */
  5768. EXTERN_API( void )
  5769. SetPortClipRegion(
  5770. CGrafPtr port,
  5771. RgnHandle clipRgn);
  5772. /*
  5773. * SetPortPenPixPat()
  5774. *
  5775. * Availability:
  5776. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5777. * CarbonLib: in CarbonLib 1.0 and later
  5778. * Mac OS X: in version 10.0 and later
  5779. */
  5780. EXTERN_API( void )
  5781. SetPortPenPixPat(
  5782. CGrafPtr port,
  5783. PixPatHandle penPattern);
  5784. /*
  5785. * SetPortFillPixPat()
  5786. *
  5787. * Availability:
  5788. * Non-Carbon CFM: in CarbonAccessors.o 1.2 and later
  5789. * CarbonLib: in CarbonLib 1.2 and later
  5790. * Mac OS X: in version 10.0 and later
  5791. */
  5792. EXTERN_API( void )
  5793. SetPortFillPixPat(
  5794. CGrafPtr port,
  5795. PixPatHandle penPattern);
  5796. /*
  5797. * SetPortBackPixPat()
  5798. *
  5799. * Availability:
  5800. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5801. * CarbonLib: in CarbonLib 1.0 and later
  5802. * Mac OS X: in version 10.0 and later
  5803. */
  5804. EXTERN_API( void )
  5805. SetPortBackPixPat(
  5806. CGrafPtr port,
  5807. PixPatHandle backPattern);
  5808. /*
  5809. * SetPortPenSize()
  5810. *
  5811. * Availability:
  5812. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5813. * CarbonLib: in CarbonLib 1.0 and later
  5814. * Mac OS X: in version 10.0 and later
  5815. */
  5816. EXTERN_API( void )
  5817. SetPortPenSize(
  5818. CGrafPtr port,
  5819. Point penSize);
  5820. /*
  5821. * SetPortPenMode()
  5822. *
  5823. * Availability:
  5824. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5825. * CarbonLib: in CarbonLib 1.0 and later
  5826. * Mac OS X: in version 10.0 and later
  5827. */
  5828. EXTERN_API( void )
  5829. SetPortPenMode(
  5830. CGrafPtr port,
  5831. SInt32 penMode);
  5832. /*
  5833. * SetPortFracHPenLocation()
  5834. *
  5835. * Availability:
  5836. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5837. * CarbonLib: in CarbonLib 1.0 and later
  5838. * Mac OS X: in version 10.0 and later
  5839. */
  5840. EXTERN_API( void )
  5841. SetPortFracHPenLocation(
  5842. CGrafPtr port,
  5843. short pnLocHFrac);
  5844. /* PixMap */
  5845. /*
  5846. * GetPixBounds()
  5847. *
  5848. * Availability:
  5849. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5850. * CarbonLib: in CarbonLib 1.0 and later
  5851. * Mac OS X: in version 10.0 and later
  5852. */
  5853. EXTERN_API( Rect * )
  5854. GetPixBounds(
  5855. PixMapHandle pixMap,
  5856. Rect * bounds);
  5857. /*
  5858. * GetPixDepth()
  5859. *
  5860. * Availability:
  5861. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5862. * CarbonLib: in CarbonLib 1.0 and later
  5863. * Mac OS X: in version 10.0 and later
  5864. */
  5865. EXTERN_API( short )
  5866. GetPixDepth(PixMapHandle pixMap);
  5867. /* QDGlobals */
  5868. /* Getters */
  5869. /*
  5870. * GetQDGlobalsRandomSeed()
  5871. *
  5872. * Availability:
  5873. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5874. * CarbonLib: in CarbonLib 1.0 and later
  5875. * Mac OS X: in version 10.0 and later
  5876. */
  5877. EXTERN_API( long )
  5878. GetQDGlobalsRandomSeed(void);
  5879. /*
  5880. * GetQDGlobalsScreenBits()
  5881. *
  5882. * Availability:
  5883. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5884. * CarbonLib: in CarbonLib 1.0 and later
  5885. * Mac OS X: in version 10.0 and later
  5886. */
  5887. EXTERN_API( BitMap * )
  5888. GetQDGlobalsScreenBits(BitMap * screenBits);
  5889. /*
  5890. * GetQDGlobalsArrow()
  5891. *
  5892. * Availability:
  5893. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5894. * CarbonLib: in CarbonLib 1.0 and later
  5895. * Mac OS X: in version 10.0 and later
  5896. */
  5897. EXTERN_API( Cursor * )
  5898. GetQDGlobalsArrow(Cursor * arrow);
  5899. /*
  5900. * GetQDGlobalsDarkGray()
  5901. *
  5902. * Availability:
  5903. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5904. * CarbonLib: in CarbonLib 1.0 and later
  5905. * Mac OS X: in version 10.0 and later
  5906. */
  5907. EXTERN_API( Pattern * )
  5908. GetQDGlobalsDarkGray(Pattern * dkGray);
  5909. /*
  5910. * GetQDGlobalsLightGray()
  5911. *
  5912. * Availability:
  5913. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5914. * CarbonLib: in CarbonLib 1.0 and later
  5915. * Mac OS X: in version 10.0 and later
  5916. */
  5917. EXTERN_API( Pattern * )
  5918. GetQDGlobalsLightGray(Pattern * ltGray);
  5919. /*
  5920. * GetQDGlobalsGray()
  5921. *
  5922. * Availability:
  5923. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5924. * CarbonLib: in CarbonLib 1.0 and later
  5925. * Mac OS X: in version 10.0 and later
  5926. */
  5927. EXTERN_API( Pattern * )
  5928. GetQDGlobalsGray(Pattern * gray);
  5929. /*
  5930. * GetQDGlobalsBlack()
  5931. *
  5932. * Availability:
  5933. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5934. * CarbonLib: in CarbonLib 1.0 and later
  5935. * Mac OS X: in version 10.0 and later
  5936. */
  5937. EXTERN_API( Pattern * )
  5938. GetQDGlobalsBlack(Pattern * black);
  5939. /*
  5940. * GetQDGlobalsWhite()
  5941. *
  5942. * Availability:
  5943. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5944. * CarbonLib: in CarbonLib 1.0 and later
  5945. * Mac OS X: in version 10.0 and later
  5946. */
  5947. EXTERN_API( Pattern * )
  5948. GetQDGlobalsWhite(Pattern * white);
  5949. /*
  5950. * GetQDGlobalsThePort()
  5951. *
  5952. * Availability:
  5953. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5954. * CarbonLib: in CarbonLib 1.0 and later
  5955. * Mac OS X: in version 10.0 and later
  5956. */
  5957. EXTERN_API( CGrafPtr )
  5958. GetQDGlobalsThePort(void);
  5959. /* Setters */
  5960. /*
  5961. * SetQDGlobalsRandomSeed()
  5962. *
  5963. * Availability:
  5964. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5965. * CarbonLib: in CarbonLib 1.0 and later
  5966. * Mac OS X: in version 10.0 and later
  5967. */
  5968. EXTERN_API( void )
  5969. SetQDGlobalsRandomSeed(long randomSeed);
  5970. /*
  5971. * SetQDGlobalsArrow()
  5972. *
  5973. * Availability:
  5974. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5975. * CarbonLib: in CarbonLib 1.0 and later
  5976. * Mac OS X: in version 10.0 and later
  5977. */
  5978. EXTERN_API( void )
  5979. SetQDGlobalsArrow(const Cursor * arrow);
  5980. /* Regions */
  5981. /*
  5982. * GetRegionBounds()
  5983. *
  5984. * Availability:
  5985. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5986. * CarbonLib: in CarbonLib 1.0 and later
  5987. * Mac OS X: in version 10.0 and later
  5988. */
  5989. EXTERN_API( Rect * )
  5990. GetRegionBounds(
  5991. RgnHandle region,
  5992. Rect * bounds);
  5993. /*
  5994. * IsRegionRectangular()
  5995. *
  5996. * Availability:
  5997. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  5998. * CarbonLib: in CarbonLib 1.0 and later
  5999. * Mac OS X: in version 10.0 and later
  6000. */
  6001. EXTERN_API( Boolean )
  6002. IsRegionRectangular(RgnHandle region);
  6003. /* Utilities */
  6004. /* To prevent upward dependencies, GetWindowFromPort() is defined in Window Manager interface: */
  6005. /* pascal WindowRef GetWindowFromPort(CGrafPtr port); */
  6006. /* NewPtr/OpenCPort doesn't work with opaque structures */
  6007. /*
  6008. * CreateNewPort()
  6009. *
  6010. * Availability:
  6011. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  6012. * CarbonLib: in CarbonLib 1.0 and later
  6013. * Mac OS X: in version 10.0 and later
  6014. */
  6015. EXTERN_API( CGrafPtr )
  6016. CreateNewPort(void);
  6017. /*
  6018. * DisposePort()
  6019. *
  6020. * Availability:
  6021. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  6022. * CarbonLib: in CarbonLib 1.0 and later
  6023. * Mac OS X: in version 10.0 and later
  6024. */
  6025. EXTERN_API( void )
  6026. DisposePort(CGrafPtr port);
  6027. /*
  6028. * SetQDError()
  6029. *
  6030. * Availability:
  6031. * Non-Carbon CFM: in CarbonAccessors.o 1.0.2 and later
  6032. * CarbonLib: in CarbonLib 1.0.2 and later
  6033. * Mac OS X: in version 10.0 and later
  6034. */
  6035. EXTERN_API( void )
  6036. SetQDError(OSErr err);
  6037. #endif /* ACCESSOR_CALLS_ARE_FUNCTIONS */
  6038. /* Helpful Carbon-only utilities (finally made public)*/
  6039. /*
  6040. * QDLocalToGlobalPoint()
  6041. *
  6042. * Availability:
  6043. * Non-Carbon CFM: not available
  6044. * CarbonLib: in CarbonLib 1.0 and later
  6045. * Mac OS X: in version 10.0 and later
  6046. */
  6047. EXTERN_API( Point * )
  6048. QDLocalToGlobalPoint(
  6049. CGrafPtr port,
  6050. Point * point);
  6051. /*
  6052. * QDGlobalToLocalPoint()
  6053. *
  6054. * Availability:
  6055. * Non-Carbon CFM: not available
  6056. * CarbonLib: in CarbonLib 1.0 and later
  6057. * Mac OS X: in version 10.0 and later
  6058. */
  6059. EXTERN_API( Point * )
  6060. QDGlobalToLocalPoint(
  6061. CGrafPtr port,
  6062. Point * point);
  6063. /*
  6064. * QDLocalToGlobalRect()
  6065. *
  6066. * Availability:
  6067. * Non-Carbon CFM: not available
  6068. * CarbonLib: in CarbonLib 1.0 and later
  6069. * Mac OS X: in version 10.0 and later
  6070. */
  6071. EXTERN_API( Rect * )
  6072. QDLocalToGlobalRect(
  6073. CGrafPtr port,
  6074. Rect * bounds);
  6075. /*
  6076. * QDGlobalToLocalRect()
  6077. *
  6078. * Availability:
  6079. * Non-Carbon CFM: not available
  6080. * CarbonLib: in CarbonLib 1.0 and later
  6081. * Mac OS X: in version 10.0 and later
  6082. */
  6083. EXTERN_API( Rect * )
  6084. QDGlobalToLocalRect(
  6085. CGrafPtr port,
  6086. Rect * bounds);
  6087. /*
  6088. * QDLocalToGlobalRegion()
  6089. *
  6090. * Availability:
  6091. * Non-Carbon CFM: not available
  6092. * CarbonLib: in CarbonLib 1.0 and later
  6093. * Mac OS X: in version 10.0 and later
  6094. */
  6095. EXTERN_API( RgnHandle )
  6096. QDLocalToGlobalRegion(
  6097. CGrafPtr port,
  6098. RgnHandle region);
  6099. /*
  6100. * QDGlobalToLocalRegion()
  6101. *
  6102. * Availability:
  6103. * Non-Carbon CFM: not available
  6104. * CarbonLib: in CarbonLib 1.0 and later
  6105. * Mac OS X: in version 10.0 and later
  6106. */
  6107. EXTERN_API( RgnHandle )
  6108. QDGlobalToLocalRegion(
  6109. CGrafPtr port,
  6110. RgnHandle region);
  6111. /*
  6112. Routines available on Mac OS X to flush buffered window ports...
  6113. These calls do nothing on Mac OS 8/9. QDIsPortBuffered will always return false there.
  6114. */
  6115. /*
  6116. * QDIsPortBuffered()
  6117. *
  6118. * Availability:
  6119. * Non-Carbon CFM: not available
  6120. * CarbonLib: in CarbonLib 1.0.2 and later
  6121. * Mac OS X: in version 10.0 and later
  6122. */
  6123. EXTERN_API( Boolean )
  6124. QDIsPortBuffered(CGrafPtr port);
  6125. /*
  6126. * QDIsPortBufferDirty()
  6127. *
  6128. * Availability:
  6129. * Non-Carbon CFM: not available
  6130. * CarbonLib: in CarbonLib 1.0.2 and later
  6131. * Mac OS X: in version 10.0 and later
  6132. */
  6133. EXTERN_API( Boolean )
  6134. QDIsPortBufferDirty(CGrafPtr port);
  6135. /*
  6136. * QDFlushPortBuffer()
  6137. *
  6138. * Availability:
  6139. * Non-Carbon CFM: not available
  6140. * CarbonLib: in CarbonLib 1.0.2 and later
  6141. * Mac OS X: in version 10.0 and later
  6142. */
  6143. EXTERN_API( void )
  6144. QDFlushPortBuffer(
  6145. CGrafPtr port,
  6146. RgnHandle region); /* can be NULL */
  6147. /*
  6148. * QDGetDirtyRegion()
  6149. *
  6150. * Availability:
  6151. * Non-Carbon CFM: not available
  6152. * CarbonLib: in CarbonLib 1.1 and later
  6153. * Mac OS X: in version 10.0 and later
  6154. */
  6155. EXTERN_API( OSStatus )
  6156. QDGetDirtyRegion(
  6157. CGrafPtr port,
  6158. RgnHandle rgn);
  6159. /*
  6160. * QDSetDirtyRegion()
  6161. *
  6162. * Availability:
  6163. * Non-Carbon CFM: not available
  6164. * CarbonLib: in CarbonLib 1.1 and later
  6165. * Mac OS X: in version 10.0 and later
  6166. */
  6167. EXTERN_API( OSStatus )
  6168. QDSetDirtyRegion(
  6169. CGrafPtr port,
  6170. RgnHandle rgn);
  6171. /*
  6172. * QDAddRectToDirtyRegion()
  6173. *
  6174. * Availability:
  6175. * Non-Carbon CFM: not available
  6176. * CarbonLib: in CarbonLib 1.5 and later
  6177. * Mac OS X: in version 10.0 and later
  6178. */
  6179. EXTERN_API_C( OSStatus )
  6180. QDAddRectToDirtyRegion(
  6181. CGrafPtr inPort,
  6182. const Rect * inBounds);
  6183. /*
  6184. * QDAddRegionToDirtyRegion()
  6185. *
  6186. * Availability:
  6187. * Non-Carbon CFM: not available
  6188. * CarbonLib: in CarbonLib 1.5 and later
  6189. * Mac OS X: in version 10.0 and later
  6190. */
  6191. EXTERN_API_C( OSStatus )
  6192. QDAddRegionToDirtyRegion(
  6193. CGrafPtr inPort,
  6194. RgnHandle inRegion);
  6195. /*
  6196. * CreateCGContextForPort()
  6197. *
  6198. * Availability:
  6199. * Non-Carbon CFM: not available
  6200. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  6201. * Mac OS X: in version 10.0 and later
  6202. */
  6203. EXTERN_API_C( OSStatus )
  6204. CreateCGContextForPort(
  6205. CGrafPtr inPort,
  6206. CGContextRef * outContext);
  6207. /*
  6208. * ClipCGContextToRegion()
  6209. *
  6210. * Availability:
  6211. * Non-Carbon CFM: not available
  6212. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  6213. * Mac OS X: in version 10.0 and later
  6214. */
  6215. EXTERN_API_C( OSStatus )
  6216. ClipCGContextToRegion(
  6217. CGContextRef gc,
  6218. const Rect * portRect,
  6219. RgnHandle region);
  6220. /*
  6221. * SyncCGContextOriginWithPort()
  6222. *
  6223. * Availability:
  6224. * Non-Carbon CFM: not available
  6225. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  6226. * Mac OS X: in version 10.0 and later
  6227. */
  6228. EXTERN_API_C( OSStatus )
  6229. SyncCGContextOriginWithPort(
  6230. CGContextRef inContext,
  6231. CGrafPtr port);
  6232. /*
  6233. * QDBeginCGContext()
  6234. *
  6235. * Summary:
  6236. * Allow CoreGraphics drawing in a CGrafPort
  6237. *
  6238. * Discussion:
  6239. * So far, CreateCGContextForPort() was used to create a CGContext
  6240. * for CG drawing from a CGrafPort. However, if the current port is
  6241. * a printing port, the CreateCGContextForPort fails; consequently,
  6242. * there was no way to mix Quickdraw and CoreGraphics drawing and
  6243. * still print it. If, instead, the CoreGraphics drawing is
  6244. * bracketed by QDBeginCGContext/QDEndCGContext calls, the drawing
  6245. * will also appear in print. There are some restrictions on the
  6246. * usage of QDBeginCGContext/QDEndCGContext:
  6247. * - Between QDBeginCGContext and QDEndCGContext, Quickdraw drawing
  6248. * is disabled; only CoreGraphics drawing is allowed
  6249. * - QDBeginCGContext/QDEndCGContext calls can not be nested
  6250. * - QDEndCGContext releases the CGContext returned from
  6251. * QDBeginCGContext and sets it to NULL.
  6252. *
  6253. * Parameters:
  6254. *
  6255. * inPort:
  6256. * The current port
  6257. *
  6258. * outContext:
  6259. * The CGContextRef to be used for CG drawing
  6260. *
  6261. * Availability:
  6262. * Non-Carbon CFM: not available
  6263. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.1 and later
  6264. * Mac OS X: in version 10.1 and later
  6265. */
  6266. EXTERN_API_C( OSStatus )
  6267. QDBeginCGContext(
  6268. CGrafPtr inPort,
  6269. CGContextRef * outContext);
  6270. /*
  6271. * QDEndCGContext()
  6272. *
  6273. * Availability:
  6274. * Non-Carbon CFM: not available
  6275. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.1 and later
  6276. * Mac OS X: in version 10.1 and later
  6277. */
  6278. EXTERN_API_C( OSStatus )
  6279. QDEndCGContext(
  6280. CGrafPtr inPort,
  6281. CGContextRef * inoutContext);
  6282. /*
  6283. The following routines are implemented in CarbonLib, and on Mac OS X in QD proper.
  6284. They save the pixel data of a region in a packed format for quick save/restore
  6285. without using a lot of memory to do a large, hollow region, such as the region
  6286. used when drag hiliting (which is where this is used).
  6287. */
  6288. typedef struct OpaqueQDRegionBitsRef* QDRegionBitsRef;
  6289. /*
  6290. * QDSaveRegionBits()
  6291. *
  6292. * Availability:
  6293. * Non-Carbon CFM: not available
  6294. * CarbonLib: in CarbonLib 1.0 and later
  6295. * Mac OS X: in version 10.1 and later
  6296. */
  6297. EXTERN_API( QDRegionBitsRef )
  6298. QDSaveRegionBits(RgnHandle region);
  6299. /*
  6300. * QDRestoreRegionBits()
  6301. *
  6302. * Availability:
  6303. * Non-Carbon CFM: not available
  6304. * CarbonLib: in CarbonLib 1.0 and later
  6305. * Mac OS X: in version 10.1 and later
  6306. */
  6307. EXTERN_API( OSStatus )
  6308. QDRestoreRegionBits(
  6309. RgnHandle region,
  6310. QDRegionBitsRef regionBits);
  6311. /*
  6312. * QDDisposeRegionBits()
  6313. *
  6314. * Availability:
  6315. * Non-Carbon CFM: not available
  6316. * CarbonLib: in CarbonLib 1.0 and later
  6317. * Mac OS X: in version 10.1 and later
  6318. */
  6319. EXTERN_API( OSStatus )
  6320. QDDisposeRegionBits(QDRegionBitsRef regionBits);
  6321. /*
  6322. Developers need a way to go from a CGDirectDisplay environment to Quickdraw.
  6323. The following is equivalent to CreateNewPort(), but instead of taking the
  6324. portPixMap from the current GDevice, it uses the GDevice corresponding to
  6325. the CGSDisplayID passed in. If the CGSDisplayID is invalid, the mainDevice
  6326. is used instead.
  6327. */
  6328. /*
  6329. * CreateNewPortForCGDisplayID()
  6330. *
  6331. * Availability:
  6332. * Non-Carbon CFM: not available
  6333. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  6334. * Mac OS X: in version 10.0 and later
  6335. */
  6336. EXTERN_API_C( CGrafPtr )
  6337. CreateNewPortForCGDisplayID(UInt32 inCGDisplayID);
  6338. /*
  6339. In Mac OS X, developers should be able to turn the WaitCursor (spinning wheel)
  6340. on and off. QDDisplayWaitCursor() keeps track of nested calls.
  6341. Passing FALSE will resume automatic wait cursor operation.
  6342. Call this function only from an application in the foreground.
  6343. */
  6344. /*
  6345. * QDDisplayWaitCursor()
  6346. *
  6347. * Availability:
  6348. * Non-Carbon CFM: not available
  6349. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  6350. * Mac OS X: in version 10.0 and later
  6351. */
  6352. EXTERN_API_C( void )
  6353. QDDisplayWaitCursor(Boolean forceWaitCursor);
  6354. /*
  6355. * QDSetPatternOrigin()
  6356. *
  6357. * Summary:
  6358. * Sets the pattern origin for the current port.
  6359. *
  6360. * Discussion:
  6361. * When a QuickDraw drawing operation uses a pattern (either a
  6362. * black&white pattern or a PixPat), the pattern's image is aligned
  6363. * with port origin, modified by the pattern origin of the port. For
  6364. * example, if the background pattern is a 10x10 image, and a
  6365. * rectangle with coordinates (3, 3, 10, 10) is filled with that
  6366. * pattern, then only the bottom right 7x7 portion of the pattern
  6367. * image will be drawn into the rectangle. When drawing a pattern,
  6368. * QuickDraw always starts with the port origin and then adjusts it
  6369. * by the pattern origin to determine the actual origin point of
  6370. * pattern drawing. QDSetPatternOrigin can be used to set the
  6371. * pattern origin relative to the port origin. It is often used in
  6372. * conjuction with SetOrigin to maintain the pattern alignment at
  6373. * (0,0) in a window's content area, regardless of the port origin;
  6374. * for example, after changing the port's origin to (10,10), an
  6375. * application might change the port's pattern origin to (-10, -10)
  6376. * so that patterns are still aligned with the window's content area.
  6377. *
  6378. * Parameters:
  6379. *
  6380. * origin:
  6381. * The new pattern origin of the port.
  6382. *
  6383. * Availability:
  6384. * Non-Carbon CFM: in NQD 8.5 and later
  6385. * CarbonLib: in CarbonLib 1.3 and later
  6386. * Mac OS X: in version 10.1 and later
  6387. */
  6388. EXTERN_API_C( void )
  6389. QDSetPatternOrigin(Point origin);
  6390. /*
  6391. * QDGetPatternOrigin()
  6392. *
  6393. * Summary:
  6394. * Returns the pattern origin of the current port.
  6395. *
  6396. * Parameters:
  6397. *
  6398. * origin:
  6399. * On exit, contains the current port's pattern origin.
  6400. *
  6401. * Availability:
  6402. * Non-Carbon CFM: in NQD 8.5 and later
  6403. * CarbonLib: in CarbonLib 1.3 and later
  6404. * Mac OS X: in version 10.1 and later
  6405. */
  6406. EXTERN_API_C( void )
  6407. QDGetPatternOrigin(Point * origin);
  6408. /*
  6409. * QDIsNamedPixMapCursorRegistered()
  6410. *
  6411. * Summary:
  6412. * Returns whether a named cursor has already been registered.
  6413. *
  6414. * Discussion:
  6415. * The CoreGraphics Scalable Cursor Registry provides support for
  6416. * cursors based on PixMaps for crsrData and crsrMask, with sizes up
  6417. * to 64x64 pixels. Such cursors need to be registered via
  6418. * QDRegisterNamedPixMapCursor, and can then be set by
  6419. * QDSetNamedPixMapCursor.
  6420. *
  6421. * Parameters:
  6422. *
  6423. * name:
  6424. * (see below at QDRegisterNamedPixMapCursor)
  6425. *
  6426. * Availability:
  6427. * Non-Carbon CFM: not available
  6428. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  6429. * Mac OS X: in version 10.2 and later
  6430. */
  6431. EXTERN_API_C( Boolean )
  6432. QDIsNamedPixMapCursorRegistered(const char name[128]);
  6433. /*
  6434. * QDRegisterNamedPixMapCursor()
  6435. *
  6436. * Summary:
  6437. * Register a new cursor by name
  6438. *
  6439. * Discussion:
  6440. * In order to set a PixMapCursor, it needs to be registered first
  6441. * by name.
  6442. *
  6443. * Parameters:
  6444. *
  6445. * crsrData:
  6446. * (description forthcoming)
  6447. *
  6448. * crsrMask:
  6449. * (description forthcoming)
  6450. *
  6451. * hotSpot:
  6452. * (description forthcoming)
  6453. *
  6454. * name:
  6455. * A naming convention involving the name of your application and
  6456. * descriptive cursor names or resource IDs is suggested. Cursor
  6457. * names are 0-terminated C-strings up to a length of 127.
  6458. *
  6459. * Availability:
  6460. * Non-Carbon CFM: not available
  6461. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  6462. * Mac OS X: in version 10.2 and later
  6463. */
  6464. EXTERN_API_C( OSStatus )
  6465. QDRegisterNamedPixMapCursor(
  6466. PixMapHandle crsrData,
  6467. PixMapHandle crsrMask,
  6468. Point hotSpot,
  6469. const char name[128]);
  6470. /*
  6471. * QDUnregisterNamedPixMapCursur()
  6472. *
  6473. * Availability:
  6474. * Non-Carbon CFM: not available
  6475. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  6476. * Mac OS X: in version 10.2 and later
  6477. */
  6478. EXTERN_API_C( OSStatus )
  6479. QDUnregisterNamedPixMapCursur(const char name[128]);
  6480. /*
  6481. * QDSetNamedPixMapCursor()
  6482. *
  6483. * Availability:
  6484. * Non-Carbon CFM: not available
  6485. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  6486. * Mac OS X: in version 10.2 and later
  6487. */
  6488. EXTERN_API_C( OSStatus )
  6489. QDSetNamedPixMapCursor(const char name[128]);
  6490. /*
  6491. * QDSetCursorScale()
  6492. *
  6493. * Availability:
  6494. * Non-Carbon CFM: not available
  6495. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  6496. * Mac OS X: in version 10.2 and later
  6497. */
  6498. EXTERN_API_C( OSStatus )
  6499. QDSetCursorScale(float scale);
  6500. enum {
  6501. kQDUseDefaultTextRendering = 0, /* Sets whatever is specified in system defaults.*/
  6502. /* Currently sets kQDUseTrueTypeScalerGlyphs if nothing is specified.*/
  6503. kQDUseTrueTypeScalerGlyphs = (1 << 0), /* bit 0*/
  6504. kQDUseCGTextRendering = (1 << 1), /* bit 1*/
  6505. kQDUseCGTextMetrics = (1 << 2), /* bit 2*/
  6506. kQDSupportedFlags = kQDUseTrueTypeScalerGlyphs | kQDUseCGTextRendering | kQDUseCGTextMetrics,
  6507. kQDDontChangeFlags = (long)0xFFFFFFFF /* to request the current state, without changing anything*/
  6508. };
  6509. /*
  6510. * QDSwapTextFlags()
  6511. *
  6512. * Summary:
  6513. * Returns current flags and optionally sets new flags.
  6514. *
  6515. * Discussion:
  6516. * Currently, only the flag bits in the enum above are supported.
  6517. * The typical usage is UInt32 savedFlags =
  6518. * QDSwapTextFlags(newFlags); // ... draw text under the conditions
  6519. * of "newFlags" ... (void)QDSwapTextFlags(savedFlags); // restore
  6520. * previous setting
  6521. *
  6522. * Parameters:
  6523. *
  6524. * newFlags:
  6525. * Use the enums above; example "kQDUseCGTextRendering |
  6526. * kQDUseCGTextMetrics".
  6527. *
  6528. * Availability:
  6529. * Non-Carbon CFM: not available
  6530. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  6531. * Mac OS X: in version 10.2 and later
  6532. */
  6533. EXTERN_API_C( UInt32 )
  6534. QDSwapTextFlags(UInt32 newFlags);
  6535. /*
  6536. * QDSwapPortTextFlags()
  6537. *
  6538. * Summary:
  6539. * Same as QDSwapTextFlags, but per GrafPort.
  6540. *
  6541. * Parameters:
  6542. *
  6543. * port:
  6544. * Settings per port override any global settings. If port ==
  6545. * NULL, the current port is used.
  6546. *
  6547. * newFlags:
  6548. * As in QDSwapTextFlags, above.
  6549. *
  6550. * Availability:
  6551. * Non-Carbon CFM: not available
  6552. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  6553. * Mac OS X: in version 10.2 and later
  6554. */
  6555. EXTERN_API_C( UInt32 )
  6556. QDSwapPortTextFlags(
  6557. CGrafPtr port,
  6558. UInt32 newFlags);
  6559. /*
  6560. LowMem accessor functions previously in LowMem.h
  6561. */
  6562. /*
  6563. * LMGetScrVRes()
  6564. *
  6565. * Availability:
  6566. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6567. * CarbonLib: in CarbonLib 1.0 and later
  6568. * Mac OS X: in version 10.0 and later
  6569. */
  6570. EXTERN_API( SInt16 )
  6571. LMGetScrVRes(void) TWOWORDINLINE(0x3EB8, 0x0102);
  6572. /*
  6573. * LMSetScrVRes()
  6574. *
  6575. * Availability:
  6576. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6577. * CarbonLib: in CarbonLib 1.0 and later
  6578. * Mac OS X: in version 10.0 and later
  6579. */
  6580. EXTERN_API( void )
  6581. LMSetScrVRes(SInt16 value) TWOWORDINLINE(0x31DF, 0x0102);
  6582. /*
  6583. * LMGetScrHRes()
  6584. *
  6585. * Availability:
  6586. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6587. * CarbonLib: in CarbonLib 1.0 and later
  6588. * Mac OS X: in version 10.0 and later
  6589. */
  6590. EXTERN_API( SInt16 )
  6591. LMGetScrHRes(void) TWOWORDINLINE(0x3EB8, 0x0104);
  6592. /*
  6593. * LMSetScrHRes()
  6594. *
  6595. * Availability:
  6596. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6597. * CarbonLib: in CarbonLib 1.0 and later
  6598. * Mac OS X: in version 10.0 and later
  6599. */
  6600. EXTERN_API( void )
  6601. LMSetScrHRes(SInt16 value) TWOWORDINLINE(0x31DF, 0x0104);
  6602. /*
  6603. * LMGetMainDevice()
  6604. *
  6605. * Availability:
  6606. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6607. * CarbonLib: in CarbonLib 1.0 and later
  6608. * Mac OS X: in version 10.0 and later
  6609. */
  6610. EXTERN_API( GDHandle )
  6611. LMGetMainDevice(void) TWOWORDINLINE(0x2EB8, 0x08A4);
  6612. /*
  6613. * LMSetMainDevice()
  6614. *
  6615. * Availability:
  6616. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6617. * CarbonLib: in CarbonLib 1.0 and later
  6618. * Mac OS X: in version 10.0 and later
  6619. */
  6620. EXTERN_API( void )
  6621. LMSetMainDevice(GDHandle value) TWOWORDINLINE(0x21DF, 0x08A4);
  6622. /*
  6623. * LMGetDeviceList()
  6624. *
  6625. * Availability:
  6626. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6627. * CarbonLib: in CarbonLib 1.0 and later
  6628. * Mac OS X: in version 10.0 and later
  6629. */
  6630. EXTERN_API( GDHandle )
  6631. LMGetDeviceList(void) TWOWORDINLINE(0x2EB8, 0x08A8);
  6632. /*
  6633. * LMSetDeviceList()
  6634. *
  6635. * Availability:
  6636. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6637. * CarbonLib: in CarbonLib 1.0 and later
  6638. * Mac OS X: in version 10.0 and later
  6639. */
  6640. EXTERN_API( void )
  6641. LMSetDeviceList(GDHandle value) TWOWORDINLINE(0x21DF, 0x08A8);
  6642. /*
  6643. * LMGetQDColors()
  6644. *
  6645. * Availability:
  6646. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6647. * CarbonLib: in CarbonLib 1.0 and later
  6648. * Mac OS X: in version 10.0 and later
  6649. */
  6650. EXTERN_API( Handle )
  6651. LMGetQDColors(void) TWOWORDINLINE(0x2EB8, 0x08B0);
  6652. /*
  6653. * LMSetQDColors()
  6654. *
  6655. * Availability:
  6656. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6657. * CarbonLib: in CarbonLib 1.0 and later
  6658. * Mac OS X: in version 10.0 and later
  6659. */
  6660. EXTERN_API( void )
  6661. LMSetQDColors(Handle value) TWOWORDINLINE(0x21DF, 0x08B0);
  6662. /*
  6663. * LMGetWidthListHand()
  6664. *
  6665. * Availability:
  6666. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6667. * CarbonLib: in CarbonLib 1.0 and later
  6668. * Mac OS X: in version 10.0 and later
  6669. */
  6670. EXTERN_API( Handle )
  6671. LMGetWidthListHand(void) TWOWORDINLINE(0x2EB8, 0x08E4);
  6672. /*
  6673. * LMSetWidthListHand()
  6674. *
  6675. * Availability:
  6676. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6677. * CarbonLib: in CarbonLib 1.0 and later
  6678. * Mac OS X: in version 10.0 and later
  6679. */
  6680. EXTERN_API( void )
  6681. LMSetWidthListHand(Handle value) TWOWORDINLINE(0x21DF, 0x08E4);
  6682. /*
  6683. * LMGetHiliteMode()
  6684. *
  6685. * Availability:
  6686. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6687. * CarbonLib: in CarbonLib 1.0 and later
  6688. * Mac OS X: in version 10.0 and later
  6689. */
  6690. EXTERN_API( UInt8 )
  6691. LMGetHiliteMode(void) TWOWORDINLINE(0x1EB8, 0x0938);
  6692. /*
  6693. * LMSetHiliteMode()
  6694. *
  6695. * Availability:
  6696. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6697. * CarbonLib: in CarbonLib 1.0 and later
  6698. * Mac OS X: in version 10.0 and later
  6699. */
  6700. EXTERN_API( void )
  6701. LMSetHiliteMode(UInt8 value) TWOWORDINLINE(0x11DF, 0x0938);
  6702. /*
  6703. * LMGetWidthPtr()
  6704. *
  6705. * Availability:
  6706. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6707. * CarbonLib: in CarbonLib 1.0 and later
  6708. * Mac OS X: in version 10.0 and later
  6709. */
  6710. EXTERN_API( Ptr )
  6711. LMGetWidthPtr(void) TWOWORDINLINE(0x2EB8, 0x0B10);
  6712. /*
  6713. * LMSetWidthPtr()
  6714. *
  6715. * Availability:
  6716. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6717. * CarbonLib: in CarbonLib 1.0 and later
  6718. * Mac OS X: in version 10.0 and later
  6719. */
  6720. EXTERN_API( void )
  6721. LMSetWidthPtr(Ptr value) TWOWORDINLINE(0x21DF, 0x0B10);
  6722. /*
  6723. * LMGetWidthTabHandle()
  6724. *
  6725. * Availability:
  6726. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6727. * CarbonLib: in CarbonLib 1.0 and later
  6728. * Mac OS X: in version 10.0 and later
  6729. */
  6730. EXTERN_API( Handle )
  6731. LMGetWidthTabHandle(void) TWOWORDINLINE(0x2EB8, 0x0B2A);
  6732. /*
  6733. * LMSetWidthTabHandle()
  6734. *
  6735. * Availability:
  6736. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6737. * CarbonLib: in CarbonLib 1.0 and later
  6738. * Mac OS X: in version 10.0 and later
  6739. */
  6740. EXTERN_API( void )
  6741. LMSetWidthTabHandle(Handle value) TWOWORDINLINE(0x21DF, 0x0B2A);
  6742. /*
  6743. * LMGetLastSPExtra()
  6744. *
  6745. * Availability:
  6746. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6747. * CarbonLib: in CarbonLib 1.0 and later
  6748. * Mac OS X: in version 10.0 and later
  6749. */
  6750. EXTERN_API( SInt32 )
  6751. LMGetLastSPExtra(void) TWOWORDINLINE(0x2EB8, 0x0B4C);
  6752. /*
  6753. * LMSetLastSPExtra()
  6754. *
  6755. * Availability:
  6756. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6757. * CarbonLib: in CarbonLib 1.0 and later
  6758. * Mac OS X: in version 10.0 and later
  6759. */
  6760. EXTERN_API( void )
  6761. LMSetLastSPExtra(SInt32 value) TWOWORDINLINE(0x21DF, 0x0B4C);
  6762. /*
  6763. * LMGetLastFOND()
  6764. *
  6765. * Availability:
  6766. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6767. * CarbonLib: in CarbonLib 1.0 and later
  6768. * Mac OS X: in version 10.0 and later
  6769. */
  6770. EXTERN_API( Handle )
  6771. LMGetLastFOND(void) TWOWORDINLINE(0x2EB8, 0x0BC2);
  6772. /*
  6773. * LMSetLastFOND()
  6774. *
  6775. * Availability:
  6776. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6777. * CarbonLib: in CarbonLib 1.0 and later
  6778. * Mac OS X: in version 10.0 and later
  6779. */
  6780. EXTERN_API( void )
  6781. LMSetLastFOND(Handle value) TWOWORDINLINE(0x21DF, 0x0BC2);
  6782. /*
  6783. * LMGetFractEnable()
  6784. *
  6785. * Availability:
  6786. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6787. * CarbonLib: in CarbonLib 1.0 and later
  6788. * Mac OS X: in version 10.0 and later
  6789. */
  6790. EXTERN_API( UInt8 )
  6791. LMGetFractEnable(void) TWOWORDINLINE(0x1EB8, 0x0BF4);
  6792. /*
  6793. * LMSetFractEnable()
  6794. *
  6795. * Availability:
  6796. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6797. * CarbonLib: in CarbonLib 1.0 and later
  6798. * Mac OS X: in version 10.0 and later
  6799. */
  6800. EXTERN_API( void )
  6801. LMSetFractEnable(UInt8 value) TWOWORDINLINE(0x11DF, 0x0BF4);
  6802. /*
  6803. * LMGetTheGDevice()
  6804. *
  6805. * Availability:
  6806. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6807. * CarbonLib: in CarbonLib 1.0 and later
  6808. * Mac OS X: in version 10.0 and later
  6809. */
  6810. EXTERN_API( GDHandle )
  6811. LMGetTheGDevice(void) TWOWORDINLINE(0x2EB8, 0x0CC8);
  6812. /*
  6813. * LMSetTheGDevice()
  6814. *
  6815. * Availability:
  6816. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6817. * CarbonLib: in CarbonLib 1.0 and later
  6818. * Mac OS X: in version 10.0 and later
  6819. */
  6820. EXTERN_API( void )
  6821. LMSetTheGDevice(GDHandle value) TWOWORDINLINE(0x21DF, 0x0CC8);
  6822. #if TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  6823. #define LMGetHiliteRGB(hiliteRGBValue) (*(hiliteRGBValue) = *(RGBColor*)0x0DA0)
  6824. #define LMSetHiliteRGB(hiliteRGBValue) ((* (RGBColor *) 0x0DA0) = *(hiliteRGBValue))
  6825. #else
  6826. /*
  6827. * LMGetHiliteRGB()
  6828. *
  6829. * Availability:
  6830. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6831. * CarbonLib: in CarbonLib 1.0 and later
  6832. * Mac OS X: in version 10.0 and later
  6833. */
  6834. EXTERN_API( void )
  6835. LMGetHiliteRGB(RGBColor * hiliteRGBValue);
  6836. /*
  6837. * LMSetHiliteRGB()
  6838. *
  6839. * Availability:
  6840. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  6841. * CarbonLib: in CarbonLib 1.0 and later
  6842. * Mac OS X: in version 10.0 and later
  6843. */
  6844. EXTERN_API( void )
  6845. LMSetHiliteRGB(const RGBColor * hiliteRGBValue);
  6846. #endif /* TARGET_CPU_68K && !TARGET_RT_MAC_CFM */
  6847. /*
  6848. * LMGetCursorNew()
  6849. *
  6850. * Availability:
  6851. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  6852. * CarbonLib: in CarbonLib 1.0 and later
  6853. * Mac OS X: in version 10.0 and later
  6854. */
  6855. EXTERN_API( Boolean )
  6856. LMGetCursorNew(void) TWOWORDINLINE(0x1EB8, 0x08CE);
  6857. /*
  6858. * LMSetCursorNew()
  6859. *
  6860. * Availability:
  6861. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  6862. * CarbonLib: in CarbonLib 1.0 and later
  6863. * Mac OS X: in version 10.0 and later
  6864. */
  6865. EXTERN_API( void )
  6866. LMSetCursorNew(Boolean value) TWOWORDINLINE(0x11DF, 0x08CE);
  6867. #if PRAGMA_STRUCT_ALIGN
  6868. #pragma options align=reset
  6869. #elif PRAGMA_STRUCT_PACKPUSH
  6870. #pragma pack(pop)
  6871. #elif PRAGMA_STRUCT_PACK
  6872. #pragma pack()
  6873. #endif
  6874. #ifdef PRAGMA_IMPORT_OFF
  6875. #pragma import off
  6876. #elif PRAGMA_IMPORT
  6877. #pragma import reset
  6878. #endif
  6879. #ifdef __cplusplus
  6880. }
  6881. #endif
  6882. #endif /* __QUICKDRAW__ */