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;
149 QByteArray getAuth() {
154 void downloadFinished(QNetworkReply *reply);
159 bool updateSubscriptionsPending;
160 bool updateUnreadPending;
164 void parseSubscriptions(QByteArray data);
165 void parseUnread(QByteArray data);
168 QUrl subscriptions_url;
176 void updateSubscriptionsComplete();
177 void updateUnreadComplete();
178 void allReadChanged();
179 void loginFailed(QString);