KNewStuff
provider.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef KNEWSTUFF2_PROVIDER_H
00022 #define KNEWSTUFF2_PROVIDER_H
00023
00024 #include <knewstuff2/core/feed.h>
00025
00026 #include <kurl.h>
00027
00028 #include <QtXml/qdom.h>
00029 #include <QtCore/QObject>
00030 #include <QtCore/QList>
00031 #include <QtCore/QString>
00032
00033 namespace KIO
00034 {
00035 class Job;
00036 }
00037
00038 namespace KNS
00039 {
00040
00053 class KNEWSTUFF_EXPORT Provider
00054 {
00055 public:
00056 typedef QList<Provider*> List;
00057
00061 Provider();
00062
00066 ~Provider();
00067
00071 void setName(const KTranslatable& name);
00072
00078 KTranslatable name() const;
00079
00089 void addDownloadUrlFeed(const QString& feedtype, Feed *feed);
00090
00100 Feed *downloadUrlFeed(const QString& feedtype) const;
00101
00107 QStringList feeds() const;
00108
00112 void setUploadUrl(const KUrl &);
00113
00119 KUrl uploadUrl() const;
00120
00125 void setNoUploadUrl(const KUrl &);
00126
00133 KUrl noUploadUrl() const;
00134
00138 void setWebAccess(const KUrl &);
00139
00145 KUrl webAccess() const;
00146
00150 void setWebService(const KUrl &);
00151
00157 KUrl webService() const;
00158
00164 void setIcon(const KUrl &);
00165
00171 KUrl icon() const;
00172
00173 private:
00174 KTranslatable mName;
00175 KUrl mUploadUrl;
00176 KUrl mNoUploadUrl;
00177 KUrl mWebAccess;
00178 KUrl mWebService;
00179 KUrl mIcon;
00180 QMap<QString, Feed*> mFeeds;
00181
00182 class ProviderPrivate *d;
00183 };
00184
00185 }
00186
00187 #endif