settings, token entry, receive READY

This commit is contained in:
ouwou
2020-08-19 01:07:55 -04:00
parent 18af78e6af
commit 3c3fe3b9f7
15 changed files with 360 additions and 36 deletions

View File

@@ -1,14 +1,21 @@
#include "mainwindow.hpp"
#include "../abaddon.hpp"
MainWindow::MainWindow()
: m_main_box(Gtk::ORIENTATION_VERTICAL) {
MainWindow::MainWindow() {
set_default_size(800, 600);
m_main_box.set_orientation(Gtk::ORIENTATION_VERTICAL);
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_connect.set_sensitive(false);
m_menu_discord_disconnect.set_label("Disconnect");
m_menu_discord_disconnect.set_sensitive(false);
m_menu_discord_set_token.set_label("Set Token");
m_menu_discord_sub.append(m_menu_discord_connect);
m_menu_discord_sub.append(m_menu_discord_disconnect);
m_menu_discord_sub.append(m_menu_discord_set_token);
m_menu_discord.set_submenu(m_menu_discord_sub);
m_menu_bar.append(m_menu_discord);
@@ -16,6 +23,14 @@ MainWindow::MainWindow()
m_abaddon->ActionConnect(); // this feels maybe not too smart
});
m_menu_discord_disconnect.signal_activate().connect([&] {
m_abaddon->ActionDisconnect();
});
m_menu_discord_set_token.signal_activate().connect([&] {
m_abaddon->ActionSetToken();
});
m_main_box.add(m_menu_bar);
auto *channel_list = m_channel_list.GetRoot();
@@ -26,6 +41,16 @@ MainWindow::MainWindow()
show_all_children();
}
void MainWindow::SetAbaddon(Abaddon* ptr) {
void MainWindow::UpdateMenuStatus() {
// Connect
std::string token = m_abaddon->GetDiscordToken();
bool discord_active = m_abaddon->IsDiscordActive();
m_menu_discord_connect.set_sensitive(token.size() > 0 && !discord_active);
// Disconnect
m_menu_discord_disconnect.set_sensitive(discord_active);
}
void MainWindow::SetAbaddon(Abaddon *ptr) {
m_abaddon = ptr;
}