From kde-commits Thu Aug 31 21:29:50 2017 From: Montel Laurent Date: Thu, 31 Aug 2017 21:29:50 +0000 To: kde-commits Subject: [ruqola] src: Allow to return user Message-Id: X-MARC-Message: https://marc.info/?l=kde-commits&m=150421501211502 Git commit a521e2211946fc228a04a32738389cf3f69edcbb by Montel Laurent. Committed on 31/08/2017 at 21:20. Pushed by mlaurent into branch 'master'. Allow to return user M +2 -0 src/main.cpp M +10 -0 src/usermodel.cpp M +1 -0 src/usermodel.h https://commits.kde.org/ruqola/a521e2211946fc228a04a32738389cf3f69edcbb diff --git a/src/main.cpp b/src/main.cpp index da18e53..1892bfe 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -26,6 +26,7 @@ = #include "roommodel.h" #include "usersforroommodel.h" +#include "usermodel.h" #include "ruqola.h" #include "roomwrapper.h" #include "ruqolautils.h" @@ -60,6 +61,7 @@ int main(int argc, char *argv[]) qmlRegisterType("KDE.Ruqola.RoomWrapper", 1, 0, "RoomWrap= per"); qmlRegisterType("KDE.Ruqola.UsersForRoomModel", 1, = 0, "UsersForRoomModel"); qmlRegisterType("KDE.Ruqola.RocketChatAccount", 1, = 0, "RocketChatAccount"); + qmlRegisterType("KDE.Ruqola.UsersModel", 1, 0, "UsersModel= "); = (void)Ruqola::self(); QQmlApplicationEngine engine; diff --git a/src/usermodel.cpp b/src/usermodel.cpp index 9c1a260..631ded5 100644 --- a/src/usermodel.cpp +++ b/src/usermodel.cpp @@ -61,6 +61,16 @@ QVariant UsersModel::data(const QModelIndex &index, int = role) const return {}; } = +User *UsersModel::user(const QString &userId) +{ + for (int i =3D 0; i < mUsers.count(); ++i) { + if (mUsers.at(i)->userId() =3D=3D userId) { + return mUsers.at(i); + } + } + return nullptr; +} + void UsersModel::removeUser(const QString &userId) { qCDebug(RUQOLA_LOG) << " User removed " << userId; diff --git a/src/usermodel.h b/src/usermodel.h index 90325c8..390a5ff 100644 --- a/src/usermodel.h +++ b/src/usermodel.h @@ -47,6 +47,7 @@ public: void removeUser(const QString &userId); = void updateUser(const QJsonObject &array); + User *user(const QString &userId); private: QVector mUsers; };