AcornSearch - Acorn and RISC OS information searching
RISC OS Search
containing
"Nutty quip goes here!"
Home  |  About  |  Filebase Archive  |  StrongHelp Manuals  |  Newsgroups  |  Module Database
=>     R0     =     flags
     R1     =     pointer to menu definition, as per Font_ListFonts
     R2     =     pointer to menu selections, as per Wimp_Poll
     R3     =     pointer buffer to contain result
                 or 0 to return size
     R4     =     size of buffer (if R3 <> 0)

<=     R0, R1, R3 preserved.
     R2     =     pointer to rest of menu selections
     R4     =     size of buffer required.
                 or 0 for no font selection.

This SWI decodes the font or encoding menu, returning a string with a format dependent on whether the font/encoding names were specifed in a Messagesn file in the font directory. If no Messagesn file was found (and hence the font manager has found the font names by scanning the directory tree) the name field is absent.

Experimentation suggests that passing in a selection block pointing at System Font will generate an error, rather than set R4 = 0

See PRM 3-481.
Font_DecodeMenu R0 Flags
bit     /meaning/
0     one is decoding an encoding menu, else a font menu.

all other bits reserved (ie. zero)
Font_DecodeMenu result form
Results from the call are of the form:

     \Ffont_id[\fterritory font_name][\Eencoding_id[\eterritory encoding_name]]

where [ ] indicate optional sections. The string shall be terminated by a Ctrl-character.

Examples
     \FEquasor\f1 Bob
     \FPembroke.Bold
     \FTrinity.Medium\ELatin1
     \ELatin5\e1 Gleep
     \EWelsh
     \FCorpus.Medium\ELatin1\e1 Gleep

Note the above examples have actually been obtained, they weren't just made up.

[sh-index] Back to list of manuals