Git commit 929d478bb65ff6357930fc44f23c1cae8b97f848 by Montel Laurent. Committed on 31/08/2017 at 20:20. Pushed by mlaurent into branch 'master'. Add favorite support. M +13 -9 src/qml/Desktop.qml M +2 -2 src/rocketchatbackend.cpp M +3 -0 src/roommodel.cpp M +2 -1 src/roommodel.h M +5 -0 src/roomwrapper.cpp M +4 -1 src/roomwrapper.h https://commits.kde.org/ruqola/929d478bb65ff6357930fc44f23c1cae8b97f848 diff --git a/src/qml/Desktop.qml b/src/qml/Desktop.qml index ab88375..5104e44 100644 --- a/src/qml/Desktop.qml +++ b/src/qml/Desktop.qml @@ -177,22 +177,31 @@ Kirigami.ApplicationWindow { rightPadding: Kirigami.Units.smallSpacing topPadding: Kirigami.Units.smallSpacing bottomPadding: Kirigami.Units.smallSpacing + header: Column { = RowLayout { anchors.left: parent.left anchors.right: parent.right anchors.leftMargin: 2*Kirigami.Units.smallSpacing + visible: appid.selectedRoom = - Controls.ToolButton { - text: "ToolButton" - visible: false//appid.selectedRoom - } + ToolButton { + iconName: "favorite" + checkable: true + checked: appid.selectedRoom.favorite + onCheckedChanged: { + console.log("checked favorite" + checked) + } + } = Kirigami.Heading { text: "#" +appid.selectedRoom.name level: 3 font.bold: true } + Item { + Layout.fillWidth: true + } } = Kirigami.Label { @@ -213,11 +222,6 @@ Kirigami.ApplicationWindow { wrapMode: Label.Wrap } = - Controls.ToolButton { - text: "ToolButton" - visible: false //appid.selectedRoom - } - Rectangle { color: Kirigami.Theme.textColor height:1 diff --git a/src/rocketchatbackend.cpp b/src/rocketchatbackend.cpp index 71a3f5d..a5e5b06 100644 --- a/src/rocketchatbackend.cpp +++ b/src/rocketchatbackend.cpp @@ -180,8 +180,8 @@ void RocketChatBackend::onAdded(const QJsonObject &obje= ct) mRocketChatAccount->restapi()->login(); } else { //TODO add current user ? me ? - User user; - user.parseUser(object); + User *user =3D new User; + user->parseUser(object); qCDebug(RUQOLA_LOG) << " USER ADDED VALUE " << user; mRocketChatAccount->userModel()->addUser(user); } diff --git a/src/roommodel.cpp b/src/roommodel.cpp index 2a705db..665d015 100644 --- a/src/roommodel.cpp +++ b/src/roommodel.cpp @@ -123,6 +123,7 @@ QHash RoomModel::roleNames() const roles[RoomOpen] =3D "open"; roles[RoomAlert] =3D "alert"; roles[RoomOrder] =3D "roomorder"; + roles[RoomFavorite] =3D "favorite"; return roles; } = @@ -165,6 +166,8 @@ QVariant RoomModel::data(const QModelIndex &index, int = role) const return r.mOpen; case RoomModel::RoomAlert: return r.mAlert; + case RoomModel::RoomFavorite: + return r.mFavorite; case RoomModel::RoomOrder: { QString str; diff --git a/src/roommodel.h b/src/roommodel.h index 0db6e53..61ea3d4 100644 --- a/src/roommodel.h +++ b/src/roommodel.h @@ -48,7 +48,8 @@ public: RoomAnnoucement, RoomOpen, RoomAlert, - RoomOrder + RoomOrder, + RoomFavorite }; = explicit RoomModel(RocketChatAccount *account =3D nullptr, QObject *pa= rent =3D nullptr); diff --git a/src/roomwrapper.cpp b/src/roomwrapper.cpp index 3c4a904..1ef7896 100644 --- a/src/roomwrapper.cpp +++ b/src/roomwrapper.cpp @@ -48,3 +48,8 @@ QString RoomWrapper::announcement() const { return mRoom.mAnnouncement; } + +bool RoomWrapper::favorite() const +{ + return mRoom.mFavorite; +} diff --git a/src/roomwrapper.h b/src/roomwrapper.h index c23c05b..727292b 100644 --- a/src/roomwrapper.h +++ b/src/roomwrapper.h @@ -32,6 +32,7 @@ class LIBRUQOLACORE_EXPORT RoomWrapper : public QObject Q_PROPERTY(QString name READ name NOTIFY nameChanged) Q_PROPERTY(QString topic READ topic NOTIFY topicChanged) Q_PROPERTY(QString announcement READ announcement NOTIFY announcementC= hanged) + Q_PROPERTY(bool favorite READ favorite NOTIFY favoriteChanged) Q_OBJECT = public: @@ -40,12 +41,14 @@ public: = QString name() const; QString topic() const; - QString announcement() const; + QString announcement() const; = + bool favorite() const; = Q_SIGNALS: void nameChanged(); void topicChanged(); void announcementChanged(); + void favoriteChanged(); = private: Room mRoom;