KParts
historyprovider.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "historyprovider.h"
00021
00022 #include <QtCore/QSet>
00023
00024 #include <kapplication.h>
00025
00026 using namespace KParts;
00027
00028 class KParts::HistoryProviderPrivate
00029 {
00030 public:
00031 HistoryProviderPrivate()
00032 : q(0)
00033 {
00034 }
00035
00036 ~HistoryProviderPrivate()
00037 {
00038 delete q;
00039 }
00040
00041 QSet<QString> dict;
00042 HistoryProvider *q;
00043 };
00044
00045 K_GLOBAL_STATIC(HistoryProviderPrivate, historyProviderPrivate)
00046
00047 HistoryProvider * HistoryProvider::self()
00048 {
00049 if (!historyProviderPrivate->q) {
00050 new HistoryProvider;
00051 }
00052
00053 return historyProviderPrivate->q;
00054 }
00055
00056 HistoryProvider::HistoryProvider( QObject *parent )
00057 : QObject( parent ), d(historyProviderPrivate)
00058 {
00059 Q_ASSERT(!historyProviderPrivate->q);
00060 historyProviderPrivate->q = this;
00061 setObjectName("history provider");
00062 }
00063
00064 HistoryProvider::~HistoryProvider()
00065 {
00066 if (!historyProviderPrivate.isDestroyed() &&
00067 historyProviderPrivate->q == this)
00068 historyProviderPrivate->q = 0;
00069 }
00070
00071 bool HistoryProvider::contains( const QString& item ) const
00072 {
00073 return d->dict.contains( item );
00074 }
00075
00076 void HistoryProvider::insert( const QString& item )
00077 {
00078 d->dict.insert( item );
00079 emit inserted( item );
00080 }
00081
00082 void HistoryProvider::remove( const QString& item )
00083 {
00084 d->dict.remove( item );
00085 }
00086
00087 void HistoryProvider::clear()
00088 {
00089 d->dict.clear();
00090 emit cleared();
00091 }
00092
00093 #include "historyprovider.moc"