summary refs log tree commit diff
path: root/src/MainWindow.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/MainWindow.cc')
-rw-r--r--src/MainWindow.cc22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/MainWindow.cc b/src/MainWindow.cc

index c59ce2d9..66f956a5 100644 --- a/src/MainWindow.cc +++ b/src/MainWindow.cc
@@ -41,6 +41,7 @@ #include "dialogs/JoinRoom.h" #include "dialogs/LeaveRoom.h" #include "dialogs/Logout.h" +#include "dialogs/RoomSettings.hpp" MainWindow *MainWindow::instance_ = nullptr; @@ -263,6 +264,27 @@ MainWindow::hasActiveUser() } void +MainWindow::openRoomSettings(const QString &room_id) +{ + const auto roomToSearch = room_id.isEmpty() ? chat_page_->currentRoom() : ""; + + qDebug() << "room settings" << roomToSearch; + + roomSettingsDialog_ = QSharedPointer<dialogs::RoomSettings>( + new dialogs::RoomSettings(roomToSearch, chat_page_->cache(), this)); + + connect(roomSettingsDialog_.data(), &dialogs::RoomSettings::closing, this, [this]() { + roomSettingsModal_->hide(); + }); + + roomSettingsModal_ = + QSharedPointer<OverlayModal>(new OverlayModal(this, roomSettingsDialog_.data())); + roomSettingsModal_->setColor(QColor(30, 30, 30, 170)); + + roomSettingsModal_->show(); +} + +void MainWindow::openLeaveRoomDialog(const QString &room_id) { auto roomToLeave = room_id.isEmpty() ? chat_page_->currentRoom() : room_id;