File indexing completed on 2025-01-19 03:55:37

0001 #include <QDebug>
0002 
0003 #include "tweetmodel.h"
0004 
0005 TweetModel::TweetModel(QObject *parent): QAbstractListModel(parent) {
0006 }
0007 
0008 QHash<int, QByteArray> TweetModel::roleNames() const {
0009     QHash<int, QByteArray> roles;
0010     roles[RoleText] = "rawText";
0011     return roles;
0012 }
0013 
0014 void TweetModel::addTweet(QVariantMap tweet) {
0015     beginInsertRows(QModelIndex(), rowCount(), rowCount());
0016     tweets.append(tweet);
0017     endInsertRows();
0018 }
0019 
0020 void TweetModel::clearTweets() {
0021     beginRemoveRows(QModelIndex(), 0, rowCount() - 1);
0022     tweets.clear();
0023     endRemoveRows();
0024 }
0025 
0026 int TweetModel::rowCount(const QModelIndex &) const {
0027     return tweets.count();
0028 }
0029 
0030 QVariant TweetModel::data(const QModelIndex &index, int role) const {
0031     QVariant result;
0032     QVariantMap tweet = tweets[index.row()];
0033     switch (role) {
0034     case TweetModel::RoleText:
0035         result = tweet["text"];
0036     default:
0037         result = tweet["text"];
0038     }
0039     return result;
0040 }
0041 
0042 #include "moc_tweetmodel.cpp"