client_room.h 957 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. // Copyright 2017 Citra Emulator Project
  2. // Licensed under GPLv2 or any later version
  3. // Refer to the license.txt file included.
  4. #pragma once
  5. #include "yuzu/multiplayer/chat_room.h"
  6. namespace Ui {
  7. class ClientRoom;
  8. }
  9. class ClientRoomWindow : public QDialog {
  10. Q_OBJECT
  11. public:
  12. explicit ClientRoomWindow(QWidget* parent, Network::RoomNetwork& room_network_);
  13. ~ClientRoomWindow();
  14. void RetranslateUi();
  15. void UpdateIconDisplay();
  16. public slots:
  17. void OnRoomUpdate(const Network::RoomInformation&);
  18. void OnStateChange(const Network::RoomMember::State&);
  19. signals:
  20. void RoomInformationChanged(const Network::RoomInformation&);
  21. void StateChanged(const Network::RoomMember::State&);
  22. void ShowNotification();
  23. private:
  24. void Disconnect();
  25. void UpdateView();
  26. void SetModPerms(bool is_mod);
  27. QStandardItemModel* player_list;
  28. std::unique_ptr<Ui::ClientRoom> ui;
  29. Network::RoomNetwork& room_network;
  30. };