tried to reorder the program structure and build process
[NeonServV5.git] / src / lang.h
1 #ifndef _lang_h
2 #define _lang_h
3
4 #include "main.h"
5
6 struct UserNode;
7
8 struct default_language_entry {
9     char *ident;
10     char *text;
11 };
12
13 struct language_table {
14     char *ident;
15     char *text;
16     
17     struct language_table *next;
18 };
19
20 struct language {
21     char *langtag;
22     char *langname;
23     struct language_table **entrys;
24 };
25
26 void init_lang();
27 void free_lang();
28 struct language* get_language_by_tag(char *tag);
29 struct language* get_language_by_name(char *name);
30 struct language* get_default_language();
31 void load_languages();
32 void load_language(char *tag, char *name);
33 void register_language_string(struct language *lang, char *ident, char *text);
34 void register_default_language_table(const struct default_language_entry *msgtab);
35 char *get_language_string(struct UserNode *user, const char* msg_ident);
36 char *build_language_string(struct UserNode *user, char *buffer, const char *msg_ident, ...);
37
38 #endif