summarywidget.h
00001
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 "summary.h"
00028
00029 #include <dcopobject.h>
00030
00031 #include <qmap.h>
00032 #include <qpixmap.h>
00033 #include <qptrlist.h>
00034 #include <qstringlist.h>
00035 #include <qtimer.h>
00036 #include <qwidget.h>
00037
00038 class QGridLayout;
00039 class QLabel;
00040 class QVBoxLayout;
00041
00042 class WeatherData
00043 {
00044 public:
00045 void setIcon( const QPixmap &icon ) { mIcon = icon; }
00046 QPixmap icon() const { return mIcon; }
00047
00048 void setName( const QString &name ) { mName = name; }
00049 QString name() const { return mName; }
00050
00051 void setCover( const QStringList& cover ) { mCover = cover; }
00052 QStringList cover() const { return mCover; }
00053
00054 void setTemperature( const QString &temperature ) { mTemperature = temperature; }
00055 QString temperature() const { return mTemperature; }
00056
00057 void setWindSpeed( const QString &windSpeed ) { mWindSpeed = windSpeed; }
00058 QString windSpeed() const { return mWindSpeed; }
00059
00060 void setRelativeHumidity( const QString &relativeHumidity ) { mRelativeHumidity = relativeHumidity; }
00061 QString relativeHumidity() const { return mRelativeHumidity; }
00062
00063 private:
00064 QPixmap mIcon;
00065 QString mName;
00066 QStringList mCover;
00067 QString mTemperature;
00068 QString mWindSpeed;
00069 QString mRelativeHumidity;
00070 };
00071
00072 class SummaryWidget : public Kontact::Summary, public DCOPObject
00073 {
00074 Q_OBJECT
00075 K_DCOP
00076 public:
00077 SummaryWidget( QWidget *parent, const char *name = 0 );
00078
00079 int summaryHeight() const;
00080
00081 QStringList configModules() const;
00082
00083 k_dcop:
00084 virtual void refresh( QString );
00085 virtual void stationRemoved( QString );
00086
00087 private slots:
00088 void updateView();
00089 void timeout();
00090
00091 private:
00092 QStringList mStations;
00093 QMap<QString, WeatherData> mWeatherMap;
00094 QTimer mTimer;
00095
00096 QPtrList<QLabel> mLabels;
00097 QPtrList<QGridLayout> mLayouts;
00098 QVBoxLayout *mLayout;
00099 };
00100
00101 #endif
This file is part of the documentation for kontact Library Version 3.2.2.