]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/GuiThesaurus.cpp
Add missing initialization
[lyx.git] / src / frontends / qt4 / GuiThesaurus.cpp
index 86ed9598abf8424194e474dde5e6487068ee9755..c28fdf113e9f1ab5960df05d1b68b7ed174d3826 100644 (file)
 #include "FuncRequest.h"
 #include "Language.h"
 #include "lyxfind.h"
+#include "WordLangTuple.h"
 
 #include "support/debug.h"
 #include "support/gettext.h"
 #include "support/lstrings.h"
 
 #include <QAbstractItemModel>
+#include <QCompleter>
 #include <QHeaderView>
 #include <QLineEdit>
 #include <QPushButton>
@@ -79,6 +81,10 @@ GuiThesaurus::GuiThesaurus(GuiView & lv)
        languageCO->setModel(language_model);
        languageCO->setModelColumn(2);
 
+       //bug #8138
+       if (entryCO->completer())
+               entryCO->completer()->setCompletionMode(QCompleter::PopupCompletion);
+
        bc().setCancel(closePB);
        bc().setApply(replacePB);
        bc().addReadOnly(replaceED);
@@ -173,11 +179,11 @@ void GuiThesaurus::updateLists()
 
        QString const lang = languageCO->itemData(
                languageCO->currentIndex()).toString();
-       docstring const lang_code =
-               from_ascii(lyx::languages.getLanguage(fromqstr(lang))->code());
+       Language * language = const_cast<Language*>(lyx::languages.getLanguage(fromqstr(lang)));
+       docstring const lang_code = from_ascii(language->code());
 
        Thesaurus::Meanings meanings =
-               getMeanings(qstring_to_ucs4(entryCO->currentText()), lang_code);
+               getMeanings(WordLangTuple(qstring_to_ucs4(entryCO->currentText()), language));
 
        for (Thesaurus::Meanings::const_iterator cit = meanings.begin();
                cit != meanings.end(); ++cit) {
@@ -271,11 +277,10 @@ void GuiThesaurus::replace(docstring const & newstr)
 }
 
 
-Thesaurus::Meanings const & GuiThesaurus::getMeanings(docstring const & str,
-       docstring const & lang)
+Thesaurus::Meanings const & GuiThesaurus::getMeanings(WordLangTuple const & wl)
 {
-       if (str != laststr_)
-               meanings_ = thesaurus.lookup(str, lang);
+       if (wl.word() != laststr_)
+               meanings_ = thesaurus.lookup(wl);
        return meanings_;
 }