]> git.ipfire.org Git - thirdparty/cups.git/blobdiff - cups/i18n.h
Load cups into easysw/current.
[thirdparty/cups.git] / cups / i18n.h
index 00a597f95017f3ffd5563ea56f43241f6b30026d..ea7c0e2312a07ee85b41908ecf6b5a51df99370a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: i18n.h 4903 2006-01-10 20:02:46Z mike $"
+ * "$Id: i18n.h 5925 2006-09-05 19:43:11Z mike $"
  *
  *   (Private) localization support for the Common UNIX Printing System (CUPS).
  *
@@ -31,7 +31,8 @@
  * Include necessary headers...
  */
 
-#  include "language.h"
+#  include <stdio.h>
+#  include "transcode.h"
 
 #  ifdef __cplusplus
 extern "C" {
@@ -55,29 +56,56 @@ typedef struct _cups_message_s              /**** Message catalog entry ****/
        *str;                           /* Localized string */
 } _cups_message_t;
 
+typedef struct _cups_cmap_s            /**** SBCS Charmap Struct ****/
+{
+  struct _cups_cmap_s  *next;          /* Next charmap in cache */
+  int                  used;           /* Number of times entry used */
+  cups_encoding_t      encoding;       /* Legacy charset encoding */
+  cups_ucs2_t          char2uni[256];  /* Map Legacy SBCS -> UCS-2 */
+  cups_sbcs_t          *uni2char[256]; /* Map UCS-2 -> Legacy SBCS */
+} _cups_cmap_t;
+
+typedef struct _cups_wide2uni_s                /**** Wide to Unicode ****/
+{
+  cups_vbcs_t          widechar;       /* VBCS 32-bit Char (EUC) */
+  cups_ucs2_t          unichar;        /* UCS-2 Char */
+} _cups_wide2uni_t;
+
+typedef struct _cups_vmap_s            /**** VBCS Charmap Struct ****/
+{
+  struct _cups_vmap_s  *next;          /* Next charmap in cache */
+  int                  used;           /* Number of times entry used */
+  cups_encoding_t      encoding;       /* Legacy charset encoding */
+  cups_ucs2_t          *char2uni[256]; /* Map 16-bit Char -> UCS-2 */
+  int                  charcount;      /* Count of 16-bit VBCS Chars */
+  _cups_wide2uni_t     *wide2uni;      /* Map 32-bit Char -> UCS-2 */
+  int                  widecount;      /* Count of 32-bit VBCS Chars */
+  cups_vbcs_t          *uni2char[256]; /* Map UCS-2 -> 32-bit VBCS */
+  cups_sbcs_t          lead2char[256]; /* Legacy Lead Char - 2-byte */
+  cups_sbcs_t          lead3char[256]; /* Legacy Lead Char - 3-byte */
+  cups_sbcs_t          lead4char[256]; /* Legacy Lead Char - 4-byte */
+} _cups_vmap_t;
+
 
 /*
  * Prototypes...
  */
 
-/**** New in CUPS 1.1.20 ****/
-extern void            _cupsRestoreLocale(int category, char *oldlocale);
-extern char            *_cupsSaveLocale(int category, const char *locale);
-
-/**** New in CUPS 1.2 ****/
+extern void            _cupsCharmapFlush(void);
+extern void            _cupsCharmapFree(const cups_encoding_t encoding);
+extern void            *_cupsCharmapGet(const cups_encoding_t encoding);
 extern const char      *_cupsEncodingName(cups_encoding_t encoding);
-extern int             _cupsLangPrintf(FILE *fp, cups_lang_t *lang,
-                                       const char *message, ...)
+extern int             _cupsLangPrintf(FILE *fp, const char *message, ...)
 #    ifdef __GNUC__
-__attribute__ ((__format__ (__printf__, 3, 4)))
+__attribute__ ((__format__ (__printf__, 2, 3)))
 #    endif /* __GNUC__ */
 ;
-extern int             _cupsLangPuts(FILE *fp, cups_lang_t *lang,
-                                     const char *message);
+extern int             _cupsLangPuts(FILE *fp, const char *message);
 extern const char      *_cupsLangString(cups_lang_t *lang, const char *message);
 extern void            _cupsMessageFree(cups_array_t *a);
 extern cups_array_t    *_cupsMessageLoad(const char *filename);
 extern const char      *_cupsMessageLookup(cups_array_t *a, const char *m);
+extern void            _cupsSetLocale(char *argv[]);
 
 #  ifdef __cplusplus
 }
@@ -86,5 +114,5 @@ extern const char    *_cupsMessageLookup(cups_array_t *a, const char *m);
 #endif /* !_CUPS_I18N_H_ */
 
 /*
- * End of "$Id: i18n.h 4903 2006-01-10 20:02:46Z mike $".
+ * End of "$Id: i18n.h 5925 2006-09-05 19:43:11Z mike $".
  */