home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / cbm / nduk-v37.lha / V37 / include / libraries / asl.i < prev    next >
Text File  |  1991-11-27  |  6KB  |  212 lines

  1.     IFND LIBRARIES_ASL_I
  2. LIBRARIES_ASL_I    SET    1
  3. **
  4. **    $Filename: libraries/asl.i $
  5. **    $Release: 2.04 Includes, V37.4 $
  6. **    $Revision: 36.5 $
  7. **    $Date: 91/11/08 $
  8. **
  9. **    ASL library name and useful definitions.
  10. **
  11. **    (C) Copyright 1989,1990 Charlie Heath
  12. **    (C) Copyright 1989-1991 Commodore-Amiga, Inc.
  13. **        All Rights Reserved
  14. **
  15.  
  16.     IFND EXEC_TYPES_I
  17.     INCLUDE "exec/types.i"
  18.     ENDC
  19.  
  20.     IFND EXEC_LIBRARIES_I
  21.     INCLUDE "exec/libraries.i"
  22.     ENDC
  23.  
  24.     IFND EXEC_LISTS_I
  25.     INCLUDE "exec/lists.i"
  26.     ENDC
  27.  
  28.     IFND    UTILITY_TAGITEM_I
  29.     INCLUDE    "utility/tagitem.i"
  30.     ENDC
  31.  
  32. ***********************************************************************
  33.  
  34. AslName    MACRO
  35.     dc.b    'asl.library',0
  36.     ds.w    0
  37.     ENDM
  38.  
  39.  
  40. ************************************************************************
  41. * REQUESTER TYPES, these are passed to AllocAslRequest
  42. ************************************************************************
  43.  
  44. ASL_FileRequest        equ    0
  45. ASL_FontRequest        equ    1
  46.  
  47.  
  48. *************************************************************************
  49. *                                    *
  50. *    The ASL file requester data structure...            *
  51. *                                    *
  52. * The fields described here are for READ ACCESS to the structure    *
  53. * returned by AllocAslRequest( ASL_FileRequest, ... )            *
  54. *                                    *
  55. * Any modifications MUST be done via TAGS either at the time of        *
  56. * creation by AllocAslRequest(), or when used, via AslRequest()        *
  57. *                                    *
  58. *************************************************************************
  59.  
  60.     STRUCTURE FileRequester,0
  61.     STRUCTURE FileRequestr,0        ; obsolete spelling
  62.         CPTR    rf_Reserved1
  63.         CPTR    rf_File        ; *Filename array (FCHARS+1)
  64.         CPTR    rf_Dir            ; *Directory array (DSIZE+1)
  65.         CPTR    rf_Reserved2
  66.         UBYTE    rf_Reserved3
  67.         UBYTE    rf_Reserved4
  68.         APTR    rf_Reserved5
  69.         WORD    rf_LeftEdge
  70.         WORD    rf_TopEdge
  71.         WORD    rf_Width
  72.         WORD    rf_Height
  73.         WORD    rf_Reserved6
  74.         LONG    rf_NumArgs
  75.         APTR    rf_ArgList
  76.         APTR    rf_UserData
  77.         APTR    rf_Reserved7
  78.         APTR    rf_Reserved8
  79.         CPTR    rf_Pat            ; *Pattern array
  80.  
  81. *****************************************************************************
  82. *
  83. * The following defined values are the ASL_FuncFlags tag values which
  84. * are defined for the ASL file request.  These values may be passed
  85. * as a TagItem to modify the way the requester is presented.  Each
  86. * flag value defined has a description of the particular action.
  87. *
  88. * Also related to the ASL_FuncFlags values is the ASL_HookFunc tagitem,
  89. * which provides a callback function to allow the application to
  90. * interact with the requester.    If an ASL_HookFunc TagItem is
  91. * defined, that function will be called as follows:
  92. *
  93. * ULONG rf_Function(ULONG Mask, CPTR Object, CPTR AslRequester)
  94. *
  95. * The Mask value is a copy of the specific ASL_FuncFlags value
  96. * the callback is for; Object is a pointer to a data object.
  97. * AslRequester is a pointer to the requester structure.
  98. *
  99. * For the ASL file and font requesters, two ASL_FuncFlags values
  100. * are currently defined; FILF_DOWILDFUNC and FILF_DOMSGFUNC.
  101. *
  102. *****************************************************************************
  103.  
  104. * Pass these flags with the tag ASL_FuncFlags
  105.     BITDEF    FIL,PATGAD,0        ; Request a pattern gadget
  106.     BITDEF    FIL,MULTISELECT,3    ; Request multiple selection returns -
  107.                     ; MUTUAL EXCLUSIVE WITH SAVE
  108.     BITDEF    FIL,NEWIDCMP,4    ; Force a new IDCMP (only if rf_Window != NULL)
  109.     BITDEF    FIL,SAVE,5    ; Use this bit for SAVE requesters
  110.     BITDEF    FIL,DOMSGFUNC,6    ; Called with Object=IDCMP messages
  111.                 ;  for other windows of shered port.
  112.                 ;  You must return pointer to Object,
  113.                 ;  asl will reply the Object for you.
  114.     BITDEF    FIL,DOWILDFUNC,7 ; Called with an AnchorPath,
  115.                  ;    ZERO return accepts.
  116.  
  117.  
  118. * Pass these flags with the tag ASL_ExtFlags
  119.     BITDEF    FIL1,NOFILES,0      ; Do not want a file gadget, no files shown
  120.     BITDEF    FIL1,MATCHDIRS,1  ; Patgad/rf_Pat should screen files AND DIRS
  121.  
  122. *****************************************************************************
  123. * Obsolete - Use FIL flag names instead
  124.     BITDEF    RF,DOWILDFUNC,7 ; Called me with an AnchorPath,
  125.                 ;    ZERO return accepts.
  126.     BITDEF    RF,DOMSGFUNC,6    ; You get all IDCMP message not for FileRequest()
  127.     BITDEF    RF,DOCOLOR,5    ; This bit is used for FILE SAVE operations.
  128.     BITDEF    RF,NEWIDCMP,4    ; Force a new IDCMP (only if rf_Window != NULL)
  129.     BITDEF    RF,MULTISELECT,3 ; Request multiple selection returns -
  130.                 ;    MUTUAL EXCLUSIVE WITH DOCOLOR
  131.     BITDEF    RF,PATGAD,0    ; Request a pattern gadget
  132. *********************************************************************************
  133.  
  134.     STRUCTURE FontRequester,0
  135.         CPTR    fo_Reserved1
  136.         CPTR    fo_Reserved2
  137.         APTR    fo_Name        ; Returned name
  138.         USHORT    fo_YSize
  139.         UBYTE    fo_Style
  140.         UBYTE    fo_Flags
  141.         UBYTE    fo_FrontPen
  142.         UBYTE    fo_BackPen
  143.         UBYTE    fo_DrawMode
  144.         UBYTE    fo_Reserved3
  145.  
  146.         APTR    fo_UserData
  147.  
  148.         SHORT    fo_LeftEdge
  149.         SHORT    fo_TopEdge
  150.  
  151.         SHORT    fo_Width
  152.         SHORT    fo_Height
  153.  
  154.  
  155. ******* BITDEFS for ASL_FuncFlags - FONT requester
  156.  
  157.     BITDEF    FON,FRONTCOLOR,0    ; Display Front Color palette selector?
  158.     BITDEF    FON,BACKCOLOR,1        ; Display Back Color palette selector?
  159.     BITDEF    FON,STYLES,2        ; Display Styles checkboxes?
  160.     BITDEF    FON,DRAWMODE,3        ; Display DrawMode NWAY selector?
  161.     BITDEF    FON,FIXEDWIDTH,4    ; Only allow fixed-width (SYS) fonts?
  162.     BITDEF    FON,NEWIDCMP,5        ; Request a NEW IDCMP port,
  163.                     ;    rather than shared.
  164.     BITDEF    FON,DOMSGFUNC,6        ; Called with Object=IDCMP message
  165.                     ;  for other windows sharing port.
  166.                     ; You must return pointer to Object.
  167.                     ; asl will reply the object for you.
  168.     BITDEF    FON,DOWILDFUNC,7    ; Called with Object=TextAttr
  169.                     ;    NON-Zero return accepts
  170.  
  171. ****    Tag values for AslRequest()    *************************************
  172.  
  173. ASL_Dummy    equ    TAG_USER+$80000
  174.  
  175. ASL_Hail    equ    ASL_Dummy+1
  176. ASL_Window    equ    ASL_Dummy+2
  177.  
  178. ASL_LeftEdge    equ    ASL_Dummy+3
  179. ASL_TopEdge    equ    ASL_Dummy+4
  180. ASL_Width    equ    ASL_Dummy+5
  181. ASL_Height    equ    ASL_Dummy+6
  182.  
  183. ASL_HookFunc    equ    ASL_Dummy+7
  184.  
  185. ASL_File    equ    ASL_Dummy+8
  186. ASL_Dir        equ    ASL_Dummy+9
  187.  
  188. * OVERLAP HERE file and font stuffskies!!!
  189. ASL_Pattern    equ    ASL_Dummy+10
  190.  
  191. * Font specific, some overlap!!!
  192. ASL_FontName    equ    ASL_Dummy+10
  193. ASL_FontHeight    equ    ASL_Dummy+11
  194. ASL_FontStyles    equ    ASL_Dummy+12
  195. ASL_FontFlags    equ    ASL_Dummy+13
  196. ASL_FrontPen    equ    ASL_Dummy+14
  197. ASL_BackPen    equ    ASL_Dummy+15
  198. ASL_MinHeight    equ    ASL_Dummy+16
  199. ASL_MaxHeight    equ    ASL_Dummy+17
  200.  
  201. ASL_OKText    equ    ASL_Dummy+18
  202. ASL_CancelText    equ    ASL_Dummy+19
  203.  
  204. ASL_FuncFlags    equ    ASL_Dummy+20
  205.  
  206. ASL_ModeList    equ    ASL_Dummy+21
  207.  
  208. *** Pass the FIL1 extended flag bits using this tag
  209. ASL_ExtFlags1    equ    ASL_Dummy+22
  210.  
  211.     ENDC    !LIBRARIES_ASL_I
  212.