• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Private localization support for CUPS.
3  *
4  * Copyright 2007-2018 by Apple Inc.
5  * Copyright 1997-2006 by Easy Software Products.
6  *
7  * These coded instructions, statements, and computer programs are the
8  * property of Apple Inc. and are protected by Federal copyright
9  * law.  Distribution and use rights are outlined in the file "LICENSE.txt"
10  * which should have been included with this file.  If this file is
11  * missing or damaged, see the license at "http://www.cups.org/".
12  *
13  * This file is subject to the Apple OS-Developed Software exception.
14  */
15 
16 #ifndef _CUPS_LANGUAGE_PRIVATE_H_
17 #  define _CUPS_LANGUAGE_PRIVATE_H_
18 
19 /*
20  * Include necessary headers...
21  */
22 
23 #  include "config.h"
24 #  include <stdio.h>
25 #  include <cups/transcode.h>
26 #  ifdef __APPLE__
27 #    include <CoreFoundation/CoreFoundation.h>
28 #  endif /* __APPLE__ */
29 
30 #  ifdef __cplusplus
31 extern "C" {
32 #  endif /* __cplusplus */
33 
34 
35 /*
36  * Macro for localized text...
37  */
38 
39 #  define _(x) x
40 
41 
42 /*
43  * Types...
44  */
45 
46 typedef struct _cups_message_s		/**** Message catalog entry ****/
47 {
48   char	*id,				/* Original string */
49 	*str;				/* Localized string */
50 } _cups_message_t;
51 
52 
53 /*
54  * Prototypes...
55  */
56 
57 #  ifdef __APPLE__
58 extern const char	*_cupsAppleLanguage(const char *locale, char *language, size_t langsize);
59 extern const char	*_cupsAppleLocale(CFStringRef languageName, char *locale, size_t localesize);
60 #  endif /* __APPLE__ */
61 extern void		_cupsCharmapFlush(void);
62 extern const char	*_cupsEncodingName(cups_encoding_t encoding);
63 extern void		_cupsLangPrintError(const char *prefix, const char *message);
64 extern int		_cupsLangPrintFilter(FILE *fp, const char *prefix, const char *message, ...) _CUPS_FORMAT(3, 4);
65 extern int		_cupsLangPrintf(FILE *fp, const char *message, ...) _CUPS_FORMAT(2, 3);
66 extern int		_cupsLangPuts(FILE *fp, const char *message);
67 extern const char	*_cupsLangString(cups_lang_t *lang, const char *message);
68 extern void		_cupsMessageFree(cups_array_t *a);
69 extern cups_array_t	*_cupsMessageLoad(const char *filename, int unquote);
70 extern const char	*_cupsMessageLookup(cups_array_t *a, const char *m);
71 extern cups_array_t	*_cupsMessageNew(void *context);
72 extern void		_cupsSetLocale(char *argv[]);
73 
74 
75 #  ifdef __cplusplus
76 }
77 #  endif /* __cplusplus */
78 
79 #endif /* !_CUPS_LANGUAGE_PRIVATE_H_ */
80