kontact
summarywidget.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef SUMMARYWIDGET_H
00025 #define SUMMARYWIDGET_H
00026
00027 #include <dcopobject.h>
00028 #include <dcopref.h>
00029
00030 #include <tqmap.h>
00031 #include <tqptrlist.h>
00032 #include <tqtimer.h>
00033 #include <tqwidget.h>
00034
00035 #include "summary.h"
00036 #include <kurl.h>
00037
00038 class TQVBoxLayout;
00039 class TQLabel;
00040
00041 class DCOPRef;
00042 class KURLLabel;
00043
00044 typedef TQValueList< TQPair<TQString, KURL> > ArticleMap;
00045
00046 typedef struct {
00047 DCOPRef ref;
00048 TQString title;
00049 TQString url;
00050 TQPixmap logo;
00051 ArticleMap map;
00052 } Feed;
00053
00054 typedef TQValueList<Feed> FeedList;
00055
00056 class SummaryWidget : public Kontact::Summary, public DCOPObject
00057 {
00058 Q_OBJECT
00059
00060 K_DCOP
00061
00062 public:
00063 SummaryWidget( TQWidget *parent, const char *name = 0 );
00064
00065 int summaryHeight() const;
00066 TQStringList configModules() const;
00067
00068 k_dcop:
00072 void documentUpdated( DCOPRef );
00076 void documentAdded( TQString );
00080 void documentRemoved( TQString );
00086 void documentUpdateError( DCOPRef ref, int errorCode );
00087
00088 public slots:
00089 void updateSummary( bool force = false );
00090 void configChanged();
00091
00092 protected slots:
00093 void updateDocuments();
00094 void rmbMenu( const TQString& );
00095
00096 protected:
00097 virtual bool eventFilter( TQObject *obj, TQEvent *e );
00098 void initDocuments();
00099 void updateView();
00100 void readConfig();
00101
00102 private:
00103 TQVBoxLayout *mLayout;
00104 TQWidget* mBaseWidget;
00105
00106 TQPtrList<TQLabel> mLabels;
00107
00108 FeedList mFeeds;
00109
00110 TQTimer mTimer;
00111 int mUpdateInterval;
00112 int mArticleCount;
00113 uint mFeedCounter;
00114 };
00115
00116 #endif
|