]> git.lyx.org Git - lyx.git/blobdiff - src/EnchantChecker.cpp
Cocoa based Qt-4.6 needs to paint every character separately to match metrics computa...
[lyx.git] / src / EnchantChecker.cpp
index 793bc16fb95da8499743b6c8bc4fc26645ff3ee7..cbccc34aae4ec911914034469fb9700decf9d74a 100644 (file)
@@ -112,7 +112,7 @@ SpellChecker::Result EnchantChecker::check(WordLangTuple const & word)
 {
        enchant::Dict * m = d->speller(word.lang()->code());
 
-       if (!m)
+       if (!m || word.word().empty())
                return WORD_OK;
 
        string utf8word = to_utf8(word.word());
@@ -124,19 +124,39 @@ SpellChecker::Result EnchantChecker::check(WordLangTuple const & word)
 }
 
 
+void EnchantChecker::advanceChangeNumber()
+{
+       nextChangeNumber();
+}
+
+
 void EnchantChecker::insert(WordLangTuple const & word)
 {
        Spellers::iterator it = d->spellers_.find(word.lang()->code());
-       if (it != d->spellers_.end())
+       if (it != d->spellers_.end()) {
                it->second.speller->add(to_utf8(word.word()));
+               advanceChangeNumber();
+       }
+}
+       
+       
+void EnchantChecker::remove(WordLangTuple const & word)
+{
+       Spellers::iterator it = d->spellers_.find(word.lang()->code());
+       if (it != d->spellers_.end()) {
+               it->second.speller->remove(to_utf8(word.word()));
+               advanceChangeNumber();
+       }
 }
 
 
 void EnchantChecker::accept(WordLangTuple const & word)
 {
        Spellers::iterator it = d->spellers_.find(word.lang()->code());
-       if (it != d->spellers_.end())
+       if (it != d->spellers_.end()) {
                it->second.speller->add_to_session(to_utf8(word.word()));
+               advanceChangeNumber();
+       }
 }