1 #ifndef _NLS_H
2 #define _NLS_H
3 /* nls.h */
4 /*****************************************************************************/
5 /* SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only                     */
6 /*                                                                           */
7 /* AS-Portierung                                                             */
8 /*                                                                           */
9 /* Abhandlung landesspezifischer Unterschiede                                */
10 /*                                                                           */
11 /* Historie: 16. 5.1996 Grundsteinlegung                                     */
12 /*                                                                           */
13 /*****************************************************************************/
14 
15 #include <stddef.h>
16 
17 #include "chardefs.h"
18 
19 typedef enum
20 {
21   TimeFormatUSA,
22   TimeFormatEurope,
23   TimeFormatJapan
24 } TimeFormat;
25 
26 typedef enum
27 {
28   DateFormatMTY,
29   DateFormatTMY,
30   DateFormatYMT
31 } DateFormat;
32 
33 typedef enum
34 {
35   CurrFormatPreNoBlank,
36   CurrFormatPostNoBlank,
37   CurrFormatPreBlank,
38   CurrFormatPostBlank
39 } CurrFormat;
40 
41 typedef char CharTable[256];
42 
43 extern CharTable UpCaseTable, LowCaseTable;
44 
45 
46 extern Boolean NLS_Initialize(int *argc, char **argv);
47 
48 extern Word NLS_GetCountryCode(void);
49 
50 extern tCodepage NLS_GetCodepage(void);
51 
52 extern void NLS_DateString(Word Year, Word Month, Word Day, char *Dest, size_t DestSize);
53 
54 extern void NLS_CurrDateString(char *Dest, size_t DestSize);
55 
56 extern void NLS_TimeString(Word Hour, Word Minute, Word Second, Word Sec100, char *Dest, size_t DestSize);
57 
58 extern void NLS_CurrTimeString(Boolean Use100, char *Dest, size_t DestSize);
59 
60 extern void NLS_CurrencyString(double inp, char *erg, size_t DestSize);
61 
62 extern char Upcase(char inp);
63 
64 extern void NLS_UpString(char *s);
65 
66 extern void NLS_LowString(char *s);
67 
68 extern int NLS_StrCmp(const char *s1, const char *s2);
69 
70 
71 extern void nls_init(void);
72 #endif /* _NLS_H */
73