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