]> git.lyx.org Git - lyx.git/blobdiff - src/intl.C
Small fixes
[lyx.git] / src / intl.C
index 2eb88498aa2ab2e26ca8111a21bc80ff1e2b8785..371d44da9ba1fde56cee4df3f82b56e4354055e1 100644 (file)
 #include "trans_mgr.h"
 #include "support/lstrings.h"
 #include "language.h"
+#include "frontends/Dialogs.h" // redrawGUI
+
+#ifdef SIGC_CXX_NAMESPACES
+using SigC::slot;
+#endif
 
 using std::endl;
 
@@ -46,14 +51,23 @@ Intl::Intl()
        primarykeymap = false;
        curkeymap = 0;
        otherkeymap = 0;
+       r_ = Dialogs::redrawGUI.connect(slot(this, &Intl::redraw));
 }
 
 Intl::~Intl()
 {
+       r_.disconnect();
        delete trans;
 }
 
 
+void Intl::redraw()
+{
+       if (fd_form_keymap && fd_form_keymap->KeyMap->visible)
+               fl_redraw_form(fd_form_keymap->KeyMap);
+}
+
+
 int Intl::SetPrimary(string const & lang)
 {
        if (lyxerr.debugging(Debug::KBMAP))