#ifndef LIBRARIES_REQTOOLS_H #define LIBRARIES_REQTOOLS_H /* Copyright © 1995-2001, The AROS Development Team. All rights reserved. $Id: reqtools.h 17500 2003-05-08 00:36:23Z falemagn $ Desc: Definitions for reqtools.library Lang: English */ /* ** $Filename: libraries/reqtools.h $ ** $Release: 2.5 $ ** $Revision: 17500 $ ** ** reqtools.library definitions ** ** (C) Copyright 1991-1994 Nico François ** 1995-1996 Magnus Holmgren ** All Rights Reserved */ #ifndef EXEC_TYPES_H #include #endif /* EXEC_TYPES_H */ #ifndef EXEC_LISTS_H #include #endif /* EXEC_LISTS_H */ #ifndef EXEC_LIBRARIES_H #include #endif /* EXEC_LIBRARIES_H */ #ifndef EXEC_SEMAPHORES_H #include #endif /* EXEC_SEMAPHORES_H */ #ifndef LIBRARIES_DOS_H #include #endif /* LIBRARIES_DOS_H */ #ifndef LIBRARIES_DOSEXTENS_H #include #endif /* LIBRARIES_DOSEXTENS_H */ #ifndef LIBRARIES_DISKFONT_H #include #endif /* LIBRARIES_DISKFONT_H */ #ifndef GRAPHICS_TEXT_H #include #endif /* GRAPHICS_TEXT_H */ #ifndef UTILITY_TAGITEM_H #include #endif /* UTILITY_TAGITEM_H */ #ifndef UTILITY_UTILITY_H #include #endif /* UTILITY_TAGITEM_H */ #ifndef INTUITION_INTUITION_H #include #endif /* INTUITION_INTUITION_H */ #define REQTOOLSNAME "reqtools.library" #define REQTOOLSVERSION 38L #ifndef __AROS__ #define IPTR ULONG #endif /*********************** * * * Preferences * * * ***********************/ #define RTPREF_FILEREQ 0L #define RTPREF_FONTREQ 1L #define RTPREF_PALETTEREQ 2L #define RTPREF_SCREENMODEREQ 3L #define RTPREF_VOLUMEREQ 4L #define RTPREF_OTHERREQ 5L #define RTPREF_NR_OF_REQ 6L struct ReqDefaults { ULONG Size; ULONG ReqPos; UWORD LeftOffset; UWORD TopOffset; UWORD MinEntries; UWORD MaxEntries; }; struct ReqToolsPrefs { /* Size of preferences (_without_ this field and the semaphore) */ ULONG PrefsSize; struct SignalSemaphore PrefsSemaphore; /* Start of real preferences */ ULONG Flags; struct ReqDefaults ReqDefaults[RTPREF_NR_OF_REQ]; }; #ifdef __AROS__ #define RTPREFS_SIZE (4 + (RTPREF_NR_OF_REQ * (4 + 4 + 2 + 2 + 2 + 2))) #else #define RTPREFS_SIZE (sizeof (struct ReqToolsPrefs) - sizeof (struct SignalSemaphore) - 4) #endif /* Flags */ #define RTPRB_DIRSFIRST 0L #define RTPRF_DIRSFIRST (1L<DefaultFont */ #define RT_DefaultFont (RT_TagBase+9) /* boolean to set the standard wait pointer in window - default FALSE */ #define RT_WaitPointer (RT_TagBase+10) /* (V38) char preceding keyboard shortcut characters (will be underlined) */ #define RT_Underscore (RT_TagBase+11) /* (V38) share IDCMP port with window - default FALSE */ #define RT_ShareIDCMP (RT_TagBase+12) /* (V38) lock window and set standard wait pointer - default FALSE */ #define RT_LockWindow (RT_TagBase+13) /* (V38) boolean to make requester's screen pop to front - default TRUE */ #define RT_ScreenToFront (RT_TagBase+14) /* (V38) Requester should use this font - default: screen font */ #define RT_TextAttr (RT_TagBase+15) /* (V38) call this hook for every IDCMP message not for requester */ #define RT_IntuiMsgFunc (RT_TagBase+16) /* (V38) Locale ReqTools should use for text */ #define RT_Locale (RT_TagBase+17) /*** tags specific to rtEZRequestA *** */ /* title of requester window - english default "Request" or "Information" */ #define RTEZ_ReqTitle (RT_TagBase+20) /* (RT_TagBase+21) reserved */ /* various flags (see below) */ #define RTEZ_Flags (RT_TagBase+22) /* default response (activated by pressing RETURN) - default TRUE */ #define RTEZ_DefaultResponse (RT_TagBase+23) /*** tags specific to rtGetLongA *** */ /* minimum allowed value - default MININT */ #define RTGL_Min (RT_TagBase+30) /* maximum allowed value - default MAXINT */ #define RTGL_Max (RT_TagBase+31) /* suggested width of requester window (in pixels) */ #define RTGL_Width (RT_TagBase+32) /* boolean to show the default value - default TRUE */ #define RTGL_ShowDefault (RT_TagBase+33) /* (V38) string with possible responses - english default " _Ok |_Cancel" */ #define RTGL_GadFmt (RT_TagBase+34) /* (V38) optional arguments for RTGL_GadFmt */ #define RTGL_GadFmtArgs (RT_TagBase+35) /* (V38) invisible typing - default FALSE */ #define RTGL_Invisible (RT_TagBase+36) /* (V38) window backfill - default TRUE */ #define RTGL_BackFill (RT_TagBase+37) /* (V38) optional text above gadget */ #define RTGL_TextFmt (RT_TagBase+38) /* (V38) optional arguments for RTGS_TextFmt */ #define RTGL_TextFmtArgs (RT_TagBase+39) /* (V38) Center text - default FALSE */ #define RTGL_CenterText (RT_TagBase+100) /* (V38) various flags (see below) */ #define RTGL_Flags RTEZ_Flags /*** tags specific to rtGetStringA *** */ /* suggested width of requester window (in pixels) */ #define RTGS_Width RTGL_Width /* allow empty string to be accepted - default FALSE */ #define RTGS_AllowEmpty (RT_TagBase+80) /* (V38) string with possible responses - english default " _Ok |_Cancel" */ #define RTGS_GadFmt RTGL_GadFmt /* (V38) optional arguments for RTGS_GadFmt */ #define RTGS_GadFmtArgs RTGL_GadFmtArgs /* (V38) invisible typing - default FALSE */ #define RTGS_Invisible RTGL_Invisible /* (V38) window backfill - default TRUE */ #define RTGS_BackFill RTGL_BackFill /* (V38) optional text above gadget */ #define RTGS_TextFmt RTGL_TextFmt /* (V38) optional arguments for RTGS_TextFmt */ #define RTGS_TextFmtArgs RTGL_TextFmtArgs /* (V38) Center text - default FALSE */ #define RTGS_CenterText RTGL_CenterText /* (V38) various flags (see below) */ #define RTGS_Flags RTEZ_Flags /*** tags specific to rtFileRequestA *** */ /* various flags (see below) */ #define RTFI_Flags (RT_TagBase+40) /* suggested height of file requester */ #define RTFI_Height (RT_TagBase+41) /* replacement text for 'Ok' gadget (max 6 chars) */ #define RTFI_OkText (RT_TagBase+42) /* (V38) bring up volume requester, tag data holds flags (see below) */ #define RTFI_VolumeRequest (RT_TagBase+43) /* (V38) call this hook for every file in the directory */ #define RTFI_FilterFunc (RT_TagBase+44) /* (V38) allow empty file to be accepted - default FALSE */ #define RTFI_AllowEmpty (RT_TagBase+45) /*** tags specific to rtFontRequestA *** */ /* various flags (see below) */ #define RTFO_Flags RTFI_Flags /* suggested height of font requester */ #define RTFO_Height RTFI_Height /* replacement text for 'Ok' gadget (max 6 chars) */ #define RTFO_OkText RTFI_OkText /* suggested height of font sample display - default 24 */ #define RTFO_SampleHeight (RT_TagBase+60) /* minimum height of font displayed */ #define RTFO_MinHeight (RT_TagBase+61) /* maximum height of font displayed */ #define RTFO_MaxHeight (RT_TagBase+62) /* [(RT_TagBase+63) to (RT_TagBase+66) used below] */ /* (V38) call this hook for every font */ #define RTFO_FilterFunc RTFI_FilterFunc /*** (V38) tags for rtScreenModeRequestA *** */ /* various flags (see below) */ #define RTSC_Flags RTFI_Flags /* suggested height of screenmode requester */ #define RTSC_Height RTFI_Height /* replacement text for 'Ok' gadget (max 6 chars) */ #define RTSC_OkText RTFI_OkText /* property flags (see also RTSC_PropertyMask) */ #define RTSC_PropertyFlags (RT_TagBase+90) /* property mask - default all bits in RTSC_PropertyFlags considered */ #define RTSC_PropertyMask (RT_TagBase+91) /* minimum display width allowed */ #define RTSC_MinWidth (RT_TagBase+92) /* maximum display width allowed */ #define RTSC_MaxWidth (RT_TagBase+93) /* minimum display height allowed */ #define RTSC_MinHeight (RT_TagBase+94) /* maximum display height allowed */ #define RTSC_MaxHeight (RT_TagBase+95) /* minimum display depth allowed */ #define RTSC_MinDepth (RT_TagBase+96) /* maximum display depth allowed */ #define RTSC_MaxDepth (RT_TagBase+97) /* call this hook for every display mode id */ #define RTSC_FilterFunc RTFI_FilterFunc /*** tags for rtChangeReqAttrA *** */ /* file requester - set directory */ #define RTFI_Dir (RT_TagBase+50) /* file requester - set wildcard pattern */ #define RTFI_MatchPat (RT_TagBase+51) /* file requester - add a file or directory to the buffer */ #define RTFI_AddEntry (RT_TagBase+52) /* file requester - remove a file or directory from the buffer */ #define RTFI_RemoveEntry (RT_TagBase+53) /* font requester - set font name of selected font */ #define RTFO_FontName (RT_TagBase+63) /* font requester - set font size */ #define RTFO_FontHeight (RT_TagBase+64) /* font requester - set font style */ #define RTFO_FontStyle (RT_TagBase+65) /* font requester - set font flags */ #define RTFO_FontFlags (RT_TagBase+66) /* (V38) screenmode requester - get display attributes from screen */ #define RTSC_ModeFromScreen (RT_TagBase+80) /* (V38) screenmode requester - set display mode id (32-bit extended) */ #define RTSC_DisplayID (RT_TagBase+81) /* (V38) screenmode requester - set display width */ #define RTSC_DisplayWidth (RT_TagBase+82) /* (V38) screenmode requester - set display height */ #define RTSC_DisplayHeight (RT_TagBase+83) /* (V38) screenmode requester - set display depth */ #define RTSC_DisplayDepth (RT_TagBase+84) /* (V38) screenmode requester - set overscan type, 0 for regular size */ #define RTSC_OverscanType (RT_TagBase+85) /* (V38) screenmode requester - set autoscroll */ #define RTSC_AutoScroll (RT_TagBase+86) /*** tags for rtPaletteRequestA *** */ /* initially selected color - default 1 */ #define RTPA_Color (RT_TagBase+70) /*** tags for rtReqHandlerA *** */ /* end requester by software control, set tagdata to REQ_CANCEL, REQ_OK or in case of rtEZRequest to the return value */ #define RTRH_EndRequest (RT_TagBase+60) /*** tags for rtAllocRequestA ***/ /* no tags defined yet */ /************ * RT_ReqPos * ************/ #define REQPOS_POINTER 0L #define REQPOS_CENTERWIN 1L #define REQPOS_CENTERSCR 2L #define REQPOS_TOPLEFTWIN 3L #define REQPOS_TOPLEFTSCR 4L /****************** * RTRH_EndRequest * ******************/ #define REQ_CANCEL 0L #define REQ_OK 1L /*************************************** * flags for RTFI_Flags and RTFO_Flags * * or filereq->Flags and fontreq->Flags * ***************************************/ #define FREQB_NOBUFFER 2L #define FREQF_NOBUFFER (1L<Flags * *****************************************/ #define FREQB_MULTISELECT 0L #define FREQF_MULTISELECT (1L<Flags * *****************************************/ #define FREQB_FIXEDWIDTH 5L #define FREQF_FIXEDWIDTH (1L<Flags * *****************************************************/ #define SCREQB_SIZEGADS 13L #define SCREQF_SIZEGADS (1L<Flags * *****************************************/ #define EZREQB_NORETURNKEY 0L #define EZREQF_NORETURNKEY (1L<Flags * ***********************************************/ #define GLREQB_CENTERTEXT EZREQB_CENTERTEXT #define GLREQF_CENTERTEXT EZREQF_CENTERTEXT #define GLREQB_HIGHLIGHTTEXT 3L #define GLREQF_HIGHLIGHTTEXT (1L<Flags * ***********************************************/ #define GSREQB_CENTERTEXT EZREQB_CENTERTEXT #define GSREQF_CENTERTEXT EZREQF_CENTERTEXT #define GSREQB_HIGHLIGHTTEXT GLREQB_HIGHLIGHTTEXT #define GSREQF_HIGHLIGHTTEXT GLREQF_HIGHLIGHTTEXT /***************************************** * (V38) flags for RTFI_VolumeRequest tag * *****************************************/ #define VREQB_NOASSIGNS 0L #define VREQF_NOASSIGNS (1L<