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< QPair<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 K_DCOP
00060
00061 public:
00062 SummaryWidget( TQWidget *parent, const char *name = 0 );
00063
00064 int summaryHeight() const;
00065 TQStringList configModules() const;
00066
00067 k_dcop:
00071 void documentUpdated( DCOPRef );
00075 void documentAdded( TQString );
00079 void documentRemoved( TQString );
00085 void documentUpdateError( DCOPRef ref, int errorCode );
00086
00087 public slots:
00088 void updateSummary( bool force = false );
00089 void configChanged();
00090
00091 protected slots:
00092 void updateDocuments();
00093 void rmbMenu( const TQString& );
00094
00095 protected:
00096 virtual bool eventFilter( TQObject *obj, TQEvent *e );
00097 void initDocuments();
00098 void updateView();
00099 void readConfig();
00100
00101 private:
00102 TQVBoxLayout *mLayout;
00103 TQWidget* mBaseWidget;
00104
00105 TQPtrList<TQLabel> mLabels;
00106
00107 FeedList mFeeds;
00108
00109 TQTimer mTimer;
00110 int mUpdateInterval;
00111 int mArticleCount;
00112 uint mFeedCounter;
00113 };
00114
00115 #endif
|