home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 8
/
FreshFishVol8-CD1.bin
/
gnu
/
os-include
/
libraries
/
asl.h
< prev
next >
Wrap
C/C++ Source or Header
|
1993-10-15
|
18KB
|
436 lines
#ifndef LIBRARIES_ASL_H
#define LIBRARIES_ASL_H
/*
** $VER: asl.h 38.5 (5.1.93)
** Includes Release 40.15
**
** ASL library structures and constants
**
** (C) Copyright 1989-1993 Commodore-Amiga Inc.
** (C) Copyright 1989-1990 Charlie Heath
** All Rights Reserved
*/
/*****************************************************************************/
#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif
#ifndef EXEC_NODES_H
#include <exec/nodes.h>
#endif
#ifndef UTILITY_TAGITEM_H
#include <utility/tagitem.h>
#endif
#ifndef WORKBENCH_STARTUP_H
#include <workbench/startup.h>
#endif
#ifndef GRAPHICS_TEXT_H
#include <graphics/text.h>
#endif
#ifndef GRAPHICS_DISPLAYINFO_H
#include <graphics/displayinfo.h>
#endif
/*****************************************************************************/
#define AslName "asl.library"
#define ASL_TB (TAG_USER+0x80000)
/*****************************************************************************/
/* Types of requesters known to ASL, used as arguments to AllocAslRequest() */
#define ASL_FileRequest 0
#define ASL_FontRequest 1
#define ASL_ScreenModeRequest 2
/*****************************************************************************
*
* ASL File Requester data structures and constants
*
* This structure must only be allocated by asl.library amd is READ-ONLY!
* Control of the various fields is provided via tags when the requester
* is created with AllocAslRequest() and when it is displayed via
* AslRequest()
*/
struct FileRequester
{
UBYTE fr_Reserved0[4];
STRPTR fr_File; /* Contents of File gadget on exit */
STRPTR fr_Drawer; /* Contents of Drawer gadget on exit */
UBYTE fr_Reserved1[10];
WORD fr_LeftEdge; /* Coordinates of requester on exit */
WORD fr_TopEdge;
WORD fr_Width;
WORD fr_Height;
UBYTE fr_Reserved2[2];
LONG fr_NumArgs; /* Number of files selected */
struct WBArg *fr_ArgList; /* List of files selected */
APTR fr_UserData; /* You can store your own data here */
UBYTE fr_Reserved3[8];
STRPTR fr_Pattern; /* Contents of Pattern gadget on exit */
};
/* File requester tag values, used by AllocAslRequest() and AslRequest() */
/* Window control */
#define ASLFR_Window ASL_TB+2 /* Parent window */
#define ASLFR_Screen ASL_TB+40 /* Screen to open on if no window */
#define ASLFR_PubScreenName ASL_TB+41 /* Name of public screen */
#define ASLFR_PrivateIDCMP ASL_TB+42 /* Allocate private IDCMP? */
#define ASLFR_IntuiMsgFunc ASL_TB+70 /* Function to handle IntuiMessages */
#define ASLFR_SleepWindow ASL_TB+43 /* Block input in ASLFR_Window? */
#define ASLFR_UserData ASL_TB+52 /* What to put in fr_UserData */
/* Text display */
#define ASLFR_TextAttr ASL_TB+51 /* Text font to use for gadget text */
#define ASLFR_Locale ASL_TB+50 /* Locale ASL should use for text */
#define ASLFR_TitleText ASL_TB+1 /* Title of requester */
#define ASLFR_PositiveText ASL_TB+18 /* Positive gadget text */
#define ASLFR_NegativeText ASL_TB+19 /* Negative gadget text */
/* Initial settings */
#define ASLFR_InitialLeftEdge ASL_TB+3 /* Initial requester coordinates */
#define ASLFR_InitialTopEdge ASL_TB+4
#define ASLFR_InitialWidth ASL_TB+5 /* Initial requester dimensions */
#define ASLFR_InitialHeight ASL_TB+6
#define ASLFR_InitialFile ASL_TB+8 /* Initial contents of File gadget */
#define ASLFR_InitialDrawer ASL_TB+9 /* Initial contents of Drawer gadg. */
#define ASLFR_InitialPattern ASL_TB+10 /* Initial contents of Pattern gadg.*/
/* Options */
#define ASLFR_Flags1 ASL_TB+20 /* Option flags */
#define ASLFR_Flags2 ASL_TB+22 /* Additional option flags */
#define ASLFR_DoSaveMode ASL_TB+44 /* Being used for saving? */
#define ASLFR_DoMultiSelect ASL_TB+45 /* Do multi-select? */
#define ASLFR_DoPatterns ASL_TB+46 /* Display a Pattern gadget? */
/* Filtering */
#define ASLFR_DrawersOnly ASL_TB+47 /* Don't display files? */
#define ASLFR_FilterFunc ASL_TB+49 /* Function to filter files */
#define ASLFR_RejectIcons ASL_TB+60 /* Display .info files? */
#define ASLFR_RejectPattern ASL_TB+61 /* Don't display files matching pat */
#define ASLFR_AcceptPattern ASL_TB+62 /* Accept only files matching pat */
#define ASLFR_FilterDrawers ASL_TB+63 /* Also filter drawers with patterns*/
#define ASLFR_HookFunc ASL_TB+7 /* Combined callback function */
/* Flag bits for the ASLFR_Flags1 tag */
#define FRB_FILTERFUNC 7
#define FRB_INTUIFUNC 6
#define FRB_DOSAVEMODE 5
#define FRB_PRIVATEIDCMP 4
#define FRB_DOMULTISELECT 3
#define FRB_DOPATTERNS 0
#define FRF_FILTERFUNC (1L << FRB_FILTERFUNC)
#define FRF_INTUIFUNC (1L << FRB_INTUIFUNC)
#define FRF_DOSAVEMODE (1L << FRB_DOSAVEMODE)
#define FRF_PRIVATEIDCMP (1L << FRB_PRIVATEIDCMP)
#define FRF_DOMULTISELECT (1L << FRB_DOMULTISELECT)
#define FRF_DOPATTERNS (1L << FRB_DOPATTERNS)
/* Flag bits for the ASLFR_Flags2 tag */
#define FRB_DRAWERSONLY 0
#define FRB_FILTERDRAWERS 1
#define FRB_REJECTICONS 2
#define FRF_DRAWERSONLY (1L << FRB_DRAWERSONLY)
#define FRF_FILTERDRAWERS (1L << FRB_FILTERDRAWERS)
#define FRF_REJECTICONS (1L << FRB_REJECTICONS)
/*****************************************************************************
*
* ASL Font Requester data structures and constants
*
* This structure must only be allocated by asl.library amd is READ-ONLY!
* Control of the various fields is provided via tags when the requester
* is created with AllocAslRequest() and when it is displayed via
* AslRequest()
*/
struct FontRequester
{
UBYTE fo_Reserved0[8];
struct TextAttr fo_Attr; /* Returned TextAttr */
UBYTE fo_FrontPen; /* Returned front pen */
UBYTE fo_BackPen; /* Returned back pen */
UBYTE fo_DrawMode; /* Returned drawing mode */
UBYTE fo_Reserved1;
APTR fo_UserData; /* You can store your own data here */
WORD fo_LeftEdge; /* Coordinates of requester on exit */
WORD fo_TopEdge;
WORD fo_Width;
WORD fo_Height;
struct TTextAttr fo_TAttr; /* Returned TTextAttr */
};
/* Font requester tag values, used by AllocAslRequest() and AslRequest() */
/* Window control */
#define ASLFO_Window ASL_TB+2 /* Parent window */
#define ASLFO_Screen ASL_TB+40 /* Screen to open on if no window */
#define ASLFO_PubScreenName ASL_TB+41 /* Name of public screen */
#define ASLFO_PrivateIDCMP ASL_TB+42 /* Allocate private IDCMP? */
#define ASLFO_IntuiMsgFunc ASL_TB+70 /* Function to handle IntuiMessages */
#define ASLFO_SleepWindow ASL_TB+43 /* Block input in ASLFO_Window? */
#define ASLFO_UserData ASL_TB+52 /* What to put in fo_UserData */
/* Text display */
#define ASLFO_TextAttr ASL_TB+51 /* Text font to use for gadget text */
#define ASLFO_Locale ASL_TB+50 /* Locale ASL should use for text */
#define ASLFO_TitleText ASL_TB+1 /* Title of requester */
#define ASLFO_PositiveText ASL_TB+18 /* Positive gadget text */
#define ASLFO_NegativeText ASL_TB+19 /* Negative gadget text */
/* Initial settings */
#define ASLFO_InitialLeftEdge ASL_TB+3 /* Initial requester coordinates */
#define ASLFO_InitialTopEdge ASL_TB+4
#define ASLFO_InitialWidth ASL_TB+5 /* Initial requester dimensions */
#define ASLFO_InitialHeight ASL_TB+6
#define ASLFO_InitialName ASL_TB+10 /* Initial contents of Name gadget */
#define ASLFO_InitialSize ASL_TB+11 /* Initial contents of Size gadget */
#define ASLFO_InitialStyle ASL_TB+12 /* Initial font style */
#define ASLFO_InitialFlags ASL_TB+13 /* Initial font flags for TextAttr */
#define ASLFO_InitialFrontPen ASL_TB+14 /* Initial front pen */
#define ASLFO_InitialBackPen ASL_TB+15 /* Initial back pen */
#define ASLFO_InitialDrawMode ASL_TB+59 /* Initial draw mod