home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / C / OTL-MC6.DMS / in.adf / incl.lha / INCLUDE / clib / intuition_protos.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-10-30  |  11.6 KB  |  261 lines

  1. #ifndef  CLIB_INTUITION_PROTOS_H
  2. #define  CLIB_INTUITION_PROTOS_H
  3.  
  4. /*
  5. **    $VER: intuition_protos.h 38.16 (28.8.92)
  6. **    Includes Release 40.15
  7. **
  8. **    C prototypes. For use with 32 bit integers only.
  9. **
  10. **    (C) Copyright 1990-1993 Commodore-Amiga, Inc.
  11. **        All Rights Reserved
  12. */
  13.  
  14. #ifndef  INTUITION_INTUITION_H
  15. #include <intuition/intuition.h>
  16. #endif
  17. #ifndef  INTUITION_CLASSES_H
  18. #include <intuition/classes.h>
  19. #endif
  20. #ifndef  INTUITION_CGHOOKS_H
  21. #include <intuition/cghooks.h>
  22. #endif
  23. #ifndef  INTUITION_CLASSUSR_H
  24. #include <intuition/classusr.h>
  25. #endif
  26.  
  27. #ifdef __cplusplus
  28. #define CLIBCPLUSON
  29. #pragma -
  30. #endif
  31.  
  32. /* Public functions OpenIntuition() and Intuition() are intentionally */
  33. /* not documented. */
  34. void OpenIntuition( void );
  35. void Intuition( struct InputEvent *iEvent );
  36. UWORD AddGadget( struct Window *window, struct Gadget *gadget,
  37.     unsigned long position );
  38. BOOL ClearDMRequest( struct Window *window );
  39. void ClearMenuStrip( struct Window *window );
  40. void ClearPointer( struct Window *window );
  41. BOOL CloseScreen( struct Screen *screen );
  42. void CloseWindow( struct Window *window );
  43. LONG CloseWorkBench( void );
  44. void CurrentTime( ULONG *seconds, ULONG *micros );
  45. BOOL DisplayAlert( unsigned long alertNumber, UBYTE *string,
  46.     unsigned long height );
  47. void DisplayBeep( struct Screen *screen );
  48. BOOL DoubleClick( unsigned long sSeconds, unsigned long sMicros,
  49.     unsigned long cSeconds, unsigned long cMicros );
  50. void DrawBorder( struct RastPort *rp, struct Border *border, long leftOffset,
  51.     long topOffset );
  52. void DrawImage( struct RastPort *rp, struct Image *image, long leftOffset,
  53.     long topOffset );
  54. void EndRequest( struct Requester *requester, struct Window *window );
  55. struct Preferences *GetDefPrefs( struct Preferences *preferences, long size );
  56. struct Preferences *GetPrefs( struct Preferences *preferences, long size );
  57. void InitRequester( struct Requester *requester );
  58. struct MenuItem *ItemAddress( struct Menu *menuStrip,
  59.     unsigned long menuNumber );
  60. BOOL ModifyIDCMP( struct Window *window, unsigned long flags );
  61. void ModifyProp( struct Gadget *gadget, struct Window *window,
  62.     struct Requester *requester, unsigned long flags,
  63.     unsigned long horizPot, unsigned long vertPot,
  64.     unsigned long horizBody, unsigned long vertBody );
  65. void MoveScreen( struct Screen *screen, long dx, long dy );
  66. void MoveWindow( struct Window *window, long dx, long dy );
  67. void OffGadget( struct Gadget *gadget, struct Window *window,
  68.     struct Requester *requester );
  69. void OffMenu( struct Window *window, unsigned long menuNumber );
  70. void OnGadget( struct Gadget *gadget, struct Window *window,
  71.     struct Requester *requester );
  72. void OnMenu( struct Window *window, unsigned long menuNumber );
  73. struct Screen *OpenScreen( struct NewScreen *newScreen );
  74. struct Window *OpenWindow( struct NewWindow *newWindow );
  75. ULONG OpenWorkBench( void );
  76. void PrintIText( struct RastPort *rp, struct IntuiText *iText, long left,
  77.     long top );
  78. void RefreshGadgets( struct Gadget *gadgets, struct Window *window,
  79.     struct Requester *requester );
  80. UWORD RemoveGadget( struct Window *window, struct Gadget *gadget );
  81. /* The official calling sequence for ReportMouse is given below. */
  82. /* Note the register order.  For the complete story, read the ReportMouse */
  83. /* autodoc. */
  84. void ReportMouse( long flag, struct Window *window );
  85. void ReportMouse1( struct Window *window, long flag );
  86. BOOL Request( struct Requester *requester, struct Window *window );
  87. void ScreenToBack( struct Screen *screen );
  88. void ScreenToFront( struct Screen *screen );
  89. BOOL SetDMRequest( struct Window *window, struct Requester *requester );
  90. BOOL SetMenuStrip( struct Window *window, struct Menu *menu );
  91. void SetPointer( struct Window *window, UWORD *pointer, long height,
  92.     long width, long xOffset, long yOffset );
  93. void SetWindowTitles( struct Window *window, UBYTE *windowTitle,
  94.     UBYTE *screenTitle );
  95. void ShowTitle( struct Screen *screen, long showIt );
  96. void SizeWindow( struct Window *window, long dx, long dy );
  97. struct View *ViewAddress( void );
  98. struct ViewPort *ViewPortAddress( struct Window *window );
  99. void WindowToBack( struct Window *window );
  100. void WindowToFront( struct Window *window );
  101. BOOL WindowLimits( struct Window *window, long widthMin, long heightMin,
  102.     unsigned long widthMax, unsigned long heightMax );
  103. /*--- start of next generation of names -------------------------------------*/
  104. struct Preferences *SetPrefs( struct Preferences *preferences, long size,
  105.     long inform );
  106. /*--- start of next next generation of names --------------------------------*/
  107. LONG IntuiTextLength( struct IntuiText *iText );
  108. BOOL WBenchToBack( void );
  109. BOOL WBenchToFront( void );
  110. /*--- start of next next next generation of names ---------------------------*/
  111. BOOL AutoRequest( struct Window *window, struct IntuiText *body,
  112.     struct IntuiText *posText, struct IntuiText *negText,
  113.     unsigned long pFlag, unsigned long nFlag, unsigned long width,
  114.     unsigned long height );
  115. void BeginRefresh( struct Window *window );
  116. struct Window *BuildSysRequest( struct Window *window, struct IntuiText *body,
  117.     struct IntuiText *posText, struct IntuiText *negText,
  118.     unsigned long flags, unsigned long width, unsigned long height );
  119. void EndRefresh( struct Window *window, long complete );
  120. void FreeSysRequest( struct Window *window );
  121. /* The return codes for MakeScreen(), RemakeDisplay(), and RethinkDisplay() */
  122. /* are only valid under V39 and greater.  Do not examine them when running */
  123. /* on pre-V39 systems! */
  124. LONG MakeScreen( struct Screen *screen );
  125. LONG RemakeDisplay( void );
  126. LONG RethinkDisplay( void );
  127. /*--- start of next next next next generation of names ----------------------*/
  128. APTR AllocRemember( struct Remember **rememberKey, unsigned long size,
  129.     unsigned long flags );
  130. /* Public function AlohaWorkbench() is intentionally not documented */
  131. void AlohaWorkbench( long wbport );
  132. void FreeRemember( struct Remember **rememberKey, long reallyForget );
  133. /*--- start of 15 Nov 85 names ------------------------*/
  134. ULONG LockIBase( unsigned long dontknow );
  135. void UnlockIBase( unsigned long ibLock );
  136. /*--- functions in V33 or higher (Release 1.2) ---*/
  137. LONG GetScreenData( APTR buffer, unsigned long size, unsigned long type,
  138.     struct Screen *screen );
  139. void RefreshGList( struct Gadget *gadgets, struct Window *window,
  140.     struct Requester *requester, long numGad );
  141. UWORD AddGList( struct Window *window, struct Gadget *gadget,
  142.     unsigned long position, long numGad, struct Requester *requester );
  143. UWORD RemoveGList( struct Window *remPtr, struct Gadget *gadget,
  144.     long numGad );
  145. void ActivateWindow( struct Window *window );
  146. void RefreshWindowFrame( struct Window *window );
  147. BOOL ActivateGadget( struct Gadget *gadgets, struct Window *window,
  148.     struct Requester *requester );
  149. void NewModifyProp( struct Gadget *gadget, struct Window *window,
  150.     struct Requester *requester, unsigned long flags,
  151.     unsigned long horizPot, unsigned long vertPot,
  152.     unsigned long horizBody, unsigned long vertBody, long numGad );
  153. /*--- functions in V36 or higher (Release 2.0) ---*/
  154. LONG QueryOverscan( unsigned long displayID, struct Rectangle *rect,
  155.     long oScanType );
  156. void MoveWindowInFrontOf( struct Window *window,
  157.     struct Window *behindWindow );
  158. void ChangeWindowBox( struct Window *window, long left, long top, long width,
  159.     long height );
  160. struct Hook *SetEditHook( struct Hook *hook );
  161. LONG SetMouseQueue( struct Window *window, unsigned long queueLength );
  162. void ZipWindow( struct Window *window );
  163. /*--- public screens ---*/
  164. struct Screen *LockPubScreen( UBYTE *name );
  165. void UnlockPubScreen( UBYTE *name, struct Screen *screen );
  166. struct List *LockPubScreenList( void );
  167. void UnlockPubScreenList( void );
  168. UBYTE *NextPubScreen( struct Screen *screen, UBYTE *namebuf );
  169. void SetDefaultPubScreen( UBYTE *name );
  170. UWORD SetPubScreenModes( unsigned long modes );
  171. UWORD PubScreenStatus( struct Screen *screen, unsigned long statusFlags );
  172.  
  173. struct RastPort *ObtainGIRPort( struct GadgetInfo *gInfo );
  174. void ReleaseGIRPort( struct RastPort *rp );
  175. void GadgetMouse( struct Gadget *gadget, struct GadgetInfo *gInfo,
  176.     WORD *mousePoint );
  177. void GetDefaultPubScreen( UBYTE *nameBuffer );
  178. LONG EasyRequestArgs( struct Window *window, struct EasyStruct *easyStruct,
  179.     ULONG *idcmpPtr, APTR args );
  180. LONG EasyRequest( struct Window *window, struct EasyStruct *easyStruct,
  181.     ULONG *idcmpPtr, ... );
  182. struct Window *BuildEasyRequestArgs( struct Window *window,
  183.     struct EasyStruct *easyStruct, unsigned long idcmp, APTR args );
  184. struct Window *BuildEasyRequest( struct Window *window,
  185.     struct EasyStruct *easyStruct, unsigned long idcmp, ... );
  186. LONG SysReqHandler( struct Window *window, ULONG *idcmpPtr, long waitInput );
  187. struct Window *OpenWindowTagList( struct NewWindow *newWindow,
  188.     struct TagItem *tagList );
  189. struct Window *OpenWindowTags( struct NewWindow *newWindow,
  190.     unsigned long tag1Type, ... );
  191. struct Screen *OpenScreenTagList( struct NewScreen *newScreen,
  192.     struct TagItem *tagList );
  193. struct Screen *OpenScreenTags( struct NewScreen *newScreen,
  194.     unsigned long tag1Type, ... );
  195.  
  196. /*    new Image functions */
  197. void DrawImageState( struct RastPort *rp, struct Image *image, long leftOffset,
  198.     long topOffset, unsigned long state, struct DrawInfo *drawInfo );
  199. BOOL PointInImage( unsigned long point, struct Image *image );
  200. void EraseImage( struct RastPort *rp, struct Image *image, long leftOffset,
  201.     long topOffset );
  202.  
  203. APTR NewObjectA( struct IClass *classPtr, UBYTE *classID,
  204.     struct TagItem *tagList );
  205. APTR NewObject( struct IClass *classPtr, UBYTE *classID, unsigned long tag1,
  206.     ... );
  207.  
  208. void DisposeObject( APTR object );
  209. ULONG SetAttrsA( APTR object, struct TagItem *tagList );
  210. ULONG SetAttrs( APTR object, unsigned long tag1, ... );
  211.  
  212. ULONG GetAttr( unsigned long attrID, APTR object, ULONG *storagePtr );
  213.  
  214. /*    special set attribute call for gadgets */
  215. ULONG SetGadgetAttrsA( struct Gadget *gadget, struct Window *window,
  216.     struct Requester *requester, struct TagItem *tagList );
  217. ULONG SetGadgetAttrs( struct Gadget *gadget, struct Window *window,
  218.     struct Requester *requester, unsigned long tag1, ... );
  219.  
  220. /*    for class implementors only */
  221. APTR NextObject( APTR objectPtrPtr );
  222. struct IClass *MakeClass( UBYTE *classID, UBYTE *superClassID,
  223.     struct IClass *superClassPtr, unsigned long instanceSize,
  224.     unsigned long flags );
  225. void AddClass( struct IClass *classPtr );
  226.  
  227.  
  228. struct DrawInfo *GetScreenDrawInfo( struct Screen *screen );
  229. void FreeScreenDrawInfo( struct Screen *screen, struct DrawInfo *drawInfo );
  230.  
  231. BOOL ResetMenuStrip( struct Window *window, struct Menu *menu );
  232. void RemoveClass( struct IClass *classPtr );
  233. BOOL FreeClass( struct IClass *classPtr );
  234. /*--- functions in V39 or higher (Release 3) ---*/
  235. struct ScreenBuffer *AllocScreenBuffer( struct Screen *sc, struct BitMap *bm,
  236.     unsigned long flags );
  237. void FreeScreenBuffer( struct Screen *sc, struct ScreenBuffer *sb );
  238. ULONG ChangeScreenBuffer( struct Screen *sc, struct ScreenBuffer *sb );
  239. void ScreenDepth( struct Screen *screen, unsigned long flags, APTR reserved );
  240. void ScreenPosition( struct Screen *screen, unsigned long flags, long x1,
  241.     long y1, long x2, long y2 );
  242. void ScrollWindowRaster( struct Window *win, long dx, long dy, long xMin,
  243.     long yMin, long xMax, long yMax );
  244. void LendMenus( struct Window *fromwindow, struct Window *towindow );
  245. ULONG DoGadgetMethodA( struct Gadget *gad, struct Window *win,
  246.     struct Requester *req, Msg message );
  247. ULONG DoGadgetMethod( struct Gadget *gad, struct Window *win,
  248.     struct Requester *req, unsigned long MethodID, ... );
  249. void SetWindowPointerA( struct Window *win, struct TagItem *taglist );
  250. void SetWindowPointer( struct Window *win, unsigned long tag1, ... );
  251. BOOL TimedDisplayAlert( unsigned long alertNumber, UBYTE *string,
  252.     unsigned long height, unsigned long time );
  253. void HelpControl( struct Window *win, unsigned long flags );
  254.  
  255. #ifdef CLIBCPLUSON
  256. #undef CLIBCPLUSON
  257. #pragma +
  258. #endif
  259.  
  260. #endif     /* CLIB_INTUITION_PROTOS_H */
  261.