Consider the case where there is not any layout name.
[lyx.git] / src / intl.h
blobfe7ae6a89dd1ec13a02f7f027783861bfa80dc68
1 // -*- C++ -*-
2 /**
3 * \file intl.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author unknown
8 * \author Lars Gullik Bjønnes
9 * \author Angus Leeming
10 * \author John Levon
12 * Full author contact details are available in file CREDITS.
15 #ifndef INTL_H
16 #define INTL_H
18 #include "trans_mgr.h"
21 /**
22 * This class is used for managing keymaps
23 * for composing characters in LyX.
25 class Intl {
26 public:
27 /// which keymap is currently used ?
28 enum Keymap {
29 PRIMARY,
30 SECONDARY
33 Intl();
35 /// {en/dis}able the keymap
36 void KeyMapOn(bool on);
38 /// set the primary language keymap
39 void KeyMapPrim();
41 /// set the secondary language keymap
42 void KeyMapSec();
44 /// turn on/off key mappings, status in keymapon
45 void ToggleKeyMap();
47 /// initialize key mapper
48 void InitKeyMapper(bool on);
50 // Get the Translation Manager
51 TransManager & getTransManager();
53 /// using primary or secondary keymap ?
54 Keymap keymap;
56 private:
57 /// is key mapping enabled ?
58 bool keymapon;
59 /// the primary language keymap
60 std::string & prim_lang;
61 /// the secondary language keymap
62 std::string & sec_lang;
63 /// the translation manager
64 TransManager trans;
68 inline
69 TransManager & Intl::getTransManager()
71 return trans;
74 #endif /* INTL_H */