• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • tdespell2
 

tdespell2

backgroundengine.cpp

00001 
00021 #include "backgroundengine.h"
00022 
00023 #include "defaultdictionary.h"
00024 #include "dictionary.h"
00025 #include "filter.h"
00026 
00027 #include <kdebug.h>
00028 
00029 #include <tqtimer.h>
00030 
00031 using namespace KSpell2;
00032 
00033 BackgroundEngine::BackgroundEngine( TQObject *parent )
00034     : TQObject( parent )
00035 {
00036     m_filter = Filter::defaultFilter();
00037     m_dict = 0;
00038 }
00039 
00040 BackgroundEngine::~BackgroundEngine()
00041 {
00042     delete m_dict; m_dict = 0;
00043 }
00044 
00045 void BackgroundEngine::setBroker( const Broker::Ptr& broker )
00046 {
00047     m_broker = broker;
00048     delete m_dict;
00049     m_defaultDict = m_broker->defaultDictionary();
00050     m_filter->setSettings( m_broker->settings() );
00051 }
00052 
00053 void BackgroundEngine::setText( const TQString& text )
00054 {
00055     m_filter->setBuffer( text );
00056 }
00057 
00058 TQString BackgroundEngine::text() const
00059 {
00060     return m_filter->buffer();
00061 }
00062 
00063 void BackgroundEngine::changeLanguage( const TQString& lang )
00064 {
00065     delete m_dict;
00066     if ( lang.isEmpty() ) {
00067         m_dict = 0;
00068     } else {
00069         m_dict = m_broker->dictionary( lang );
00070     }
00071 }
00072 
00073 TQString BackgroundEngine::language() const
00074 {
00075     if ( m_dict )
00076         return m_dict->language();
00077     else
00078         return m_defaultDict->language();
00079 }
00080 
00081 void BackgroundEngine::setFilter( Filter *filter )
00082 {
00083     TQString oldText = m_filter->buffer();
00084     m_filter = filter;
00085     m_filter->setBuffer( oldText );
00086 }
00087 
00088 void BackgroundEngine::start()
00089 {
00090     TQTimer::singleShot( 0, this, TQT_SLOT(checkNext()) );
00091 }
00092 
00093 void BackgroundEngine::stop()
00094 {
00095 }
00096 
00097 void BackgroundEngine::continueChecking()
00098 {
00099     TQTimer::singleShot( 0, this, TQT_SLOT(checkNext()) );
00100 }
00101 
00102 void BackgroundEngine::checkNext()
00103 {
00104     Word w = m_filter->nextWord();
00105     if ( w.end ) {
00106         emit done();
00107         return;
00108     }
00109 
00110     Dictionary *dict = ( m_dict ) ? m_dict : static_cast<Dictionary*>( m_defaultDict );
00111 
00112     if ( !dict->check( w.word ) ) {
00113         //kdDebug()<<"found misspelling "<< w.word <<endl;
00114         emit misspelling( w.word, w.start );
00115         //wait for the handler. the parent will decide itself when to continue
00116     } else
00117         continueChecking();
00118 }
00119 
00120 bool BackgroundEngine::checkWord( const TQString& word )
00121 {
00122     Dictionary *dict = ( m_dict ) ? m_dict : static_cast<Dictionary*>( m_defaultDict );
00123     return dict->check( word );
00124 }
00125 
00126 bool BackgroundEngine::addWord( const TQString& word )
00127 {
00128     Dictionary *dict = ( m_dict ) ? m_dict : static_cast<Dictionary*>( m_defaultDict );
00129     return dict->addToPersonal( word );
00130 }
00131 
00132 TQStringList BackgroundEngine::suggest( const TQString& word )
00133 {
00134     Dictionary *dict = ( m_dict ) ? m_dict : static_cast<Dictionary*>( m_defaultDict );
00135     return dict->suggest( word );
00136 }
00137 
00138 #include "backgroundengine.moc"

tdespell2

Skip menu "tdespell2"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Class Members

tdespell2

Skip menu "tdespell2"
  • arts
  • dcop
  • dnssd
  • interfaces
  •   kspeech
  •     interface
  •     library
  •   tdetexteditor
  • kate
  • kded
  • kdoctools
  • kimgio
  • kjs
  • libtdemid
  • libtdescreensaver
  • tdeabc
  • tdecmshell
  • tdecore
  • tdefx
  • tdehtml
  • tdeinit
  • tdeio
  •   bookmarks
  •   httpfilter
  •   kpasswdserver
  •   kssl
  •   tdefile
  •   tdeio
  •   tdeioexec
  • tdeioslave
  •   http
  • tdemdi
  •   tdemdi
  • tdenewstuff
  • tdeparts
  • tdeprint
  • tderandr
  • tderesources
  • tdespell2
  • tdesu
  • tdeui
  • tdeunittest
  • tdeutils
  • tdewallet
Generated for tdespell2 by doxygen 1.6.3
This website is maintained by Timothy Pearson.