home *** CD-ROM | disk | FTP | other *** search
/ Amiga Developer CD v1.2 / amidev_cd_12.iso / devcon / milan_1991 / devcon91.2 / locale / development / include / libraries / locale.i < prev   
Text File  |  1992-09-01  |  8KB  |  213 lines

  1.         IFND    LIBRARIES_LOCALE_I
  2. LIBRARIES_LOCALE_I      SET     1
  3. **
  4. **      $Id: locale.i,v 38.5 91/10/02 13:11:07 vertex Exp $
  5. **
  6. **      locale.library interface structures and definitions
  7. **
  8. **      (C) Copyright 1991 Commodore-Amiga, Inc.
  9. **      All Rights Reserved
  10. **
  11.  
  12. ;---------------------------------------------------------------------------
  13.  
  14.     IFND EXEC_TYPES_I
  15.     INCLUDE "exec/types.i"
  16.     ENDC
  17.  
  18.     IFND EXEC_NODES_I
  19.     INCLUDE "exec/nodes.i"
  20.     ENDC
  21.  
  22.     IFND EXEC_LISTS_I
  23.     INCLUDE "exec/lists.i"
  24.     ENDC
  25.  
  26.     IFND UTILITY_TAGITEM_I
  27.     INCLUDE "utility/tagitem.i"
  28.     ENDC
  29.  
  30. ;---------------------------------------------------------------------------
  31.  
  32. ; constants for GetLocaleStr()
  33. DAY_1      equ 1        ; Sunday
  34. DAY_2      equ 2        ; Monday
  35. DAY_3      equ 3        ; Tuesday
  36. DAY_4      equ 4        ; Wednesday
  37. DAY_5      equ 5        ; Thursday
  38. DAY_6      equ 6        ; Friday
  39. DAY_7      equ 7        ; Saturday
  40.  
  41. ABDAY_1    equ 8        ; Sun
  42. ABDAY_2    equ 9        ; Mon
  43. ABDAY_3    equ 10       ; Tue
  44. ABDAY_4    equ 11       ; Wed
  45. ABDAY_5    equ 12       ; Thu
  46. ABDAY_6    equ 13       ; Fri
  47. ABDAY_7    equ 14       ; Sat
  48.  
  49. MON_1      equ 15       ; January
  50. MON_2      equ 16       ; February
  51. MON_3      equ 17       ; March
  52. MON_4      equ 18       ; April
  53. MON_5      equ 19       ; May
  54. MON_6      equ 20       ; June
  55. MON_7      equ 21       ; July
  56. MON_8      equ 22       ; August
  57. MON_9      equ 23       ; September
  58. MON_10     equ 24       ; October
  59. MON_11     equ 25       ; November
  60. MON_12     equ 26       ; December
  61.  
  62. ABMON_1    equ 27       ; Jan
  63. ABMON_2    equ 28       ; Feb
  64. ABMON_3    equ 29       ; Mar
  65. ABMON_4    equ 30       ; Apr
  66. ABMON_5    equ 31       ; May
  67. ABMON_6    equ 32       ; Jun
  68. ABMON_7    equ 33       ; Jul
  69. ABMON_8    equ 34       ; Aug
  70. ABMON_9    equ 35       ; Sep
  71. ABMON_10   equ 36       ; Oct
  72. ABMON_11   equ 37       ; Nov
  73. ABMON_12   equ 38       ; Dec
  74.  
  75. YESSTR     equ 39       ; affirmative response for yes/no queries
  76. NOSTR      equ 40       ; negative response for yes/no queries
  77.  
  78. AM_STR     equ 41       ; AM
  79. PM_STR     equ 42       ; PM
  80.  
  81. SOFTHYPHEN equ 43       ; soft hyphenation
  82. HARDHYPHEN equ 44       ; hard hyphenation
  83.  
  84. OPENQUOTE  equ 45       ; start of quoted block
  85. CLOSEQUOTE equ 46       ; end of quoted block
  86.  
  87. MAXSTRMSG  equ 47       ; current number of defined strings
  88.  
  89. ;---------------------------------------------------------------------------
  90.  
  91. ; This structure must only be allocated by locale.library and is READ-ONLY!
  92.    STRUCTURE Locale,0
  93.         APTR   loc_LocaleName                  ; locale's name
  94.         APTR   loc_LanguageName                ; language of this locale
  95.         STRUCT loc_PrefLanguages,4*10          ; preferred languages
  96.         ULONG  loc_Flags                       ; always 0 for now
  97.  
  98.         ULONG  loc_CodeSet                     ; for now, always 0
  99.         ULONG  loc_CountryCode                 ; user's country code
  100.         ULONG  loc_TelephoneCode               ; country's telephone code
  101.         LONG   loc_GMTOffset                   ; minutes from GMT
  102.         UBYTE  loc_MeasuringSystem             ; what measuring system?
  103.         STRUCT loc_Reserved0,3
  104.  
  105.         APTR   loc_DateTimeFormat              ; date & time format
  106.         APTR   loc_DateFormat                  ; date format by itself
  107.         APTR   loc_TimeFormat                  ; time format by itself
  108.  
  109.         APTR   loc_ShortDateTimeFormat         ; short date & time format
  110.         APTR   loc_ShortDateFormat             ; short date format by itself
  111.         APTR   loc_ShortTimeFormat             ; short time format by itself
  112.  
  113.         ; for numeric values
  114.         APTR   loc_DecimalPoint                ; character before the decimals
  115.         APTR   loc_GroupSeparator              ; separates groups of digits
  116.         APTR   loc_FracGroupSeparator          ; separates groups of digits
  117.         APTR   loc_Grouping                    ; size of each group
  118.         APTR   loc_FracGrouping                ; size of each group
  119.  
  120.         ; for monetary values
  121.         APTR   loc_MonDecimalPoint
  122.         APTR   loc_MonGroupSeparator
  123.         APTR   loc_MonFracGroupSeparator
  124.         APTR   loc_MonGrouping
  125.         APTR   loc_MonFracGrouping
  126.         UBYTE  loc_MonFracDigits            ; digits after the decimal point
  127.         UBYTE  loc_MonIntFracDigits         ; for international representation
  128.         STRUCT loc_Reserved1,2
  129.  
  130.         ; for currency symbols
  131.         APTR   loc_MonCS                       ; currency symbol
  132.         APTR   loc_MonSmallCS                  ; symbol for small amounts
  133.         APTR   loc_MonIntCS                    ; internationl (ISO 4217) code
  134.  
  135.         ; for positive monetary values
  136.         APTR   loc_MonPositiveSign           ; indicate positive money value
  137.         UBYTE  loc_MonPositiveSpaceSep       ; determine if separated by space
  138.         UBYTE  loc_MonPositiveSignPos        ; position of positive sign
  139.         UBYTE  loc_MonPositiveCSPos          ; position of currency symbol
  140.         UBYTE  loc_Reserved2
  141.  
  142.         ; for negative monetary values
  143.         APTR   loc_MonNegativeSign           ; indicate negative money value
  144.         UBYTE  loc_MonNegativeSpaceSep       ; determine if separated by space
  145.         UBYTE  loc_MonNegativeSignPos        ; position of negative sign
  146.         UBYTE  loc_MonNegativeCSPos          ; position of currency symbol
  147.         UBYTE  loc_Reserved3
  148.    LABEL Locale_SIZEOF
  149.  
  150. ; constants for Locale.loc_MeasuringSystem
  151. MS_ISO      equ 0           ; international metric system
  152. MS_AMERICAN equ 1           ; american system
  153. MS_IMPERIAL equ 2           ; imperial system
  154. MS_BRITISH  equ 3           ; british SYSTEM
  155.  
  156. ; constants for Locale.loc_MonPositiveSpaceSep and Locale.loc_MonNegativeSpaceSep
  157. SS_NOSPACE equ 0  ; cur. symbol is NOT separated from value with a space
  158. SS_SPACE   equ 1  ; cur. symbol IS separated from value with a space
  159.  
  160. ; constants for Locale.loc_MonPositiveSignPos and Locale.loc_MonNegativeSignPos
  161. SP_PARENS    equ 0  ; () surround the quantity and currency_symbol
  162. SP_PREC_ALL  equ 1  ; sign string comes before amount and symbol
  163. SP_SUCC_ALL  equ 2  ; sign string comes after amount and symbol
  164. SP_PREC_CURR equ 3  ; sign string comes right before currency symbol
  165. SP_SUCC_CURR equ 4  ; sign string comes right after currency symbol
  166.  
  167. ; constants for Locale.loc_MonPositiveCSPos and Locale.loc_MonNegativeCSPos */
  168. CSP_PRECEDES equ 0  ; currency symbol comes before value
  169. CSP_SUCCEEDS equ 1  ; currency symbol comes after value
  170.  
  171. ;* elements of the byte arrays pointed to by:
  172. ;*   Locale.loc_Grouping
  173. ;*   Locale.loc_FracGrouping
  174. ;*   Locale.loc_MonGrouping
  175. ;*   Locale.loc_MonFracGrouping
  176. ;* are interpreted as follows:
  177. ;*
  178. ;*    255     indicates that no further grouping is to be performed
  179. ;*    0       indicates that the previous element is to be repeatedly used
  180. ;*            for the remainder of the digits
  181. ;*    <other> the number of digits that comprises the current group
  182.  
  183. ;---------------------------------------------------------------------------
  184.  
  185. ; Tags for OpenCatalog()
  186. OC_TagBase         EQU TAG_USER+$90000
  187. OC_BuiltInLanguage EQU OC_TagBase+1     ; language of built-in strings
  188. OC_BuiltInCodeSet  EQU OC_TagBase+2     ; code set of built-in strings
  189. OC_Version         EQU OC_TagBase+3     ; catalog version number required
  190. OC_Language        EQU OC_TagBase+4     ; preferred language of catalog
  191.  
  192. ;---------------------------------------------------------------------------
  193.  
  194. ; Comparison types for StrnCmp()
  195. SC_ASCII    EQU 0
  196. SC_COLLATE1 EQU 1
  197. SC_COLLATE2 EQU 2
  198.  
  199. ;---------------------------------------------------------------------------
  200.  
  201. ; This structure must only be allocated by locale.library and is READ-ONLY!
  202.    STRUCTURE Catalog,LN_SIZE            ; for internal linkage
  203.         UWORD   cat_Pad                 ; to longword align
  204.         APTR    cat_Language            ; language of the catalog, may be NULL
  205.         ULONG   cat_CodeSet             ; currently always 0
  206.         UWORD   cat_Version             ; version of the catalog
  207.         UWORD   cat_Revision            ; revision of the catalog
  208.    LABEL Catalog_SIZEOF
  209.  
  210. ;---------------------------------------------------------------------------
  211.  
  212.         ENDC    ; LIBRARIES_LOCALE_I
  213.