Init RoomListModel and test sync.

This commit is contained in:
Black Hat
2018-02-28 17:10:42 +08:00
parent 535e4bb3a0
commit a4b00f823e
12 changed files with 136 additions and 28 deletions

44
matrix/roomlistmodel.cpp Normal file
View File

@@ -0,0 +1,44 @@
#include "roomlistmodel.h"
#include "controller.h"
RoomListModel::RoomListModel(QObject *parent) : QObject(parent)
{
}
void RoomListModel::init(QMatrixClient::Connection *conn) {
qDebug() << "Registering connection.";
m_connection = conn;
connect(m_connection, &QMatrixClient::Connection::newRoom, this, &RoomListModel::addRoom);
for(QMatrixClient::Room* room: m_connection->roomMap().values()) {
connect(room, &QMatrixClient::Room::namesChanged, this, &RoomListModel::namesChanged);
m_rooms.append(room);
}
}
RoomListModel::~RoomListModel() {
}
QMatrixClient::Room* RoomListModel::roomAt(int row)
{
return m_rooms.at(row);
}
void RoomListModel::addRoom(QMatrixClient::Room* room)
{
qDebug() << "Adding room.";
connect(room, &QMatrixClient::Room::namesChanged, this, &RoomListModel::namesChanged );
m_rooms.append(room);
}
void RoomListModel::namesChanged(QMatrixClient::Room* room)
{
}
void RoomListModel::unreadMessagesChanged(QMatrixClient::Room* room)
{
}