backgroundthread.h

00001 
00021 #ifndef KSPELL_BACKGROUNDTHREAD_H
00022 #define KSPELL_BACKGROUNDTHREAD_H
00023 
00024 #include "broker.h"
00025 
00026 #include <qthread.h>
00027 #include <qmutex.h>
00028 
00029 class QObject;
00030 
00031 namespace KSpell2
00032 {
00033     class Filter;
00034     class Broker;
00035     class Dictionary;
00036     class BackgroundThread : public QThread
00037     {
00038     public:
00039         BackgroundThread();
00040         void setReceiver( QObject *parent );
00041         QObject *receiver() const { return m_recv; }
00042 
00043         void setBroker( const Broker::Ptr& broker );
00044         Broker *broker() const { return m_broker; }
00045 
00046         void setText( const QString& );
00047         QString text() const;
00048 
00049         void changeLanguage( const QString& );
00050         QString language() const;
00051 
00052         void setFilter( Filter *filter );
00053         Filter *filter() const { return m_filter; }
00054 
00055         QStringList suggest( const QString& ) const;
00056 
00057         virtual void run();
00058         void stop();
00059     private:
00060         QObject    *m_recv;
00061         QMutex      m_mutex;
00062         Filter     *m_filter;
00063         Broker::Ptr m_broker;
00064         Dictionary *m_dict;
00065         bool        m_done;
00066     };
00067 }
00068 
00069 #endif
KDE Home | KDE Accessibility Home | Description of Access Keys