Split pavucontrol.glade into separate .ui files
and some cleanup
This commit is contained in:
parent
64881e3db0
commit
d600f47de1
|
@ -1,6 +1,11 @@
|
|||
src/org.pulseaudio.pavucontrol.appdata.xml.in
|
||||
src/pavucontrol.desktop.in
|
||||
src/pavucontrol.glade
|
||||
src/mainwindow.ui
|
||||
src/cardwidget.ui
|
||||
src/channelwidget.ui
|
||||
src/renamedialog.ui
|
||||
src/streamwidget.ui
|
||||
src/devicewidget.ui
|
||||
src/pavucontrol.cc
|
||||
src/cardwidget.cc
|
||||
src/channelwidget.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;
|
||||
|
|
|
@ -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>
|
|
@ -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();
|
||||
|
||||
|
|
|
@ -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>
|
|
@ -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);
|
||||
|
|
|
@ -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>
|
|
@ -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)
|
||||
|
|
|
@ -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>
|
File diff suppressed because it is too large
Load Diff
|
@ -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>
|
|
@ -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>
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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();
|
||||
|
|
|
@ -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();
|
||||
|
|
|
@ -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();
|
||||
|
|
|
@ -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();
|
||||
|
|
|
@ -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>
|
Loading…
Reference in New Issue