DiscordJoinRequestDialog.h 857 B

123456789101112131415161718192021222324252627282930313233343536
  1. // Copyright 2018 Dolphin Emulator Project
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #pragma once
  4. #include <ctime>
  5. #include <QDialog>
  6. class QGridLayout;
  7. class QPixmap;
  8. class DiscordJoinRequestDialog : public QDialog
  9. {
  10. Q_OBJECT
  11. public:
  12. explicit DiscordJoinRequestDialog(QWidget* parent, const std::string& id,
  13. const std::string& discord_tag, const std::string& avatar);
  14. std::time_t GetCloseTimestamp() const;
  15. static constexpr std::time_t s_max_lifetime_seconds = 30;
  16. private:
  17. void CreateLayout(const std::string& discord_tag, const QPixmap& avatar);
  18. void ConnectWidgets();
  19. void Reply(int reply);
  20. QGridLayout* m_main_layout;
  21. QPushButton* m_invite_button;
  22. QPushButton* m_decline_button;
  23. QPushButton* m_ignore_button;
  24. const std::string m_user_id;
  25. const std::time_t m_close_timestamp;
  26. };