ASL Types Reference

Per-function autodoc pages link to these types via the type name (e.g., [List](types-asl.md#list)).

Clickable inner types: inside each struct definition, field types that are themselves structs/unions/enums are clickable hyperlinks to their own definitions.

Contents

asl.h


AslSemaphore

Source: libraries/asl.h


struct AslSemaphore
{
    struct SignalSemaphore    as_Semaphore;

    UWORD           as_Version; /* Must be >= 45 */
    ULONG           as_Size;    /* Size of this data structure. */

    UBYTE           as_SortBy;  /* File requester defaults; name, date or size */
    UBYTE           as_SortDrawers; /* File requester defaults; first, mix or last */
    UBYTE           as_SortOrder;   /* File requester defaults; ascending or descending */

    UBYTE           as_SizePosition; /* See below */

    WORD            as_RelativeLeft; /* Window position offset */
    WORD            as_RelativeTop;

    UBYTE           as_RelativeWidth;/* Window size factor; this is
                          * a percentage of the parent
                          * window/screen width.
                          */
    UBYTE           as_RelativeHeight;
};


DisplayMode

Source: libraries/asl.h


struct DisplayMode
{
    struct Node   dm_Node;           /* see ln_Name */
    struct DimensionInfo dm_DimensionInfo;  /* mode description */
    ULONG        dm_PropertyFlags;  /* applicable properties */
};


FileRequester

Source: libraries/asl.h


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 */
};


FontRequester

Source: libraries/asl.h


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_SpecialDrawMode;    /* Returned special drawmode (V47) */
    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. */
};


ScreenModeRequester

Source: libraries/asl.h


struct ScreenModeRequester
{
    ULONG sm_DisplayID;        /* Display mode ID */
    ULONG sm_DisplayWidth;     /* Width of display in pixels */
    ULONG sm_DisplayHeight;    /* Height of display in pixels */
    UWORD sm_DisplayDepth;     /* Number of bit-planes of display */
    UWORD sm_OverscanType;     /* Type of overscan of display */
    BOOL  sm_AutoScroll;       /* Display should auto-scroll? */

    ULONG sm_BitMapWidth;      /* Used to create your own BitMap */
    ULONG sm_BitMapHeight;

    WORD  sm_LeftEdge;         /* Coordinates of requester on exit */
    WORD  sm_TopEdge;
    WORD  sm_Width;
    WORD  sm_Height;

    BOOL  sm_InfoOpened;       /* Info window opened on exit? */
    WORD  sm_InfoLeftEdge;     /* Last coordinates of Info window */
    WORD  sm_InfoTopEdge;
    WORD  sm_InfoWidth;
    WORD  sm_InfoHeight;

    APTR  sm_UserData;         /* You can store your own data here */
};