source-engine/common/quicktime_win32/Lists.h

1493 lines
39 KiB
C
Raw Normal View History

2020-04-22 16:56:21 +00:00
/*
File: Lists.h
Contains: List Manager Interfaces.
Version: QuickTime 7.3
Copyright: (c) 2007 (c) 1985-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 __LISTS__
#define __LISTS__
#ifndef __MACTYPES__
#include <MacTypes.h>
#endif
#ifndef __CONTROLS__
#include <Controls.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
typedef Point Cell;
typedef Rect ListBounds;
typedef char DataArray[32001];
typedef char * DataPtr;
typedef DataPtr * DataHandle;
typedef CALLBACK_API( short , ListSearchProcPtr )(Ptr aPtr, Ptr bPtr, short aLen, short bLen);
typedef CALLBACK_API_REGISTER68K( Boolean , ListClickLoopProcPtr, (void) );
typedef STACK_UPP_TYPE(ListSearchProcPtr) ListSearchUPP;
typedef REGISTER_UPP_TYPE(ListClickLoopProcPtr) ListClickLoopUPP;
#if !TARGET_OS_MAC
/* QuickTime 3.0 */
typedef long ListNotification;
enum {
listNotifyNothing = FOUR_CHAR_CODE('nada'), /* No (null) notification*/
listNotifyClick = FOUR_CHAR_CODE('clik'), /* Control was clicked*/
listNotifyDoubleClick = FOUR_CHAR_CODE('dblc'), /* Control was double-clicked*/
listNotifyPreClick = FOUR_CHAR_CODE('pclk') /* Control about to be clicked*/
};
#endif /* !TARGET_OS_MAC */
struct ListRec {
Rect rView; /* in Carbon use Get/SetListViewBounds*/
GrafPtr port; /* in Carbon use Get/SetListPort*/
Point indent; /* in Carbon use Get/SetListCellIndent*/
Point cellSize; /* in Carbon use Get/SetListCellSize*/
ListBounds visible; /* in Carbon use GetListVisibleCells*/
ControlRef vScroll; /* in Carbon use GetListVerticalScrollBar*/
ControlRef hScroll; /* in Carbon use GetListHorizontalScrollBar*/
SInt8 selFlags; /* in Carbon use Get/SetListSelectionFlags*/
Boolean lActive; /* in Carbon use LActivate, GetListActive*/
SInt8 lReserved; /* not supported in Carbon */
SInt8 listFlags; /* in Carbon use Get/SetListFlags */
long clikTime; /* in Carbon use Get/SetListClickTime*/
Point clikLoc; /* in Carbon use GetListClickLocation*/
Point mouseLoc; /* in Carbon use GetListMouseLocation*/
ListClickLoopUPP lClickLoop; /* in Carbon use Get/SetListClickLoop*/
Cell lastClick; /* in Carbon use SetListLastClick*/
long refCon; /* in Carbon use Get/SetListRefCon*/
Handle listDefProc; /* not supported in Carbon */
Handle userHandle; /* in Carbon use Get/SetListUserHandle*/
ListBounds dataBounds; /* in Carbon use GetListDataBounds*/
DataHandle cells; /* in Carbon use LGet/SetCell*/
short maxIndex; /* in Carbon use LGet/SetCell*/
short cellArray[1]; /* in Carbon use LGet/SetCell*/
};
typedef struct ListRec ListRec;
typedef ListRec * ListPtr;
typedef ListPtr * ListHandle;
/* ListRef is obsolete. Use ListHandle. */
typedef ListHandle ListRef;
enum {
/* ListRec.listFlags bits*/
lDrawingModeOffBit = 3,
lDoVAutoscrollBit = 1,
lDoHAutoscrollBit = 0
};
enum {
/* ListRec.listFlags masks*/
lDrawingModeOff = 8,
lDoVAutoscroll = 2,
lDoHAutoscroll = 1
};
enum {
/* ListRec.selFlags bits*/
lOnlyOneBit = 7,
lExtendDragBit = 6,
lNoDisjointBit = 5,
lNoExtendBit = 4,
lNoRectBit = 3,
lUseSenseBit = 2,
lNoNilHiliteBit = 1
};
enum {
/* ListRec.selFlags masks*/
lOnlyOne = -128,
lExtendDrag = 64,
lNoDisjoint = 32,
lNoExtend = 16,
lNoRect = 8,
lUseSense = 4,
lNoNilHilite = 2
};
enum {
/* LDEF messages*/
lInitMsg = 0,
lDrawMsg = 1,
lHiliteMsg = 2,
lCloseMsg = 3
};
/*
StandardIconListCellDataRec is the cell data format for
use with the standard icon list (kListDefStandardIconType).
*/
struct StandardIconListCellDataRec {
Handle iconHandle;
short font;
short face;
short size;
Str255 name;
};
typedef struct StandardIconListCellDataRec StandardIconListCellDataRec;
typedef StandardIconListCellDataRec * StandardIconListCellDataPtr;
typedef CALLBACK_API( void , ListDefProcPtr )(short lMessage, Boolean lSelect, Rect *lRect, Cell lCell, short lDataOffset, short lDataLen, ListHandle lHandle);
typedef STACK_UPP_TYPE(ListDefProcPtr) ListDefUPP;
/*
* NewListSearchUPP()
*
* Availability:
* Non-Carbon CFM: available as macro/inline
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API_C( ListSearchUPP )
NewListSearchUPP(ListSearchProcPtr userRoutine);
#if !OPAQUE_UPP_TYPES
enum { uppListSearchProcInfo = 0x00002BE0 }; /* pascal 2_bytes Func(4_bytes, 4_bytes, 2_bytes, 2_bytes) */
#ifdef __cplusplus
inline DEFINE_API_C(ListSearchUPP) NewListSearchUPP(ListSearchProcPtr userRoutine) { return (ListSearchUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppListSearchProcInfo, GetCurrentArchitecture()); }
#else
#define NewListSearchUPP(userRoutine) (ListSearchUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppListSearchProcInfo, GetCurrentArchitecture())
#endif
#endif
/*
* NewListClickLoopUPP()
*
* Availability:
* Non-Carbon CFM: available as macro/inline
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API_C( ListClickLoopUPP )
NewListClickLoopUPP(ListClickLoopProcPtr userRoutine);
#if !OPAQUE_UPP_TYPES
enum { uppListClickLoopProcInfo = 0x00000012 }; /* register 1_byte:D0 Func() */
#ifdef __cplusplus
inline DEFINE_API_C(ListClickLoopUPP) NewListClickLoopUPP(ListClickLoopProcPtr userRoutine) { return (ListClickLoopUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppListClickLoopProcInfo, GetCurrentArchitecture()); }
#else
#define NewListClickLoopUPP(userRoutine) (ListClickLoopUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppListClickLoopProcInfo, GetCurrentArchitecture())
#endif
#endif
/*
* NewListDefUPP()
*
* Availability:
* Non-Carbon CFM: available as macro/inline
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API_C( ListDefUPP )
NewListDefUPP(ListDefProcPtr userRoutine);
#if !OPAQUE_UPP_TYPES
enum { uppListDefProcInfo = 0x000EBD80 }; /* pascal no_return_value Func(2_bytes, 1_byte, 4_bytes, 4_bytes, 2_bytes, 2_bytes, 4_bytes) */
#ifdef __cplusplus
inline DEFINE_API_C(ListDefUPP) NewListDefUPP(ListDefProcPtr userRoutine) { return (ListDefUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppListDefProcInfo, GetCurrentArchitecture()); }
#else
#define NewListDefUPP(userRoutine) (ListDefUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppListDefProcInfo, GetCurrentArchitecture())
#endif
#endif
/*
* DisposeListSearchUPP()
*
* Availability:
* Non-Carbon CFM: available as macro/inline
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API_C( void )
DisposeListSearchUPP(ListSearchUPP userUPP);
#if !OPAQUE_UPP_TYPES
#ifdef __cplusplus
inline DEFINE_API_C(void) DisposeListSearchUPP(ListSearchUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
#else
#define DisposeListSearchUPP(userUPP) DisposeRoutineDescriptor(userUPP)
#endif
#endif
/*
* DisposeListClickLoopUPP()
*
* Availability:
* Non-Carbon CFM: available as macro/inline
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API_C( void )
DisposeListClickLoopUPP(ListClickLoopUPP userUPP);
#if !OPAQUE_UPP_TYPES
#ifdef __cplusplus
inline DEFINE_API_C(void) DisposeListClickLoopUPP(ListClickLoopUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
#else
#define DisposeListClickLoopUPP(userUPP) DisposeRoutineDescriptor(userUPP)
#endif
#endif
/*
* DisposeListDefUPP()
*
* Availability:
* Non-Carbon CFM: available as macro/inline
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API_C( void )
DisposeListDefUPP(ListDefUPP userUPP);
#if !OPAQUE_UPP_TYPES
#ifdef __cplusplus
inline DEFINE_API_C(void) DisposeListDefUPP(ListDefUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); }
#else
#define DisposeListDefUPP(userUPP) DisposeRoutineDescriptor(userUPP)
#endif
#endif
/*
* InvokeListSearchUPP()
*
* Availability:
* Non-Carbon CFM: available as macro/inline
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API_C( short )
InvokeListSearchUPP(
Ptr aPtr,
Ptr bPtr,
short aLen,
short bLen,
ListSearchUPP userUPP);
#if !OPAQUE_UPP_TYPES
#ifdef __cplusplus
inline DEFINE_API_C(short) InvokeListSearchUPP(Ptr aPtr, Ptr bPtr, short aLen, short bLen, ListSearchUPP userUPP) { return (short)CALL_FOUR_PARAMETER_UPP(userUPP, uppListSearchProcInfo, aPtr, bPtr, aLen, bLen); }
#else
#define InvokeListSearchUPP(aPtr, bPtr, aLen, bLen, userUPP) (short)CALL_FOUR_PARAMETER_UPP((userUPP), uppListSearchProcInfo, (aPtr), (bPtr), (aLen), (bLen))
#endif
#endif
/*
* InvokeListClickLoopUPP()
*
* Availability:
* Non-Carbon CFM: available as macro/inline
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
#if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
#pragma parameter __D0 InvokeListClickLoopUPP(__A0)
#endif
EXTERN_API_C( Boolean )
InvokeListClickLoopUPP(ListClickLoopUPP userUPP) ONEWORDINLINE(0x4E90);
#if !OPAQUE_UPP_TYPES && (!TARGET_OS_MAC || !TARGET_CPU_68K || TARGET_RT_MAC_CFM)
#ifdef __cplusplus
inline DEFINE_API_C(Boolean) InvokeListClickLoopUPP(ListClickLoopUPP userUPP) { return (Boolean)CALL_ZERO_PARAMETER_UPP(userUPP, uppListClickLoopProcInfo); }
#else
#define InvokeListClickLoopUPP(userUPP) (Boolean)CALL_ZERO_PARAMETER_UPP((userUPP), uppListClickLoopProcInfo)
#endif
#endif
/*
* InvokeListDefUPP()
*
* Availability:
* Non-Carbon CFM: available as macro/inline
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API_C( void )
InvokeListDefUPP(
short lMessage,
Boolean lSelect,
Rect * lRect,
Cell lCell,
short lDataOffset,
short lDataLen,
ListHandle lHandle,
ListDefUPP userUPP);
#if !OPAQUE_UPP_TYPES
#ifdef __cplusplus
inline DEFINE_API_C(void) InvokeListDefUPP(short lMessage, Boolean lSelect, Rect * lRect, Cell lCell, short lDataOffset, short lDataLen, ListHandle lHandle, ListDefUPP userUPP) { CALL_SEVEN_PARAMETER_UPP(userUPP, uppListDefProcInfo, lMessage, lSelect, lRect, lCell, lDataOffset, lDataLen, lHandle); }
#else
#define InvokeListDefUPP(lMessage, lSelect, lRect, lCell, lDataOffset, lDataLen, lHandle, userUPP) CALL_SEVEN_PARAMETER_UPP((userUPP), uppListDefProcInfo, (lMessage), (lSelect), (lRect), (lCell), (lDataOffset), (lDataLen), (lHandle))
#endif
#endif
#if CALL_NOT_IN_CARBON || OLDROUTINENAMES
/* support for pre-Carbon UPP routines: New...Proc and Call...Proc */
#define NewListSearchProc(userRoutine) NewListSearchUPP(userRoutine)
#define NewListClickLoopProc(userRoutine) NewListClickLoopUPP(userRoutine)
#define NewListDefProc(userRoutine) NewListDefUPP(userRoutine)
#define CallListSearchProc(userRoutine, aPtr, bPtr, aLen, bLen) InvokeListSearchUPP(aPtr, bPtr, aLen, bLen, userRoutine)
#define CallListClickLoopProc(userRoutine) InvokeListClickLoopUPP(userRoutine)
#define CallListDefProc(userRoutine, lMessage, lSelect, lRect, lCell, lDataOffset, lDataLen, lHandle) InvokeListDefUPP(lMessage, lSelect, lRect, lCell, lDataOffset, lDataLen, lHandle, userRoutine)
#endif /* CALL_NOT_IN_CARBON */
enum {
kListDefProcPtr = 0,
kListDefUserProcType = kListDefProcPtr,
kListDefStandardTextType = 1,
kListDefStandardIconType = 2
};
typedef UInt32 ListDefType;
struct ListDefSpec {
ListDefType defType;
union {
ListDefUPP userProc;
} u;
};
typedef struct ListDefSpec ListDefSpec;
typedef ListDefSpec * ListDefSpecPtr;
/*
* CreateCustomList()
*
* Availability:
* Non-Carbon CFM: not available
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( OSStatus )
CreateCustomList(
const Rect * rView,
const ListBounds * dataBounds,
Point cellSize,
const ListDefSpec * theSpec,
WindowRef theWindow,
Boolean drawIt,
Boolean hasGrow,
Boolean scrollHoriz,
Boolean scrollVert,
ListHandle * outList);
#if !TARGET_OS_MAC
/* QuickTime 3.0 */
typedef CALLBACK_API( void , ListNotificationProcPtr )(ListHandle theList, ListNotification notification, long param);
typedef ListNotificationProcPtr ListNotificationUPP;
#if CALL_NOT_IN_CARBON
/*
* LSetNotificationCallback()
*
* Availability:
* Non-Carbon CFM: not available
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
LSetNotificationCallback(
ListNotificationProcPtr callBack,
ListHandle lHandle);
/*
* GetListVisibleBounds()
*
* Availability:
* Non-Carbon CFM: not available
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
GetListVisibleBounds(
ListHandle theList,
Rect * visibleBounds);
#endif /* CALL_NOT_IN_CARBON */
#endif /* !TARGET_OS_MAC */
/*
* LNew()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( ListHandle )
LNew(
const Rect * rView,
const ListBounds * dataBounds,
Point cSize,
short theProc,
WindowRef theWindow,
Boolean drawIt,
Boolean hasGrow,
Boolean scrollHoriz,
Boolean scrollVert) THREEWORDINLINE(0x3F3C, 0x0044, 0xA9E7);
/*
* LDispose()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LDispose(ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0028, 0xA9E7);
/*
* LAddColumn()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( short )
LAddColumn(
short count,
short colNum,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0004, 0xA9E7);
/*
* LAddRow()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( short )
LAddRow(
short count,
short rowNum,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0008, 0xA9E7);
/*
* LDelColumn()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LDelColumn(
short count,
short colNum,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0020, 0xA9E7);
/*
* LDelRow()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LDelRow(
short count,
short rowNum,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0024, 0xA9E7);
/*
* LGetSelect()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Boolean )
LGetSelect(
Boolean next,
Cell * theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x003C, 0xA9E7);
/*
* LLastClick()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Cell )
LLastClick(ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0040, 0xA9E7);
/*
* LNextCell()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Boolean )
LNextCell(
Boolean hNext,
Boolean vNext,
Cell * theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0048, 0xA9E7);
/*
* LSearch()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Boolean )
LSearch(
const void * dataPtr,
short dataLen,
ListSearchUPP searchProc,
Cell * theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0054, 0xA9E7);
/*
* LSize()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LSize(
short listWidth,
short listHeight,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0060, 0xA9E7);
/*
* LSetDrawingMode()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LSetDrawingMode(
Boolean drawIt,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x002C, 0xA9E7);
/*
* LScroll()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LScroll(
short dCols,
short dRows,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0050, 0xA9E7);
/*
* LAutoScroll()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LAutoScroll(ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0010, 0xA9E7);
/*
* LUpdate()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LUpdate(
RgnHandle theRgn,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0064, 0xA9E7);
/*
* LActivate()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LActivate(
Boolean act,
ListHandle lHandle) TWOWORDINLINE(0x4267, 0xA9E7);
/*
* LCellSize()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LCellSize(
Point cSize,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0014, 0xA9E7);
/*
* LClick()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Boolean )
LClick(
Point pt,
EventModifiers modifiers,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0018, 0xA9E7);
/*
* LAddToCell()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LAddToCell(
const void * dataPtr,
short dataLen,
Cell theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x000C, 0xA9E7);
/*
* LClrCell()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LClrCell(
Cell theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x001C, 0xA9E7);
/*
* LGetCell()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LGetCell(
void * dataPtr,
short * dataLen,
Cell theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0038, 0xA9E7);
/*
* LRect()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LRect(
Rect * cellRect,
Cell theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x004C, 0xA9E7);
/*
* LSetCell()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LSetCell(
const void * dataPtr,
short dataLen,
Cell theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0058, 0xA9E7);
/*
* LSetSelect()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LSetSelect(
Boolean setIt,
Cell theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x005C, 0xA9E7);
/*
* LDraw()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LDraw(
Cell theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0030, 0xA9E7);
/*
* LGetCellDataLocation()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
LGetCellDataLocation(
short * offset,
short * len,
Cell theCell,
ListHandle lHandle) THREEWORDINLINE(0x3F3C, 0x0034, 0xA9E7);
/* Routines available in Carbon only*/
/*
* RegisterListDefinition()
*
* Summary:
* Registers a binding between a resource ID and a list definition
* function.
*
* Discussion:
* In the Mac OS 8.x List Manager, a 'ldes' resource can contain an
* embedded LDEF procID that is used by the List Manager as the
* resource ID of an 'LDEF' resource to measure and draw the list.
* Since LDEFs can no longer be packaged as code resources on
* Carbon, the procID can no longer refer directly to an LDEF
* resource. However, using RegisterListDefinition you can instead
* specify a UniversalProcPtr pointing to code in your application
* code fragment.
*
* Parameters:
*
* inResID:
* An LDEF proc ID, as used in a 'ldes' resource.
*
* inDefSpec:
* Specifies the ListDefUPP that should be used for lists with the
* given LDEF procID.
*
* Availability:
* Non-Carbon CFM: not available
* CarbonLib: in CarbonLib 1.5 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( OSStatus )
RegisterListDefinition(
SInt16 inResID,
ListDefSpecPtr inDefSpec);
#if CALL_NOT_IN_CARBON
#if CALL_NOT_IN_CARBON
/*
* SetListDefinitionProc()
*
* Availability:
* Non-Carbon CFM: not available
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API( OSErr )
SetListDefinitionProc(
SInt16 resID,
ListDefUPP defProc);
#endif /* CALL_NOT_IN_CARBON */
#endif /* CALL_NOT_IN_CARBON */
#if !TARGET_OS_MAC
/* QuickTime 3.0 */
#if CALL_NOT_IN_CARBON
/*
* LSetLDEF()
*
* Availability:
* Non-Carbon CFM: not available
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
LSetLDEF(
ListDefProcPtr proc,
ListHandle lHandle);
#endif /* CALL_NOT_IN_CARBON */
#endif /* !TARGET_OS_MAC */
#if CALL_NOT_IN_CARBON
/*
* laddtocell()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
laddtocell(
const void * dataPtr,
short dataLen,
const Cell * theCell,
ListHandle lHandle);
/*
* lclrcell()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
lclrcell(
const Cell * theCell,
ListHandle lHandle);
/*
* lgetcelldatalocation()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
lgetcelldatalocation(
short * offset,
short * len,
const Cell * theCell,
ListHandle lHandle);
/*
* lgetcell()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
lgetcell(
void * dataPtr,
short * dataLen,
const Cell * theCell,
ListHandle lHandle);
/*
* lnew()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( ListHandle )
lnew(
const Rect * rView,
const ListBounds * dataBounds,
Point * cSize,
short theProc,
WindowRef theWindow,
Boolean drawIt,
Boolean hasGrow,
Boolean scrollHoriz,
Boolean scrollVert);
/*
* lrect()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
lrect(
Rect * cellRect,
const Cell * theCell,
ListHandle lHandle);
/*
* lsetcell()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
lsetcell(
const void * dataPtr,
short dataLen,
const Cell * theCell,
ListHandle lHandle);
/*
* lsetselect()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
lsetselect(
Boolean setIt,
const Cell * theCell,
ListHandle lHandle);
/*
* ldraw()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
ldraw(
const Cell * theCell,
ListHandle lHandle);
/*
* lclick()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( Boolean )
lclick(
Point * pt,
EventModifiers modifiers,
ListHandle lHandle);
/*
* lcellsize()
*
* Availability:
* Non-Carbon CFM: in InterfaceLib 7.1 and later
* CarbonLib: not available
* Mac OS X: not available
*/
EXTERN_API_C( void )
lcellsize(
Point * cSize,
ListHandle lHandle);
#endif /* CALL_NOT_IN_CARBON */
#if OLDROUTINENAMES
#define LDoDraw(drawIt, lHandle) LSetDrawingMode(drawIt, lHandle)
#define LFind(offset, len, theCell, lHandle) LGetCellDataLocation(offset, len, theCell, lHandle)
#if CGLUESUPPORTED
#define lfind(offset, len, theCell, lHandle) lgetcelldatalocation(offset, len, theCell, lHandle)
#endif
#endif /* OLDROUTINENAMES */
#if ACCESSOR_CALLS_ARE_FUNCTIONS
/* Getters */
/*
* GetListViewBounds()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Rect * )
GetListViewBounds(
ListHandle list,
Rect * view);
/*
* GetListPort()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( CGrafPtr )
GetListPort(ListHandle list);
/*
* GetListCellIndent()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Point * )
GetListCellIndent(
ListHandle list,
Point * indent);
/*
* GetListCellSize()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Point * )
GetListCellSize(
ListHandle list,
Point * size);
/*
* GetListVisibleCells()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( ListBounds * )
GetListVisibleCells(
ListHandle list,
ListBounds * visible);
/*
* GetListVerticalScrollBar()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( ControlRef )
GetListVerticalScrollBar(ListHandle list);
/*
* GetListHorizontalScrollBar()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( ControlRef )
GetListHorizontalScrollBar(ListHandle list);
/*
* GetListActive()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Boolean )
GetListActive(ListHandle list);
/*
* GetListClickTime()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( SInt32 )
GetListClickTime(ListHandle list);
/*
* GetListClickLocation()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Point * )
GetListClickLocation(
ListHandle list,
Point * click);
/*
* GetListMouseLocation()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Point * )
GetListMouseLocation(
ListHandle list,
Point * mouse);
/*
* GetListClickLoop()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( ListClickLoopUPP )
GetListClickLoop(ListHandle list);
/*
* GetListRefCon()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( SInt32 )
GetListRefCon(ListHandle list);
/*
* GetListDefinition()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Handle )
GetListDefinition(ListHandle list);
/*
* GetListUserHandle()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( Handle )
GetListUserHandle(ListHandle list);
/*
* GetListDataBounds()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( ListBounds * )
GetListDataBounds(
ListHandle list,
ListBounds * bounds);
/*
* GetListDataHandle()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( DataHandle )
GetListDataHandle(ListHandle list);
/*
* GetListFlags()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( OptionBits )
GetListFlags(ListHandle list);
/*
* GetListSelectionFlags()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( OptionBits )
GetListSelectionFlags(ListHandle list);
/* Setters */
/*
* SetListViewBounds()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
SetListViewBounds(
ListHandle list,
const Rect * view);
/*
* SetListPort()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
SetListPort(
ListHandle list,
CGrafPtr port);
/*
* SetListCellIndent()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
SetListCellIndent(
ListHandle list,
Point * indent);
/*
* SetListClickTime()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
SetListClickTime(
ListHandle list,
SInt32 time);
/*
* SetListClickLoop()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
SetListClickLoop(
ListHandle list,
ListClickLoopUPP clickLoop);
/*
* SetListLastClick()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
SetListLastClick(
ListHandle list,
Cell * lastClick);
/*
* SetListRefCon()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
SetListRefCon(
ListHandle list,
SInt32 refCon);
/*
* SetListUserHandle()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
SetListUserHandle(
ListHandle list,
Handle userHandle);
/*
* SetListFlags()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
SetListFlags(
ListHandle list,
OptionBits listFlags);
/*
* SetListSelectionFlags()
*
* Availability:
* Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
* CarbonLib: in CarbonLib 1.0 and later
* Mac OS X: in version 10.0 and later
*/
EXTERN_API( void )
SetListSelectionFlags(
ListHandle list,
OptionBits selectionFlags);
#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 /* __LISTS__ */