diff options
author | JA <jagw40k@free.fr> | 2024-04-26 17:38:54 +0200 |
---|---|---|
committer | JA <jagw40k@free.fr> | 2024-04-26 17:38:54 +0200 |
commit | d600f47de1a1677f796440d531c8fada32efbb25 (patch) | |
tree | ce018eff40a6ff3df8a1ff62fa259ca5525a9b85 /src | |
parent | 64881e3db00827207326df4afafc91ea2caba1c7 (diff) |
Split pavucontrol.glade into separate .ui files
and some cleanup
Diffstat (limited to 'src')
-rw-r--r-- | src/cardwidget.cc | 2 | ||||
-rw-r--r-- | src/cardwidget.ui | 104 | ||||
-rw-r--r-- | src/channelwidget.cc | 4 | ||||
-rw-r--r-- | src/channelwidget.ui | 42 | ||||
-rw-r--r-- | src/devicewidget.cc | 2 | ||||
-rw-r--r-- | src/devicewidget.ui | 260 | ||||
-rw-r--r-- | src/mainwindow.cc | 7 | ||||
-rw-r--r-- | src/mainwindow.ui | 467 | ||||
-rw-r--r-- | src/pavucontrol.glade | 1058 | ||||
-rw-r--r-- | src/renamedialog.ui | 56 | ||||
-rw-r--r-- | src/resources.gresource.xml | 7 | ||||
-rw-r--r-- | src/rolewidget.cc | 2 | ||||
-rw-r--r-- | src/sinkinputwidget.cc | 2 | ||||
-rw-r--r-- | src/sinkwidget.cc | 2 | ||||
-rw-r--r-- | src/sourceoutputwidget.cc | 2 | ||||
-rw-r--r-- | src/sourcewidget.cc | 2 | ||||
-rw-r--r-- | src/streamwidget.ui | 114 |
17 files changed, 1058 insertions, 1075 deletions
diff --git a/src/cardwidget.cc b/src/cardwidget.cc index f2aa618..05e0d0b 100644 --- a/src/cardwidget.cc +++ b/src/cardwidget.cc @@ -60,7 +60,7 @@ CardWidget::CardWidget(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Builder> CardWidget* CardWidget::create() { CardWidget* w; - Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "cardWidget"); + Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/cardwidget.ui", "cardWidget"); w = Gtk::Builder::get_widget_derived<CardWidget>(x, "cardWidget"); w->reference(); return w; diff --git a/src/cardwidget.ui b/src/cardwidget.ui new file mode 100644 index 0000000..effd2e3 --- /dev/null +++ b/src/cardwidget.ui @@ -0,0 +1,104 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <requires lib="gtk" version="4.0"/> + <object class="GtkBox" id="cardWidget"> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="valign">center</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <property name="margin-start">12</property> + <property name="margin-top">12</property> + <property name="margin-end">12</property> + <property name="margin-bottom">12</property> + <child> + <object class="GtkBox"> + <property name="valign">center</property> + <property name="spacing">6</property> + <child> + <object class="GtkImage" id="cardIconImage"> + <property name="icon_name">gtk-missing-image</property> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="hexpand">1</property> + <child> + <object class="GtkLabel" id="cardNameLabel"> + <property name="hexpand">1</property> + <property name="label" translatable="1">Card Name</property> + <property name="use_markup">1</property> + <property name="ellipsize">middle</property> + <property name="xalign">0</property> + </object> + </child> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="spacing">3</property> + <child> + <object class="GtkToggleButton" id="profileLockToggleButton"> + <property name="halign">center</property> + <property name="focusable">1</property> + <property name="tooltip_text" translatable="1">Lock card to this profile</property> + <property name="has-frame">0</property> + <property name="active">1</property> + <child> + <object class="GtkImage"> + <property name="icon_name">changes-prevent</property> + <property name="icon_size">normal</property> + </object> + </child> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="valign">center</property> + <property name="spacing">6</property> + <child> + <object class="GtkLabel"> + <property name="label" translatable="1"><b>Profile:</b></property> + <property name="use_markup">1</property> + <property name="xalign">0</property> + </object> + </child> + <child> + <object class="GtkComboBox" id="profileList"> + <property name="hexpand">1</property> + </object> + </child> + <child> + <object class="GtkBox" id="codecBox"> + <property name="halign">center</property> + <property name="spacing">6</property> + <child> + <object class="GtkLabel"> + <property name="label" translatable="1"><b>Codec:</b></property> + <property name="use_markup">1</property> + <property name="xalign">0</property> + </object> + </child> + <child> + <object class="GtkComboBox" id="codecList"> + <property name="hexpand">1</property> + </object> + </child> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkSeparator"> + <property name="valign">center</property> + </object> + </child> + </object> +</interface> diff --git a/src/channelwidget.cc b/src/channelwidget.cc index 499bd46..746e8df 100644 --- a/src/channelwidget.cc +++ b/src/channelwidget.cc @@ -49,9 +49,7 @@ ChannelWidget::ChannelWidget(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Bu ChannelWidget* ChannelWidget::createOne(MinimalStreamWidget *owner, int channelIndex, pa_channel_position channelPosition, bool can_decibel) { ChannelWidget* w; - Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create(); - x->add_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "adjustment1"); - x->add_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "channelWidget"); + Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/channelwidget.ui", "channelWidget"); w = Gtk::Builder::get_widget_derived<ChannelWidget>(x, "channelWidget"); w->reference(); diff --git a/src/channelwidget.ui b/src/channelwidget.ui new file mode 100644 index 0000000..66e6775 --- /dev/null +++ b/src/channelwidget.ui @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <requires lib="gtk" version="4.0"/> + <object class="GtkBox" id="channelWidget"> + <property name="spacing">6</property> + <child> + <object class="GtkLabel" id="channelLabel"> + <property name="halign">center</property> + <property name="label" translatable="1"><b>left-front</b></property> + <property name="use_markup">1</property> + <property name="xalign">1</property> + <property name="yalign">0</property> + </object> + </child> + <child> + <object class="GtkScale" id="volumeScale"> + <property name="hexpand">1</property> + <property name="focusable">1</property> + <property name="adjustment"> + <object class="GtkAdjustment"> + <property name="upper">100</property> + <property name="step_increment">5</property> + </object> + </property> + <property name="digits">0</property> + </object> + </child> + <child> + <object class="GtkLabel" id="volumeLabel"> + <property name="halign">center</property> + <property name="margin_start">8</property> + <property name="margin_end">8</property> + <property name="label" translatable="1"><small>50%</small></property> + <property name="use_markup">1</property> + <property name="justify">right</property> + <property name="width_chars">12</property> + <property name="xalign">1</property> + <property name="yalign">0</property> + </object> + </child> + </object> +</interface> diff --git a/src/devicewidget.cc b/src/devicewidget.cc index d7212d8..ba2821d 100644 --- a/src/devicewidget.cc +++ b/src/devicewidget.cc @@ -261,7 +261,7 @@ void DeviceWidget::openRenamePopup(const Glib::VariantBase& parameter) { return; } - Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "renameDialog"); + Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/renamedialog.ui", "renameDialog"); gchar *key = g_markup_printf_escaped("%s:%s", mDeviceType.c_str(), name.c_str()); RenameWindow* renameDialog = Gtk::Builder::get_widget_derived<RenameWindow>(x, "renameDialog", description.c_str(), key); renameDialog->set_transient_for(*mpMainWindow); diff --git a/src/devicewidget.ui b/src/devicewidget.ui new file mode 100644 index 0000000..7d23b4c --- /dev/null +++ b/src/devicewidget.ui @@ -0,0 +1,260 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <object class="GtkBox" id="deviceWidget"> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="valign">center</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <property name="margin-start">12</property> + <property name="margin-top">12</property> + <property name="margin-end">12</property> + <property name="margin-bottom">12</property> + <child> + <object class="GtkBox"> + <property name="valign">center</property> + <property name="spacing">6</property> + <child> + <object class="GtkImage" id="deviceIconImage"> + <property name="icon_name">gtk-missing-image</property> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="hexpand">1</property> + <child> + <object class="GtkLabel" id="deviceBoldNameLabel"> + <property name="use_markup">1</property> + </object> + </child> + <child> + <object class="GtkLabel" id="deviceNameLabel"> + <property name="label" translatable="1">Device Title</property> + <property name="use_markup">1</property> + <property name="ellipsize">end</property> + <property name="xalign">0</property> + </object> + </child> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="spacing">3</property> + <child> + <object class="GtkToggleButton" id="deviceMuteToggleButton"> + <property name="halign">center</property> + <property name="focusable">1</property> + <property name="tooltip_text" translatable="1">Mute audio</property> + <property name="has-frame">0</property> + <child> + <object class="GtkImage"> + <property name="icon_name">audio-volume-muted</property> + <property name="icon_size">normal</property> + </object> + </child> + </object> + </child> + <child> + <object class="GtkToggleButton" id="deviceLockToggleButton"> + <property name="halign">center</property> + <property name="focusable">1</property> + <property name="tooltip_text" translatable="1">Lock channels together</property> + <property name="has-frame">0</property> + <property name="active">1</property> + <child> + <object class="GtkImage"> + <property name="icon_name">changes-prevent</property> + <property name="icon_size">normal</property> + </object> + </child> + </object> + </child> + <child> + <object class="GtkToggleButton" id="defaultToggleButton"> + <property name="halign">center</property> + <property name="focusable">1</property> + <property name="tooltip_text" translatable="1">Set as default</property> + <child> + <object class="GtkImage"> + <property name="icon_name">emblem-default</property> + </object> + </child> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkBox" id="portSelect"> + <property name="valign">center</property> + <property name="spacing">6</property> + <child> + <object class="GtkLabel"> + <property name="label" translatable="1"><b>Port:</b></property> + <property name="use_markup">1</property> + <property name="xalign">0</property> + </object> + </child> + <child> + <object class="GtkComboBox" id="portList"> + <property name="hexpand">1</property> + </object> + </child> + </object> + </child> + <child> + <object class="GtkBox" id="deviceChannelsVBox"> + <property name="valign">center</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + <child> + <object class="GtkExpander" id="advancedOptions"> + <property name="valign">center</property> + <property name="visible">0</property> + <property name="focusable">1</property> + <child> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkGrid" id="encodingSelect"> + <property name="valign">center</property> + <property name="visible">0</property> + <property name="row_homogeneous">1</property> + <property name="column_homogeneous">1</property> + <child> + <object class="GtkCheckButton" id="encodingFormatPCM"> + <property name="label" translatable="1">PCM</property> + <property name="sensitive">0</property> + <property name="focusable">1</property> + <property name="active">1</property> + <layout> + <property name="column">0</property> + <property name="row">0</property> + </layout> + </object> + </child> + <child> + <object class="GtkCheckButton" id="encodingFormatAC3"> + <property name="label" translatable="1">AC-3</property> + <property name="focusable">1</property> + <layout> + <property name="column">1</property> + <property name="row">0</property> + </layout> + </object> + </child> + <child> + <object class="GtkCheckButton" id="encodingFormatDTS"> + <property name="label" translatable="1">DTS</property> + <property name="focusable">1</property> + <layout> + <property name="column">2</property> + <property name="row">0</property> + </layout> + </object> + </child> + <child> + <object class="GtkCheckButton" id="encodingFormatEAC3"> + <property name="label" translatable="1">E-AC-3</property> + <property name="focusable">1</property> + <layout> + <property name="column">0</property> + <property name="row">1</property> + </layout> + </object> + </child> + <child> + <object class="GtkCheckButton" id="encodingFormatMPEG"> + <property name="label" translatable="1">MPEG</property> + <property name="focusable">1</property> + <layout> + <property name="column">1</property> + <property name="row">1</property> + </layout> + </object> + </child> + <child> + <object class="GtkCheckButton" id="encodingFormatAAC"> + <property name="label" translatable="1">AAC</property> + <property name="focusable">1</property> + <layout> + <property name="column">2</property> + <property name="row">1</property> + </layout> + </object> + </child> + <child> + <object class="GtkCheckButton" id="encodingFormatTRUEHD"> + <property name="label" translatable="1">TrueHD</property> + <property name="focusable">1</property> + <layout> + <property name="column">0</property> + <property name="row">2</property> + </layout> + </object> + </child> + <child> + <object class="GtkCheckButton" id="encodingFormatDTSHD"> + <property name="label" translatable="1">DTS-HD</property> + <property name="focusable">1</property> + <layout> + <property name="column">1</property> + <property name="row">2</property> + </layout> + </object> + </child> + </object> + </child> + <child> + <object class="GtkBox" id="offsetSelect"> + <property name="valign">center</property> + <property name="spacing">6</property> + <child> + <object class="GtkLabel"> + <property name="label" translatable="1"><b>Latency offset:</b></property> + <property name="use_markup">1</property> + <property name="xalign">0</property> + </object> + </child> + <child> + <object class="GtkSpinButton" id="offsetButton"> + <property name="hexpand">1</property> + <property name="focusable">1</property> + </object> + </child> + <child> + <object class="GtkLabel"> + <property name="label" translatable="1">ms</property> + <property name="use_markup">1</property> + </object> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="advancedLabel"> + <property name="label" translatable="1">Advanced</property> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkSeparator"> + <property name="valign">center</property> + </object> + </child> + </object> +</interface> diff --git a/src/mainwindow.cc b/src/mainwindow.cc index e9c2518..dab8c1b 100644 --- a/src/mainwindow.cc +++ b/src/mainwindow.cc @@ -181,12 +181,7 @@ MainWindow::MainWindow(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Builder> MainWindow* MainWindow::create(bool maximize) { MainWindow* w; - Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create(); - x->add_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "liststore1"); - x->add_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "liststore2"); - x->add_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "liststore3"); - x->add_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "liststore4"); - x->add_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "mainWindow"); + Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/mainwindow.ui", "mainWindow"); w = Gtk::Builder::get_widget_derived<MainWindow>(x, "mainWindow"); w->get_style_context()->add_class("pavucontrol-window"); if (w && maximize) diff --git a/src/mainwindow.ui b/src/mainwindow.ui new file mode 100644 index 0000000..d6e92b7 --- /dev/null +++ b/src/mainwindow.ui @@ -0,0 +1,467 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <requires lib="gtk" version="4.0"/> + <object class="GtkWindow" id="mainWindow"> + <property name="title" translatable="1">Volume Control</property> + <property name="default_width">500</property> + <property name="default_height">400</property> + <property name="icon_name">multimedia-volume-control</property> + <child> + <placeholder/> + </child> + <property name="child"> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <property name="spacing">12</property> + <child> + <object class="GtkNotebook" id="notebook"> + <property name="vexpand">1</property> + <property name="focusable">1</property> + <property name="show_border">0</property> + <property name="scrollable">1</property> + <child> + <object class="GtkNotebookPage"> + <property name="child"> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow"> + <property name="vexpand">1</property> + <property name="focusable">1</property> + <property name="child"> + <object class="GtkViewport"> + <property name="child"> + <object class="GtkBox" id="streamsVBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="noStreamsLabel"> + <property name="vexpand">1</property> + <property name="sensitive">0</property> + <property name="label" translatable="1"><i>No application is currently playing audio.</i></property> + <property name="use_markup">1</property> + </object> + </child> + </object> + </property> + </object> + </property> + </object> + </child> + <child> + <object class="GtkSeparator"> + <property name="valign">center</property> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="spacing">6</property> + <property name="margin-top">12</property> + <property name="margin-bottom">12</property> + <property name="margin-start">12</property> + <property name="margin-end">12</property> + <property name="valign">center</property> + <child> + <object class="GtkLabel"> + <property name="hexpand">1</property> + <property name="label" translatable="1"><b>_Show:</b></property> + <property name="use_markup">1</property> + <property name="use_underline">1</property> + <property name="xalign">1</property> + </object> + </child> + <child> + <object class="GtkComboBox" id="sinkInputTypeComboBox"> + <property name="hexpand">1</property> + <property name="model"> + <object class="GtkListStore"> + <columns> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">All Streams</col> + </row> + <row> + <col id="0" translatable="yes">Applications</col> + </row> + <row> + <col id="0" translatable="yes">Virtual Streams</col> + </row> + </data> + </object> + </property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + </child> + </object> + </child> + </object> + </property> + <property name="tab"> + <object class="GtkLabel"> + <property name="label" translatable="1">_Playback</property> + <property name="use_underline">1</property> + </object> + </property> + </object> + </child> + <child> + <object class="GtkNotebookPage"> + <property name="child"> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow"> + <property name="vexpand">1</property> + <property name="focusable">1</property> + <property name="child"> + <object class="GtkViewport"> + <property name="child"> + <object class="GtkBox" id="recsVBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="noRecsLabel"> + <property name="vexpand">1</property> + <property name="sensitive">0</property> + <property name="label" translatable="1"><i>No application is currently recording audio.</i></property> + <property name="use_markup">1</property> + </object> + </child> + </object> + </property> + </object> + </property> + </object> + </child> + <child> + <object class="GtkSeparator"> + <property name="valign">center</property> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="spacing">6</property> + <property name="margin-top">12</property> + <property name="margin-bottom">12</property> + <property name="margin-start">12</property> + <property name="margin-end">12</property> + <property name="valign">center</property> + <child> + <object class="GtkLabel"> + <property name="hexpand">1</property> + <property name="label" translatable="1"><b>_Show:</b></property> + <property name="use_markup">1</property> + <property name="use_underline">1</property> + <property name="xalign">1</property> + </object> + </child> + <child> + <object class="GtkComboBox" id="sourceOutputTypeComboBox"> + <property name="hexpand">1</property> + <property name="model"> + <object class="GtkListStore"> + <columns> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">All Streams</col> + </row> + <row> + <col id="0" translatable="yes">Applications</col> + </row> + <row> + <col id="0" translatable="yes">Virtual Streams</col> + </row> + </data> + </object> + </property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + </child> + </object> + </child> + </object> + </property> + <property name="tab"> + <object class="GtkLabel"> + <property name="label" translatable="1">_Recording</property> + <property name="use_underline">1</property> + </object> + </property> + </object> + </child> + <child> + <object class="GtkNotebookPage"> + <property name="child"> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow"> + <property name="vexpand">1</property> + <property name="focusable">1</property> + <property name="child"> + <object class="GtkViewport"> + <property name="child"> + <object class="GtkBox" id="sinksVBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="noSinksLabel"> + <property name="vexpand">1</property> + <property name="sensitive">0</property> + <property name="label" translatable="1"><i>No output devices available</i></property> + <property name="use_markup">1</property> + </object> + </child> + </object> + </property> + </object> + </property> + </object> + </child> + <child> + <object class="GtkSeparator"> + <property name="valign">center</property> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="spacing">6</property> + <property name="margin-top">12</property> + <property name="margin-bottom">12</property> + <property name="margin-start">12</property> + <property name="margin-end">12</property> + <property name="valign">center</property> + <child> + <object class="GtkLabel"> + <property name="hexpand">1</property> + <property name="label" translatable="1"><b>S_how:</b></property> + <property name="use_markup">1</property> + <property name="use_underline">1</property> + <property name="mnemonic_widget">sinkTypeComboBox</property> + <property name="xalign">1</property> + </object> + </child> + <child> + <object class="GtkComboBox" id="sinkTypeComboBox"> + <property name="hexpand">1</property> + <property name="model"> + <object class="GtkListStore"> + <columns> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">All Output Devices</col> + </row> + <row> + <col id="0" translatable="yes">Hardware Output Devices</col> + </row> + <row> + <col id="0" translatable="yes">Virtual Output Devices</col> + </row> + </data> + </object> + </property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + </child> + </object> + </child> + </object> + </property> + <property name="tab"> + <object class="GtkLabel"> + <property name="label" translatable="1">_Output Devices</property> + <property name="use_underline">1</property> + </object> + </property> + </object> + </child> + <child> + <object class="GtkNotebookPage"> + <property name="child"> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow"> + <property name="vexpand">1</property> + <property name="focusable">1</property> + <property name="child"> + <object class="GtkViewport"> + <property name="child"> + <object class="GtkBox" id="sourcesVBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="noSourcesLabel"> + <property name="vexpand">1</property> + <property name="sensitive">0</property> + <property name="label" translatable="1"><i>No input devices available</i></property> + <property name="use_markup">1</property> + </object> + </child> + </object> + </property> + </object> + </property> + </object> + </child> + <child> + <object class="GtkSeparator"> + <property name="valign">center</property> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="spacing">6</property> + <property name="margin-top">12</property> + <property name="margin-bottom">12</property> + <property name="margin-start">12</property> + <property name="margin-end">12</property> + <property name="valign">center</property> + <child> + <object class="GtkLabel"> + <property name="hexpand">1</property> + <property name="label" translatable="1"><b>Sho_w:</b></property> + <property name="use_markup">1</property> + <property name="use_underline">1</property> + <property name="mnemonic_widget">sourceTypeComboBox</property> + <property name="xalign">1</property> + </object> + </child> + <child> + <object class="GtkComboBox" id="sourceTypeComboBox"> + <property name="hexpand">1</property> + <property name="model"> + <object class="GtkListStore"> + <columns> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">All Input Devices</col> + </row> + <row> + <col id="0" translatable="yes">All Except Monitors</col> + </row> + <row> + <col id="0" translatable="yes">Hardware Input Devices</col> + </row> + <row> + <col id="0" translatable="yes">Virtual Input Devices</col> + </row> + <row> + <col id="0" translatable="yes">Monitors</col> + </row> + </data> + </object> + </property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + </child> + </object> + </child> + </object> + </property> + <property name="tab"> + <object class="GtkLabel"> + <property name="label" translatable="1">_Input Devices</property> + <property name="use_underline">1</property> + </object> + </property> + </object> + </child> + <child> + <object class="GtkNotebookPage"> + <property name="child"> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow"> + <property name="vexpand">1</property> + <property name="focusable">1</property> + <property name="child"> + <object class="GtkViewport"> + <property name="child"> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox" id="cardsVBox"> + <property name="vexpand">1</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="noCardsLabel"> + <property name="vexpand">1</property> + <property name="sensitive">0</property> + <property name="label" translatable="1"><i>No cards available for configuration</i></property> + <property name="use_markup">1</property> + </object> + </child> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <property name="vexpand-set">1</property> + <child> + <object class="GtkSeparator"/> + </child> + <child> + <object class="GtkCheckButton" id="showVolumeMetersCheckButton"> + <property name="label" translatable="1">Show volume meters</property> + <property name="focusable">1</property> + <property name="active">1</property> + </object> + </child> + </object> + </child> + </object> + </property> + </object> + </property> + </object> + </child> + </object> + </property> + <property name="tab"> + <object class="GtkLabel"> + <property name="label" translatable="1">_Configuration</property> + <property name="use_underline">1</property> + </object> + </property> + </object> + </child> + </object> + </child> + <child> + <object class="GtkLabel" id="connectingLabel"> + <property name="vexpand">1</property> + <property name="visible">0</property> + <property name="label">...</property> + <property name="use_markup">1</property> + </object> + </child> + </object> + </property> + </object> +</interface> diff --git a/src/pavucontrol.glade b/src/pavucontrol.glade deleted file mode 100644 index 5f83859..0000000 --- a/src/pavucontrol.glade +++ /dev/null @@ -1,1058 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <requires lib="gtk" version="4.0"/> - <object class="GtkAdjustment" id="adjustment1"> - <property name="upper">100</property> - <property name="value">44.2408370972</property> - <property name="step_increment">5</property> - </object> - <object class="GtkWindow" id="channelWindow"> - <property name="visible">1</property> - <property name="title" translatable="1">window2</property> - <child> - <placeholder/> - </child> - <property name="child"> - <object class="GtkBox" id="channelWidget"> - <property name="spacing">6</property> - <child> - <object class="GtkLabel" id="channelLabel"> - <property name="halign">center</property> - <property name="label" translatable="1"><b>left-front</b></property> - <property name="use_markup">1</property> - <property name="xalign">1</property> - <property name="yalign">0</property> - </object> - </child> - <child> - <object class="GtkScale" id="volumeScale"> - <property name="hexpand">1</property> - <property name="focusable">1</property> - <property name="adjustment">adjustment1</property> - <property name="digits">0</property> - </object> - </child> - <child> - <object class="GtkLabel" id="volumeLabel"> - <property name="halign">center</property> - <property name="margin_start">8</property> - <property name="margin_end">8</property> - <property name="label" translatable="1"><small>50%</small></property> - <property name="use_markup">1</property> - <property name="justify">right</property> - <property name="width_chars">12</property> - <property name="xalign">1</property> - <property name="yalign">0</property> - </object> - </child> - </object> - </property> - </object> - <object class="GtkWindow" id="cardWindow"> - <property name="visible">1</property> - <property name="title" translatable="1">window1</property> - <child> - <placeholder/> - </child> - <property name="child"> - <object class="GtkBox" id="cardWidget"> - <property name="orientation">vertical</property> - <child> - <object class="GtkBox"> - <property name="valign">center</property> - <property name="orientation">vertical</property> - <property name="spacing">6</property> - <property name="margin-start">12</property> - <property name="margin-top">12</property> - <property name="margin-end">12</property> - <property name="margin-bottom">12</property> - <child> - <object class="GtkBox"> - <property name="valign">center</property> - <property name="spacing">6</property> - <child> - <object class="GtkImage" id="cardIconImage"> - <property name="icon_name">gtk-missing-image</property> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="hexpand">1</property> - <child> - <object class="GtkLabel" id="cardNameLabel"> - <property name="hexpand">1</property> - <property name="label" translatable="1">Card Name</property> - <property name="use_markup">1</property> - <property name="ellipsize">middle</property> - <property name="xalign">0</property> - </object> - </child> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="spacing">3</property> - <child> - <object class="GtkToggleButton" id="profileLockToggleButton"> - <property name="halign">center</property> - <property name="focusable">1</property> - <property name="tooltip_text" translatable="1">Lock card to this profile</property> - <property name="has-frame">0</property> - <property name="active">1</property> - <child> - <object class="GtkImage"> - <property name="icon_name">changes-prevent</property> - <property name="icon_size">normal</property> - </object> - </child> - </object> - </child> - </object> - </child> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="valign">center</property> - <property name="spacing">6</property> - <child> - <object class="GtkLabel"> - <property name="label" translatable="1"><b>Profile:</b></property> - <property name="use_markup">1</property> - <property name="xalign">0</property> - </object> - </child> - <child> - <object class="GtkComboBox" id="profileList"> - <property name="hexpand">1</property> - </object> - </child> - <child> - <object class="GtkBox" id="codecBox"> - <property name="halign">center</property> - <property name="spacing">6</property> - <child> - <object class="GtkLabel"> - <property name="label" translatable="1"><b>Codec:</b></property> - <property name="use_markup">1</property> - <property name="xalign">0</property> - </object> - </child> - <child> - <object class="GtkComboBox" id="codecList"> - <property name="hexpand">1</property> - </object> - </child> - </object> - </child> - </object> - </child> - </object> - </child> - <child> - <object class="GtkSeparator"> - <property name="valign">center</property> - </object> - </child> - </object> - </property> - </object> - <object class="GtkWindow" id="deviceWindow"> - <property name="visible">1</property> - <property name="title" translatable="1">window1</property> - <child> - <placeholder/> - </child> - <property name="child"> - <object class="GtkBox" id="deviceWidget"> - <property name="orientation">vertical</property> - <child> - <object class="GtkBox"> - <property name="valign">center</property> - <property name="orientation">vertical</property> - <property name="spacing">6</property> - <property name="margin-start">12</property> - <property name="margin-top">12</property> - <property name="margin-end">12</property> - <property name="margin-bottom">12</property> - <child> - <object class="GtkBox"> - <property name="valign">center</property> - <property name="spacing">6</property> - <child> - <object class="GtkImage" id="deviceIconImage"> - <property name="icon_name">gtk-missing-image</property> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="hexpand">1</property> - <child> - <object class="GtkLabel" id="deviceBoldNameLabel"> - <property name="use_markup">1</property> - </object> - </child> - <child> - <object class="GtkLabel" id="deviceNameLabel"> - <property name="label" translatable="1">Device Title</property> - <property name="use_markup">1</property> - <property name="ellipsize">end</property> - <property name="xalign">0</property> - </object> - </child> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="spacing">3</property> - <child> - <object class="GtkToggleButton" id="deviceMuteToggleButton"> - <property name="halign">center</property> - <property name="focusable">1</property> - <property name="tooltip_text" translatable="1">Mute audio</property> - <property name="has-frame">0</property> - <child> - <object class="GtkImage"> - <property name="icon_name">audio-volume-muted</property> - <property name="icon_size">normal</property> - </object> - </child> - </object> - </child> - <child> - <object class="GtkToggleButton" id="deviceLockToggleButton"> - <property name="halign">center</property> - <property name="focusable">1</property> - <property name="tooltip_text" translatable="1">Lock channels together</property> - <property name="has-frame">0</property> - <property name="active">1</property> - <child> - <object class="GtkImage"> - <property name="icon_name">changes-prevent</property> - <property name="icon_size">normal</property> - </object> - </child> - </object> - </child> - <child> - <object class="GtkToggleButton" id="defaultToggleButton"> - <property name="halign">center</property> - <property name="focusable">1</property> - <property name="tooltip_text" translatable="1">Set as default</property> - <child> - <object class="GtkImage"> - <property name="icon_name">emblem-default</property> - </object> - </child> - </object> - </child> - </object> - </child> - </object> - </child> - <child> - <object class="GtkBox" id="portSelect"> - <property name="valign">center</property> - <property name="spacing">6</property> - <child> - <object class="GtkLabel"> - <property name="label" translatable="1"><b>Port:</b></property> - <property name="use_markup">1</property> - <property name="xalign">0</property> - </object> - </child> - <child> - <object class="GtkComboBox" id="portList"> - <property name="hexpand">1</property> - </object> - </child> - </object> - </child> - <child> - <object class="GtkBox" id="deviceChannelsVBox"> - <property name="valign">center</property> - <property name="orientation">vertical</property> - <property name="spacing">6</property> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - </object> - </child> - <child> - <object class="GtkExpander" id="advancedOptions"> - <property name="valign">center</property> - <property name="visible">0</property> - <property name="focusable">1</property> - <child> - <object class="GtkBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkGrid" id="encodingSelect"> - <property name="valign">center</property> - <property name="visible">0</property> - <property name="row_homogeneous">1</property> - <property name="column_homogeneous">1</property> - <child> - <object class="GtkCheckButton" id="encodingFormatPCM"> - <property name="label" translatable="1">PCM</property> - <property name="sensitive">0</property> - <property name="focusable">1</property> - <property name="active">1</property> - <layout> - <property name="column">0</property> - <property name="row">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkCheckButton" id="encodingFormatAC3"> - <property name="label" translatable="1">AC-3</property> - <property name="focusable">1</property> - <layout> - <property name="column">1</property> - <property name="row">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkCheckButton" id="encodingFormatDTS"> - <property name="label" translatable="1">DTS</property> - <property name="focusable">1</property> - <layout> - <property name="column">2</property> - <property name="row">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkCheckButton" id="encodingFormatEAC3"> - <property name="label" translatable="1">E-AC-3</property> - <property name="focusable">1</property> - <layout> - <property name="column">0</property> - <property name="row">1</property> - </layout> - </object> - </child> - <child> - <object class="GtkCheckButton" id="encodingFormatMPEG"> - <property name="label" translatable="1">MPEG</property> - <property name="focusable">1</property> - <layout> - <property name="column">1</property> - <property name="row">1</property> - </layout> - </object> - </child> - <child> - <object class="GtkCheckButton" id="encodingFormatAAC"> - <property name="label" translatable="1">AAC</property> - <property name="focusable">1</property> - <layout> - <property name="column">2</property> - <property name="row">1</property> - </layout> - </object> - </child> - <child> - <object class="GtkCheckButton" id="encodingFormatTRUEHD"> - <property name="label" translatable="1">TrueHD</property> - <property name="focusable">1</property> - <layout> - <property name="column">0</property> - <property name="row">2</property> - </layout> - </object> - </child> - <child> - <object class="GtkCheckButton" id="encodingFormatDTSHD"> - <property name="label" translatable="1">DTS-HD</property> - <property name="focusable">1</property> - <layout> - <property name="column">1</property> - <property name="row">2</property> - </layout> - </object> - </child> - </object> - </child> - <child> - <object class="GtkBox" id="offsetSelect"> - <property name="valign">center</property> - <property name="spacing">6</property> - <child> - <object class="GtkLabel"> - <property name="label" translatable="1"><b>Latency offset:</b></property> - <property name="use_markup">1</property> - <property name="xalign">0</property> - </object> - </child> - <child> - <object class="GtkSpinButton" id="offsetButton"> - <property name="hexpand">1</property> - <property name="focusable">1</property> - </object> - </child> - <child> - <object class="GtkLabel"> - <property name="label" translatable="1">ms</property> - <property name="use_markup">1</property> - </object> - </child> - </object> - </child> - </object> - </child> - <child type="label"> - <object class="GtkLabel" id="advancedLabel"> - <property name="label" translatable="1">Advanced</property> - </object> - </child> - </object> - </child> - </object> - </child> - <child> - <object class="GtkSeparator"> - <property name="valign">center</property> - </object> - </child> - </object> - </property> - </object> - <object class="GtkListStore" id="liststore1"> - <columns> - <column type="gchararray"/> - </columns> - <data> - <row> - <col id="0" translatable="yes">All Streams</col> - </row> - <row> - <col id="0" translatable="yes">Applications</col> - </row> - <row> - <col id="0" translatable="yes">Virtual Streams</col> - </row> - </data> - </object> - <object class="GtkListStore" id="liststore2"> - <columns> - <column type="gchararray"/> - </columns> - <data> - <row> - <col id="0" translatable="yes">All Streams</col> - </row> - <row> - <col id="0" translatable="yes">Applications</col> - </row> - <row> - <col id="0" translatable="yes">Virtual Streams</col> - </row> - </data> - </object> - <object class="GtkListStore" id="liststore3"> - <columns> - <column type="gchararray"/> - </columns> - <data> - <row> - <col id="0" translatable="yes">All Output Devices</col> - </row> - <row> - <col id="0" translatable="yes">Hardware Output Devices</col> - </row> - <row> - <col id="0" translatable="yes">Virtual Output Devices</col> - </row> - </data> - </object> - <object class="GtkListStore" id="liststore4"> - <columns> - <column type="gchararray"/> - </columns> - <data> - <row> - <col id="0" translatable="yes">All Input Devices</col> - </row> - <row> - <col id="0" translatable="yes">All Except Monitors</col> - </row> - <row> - <col id="0" translatable="yes">Hardware Input Devices</col> - </row> - <row> - <col id="0" translatable="yes">Virtual Input Devices</col> - </row> - <row> - <col id="0" translatable="yes">Monitors</col> - </row> - </data> - </object> - <object class="GtkWindow" id="mainWindow"> - <property name="title" translatable="1">Volume Control</property> - <property name="default_width">500</property> - <property name="default_height">400</property> - <property name="icon_name">multimedia-volume-control</property> - <child> - <placeholder/> - </child> - <property name="child"> - <object class="GtkBox"> - <property name="orientation">vertical</property> - <property name="spacing">12</property> - <child> - <object class="GtkNotebook" id="notebook"> - <property name="vexpand">1</property> - <property name="focusable">1</property> - <property name="show_border">0</property> - <property name="scrollable">1</property> - <child> - <object class="GtkNotebookPage"> - <property name="child"> - <object class="GtkBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkScrolledWindow"> - <property name="vexpand">1</property> - <property name="focusable">1</property> - <property name="child"> - <object class="GtkViewport"> - <property name="child"> - <object class="GtkBox" id="streamsVBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkLabel" id="noStreamsLabel"> - <property name="vexpand">1</property> - <property name="sensitive">0</property> - <property name="label" translatable="1"><i>No application is currently playing audio.</i></property> - <property name="use_markup">1</property> - </object> - </child> - </object> - </property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkSeparator"> - <property name="valign">center</property> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="spacing">6</property> - <property name="margin-top">12</property> - <property name="margin-bottom">12</property> - <property name="margin-start">12</property> - <property name="margin-end">12</property> - <property name="valign">center</property> - <child> - <object class="GtkLabel"> - <property name="hexpand">1</property> - <property name="label" translatable="1"><b>_Show:</b></property> - <property name="use_markup">1</property> - <property name="use_underline">1</property> - <property name="xalign">1</property> - </object> - </child> - <child> - <object class="GtkComboBox" id="sinkInputTypeComboBox"> - <property name="hexpand">1</property> - <property name="model">liststore1</property> - <child> - <object class="GtkCellRendererText"/> - <attributes> - <attribute name="text">0</attribute> - </attributes> - </child> - </object> - </child> - </object> - </child> - </object> - </property> - <property name="tab"> - <object class="GtkLabel"> - <property name="label" translatable="1">_Playback</property> - <property name="use_underline">1</property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkNotebookPage"> - <property name="child"> - <object class="GtkBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkScrolledWindow"> - <property name="vexpand">1</property> - <property name="focusable">1</property> - <property name="child"> - <object class="GtkViewport"> - <property name="child"> - <object class="GtkBox" id="recsVBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkLabel" id="noRecsLabel"> - <property name="vexpand">1</property> - <property name="sensitive">0</property> - <property name="label" translatable="1"><i>No application is currently recording audio.</i></property> - <property name="use_markup">1</property> - </object> - </child> - </object> - </property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkSeparator"> - <property name="valign">center</property> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="spacing">6</property> - <property name="margin-top">12</property> - <property name="margin-bottom">12</property> - <property name="margin-start">12</property> - <property name="margin-end">12</property> - <property name="valign">center</property> - <child> - <object class="GtkLabel"> - <property name="hexpand">1</property> - <property name="label" translatable="1"><b>_Show:</b></property> - <property name="use_markup">1</property> - <property name="use_underline">1</property> - <property name="xalign">1</property> - </object> - </child> - <child> - <object class="GtkComboBox" id="sourceOutputTypeComboBox"> - <property name="hexpand">1</property> - <property name="model">liststore2</property> - <child> - <object class="GtkCellRendererText"/> - <attributes> - <attribute name="text">0</attribute> - </attributes> - </child> - </object> - </child> - </object> - </child> - </object> - </property> - <property name="tab"> - <object class="GtkLabel"> - <property name="label" translatable="1">_Recording</property> - <property name="use_underline">1</property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkNotebookPage"> - <property name="child"> - <object class="GtkBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkScrolledWindow"> - <property name="vexpand">1</property> - <property name="focusable">1</property> - <property name="child"> - <object class="GtkViewport"> - <property name="child"> - <object class="GtkBox" id="sinksVBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkLabel" id="noSinksLabel"> - <property name="vexpand">1</property> - <property name="sensitive">0</property> - <property name="label" translatable="1"><i>No output devices available</i></property> - <property name="use_markup">1</property> - </object> - </child> - </object> - </property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkSeparator"> - <property name="valign">center</property> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="spacing">6</property> - <property name="margin-top">12</property> - <property name="margin-bottom">12</property> - <property name="margin-start">12</property> - <property name="margin-end">12</property> - <property name="valign">center</property> - <child> - <object class="GtkLabel"> - <property name="hexpand">1</property> - <property name="label" translatable="1"><b>S_how:</b></property> - <property name="use_markup">1</property> - <property name="use_underline">1</property> - <property name="mnemonic_widget">sinkTypeComboBox</property> - <property name="xalign">1</property> - </object> - </child> - <child> - <object class="GtkComboBox" id="sinkTypeComboBox"> - <property name="hexpand">1</property> - <property name="model">liststore3</property> - <child> - <object class="GtkCellRendererText"/> - <attributes> - <attribute name="text">0</attribute> - </attributes> - </child> - </object> - </child> - </object> - </child> - </object> - </property> - <property name="tab"> - <object class="GtkLabel"> - <property name="label" translatable="1">_Output Devices</property> - <property name="use_underline">1</property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkNotebookPage"> - <property name="child"> - <object class="GtkBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkScrolledWindow"> - <property name="vexpand">1</property> - <property name="focusable">1</property> - <property name="child"> - <object class="GtkViewport"> - <property name="child"> - <object class="GtkBox" id="sourcesVBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkLabel" id="noSourcesLabel"> - <property name="vexpand">1</property> - <property name="sensitive">0</property> - <property name="label" translatable="1"><i>No input devices available</i></property> - <property name="use_markup">1</property> - </object> - </child> - </object> - </property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkSeparator"> - <property name="valign">center</property> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="spacing">6</property> - <property name="margin-top">12</property> - <property name="margin-bottom">12</property> - <property name="margin-start">12</property> - <property name="margin-end">12</property> - <property name="valign">center</property> - <child> - <object class="GtkLabel"> - <property name="hexpand">1</property> - <property name="label" translatable="1"><b>Sho_w:</b></property> - <property name="use_markup">1</property> - <property name="use_underline">1</property> - <property name="mnemonic_widget">sourceTypeComboBox</property> - <property name="xalign">1</property> - </object> - </child> - <child> - <object class="GtkComboBox" id="sourceTypeComboBox"> - <property name="hexpand">1</property> - <property name="model">liststore4</property> - <child> - <object class="GtkCellRendererText"/> - <attributes> - <attribute name="text">0</attribute> - </attributes> - </child> - </object> - </child> - </object> - </child> - </object> - </property> - <property name="tab"> - <object class="GtkLabel"> - <property name="label" translatable="1">_Input Devices</property> - <property name="use_underline">1</property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkNotebookPage"> - <property name="child"> - <object class="GtkBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkScrolledWindow"> - <property name="vexpand">1</property> - <property name="focusable">1</property> - <property name="child"> - <object class="GtkViewport"> - <property name="child"> - <object class="GtkBox"> - <property name="orientation">vertical</property> - <child> - <object class="GtkBox" id="cardsVBox"> - <property name="vexpand">1</property> - <property name="orientation">vertical</property> - <child> - <object class="GtkLabel" id="noCardsLabel"> - <property name="vexpand">1</property> - <property name="sensitive">0</property> - <property name="label" translatable="1"><i>No cards available for configuration</i></property> - <property name="use_markup">1</property> - </object> - </child> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="orientation">vertical</property> - <property name="vexpand-set">1</property> - <child> - <object class="GtkSeparator"/> - </child> - <child> - <object class="GtkCheckButton" id="showVolumeMetersCheckButton"> - <property name="label" translatable="1">Show volume meters</property> - <property name="focusable">1</property> - <property name="active">1</property> - </object> - </child> - </object> - </child> - </object> - </property> - </object> - </property> - </object> - </child> - </object> - </property> - <property name="tab"> - <object class="GtkLabel"> - <property name="label" translatable="1">_Configuration</property> - <property name="use_underline">1</property> - </object> - </property> - </object> - </child> - </object> - </child> - <child> - <object class="GtkLabel" id="connectingLabel"> - <property name="vexpand">1</property> - <property name="visible">0</property> - <property name="label">...</property> - <property name="use_markup">1</property> - </object> - </child> - </object> - </property> - </object> - <object class="GtkApplicationWindow" id="renameDialog"> - <property name="modal">1</property> - <child> - <object class="GtkBox"> - <property name="orientation">vertical</property> - <property name="spacing">2</property> - <property name="margin-start">5</property> - <property name="margin-top">5</property> - <property name="margin-end">5</property> - <property name="margin-bottom">5</property> - <child> - <object class="GtkLabel"> - <property name="vexpand">1</property> - <property name="label" translatable="1"><b>Rename device to:</b></property> - <property name="use_markup">1</property> - <property name="xalign">0</property> - </object> - </child> - <child> - <object class="GtkEntry" id="renameText"> - <property name="vexpand">1</property> - <property name="focusable">1</property> - <property name="invisible_char">●</property> - <property name="activates_default">1</property> - <property name="width_chars">60</property> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="baseline_position">bottom</property> - <property name="halign">GTK_ALIGN_END</property> - <property name="homogeneous">1</property> - <child> - <object class="GtkButton"> - <property name="label" translatable="1">_Cancel</property> - <property name="use_underline">1</property> - <property name="focusable">1</property> - <property name="action_name">window.close</property> - </object> - </child> - <child> - <object class="GtkButton" id="renameButton"> - <property name="label" translatable="1">_Ok</property> - <property name="use_underline">1</property> - <property name="focusable">1</property> - <property name="action_name">win.rename</property> - </object> - </child> - </object> - </child> - </object> - </child> - </object> - <object class="GtkWindow" id="streamWindow"> - <property name="visible">1</property> - <property name="title" translatable="1">window1</property> - <child> - <placeholder/> - </child> - <property name="child"> - <object class="GtkBox" id="streamWidget"> - <property name="orientation">vertical</property> - <child> - <object class="GtkBox"> - <property name="valign">center</property> - <property name="orientation">vertical</property> - <property name="spacing">6</property> - <property name="margin-start">12</property> - <property name="margin-top">12</property> - <property name="margin-end">12</property> - <property name="margin-bottom">12</property> - <child> - <object class="GtkBox"> - <property name="valign">center</property> - <property name="spacing">6</property> - <child> - <object class="GtkImage" id="streamIconImage"> - <property name="icon_name">gtk-missing-image</property> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="hexpand">1</property> - <property name="spacing">2</property> - <child> - <object class="GtkLabel" id="streamBoldNameLabel"> - <property name="use_markup">1</property> - </object> - </child> - <child> - <object class="GtkLabel" id="streamNameLabel"> - <property name="label" translatable="1">Stream Title</property> - <property name="use_markup">1</property> - <property name="ellipsize">end</property> - <property name="xalign">0</property> - </object> - </child> - <child> - <object class="GtkLabel" id="directionLabel"> - <property name="margin_start">4</property> - <property name="margin_end">4</property> - <property name="label" translatable="1">direction</property> - <property name="use_markup">1</property> - <property name="xalign">0</property> - </object> - </child> - <child> - <object class="GtkComboBoxText" id="deviceComboBox"> - <property name="halign">GTK_ALIGN_END</property> - <property name="hexpand">1</property> - </object> - </child> - </object> - </child> - <child> - <object class="GtkBox"> - <property name="spacing">3</property> - <child> - <object class="GtkToggleButton" id="streamMuteToggleButton"> - <property name="halign">center</property> - <property name="focusable">1</property> - <property name="tooltip_text" translatable="1">Mute audio</property> - <property name="has-frame">0</property> - <child> - <object class="GtkImage"> - <property name="icon_name">audio-volume-muted</property> - <property name="icon_size">normal</property> - </object> - </child> - </object> - </child> - <child> - <object class="GtkToggleButton" id="streamLockToggleButton"> - <property name="halign">center</property> - <property name="focusable">1</property> - <property name="tooltip_text" translatable="1">Lock channels together</property> - <property name="has-frame">0</property> - <property name="active">1</property> - <child> - <object class="GtkImage"> - <property name="icon_name">changes-prevent</property> - <property name="icon_size">normal</property> - </object> - </child> - </object> - </child> - </object> - </child> - </object> - </child> - <child> - <object class="GtkBox" id="streamChannelsVBox"> - <property name="valign">center</property> - <property name="orientation">vertical</property> - <property name="spacing">6</property> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - </object> - </child> - </object> - </child> - <child> - <object class="GtkSeparator"> - <property name="valign">center</property> - </object> - </child> - </object> - </property> - </object> -</interface> diff --git a/src/renamedialog.ui b/src/renamedialog.ui new file mode 100644 index 0000000..9ee488a --- /dev/null +++ b/src/renamedialog.ui @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <object class="GtkApplicationWindow" id="renameDialog"> + <property name="modal">1</property> + <child> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <property name="spacing">2</property> + <property name="margin-start">5</property> + <property name="margin-top">5</property> + <property name="margin-end">5</property> + <property name="margin-bottom">5</property> + <child> + <object class="GtkLabel"> + <property name="vexpand">1</property> + <property name="label" translatable="1"><b>Rename device to:</b></property> + <property name="use_markup">1</property> + <property name="xalign">0</property> + </object> + </child> + <child> + <object class="GtkEntry" id="renameText"> + <property name="vexpand">1</property> + <property name="focusable">1</property> + <property name="invisible_char">●</property> + <property name="activates_default">1</property> + <property name="width_chars">60</property> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="baseline_position">bottom</property> + <property name="halign">GTK_ALIGN_END</property> + <property name="homogeneous">1</property> + <child> + <object class="GtkButton"> + <property name="label" translatable="1">_Cancel</property> + <property name="use_underline">1</property> + <property name="focusable">1</property> + <property name="action_name">window.close</property> + </object> + </child> + <child> + <object class="GtkButton" id="renameButton"> + <property name="label" translatable="1">_Ok</property> + <property name="use_underline">1</property> + <property name="focusable">1</property> + <property name="action_name">win.rename</property> + </object> + </child> + </object> + </child> + </object> + </child> + </object> +</interface> diff --git a/src/resources.gresource.xml b/src/resources.gresource.xml index 27bef9a..0ed3726 100644 --- a/src/resources.gresource.xml +++ b/src/resources.gresource.xml @@ -1,6 +1,11 @@ <?xml version="1.0" encoding="UTF-8"?> <gresources> <gresource prefix="/org/pulseaudio/pavucontrol/ui"> - <file preprocess="xml-stripblanks" compressed="true">pavucontrol.glade</file> + <file preprocess="xml-stripblanks" compressed="true">mainwindow.ui</file> + <file preprocess="xml-stripblanks" compressed="true">cardwidget.ui</file> + <file preprocess="xml-stripblanks" compressed="true">channelwidget.ui</file> + <file preprocess="xml-stripblanks" compressed="true">renamedialog.ui</file> + <file preprocess="xml-stripblanks" compressed="true">streamwidget.ui</file> + <file preprocess="xml-stripblanks" compressed="true">devicewidget.ui</file> </gresource> </gresources> diff --git a/src/rolewidget.cc b/src/rolewidget.cc index 59279e5..c2d8a21 100644 --- a/src/rolewidget.cc +++ b/src/rolewidget.cc @@ -38,7 +38,7 @@ RoleWidget::RoleWidget(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Builder> RoleWidget* RoleWidget::create() { RoleWidget* w; - Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "streamWidget"); + Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/streamwidget.ui", "streamWidget"); w = Gtk::Builder::get_widget_derived<RoleWidget>(x, "streamWidget"); w->reference(); return w; diff --git a/src/sinkinputwidget.cc b/src/sinkinputwidget.cc index 46fc52b..6145c2d 100644 --- a/src/sinkinputwidget.cc +++ b/src/sinkinputwidget.cc @@ -40,7 +40,7 @@ SinkInputWidget::SinkInputWidget(BaseObjectType* cobject, const Glib::RefPtr<Gtk SinkInputWidget* SinkInputWidget::create(MainWindow* mainWindow) { SinkInputWidget* w; - Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "streamWidget"); + Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/streamwidget.ui", "streamWidget"); w = Gtk::Builder::get_widget_derived<SinkInputWidget>(x, "streamWidget"); w->init(mainWindow); w->reference(); diff --git a/src/sinkwidget.cc b/src/sinkwidget.cc index 6835d29..86bd328 100644 --- a/src/sinkwidget.cc +++ b/src/sinkwidget.cc @@ -104,7 +104,7 @@ SinkWidget::SinkWidget(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Builder> SinkWidget* SinkWidget::create(MainWindow* mainWindow) { SinkWidget* w; - Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "deviceWidget"); + Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/devicewidget.ui", "deviceWidget"); w = Gtk::Builder::get_widget_derived<SinkWidget>(x, "deviceWidget"); w->init(mainWindow, "sink"); w->reference(); diff --git a/src/sourceoutputwidget.cc b/src/sourceoutputwidget.cc index 1cb4a22..ca6b3f8 100644 --- a/src/sourceoutputwidget.cc +++ b/src/sourceoutputwidget.cc @@ -46,7 +46,7 @@ SourceOutputWidget::SourceOutputWidget(BaseObjectType* cobject, const Glib::RefP SourceOutputWidget* SourceOutputWidget::create(MainWindow* mainWindow) { SourceOutputWidget* w; - Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "streamWidget"); + Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/streamwidget.ui", "streamWidget"); w = Gtk::Builder::get_widget_derived<SourceOutputWidget>(x, "streamWidget"); w->init(mainWindow); w->reference(); diff --git a/src/sourcewidget.cc b/src/sourcewidget.cc index 3ae2395..2423682 100644 --- a/src/sourcewidget.cc +++ b/src/sourcewidget.cc @@ -32,7 +32,7 @@ SourceWidget::SourceWidget(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Buil SourceWidget* SourceWidget::create(MainWindow* mainWindow) { SourceWidget* w; - Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "deviceWidget"); + Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/devicewidget.ui", "deviceWidget"); w = Gtk::Builder::get_widget_derived<SourceWidget>(x, "deviceWidget"); w->init(mainWindow, "source"); w->reference(); diff --git a/src/streamwidget.ui b/src/streamwidget.ui new file mode 100644 index 0000000..023d760 --- /dev/null +++ b/src/streamwidget.ui @@ -0,0 +1,114 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <object class="GtkBox" id="streamWidget"> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="valign">center</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <property name="margin-start">12</property> + <property name="margin-top">12</property> + <property name="margin-end">12</property> + <property name="margin-bottom">12</property> + <child> + <object class="GtkBox"> + <property name="valign">center</property> + <property name="spacing">6</property> + <child> + <object class="GtkImage" id="streamIconImage"> + <property name="icon_name">gtk-missing-image</property> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="hexpand">1</property> + <property name="spacing">2</property> + <child> + <object class="GtkLabel" id="streamBoldNameLabel"> + <property name="use_markup">1</property> + </object> + </child> + <child> + <object class="GtkLabel" id="streamNameLabel"> + <property name="label" translatable="1">Stream Title</property> + <property name="use_markup">1</property> + <property name="ellipsize">end</property> + <property name="xalign">0</property> + </object> + </child> + <child> + <object class="GtkLabel" id="directionLabel"> + <property name="margin_start">4</property> + <property name="margin_end">4</property> + <property name="label" translatable="1">direction</property> + <property name="use_markup">1</property> + <property name="xalign">0</property> + </object> + </child> + <child> + <object class="GtkComboBoxText" id="deviceComboBox"> + <property name="halign">GTK_ALIGN_END</property> + <property name="hexpand">1</property> + </object> + </child> + </object> + </child> + <child> + <object class="GtkBox"> + <property name="spacing">3</property> + <child> + <object class="GtkToggleButton" id="streamMuteToggleButton"> + <property name="halign">center</property> + <property name="focusable">1</property> + <property name="tooltip_text" translatable="1">Mute audio</property> + <property name="has-frame">0</property> + <child> + <object class="GtkImage"> + <property name="icon_name">audio-volume-muted</property> + <property name="icon_size">normal</property> + </object> + </child> + </object> + </child> + <child> + <object class="GtkToggleButton" id="streamLockToggleButton"> + <property name="halign">center</property> + <property name="focusable">1</property> + <property name="tooltip_text" translatable="1">Lock channels together</property> + <property name="has-frame">0</property> + <property name="active">1</property> + <child> + <object class="GtkImage"> + <property name="icon_name">changes-prevent</property> + <property name="icon_size">normal</property> + </object> + </child> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkBox" id="streamChannelsVBox"> + <property name="valign">center</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkSeparator"> + <property name="valign">center</property> + </object> + </child> + </object> +</interface> |