home *** CD-ROM | disk | FTP | other *** search
- IFND LIBRARIES_REQTOOLS_I
- LIBRARIES_REQTOOLS_I SET 1
- **
- ** $Filename: libraries/reqtools.i $
- ** $Release: 2.2 $
- ** $Revision: 38.12 $
- **
- ** reqtools.library definitions
- **
- ** (C) Copyright 1991-1994 Nico François
- ** All Rights Reserved
- **
-
- IFND EXEC_LISTS_I
- include "exec/lists.i"
- ENDC
-
- IFND EXEC_LIBRARIES_I
- include "exec/libraries.i"
- ENDC
-
- IFND EXEC_SEMAPHORES_I
- include "exec/semaphores.i"
- ENDC
-
- IFND LIBRARIES_DOS_I
- include "libraries/dos.i"
- ENDC
-
- IFND LIBRARIES_DOSEXTENS_I
- include "libraries/dosextens.i"
- ENDC
-
- IFND GRAPHICS_TEXT_I
- include "graphics/text.i"
- ENDC
-
- IFND UTILITY_TAGITEM_I
- include "utility/tagitem.i"
- ENDC
-
- REQTOOLSNAME MACRO
- dc.b "reqtools.library",0
- ENDM
-
- REQTOOLSVERSION equ 38
-
- ************************
- * *
- * Preferences *
- * *
- ************************
-
- RTPREF_FILEREQ equ 0
- RTPREF_FONTREQ equ 1
- RTPREF_PALETTEREQ equ 2
- RTPREF_SCREENMODEREQ equ 3
- RTPREF_VOLUMEREQ equ 4
- RTPREF_OTHERREQ equ 5
- RTPREF_NR_OF_REQ equ 6
-
- STRUCTURE ReqDefaults,0
- ULONG rtrd_Size
- ULONG rtrd_ReqPos
- UWORD rtrd_LeftOffset
- UWORD rtrd_TopOffset
- UWORD rtrd_MinEntries
- UWORD rtrd_MaxEntries
- LABEL ReqDefaults_SIZE
-
- STRUCTURE ReqToolsPrefs,0
- * Size of preferences (_without_ this field and the semaphore)
- ULONG rtpr_PrefsSize
- STRUCT rtpr_PrefsSemaphore,SS_SIZE
- * Start of real preferences
- ULONG rtpr_Flags
- STRUCT rtpr_ReqDefaults,RTPREF_NR_OF_REQ*ReqDefaults_SIZE
- LABEL ReqToolsPrefs_SIZE
-
- RTPREFS_SIZE equ (ReqToolsPrefs_SIZE-SS_SIZE-4)
-
- * Flags
-
- BITDEF RTPR,DIRSFIRST,0
- BITDEF RTPR,DIRSMIXED,1
- BITDEF RTPR,IMMSORT,2
- BITDEF RTPR,NOSCRTOFRONT,3
- BITDEF RTPR,NOLED,4
- BITDEF RTPR,DEFAULTFONT,5
-
- ************************
- * *
- * Library Base *
- * *
- ************************
-
- STRUCTURE ReqToolsBase,LIB_SIZE
- UBYTE rt_RTFlags
- STRUCT rt_pad,3
- ULONG rt_SegList
-
- * PUBLIC FIELDS *
-
- * The following library bases may be read and used by your program
- APTR rt_IntuitionBase
- APTR rt_GfxBase
- APTR rt_DOSBase
- * Next two library bases are only (and always) valid on Kickstart 2.0!
- * (1.3 version of reqtools also initializes these when run on 2.0)
- APTR rt_GadToolsBase
- APTR rt_UtilityBase
-
- * PRIVATE FIELDS, THESE WILL CHANGE FROM RELEASE TO RELEASE!
-
- * The RealOpenCnt is for the buffered AvailFonts feature. Since
- * Kickstart 3.0 offers low memory handlers a release of ReqTools for
- * 3.0 will not use this field and start using the normal OpenCnt again.
- UWORD rt_RealOpenCnt
- UWORD rt_AvailFontsLock
- APTR rt_AvailFontsHeader
- ULONG rt_FontsAssignType
- BPTR rt_FontsAssignLock
- APTR rt_FontsAssignList
- STRUCT rt_ReqToolsPrefs,ReqToolsPrefs_SIZE
- UWORD rt_prefspad
- LABEL ReqToolsBase_SIZE
-
- * types of requesters, for rtAllocRequestA()
- RT_FILEREQ equ 0
- RT_REQINFO equ 1
- RT_FONTREQ equ 2
- * (V38) *
- RT_SCREENMODEREQ equ 3
-
- ************************
- * *
- * File requester *
- * *
- ************************
-
- * structure _MUST_ be allocated with rtAllocRequest()
-
- STRUCTURE rtFileRequester,0
- ULONG rtfi_ReqPos
- UWORD rtfi_LeftOffset
- UWORD rtfi_TopOffset
- ULONG rtfi_Flags
- ULONG rtfi_private1
- APTR rtfi_Dir * READ ONLY! Change with rtChangeReqAttrA()!
- APTR rtfi_MatchPat * READ ONLY! Change with rtChangeReqAttrA()!
- APTR rtfi_DefaultFont
- ULONG rtfi_WaitPointer
- * (V38) *
- ULONG rtfi_LockWindow
- ULONG rtfi_ShareIDCMP
- APTR rtfi_IntuiMsgFunc
- UWORD rtfi_reserved1
- UWORD rtfi_reserved2
- UWORD rtfi_reserved3
- UWORD rtfi_ReqHeight * READ ONLY! Use RTFI_Height tag!
- * Lots of private data follows! HANDS OFF :-)
-
- * returned by rtFileRequestA() if multiselect is enabled,
- * free list with rtFreeFileList()
-
- STRUCTURE rtFileList,0
- APTR rtfl_Next
- ULONG rtfl_StrLen
- APTR rtfl_Name
- LABEL rtFileList_SIZE
-
- * structure passed to RTFI_FilterFunc callback hook by
- * volume requester (see RTFI_VolumeRequest tag)
-
- STRUCTURE rtVolumeEntry,0
- ULONG rtve_Type * DLT_DEVICE or DLT_DIRECTORY
- APTR rtve_Name
- LABEL rtVolumeEntry_SIZE
-
- ************************
- * *
- * Font requester *
- * *
- ************************
-
- * structure _MUST_ be allocated with rtAllocRequest()
-
- STRUCTURE rtFontRequester,0
- ULONG rtfo_ReqPos
- UWORD rtfo_LeftOffset
- UWORD rtfo_TopOffset
- ULONG rtfo_Flags
- APTR rtfo_private1
- STRUCT rtfo_Attr,ta_SIZEOF * READ ONLY!
- APTR rtfo_DefaultFont
- ULONG rtfo_WaitPointer
- * (V38) *
- ULONG rtfo_LockWindow
- ULONG rtfo_ShareIDCMP
- APTR rtfo_IntuiMsgFunc
- UWORD rtfo_reserved1
- UWORD rtfo_reserved2
- UWORD rtfo_reserved3
- UWORD rtfo_ReqHeight * READ ONLY! Use RTFO_Height tag!
- * Lots of private data follows! HANDS OFF :-)
-
- **************************
- * *
- * ScreenMode requester *
- * *
- **************************
-
- * structure _MUST_ be allocated with rtAllocRequest()
-
- STRUCTURE rtScreenModeRequester,0
- ULONG rtsc_ReqPos
- UWORD rtsc_LeftOffset
- UWORD rtsc_TopOffset
- ULONG rtsc_Flags
- APTR rtsc_private1
- *
- ULONG rtsc_DisplayID * READ ONLY!
- UWORD rtsc_DisplayWidth * READ ONLY!
- UWORD rtsc_DisplayHeight * READ ONLY!
- *
- APTR rtsc_DefaultFont
- ULONG rtsc_WaitPointer
- ULONG rtsc_LockWindow
- ULONG rtsc_ShareIDCMP
- APTR rtsc_IntuiMsgFunc
- UWORD rtsc_reserved1
- UWORD rtsc_reserved2
- UWORD rtsc_reserved3
- UWORD rtsc_ReqHeight * READ ONLY! Use RTSC_Height tag!
- *
- UWORD rtsc_DisplayDepth * READ ONLY!
- UWORD rtsc_OverscanType * READ ONLY!
- ULONG rtsc_AutoScroll * READ ONLY!
- * Lots of private data follows! HANDS OFF :-)
-
- ************************
- * *
- * Requester Info *
- * *
- ************************
-
- * for rtEZRequestA(), rtGetLongA(), rtGetStringA() and rtPaletteRequestA(),
- * _MUST_ be allocated with rtAllocRequest()
-
- STRUCTURE rtReqInfo,0
- ULONG rtri_ReqPos
- UWORD rtri_LeftOffset
- UWORD rtri_TopOffset
- ULONG rtri_Width * not for rtEZRequestA()
- APTR rtri_ReqTitle * currently only for rtEZRequestA()
- ULONG rtri_Flags
- APTR rtri_DefaultFont * currently only for rtPaletteRequestA()
- ULONG rtri_WaitPointer
- * (V38) *
- ULONG rtri_LockWindow
- ULONG rtri_ShareIDCMP
- ULONG rtri_IntuiMsgFunc
- * structure may be extended in future
-
- ************************
- * *
- * Handler Info *
- * *
- ************************
-
- * for rtReqHandlerA(), will be allocated for you when you use
- * the RT_ReqHandler tag, never try to allocate this yourself!
-
- STRUCTURE rtHandlerInfo,4 * first longword is private!
- ULONG rthi_WaitMask
- ULONG rthi_DoNotWait
- * Private data follows, HANDS OFF :-)
-
- * possible return codes from rtReqHandlerA()
-
- CALL_HANDLER equ $80000000
-
-
- **************************************
- * *
- * TAGS *
- * *
- **************************************
-
- RT_TagBase equ TAG_USER
-
- *** tags understood by most requester functions ***
- *
- * optional pointer to window
- RT_Window equ (RT_TagBase+1)
- * idcmp flags requester should abort on (useful for IDCMP_DISKINSERTED)
- RT_IDCMPFlags equ (RT_TagBase+2)
- * position of requester window (see below) - default REQPOS_POINTER
- RT_ReqPos equ (RT_TagBase+3)
- * leftedge offset of requester relative to position specified by RT_ReqPos
- RT_LeftOffset equ (RT_TagBase+4)
- * topedge offset of requester relative to position specified by RT_ReqPos
- RT_TopOffset equ (RT_TagBase+5)
- * name of public screen to put requester on (use on Kickstart 2.0 only!)
- RT_PubScrName equ (RT_TagBase+6)
- * address of screen to put requester on
- RT_Screen equ (RT_TagBase+7)
- * additional signal mask to wait on
- RT_ReqHandler equ (RT_TagBase+8)
- * font to use when screen font is rejected, _MUST_ be fixed-width font!
- * (struct TextFont *, not struct TextAttr *!)
- * - default GfxBase->DefaultFont
- RT_DefaultFont equ (RT_TagBase+9)
- * boolean to set the standard wait pointer in window - default FALSE
- RT_WaitPointer equ (RT_TagBase+10)
- * (V38) char preceding keyboard shortcut characters (will be underlined)
- RT_Underscore equ (RT_TagBase+11)
- * (V38) share IDCMP port with window - default FALSE
- RT_ShareIDCMP equ (RT_TagBase+12)
- * (V38) lock window and set standard wait pointer - default FALSE
- RT_LockWindow equ (RT_TagBase+13)
- * (V38) boolean to make requester's screen pop to front - default TRUE
- RT_ScreenToFront equ (RT_TagBase+14)
- * (V38) Requester should use this font - default: screen font
- RT_TextAttr equ (RT_TagBase+15)
- * (V38) call this hook for every IDCMP message not for requester
- RT_IntuiMsgFunc equ (RT_TagBase+16)
- * (V38) Locale ReqTools should use for text
- RT_Locale equ (RT_TagBase+17)
-
- *** tags specific to rtEZRequestA ***
- *
- * title of requester window - english default "Request" or "Information"
- RTEZ_ReqTitle equ (RT_TagBase+20)
- * (RT_TagBase+21) reserved
- * various flags (see below)
- RTEZ_Flags equ (RT_TagBase+22)
- * default response (activated by pressing RETURN) - default TRUE
- RTEZ_DefaultResponse equ (RT_TagBase+23)
-
- *** tags specific to rtGetLongA ***
- *
- * minimum allowed value - default MININT
- RTGL_Min equ (RT_TagBase+30)
- * maximum allowed value - default MAXINT
- RTGL_Max equ (RT_TagBase+31)
- * suggested width of requester window (in pixels)
- RTGL_Width equ (RT_TagBase+32)
- * boolean to show the default value - default TRUE
- RTGL_ShowDefault equ (RT_TagBase+33)
- * (V38) string with possible responses - english default " _Ok |_Cancel"
- RTGL_GadFmt equ (RT_TagBase+34)
- * (V38) optional arguments for RTGL_GadFmt
- RTGL_GadFmtArgs equ (RT_TagBase+35)
- * (V38) invisible typing - default FALSE
- RTGL_Invisible equ (RT_TagBase+36)
- * (V38) window backfill - default TRUE
- RTGL_BackFill equ (RT_TagBase+37)
- * (V38) optional text above gadget
- RTGL_TextFmt equ (RT_TagBase+38)
- * (V38) optional arguments for RTGS_TextFmt
- RTGL_TextFmtArgs equ (RT_TagBase+39)
- * (V38) Center text - default FALSE
- RTGL_CenterText equ (RT_TagBase+100)
- * (V38) various flags (see below)
- RTGL_Flags equ RTEZ_Flags
-
- *** tags specific to rtGetStringA ***
- *
- * suggested width of requester window (in pixels)
- RTGS_Width equ RTGL_Width
- * allow empty string to be accepted - default FALSE
- RTGS_AllowEmpty equ (RT_TagBase+80)
- * (V38) string with possible responses - english default " _Ok |_Cancel"
- RTGS_GadFmt equ RTGL_GadFmt
- * (V38) optional arguments for RTGS_GadFmt
- RTGS_GadFmtArgs equ RTGL_GadFmtArgs
- * (V38) invisible typing - default FALSE
- RTGS_Invisible equ RTGL_Invisible
- * (V38) window backfill - default TRUE
- RTGS_BackFill equ RTGL_BackFill
- * (V38) optional text above gadget
- RTGS_TextFmt equ RTGL_TextFmt
- * (V38) optional arguments for RTGS_TextFmt
- RTGS_TextFmtArgs equ RTGL_TextFmtArgs
- * (V38) Center text - default FALSE
- RTGS_CenterText equ RTGL_CenterText
- * (V38) various flags (see below)
- RTGS_Flags equ RTEZ_Flags
-
- *** tags specific to rtFileRequestA ***
- *
- * various flags (see below)
- RTFI_Flags equ (RT_TagBase+40)
- * suggested height of file requester
- RTFI_Height equ (RT_TagBase+41)
- * replacement text for 'Ok' gadget (max 6 chars)
- RTFI_OkText equ (RT_TagBase+42)
- * (V38) bring up volume requester, tag data holds flags (see below)
- RTFI_VolumeRequest equ (RT_TagBase+43)
- * (V38) call this hook for every file in the directory
- RTFI_FilterFunc equ (RT_TagBase+44)
- * (V38) allow empty file to be accepted - default FALSE
- RTFI_AllowEmpty equ (RT_TagBase+45)
-
- *** tags specific to rtFontRequestA ***
- *
- * various flags (see below)
- RTFO_Flags equ RTFI_Flags
- * suggested height of font requester
- RTFO_Height equ RTFI_Height
- * replacement text for 'Ok' gadget (max 6 chars)
- RTFO_OkText equ RTFI_OkText
- * suggested height of font sample display - default 24
- RTFO_SampleHeight equ (RT_TagBase+60)
- * minimum height of font displayed
- RTFO_MinHeight equ (RT_TagBase+61)
- * maximum height of font displayed
- RTFO_MaxHeight equ (RT_TagBase+62)
- * [(RT_TagBase+63) to (RT_TagBase+66) used below]
- * (V38) call this hook for every font
- RTFO_FilterFunc equ RTFI_FilterFunc
-
- *** (V38) tags for rtScreenModeRequestA ***
- * various flags (see below)
- RTSC_Flags equ RTFI_Flags
- * suggested height of screenmode requester
- RTSC_Height equ RTFI_Height
- * replacement text for 'Ok' gadget (max 6 chars)
- RTSC_OkText equ RTFI_OkText
- * property flags (see also RTSC_PropertyMask)
- RTSC_PropertyFlags equ (RT_TagBase+90)
- * property mask - default all bits in RTSC_PropertyFlags considered
- RTSC_PropertyMask equ (RT_TagBase+91)
- * minimum display width allowed
- RTSC_MinWidth equ (RT_TagBase+92)
- * maximum display width allowed
- RTSC_MaxWidth equ (RT_TagBase+93)
- * minimum display height allowed
- RTSC_MinHeight equ (RT_TagBase+94)
- * maximum display height allowed
- RTSC_MaxHeight equ (RT_TagBase+95)
- * minimum display depth allowed
- RTSC_MinDepth equ (RT_TagBase+96)
- * maximum display depth allowed
- RTSC_MaxDepth equ (RT_TagBase+97)
- * call this hook for every display mode id
- RTSC_FilterFunc equ RTFI_FilterFunc
-
- *** tags for rtChangeReqAttrA ***
- *
- * file requester - set directory
- RTFI_Dir equ (RT_TagBase+50)
- * file requester - set wildcard pattern
- RTFI_MatchPat equ (RT_TagBase+51)
- * file requester - add a file or directory to the buffer
- RTFI_AddEntry equ (RT_TagBase+52)
- * file requester - remove a file or directory from the buffer
- RTFI_RemoveEntry equ (RT_TagBase+53)
- * font requester - set font name of selected font
- RTFO_FontName equ (RT_TagBase+63)
- * font requester - set font size
- RTFO_FontHeight equ (RT_TagBase+64)
- * font requester - set font style
- RTFO_FontStyle equ (RT_TagBase+65)
- * font requester - set font flags
- RTFO_FontFlags equ (RT_TagBase+66)
- * (V38) screenmode requester - get display attributes from screen
- RTSC_ModeFromScreen equ (RT_TagBase+80)
- * (V38) screenmode requester - set display mode id (32-bit extended)
- RTSC_DisplayID equ (RT_TagBase+81)
- * (V38) screenmode requester - set display width
- RTSC_DisplayWidth equ (RT_TagBase+82)
- * (V38) screenmode requester - set display height
- RTSC_DisplayHeight equ (RT_TagBase+83)
- * (V38) screenmode requester - set display depth
- RTSC_DisplayDepth equ (RT_TagBase+84)
- * (V38) screenmode requester - set overscan type, 0 for regular size
- RTSC_OverscanType equ (RT_TagBase+85)
- * (V38) screenmode requester - set autoscroll
- RTSC_AutoScroll equ (RT_TagBase+86)
-
- *** tags for rtPaletteRequestA ***
- *
- * initially selected color - default 1
- RTPA_Color equ (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
- RTRH_EndRequest equ (RT_TagBase+60)
-
- *** tags for rtAllocRequestA ***
- * no tags defined yet
-
-
- *************
- * RT_ReqPos *
- *************
- REQPOS_POINTER equ 0
- REQPOS_CENTERWIN equ 1
- REQPOS_CENTERSCR equ 2
- REQPOS_TOPLEFTWIN equ 3
- REQPOS_TOPLEFTSCR equ 4
-
- *******************
- * RTRH_EndRequest *
- *******************
- REQ_CANCEL equ 0
- REQ_OK equ 1
-
- ****************************************
- * flags for RTFI_Flags and RTFO_Flags *
- * or filereq->Flags and fontreq->Flags *
- ****************************************
- BITDEF FREQ,NOBUFFER,2
-
- ******************************************
- * flags for RTFI_Flags or filereq->Flags *
- ******************************************
- BITDEF FREQ,MULTISELECT,0
- BITDEF FREQ,SAVE,1
- BITDEF FREQ,NOFILES,3
- BITDEF FREQ,PATGAD,4
- BITDEF FREQ,SELECTDIRS,12
-
- ******************************************
- * flags for RTFO_Flags or fontreq->Flags *
- ******************************************
- BITDEF FREQ,FIXEDWIDTH,5
- BITDEF FREQ,COLORFONTS,6
- BITDEF FREQ,CHANGEPALETTE,7
- BITDEF FREQ,LEAVEPALETTE,8
- BITDEF FREQ,SCALE,9
- BITDEF FREQ,STYLE,10
-
- ******************************************************
- * (V38) flags for RTSC_Flags or screenmodereq->Flags *
- ******************************************************
- BITDEF SCREQ,SIZEGADS,13
- BITDEF SCREQ,DEPTHGAD,14
- BITDEF SCREQ,NONSTDMODES,15
- BITDEF SCREQ,GUIMODES,16
- BITDEF SCREQ,AUTOSCROLLGAD,18
- BITDEF SCREQ,OVERSCANGAD,19
-
- ******************************************
- * flags for RTEZ_Flags or reqinfo->Flags *
- ******************************************
- BITDEF EZREQ,NORETURNKEY,0
- BITDEF EZREQ,LAMIGAQUAL,1
- BITDEF EZREQ,CENTERTEXT,2
-
- ************************************************
- * (V38) flags for RTGL_Flags or reqinfo->Flags *
- ************************************************
- BITDEF GLREQ,CENTERTEXT,EZREQB_CENTERTEXT
- BITDEF GLREQ,HIGHLIGHTTEXT,3
-
- ************************************************
- * (V38) flags for RTGS_Flags or reqinfo->Flags *
- ************************************************
- BITDEF GSREQ,CENTERTEXT,EZREQB_CENTERTEXT
- BITDEF GSREQ,HIGHLIGHTTEXT,GLREQB_HIGHLIGHTTEXT
-
- ******************************************
- * (V38) flags for RTFI_VolumeRequest tag *
- ******************************************
- BITDEF VREQ,NOASSIGNS,0
- BITDEF VREQ,NODISKS,1
- BITDEF VREQ,ALLDISKS,2
-
- *
- * Following things are obsolete in ReqTools V38.
- * DON'T USE THESE IN NEW CODE!
- *
- IFND NO_REQTOOLS_OBSOLETE
- rtfi_Hook equ rtfi_private1
- rtfo_Hook equ rtfo_private1
- REQHOOK_WILDFILE equ 0
- REQHOOK_WILDFONT equ 1
- BITDEF FREQ,DOWILDFUNC,11
- ENDC
-
- ENDC ; LIBRARIES_REQTOOLS_I
-