10#include <QDomDocument>
15#include <QRecursiveMutex>
26 using List = std::vector<NewsSiteItem>;
40 using List = std::vector<NewsCategory>;
45 void clear(
void) { m_siteList.clear(); }
63 class List :
public std::vector<NewsSite*>
78 QDateTime updated,
bool podcast);
83 QString
url(
void)
const;
84 QString
name(
void)
const;
100 void parseRSS(
const QDomDocument& domDoc);
101 void parseAtom(
const QDomDocument& domDoc);
std::vector< NewsArticle > List
NewsSiteItem::List m_siteList
std::vector< NewsCategory > List
std::vector< NewsSiteItem > List
void insertNewsArticle(const NewsArticle &item)
QString imageURL(void) const
void parseAtom(const QDomDocument &domDoc)
static bool sortByName(NewsSite *a, NewsSite *b)
NewsSite(QString name, const QString &url, QDateTime updated, bool podcast)
NewsArticle::List m_articleList
QString errorMsg(void) const
QString sortName(void) const
NewsArticle::List GetArticleList(void) const
void parseRSS(const QDomDocument &domDoc)
void customEvent(QEvent *event) override
bool successful(void) const
void finished(NewsSite *item)
QString m_updateErrorString
QDateTime lastUpdated(void) const
static QString ReplaceHtmlChar(const QString &orig)
virtual void deleteLater()
std::chrono::minutes timeSinceLastUpdate(void) const
void clearNewsArticles(void)
QString description(void) const
Q_DECLARE_METATYPE(std::chrono::seconds)
MBASE_PUBLIC int naturalCompare(const QString &_a, const QString &_b, Qt::CaseSensitivity caseSensitivity=Qt::CaseSensitive)
This method chops the input a and b into pieces of digits and non-digits (a1.05 becomes a | 1 | .