5 #include <QNetworkReply>
6 #include <QNetworkRequest>
13 class Feed : public QObject {
17 bool subscription_updated;
22 QString firstitemmsec;
32 QDateTime lastUpdated;
38 void updateSubscription(Feed *feed);
40 Feed(GoogleReader *gr = NULL) : QObject() {
48 void addEntry(Entry *);
49 void delEntry(Entry *);
50 QList<Entry *> getEntries();
51 int getEntriesSize() { return entries.size(); }
53 void updateUnread(int);
56 void updateFeedComplete();
57 void allReadChanged();
60 QHash<QString, Entry *> entries;
68 Q_DECLARE_METATYPE(Feed *)
70 #define ENTRY_FLAG_READ 0x00000001
71 #define ENTRY_FLAG_STARRED 0x00000002
72 #define ENTRY_FLAG_LOCKED 0x00000004
73 #define ENTRY_FLAG_SHARED 0x00000008
75 class Entry : public QObject {
90 Entry(Feed *f = NULL) : QObject() {
95 Entry(Entry &e) : QObject() {
99 published = e.published;
109 void markShared(bool);
117 Q_DECLARE_METATYPE(Entry *)
119 class GoogleReader: public QObject {
124 void updateSubscriptions();
126 QList<Feed *> getFeeds();
127 QNetworkAccessManager *getManager() {
133 QUrl markallread_url;
135 QNetworkAccessManager manager;
136 QDateTime lastUpdated;
137 QHash<QString, Feed *> feeds;
139 void setLogin(QString l) { login = l; }
140 void setPasswd(QString p) { passwd = p; }
144 updateSubscriptionsPending = false;
145 updateUnreadPending = false;
150 void downloadFinished(QNetworkReply *reply);
155 bool updateSubscriptionsPending;
156 bool updateUnreadPending;
160 void parseSubscriptions(QByteArray data);
161 void parseUnread(QByteArray data);
164 QUrl subscriptions_url;
172 void updateSubscriptionsComplete();
173 void updateUnreadComplete();
174 void allReadChanged();
175 void loginFailed(QString);