#ifndef LIBRARIES_ASL_H
#define LIBRARIES_ASL_H 1

/*
** $Filename: libraries/asl.h $
** $Release: 2.04 Includes, V37.4 $
** $Revision: 36.5 $
** $Date: 91/11/08 $
**
** ASL library name and useful definitions.
**
** (C) Copyright 1989,1990 Charlie Heath
** (C) Copyright 1989-1991 Commodore-Amiga, Inc.
** All Rights Reserved
*/

#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif

#ifndef EXEC_LISTS_H
#include <exec/lists.h>
#endif

#ifndef EXEC_LIBRARIES_H
#include <exec/libraries.h>
#endif

#ifndef UTILITY_HOOKS_H
#include <utility/hooks.h>
#endif

#ifndef UTILITY_TAGITEM_H
#include <utility/tagitem.h>
#endif

#ifndef WBArg
#include <workbench/startup.h>
#endif

#ifndef GRAPHICS_TEXT_H
#include <graphics/text.h>
#endif



#define AslName "asl.library"


struct FileRequester {
 APTR rf_Reserved1;
 BYTE *rf_File; 
 BYTE *rf_Dir; 
 CPTR rf_Reserved2;
 UBYTE rf_Reserved3;
 UBYTE rf_Reserved4;
 APTR rf_Reserved5;
 WORD rf_LeftEdge,rf_TopEdge; 
 WORD rf_Width,rf_Height; 
 WORD rf_Reserved6;
 LONG rf_NumArgs; 
 struct WBArg *rf_ArgList;
 APTR rf_UserData; 
 APTR rf_Reserved7;
 APTR rf_Reserved8;
 BYTE *rf_Pat; 
 }; 




#define FILB_DOWILDFUNC 7L 
 
#define FILB_DOMSGFUNC 6L 
 
 
 
#define FILB_SAVE 5L 
#define FILB_NEWIDCMP 4L 
#define FILB_MULTISELECT 3L 
 
#define FILB_PATGAD 0L 


#define FILF_DOWILDFUNC (1L << FILB_DOWILDFUNC)
#define FILF_DOMSGFUNC (1L << FILB_DOMSGFUNC)

#define FILF_SAVE (1L << FILB_SAVE)
#define FILF_NEWIDCMP (1L << FILB_NEWIDCMP)
#define FILF_MULTISELECT (1L << FILB_MULTISELECT)
#define FILF_PATGAD (1L << FILB_PATGAD)



#define FIL1B_NOFILES 0L 
#define FIL1B_MATCHDIRS 1L 

#define FIL1F_NOFILES (1L << FIL1B_NOFILES)
#define FIL1F_MATCHDIRS (1L << FIL1B_MATCHDIRS)



struct FontRequester {
 APTR fo_Reserved1[2];
 struct TextAttr fo_Attr; 
 UBYTE fo_FrontPen; 
 UBYTE fo_BackPen;
 UBYTE fo_DrawMode;
 APTR fo_UserData;
 };





#define FONB_FRONTCOLOR 0 
#define FONB_BACKCOLOR 1 
#define FONB_STYLES 2 
#define FONB_DRAWMODE 3 
#define FONB_FIXEDWIDTH 4 
#define FONB_NEWIDCMP 5 
#define FONB_DOMSGFUNC 6 
 
 
 
#define FONB_DOWILDFUNC 7 
 

#define FONF_FRONTCOLOR (1L << FONB_FRONTCOLOR)
#define FONF_BACKCOLOR (1L << FONB_BACKCOLOR)
#define FONF_STYLES (1L << FONB_STYLES)
#define FONF_DRAWMODE (1L << FONB_DRAWMODE)
#define FONF_FIXEDWIDTH (1L << FONB_FIXEDWIDTH)
#define FONF_NEWIDCMP (1L << FONB_NEWIDCMP)
#define FONF_DOMSGFUNC (1L << FONB_DOMSGFUNC)
#define FONF_DOWILDFUNC (1L << FONB_DOWILDFUNC)






#define ASL_FileRequest 0
#define ASL_FontRequest 1





#define ASL_Dummy (TAG_USER + 0x80000)

#define ASL_Hail ASL_Dummy+1 
#define ASL_Window ASL_Dummy+2 
#define ASL_LeftEdge ASL_Dummy+3 
#define ASL_TopEdge ASL_Dummy+4 
#define ASL_Width ASL_Dummy+5
#define ASL_Height ASL_Dummy+6
#define ASL_HookFunc ASL_Dummy+7 


#define ASL_File ASL_Dummy+8 
#define ASL_Dir ASL_Dummy+9 


#define ASL_FontName ASL_Dummy+10 
#define ASL_FontHeight ASL_Dummy+11 
#define ASL_FontStyles ASL_Dummy+12 
#define ASL_FontFlags ASL_Dummy+13 
#define ASL_FrontPen ASL_Dummy+14 
#define ASL_BackPen ASL_Dummy+15 
#define ASL_MinHeight ASL_Dummy+16 
#define ASL_MaxHeight ASL_Dummy+17 

#define ASL_OKText ASL_Dummy+18 
#define ASL_CancelText ASL_Dummy+19 
#define ASL_FuncFlags ASL_Dummy+20 

#define ASL_ModeList ASL_Dummy+21 
#define ASL_ExtFlags1 ASL_Dummy+22 

#define ASL_Pattern ASL_FontName 



#endif
