diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2022-04-08 23:47:12 -0400 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2022-04-08 23:47:12 -0400 |
commit | 5b806a25894bf183515c64ac8099911da8f4a0c7 (patch) | |
tree | 405f58152c12e1c3d25ebe5644cac6c45d0622cc /src/components/chatwindow.hpp | |
parent | 5a13c7fef71662ca5c829a80ef57d42741e23f3a (diff) | |
download | abaddon-portaudio-5b806a25894bf183515c64ac8099911da8f4a0c7.tar.gz abaddon-portaudio-5b806a25894bf183515c64ac8099911da8f4a0c7.zip |
basic tabs system
Diffstat (limited to 'src/components/chatwindow.hpp')
-rw-r--r-- | src/components/chatwindow.hpp | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/src/components/chatwindow.hpp b/src/components/chatwindow.hpp index 0f40e88..d77afec 100644 --- a/src/components/chatwindow.hpp +++ b/src/components/chatwindow.hpp @@ -5,6 +5,10 @@ #include "discord/discord.hpp" #include "completer.hpp" +#ifdef WITH_LIBHANDY +class ChannelTabSwitcherHandy; +#endif + class ChatMessageHeader; class ChatMessageItemContainer; class ChatInput; @@ -25,11 +29,15 @@ public: void DeleteMessage(Snowflake id); // add [deleted] indicator void UpdateMessage(Snowflake id); // add [edited] indicator void AddNewHistory(const std::vector<Message> &msgs); // prepend messages - void InsertChatInput(const std::string& text); + void InsertChatInput(const std::string &text); Snowflake GetOldestListedMessage(); // oldest message that is currently in the ListBox void UpdateReactions(Snowflake id); void SetTopic(const std::string &text); +#ifdef WITH_LIBHANDY + void OpenNewTab(Snowflake id); +#endif + protected: bool m_is_replying = false; Snowflake m_replying_to; @@ -62,14 +70,18 @@ protected: RateLimitIndicator *m_rate_limit_indicator; Gtk::Box *m_meta; +#ifdef WITH_LIBHANDY + ChannelTabSwitcherHandy *m_tab_switcher; +#endif + public: - typedef sigc::signal<void, Snowflake, Snowflake> type_signal_action_message_edit; - typedef sigc::signal<void, std::string, Snowflake, Snowflake> type_signal_action_chat_submit; - typedef sigc::signal<void, Snowflake> type_signal_action_chat_load_history; - typedef sigc::signal<void, Snowflake> type_signal_action_channel_click; - typedef sigc::signal<void, Snowflake> type_signal_action_insert_mention; - typedef sigc::signal<void, Snowflake, Glib::ustring> type_signal_action_reaction_add; - typedef sigc::signal<void, Snowflake, Glib::ustring> type_signal_action_reaction_remove; + using type_signal_action_message_edit = sigc::signal<void, Snowflake, Snowflake>; + using type_signal_action_chat_submit = sigc::signal<void, std::string, Snowflake, Snowflake>; + using type_signal_action_chat_load_history = sigc::signal<void, Snowflake>; + using type_signal_action_channel_click = sigc::signal<void, Snowflake>; + using type_signal_action_insert_mention = sigc::signal<void, Snowflake>; + using type_signal_action_reaction_add = sigc::signal<void, Snowflake, Glib::ustring>; + using type_signal_action_reaction_remove = sigc::signal<void, Snowflake, Glib::ustring>; type_signal_action_message_edit signal_action_message_edit(); type_signal_action_chat_submit signal_action_chat_submit(); |