The ASL library also contains a font requester. Using the font requester is very similar to using the file requester. First, allocate a requester structure with allocaslrequest() or allocaslrequesttags(). the type should be set to ASL_FontRequest in order to get a fontrequester structure: struct FontRequester { APTR fo_Reserved1[2]; struct TextAttr fo_Attr; /* Returned TextAttr */ UBYTE fo_FrontPen; /* Returned pens, if selected */ UBYTE fo_BackPen; UBYTE fo_DrawMode; APTR fo_UserData; /* missing from asl.h but present in this structure */ SHORT fo_LeftEdge, fo_TopEdge, fo_Width, fo_Height; }; Once the requester is set up, call aslrequest() or aslrequesttags() to make the requester appear on screen. These functions return TRUE if the user makes a selection. In that case, the font selected is returned as a textattr structure in the fo_attr field of the fontrequester structure. (The TextAttr structure is defined in <graphics/text.h>. see the amiga ROM Kernel Manual: Includes and Autodocs for a complete listing.) If the user cancels the font requester FALSE is returned. figure 16-2: the asl font requester When the requester is no longer needed, call freeaslrequest() to deallocate the requester data structure. specifying font requester options with tagitems example font requester