kontact Library API Documentation

summarywidget.h

00001 /* 00002 This file is part of Kontact. 00003 Copyright (c) 2003 Tobias Koenig <tokoe@kde.org> 00004 00005 This program is free software; you can redistribute it and/or modify 00006 it under the terms of the GNU General Public License as published by 00007 the Free Software Foundation; either version 2 of the License, or 00008 (at your option) any later version. 00009 00010 This program is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 GNU General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program; if not, write to the Free Software 00017 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00018 00019 As a special exception, permission is given to link this program 00020 with any edition of Qt, and distribute the resulting executable, 00021 without including the source code for Qt in the source distribution. 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 #include <kprocess.h> 00039 00040 class QGridLayout; 00041 class QLabel; 00042 class QVBoxLayout; 00043 00044 class WeatherData 00045 { 00046 public: 00047 void setIcon( const QPixmap &icon ) { mIcon = icon; } 00048 QPixmap icon() const { return mIcon; } 00049 00050 void setName( const QString &name ) { mName = name; } 00051 QString name() const { return mName; } 00052 00053 void setCover( const QStringList& cover ) { mCover = cover; } 00054 QStringList cover() const { return mCover; } 00055 00056 void setTemperature( const QString &temperature ) { mTemperature = temperature; } 00057 QString temperature() const { return mTemperature; } 00058 00059 void setWindSpeed( const QString &windSpeed ) { mWindSpeed = windSpeed; } 00060 QString windSpeed() const { return mWindSpeed; } 00061 00062 void setRelativeHumidity( const QString &relativeHumidity ) { mRelativeHumidity = relativeHumidity; } 00063 QString relativeHumidity() const { return mRelativeHumidity; } 00064 00065 void setStationID(const QString &station) { mStationID = station;} 00066 QString stationID() { return mStationID; } 00067 00068 bool operator< ( const WeatherData &data ) 00069 { 00070 return ( QString::localeAwareCompare( mName, data.mName ) < 0 ); 00071 } 00072 00073 private: 00074 QPixmap mIcon; 00075 QString mName; 00076 QStringList mCover; 00077 QString mTemperature; 00078 QString mWindSpeed; 00079 QString mRelativeHumidity; 00080 QString mStationID; 00081 }; 00082 00083 class SummaryWidget : public Kontact::Summary, public DCOPObject 00084 { 00085 Q_OBJECT 00086 K_DCOP 00087 public: 00088 SummaryWidget( QWidget *parent, const char *name = 0 ); 00089 00090 QStringList configModules() const; 00091 00092 k_dcop: 00093 virtual void refresh( QString ); 00094 virtual void stationRemoved( QString ); 00095 00096 private slots: 00097 void updateView(); 00098 void timeout(); 00099 void slotShowReport(const QString&); 00100 void slotReportFinished(KProcess*); 00101 00102 private: 00103 QStringList mStations; 00104 QMap<QString, WeatherData> mWeatherMap; 00105 QTimer mTimer; 00106 00107 QPtrList<QLabel> mLabels; 00108 QPtrList<QGridLayout> mLayouts; 00109 QVBoxLayout *mLayout; 00110 00111 KProcess* mProc; 00112 }; 00113 00114 #endif
KDE Logo
This file is part of the documentation for kontact Library Version 3.3.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Fri Aug 27 12:53:45 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003