topical media & game development
lib-of-vs-libs-QTDevWin-CIncludes-TSMTE.h / h
/*
File: TSMTE.h
Contains: Text Services Managerfor TextEdit Interfaces.
Version: Technology: System 7.5
Release: QuickTime 6.0.2
Copyright: (c) 1991-2001 Apple Technology, Inc. All rights reserved.
Bugs?: For bug reports, consult the following page on
the World Wide Web:
http://developer.apple.com/bugreporter/
*/
ifndef __TSMTE__
define __TSMTE__
ifndef __TEXTEDIT__
include <TextEdit.h>
endif
ifndef __DIALOGS__
include <Dialogs.h>
endif
ifndef __APPLEEVENTS__
include <AppleEvents.h>
endif
ifndef __TEXTSERVICES__
include <TextServices.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
/* signature, interface types*/
enum {
kTSMTESignature = FOUR_CHAR_CODE('tmTE'),
kTSMTEInterfaceType = FOUR_CHAR_CODE('tmTE'),
kTSMTEDialog = FOUR_CHAR_CODE('tmDI')
};
/* update flag for TSMTERec*/
enum {
kTSMTEAutoScroll = 1
};
/* callback procedure definitions*/
typedef CALLBACK_API( void , TSMTEPreUpdateProcPtr )(TEHandle textH, long refCon);
typedef CALLBACK_API( void , TSMTEPostUpdateProcPtr )(TEHandle textH, long fixLen, long inputAreaStart, long inputAreaEnd, long pinStart, long pinEnd, long refCon);
typedef STACK_UPP_TYPE(TSMTEPreUpdateProcPtr) TSMTEPreUpdateUPP;
typedef STACK_UPP_TYPE(TSMTEPostUpdateProcPtr) TSMTEPostUpdateUPP;
/* data types*/
struct TSMTERec {
TEHandle textH;
TSMTEPreUpdateUPP preUpdateProc;
TSMTEPostUpdateUPP postUpdateProc;
long updateFlag;
long refCon;
};
typedef struct TSMTERec TSMTERec;
typedef TSMTERec * TSMTERecPtr;
typedef TSMTERecPtr * TSMTERecHandle;
if !OPAQUE_TOOLBOX_STRUCTS
struct TSMDialogRecord {
DialogRecord fDialog;
TSMDocumentID fDocID;
TSMTERecHandle fTSMTERecH;
long fTSMTERsvd[3]; /* reserved*/
};
typedef struct TSMDialogRecord TSMDialogRecord;
typedef TSMDialogRecord * TSMDialogPtr;
typedef TSMDialogPtr TSMDialogPeek;
endif /* !OPAQUE_TOOLBOX_STRUCTS */
if OPAQUE_UPP_TYPES
EXTERN_API(TSMTEPreUpdateUPP)
NewTSMTEPreUpdateUPP (TSMTEPreUpdateProcPtr userRoutine);
EXTERN_API(TSMTEPostUpdateUPP)
NewTSMTEPostUpdateUPP (TSMTEPostUpdateProcPtr userRoutine);
EXTERN_API(void)
DisposeTSMTEPreUpdateUPP (TSMTEPreUpdateUPP userUPP);
EXTERN_API(void)
DisposeTSMTEPostUpdateUPP (TSMTEPostUpdateUPP userUPP);
EXTERN_API(void)
InvokeTSMTEPreUpdateUPP (TEHandle textH,
long refCon,
TSMTEPreUpdateUPP userUPP);
EXTERN_API(void)
InvokeTSMTEPostUpdateUPP (TEHandle textH,
long fixLen,
long inputAreaStart,
long inputAreaEnd,
long pinStart,
long pinEnd,
long refCon,
TSMTEPostUpdateUPP userUPP);
else
enum { uppTSMTEPreUpdateProcInfo = 0x000003C0 }; /* pascal no_return_value Func(4_bytes, 4_bytes) */
enum { uppTSMTEPostUpdateProcInfo = 0x000FFFC0 }; /* pascal no_return_value Func(4_bytes, 4_bytes, 4_bytes, 4_bytes, 4_bytes, 4_bytes, 4_bytes) */
#define NewTSMTEPreUpdateUPP(userRoutine) (TSMTEPreUpdateUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppTSMTEPreUpdateProcInfo, GetCurrentArchitecture())
#define NewTSMTEPostUpdateUPP(userRoutine) (TSMTEPostUpdateUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppTSMTEPostUpdateProcInfo, GetCurrentArchitecture())
#define DisposeTSMTEPreUpdateUPP(userUPP) DisposeRoutineDescriptor(userUPP)
#define DisposeTSMTEPostUpdateUPP(userUPP) DisposeRoutineDescriptor(userUPP)
#define InvokeTSMTEPreUpdateUPP(textH, refCon, userUPP) CALL_TWO_PARAMETER_UPP((userUPP), uppTSMTEPreUpdateProcInfo, (textH), (refCon))
#define InvokeTSMTEPostUpdateUPP(textH, fixLen, inputAreaStart, inputAreaEnd, pinStart, pinEnd, refCon, userUPP) CALL_SEVEN_PARAMETER_UPP((userUPP), uppTSMTEPostUpdateProcInfo, (textH), (fixLen), (inputAreaStart), (inputAreaEnd), (pinStart), (pinEnd), (refCon))
endif
/* support for pre-Carbon UPP routines: NewXXXProc and CallXXXProc */
define NewTSMTEPreUpdateProc(userRoutine) NewTSMTEPreUpdateUPP(userRoutine)
define NewTSMTEPostUpdateProc(userRoutine) NewTSMTEPostUpdateUPP(userRoutine)
define CallTSMTEPreUpdateProc(userRoutine, textH, refCon) InvokeTSMTEPreUpdateUPP(textH, refCon, userRoutine)
define CallTSMTEPostUpdateProc(userRoutine, textH, fixLen, inputAreaStart, inputAreaEnd, pinStart, pinEnd, refCon) InvokeTSMTEPostUpdateUPP(textH, fixLen, inputAreaStart, inputAreaEnd, pinStart, pinEnd, refCon, userRoutine)
if ACCESSOR_CALLS_ARE_FUNCTIONS
EXTERN_API( Boolean )
IsTSMTEDialog (DialogPtr dialog);
/* Getters */
EXTERN_API( TSMDocumentID )
GetTSMTEDialogDocumentID (DialogPtr dialog);
EXTERN_API( TSMTERecHandle )
GetTSMTEDialogTSMTERecHandle (DialogPtr dialog);
/* Setters */
EXTERN_API( void )
SetTSMTEDialogDocumentID (DialogPtr dialog,
TSMDocumentID documentID);
EXTERN_API( void )
SetTSMTEDialogTSMTERecHandle (DialogPtr dialog,
TSMTERecHandle tsmteRecHandle);
endif /* ACCESSOR_CALLS_ARE_FUNCTIONS */
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 /* __TSMTE__ */
(C) Æliens
04/09/2009
You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.