diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 2f8acfe02..3076a436a 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -34,6 +34,7 @@ set(SOURCES src/components/notification/Notification.cpp src/components/settings/AccountSettingsModel.cpp src/components/settings/SettingsModel.cpp + src/components/timeline/TimelineModel.cpp src/logger.cpp src/main.cpp ) @@ -47,6 +48,7 @@ set(HEADERS src/components/presence/Presence.hpp src/components/settings/AccountSettingsModel.hpp src/components/settings/SettingsModel.hpp + src/components/timeline/TimelineModel.hpp src/logger.hpp ) diff --git a/tests/src/app.cpp b/tests/src/app.cpp index 8101f3714..d58da3fd3 100644 --- a/tests/src/app.cpp +++ b/tests/src/app.cpp @@ -10,7 +10,7 @@ // =================================================================== App::App (int &argc, char **argv) : QApplication(argc, argv) { - // Try to use default locale. + // Try to use default locale. Otherwise use english. if (m_translator.load(QString(LANGUAGES_PATH) + QLocale::system().name()) || m_translator.load(LANGUAGES_PATH "en")) { this->installTranslator(&m_translator); diff --git a/tests/src/components/settings/AccountSettingsModel.hpp b/tests/src/components/settings/AccountSettingsModel.hpp index 5b2f23edc..6fcd7dc8e 100644 --- a/tests/src/components/settings/AccountSettingsModel.hpp +++ b/tests/src/components/settings/AccountSettingsModel.hpp @@ -8,7 +8,7 @@ // =================================================================== class AccountSettingsModel : public QObject { - Q_OBJECT + Q_OBJECT; Q_PROPERTY( QString username diff --git a/tests/src/components/settings/SettingsModel.hpp b/tests/src/components/settings/SettingsModel.hpp index 713e26a73..fbb9f722a 100644 --- a/tests/src/components/settings/SettingsModel.hpp +++ b/tests/src/components/settings/SettingsModel.hpp @@ -8,7 +8,7 @@ // =================================================================== class SettingsModel : public QObject { - Q_OBJECT + Q_OBJECT; public: SettingsModel (QObject *parent = Q_NULLPTR); diff --git a/tests/src/components/timeline/TimelineModel.cpp b/tests/src/components/timeline/TimelineModel.cpp new file mode 100644 index 000000000..c54562feb --- /dev/null +++ b/tests/src/components/timeline/TimelineModel.cpp @@ -0,0 +1,41 @@ +#include "TimelineModel.hpp" + +// =================================================================== + +TimelineModel::TimelineModel (QObject *parent): QAbstractListModel(parent) { + // TMP. + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; + m_addresses << "toto.linphone.sip.linphone.org"; +} + +int TimelineModel::rowCount (const QModelIndex &) const { + return m_addresses.count(); +} + +QHash TimelineModel::roleNames () const { + QHash roles; + roles[Qt::DisplayRole] = "$address"; + return roles; +} + +QVariant TimelineModel::data (const QModelIndex &index, int role) const { + int row = index.row(); + + if (row < 0 || row >= m_addresses.count()) + return QVariant(); + + if (role == Qt::DisplayRole) + return QVariant::fromValue(m_addresses[row]); + + return QVariant(); +} diff --git a/tests/src/components/timeline/TimelineModel.hpp b/tests/src/components/timeline/TimelineModel.hpp new file mode 100644 index 000000000..57ea94895 --- /dev/null +++ b/tests/src/components/timeline/TimelineModel.hpp @@ -0,0 +1,22 @@ +#ifndef TIMELINE_MODEL_H_ +#define TIMELINE_MODEL_H_ + +#include + +// =================================================================== + +class TimelineModel : public QAbstractListModel { + Q_OBJECT; + +public: + TimelineModel (QObject *parent = Q_NULLPTR); + + int rowCount (const QModelIndex &) const; + QHash roleNames () const; + QVariant data (const QModelIndex &index, int role) const; + +private: + QStringList m_addresses; +}; + +#endif // TIMELINE_MODEL_H_