LCOV - code coverage report
Current view: top level - src/models - NewsItem.h (source / functions) Coverage Total Hit
Test: coverage.info.cleaned Lines: 100.0 % 12 12
Test Date: 2026-03-23 10:19:47 Functions: 100.0 % 13 13

            Line data    Source code
       1              : #ifndef NEWSITEM_H
       2              : #define NEWSITEM_H
       3              : 
       4              : #include <QString>
       5              : #include <QUrl>
       6              : #include <QDateTime>
       7              : #include <QVariant>
       8              : #include <QDebug>
       9              : 
      10              : #include "../FangObject.h"
      11              : #include "DBObject.h"
      12              : 
      13              : class FeedItem;
      14              : 
      15              : class NewsItem : public FangObject, DBObject
      16              : {
      17              :     Q_OBJECT
      18              :     
      19              : public:
      20              :     
      21              :     NewsItem(QObject *parent = nullptr);
      22              :     
      23              :     // This is the c'tor you'll want to use.
      24              :     explicit NewsItem(
      25              :             FeedItem* feed,
      26              :             qint64 id,
      27              :             qint64 feedId,
      28              :             const QString& title,
      29              :             const QString& author,
      30              :             const QString& summary,
      31              :             const QString& content,
      32              :             const QDateTime& timestamp,
      33              :             const QUrl& url,
      34              :             bool pinned,
      35              :             const QString& mediaImageURL = "");
      36              :     
      37         5298 :     virtual ~NewsItem() {}
      38              :     
      39              :     // For sorting
      40              :     bool operator<(const NewsItem& rhs);
      41              :     static bool LessThan(const NewsItem* left, const NewsItem* right);
      42              :     
      43            3 :     inline FeedItem* getFeed() const { return feed; }
      44              :     
      45              :     // This returns the actual feed database ID
      46            4 :     inline qint64 getFeedId() const { return _feedId; }
      47              :     
      48           66 :     inline QString getTitle() const { return title; }
      49            3 :     inline QString getAuthor() const { return author; }
      50            3 :     inline QString getSummary() const { return summary; }
      51          125 :     inline QString getContent() const { return content; }
      52         3260 :     inline QDateTime getTimestamp() const { return timestamp; }
      53           64 :     inline QUrl getURL() const { return url; }
      54         5620 :     virtual inline qint64 getDbID() const { return _id; }
      55           66 :     inline bool getPinned() const { return pinned; }
      56            2 :     inline void setPinned(bool p) { pinned = p; }
      57              :     inline QString getMediaImageURL() const { return mediaImageURL; }
      58              :    
      59              :   private:
      60              :     FeedItem* feed;
      61              :     qint64 _id;
      62              :     qint64 _feedId;
      63              :     QString title;
      64              :     QString author;
      65              :     QString summary;
      66              :     QString content;
      67              :     QDateTime timestamp;
      68              :     QUrl url;
      69              :     bool pinned;
      70              :     QString mediaImageURL;
      71              : };
      72              : 
      73              : #endif // NEWSITEM_H
        

Generated by: LCOV version 2.0-1