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

多媒体编程

开发平台:

Visual C++

  1. /*
  2.      File:       OCEStandardDirectory.h
  3.  
  4.      Contains:   Apple Open Collaboration Environment Standard Directory Interfaces.
  5.  
  6.      Version:    Technology: AOCE Toolbox 1.02
  7.                  Release:    QuickTime 6.0.2
  8.  
  9.      Copyright:  (c) 1994-2001 by Apple Computer, Inc., all rights reserved.
  10.  
  11.      Bugs?:      For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. */
  17. #ifndef __OCESTANDARDDIRECTORY__
  18. #define __OCESTANDARDDIRECTORY__
  19. #ifndef REZ
  20. #ifndef __ICONS__
  21. #include "Icons.h"
  22. #endif
  23. #ifndef __MACTYPES__
  24. #include "MacTypes.h"
  25. #endif
  26. #ifndef __QUICKDRAW__
  27. #include "Quickdraw.h"
  28. #endif
  29. #ifndef __OCE__
  30. #include "OCE.h"
  31. #endif
  32. #ifndef __OCEAUTHDIR__
  33. #include "OCEAuthDir.h"
  34. #endif
  35. #if PRAGMA_ONCE
  36. #pragma once
  37. #endif
  38. #ifdef __cplusplus
  39. extern "C" {
  40. #endif
  41. #if PRAGMA_IMPORT
  42. #pragma import on
  43. #endif
  44. #if PRAGMA_STRUCT_ALIGN
  45.     #pragma options align=mac68k
  46. #elif PRAGMA_STRUCT_PACKPUSH
  47.     #pragma pack(push, 2)
  48. #elif PRAGMA_STRUCT_PACK
  49.     #pragma pack(2)
  50. #endif
  51. #endif /* REZ */
  52. /* generic icon suites */
  53. #define genericDirectoryIconResource            -16721  /* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  */
  54. #define genericLockedDirectoryIconResource      -16716  /* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  */
  55. #define genericRecordIconResource               -16722  /* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  */
  56. #define genericAttributeIconResource            -16723  /* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  */
  57. #define genericTemplateIconResource             -16746  /* icl8, icl4, ICN#, ics#, ics4, ics8 */
  58. /* standard icon suites */
  59. #define directoryFolderIconResource             -16720  /* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  */
  60. #define lockedDirectoryFolderIconResource       -16719  /* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  */
  61. #define personalDirectoryIconResource           -16718  /* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  */
  62. #define directoriesIconResource                 -16717  /* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  */
  63. #define preferredPersonalDirectoryIconResource  -16724  /* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  */
  64. /* icon IDs for spinning arrows */
  65. #define kFirstSpinnerIcon                       -16745
  66. #define kLastSpinnerIcon                        -16738
  67. /* resource types */
  68. #define kSDPPanelResourceType                   'panl'
  69. #define kSDPFindPanelResourceType               'find'
  70. /* Standard FindPanel resource */
  71. #define kStandardFindLayout                     -16700
  72. #ifndef REZ
  73. /* Prompt For Identity structures */
  74. enum {
  75.     kSDPGuestBit                = 0,
  76.     kSDPSpecificIdentityBit     = 1,
  77.     kSDPLocalIdentityBit        = 2
  78. };
  79. /* Values of SDPIdentityKind */
  80. enum {
  81.     kSDPGuestMask               = 1 << kSDPGuestBit,
  82.     kSDPSpecificIdentityMask    = 1 << kSDPSpecificIdentityBit,
  83.     kSDPLocalIdentityMask       = 1 << kSDPLocalIdentityBit
  84. };
  85. typedef unsigned short                  SDPIdentityKind;
  86. enum {
  87.     kSDPSuggestionOnly          = 0,
  88.     kSDPRestrictToDirectory     = 1,
  89.     kSDPRestrictToRecord        = 2
  90. };
  91. typedef unsigned short                  SDPLoginFilterKind;
  92. /* Panel Structures */
  93. /*
  94. While the panel is in operation, four selection states may exist.
  95.     1) kSDPNothingSelected means nothing is selected.
  96.     2) kContainSelected means a volume, folder, catalog, dnode, or PAB is selected.
  97.     3) kSDPLockedContainerSelected means one of the above, but no access privledges.
  98.     4) kSDPRecordSelected means that a record is currently selected.
  99. */
  100. /* Values of SDPSelectionState */
  101. enum {
  102.     kSDPNothingSelected         = 0,
  103.     kSDPLockedContainerSelected = 1,
  104.     kSDPContainerSelected       = 2,
  105.     kSDPRecordSelected          = 3,
  106.     kSDPRecordAliasSelected     = 4,
  107.     kSDPContainerAliasSelected  = 5
  108. };
  109. typedef unsigned short                  SDPSelectionState;
  110. /*
  111. This type informs the caller of the action the user took, either as the result
  112. of an event (as returned by SDPPanelEvent) or when SDPOpenSelectedItem is called.
  113. kSDPProcessed means that the event (or call to SDPOpenSelectedItem) resulted in no
  114. state change.
  115. kSDPSelectedAnItem indicates that the user wants to select the currently-hilited
  116. record. This is returned, for example, when a user double-clicks on a record.
  117. kSDPChangedSelection implies that the user clicked on a new item (which may mean
  118. that no item is selected).
  119. */
  120. /* Values of SDPPanelState */
  121. enum {
  122.     kSDPProcessed               = 0,
  123.     kSDPSelectedAnItem          = 1,
  124.     kSDPChangedSelection        = 2
  125. };
  126. typedef unsigned short                  SDPPanelState;
  127. /*
  128. Your application may read any of the fields in a SDPPanelRecord, but it should
  129. use the appropriate routines to make changes to the records with the exception
  130. of the refCon field which your application may read or write at will.  Private
  131. information follows the SDPPanelRecord, so the handle must not be re-sized.
  132. */
  133. struct SDPPanelRecord {
  134.     Rect                            bounds;
  135.     Boolean                         visible;
  136.     Boolean                         enabled;
  137.     Boolean                         focused;
  138.     Byte                            padByte;
  139.     AuthIdentity                    identity;
  140.     long                            refCon;
  141.     Rect                            listRect;
  142.     Rect                            popupRect;
  143.     short                           numberOfRows;
  144.     short                           rowHeight;
  145.     Boolean                         pabMode;
  146.     Boolean                         filler1;
  147. };
  148. typedef struct SDPPanelRecord           SDPPanelRecord;
  149. typedef SDPPanelRecord *                SDPPanelPtr;
  150. typedef SDPPanelPtr *                   SDPPanelHandle;
  151. typedef CALLBACK_API( void , PanelBusyProcPtr )(SDPPanelHandle Panel, Boolean busy);
  152. typedef STACK_UPP_TYPE(PanelBusyProcPtr)                        PanelBusyUPP;
  153. #if OPAQUE_UPP_TYPES
  154. #if CALL_NOT_IN_CARBON
  155.     EXTERN_API(PanelBusyUPP)
  156.     NewPanelBusyUPP                (PanelBusyProcPtr        userRoutine);
  157.     EXTERN_API(void)
  158.     DisposePanelBusyUPP            (PanelBusyUPP            userUPP);
  159.     EXTERN_API(void)
  160.     InvokePanelBusyUPP             (SDPPanelHandle          Panel,
  161.                                     Boolean                 busy,
  162.                                     PanelBusyUPP            userUPP);
  163. #endif  /* CALL_NOT_IN_CARBON */
  164. #else
  165.     enum { uppPanelBusyProcInfo = 0x000001C0 };                     /* pascal no_return_value Func(4_bytes, 1_byte) */
  166.     #define NewPanelBusyUPP(userRoutine)                            (PanelBusyUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPanelBusyProcInfo, GetCurrentArchitecture())
  167.     #define DisposePanelBusyUPP(userUPP)                            DisposeRoutineDescriptor(userUPP)
  168.     #define InvokePanelBusyUPP(Panel, busy, userUPP)                CALL_TWO_PARAMETER_UPP((userUPP), uppPanelBusyProcInfo, (Panel), (busy))
  169. #endif
  170. /* support for pre-Carbon UPP routines: NewXXXProc and CallXXXProc */
  171. #define NewPanelBusyProc(userRoutine)                           NewPanelBusyUPP(userRoutine)
  172. #define CallPanelBusyProc(userRoutine, Panel, busy)             InvokePanelBusyUPP(Panel, busy, userRoutine)
  173. typedef PanelBusyUPP                    PanelBusyProc;
  174. /* Find Panel Structures */
  175. enum {
  176.     kSDPItemIsSelectedBit       = 0,
  177.     kSDPFindTextExistsBit       = 1
  178. };
  179. /* Values of SDPFindPanelState */
  180. enum {
  181.     kSDPItemIsSelectedMask      = 1 << kSDPItemIsSelectedBit,
  182.     kSDPFindTextExistsMask      = 1 << kSDPFindTextExistsBit
  183. };
  184. typedef unsigned short                  SDPFindPanelState;
  185. /* Values of SDPFindPanelFocus */
  186. enum {
  187.     kSDPFindPanelNoFocus        = 0,
  188.     kSDPFindPanelListHasFocus   = 1,
  189.     kSDPFindPanelTextHasFocus   = 2
  190. };
  191. typedef unsigned short                  SDPFindPanelFocus;
  192. struct SDPFindPanelRecord {
  193.     Point                           upperLeft;
  194.     Boolean                         visible;
  195.     Boolean                         enabled;
  196.     Boolean                         nowFinding;
  197.     Byte                            padByte;
  198.     SDPFindPanelFocus               currentFocus;
  199.     AuthIdentity                    identity;
  200.     short                           simultaneousSearchCount;
  201.     long                            refCon;
  202. };
  203. typedef struct SDPFindPanelRecord       SDPFindPanelRecord;
  204. typedef SDPFindPanelRecord *            SDPFindPanelPtr;
  205. typedef SDPFindPanelPtr *               SDPFindPanelHandle;
  206. /* Values of SDPFindPanelResult */
  207. enum {
  208.     kSDPSelectedAFindItem       = 0,
  209.     kSDPFindSelectionChanged    = 1,
  210.     kSDPFindCompleted           = 2,
  211.     kSDPTextStateChanged        = 3,
  212.     kSDPFocusChanged            = 4,
  213.     kSDPSelectionAndFocusChanged = 5,
  214.     kSDPMenuChanged             = 6,
  215.     kSDPSelectionAndMenuChanged = 7,
  216.     kSDPProcessedFind           = 8
  217. };
  218. typedef unsigned short                  SDPFindPanelResult;
  219. typedef PackedPathNamePtr *             PackedRStringListHandle;
  220. typedef CALLBACK_API( void , FindPanelBusyProcPtr )(SDPFindPanelHandle findPanel, Boolean busy);
  221. typedef STACK_UPP_TYPE(FindPanelBusyProcPtr)                    FindPanelBusyUPP;
  222. #if OPAQUE_UPP_TYPES
  223. #if CALL_NOT_IN_CARBON
  224.     EXTERN_API(FindPanelBusyUPP)
  225.     NewFindPanelBusyUPP            (FindPanelBusyProcPtr    userRoutine);
  226.     EXTERN_API(void)
  227.     DisposeFindPanelBusyUPP        (FindPanelBusyUPP        userUPP);
  228.     EXTERN_API(void)
  229.     InvokeFindPanelBusyUPP         (SDPFindPanelHandle      findPanel,
  230.                                     Boolean                 busy,
  231.                                     FindPanelBusyUPP        userUPP);
  232. #endif  /* CALL_NOT_IN_CARBON */
  233. #else
  234.     enum { uppFindPanelBusyProcInfo = 0x000001C0 };                 /* pascal no_return_value Func(4_bytes, 1_byte) */
  235.     #define NewFindPanelBusyUPP(userRoutine)                        (FindPanelBusyUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppFindPanelBusyProcInfo, GetCurrentArchitecture())
  236.     #define DisposeFindPanelBusyUPP(userUPP)                        DisposeRoutineDescriptor(userUPP)
  237.     #define InvokeFindPanelBusyUPP(findPanel, busy, userUPP)        CALL_TWO_PARAMETER_UPP((userUPP), uppFindPanelBusyProcInfo, (findPanel), (busy))
  238. #endif
  239. /* support for pre-Carbon UPP routines: NewXXXProc and CallXXXProc */
  240. #define NewFindPanelBusyProc(userRoutine)                       NewFindPanelBusyUPP(userRoutine)
  241. #define CallFindPanelBusyProc(userRoutine, findPanel, busy)     InvokeFindPanelBusyUPP(findPanel, busy, userRoutine)
  242. typedef FindPanelBusyUPP                FindPanelBusyProc;
  243. /* Prompt For Identity Routines */
  244. #if CALL_NOT_IN_CARBON
  245. EXTERN_API( OSErr )
  246. SDPPromptForID                  (AuthIdentity *         id,
  247.                                  ConstStr255Param       guestPrompt,
  248.                                  ConstStr255Param       specificIDPrompt,
  249.                                  ConstStr255Param       localIDPrompt,
  250.                                  const RString *        recordType,
  251.                                  SDPIdentityKind        permittedKinds,
  252.                                  SDPIdentityKind *      selectedKind,
  253.                                  const RecordID *       loginFilter,
  254.                                  SDPLoginFilterKind     filterKind)                         FOURWORDINLINE(0x203C, 0x0010, 0x0388, 0xAA5D);
  255. /*
  256. SDPNewPanel creates a new panel. You supply the window in which the panel
  257. is to live, the bounds for the panel (which includes both the menu and the list),
  258. whether or not the panel is to be initially visible, the initial RLI (nil for
  259. catalogs and volumes), the types of records that will be shown (only a single
  260. (non-nil) type which may contain wildcards), the identity by which to browse
  261. (for access control reasons), and a refCon which is  available to the caller.
  262. */
  263. EXTERN_API( OSErr )
  264. SDPNewPanel                     (SDPPanelHandle *       newPanel,
  265.                                  WindowPtr              window,
  266.                                  const Rect *           bounds,
  267.                                  Boolean                visible,
  268.                                  Boolean                enabled,
  269.                                  const PackedRLI *      initialRLI,
  270.                                  const RStringPtr *     typesList,
  271.                                  unsigned long          typeCount,
  272.                                  AuthIdentity           identity,
  273.                                  DirEnumChoices         enumFlags,
  274.                                  DirMatchWith           matchTypeHow,
  275.                                  long                   refCon)                             FOURWORDINLINE(0x203C, 0x0015, 0x0064, 0xAA5D);
  276. /*
  277. SDPSetIdentity Sets the identity used for browsing.  NOTE: This call is likely to go
  278. away if the new authentication scheme works.
  279. */
  280. EXTERN_API( OSErr )
  281. SDPSetIdentity                  (SDPPanelHandle         panel,
  282.                                  AuthIdentity           identity)                           FOURWORDINLINE(0x203C, 0x0004, 0x0073, 0xAA5D);
  283. /*
  284. SDPGetNewPanel is similar to SDPNewPanel above, except it takes a resource id of a
  285. 'panl' resource.
  286. */
  287. EXTERN_API( OSErr )
  288. SDPGetNewPanel                  (SDPPanelHandle *       newPanel,
  289.                                  short                  resourceID,
  290.                                  WindowPtr              window,
  291.                                  const PackedRLI *      initialRLI,
  292.                                  AuthIdentity           identity)                           FOURWORDINLINE(0x203C, 0x0009, 0x0065, 0xAA5D);
  293. /*
  294. Call this when you're completely done with a panel. It deallocates all of the
  295. associated data structures.
  296. */
  297. EXTERN_API( OSErr )
  298. SDPDisposePanel                 (SDPPanelHandle         panel)                              FOURWORDINLINE(0x203C, 0x0002, 0x0066, 0xAA5D);
  299. /*
  300. If the panel is visible, it makes it invisible by hiding the menu, turning off
  301. drawing of the list, and erasing and  invaling the list's rectangle.
  302. */
  303. EXTERN_API( OSErr )
  304. SDPHidePanel                    (SDPPanelHandle         panel)                              FOURWORDINLINE(0x203C, 0x0002, 0x0067, 0xAA5D);
  305. /* If the panel is invisible, it makes it visible and draws it. */
  306. EXTERN_API( OSErr )
  307. SDPShowPanel                    (SDPPanelHandle         panel)                              FOURWORDINLINE(0x203C, 0x0002, 0x0068, 0xAA5D);
  308. /* Disables the list and menu so that it won't accept any commands. */
  309. EXTERN_API( OSErr )
  310. SDPEnablePanel                  (SDPPanelHandle         panel,
  311.                                  Boolean                enable)                             FOURWORDINLINE(0x203C, 0x0003, 0x0069, 0xAA5D);
  312. /*
  313. Move the upper-left-hand corner of the panel to (h,v), given in local coordinates of
  314. the panel's window.
  315. */
  316. EXTERN_API( OSErr )
  317. SDPMovePanel                    (SDPPanelHandle         panel,
  318.                                  short                  h,
  319.                                  short                  v)                                  FOURWORDINLINE(0x203C, 0x0004, 0x006B, 0xAA5D);
  320. /*
  321. Resizes the panel to have the given width and height (keeping the upper-left-hand
  322. corner in a fixed position).
  323. */
  324. EXTERN_API( OSErr )
  325. SDPSizePanel                    (SDPPanelHandle         panel,
  326.                                  short                  width,
  327.                                  short                  height)                             FOURWORDINLINE(0x203C, 0x0004, 0x006C, 0xAA5D);
  328. /*
  329. This routine simulates a double-click on the selected item (if there is no selected
  330. item, then it does nothing), and it returns the result of that "double-click" via the
  331. whatHappened parameter. If a container is selected, then that container will be
  332. opened and kMovedDownTheHierarchy is returned. If, however, the user is at the lowest
  333. level in the hierarchy, then kSDPSelectedAnItem is returned.
  334. */
  335. EXTERN_API( OSErr )
  336. SDPOpenSelectedItem             (SDPPanelHandle         panel,
  337.                                  SDPPanelState *        whatHappened)                       FOURWORDINLINE(0x203C, 0x0004, 0x006D, 0xAA5D);
  338. /*
  339. Returns whether a record is selected, something else is selected, or nothing is
  340. selected.
  341. */
  342. EXTERN_API( OSErr )
  343. SDPGetPanelSelectionState       (SDPPanelHandle         panel,
  344.                                  SDPSelectionState *    itsState)                           FOURWORDINLINE(0x203C, 0x0004, 0x006E, 0xAA5D);
  345. /*
  346. Returns the size of the currently-selected DSSpec, or zero if a record is
  347. not selected.  It is safe to do a NewPtr (SDPGetPanelSelectionSize (...))
  348. */
  349. EXTERN_API( OSErr )
  350. SDPGetPanelSelectionSize        (SDPPanelHandle         panel,
  351.                                  unsigned short *       dsSpecSize)                         FOURWORDINLINE(0x203C, 0x0004, 0x0072, 0xAA5D);
  352. /*
  353. Returns the currently-selected DSSpec, or a zero-lengthed
  354. DSSpec if a record is not selected. It is assumed that the selection
  355. buffer allocated is large enough.
  356. */
  357. EXTERN_API( OSErr )
  358. SDPGetPanelSelection            (SDPPanelHandle         panel,
  359.                                  PackedDSSpec *         selection)                          FOURWORDINLINE(0x203C, 0x0004, 0x006F, 0xAA5D);
  360. /*
  361. Forces browsing to the specified RLI. If prli is the current RLI, then it does
  362. nothing.
  363. */
  364. EXTERN_API( OSErr )
  365. SDPSetPath                      (SDPPanelHandle         panel,
  366.                                  const PackedRLI *      prli)                               FOURWORDINLINE(0x203C, 0x0004, 0x0070, 0xAA5D);
  367. /*
  368. This is the main driver for the panel.  You should pass all events to SDPPanelEvent
  369. including NULL events.  If you have more than 1 panel, you will need to
  370. call SDPPanelEvent for each panel.  NOTE:  For Update Events you will also need to call
  371. SDPUpdatePanel as described below.
  372. */
  373. EXTERN_API( OSErr )
  374. SDPPanelEvent                   (SDPPanelHandle         panel,
  375.                                  const EventRecord *    theEvent,
  376.                                  SDPPanelState *        whatHappened)                       FOURWORDINLINE(0x203C, 0x0006, 0x0071, 0xAA5D);
  377. /*
  378. SDPUpdatePanel should be called in response to an update event.  Generally you will
  379. have first called BeginUpdate, and pass the windows visRgn as theRgn.  If NULL
  380. is passed for theRgn the entire panel is re-drawn.  NOTE:  Drawing is not cliped to
  381. theRgn, if this is desired, you must first call SetClip.
  382. */
  383. EXTERN_API( OSErr )
  384. SDPUpdatePanel                  (SDPPanelHandle         panel,
  385.                                  RgnHandle              theRgn)                             FOURWORDINLINE(0x203C, 0x0004, 0x006A, 0xAA5D);
  386. /*
  387. SDPSelectString scrolls and selects the closest matching string at the current
  388. level.  This is the same behavior as if the user typed in the given string.
  389. */
  390. EXTERN_API( OSErr )
  391. SDPSelectString                 (SDPPanelHandle         panel,
  392.                                  const RString *        name)                               FOURWORDINLINE(0x203C, 0x0004, 0x0074, 0xAA5D);
  393. /*
  394. SDPGetPathLength returns the length in bytes required to hold the current path name
  395. in RLI format.  This corresponds to the path name in the popup menu.
  396. */
  397. EXTERN_API( OSErr )
  398. SDPGetPathLength                (SDPPanelHandle         panel,
  399.                                  unsigned short *       pathNameLength)                     FOURWORDINLINE(0x203C, 0x0004, 0x0075, 0xAA5D);
  400. /* SDPGetPath returns the current rli. */
  401. EXTERN_API( OSErr )
  402. SDPGetPath                      (SDPPanelHandle         panel,
  403.                                  PackedRLI *            prli,
  404.                                  short *                dsRefNum)                           FOURWORDINLINE(0x203C, 0x0006, 0x0076, 0xAA5D);
  405. /*
  406. SDPSetFocus will draw the focus rectangle or erase the focus rectangle depending upon
  407. the focus boolean.
  408. */
  409. EXTERN_API( OSErr )
  410. SDPSetFocus                     (SDPPanelHandle         panel,
  411.                                  Boolean                focus)                              FOURWORDINLINE(0x203C, 0x0003, 0x0077, 0xAA5D);
  412. /*
  413. SDPSetPanelBalloonHelp allows clients to specify a STR# resource id to use for 
  414. balloon help.  Balloon help is unavailable until this call is made.
  415. */
  416. EXTERN_API( OSErr )
  417. SDPSetPanelBalloonHelp          (SDPPanelHandle         panel,
  418.                                  short                  balloonHelpID)                      FOURWORDINLINE(0x203C, 0x0003, 0x0078, 0xAA5D);
  419. /*
  420. SDPInstallPanelBusyProc allows clients to install a CB that will be called while
  421. the panel is aynchronously busy.
  422. */
  423. EXTERN_API( OSErr )
  424. SDPInstallPanelBusyProc         (SDPPanelHandle         panel,
  425.                                  PanelBusyProc          busyProc)                           FOURWORDINLINE(0x203C, 0x0004, 0x0079, 0xAA5D);
  426. EXTERN_API( OSErr )
  427. SDPNewFindPanel                 (SDPFindPanelHandle *   newPanel,
  428.                                  WindowPtr              window,
  429.                                  Point                  upperLeft,
  430.                                  short                  layoutResourceID,
  431.                                  Boolean                visible,
  432.                                  Boolean                enabled,
  433.                                  const RStringPtr *     typesList,
  434.                                  long                   typeCount,
  435.                                  DirMatchWith           matchTypeHow,
  436.                                  AuthIdentity           identity,
  437.                                  short                  simultaneousSearchCount,
  438.                                  SDPFindPanelFocus      initialFocus,
  439.                                  long                   refCon)                             FOURWORDINLINE(0x203C, 0x0014, 0x08FC, 0xAA5D);
  440. EXTERN_API( OSErr )
  441. SDPDisposeFindPanel             (SDPFindPanelHandle     findPanel)                          FOURWORDINLINE(0x203C, 0x0002, 0x08FD, 0xAA5D);
  442. EXTERN_API( OSErr )
  443. SDPStartFind                    (SDPFindPanelHandle     findPanel)                          FOURWORDINLINE(0x203C, 0x0002, 0x08FE, 0xAA5D);
  444. EXTERN_API( OSErr )
  445. SDPStopFind                     (SDPFindPanelHandle     findPanel)                          FOURWORDINLINE(0x203C, 0x0002, 0x08FF, 0xAA5D);
  446. EXTERN_API( OSErr )
  447. SDPFindPanelEvent               (SDPFindPanelHandle     findPanel,
  448.                                  const EventRecord *    event,
  449.                                  SDPFindPanelResult *   whatHappened)                       FOURWORDINLINE(0x203C, 0x0006, 0x0900, 0xAA5D);
  450. EXTERN_API( OSErr )
  451. SDPUpdateFindPanel              (SDPFindPanelHandle     findPanel,
  452.                                  RgnHandle              theRgn)                             FOURWORDINLINE(0x203C, 0x0004, 0x0901, 0xAA5D);
  453. EXTERN_API( OSErr )
  454. SDPShowFindPanel                (SDPFindPanelHandle     findPanel)                          FOURWORDINLINE(0x203C, 0x0002, 0x0902, 0xAA5D);
  455. EXTERN_API( OSErr )
  456. SDPHideFindPanel                (SDPFindPanelHandle     findPanel)                          FOURWORDINLINE(0x203C, 0x0002, 0x0903, 0xAA5D);
  457. EXTERN_API( OSErr )
  458. SDPMoveFindPanel                (SDPFindPanelHandle     findPanel,
  459.                                  short                  h,
  460.                                  short                  v)                                  FOURWORDINLINE(0x203C, 0x0004, 0x0904, 0xAA5D);
  461. EXTERN_API( OSErr )
  462. SDPEnableFindPanel              (SDPFindPanelHandle     findPanel,
  463.                                  Boolean                enabled)                            FOURWORDINLINE(0x203C, 0x0003, 0x0905, 0xAA5D);
  464. EXTERN_API( OSErr )
  465. SDPSetFindPanelFocus            (SDPFindPanelHandle     findPanel,
  466.                                  SDPFindPanelFocus      newFocus)                           FOURWORDINLINE(0x203C, 0x0003, 0x0906, 0xAA5D);
  467. EXTERN_API( OSErr )
  468. SDPGetFindPanelState            (SDPFindPanelHandle     findPanel,
  469.                                  SDPFindPanelState *    itsState)                           FOURWORDINLINE(0x203C, 0x0004, 0x0907, 0xAA5D);
  470. EXTERN_API( OSErr )
  471. SDPGetFindPanelSelectionSize    (SDPFindPanelHandle     findPanel,
  472.                                  unsigned short *       size)                               FOURWORDINLINE(0x203C, 0x0004, 0x0908, 0xAA5D);
  473. EXTERN_API( OSErr )
  474. SDPGetFindPanelSelection        (SDPFindPanelHandle     findPanel,
  475.                                  PackedDSSpec *         selection)                          FOURWORDINLINE(0x203C, 0x0004, 0x0909, 0xAA5D);
  476. EXTERN_API( OSErr )
  477. SDPSetFindPanelBalloonHelp      (SDPFindPanelHandle     findPanel,
  478.                                  short                  balloonHelpID)                      FOURWORDINLINE(0x203C, 0x0003, 0x090A, 0xAA5D);
  479. EXTERN_API( OSErr )
  480. SDPSetFindIdentity              (SDPFindPanelHandle     findPanel,
  481.                                  AuthIdentity           identity)                           FOURWORDINLINE(0x203C, 0x0004, 0x090B, 0xAA5D);
  482. EXTERN_API( OSErr )
  483. SDPInstallFindPanelBusyProc     (SDPFindPanelHandle     findPanel,
  484.                                  FindPanelBusyProc      busyProc)                           FOURWORDINLINE(0x203C, 0x0004, 0x090C, 0xAA5D);
  485. EXTERN_API( OSErr )
  486. SDPGetIconByType                (const RString *        recordType,
  487.                                  IconSelectorValue      whichIcons,
  488.                                  Handle *               iconSuite)                          THREEWORDINLINE(0x303C, 0x0400, 0xAA5C);
  489. EXTERN_API( OSErr )
  490. SDPGetDSSpecIcon                (const PackedDSSpec *   packedDSSpec,
  491.                                  IconSelectorValue      whichIcons,
  492.                                  Handle *               iconSuite)                          THREEWORDINLINE(0x303C, 0x0401, 0xAA5C);
  493. EXTERN_API( OSErr )
  494. SDPGetCategories                (PackedRStringListHandle * categories,
  495.                                  PackedRStringListHandle * displayNames)                    THREEWORDINLINE(0x303C, 0x0402, 0xAA5C);
  496. EXTERN_API( OSErr )
  497. SDPGetCategoryTypes             (const RString *        category,
  498.                                  PackedRStringListHandle * types)                           THREEWORDINLINE(0x303C, 0x0403, 0xAA5C);
  499. EXTERN_API( OSErr )
  500. SDPResolveAliasFile             (FSSpecPtr              fileSpec,
  501.                                  PackedDSSpecHandle     resolvedDSSpec,
  502.                                  AuthIdentity           identity,
  503.                                  Boolean                mayPromptUser)                      FOURWORDINLINE(0x203C, 0x0007, 0x0E74, 0xAA5D);
  504. EXTERN_API( OSErr )
  505. SDPResolveAliasDSSpec           (PackedDSSpecHandle     theAliasDSSpec,
  506.                                  AuthIdentity           identity,
  507.                                  Boolean                mayPromptUser)                      FOURWORDINLINE(0x203C, 0x0005, 0x0E75, 0xAA5D);
  508. EXTERN_API( OSErr )
  509. SDPRepairPersonalDirectory      (FSSpec *               pd,
  510.                                  Boolean                showProgress)                       FOURWORDINLINE(0x203C, 0x0003, 0x1A2C, 0xAA5D);
  511. #endif /* REZ */
  512. #endif  /* CALL_NOT_IN_CARBON */
  513. #if PRAGMA_STRUCT_ALIGN
  514.     #pragma options align=reset
  515. #elif PRAGMA_STRUCT_PACKPUSH
  516.     #pragma pack(pop)
  517. #elif PRAGMA_STRUCT_PACK
  518.     #pragma pack()
  519. #endif
  520. #ifdef PRAGMA_IMPORT_OFF
  521. #pragma import off
  522. #elif PRAGMA_IMPORT
  523. #pragma import reset
  524. #endif
  525. #ifdef __cplusplus
  526. }
  527. #endif
  528. #endif /* __OCESTANDARDDIRECTORY__ */