5 #include <QNetworkReply>
6 #include <QNetworkRequest>
13 class Feed : public QObject {
17 bool subscription_updated;
22 QString firstitemmsec;
31 QDateTime lastUpdated;
37 void updateSubscription(Feed *feed);
39 Feed(GoogleReader *gr = NULL) : QObject() {
46 void addEntry(Entry *);
47 void delEntry(Entry *);
48 QList<Entry *> getEntries();
49 int getEntriesSize() { return entries.size(); }
51 void updateUnread(int);
54 void updateFeedComplete();
55 void allReadChanged();
58 QHash<QString, Entry *> entries;
66 Q_DECLARE_METATYPE(Feed *)
68 #define ENTRY_FLAG_READ 0x00000001
69 #define ENTRY_FLAG_STARRED 0x00000002
70 #define ENTRY_FLAG_LOCKED 0x00000004
71 #define ENTRY_FLAG_SHARED 0x00000008
73 class Entry : public QObject {
88 Entry(Feed *f = NULL) : QObject() {
93 Entry(Entry &e) : QObject() {
97 published = e.published;
107 void markShared(bool);
115 Q_DECLARE_METATYPE(Entry *)
117 class GoogleReader: public QObject {
122 void updateSubscriptions();
124 QList<Feed *> getFeeds();
125 QNetworkAccessManager *getManager() {
131 QUrl markallread_url;
133 QNetworkAccessManager manager;
134 QDateTime lastUpdated;
135 QHash<QString, Feed *> feeds;
137 void setLogin(QString l) { login = l; }
138 void setPasswd(QString p) { passwd = p; }
142 updateSubscriptionsPending = false;
143 updateUnreadPending = false;
148 void downloadFinished(QNetworkReply *reply);
153 bool updateSubscriptionsPending;
154 bool updateUnreadPending;
158 void parseSubscriptions(QByteArray data);
159 void parseUnread(QByteArray data);
162 QUrl subscriptions_url;
170 void updateSubscriptionsComplete();
171 void updateUnreadComplete();
172 void allReadChanged();
173 void loginFailed(QString);