summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJA <jagw40k@free.fr>2024-04-26 17:13:28 +0200
committerJA <jagw40k@free.fr>2024-04-26 17:26:43 +0200
commit64881e3db00827207326df4afafc91ea2caba1c7 (patch)
tree3f172f987b88f924ac1e78e9862e586c40b4bef0 /src
parent22b04fff6e881b4e0a1b8344a6513bdf99a10c65 (diff)
Embed ui file as resource and clean it up
Remove a lot of unrequired ids, and fix meson dependency name
Diffstat (limited to 'src')
-rw-r--r--src/cardwidget.cc2
-rw-r--r--src/channelwidget.cc4
-rw-r--r--src/devicewidget.cc2
-rw-r--r--src/mainwindow.cc10
-rw-r--r--src/meson.build10
-rw-r--r--src/pavucontrol.glade142
-rw-r--r--src/pavucontrol.gladep8
-rw-r--r--src/pavucontrol.h4
-rw-r--r--src/resources.gresource.xml6
-rw-r--r--src/rolewidget.cc2
-rw-r--r--src/sinkinputwidget.cc2
-rw-r--r--src/sinkwidget.cc2
-rw-r--r--src/sourceoutputwidget.cc2
-rw-r--r--src/sourcewidget.cc2
14 files changed, 99 insertions, 99 deletions
diff --git a/src/cardwidget.cc b/src/cardwidget.cc
index bdacdaa..f2aa618 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_file(GLADE_FILE, "cardWidget");
+ Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "cardWidget");
w = Gtk::Builder::get_widget_derived<CardWidget>(x, "cardWidget");
w->reference();
return w;
diff --git a/src/channelwidget.cc b/src/channelwidget.cc
index 87c494b..499bd46 100644
--- a/src/channelwidget.cc
+++ b/src/channelwidget.cc
@@ -50,8 +50,8 @@ 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_file(GLADE_FILE, "adjustment1");
- x->add_from_file(GLADE_FILE, "channelWidget");
+ x->add_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "adjustment1");
+ x->add_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "channelWidget");
w = Gtk::Builder::get_widget_derived<ChannelWidget>(x, "channelWidget");
w->reference();
diff --git a/src/devicewidget.cc b/src/devicewidget.cc
index e149ceb..d7212d8 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_file(GLADE_FILE, "renameDialog");
+ Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "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/mainwindow.cc b/src/mainwindow.cc
index 9bee3b1..e9c2518 100644
--- a/src/mainwindow.cc
+++ b/src/mainwindow.cc
@@ -182,11 +182,11 @@ 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_file(GLADE_FILE, "liststore1");
- x->add_from_file(GLADE_FILE, "liststore2");
- x->add_from_file(GLADE_FILE, "liststore3");
- x->add_from_file(GLADE_FILE, "liststore4");
- x->add_from_file(GLADE_FILE, "mainWindow");
+ 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");
w = Gtk::Builder::get_widget_derived<MainWindow>(x, "mainWindow");
w->get_style_context()->add_class("pavucontrol-window");
if (w && maximize)
diff --git a/src/meson.build b/src/meson.build
index 97eeb00..ba8fa76 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -1,3 +1,10 @@
+gnome = import('gnome')
+resources = gnome.compile_resources('resources',
+ 'resources.gresource.xml',
+ source_dir: '.',
+ c_name: 'resources'
+)
+
pavucontrol_sources = [
'cardwidget.cc',
'channelwidget.cc',
@@ -12,6 +19,7 @@ pavucontrol_sources = [
'sourceoutputwidget.cc',
'sourcewidget.cc',
'streamwidget.cc',
+ resources
]
pavucontrol_deps = [gtkmm_dep, sigcpp_dep, canberragtk_dep, libpulse_dep, libpulsemlglib_dep]
@@ -30,8 +38,6 @@ executable('pavucontrol',
dependencies : pavucontrol_deps,
)
-install_data('pavucontrol.glade')
-
desktop_file = i18n.merge_file(
input : 'org.pulseaudio.pavucontrol.desktop.in',
output : 'org.pulseaudio.pavucontrol.desktop',
diff --git a/src/pavucontrol.glade b/src/pavucontrol.glade
index 25591fd..5f83859 100644
--- a/src/pavucontrol.glade
+++ b/src/pavucontrol.glade
@@ -58,7 +58,7 @@
<object class="GtkBox" id="cardWidget">
<property name="orientation">vertical</property>
<child>
- <object class="GtkBox" id="vbox7">
+ <object class="GtkBox">
<property name="valign">center</property>
<property name="orientation">vertical</property>
<property name="spacing">6</property>
@@ -67,7 +67,7 @@
<property name="margin-end">12</property>
<property name="margin-bottom">12</property>
<child>
- <object class="GtkBox" id="hbox9">
+ <object class="GtkBox">
<property name="valign">center</property>
<property name="spacing">6</property>
<child>
@@ -76,7 +76,7 @@
</object>
</child>
<child>
- <object class="GtkBox" id="hbox11">
+ <object class="GtkBox">
<property name="hexpand">1</property>
<child>
<object class="GtkLabel" id="cardNameLabel">
@@ -90,7 +90,7 @@
</object>
</child>
<child>
- <object class="GtkBox" id="hbox14">
+ <object class="GtkBox">
<property name="spacing">3</property>
<child>
<object class="GtkToggleButton" id="profileLockToggleButton">
@@ -100,7 +100,7 @@
<property name="has-frame">0</property>
<property name="active">1</property>
<child>
- <object class="GtkImage" id="image4">
+ <object class="GtkImage">
<property name="icon_name">changes-prevent</property>
<property name="icon_size">normal</property>
</object>
@@ -112,11 +112,11 @@
</object>
</child>
<child>
- <object class="GtkBox" id="hbox1">
+ <object class="GtkBox">
<property name="valign">center</property>
<property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label1">
+ <object class="GtkLabel">
<property name="label" translatable="1">&lt;b&gt;Profile:&lt;/b&gt;</property>
<property name="use_markup">1</property>
<property name="xalign">0</property>
@@ -132,7 +132,7 @@
<property name="halign">center</property>
<property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label51">
+ <object class="GtkLabel">
<property name="label" translatable="1">&lt;b&gt;Codec:&lt;/b&gt;</property>
<property name="use_markup">1</property>
<property name="xalign">0</property>
@@ -150,7 +150,7 @@
</object>
</child>
<child>
- <object class="GtkSeparator" id="hseparator5">
+ <object class="GtkSeparator">
<property name="valign">center</property>
</object>
</child>
@@ -167,7 +167,7 @@
<object class="GtkBox" id="deviceWidget">
<property name="orientation">vertical</property>
<child>
- <object class="GtkBox" id="vbox26">
+ <object class="GtkBox">
<property name="valign">center</property>
<property name="orientation">vertical</property>
<property name="spacing">6</property>
@@ -176,7 +176,7 @@
<property name="margin-end">12</property>
<property name="margin-bottom">12</property>
<child>
- <object class="GtkBox" id="hbox2">
+ <object class="GtkBox">
<property name="valign">center</property>
<property name="spacing">6</property>
<child>
@@ -185,7 +185,7 @@
</object>
</child>
<child>
- <object class="GtkBox" id="hbox12">
+ <object class="GtkBox">
<property name="hexpand">1</property>
<child>
<object class="GtkLabel" id="deviceBoldNameLabel">
@@ -203,7 +203,7 @@
</object>
</child>
<child>
- <object class="GtkBox" id="hbox10">
+ <object class="GtkBox">
<property name="spacing">3</property>
<child>
<object class="GtkToggleButton" id="deviceMuteToggleButton">
@@ -212,7 +212,7 @@
<property name="tooltip_text" translatable="1">Mute audio</property>
<property name="has-frame">0</property>
<child>
- <object class="GtkImage" id="image20">
+ <object class="GtkImage">
<property name="icon_name">audio-volume-muted</property>
<property name="icon_size">normal</property>
</object>
@@ -227,7 +227,7 @@
<property name="has-frame">0</property>
<property name="active">1</property>
<child>
- <object class="GtkImage" id="image18">
+ <object class="GtkImage">
<property name="icon_name">changes-prevent</property>
<property name="icon_size">normal</property>
</object>
@@ -240,7 +240,7 @@
<property name="focusable">1</property>
<property name="tooltip_text" translatable="1">Set as default</property>
<child>
- <object class="GtkImage" id="image2">
+ <object class="GtkImage">
<property name="icon_name">emblem-default</property>
</object>
</child>
@@ -255,7 +255,7 @@
<property name="valign">center</property>
<property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label2">
+ <object class="GtkLabel">
<property name="label" translatable="1">&lt;b&gt;Port:&lt;/b&gt;</property>
<property name="use_markup">1</property>
<property name="xalign">0</property>
@@ -287,7 +287,7 @@
<property name="visible">0</property>
<property name="focusable">1</property>
<child>
- <object class="GtkBox" id="vbox1">
+ <object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="GtkGrid" id="encodingSelect">
@@ -384,7 +384,7 @@
<property name="valign">center</property>
<property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label3">
+ <object class="GtkLabel">
<property name="label" translatable="1">&lt;b&gt;Latency offset:&lt;/b&gt;</property>
<property name="use_markup">1</property>
<property name="xalign">0</property>
@@ -397,7 +397,7 @@
</object>
</child>
<child>
- <object class="GtkLabel" id="label4">
+ <object class="GtkLabel">
<property name="label" translatable="1">ms</property>
<property name="use_markup">1</property>
</object>
@@ -416,7 +416,7 @@
</object>
</child>
<child>
- <object class="GtkSeparator" id="hseparator2">
+ <object class="GtkSeparator">
<property name="valign">center</property>
</object>
</child>
@@ -502,7 +502,7 @@
<placeholder/>
</child>
<property name="child">
- <object class="GtkBox" id="vbox20">
+ <object class="GtkBox">
<property name="orientation">vertical</property>
<property name="spacing">12</property>
<child>
@@ -514,14 +514,14 @@
<child>
<object class="GtkNotebookPage">
<property name="child">
- <object class="GtkBox" id="vbox32">
+ <object class="GtkBox">
<property name="orientation">vertical</property>
<child>
- <object class="GtkScrolledWindow" id="scrolledwindow5">
+ <object class="GtkScrolledWindow">
<property name="vexpand">1</property>
<property name="focusable">1</property>
<property name="child">
- <object class="GtkViewport" id="viewport1">
+ <object class="GtkViewport">
<property name="child">
<object class="GtkBox" id="streamsVBox">
<property name="orientation">vertical</property>
@@ -540,12 +540,12 @@
</object>
</child>
<child>
- <object class="GtkSeparator" id="hseparator1">
+ <object class="GtkSeparator">
<property name="valign">center</property>
</object>
</child>
<child>
- <object class="GtkBox" id="hbox5">
+ <object class="GtkBox">
<property name="spacing">6</property>
<property name="margin-top">12</property>
<property name="margin-bottom">12</property>
@@ -553,7 +553,7 @@
<property name="margin-end">12</property>
<property name="valign">center</property>
<child>
- <object class="GtkLabel" id="label5">
+ <object class="GtkLabel">
<property name="hexpand">1</property>
<property name="label" translatable="1">&lt;b&gt;_Show:&lt;/b&gt;</property>
<property name="use_markup">1</property>
@@ -566,7 +566,7 @@
<property name="hexpand">1</property>
<property name="model">liststore1</property>
<child>
- <object class="GtkCellRendererText" id="cellrenderertext1"/>
+ <object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">0</attribute>
</attributes>
@@ -578,7 +578,7 @@
</object>
</property>
<property name="tab">
- <object class="GtkLabel" id="label34">
+ <object class="GtkLabel">
<property name="label" translatable="1">_Playback</property>
<property name="use_underline">1</property>
</object>
@@ -588,14 +588,14 @@
<child>
<object class="GtkNotebookPage">
<property name="child">
- <object class="GtkBox" id="vbox2">
+ <object class="GtkBox">
<property name="orientation">vertical</property>
<child>
- <object class="GtkScrolledWindow" id="scrolledwindow2">
+ <object class="GtkScrolledWindow">
<property name="vexpand">1</property>
<property name="focusable">1</property>
<property name="child">
- <object class="GtkViewport" id="viewport5">
+ <object class="GtkViewport">
<property name="child">
<object class="GtkBox" id="recsVBox">
<property name="orientation">vertical</property>
@@ -614,12 +614,12 @@
</object>
</child>
<child>
- <object class="GtkSeparator" id="hseparator3">
+ <object class="GtkSeparator">
<property name="valign">center</property>
</object>
</child>
<child>
- <object class="GtkBox" id="hbox7">
+ <object class="GtkBox">
<property name="spacing">6</property>
<property name="margin-top">12</property>
<property name="margin-bottom">12</property>
@@ -627,7 +627,7 @@
<property name="margin-end">12</property>
<property name="valign">center</property>
<child>
- <object class="GtkLabel" id="label8">
+ <object class="GtkLabel">
<property name="hexpand">1</property>
<property name="label" translatable="1">&lt;b&gt;_Show:&lt;/b&gt;</property>
<property name="use_markup">1</property>
@@ -640,7 +640,7 @@
<property name="hexpand">1</property>
<property name="model">liststore2</property>
<child>
- <object class="GtkCellRendererText" id="cellrenderertext2"/>
+ <object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">0</attribute>
</attributes>
@@ -652,7 +652,7 @@
</object>
</property>
<property name="tab">
- <object class="GtkLabel" id="label6">
+ <object class="GtkLabel">
<property name="label" translatable="1">_Recording</property>
<property name="use_underline">1</property>
</object>
@@ -662,14 +662,14 @@
<child>
<object class="GtkNotebookPage">
<property name="child">
- <object class="GtkBox" id="vbox30">
+ <object class="GtkBox">
<property name="orientation">vertical</property>
<child>
- <object class="GtkScrolledWindow" id="scrolledwindow8">
+ <object class="GtkScrolledWindow">
<property name="vexpand">1</property>
<property name="focusable">1</property>
<property name="child">
- <object class="GtkViewport" id="viewport4">
+ <object class="GtkViewport">
<property name="child">
<object class="GtkBox" id="sinksVBox">
<property name="orientation">vertical</property>
@@ -688,12 +688,12 @@
</object>
</child>
<child>
- <object class="GtkSeparator" id="hseparator4">
+ <object class="GtkSeparator">
<property name="valign">center</property>
</object>
</child>
<child>
- <object class="GtkBox" id="hbox3">
+ <object class="GtkBox">
<property name="spacing">6</property>
<property name="margin-top">12</property>
<property name="margin-bottom">12</property>
@@ -701,7 +701,7 @@
<property name="margin-end">12</property>
<property name="valign">center</property>
<child>
- <object class="GtkLabel" id="label4826">
+ <object class="GtkLabel">
<property name="hexpand">1</property>
<property name="label" translatable="1">&lt;b&gt;S_how:&lt;/b&gt;</property>
<property name="use_markup">1</property>
@@ -715,7 +715,7 @@
<property name="hexpand">1</property>
<property name="model">liststore3</property>
<child>
- <object class="GtkCellRendererText" id="cellrenderertext3"/>
+ <object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">0</attribute>
</attributes>
@@ -727,7 +727,7 @@
</object>
</property>
<property name="tab">
- <object class="GtkLabel" id="label4711">
+ <object class="GtkLabel">
<property name="label" translatable="1">_Output Devices</property>
<property name="use_underline">1</property>
</object>
@@ -737,14 +737,14 @@
<child>
<object class="GtkNotebookPage">
<property name="child">
- <object class="GtkBox" id="vbox31">
+ <object class="GtkBox">
<property name="orientation">vertical</property>
<child>
- <object class="GtkScrolledWindow" id="scrolledwindow7">
+ <object class="GtkScrolledWindow">
<property name="vexpand">1</property>
<property name="focusable">1</property>
<property name="child">
- <object class="GtkViewport" id="viewport3">
+ <object class="GtkViewport">
<property name="child">
<object class="GtkBox" id="sourcesVBox">
<property name="orientation">vertical</property>
@@ -763,12 +763,12 @@
</object>
</child>
<child>
- <object class="GtkSeparator" id="hseparator6">
+ <object class="GtkSeparator">
<property name="valign">center</property>
</object>
</child>
<child>
- <object class="GtkBox" id="hbox4">
+ <object class="GtkBox">
<property name="spacing">6</property>
<property name="margin-top">12</property>
<property name="margin-bottom">12</property>
@@ -776,7 +776,7 @@
<property name="margin-end">12</property>
<property name="valign">center</property>
<child>
- <object class="GtkLabel" id="label4827">
+ <object class="GtkLabel">
<property name="hexpand">1</property>
<property name="label" translatable="1">&lt;b&gt;Sho_w:&lt;/b&gt;</property>
<property name="use_markup">1</property>
@@ -790,7 +790,7 @@
<property name="hexpand">1</property>
<property name="model">liststore4</property>
<child>
- <object class="GtkCellRendererText" id="cellrenderertext4"/>
+ <object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">0</attribute>
</attributes>
@@ -802,7 +802,7 @@
</object>
</property>
<property name="tab">
- <object class="GtkLabel" id="label4717">
+ <object class="GtkLabel">
<property name="label" translatable="1">_Input Devices</property>
<property name="use_underline">1</property>
</object>
@@ -812,16 +812,16 @@
<child>
<object class="GtkNotebookPage">
<property name="child">
- <object class="GtkBox" id="vbox3">
+ <object class="GtkBox">
<property name="orientation">vertical</property>
<child>
- <object class="GtkScrolledWindow" id="scrolledwindow1">
+ <object class="GtkScrolledWindow">
<property name="vexpand">1</property>
<property name="focusable">1</property>
<property name="child">
- <object class="GtkViewport" id="viewport2">
+ <object class="GtkViewport">
<property name="child">
- <object class="GtkBox" id="vbox4">
+ <object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="GtkBox" id="cardsVBox">
@@ -838,11 +838,11 @@
</object>
</child>
<child>
- <object class="GtkBox" id="vbox5">
+ <object class="GtkBox">
<property name="orientation">vertical</property>
<property name="vexpand-set">1</property>
<child>
- <object class="GtkSeparator" id="hseparator7"/>
+ <object class="GtkSeparator"/>
</child>
<child>
<object class="GtkCheckButton" id="showVolumeMetersCheckButton">
@@ -862,7 +862,7 @@
</object>
</property>
<property name="tab">
- <object class="GtkLabel" id="label7">
+ <object class="GtkLabel">
<property name="label" translatable="1">_Configuration</property>
<property name="use_underline">1</property>
</object>
@@ -885,7 +885,7 @@
<object class="GtkApplicationWindow" id="renameDialog">
<property name="modal">1</property>
<child>
- <object class="GtkBox" id="dialog-vbox1">
+ <object class="GtkBox">
<property name="orientation">vertical</property>
<property name="spacing">2</property>
<property name="margin-start">5</property>
@@ -893,7 +893,7 @@
<property name="margin-end">5</property>
<property name="margin-bottom">5</property>
<child>
- <object class="GtkLabel" id="label9">
+ <object class="GtkLabel">
<property name="vexpand">1</property>
<property name="label" translatable="1">&lt;b&gt;Rename device to:&lt;/b&gt;</property>
<property name="use_markup">1</property>
@@ -910,7 +910,7 @@
</object>
</child>
<child>
- <object class="GtkBox" id="dialog-action_area1">
+ <object class="GtkBox">
<property name="baseline_position">bottom</property>
<property name="halign">GTK_ALIGN_END</property>
<property name="homogeneous">1</property>
@@ -945,7 +945,7 @@
<object class="GtkBox" id="streamWidget">
<property name="orientation">vertical</property>
<child>
- <object class="GtkBox" id="vbox6">
+ <object class="GtkBox">
<property name="valign">center</property>
<property name="orientation">vertical</property>
<property name="spacing">6</property>
@@ -954,7 +954,7 @@
<property name="margin-end">12</property>
<property name="margin-bottom">12</property>
<child>
- <object class="GtkBox" id="hbox6">
+ <object class="GtkBox">
<property name="valign">center</property>
<property name="spacing">6</property>
<child>
@@ -963,7 +963,7 @@
</object>
</child>
<child>
- <object class="GtkBox" id="hbox8">
+ <object class="GtkBox">
<property name="hexpand">1</property>
<property name="spacing">2</property>
<child>
@@ -997,7 +997,7 @@
</object>
</child>
<child>
- <object class="GtkBox" id="hbox13">
+ <object class="GtkBox">
<property name="spacing">3</property>
<child>
<object class="GtkToggleButton" id="streamMuteToggleButton">
@@ -1006,7 +1006,7 @@
<property name="tooltip_text" translatable="1">Mute audio</property>
<property name="has-frame">0</property>
<child>
- <object class="GtkImage" id="image1">
+ <object class="GtkImage">
<property name="icon_name">audio-volume-muted</property>
<property name="icon_size">normal</property>
</object>
@@ -1021,7 +1021,7 @@
<property name="has-frame">0</property>
<property name="active">1</property>
<child>
- <object class="GtkImage" id="image3">
+ <object class="GtkImage">
<property name="icon_name">changes-prevent</property>
<property name="icon_size">normal</property>
</object>
@@ -1048,7 +1048,7 @@
</object>
</child>
<child>
- <object class="GtkSeparator" id="hseparator8">
+ <object class="GtkSeparator">
<property name="valign">center</property>
</object>
</child>
diff --git a/src/pavucontrol.gladep b/src/pavucontrol.gladep
deleted file mode 100644
index 183077b..0000000
--- a/src/pavucontrol.gladep
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
-<!DOCTYPE glade-project SYSTEM "http://glade.gnome.org/glade-project-2.0.dtd">
-
-<glade-project>
- <name></name>
- <program_name></program_name>
- <gnome_support>FALSE</gnome_support>
-</glade-project>
diff --git a/src/pavucontrol.h b/src/pavucontrol.h
index d7e81a8..f7bf6cc 100644
--- a/src/pavucontrol.h
+++ b/src/pavucontrol.h
@@ -31,10 +31,6 @@
#include <pulse/pulseaudio.h>
#include <pulse/glib-mainloop.h>
-#ifndef GLADE_FILE
-#define GLADE_FILE "pavucontrol.glade"
-#endif
-
/* Can be removed when PulseAudio 0.9.23 or newer is required */
#ifndef PA_VOLUME_UI_MAX
# define PA_VOLUME_UI_MAX (pa_sw_volume_from_dB(+11.0))
diff --git a/src/resources.gresource.xml b/src/resources.gresource.xml
new file mode 100644
index 0000000..27bef9a
--- /dev/null
+++ b/src/resources.gresource.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<gresources>
+ <gresource prefix="/org/pulseaudio/pavucontrol/ui">
+ <file preprocess="xml-stripblanks" compressed="true">pavucontrol.glade</file>
+ </gresource>
+</gresources>
diff --git a/src/rolewidget.cc b/src/rolewidget.cc
index cff0880..59279e5 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_file(GLADE_FILE, "streamWidget");
+ Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "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 732205f..46fc52b 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_file(GLADE_FILE, "streamWidget");
+ Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "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 0af4957..6835d29 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_file(GLADE_FILE, "deviceWidget");
+ Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "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 d164552..1cb4a22 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_file(GLADE_FILE, "streamWidget");
+ Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "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 ebcf7fb..3ae2395 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_file(GLADE_FILE, "deviceWidget");
+ Glib::RefPtr<Gtk::Builder> x = Gtk::Builder::create_from_resource("/org/pulseaudio/pavucontrol/ui/pavucontrol.glade", "deviceWidget");
w = Gtk::Builder::get_widget_derived<SourceWidget>(x, "deviceWidget");
w->init(mainWindow, "source");
w->reference();