intl/gettextP.h

Thu, 02 Nov 2000 22:29:51 +0000

author
Eric Warmenhoven <warmenhoven@yahoo.com>
date
Thu, 02 Nov 2000 22:29:51 +0000
changeset 1051
d65ac9e2224f
parent 347
20fdc56f4da4
permissions
-rw-r--r--

[gaim-migrate @ 1061]
user_info only in aim_user (saves 2k per connection); mem leak fixes in dialogs.c and multi.c; and proto_opt in aim_user (so prpls can have their own saved information per user). no way to draw protocol option selection window thingy yet, so prpls will either have to do that on their own or something. i don't know. we'll figure it out.

347
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
1 /* Header describing internals of gettext library
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
2 Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
3 Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
4
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
5 This program is free software; you can redistribute it and/or modify
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
6 it under the terms of the GNU General Public License as published by
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
7 the Free Software Foundation; either version 2, or (at your option)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
8 any later version.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
9
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
10 This program is distributed in the hope that it will be useful,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
13 GNU General Public License for more details.
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
14
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
15 You should have received a copy of the GNU General Public License
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
16 along with this program; if not, write to the Free Software Foundation,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
17 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
18
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
19 #ifndef _GETTEXTP_H
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
20 #define _GETTEXTP_H
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
21
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
22 #include "loadinfo.h"
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
23
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
24 /* @@ end of prolog @@ */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
25
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
26 #ifndef PARAMS
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
27 # if __STDC__
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
28 # define PARAMS(args) args
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
29 # else
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
30 # define PARAMS(args) ()
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
31 # endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
32 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
33
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
34 #ifndef internal_function
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
35 # define internal_function
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
36 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
37
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
38 #ifndef W
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
39 # define W(flag, data) ((flag) ? SWAP (data) : (data))
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
40 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
41
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
42
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
43 #ifdef _LIBC
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
44 # include <byteswap.h>
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
45 # define SWAP(i) bswap_32 (i)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
46 #else
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
47 static nls_uint32 SWAP PARAMS ((nls_uint32 i));
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
48
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
49 static inline nls_uint32
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
50 SWAP (i)
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
51 nls_uint32 i;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
52 {
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
53 return (i << 24) | ((i & 0xff00) << 8) | ((i >> 8) & 0xff00) | (i >> 24);
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
54 }
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
55 #endif
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
56
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
57
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
58 struct loaded_domain
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
59 {
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
60 const char *data;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
61 int use_mmap;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
62 size_t mmap_size;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
63 int must_swap;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
64 nls_uint32 nstrings;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
65 struct string_desc *orig_tab;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
66 struct string_desc *trans_tab;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
67 nls_uint32 hash_size;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
68 nls_uint32 *hash_tab;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
69 };
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
70
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
71 struct binding
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
72 {
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
73 struct binding *next;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
74 char *domainname;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
75 char *dirname;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
76 };
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
77
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
78 struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
79 char *__locale,
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
80 const char *__domainname))
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
81 internal_function;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
82 void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain))
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
83 internal_function;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
84 void _nl_unload_domain PARAMS ((struct loaded_domain *__domain))
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
85 internal_function;
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
86
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
87 /* @@ begin of epilog @@ */
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
88
20fdc56f4da4 [gaim-migrate @ 357]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
89 #endif /* gettextP.h */

mercurial