@DATABASE ASL V1.30
$VER: ASL V1.30 (26.07.1998) by Laboureur -> AlphaSOUND <- Frédéric
@NODE MAIN "ASL V1.30"

    @{b}ASL V1.30 General Information:@{ub}

  * Blitz Basic II library number         : #177
  * Library size when linked to executable: 700 bytes
  * Number of commands                    : 8
  * Ressources automatically freed at end : Yes

  NInitASL must be put before any other ASL functions
  or you will enjoy BIG crashs.

    @{b}Commands summary:@{ub}

  @{" NASLFileRequest   " LINK NASLFileRequest} Function (String)
  @{" NASLFontRequest   " LINK NASLFontRequest} Function (Long)
  @{" NASLHeight        " LINK NASLHeight} Function (Word)
  @{" NASLPosX          " LINK NASLPosX} Function (Word)
  @{" NASLPosY          " LINK NASLPosX} Function (Word)
  @{" NASLScreenRequest " LINK NASLScreenRequest} Function (Long)
  @{" NASLWidth         " LINK NASLWidth} Function (Word)
  @{" NInitASL          " LINK NInitASL} Function (Boolean)

@ENDNODE


@NODE NASLPosX

    @{b}SYNTAX@{ub}
  posx.w = NASLPosX

    @{b}FUNCTION@{ub}
  This will return the X position  of  the  last  closed  ASL  requester
  (File, Screen or Font).

@ENDNODE


@NODE NASLPosY

    @{b}SYNTAX@{ub}
  posy.w = NASLPosY

    @{b}FUNCTION@{ub}
  This will return the Y position  of  the  last  closed  ASL  requester
  (File, Screen or Font).

@ENDNODE


@NODE NASLWidth

    @{b}SYNTAX@{ub}
  width.w = NASLWidth

    @{b}FUNCTION@{ub}
  This will return the width of the last  closed  ASL  requester  (File,
  Screen or Font).

@ENDNODE


@NODE NASLHeight

    @{b}SYNTAX@{ub}
  height.w = NASLHeight

    @{b}FUNCTION@{ub}
  This will return the height of the last closed  ASL  requester  (File,
  Screen or Font).

@ENDNODE


@NODE NInitASL

    @{b}SYNTAX@{ub}
  result.l = NInitASL

    @{b}FUNCTION@{ub}
  It will try to open the ASL library V36+. If result is NULL, the ASL.library
  can't be opened so test it carefully at top of your program to prevent futur
  crash. You need to use this function if you want to use the NASL commands.

  Example:

  If NInitASL = 0
    NPrint "Can't open the ASL.library V36+"
    End                                      ; Quit the program or disable your ASL calls.
  Endif

@ENDNODE


@NODE NASLFileRequest

    @{b}SYNTAX@{ub}
  selectedfile.s = NASLFileRequest(Tag)

    @{b}FUNCTION@{ub}
  A standard ASL Filerequester will be opened according to the specified
  Tag  list.  This  function  return  the  full  filepath  and  filename
  correctly concatenate. If you've used a bit the ASL library, you  will
  see that it's not very easy to combine the both. This function does it
  for you. Enjoy. If the selectedfile$ is NULL, the user  has  cancelled
  the filerequester.

@ENDNODE


@NODE NASLFontRequest

    @{b}SYNTAX@{ub}
  *ptr.NFontInfo = NASLFontRequest(Tag)

    @{b}FUNCTION@{ub}
  A standard ASL Fontrequester will be opened according to the specified
  Tag  list.  This  function  return  a  pointer  to a memory area which
  contain all the needed information about the selected  font.  You  can
  easely access the data with the NFontInfo structure, which is declared
  in the 'NLibs.res' (resident) file.

  NFontInfo structure:

  NEWTYPE .NFontInfo
    *Name.b
    YSize.w
    Style.b
    Flags.b
    FrontPen.b
    BackPen.b
    DrawMode.b
  End NEWTYPE


  Example:

  *ptr.NFontInfo = NASLFontRequester(0)

  If *ptr
    NPrint "Font Name :", Peek.s(*ptr\Name)
    YSize.w = *ptr\YSize
    Style.b = *ptr\Style
  Else
    NPrint "Cancelled"
  Endif

@ENDNODE


@NODE NASLScreenRequest

    @{b}SYNTAX@{ub}
  *ptr.NScreenInfo = NASLScreenRequest(Tag)

    @{b}FUNCTION@{ub}
  A standard  ASL  Screenrequester  will  be  opened  according  to  the
  specified  Tag  list.  This function return a pointer to a memory area
  which contain all the needed information about  the  selected  screen.
  You  can  easely access the data with the NScreenInfo structure, which
  is declared in the 'NLibs.res' (resident) file.

  NScreenInfo structure:

  NEWTYPE .NScreenInfo
    DisplayID.l     ; Display mode ID
    Width.l         ; Width of display in pixels
    Height.l        ; Height of display in pixels
    Depth.w         ; Number of bit-planes of display
    OverscanType.w  ; Type of overscan of display
    AutoScroll.b    ; Display should auto-scroll?
  End NEWTYPE

@ENDNODE

