akregator/src
notificationmanager.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef AKREGATORNOTIFICATIONMANAGER_H
00026 #define AKREGATORNOTIFICATIONMANAGER_H
00027
00028 #include <qobject.h>
00029
00030 #include "article.h"
00031
00032 namespace Akregator
00033 {
00034
00036 class NotificationManager : public QObject
00037 {
00038 Q_OBJECT
00039 public:
00041 static NotificationManager* self();
00042
00043 ~NotificationManager();
00044
00046 void setWidget(QWidget* widget, KInstance* inst=0);
00047
00048 public slots:
00049
00052 void slotNotifyArticle(const Article& article);
00053
00055 void slotNotifyFeeds(const QStringList& feeds);
00056
00057 protected:
00058
00059 void doNotify();
00060
00061 protected slots:
00062
00063 void slotIntervalCheck();
00064
00065 private:
00066 NotificationManager();
00067 NotificationManager(const NotificationManager&) : QObject(){}
00068
00069 uint m_checkInterval;
00070 uint m_intervalsLapsed;
00071 uint m_maxIntervals;
00072 uint m_maxArticles;
00073 bool m_running;
00074 bool m_addedInLastInterval;
00075 QWidget* m_widget;
00076 KInstance* m_instance;
00077
00078 QValueList<Article> m_articles;
00079
00080 static NotificationManager* m_self;
00081 };
00082
00083 }
00084
00085 #endif
|