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 #ifndef KNEWSTUFF2_PROVIDER_H
00020 #define KNEWSTUFF2_PROVIDER_H
00021
00022 #include <knewstuff2/core/feed.h>
00023
00024 #include <kurl.h>
00025
00026 #include <QtXml/qdom.h>
00027 #include <QtCore/QObject>
00028 #include <QtCore/QList>
00029 #include <QtCore/QString>
00030
00031 namespace KIO
00032 {
00033 class Job;
00034 }
00035
00036 namespace KNS
00037 {
00038
00051 class KNEWSTUFF_EXPORT Provider
00052 {
00053 public:
00054 typedef QList<Provider*> List;
00055
00059 Provider();
00060
00064 ~Provider();
00065
00069 void setName(const KTranslatable& name);
00070
00076 KTranslatable name() const;
00077
00087 void addDownloadUrlFeed(const QString& feedtype, Feed *feed);
00088
00098 Feed *downloadUrlFeed(const QString& feedtype) const;
00099
00105 QStringList feeds() const;
00106
00110 void setUploadUrl(const KUrl &);
00111
00117 KUrl uploadUrl() const;
00118
00123 void setNoUploadUrl(const KUrl &);
00124
00131 KUrl noUploadUrl() const;
00132
00136 void setWebAccess(const KUrl &);
00137
00143 KUrl webAccess() const;
00144
00148 void setWebService(const KUrl &);
00149
00155 KUrl webService() const;
00156
00162 void setIcon(const KUrl &);
00163
00169 KUrl icon() const;
00170
00171 private:
00172 KTranslatable mName;
00173 KUrl mUploadUrl;
00174 KUrl mNoUploadUrl;
00175 KUrl mWebAccess;
00176 KUrl mWebService;
00177 KUrl mIcon;
00178 QMap<QString, Feed*> mFeeds;
00179
00180 class ProviderPrivate *d;
00181 };
00182
00183 }
00184
00185 #endif