1 #ifndef CLIB_DATATYPES_PROTOS_H 2 #define CLIB_DATATYPES_PROTOS_H 3 4 /* 5 datatypes.library C prototypes 6 7 Copyright © 2002 The MorphOS Development Team, All Rights Reserved. 8 */ 9 10 #ifndef EXEC_TYPES_H 11 # include <exec/types.h> 12 #endif 13 14 #ifndef EXEC_LISTS_H 15 # include <exec/lists.h> 16 #endif 17 18 #ifndef INTUITION_INTUITION_H 19 # include <intuition/intuition.h> 20 #endif 21 22 #ifndef INTUITION_CLASSES_H 23 # include <intuition/classes.h> 24 #endif 25 26 #ifndef INTUITION_CLASSUSR_H 27 # include <intuition/classusr.h> 28 #endif 29 30 #ifndef INTUITION_GADGETCLASS_H 31 # include <intuition/gadgetclass.h> 32 #endif 33 34 #ifndef UTILITY_TAGITEM_H 35 # include <utility/tagitem.h> 36 #endif 37 38 #ifndef DATATYPES_DATATYPESCLASS_H 39 # include <datatypes/datatypesclass.h> 40 #endif 41 42 #ifndef DATATYPES_DATATYPES_H 43 # include <datatypes/datatypes.h> 44 #endif 45 46 #ifndef REXX_STORAGE_H 47 # include <rexx/storage.h> 48 #endif 49 50 51 #ifdef __cplusplus 52 extern "C" { 53 #endif /* __cplusplus */ 54 55 struct DataType *ObtainDataTypeA( ULONG type, APTR handle, struct TagItem *attrs ); 56 #if !defined(USE_INLINE_STDARG) 57 struct DataType *ObtainDataType( ULONG type, APTR handle, Tag tag1, ... ); 58 #endif 59 VOID ReleaseDataType( struct DataType *dt ); 60 Object *NewDTObjectA( APTR name, struct TagItem *attrs ); 61 #if !defined(USE_INLINE_STDARG) 62 Object *NewDTObject( APTR name, Tag tag1, ... ); 63 #endif 64 VOID DisposeDTObject( Object *o ); 65 ULONG SetDTAttrsA( Object *o, struct Window *win, struct Requester *req, struct TagItem *attrs ); 66 #if !defined(USE_INLINE_STDARG) 67 ULONG SetDTAttrs( Object *o, struct Window *win, struct Requester *req, Tag tag1, ... ); 68 #endif 69 ULONG GetDTAttrsA( Object *o, struct TagItem *attrs ); 70 #if !defined(USE_INLINE_STDARG) 71 ULONG GetDTAttrs( Object *o, Tag tag1, ... ); 72 #endif 73 LONG AddDTObject( struct Window *win, struct Requester *req, Object *o, LONG pos ); 74 VOID RefreshDTObjectA( Object *o, struct Window *win, struct Requester *req, struct TagItem *attrs ); 75 #if !defined(USE_INLINE_STDARG) 76 VOID RefreshDTObjects( Object *o, struct Window *win, struct Requester *req, Tag tag1, ... ); 77 #endif 78 #if !defined(USE_INLINE_STDARG) 79 VOID RefreshDTObject( Object *o, struct Window *win, struct Requester *req, Tag tag1, ... ); 80 #endif 81 ULONG DoAsyncLayout( Object *o, struct gpLayout *gpl ); 82 ULONG DoDTMethodA( Object *o, struct Window *win, struct Requester *req, Msg msg ); 83 #if !defined(USE_INLINE_STDARG) 84 ULONG DoDTMethod( Object *o, struct Window *win, struct Requester *req, ULONG data, ... ); 85 #endif 86 LONG RemoveDTObject( struct Window *win, Object *o ); 87 ULONG *GetDTMethods( Object *object ); 88 struct DTMethods *GetDTTriggerMethods( Object *object ); 89 ULONG PrintDTObjectA( Object *o, struct Window *w, struct Requester *r, struct dtPrint *msg ); 90 #if !defined(USE_INLINE_STDARG) 91 ULONG PrintDTObject( Object *o, struct Window *w, struct Requester *r, ULONG data, ... ); 92 #endif 93 APTR ObtainDTDrawInfoA( Object *o, struct TagItem *attrs ); 94 #if !defined(USE_INLINE_STDARG) 95 APTR ObtainDTDrawInfo( Object *o, Tag tag1, ... ); 96 #endif 97 LONG DrawDTObjectA( struct RastPort *rp, Object *o, LONG x, LONG y, LONG w, LONG h, LONG th, LONG tv, struct TagItem *attrs ); 98 #if !defined(USE_INLINE_STDARG) 99 LONG DrawDTObject( struct RastPort *rp, Object *o, LONG x, LONG y, LONG w, LONG h, LONG th, LONG tv, Tag tag1, ... ); 100 #endif 101 VOID ReleaseDTDrawInfo( Object *o, APTR handle ); 102 STRPTR GetDTString( ULONG id ); 103 104 105 /* 106 * functions in V45 or higher 107 */ 108 void LockDataType( struct DataType * ); 109 struct ToolNode *FindToolNodeA( struct List *, struct TagItem * ); 110 #if !defined(USE_INLINE_STDARG) 111 struct ToolNode *FindToolNode( struct List *, Tag, ... ); 112 #endif 113 ULONG LaunchToolA( struct Tool *, STRPTR, struct TagItem * ); 114 #if !defined(USE_INLINE_STDARG) 115 ULONG LaunchTool( struct Tool *, STRPTR, Tag, ... ); 116 #endif 117 ULONG *FindMethod( ULONG *, ULONG ); 118 struct DTMethod *FindTriggerMethod( struct DTMethod *, STRPTR, ULONG ); 119 ULONG *CopyDTMethods( ULONG *, ULONG *, ULONG * ); 120 struct DTMethod *CopyDTTriggerMethods( struct DTMethod *, struct DTMethod *, struct DTMethod * ); 121 VOID FreeDTMethods( APTR ); 122 ULONG GetDTTriggerMethodDataFlags( ULONG ); 123 ULONG SaveDTObjectA( Object *, struct Window *, struct Requester *, STRPTR, ULONG, BOOL, struct TagItem * ); 124 #if !defined(USE_INLINE_STDARG) 125 ULONG SaveDTObject( Object *, struct Window *, struct Requester *, STRPTR, ULONG, BOOL, Tag, ... ); 126 #endif 127 ULONG StartDragSelect( Object * ); 128 ULONG DoDTDomainA( Object *, struct Window *, struct Requester *, struct RastPort *, ULONG, struct IBox *, struct TagItem *attrs ); 129 #if !defined(USE_INLINE_STDARG) 130 ULONG DoDTDomain( Object *, struct Window *, struct Requester *, struct RastPort *, ULONG, struct IBox *, Tag, ... ); 131 #endif 132 133 #ifdef __cplusplus 134 } 135 #endif /* __cplusplus */ 136 137 138 #endif /* CLIB_DATATYPES_PROTOS_H */