•  Back 
  •  About the xFSL interface 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help page 
  •  Show info about hypertext 
  •  View a new file 
Topic       : TOS - The Operating System
Author      : 
Version     : tos.hyp (December 19, 2008)
Subject     : Programmieren/Atari
Nodes       : 3010
Index Size  : 93790
HCP-Version : 5
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Title
@help       : 
@options    : +g -i -s +x +zz -t4
@width      : 70
View Ref-File13.14.1.1  The xFSL cookie                                         TOS

If a font-selector is installed that supports the xFSL interface, then 
a cookie 'xFSL' exists whose value is a pointer to the following 
structure:

     typedef struct
     {
       unsigned long xfsl;       /* Magic 'xFSL'              */
       unsigned int  revision;   /* Interface revision        */
       unsigned long product;    /* Font-selector identifier  */
       unsigned int  version;    /* Font-selector version     */
       xFSL_INPUT    xfsl_input; /* Simplified call           */
       xFSL_INIT     xfsl_init;  /* Init call                 */
       xFSL_EVENT    xfsl_event; /* Event call                */
       xFSL_EXIT     xfsl_exit;  /* Exit call                 */
       xFSL_INFO     xfsl_info;  /* Info call                 */
     } xFSL;

Die Komponenten der Struktur im einzelnen:

 xfsl Here we have for safety's sake once more the ASCII character 
   string 'xFSL' (= 0x7846534C in hexadecimal).

 revision This is the revision number of the xFSL interface; at 
   present it contains the value 4. If the interface should be 
   extended in the future, one will find correspondingly higher values 
   there.

 product Here one finds the identifier for the actually installed 
   font-selector. This entry is intended, however, only as additional 
   information, and should not be evaluated by application programs 
   that want to call the font-selector!

   Identifiers used to date:

    Identifier  Font-selector 
    CLVN        Calvino 
    FSEL        FontSel 
    HUGO        HuGo! 

   The identifier (like the following version number too) was only 
   introduced for programs that want to output information about the 
   installed font-selector (e.g. the program 'SysInfo').

 version The version number of the installed font-selector as BCD 
   number (e.g. hexadecimal 0x100 for Version 1.00). The same notes 
   apply here as for the product field above.

 xfsl_input This is the entry point for a simplified call of the 
   font-selector. The font-selector then appears always as a modal 
   dialog and most of the additional features of the xFSL interface 
   can not be accessed.

 xfsl_init, xfsl_event, xfsl_exit  These three functions together form 
   the extended font-selector call. All of the new features can be 
   accessed via them. The procedure corresponds to the display of a 
   GEM dialog:

     1. Display font-selector (xfsl_init)

     2. Event handling in a loop until 'OK' or 'Cancel' has been 
        selected (xfsl_event)

     3. Remove font-selector from the screen (xfsl_exit)

 xfsl_info With this call one can inquire about some of the features 
   of the installed font-selector, e.g. Drag&Drop support.