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.
753 lines
24 KiB
753 lines
24 KiB
5 years ago
|
/*
|
||
|
File: StandardFile.h
|
||
|
|
||
|
Contains: Standard File package Interfaces.
|
||
|
|
||
|
Version: QuickTime 7.3
|
||
|
|
||
|
Copyright: (c) 2007 (c) 1990-2001 by Apple Computer, Inc., all rights reserved
|
||
|
|
||
|
Bugs?: For bug reports, consult the following page on
|
||
|
the World Wide Web:
|
||
|
|
||
|
http://developer.apple.com/bugreporter/
|
||
|
|
||
|
*/
|
||
|
#ifndef __STANDARDFILE__
|
||
|
#define __STANDARDFILE__
|
||
|
|
||
|
#ifndef __MACTYPES__
|
||
|
#include <MacTypes.h>
|
||
|
#endif
|
||
|
|
||
|
#ifndef __DIALOGS__
|
||
|
#include <Dialogs.h>
|
||
|
#endif
|
||
|
|
||
|
#ifndef __FILES__
|
||
|
#include <Files.h>
|
||
|
#endif
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
#if PRAGMA_ONCE
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
#if PRAGMA_IMPORT
|
||
|
#pragma import on
|
||
|
#endif
|
||
|
|
||
|
#if PRAGMA_STRUCT_ALIGN
|
||
|
#pragma options align=mac68k
|
||
|
#elif PRAGMA_STRUCT_PACKPUSH
|
||
|
#pragma pack(push, 2)
|
||
|
#elif PRAGMA_STRUCT_PACK
|
||
|
#pragma pack(2)
|
||
|
#endif
|
||
|
|
||
|
enum {
|
||
|
/* resource IDs of pre-7.0 get and put dialogs */
|
||
|
putDlgID = -3999,
|
||
|
getDlgID = -4000
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
/* item offsets of pre-7.0 get and put dialogs */
|
||
|
putSave = 1,
|
||
|
putCancel = 2,
|
||
|
putEject = 5,
|
||
|
putDrive = 6,
|
||
|
putName = 7,
|
||
|
getOpen = 1,
|
||
|
getCancel = 3,
|
||
|
getEject = 5,
|
||
|
getDrive = 6,
|
||
|
getNmList = 7,
|
||
|
getScroll = 8
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
/* resource IDs of 7.0 get and put dialogs */
|
||
|
sfPutDialogID = -6043,
|
||
|
sfGetDialogID = -6042
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
/* item offsets of 7.0 get and put dialogs */
|
||
|
sfItemOpenButton = 1,
|
||
|
sfItemCancelButton = 2,
|
||
|
sfItemBalloonHelp = 3,
|
||
|
sfItemVolumeUser = 4,
|
||
|
sfItemEjectButton = 5,
|
||
|
sfItemDesktopButton = 6,
|
||
|
sfItemFileListUser = 7,
|
||
|
sfItemPopUpMenuUser = 8,
|
||
|
sfItemDividerLinePict = 9,
|
||
|
sfItemFileNameTextEdit = 10,
|
||
|
sfItemPromptStaticText = 11,
|
||
|
sfItemNewFolderUser = 12
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
/* pseudo-item hits for use in DlgHook */
|
||
|
sfHookFirstCall = -1,
|
||
|
sfHookCharOffset = 0x1000,
|
||
|
sfHookNullEvent = 100,
|
||
|
sfHookRebuildList = 101,
|
||
|
sfHookFolderPopUp = 102,
|
||
|
sfHookOpenFolder = 103, /* the following are only in system 7.0+ */
|
||
|
sfHookLastCall = -2,
|
||
|
sfHookOpenAlias = 104,
|
||
|
sfHookGoToDesktop = 105,
|
||
|
sfHookGoToAliasTarget = 106,
|
||
|
sfHookGoToParent = 107,
|
||
|
sfHookGoToNextDrive = 108,
|
||
|
sfHookGoToPrevDrive = 109,
|
||
|
sfHookChangeSelection = 110,
|
||
|
sfHookSetActiveOffset = 200
|
||
|
};
|
||
|
|
||
|
|
||
|
/* the refcon field of the dialog record during a
|
||
|
modalfilter or dialoghook contains one of the following */
|
||
|
enum {
|
||
|
sfMainDialogRefCon = FOUR_CHAR_CODE('stdf'),
|
||
|
sfNewFolderDialogRefCon = FOUR_CHAR_CODE('nfdr'),
|
||
|
sfReplaceDialogRefCon = FOUR_CHAR_CODE('rplc'),
|
||
|
sfStatWarnDialogRefCon = FOUR_CHAR_CODE('stat'),
|
||
|
sfLockWarnDialogRefCon = FOUR_CHAR_CODE('lock'),
|
||
|
sfErrorDialogRefCon = FOUR_CHAR_CODE('err ')
|
||
|
};
|
||
|
|
||
|
|
||
|
struct SFReply {
|
||
|
Boolean good;
|
||
|
Boolean copy;
|
||
|
OSType fType;
|
||
|
short vRefNum;
|
||
|
short version;
|
||
|
StrFileName fName; /* a Str63 on MacOS */
|
||
|
};
|
||
|
typedef struct SFReply SFReply;
|
||
|
struct StandardFileReply {
|
||
|
Boolean sfGood;
|
||
|
Boolean sfReplacing;
|
||
|
OSType sfType;
|
||
|
FSSpec sfFile;
|
||
|
ScriptCode sfScript;
|
||
|
short sfFlags;
|
||
|
Boolean sfIsFolder;
|
||
|
Boolean sfIsVolume;
|
||
|
long sfReserved1;
|
||
|
short sfReserved2;
|
||
|
};
|
||
|
typedef struct StandardFileReply StandardFileReply;
|
||
|
/* for CustomXXXFile, ActivationOrderListPtr parameter is a pointer to an array of item numbers */
|
||
|
|
||
|
typedef const short * ActivationOrderListPtr;
|
||
|
typedef CALLBACK_API( short , DlgHookProcPtr )(short item, DialogRef theDialog);
|
||
|
typedef CALLBACK_API( Boolean , FileFilterProcPtr )(CInfoPBPtr pb);
|
||
|
/* the following also include an extra parameter of "your data pointer" */
|
||
|
typedef CALLBACK_API( short , DlgHookYDProcPtr )(short item, DialogRef theDialog, void *yourDataPtr);
|
||
|
/* ModalFilterYDProcPtr moved to Dialogs.h */
|
||
|
typedef CALLBACK_API( Boolean , FileFilterYDProcPtr )(CInfoPBPtr pb, void *yourDataPtr);
|
||
|
typedef CALLBACK_API( void , ActivateYDProcPtr )(DialogRef theDialog, short itemNo, Boolean activating, void *yourDataPtr);
|
||
|
typedef STACK_UPP_TYPE(DlgHookProcPtr) DlgHookUPP;
|
||
|
typedef STACK_UPP_TYPE(FileFilterProcPtr) FileFilterUPP;
|
||
|
typedef STACK_UPP_TYPE(DlgHookYDProcPtr) DlgHookYDUPP;
|
||
|
typedef STACK_UPP_TYPE(FileFilterYDProcPtr) FileFilterYDUPP;
|
||
|
typedef STACK_UPP_TYPE(ActivateYDProcPtr) ActivateYDUPP;
|
||
|
#if CALL_NOT_IN_CARBON
|
||
|
/*
|
||
|
* NewDlgHookUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( DlgHookUPP )
|
||
|
NewDlgHookUPP(DlgHookProcPtr userRoutine);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
enum { uppDlgHookProcInfo = 0x000003A0 }; /* pascal 2_bytes Func(2_bytes, 4_bytes) */
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(DlgHookUPP) NewDlgHookUPP(DlgHookProcPtr userRoutine) { return (DlgHookUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDlgHookProcInfo, GetCurrentArchitecture()); }
|
||
|
#else
|
||
|
#define NewDlgHookUPP(userRoutine) (DlgHookUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDlgHookProcInfo, GetCurrentArchitecture())
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* NewFileFilterUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( FileFilterUPP )
|
||
|
NewFileFilterUPP(FileFilterProcPtr userRoutine);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
enum { uppFileFilterProcInfo = 0x000000D0 }; /* pascal 1_byte Func(4_bytes) */
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(FileFilterUPP) NewFileFilterUPP(FileFilterProcPtr userRoutine) { return (FileFilterUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppFileFilterProcInfo, GetCurrentArchitecture()); }
|
||
|
#else
|
||
|
#define NewFileFilterUPP(userRoutine) (FileFilterUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppFileFilterProcInfo, GetCurrentArchitecture())
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* NewDlgHookYDUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( DlgHookYDUPP )
|
||
|
NewDlgHookYDUPP(DlgHookYDProcPtr userRoutine);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
enum { uppDlgHookYDProcInfo = 0x00000FA0 }; /* pascal 2_bytes Func(2_bytes, 4_bytes, 4_bytes) */
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(DlgHookYDUPP) NewDlgHookYDUPP(DlgHookYDProcPtr userRoutine) { return (DlgHookYDUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDlgHookYDProcInfo, GetCurrentArchitecture()); }
|
||
|
#else
|
||
|
#define NewDlgHookYDUPP(userRoutine) (DlgHookYDUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDlgHookYDProcInfo, GetCurrentArchitecture())
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* NewFileFilterYDUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( FileFilterYDUPP )
|
||
|
NewFileFilterYDUPP(FileFilterYDProcPtr userRoutine);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
enum { uppFileFilterYDProcInfo = 0x000003D0 }; /* pascal 1_byte Func(4_bytes, 4_bytes) */
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(FileFilterYDUPP) NewFileFilterYDUPP(FileFilterYDProcPtr userRoutine) { return (FileFilterYDUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppFileFilterYDProcInfo, GetCurrentArchitecture()); }
|
||
|
#else
|
||
|
#define NewFileFilterYDUPP(userRoutine) (FileFilterYDUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppFileFilterYDProcInfo, GetCurrentArchitecture())
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* NewActivateYDUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( ActivateYDUPP )
|
||
|
NewActivateYDUPP(ActivateYDProcPtr userRoutine);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
enum { uppActivateYDProcInfo = 0x000036C0 }; /* pascal no_return_value Func(4_bytes, 2_bytes, 1_byte, 4_bytes) */
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(ActivateYDUPP) NewActivateYDUPP(ActivateYDProcPtr userRoutine) { return (ActivateYDUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppActivateYDProcInfo, GetCurrentArchitecture()); }
|
||
|
#else
|
||
|
#define NewActivateYDUPP(userRoutine) (ActivateYDUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppActivateYDProcInfo, GetCurrentArchitecture())
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* DisposeDlgHookUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
DisposeDlgHookUPP(DlgHookUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(void) DisposeDlgHookUPP(DlgHookUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
|
||
|
#else
|
||
|
#define DisposeDlgHookUPP(userUPP) DisposeRoutineDescriptor(userUPP)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* DisposeFileFilterUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
DisposeFileFilterUPP(FileFilterUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(void) DisposeFileFilterUPP(FileFilterUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
|
||
|
#else
|
||
|
#define DisposeFileFilterUPP(userUPP) DisposeRoutineDescriptor(userUPP)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* DisposeDlgHookYDUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
DisposeDlgHookYDUPP(DlgHookYDUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(void) DisposeDlgHookYDUPP(DlgHookYDUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
|
||
|
#else
|
||
|
#define DisposeDlgHookYDUPP(userUPP) DisposeRoutineDescriptor(userUPP)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* DisposeFileFilterYDUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
DisposeFileFilterYDUPP(FileFilterYDUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(void) DisposeFileFilterYDUPP(FileFilterYDUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
|
||
|
#else
|
||
|
#define DisposeFileFilterYDUPP(userUPP) DisposeRoutineDescriptor(userUPP)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* DisposeActivateYDUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
DisposeActivateYDUPP(ActivateYDUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(void) DisposeActivateYDUPP(ActivateYDUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
|
||
|
#else
|
||
|
#define DisposeActivateYDUPP(userUPP) DisposeRoutineDescriptor(userUPP)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* InvokeDlgHookUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( short )
|
||
|
InvokeDlgHookUPP(
|
||
|
short item,
|
||
|
DialogRef theDialog,
|
||
|
DlgHookUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(short) InvokeDlgHookUPP(short item, DialogRef theDialog, DlgHookUPP userUPP) { return (short)CALL_TWO_PARAMETER_UPP(userUPP, uppDlgHookProcInfo, item, theDialog); }
|
||
|
#else
|
||
|
#define InvokeDlgHookUPP(item, theDialog, userUPP) (short)CALL_TWO_PARAMETER_UPP((userUPP), uppDlgHookProcInfo, (item), (theDialog))
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* InvokeFileFilterUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( Boolean )
|
||
|
InvokeFileFilterUPP(
|
||
|
CInfoPBPtr pb,
|
||
|
FileFilterUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(Boolean) InvokeFileFilterUPP(CInfoPBPtr pb, FileFilterUPP userUPP) { return (Boolean)CALL_ONE_PARAMETER_UPP(userUPP, uppFileFilterProcInfo, pb); }
|
||
|
#else
|
||
|
#define InvokeFileFilterUPP(pb, userUPP) (Boolean)CALL_ONE_PARAMETER_UPP((userUPP), uppFileFilterProcInfo, (pb))
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* InvokeDlgHookYDUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( short )
|
||
|
InvokeDlgHookYDUPP(
|
||
|
short item,
|
||
|
DialogRef theDialog,
|
||
|
void * yourDataPtr,
|
||
|
DlgHookYDUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(short) InvokeDlgHookYDUPP(short item, DialogRef theDialog, void * yourDataPtr, DlgHookYDUPP userUPP) { return (short)CALL_THREE_PARAMETER_UPP(userUPP, uppDlgHookYDProcInfo, item, theDialog, yourDataPtr); }
|
||
|
#else
|
||
|
#define InvokeDlgHookYDUPP(item, theDialog, yourDataPtr, userUPP) (short)CALL_THREE_PARAMETER_UPP((userUPP), uppDlgHookYDProcInfo, (item), (theDialog), (yourDataPtr))
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* InvokeFileFilterYDUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( Boolean )
|
||
|
InvokeFileFilterYDUPP(
|
||
|
CInfoPBPtr pb,
|
||
|
void * yourDataPtr,
|
||
|
FileFilterYDUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(Boolean) InvokeFileFilterYDUPP(CInfoPBPtr pb, void * yourDataPtr, FileFilterYDUPP userUPP) { return (Boolean)CALL_TWO_PARAMETER_UPP(userUPP, uppFileFilterYDProcInfo, pb, yourDataPtr); }
|
||
|
#else
|
||
|
#define InvokeFileFilterYDUPP(pb, yourDataPtr, userUPP) (Boolean)CALL_TWO_PARAMETER_UPP((userUPP), uppFileFilterYDProcInfo, (pb), (yourDataPtr))
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* InvokeActivateYDUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
InvokeActivateYDUPP(
|
||
|
DialogRef theDialog,
|
||
|
short itemNo,
|
||
|
Boolean activating,
|
||
|
void * yourDataPtr,
|
||
|
ActivateYDUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(void) InvokeActivateYDUPP(DialogRef theDialog, short itemNo, Boolean activating, void * yourDataPtr, ActivateYDUPP userUPP) { CALL_FOUR_PARAMETER_UPP(userUPP, uppActivateYDProcInfo, theDialog, itemNo, activating, yourDataPtr); }
|
||
|
#else
|
||
|
#define InvokeActivateYDUPP(theDialog, itemNo, activating, yourDataPtr, userUPP) CALL_FOUR_PARAMETER_UPP((userUPP), uppActivateYDProcInfo, (theDialog), (itemNo), (activating), (yourDataPtr))
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
#endif /* CALL_NOT_IN_CARBON */
|
||
|
|
||
|
#if CALL_NOT_IN_CARBON || OLDROUTINENAMES
|
||
|
/* support for pre-Carbon UPP routines: New...Proc and Call...Proc */
|
||
|
#define NewDlgHookProc(userRoutine) NewDlgHookUPP(userRoutine)
|
||
|
#define NewFileFilterProc(userRoutine) NewFileFilterUPP(userRoutine)
|
||
|
#define NewDlgHookYDProc(userRoutine) NewDlgHookYDUPP(userRoutine)
|
||
|
#define NewFileFilterYDProc(userRoutine) NewFileFilterYDUPP(userRoutine)
|
||
|
#define NewActivateYDProc(userRoutine) NewActivateYDUPP(userRoutine)
|
||
|
#define CallDlgHookProc(userRoutine, item, theDialog) InvokeDlgHookUPP(item, theDialog, userRoutine)
|
||
|
#define CallFileFilterProc(userRoutine, pb) InvokeFileFilterUPP(pb, userRoutine)
|
||
|
#define CallDlgHookYDProc(userRoutine, item, theDialog, yourDataPtr) InvokeDlgHookYDUPP(item, theDialog, yourDataPtr, userRoutine)
|
||
|
#define CallFileFilterYDProc(userRoutine, pb, yourDataPtr) InvokeFileFilterYDUPP(pb, yourDataPtr, userRoutine)
|
||
|
#define CallActivateYDProc(userRoutine, theDialog, itemNo, activating, yourDataPtr) InvokeActivateYDUPP(theDialog, itemNo, activating, yourDataPtr, userRoutine)
|
||
|
#endif /* CALL_NOT_IN_CARBON */
|
||
|
|
||
|
typedef OSType SFTypeList[4];
|
||
|
/*
|
||
|
The GetFile "typeList" parameter type has changed from "SFTypeList" to "ConstSFTypeListPtr".
|
||
|
For C, this will add "const" and make it an in-only parameter.
|
||
|
For Pascal, this will require client code to use the @ operator, but make it easier to specify long lists.
|
||
|
|
||
|
ConstSFTypeListPtr is a pointer to an array of OSTypes.
|
||
|
*/
|
||
|
typedef const OSType * ConstSFTypeListPtr;
|
||
|
#if CALL_NOT_IN_CARBON
|
||
|
/*
|
||
|
* SFPutFile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API( void )
|
||
|
SFPutFile(
|
||
|
Point where,
|
||
|
ConstStr255Param prompt, /* can be NULL */
|
||
|
ConstStr255Param origName,
|
||
|
DlgHookUPP dlgHook, /* can be NULL */
|
||
|
SFReply * reply) THREEWORDINLINE(0x3F3C, 0x0001, 0xA9EA);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* SFGetFile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API( void )
|
||
|
SFGetFile(
|
||
|
Point where,
|
||
|
ConstStr255Param prompt,
|
||
|
FileFilterUPP fileFilter, /* can be NULL */
|
||
|
short numTypes,
|
||
|
ConstSFTypeListPtr typeList, /* can be NULL */
|
||
|
DlgHookUPP dlgHook, /* can be NULL */
|
||
|
SFReply * reply) THREEWORDINLINE(0x3F3C, 0x0002, 0xA9EA);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* SFPPutFile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API( void )
|
||
|
SFPPutFile(
|
||
|
Point where,
|
||
|
ConstStr255Param prompt, /* can be NULL */
|
||
|
ConstStr255Param origName,
|
||
|
DlgHookUPP dlgHook,
|
||
|
SFReply * reply,
|
||
|
short dlgID,
|
||
|
ModalFilterUPP filterProc) /* can be NULL */ THREEWORDINLINE(0x3F3C, 0x0003, 0xA9EA);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* SFPGetFile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API( void )
|
||
|
SFPGetFile(
|
||
|
Point where,
|
||
|
ConstStr255Param prompt,
|
||
|
FileFilterUPP fileFilter, /* can be NULL */
|
||
|
short numTypes,
|
||
|
ConstSFTypeListPtr typeList, /* can be NULL */
|
||
|
DlgHookUPP dlgHook, /* can be NULL */
|
||
|
SFReply * reply,
|
||
|
short dlgID,
|
||
|
ModalFilterUPP filterProc) /* can be NULL */ THREEWORDINLINE(0x3F3C, 0x0004, 0xA9EA);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* StandardPutFile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API( void )
|
||
|
StandardPutFile(
|
||
|
ConstStr255Param prompt, /* can be NULL */
|
||
|
ConstStr255Param defaultName,
|
||
|
StandardFileReply * reply) THREEWORDINLINE(0x3F3C, 0x0005, 0xA9EA);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* StandardGetFile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API( void )
|
||
|
StandardGetFile(
|
||
|
FileFilterUPP fileFilter, /* can be NULL */
|
||
|
short numTypes,
|
||
|
ConstSFTypeListPtr typeList, /* can be NULL */
|
||
|
StandardFileReply * reply) THREEWORDINLINE(0x3F3C, 0x0006, 0xA9EA);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* CustomPutFile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API( void )
|
||
|
CustomPutFile(
|
||
|
ConstStr255Param prompt, /* can be NULL */
|
||
|
ConstStr255Param defaultName,
|
||
|
StandardFileReply * reply,
|
||
|
short dlgID,
|
||
|
Point where,
|
||
|
DlgHookYDUPP dlgHook, /* can be NULL */
|
||
|
ModalFilterYDUPP filterProc, /* can be NULL */
|
||
|
ActivationOrderListPtr activeList, /* can be NULL */
|
||
|
ActivateYDUPP activate, /* can be NULL */
|
||
|
void * yourDataPtr) THREEWORDINLINE(0x3F3C, 0x0007, 0xA9EA);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* CustomGetFile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API( void )
|
||
|
CustomGetFile(
|
||
|
FileFilterYDUPP fileFilter, /* can be NULL */
|
||
|
short numTypes,
|
||
|
ConstSFTypeListPtr typeList, /* can be NULL */
|
||
|
StandardFileReply * reply,
|
||
|
short dlgID,
|
||
|
Point where,
|
||
|
DlgHookYDUPP dlgHook, /* can be NULL */
|
||
|
ModalFilterYDUPP filterProc, /* can be NULL */
|
||
|
ActivationOrderListPtr activeList, /* can be NULL */
|
||
|
ActivateYDUPP activate, /* can be NULL */
|
||
|
void * yourDataPtr) THREEWORDINLINE(0x3F3C, 0x0008, 0xA9EA);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* StandardOpenDialog()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in Translation 1.0 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
StandardOpenDialog(StandardFileReply * reply);
|
||
|
|
||
|
|
||
|
#endif /* CALL_NOT_IN_CARBON */
|
||
|
|
||
|
#if CALL_NOT_IN_CARBON
|
||
|
/*
|
||
|
* sfpputfile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
sfpputfile(
|
||
|
Point * where,
|
||
|
const char * prompt,
|
||
|
const char * origName,
|
||
|
DlgHookUPP dlgHook, /* can be NULL */
|
||
|
SFReply * reply,
|
||
|
short dlgID,
|
||
|
ModalFilterUPP filterProc); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* sfgetfile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
sfgetfile(
|
||
|
Point * where,
|
||
|
const char * prompt,
|
||
|
FileFilterUPP fileFilter, /* can be NULL */
|
||
|
short numTypes,
|
||
|
ConstSFTypeListPtr typeList, /* can be NULL */
|
||
|
DlgHookUPP dlgHook, /* can be NULL */
|
||
|
SFReply * reply);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* sfpgetfile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
sfpgetfile(
|
||
|
Point * where,
|
||
|
const char * prompt,
|
||
|
FileFilterUPP fileFilter, /* can be NULL */
|
||
|
short numTypes,
|
||
|
ConstSFTypeListPtr typeList, /* can be NULL */
|
||
|
DlgHookUPP dlgHook, /* can be NULL */
|
||
|
SFReply * reply,
|
||
|
short dlgID,
|
||
|
ModalFilterUPP filterProc); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* sfputfile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: not available
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
sfputfile(
|
||
|
Point * where,
|
||
|
const char * prompt,
|
||
|
const char * origName,
|
||
|
DlgHookUPP dlgHook, /* can be NULL */
|
||
|
SFReply * reply);
|
||
|
|
||
|
|
||
|
#endif /* CALL_NOT_IN_CARBON */
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
#if PRAGMA_STRUCT_ALIGN
|
||
|
#pragma options align=reset
|
||
|
#elif PRAGMA_STRUCT_PACKPUSH
|
||
|
#pragma pack(pop)
|
||
|
#elif PRAGMA_STRUCT_PACK
|
||
|
#pragma pack()
|
||
|
#endif
|
||
|
|
||
|
#ifdef PRAGMA_IMPORT_OFF
|
||
|
#pragma import off
|
||
|
#elif PRAGMA_IMPORT
|
||
|
#pragma import reset
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#endif /* __STANDARDFILE__ */
|
||
|
|