summaryrefslogtreecommitdiff
path: root/src/windows
diff options
context:
space:
mode:
authorouwou <26526779+ouwou@users.noreply.github.com>2022-11-05 02:32:43 -0400
committerouwou <26526779+ouwou@users.noreply.github.com>2022-11-05 02:32:43 -0400
commitf8f9a907c931623b8ef43d7af45b10c49d41afaa (patch)
treea7d6bafcc1ffdde32428f23b1d86292efaa6ab43 /src/windows
parentcb690b6defde4851889d04a68efa4f06d7e38847 (diff)
downloadabaddon-portaudio-f8f9a907c931623b8ef43d7af45b10c49d41afaa.tar.gz
abaddon-portaudio-f8f9a907c931623b8ef43d7af45b10c49d41afaa.zip
add basic combobox to choose output device, start using spdlog
Diffstat (limited to 'src/windows')
-rw-r--r--src/windows/voicewindow.cpp12
-rw-r--r--src/windows/voicewindow.hpp3
2 files changed, 15 insertions, 0 deletions
diff --git a/src/windows/voicewindow.cpp b/src/windows/voicewindow.cpp
index 9f53638..95d1036 100644
--- a/src/windows/voicewindow.cpp
+++ b/src/windows/voicewindow.cpp
@@ -121,6 +121,17 @@ VoiceWindow::VoiceWindow(Snowflake channel_id)
m_signal_gain.emit(val / 100.0);
});
+ auto *renderer = Gtk::make_managed<Gtk::CellRendererText>();
+ m_playback_combo.set_valign(Gtk::ALIGN_END);
+ m_playback_combo.set_hexpand(true);
+ m_playback_combo.set_halign(Gtk::ALIGN_FILL);
+ m_playback_combo.set_model(Abaddon::Get().GetAudio().GetDevices().GetPlaybackDeviceModel());
+ m_playback_combo.pack_start(*renderer);
+ m_playback_combo.add_attribute(*renderer, "text", 0);
+ m_playback_combo.signal_changed().connect([this]() {
+ Abaddon::Get().GetAudio().SetPlaybackDevice(m_playback_combo.get_active());
+ });
+
m_scroll.add(m_user_list);
m_controls.add(m_mute);
m_controls.add(m_deafen);
@@ -129,6 +140,7 @@ VoiceWindow::VoiceWindow(Snowflake channel_id)
m_main.add(m_capture_gate);
m_main.add(m_capture_gain);
m_main.add(m_scroll);
+ m_main.add(m_playback_combo);
add(m_main);
show_all_children();
diff --git a/src/windows/voicewindow.hpp b/src/windows/voicewindow.hpp
index 8eb02f3..e36846c 100644
--- a/src/windows/voicewindow.hpp
+++ b/src/windows/voicewindow.hpp
@@ -6,6 +6,7 @@
#include "discord/snowflake.hpp"
#include <gtkmm/box.h>
#include <gtkmm/checkbutton.h>
+#include <gtkmm/combobox.h>
#include <gtkmm/listbox.h>
#include <gtkmm/progressbar.h>
#include <gtkmm/scale.h>
@@ -45,6 +46,8 @@ private:
Gtk::Scale m_capture_gate;
Gtk::Scale m_capture_gain;
+ Gtk::ComboBox m_playback_combo;
+
Snowflake m_channel_id;
std::unordered_map<Snowflake, VoiceWindowUserListEntry *> m_rows;