diff options
author | Darrell Anderson <humanreadable@yahoo.com> | 2013-03-02 15:57:34 -0600 |
---|---|---|
committer | Darrell Anderson <humanreadable@yahoo.com> | 2013-03-02 15:57:34 -0600 |
commit | 7c0b0c9dc9fcbe9c198925bdc7ee18ac6be49f4f (patch) | |
tree | c76702a7f6310fbe9d437e347535422e836e94e9 /tdespell2/defaultdictionary.cpp | |
parent | a2a38be7600e2a2c2b49c66902d912ca036a2c0f (diff) | |
parent | 27bbee9a5f9dcda53d8eb23863ee670ad1360e41 (diff) | |
download | tdelibs-7c0b0c9dc9fcbe9c198925bdc7ee18ac6be49f4f.tar.gz tdelibs-7c0b0c9dc9fcbe9c198925bdc7ee18ac6be49f4f.zip |
Merge branch 'master' of http://scm.trinitydesktop.org/scm/git/tdelibs
Diffstat (limited to 'tdespell2/defaultdictionary.cpp')
-rw-r--r-- | tdespell2/defaultdictionary.cpp | 118 |
1 files changed, 118 insertions, 0 deletions
diff --git a/tdespell2/defaultdictionary.cpp b/tdespell2/defaultdictionary.cpp new file mode 100644 index 000000000..39b80e7cf --- /dev/null +++ b/tdespell2/defaultdictionary.cpp @@ -0,0 +1,118 @@ +/** + * defaultdictionary.cpp + * + * Copyright (C) 2004 Zack Rusin <zack@kde.org> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + * 02110-1301 USA + */ +#include "defaultdictionary.h" + +#include "broker.h" + +using namespace KSpell2; + + +class DefaultDictionary::Private +{ +public: + Dictionary *dict; + Broker *broker; //not a Ptr because Broker holds DefaultDictionary + //we need it only to switch the dics +}; + +DefaultDictionary::DefaultDictionary( const TQString& lang, Broker *broker ) + : TQObject( broker ), Dictionary( lang, true ) +{ + d = new Private; + d->dict = broker->dictionary(); + d->broker = broker; + connect( broker, TQT_SIGNAL(configurationChanged()), + TQT_SLOT(defaultConfigurationChanged()) ); +} + +DefaultDictionary::~DefaultDictionary() +{ + delete d; d = 0; +} + +bool DefaultDictionary::isValid() const +{ + //if d->dict exists then we're valid + return d->dict; +} + +bool DefaultDictionary::check( const TQString& word ) +{ + if ( d->dict ) + return d->dict->check( word ); + else + return true; +} + +TQStringList DefaultDictionary::suggest( const TQString& word ) +{ + if ( d->dict ) + return d->dict->suggest( word ); + else + return TQStringList(); + +} + +bool DefaultDictionary::checkAndSuggest( const TQString& word, + TQStringList& suggestions ) +{ + if ( d->dict ) + return d->dict->checkAndSuggest( word, suggestions ); + else + return true; +} + +bool DefaultDictionary::storeReplacement( const TQString& bad, + const TQString& good ) +{ + if ( d->dict ) + return d->dict->storeReplacement( bad, good ); + else + return false; +} + +bool DefaultDictionary::addToPersonal( const TQString& word ) +{ + if ( d->dict ) + return d->dict->addToPersonal( word ); + else + return false; +} + +bool DefaultDictionary::addToSession( const TQString& word ) +{ + if ( d->dict ) + return d->dict->addToSession( word ); + else + return false; +} + +void DefaultDictionary::defaultConfigurationChanged() +{ + delete d->dict; + d->dict = d->broker->dictionary(); + if ( d->dict ) + m_language = d->dict->language(); + else + m_language = TQString::null; +} + +#include "defaultdictionary.moc" |