1 #ifndef  CLIB_GTLAYOUT_PROTOS_H
    2 #define  CLIB_GTLAYOUT_PROTOS_H
    3 
    4 /*
    5 **	$VER: gtlayout_protos.h 47.1 (11.10.1999)
    6 **
    7 **	C prototypes. For use with 32 bit integers only.
    8 **
    9 **	Copyright © 1993-1999 by Olaf `Olsen' Barthel
   10 **		Freely distributable.
   11 */
   12 
   13 #ifndef  EXEC_TYPES_H
   14 #include <exec/types.h>
   15 #endif
   16 #ifndef  INTUITION_INTUITION_H
   17 #include <intuition/intuition.h>
   18 #endif
   19 
   20 #ifdef __cplusplus
   21 extern "C" {
   22 #endif /* __cplusplus */
   23 
   24 VOID LT_LevelWidth( struct LayoutHandle *handle, STRPTR levelFormat, APTR dispFunc, LONG min, LONG max, LONG *maxWidth, LONG *maxLen, LONG fullCheck );
   25 VOID LT_DeleteHandle( struct LayoutHandle *handle );
   26 struct LayoutHandle *LT_CreateHandle( struct Screen *screen, struct TextAttr *font );
   27 struct LayoutHandle *LT_CreateHandleTagList( struct Screen *screen, struct TagItem *tagList );
   28 struct LayoutHandle *LT_CreateHandleTags( struct Screen *screen, ... );
   29 BOOL LT_Rebuild( struct LayoutHandle *handle, struct IBox *bounds, LONG extraWidth, LONG extraHeight, LONG clear );
   30 VOID LT_HandleInput( struct LayoutHandle *handle, ULONG msgQualifier, ULONG *msgClass, UWORD *msgCode, struct Gadget **msgGadget );
   31 VOID LT_BeginRefresh( struct LayoutHandle *handle );
   32 VOID LT_EndRefresh( struct LayoutHandle *handle, LONG complete );
   33 LONG LT_GetAttributesA( struct LayoutHandle *handle, LONG id, struct TagItem *tagList );
   34 LONG LT_GetAttributes( struct LayoutHandle *handle, LONG id, ... );
   35 VOID LT_SetAttributesA( struct LayoutHandle *handle, LONG id, struct TagItem *tagList );
   36 VOID LT_SetAttributes( struct LayoutHandle *handle, LONG id, ... );
   37 VOID LT_AddA( struct LayoutHandle *handle, LONG type, STRPTR label, LONG id, struct TagItem *tagList );
   38 VOID LT_Add( struct LayoutHandle *handle, LONG type, STRPTR label, LONG id, ... );
   39 VOID LT_NewA( struct LayoutHandle *handle, struct TagItem *tagList );
   40 VOID LT_New( struct LayoutHandle *handle, ... );
   41 VOID LT_EndGroup( struct LayoutHandle *handle );
   42 struct Window *LT_LayoutA( struct LayoutHandle *handle, STRPTR title, struct IBox *bounds, LONG extraWidth, LONG extraHeight, ULONG idcmp, LONG align, struct TagItem *tagParams );
   43 struct Window *LT_Layout( struct LayoutHandle *handle, STRPTR title, struct IBox *bounds, LONG extraWidth, LONG extraHeight, ULONG idcmp, LONG align, ... );
   44 struct Menu *LT_LayoutMenusA( struct LayoutHandle *handle, struct NewMenu *menuTemplate, struct TagItem *tagParams );
   45 struct Menu *LT_LayoutMenus( struct LayoutHandle *handle, struct NewMenu *menuTemplate, ... );
   46 LONG LT_LabelWidth( struct LayoutHandle *handle, STRPTR label );
   47 LONG LT_LabelChars( struct LayoutHandle *handle, STRPTR label );
   48 VOID LT_LockWindow( struct Window *window );
   49 VOID LT_UnlockWindow( struct Window *window );
   50 VOID LT_DeleteWindowLock( struct Window *window );
   51 VOID LT_ShowWindow( struct LayoutHandle *handle, LONG activate );
   52 VOID LT_Activate( struct LayoutHandle *handle, LONG id );
   53 BOOL LT_PressButton( struct LayoutHandle *handle, LONG id );
   54 LONG LT_GetCode( ULONG msgQualifier, ULONG msgClass, ULONG msgCode, struct Gadget *msgGadget );
   55 /*--- Added in v1.78 --------------------------------------------------*/
   56 struct IntuiMessage *LT_GetIMsg( struct LayoutHandle *handle );
   57 VOID LT_ReplyIMsg( struct IntuiMessage *msg );
   58 /*--- Added in v3.0 ---------------------------------------------------*/
   59 struct Window *LT_BuildA( struct LayoutHandle *handle, struct TagItem *tagParams );
   60 struct Window *LT_Build( struct LayoutHandle *handle, ... );
   61 BOOL LT_RebuildTagList( struct LayoutHandle *handle, LONG clear, struct TagItem *tags );
   62 BOOL LT_RebuildTags( struct LayoutHandle *handle, LONG clear, ... );
   63 /*--- Added in v9.0 ---------------------------------------------------*/
   64 VOID LT_UpdateStrings( struct LayoutHandle *handle );
   65 /*--- Added in v11.0 ---------------------------------------------------*/
   66 VOID LT_DisposeMenu( struct Menu *menu );
   67 struct Menu *LT_NewMenuTemplate( struct Screen *screen, struct TextAttr *textAttr, struct Image *amigaGlyph, struct Image *checkGlyph, LONG *error, struct NewMenu *menuTemplate );
   68 struct Menu *LT_NewMenuTagList( struct TagItem *tagList );
   69 struct Menu *LT_NewMenuTags( Tag firstTag, ... );
   70 VOID LT_MenuControlTagList( struct Window *window, struct Menu *intuitionMenu, struct TagItem *tags );
   71 VOID LT_MenuControlTags( struct Window *window, struct Menu *intuitionMenu, ... );
   72 struct MenuItem *LT_GetMenuItem( struct Menu *menu, ULONG id );
   73 struct MenuItem *LT_FindMenuCommand( struct Menu *menu, ULONG msgCode, ULONG msgQualifier, struct Gadget *msgGadget );
   74 /*--- Added in v14.0 ---------------------------------------------------*/
   75 VOID LT_NewLevelWidth( struct LayoutHandle *handle, STRPTR levelFormat, APTR dispFunc, LONG min, LONG max, LONG *maxWidth, LONG *maxLen, LONG fullCheck );
   76 /*--- Added in v31.0 ---------------------------------------------------*/
   77 VOID LT_Refresh( struct LayoutHandle *handle );
   78 /*--- Added in v34.0 ---------------------------------------------------*/
   79 VOID LT_CatchUpRefresh( struct LayoutHandle *handle );
   80 /*--- Added in v39.0 ---------------------------------------------------*/
   81 APTR LT_GetWindowUserData( struct Window *window, APTR defaultValue );
   82 /*--- Added in v47.0 ---------------------------------------------------*/
   83 VOID LT_Redraw( struct LayoutHandle *handle, LONG id );
   84 
   85 #ifdef __cplusplus
   86 }
   87 #endif /* __cplusplus */
   88 
   89 #endif   /* CLIB_GTLAYOUT_PROTOS_H */