diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2020-08-17 02:40:03 -0400 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2020-08-17 02:40:03 -0400 |
commit | 18af78e6af49821f8c7adb5b4325d75c8bf4fd03 (patch) | |
tree | 2a2812d604fa0b00891613e868a79972159886aa /windows | |
parent | 212511e29d01af9b096e91371956b28de834bd13 (diff) | |
download | abaddon-portaudio-18af78e6af49821f8c7adb5b4325d75c8bf4fd03.tar.gz abaddon-portaudio-18af78e6af49821f8c7adb5b4325d75c8bf4fd03.zip |
connect and heartbeat
Diffstat (limited to 'windows')
-rw-r--r-- | windows/mainwindow.cpp | 31 | ||||
-rw-r--r-- | windows/mainwindow.hpp | 22 |
2 files changed, 53 insertions, 0 deletions
diff --git a/windows/mainwindow.cpp b/windows/mainwindow.cpp new file mode 100644 index 0000000..d085362 --- /dev/null +++ b/windows/mainwindow.cpp @@ -0,0 +1,31 @@ +#include "mainwindow.hpp" +#include "../abaddon.hpp" + +MainWindow::MainWindow() + : m_main_box(Gtk::ORIENTATION_VERTICAL) { + set_default_size(800, 600); + + m_menu_discord.set_label("Discord"); + m_menu_discord.set_submenu(m_menu_discord_sub); + m_menu_discord_connect.set_label("Connect"); + m_menu_discord_sub.append(m_menu_discord_connect); + m_menu_discord.set_submenu(m_menu_discord_sub); + m_menu_bar.append(m_menu_discord); + + m_menu_discord_connect.signal_activate().connect([&] { + m_abaddon->ActionConnect(); // this feels maybe not too smart + }); + + m_main_box.add(m_menu_bar); + + auto *channel_list = m_channel_list.GetRoot(); + m_main_box.add(*channel_list); + + add(m_main_box); + + show_all_children(); +} + +void MainWindow::SetAbaddon(Abaddon* ptr) { + m_abaddon = ptr; +} diff --git a/windows/mainwindow.hpp b/windows/mainwindow.hpp new file mode 100644 index 0000000..6e7ab16 --- /dev/null +++ b/windows/mainwindow.hpp @@ -0,0 +1,22 @@ +#pragma once +#include "../components/channels.hpp" +#include <gtkmm.h> + +class Abaddon; +class MainWindow : public Gtk::Window { +public: + MainWindow(); + void SetAbaddon(Abaddon *ptr); + +protected: + Gtk::Box m_main_box; + + ChannelList m_channel_list; + + Gtk::MenuBar m_menu_bar; + Gtk::MenuItem m_menu_discord; + Gtk::Menu m_menu_discord_sub; + Gtk::MenuItem m_menu_discord_connect; + + Abaddon *m_abaddon = nullptr; +}; |