blob: 06d05f16361a65306302e0bb46de08dcb8d7c9a6 (
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
43
44
|
#pragma once
#include <gtkmm/box.h>
#include <gtkmm/eventbox.h>
#include <gtkmm/grid.h>
#include <gtkmm/image.h>
#include <gtkmm/revealer.h>
#include <gtkmm/stack.h>
#include "guildlistguilditem.hpp"
#include "discord/usersettings.hpp"
class GuildListGuildItem;
class GuildListFolderButton : public Gtk::Grid {
public:
GuildListFolderButton();
void SetGuilds(const std::vector<Snowflake> &guild_ids);
private:
Gtk::Image m_images[2][2];
};
class GuildListFolderItem : public Gtk::VBox {
public:
GuildListFolderItem(const UserSettingsGuildFoldersEntry &folder);
void AddGuildWidget(Gtk::Widget *widget);
private:
void OnMessageCreate(const Message &msg);
void OnMessageAck(const MessageAckData &data);
void CheckUnreadStatus();
std::vector<Snowflake> m_guild_ids;
Gtk::Stack m_stack;
GuildListFolderButton m_grid;
Gtk::Image m_icon;
Gtk::EventBox m_ev;
Gtk::Image m_image;
Gtk::Revealer m_revealer;
Gtk::VBox m_box;
};
|