]> git.lyx.org Git - lyx.git/blob - src/language.h
encoding patch and mousewheelpatch
[lyx.git] / src / language.h
1 // -*- C++ -*-
2 #ifndef LANGUAGE_H
3 #define LANGUAGE_H
4
5 #include <map>
6 #include "LString.h"
7
8 class Encoding;
9
10 ///
11 class Language {
12 public:
13         ///
14         Language() : RightToLeft_(false) {}
15         ///
16         Language(string const & l, string const & d, bool rtl, Encoding const * e)
17                 : lang_(l), display_(d), RightToLeft_(rtl) , encoding_(e) {}
18         ///
19         string const & lang() const {
20                 return lang_;
21         }
22         ///
23         string const & display() const {
24                 return display_;
25         }
26         ///
27         bool RightToLeft() const {
28                 return RightToLeft_;
29         }
30         ///
31         Encoding const * encoding() const {
32                 return encoding_;
33         }
34 private:
35         ///
36         string lang_;
37         ///
38         string display_;
39         ///
40         bool RightToLeft_;
41         ///
42         Encoding const * encoding_;
43 };
44
45 #if 0
46 bool operator==(Language const & l1, Language const & l2) 
47 {
48         return l1.lang == l2.lang
49                 && l1.display_ == l2.display_
50                 && l1.RightToLeft_ == l2.RightToLeft_
51                 && l1.encoding_ == l2.encoding_;
52 }
53
54
55 bool operator!=(Language const l1, Language const & l2)
56 {
57         return !(l1 == l2);
58
59 }
60 #endif
61
62 typedef std::map<string, Language> Languages;
63 extern Languages languages;
64 extern Language const * default_language;
65 extern Language const *ignore_language;
66
67 #endif