blob: a2162b49c11697bf107b1c4cf2e6f88cf46059dd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
#pragma once
#include "discord/snowflake.hpp"
#include <gtkmm/box.h>
#include <gtkmm/checkbutton.h>
#include <gtkmm/listbox.h>
#include <gtkmm/window.h>
#include <unordered_set>
class VoiceWindow : public Gtk::Window {
public:
VoiceWindow(Snowflake channel_id);
private:
void SetUsers(const std::unordered_set<Snowflake> &user_ids);
void OnMuteChanged();
void OnDeafenChanged();
Gtk::Box m_main;
Gtk::Box m_controls;
Gtk::CheckButton m_mute;
Gtk::CheckButton m_deafen;
Gtk::ListBox m_user_list;
Snowflake m_channel_id;
public:
using type_signal_mute = sigc::signal<void(bool)>;
using type_signal_deafen = sigc::signal<void(bool)>;
using type_signal_mute_user_cs = sigc::signal<void(Snowflake, bool)>;
type_signal_mute signal_mute();
type_signal_deafen signal_deafen();
type_signal_mute_user_cs signal_mute_user_cs();
private:
type_signal_mute m_signal_mute;
type_signal_deafen m_signal_deafen;
type_signal_mute_user_cs m_signal_mute_user_cs;
};
|