X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fintl.h;h=07de268332e114544d1e580e919e05e6202a2feb;hb=35204f8f33d7400a5fefeffea533fb4cb4097211;hp=e85036ceaba903745c6f95838c81fe06fd185008;hpb=8ed9dbabde30b31a6a14e032fa42f682a196ef7a;p=lyx.git diff --git a/src/intl.h b/src/intl.h index e85036ceab..07de268332 100644 --- a/src/intl.h +++ b/src/intl.h @@ -1,103 +1,80 @@ // -*- C++ -*- -/* International support for LyX - - +/** + * \file intl.h + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author unknown + * \author Lars Gullik Bjønnes + * \author Angus Leeming + * \author John Levon + * + * Full author contact details are available in file CREDITS. */ + #ifndef INTL_H #define INTL_H -#include FORMS_H_LOCATION +#include "trans_mgr.h" -#ifdef __GNUG__ -#pragma interface -#endif -#include "LString.h" -#include "form1.h" +namespace lyx { -class LyXText; -class Combox; -class TransManager; +/** + * This class is used for managing keymaps + * for composing characters in LyX. + */ +class Intl { +public: + /// which keymap is currently used ? + enum Keymap { + PRIMARY, + SECONDARY + }; -/// default character set -#define DEFCHSET "iso8859-1" + Intl(); + /// {en/dis}able the keymap + void keyMapOn(bool on); -/** The gui part and the non gui part should be split into two different - classes. Probably should the gui class just have a pointer to the non - gui class. - */ -class Intl -{ -public: - /// - Intl(); - - /// show key mapping dialog - void MenuKeymap(); - /// - void KeyMapOn(bool on); - /// - void KeyMapPrim(); - /// - void KeyMapSec(); + /// set the primary language keymap + void keyMapPrim(); + + /// set the secondary language keymap + void keyMapSec(); /// turn on/off key mappings, status in keymapon - void ToggleKeyMap(); + void toggleKeyMap(); - /// - int SetPrimary(string const &); + /// initialize key mapper + void initKeyMapper(bool on); - /// - int SetSecondary(string const &); + // Get the Translation Manager + TransManager & getTransManager(); - /// initialize key mapper - void InitKeyMapper(bool on); + /// using primary or secondary keymap ? + Keymap keymap; - /// Get the Translation Manager - TransManager * getTrans(); - /// - bool keymapon; - /// - bool primarykeymap; - /// - char * chsetcode; - /// - static void DispatchCallback(FL_OBJECT *, long); private: - /// - void update(); - /// - static void LCombo(int i, void *); // callback - /// - static void LCombo2(int i, void *); // callback - /// - void Keymap(long code); - /// - int curkeymap; - /// - int otherkeymap; - - /// - FD_KeyMap * fd_form_keymap; - /// - Combox * Language; - /// - Combox * Language2; - /// - string & prim_lang; - /// - string & sec_lang; - /// - TransManager * trans; + /// is key mapping enabled ? + bool keymapon; + /// the primary language keymap + std::string & prim_lang; + /// the secondary language keymap + std::string & sec_lang; + /// the translation manager + TransManager trans; }; inline -TransManager * Intl::getTrans() +TransManager & Intl::getTransManager() { return trans; } -#endif + +} // namespace lyx + +#endif /* INTL_H */