diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2020-09-05 00:55:06 -0400 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2020-09-05 00:55:06 -0400 |
commit | 8941d5f204fdfc60c33f26f50aedc603bf091e6f (patch) | |
tree | b9e19ee17d4c97cd294632907c209072faf73802 /components/memberlist.hpp | |
parent | 153f55668192a235c1874b332a665de6d5883306 (diff) | |
download | abaddon-portaudio-8941d5f204fdfc60c33f26f50aedc603bf091e6f.tar.gz abaddon-portaudio-8941d5f204fdfc60c33f26f50aedc603bf091e6f.zip |
lazy loading, member list, some other shit
Diffstat (limited to 'components/memberlist.hpp')
-rw-r--r-- | components/memberlist.hpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/components/memberlist.hpp b/components/memberlist.hpp index 5434324..cce7bcd 100644 --- a/components/memberlist.hpp +++ b/components/memberlist.hpp @@ -1,11 +1,29 @@ #pragma once #include <gtkmm.h> +#include <mutex> +#include "../discord/discord.hpp" +class Abaddon; class MemberList { public: MemberList(); Gtk::Widget *GetRoot() const; + void UpdateMemberList(); + void SetActiveChannel(Snowflake id); + + void SetAbaddon(Abaddon *ptr); + private: - Gtk::Box *m_main; + void UpdateMemberListInternal(); + + std::mutex m_mutex; + Glib::Dispatcher m_update_member_list_dispatcher; + + Gtk::ScrolledWindow *m_main; + Gtk::ListBox *m_listbox; + + Snowflake m_guild_id; + Snowflake m_chan_id; + Abaddon *m_abaddon = nullptr; }; |