ladybird/Applications/IRCClient/IRCAppWindow.h
Andreas Kling fa69b9fbb7 IRCClient: Switch to using an HtmlView for the IRC window contents :^)
This seemed like a perfect fit for LibHTML. We can now style the IRC
channels and queries however we like with the power of HTML and CSS.

This patch doesn't do much in the way of styling, it just gets the
basic mechanism into place.
2019-10-28 20:53:19 +01:00

39 lines
931 B
C++

#pragma once
#include "IRCClient.h"
#include "IRCWindow.h"
#include <LibGUI/GWidget.h>
#include <LibGUI/GWindow.h>
class GAction;
class GStackWidget;
class GTableView;
class IRCAppWindow : public GWindow {
public:
IRCAppWindow();
virtual ~IRCAppWindow() override;
static IRCAppWindow& the();
void set_active_window(IRCWindow&);
private:
void setup_client();
void setup_actions();
void setup_menus();
void setup_widgets();
void update_title();
void update_part_action();
IRCWindow& create_window(void* owner, IRCWindow::Type, const String& name);
IRCClient m_client;
RefPtr<GStackWidget> m_container;
RefPtr<GTableView> m_window_list;
RefPtr<GAction> m_join_action;
RefPtr<GAction> m_part_action;
RefPtr<GAction> m_whois_action;
RefPtr<GAction> m_open_query_action;
RefPtr<GAction> m_close_query_action;
RefPtr<GAction> m_change_nick_action;
};