[easytag] Move CDDB dialog to GtkBuilder



commit 2c905880066380719c90b101fb2e3d55ae3e807e
Author: David King <amigadave amigadave com>
Date:   Sun Sep 7 19:14:51 2014 +0100

    Move CDDB dialog to GtkBuilder

 data/cddb_dialog.ui                  |  668 ++++++++++++++++++++++++++++++++++
 data/org.gnome.EasyTAG.gresource.xml |    1 +
 data/org.gnome.EasyTAG.gschema.xml   |    6 -
 po/POTFILES.in                       |    1 +
 src/application_window.c             |    5 -
 src/cddb_dialog.c                    |  661 +++++++---------------------------
 src/cddb_dialog.h                    |    1 -
 src/setting.c                        |   16 -
 src/setting.h                        |    4 -
 9 files changed, 795 insertions(+), 568 deletions(-)
---
diff --git a/data/cddb_dialog.ui b/data/cddb_dialog.ui
new file mode 100644
index 0000000..5f9cfe6
--- /dev/null
+++ b/data/cddb_dialog.ui
@@ -0,0 +1,668 @@
+<interface domain="easytag">
+    <requires lib="gtk+" version="3.4"/>
+    <object class="GtkListStore" id="album_list_model">
+        <columns>
+            <column type="GdkPixbuf"/>
+            <column type="gchararray"/>
+            <column type="gchararray"/>
+            <column type="gpointer"/>
+            <column type="PangoStyle"/>
+            <column type="gint"/>
+            <column type="GdkRGBA"/>
+        </columns>
+    </object>
+    <object class="GtkListStore" id="track_list_model">
+        <columns>
+            <column type="guint"/>
+            <column type="gchararray"/>
+            <column type="gchararray"/>
+            <column type="gpointer"/>
+            <column type="gpointer"/>
+        </columns>
+    </object>
+    <object class="GtkGrid" id="cddb_grid">
+        <property name="column-spacing">6</property>
+        <property name="row-spacing">6</property>
+        <child>
+            <object class="GtkLabel" id="search_label">
+                <property name="halign">start</property>
+                <property name="label" translatable="yes">Search</property>
+                <property name="visible">True</property>
+                <attributes>
+                    <attribute name="weight" value="bold"/>
+                </attributes>
+            </object>
+            <packing>
+                <property name="left-attach">0</property>
+                <property name="top-attach">0</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkEntry" id="search_entry">
+                <property name="margin-left">12</property>
+                <property name="tooltip-text" translatable="yes">Enter the words to search (separated by a 
space or ‘+’)</property>
+                <property name="visible">True</property>
+            </object>
+            <packing>
+                <property name="left-attach">0</property>
+                <property name="top-attach">1</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkButton" id="manual_search_button">
+                <property name="label" translatable="yes">_Search</property>
+                <property name="tooltip-text" translatable="yes">Generate the CDDB disc ID using the 
selected files (the order is important)</property>
+                <property name="use-underline">True</property>
+                <property name="visible">True</property>
+            </object>
+            <packing>
+                <property name="left-attach">1</property>
+                <property name="top-attach">1</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkButton" id="automatic_search_button">
+                <property name="label" translatable="yes">Search Using Selected _Files</property>
+                <property name="use-underline">True</property>
+                <property name="visible">True</property>
+            </object>
+            <packing>
+                <property name="left-attach">2</property>
+                <property name="top-attach">1</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkButton" id="stop_button">
+                <property name="label" translatable="yes">Stop</property>
+                <property name="sensitive">False</property>
+                <property name="tooltip-text" translatable="yes">Stop the search</property>
+                <property name="visible">True</property>
+            </object>
+            <packing>
+                <property name="left-attach">3</property>
+                <property name="top-attach">1</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkLabel" id="manual_search_label">
+                <property name="halign">start</property>
+                <property name="label" translatable="yes">Manual Search Options</property>
+                <property name="margin-left">12</property>
+                <property name="visible">True</property>
+                <attributes>
+                    <attribute name="weight" value="bold"/>
+                </attributes>
+            </object>
+            <packing>
+                <property name="left-attach">0</property>
+                <property name="top-attach">2</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkGrid" id="search_options_grid">
+                <property name="column-spacing">6</property>
+                <property name="margin-left">24</property>
+                <property name="row-spacing">6</property>
+                <property name="visible">True</property>
+                <child>
+                    <object class="GtkLabel" id="search_fields_label">
+                        <property name="halign">start</property>
+                        <property name="label" translatable="yes">Search Fields</property>
+                        <property name="visible">True</property>
+                        <attributes>
+                            <attribute name="weight" value="bold"/>
+                        </attributes>
+                    </object>
+                    <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">0</property>
+                        <property name="width">4</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="artist_check">
+                        <property name="label" translatable="yes">Artist</property>
+                        <property name="margin-left">12</property>
+                        <property name="name">artist</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="album_check">
+                        <property name="label" translatable="yes">Album</property>
+                        <property name="name">title</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">1</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="track_check">
+                        <property name="label" translatable="yes">Track Name</property>
+                        <property name="name">track</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">2</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="other_check">
+                        <property name="label" translatable="yes">Other</property>
+                        <property name="name">other</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">3</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkLabel" id="categories_label">
+                        <property name="halign">start</property>
+                        <property name="label" translatable="yes">Categories</property>
+                        <property name="margin-left">12</property>
+                        <property name="visible">True</property>
+                        <attributes>
+                            <attribute name="weight" value="bold"/>
+                        </attributes>
+                    </object>
+                    <packing>
+                        <property name="left-attach">5</property>
+                        <property name="top-attach">0</property>
+                        <property name="width">5</property>
+                    </packing>
+                </child>
+r               <child>
+                    <object class="GtkCheckButton" id="blues_check">
+                        <property name="label" translatable="yes">Blues</property>
+                        <property name="margin-left">12</property>
+                        <property name="name">blues</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">5</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="classical_check">
+                        <property name="label" translatable="yes">Classical</property>
+                        <property name="name">classical</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">6</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="country_check">
+                        <property name="label" translatable="yes">Country</property>
+                        <property name="name">country</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">7</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="folk_check">
+                        <property name="label" translatable="yes">Folk</property>
+                        <property name="name">folk</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">8</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="jazz_check">
+                        <property name="label" translatable="yes">Jazz</property>
+                        <property name="name">jazz</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">9</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="misc_check">
+                        <property name="label" translatable="yes">Misc.</property>
+                        <property name="name">misc</property>
+                        <property name="margin-left">12</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">5</property>
+                        <property name="top-attach">2</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="newage_check">
+                        <property name="label" translatable="yes">New Age</property>
+                        <property name="name">newage</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">6</property>
+                        <property name="top-attach">2</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="reggae_check">
+                        <property name="label" translatable="yes">Reggae</property>
+                        <property name="name">reggae</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">7</property>
+                        <property name="top-attach">2</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="rock_check">
+                        <property name="label" translatable="yes">Rock</property>
+                        <property name="name">rock</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">8</property>
+                        <property name="top-attach">2</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="soundtrack_check">
+                        <property name="label" translatable="yes">Soundtrack</property>
+                        <property name="name">soundtrack</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">9</property>
+                        <property name="top-attach">2</property>
+                    </packing>
+                </child>
+            </object>
+            <packing>
+                <property name="left-attach">0</property>
+                <property name="top-attach">4</property>
+                <property name="width">4</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkLabel" id="results_label">
+                <property name="halign">start</property>
+                <property name="label" translatable="yes">Results</property>
+                <property name="margin-top">6</property>
+                <property name="visible">True</property>
+                <attributes>
+                    <attribute name="weight" value="bold"/>
+                </attributes>
+            </object>
+            <packing>
+                <property name="left-attach">0</property>
+                <property name="top-attach">5</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkBox" id="results_box">
+                <property name="visible">True</property>
+                <property name="orientation">vertical</property>
+                <child>
+                    <object class="GtkPaned" id="results_paned">
+                        <property name="orientation">horizontal</property>
+                        <property name="margin-left">12</property>
+                        <property name="visible">True</property>
+                        <child>
+                            <object class="GtkScrolledWindow" id="album_scrolled">
+                                <property name="expand">True</property>
+                                <property name="min-content-height">225</property>
+                                <property name="min-content-width">225</property>
+                                <property name="visible">True</property>
+                                <child>
+                                    <object class="GtkTreeView" id="album_view">
+                                        <property name="model">album_list_model</property>
+                                        <property name="search-column">1</property>
+                                        <property name="visible">True</property>
+                                        <child>
+                                            <object class="GtkTreeViewColumn" id="service_column">
+                                                <child>
+                                                    <object class="GtkCellRendererPixbuf" 
id="service_renderer"/>
+                                                    <attributes>
+                                                        <attribute name="pixbuf">0</attribute>
+                                                    </attributes>
+                                                </child>
+                                            </object>
+                                        </child>
+                                        <child>
+                                            <object class="GtkTreeViewColumn" id="artist_album_column">
+                                                <property name="title" translatable="yes">Artist / 
Album</property>
+                                                <child>
+                                                    <object class="GtkCellRendererText" 
id="artist_album_renderer"/>
+                                                    <attributes>
+                                                        <attribute name="foreground-rgba">6</attribute>
+                                                        <attribute name="style">4</attribute>
+                                                        <attribute name="text">1</attribute>
+                                                        <attribute name="weight">5</attribute>
+                                                    </attributes>
+                                                </child>
+                                            </object>
+                                        </child>
+                                        <child>
+                                            <object class="GtkTreeViewColumn" id="category_column">
+                                                <property name="title" translatable="yes">Category</property>
+                                                <child>
+                                                    <object class="GtkCellRendererText" 
id="category_renderer"/>
+                                                    <attributes>
+                                                        <attribute name="foreground-rgba">6</attribute>
+                                                        <attribute name="style">4</attribute>
+                                                        <attribute name="text">2</attribute>
+                                                        <attribute name="weight">5</attribute>
+                                                    </attributes>
+                                                </child>
+                                            </object>
+                                        </child>
+                                    </object>
+                                </child>
+                            </object>
+                            <packing>
+                                <property name="resize">True</property>
+                                <property name="shrink">False</property>
+                            </packing>
+                        </child>
+                        <child>
+                            <object class="GtkScrolledWindow" id="track_scrolled">
+                                <property name="expand">True</property>
+                                <property name="min-content-height">225</property>
+                                <property name="min-content-width">225</property>
+                                <property name="visible">True</property>
+                                <child>
+                                    <object class="GtkTreeView" id="track_view">
+                                        <property name="model">track_list_model</property>
+                                        <property name="tooltip-text" translatable="yes">Select lines from 
which tags will be applied to your files list. All lines will be processed if no line is selected.\nYou can 
also reorder lines in this list before using the ‘apply’ button</property>
+                                        <property name="visible">True</property>
+                                        <child>
+                                            <object class="GtkTreeViewColumn" id="number_column">
+                                                <property name="sort-column-id">0</property>
+                                                <property name="title" translatable="yes">#</property>
+                                                <child>
+                                                    <object class="GtkCellRendererText" 
id="number_renderer"/>
+                                                    <attributes>
+                                                        <attribute name="text">0</attribute>
+                                                    </attributes>
+                                                </child>
+                                            </object>
+                                        </child>
+                                        <child>
+                                            <object class="GtkTreeViewColumn" id="track_column">
+                                                <property name="sort-column-id">1</property>
+                                                <property name="title" translatable="yes">Track 
Name</property>
+                                                <child>
+                                                    <object class="GtkCellRendererText" id="track_renderer"/>
+                                                    <attributes>
+                                                        <attribute name="text">1</attribute>
+                                                    </attributes>
+                                                </child>
+                                            </object>
+                                        </child>
+                                        <child>
+                                            <object class="GtkTreeViewColumn" id="duration_column">
+                                                <property name="title" translatable="yes">Duration</property>
+                                                <child>
+                                                    <object class="GtkCellRendererText" 
id="duration_renderer"/>
+                                                    <attributes>
+                                                        <attribute name="text">2</attribute>
+                                                    </attributes>
+                                                </child>
+                                            </object>
+                                        </child>
+                                        <child internal-child="selection">
+                                            <object class="GtkTreeSelection" id="track_selection">
+                                                <property name="mode">multiple</property>
+                                            </object>
+                                        </child>
+                                    </object>
+                                </child>
+                            </object>
+                            <packing>
+                                <property name="resize">True</property>
+                                <property name="shrink">False</property>
+                            </packing>
+                        </child>
+                    </object>
+                </child>
+                <child>
+                    <object class="GtkToolbar" id="results_toolbar">
+                        <property name="margin-left">12</property>
+                        <property name="visible">True</property>
+                        <style>
+                            <class name="inline-toolbar"/>
+                        </style>
+                        <child>
+                            <object class="GtkToolButton" id="select_all_button">
+                                <property name="icon-name">edit-select-all</property>
+                                <property name="tooltip-text" translatable="yes">Select all lines</property>
+                                <property name="visible">True</property>
+                            </object>
+                        </child>
+                        <child>
+                            <object class="GtkToolButton" id="invert_button">
+                                <property name="tooltip-text" translatable="yes">Invert line 
selection</property>
+                                <property name="visible">True</property>
+                            </object>
+                        </child>
+                        <child>
+                            <object class="GtkToolButton" id="unselect_all_button">
+                                <property name="tooltip-text" translatable="yes">Unselect all 
lines</property>
+                                <property name="visible">True</property>
+                            </object>
+                        </child>
+                    </object>
+                </child>
+            </object>
+            <packing>
+                <property name="left-attach">0</property>
+                <property name="top-attach">7</property>
+                <property name="width">4</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkGrid" id="fill_tags_grid">
+                <property name="column-spacing">12</property>
+                <property name="margin-left">12</property>
+                <property name="margin-top">6</property>
+                <property name="row-spacing">12</property>
+                <property name="visible">True</property>
+                <child>
+                    <object class="GtkLabel" id="fill_tags_label">
+                        <property name="halign">start</property>
+                        <property name="label" translatable="yes">Fill Tags</property>
+                        <property name="visible">True</property>
+                        <attributes>
+                            <attribute name="weight" value="bold"/>
+                        </attributes>
+                    </object>
+                    <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">0</property>
+                        <property name="width">8</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="filename_check">
+                        <property name="label" translatable="yes">Filename</property>
+                        <property name="margin-left">12</property>
+                        <property name="name">filename</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">0</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="title_check">
+                        <property name="label" translatable="yes">Title</property>
+                        <property name="name">title</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">1</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="fill_artist_check">
+                        <property name="label" translatable="yes">Artist</property>
+                        <property name="name">artist</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">2</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="fill_album_check">
+                        <property name="label" translatable="yes">Album</property>
+                        <property name="name">album</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">3</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="year_check">
+                        <property name="label" translatable="yes">Year</property>
+                        <property name="name">year</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">4</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="fill_track_check">
+                        <property name="label" translatable="yes">Track #</property>
+                        <property name="name">track</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">5</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="track_total_check">
+                        <property name="label" translatable="yes"># Tracks</property>
+                        <property name="name">track-total</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">6</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="genre_check">
+                        <property name="label" translatable="yes">Genre</property>
+                        <property name="name">genre</property>
+                        <property name="visible">True</property>
+                    </object>
+                    <packing>
+                        <property name="left-attach">7</property>
+                        <property name="top-attach">1</property>
+                    </packing>
+                </child>
+            </object>
+            <packing>
+                <property name="left-attach">0</property>
+                <property name="top-attach">8</property>
+                <property name="width">4</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkBox" id="results_check_box">
+                <property name="margin-left">12</property>
+                <property name="margin-top">6</property>
+                <property name="spacing">12</property>
+                <property name="visible">True</property>
+                <child>
+                    <object class="GtkCheckButton" id="scanner_check">
+                        <property name="label" translatable="yes">Run the current scanner for each 
file</property>
+                        <property name="tooltip-text" translatable="yes">Whether to run the tag scanner, 
with the current settings, on the CDDB results</property>
+                        <property name="visible">True</property>
+                    </object>
+                </child>
+                <child>
+                    <object class="GtkCheckButton" id="dlm_check">
+                        <property name="label" translatable="yes">Match lines with the Levenshtein 
algorithm</property>
+                        <property name="tooltip-text" translatable="yes">Whether to use the DLM algorithm to 
match CDDB results to files</property>
+                        <property name="visible">True</property>
+                    </object>
+                </child>
+            </object>
+            <packing>
+                <property name="left-attach">0</property>
+                <property name="top-attach">9</property>
+                <property name="width">4</property>
+            </packing>
+        </child>
+        <child>
+            <object class="GtkBox" id="status_box">
+                <property name="margin-top">6</property>
+                <property name="orientation">horizontal</property>
+                <property name="spacing">6</property>
+                <property name="visible">True</property>
+                <child>
+                    <object class="GtkStatusbar" id="cddb_bar">
+                        <property name="hexpand">True</property>
+                        <property name="visible">True</property>
+                    </object>
+                </child>
+                <child>
+                    <object class="GtkButtonBox" id="button_box">
+                        <property name="layout-style">end</property>
+                        <property name="orientation">horizontal</property>
+                        <property name="spacing">6</property>
+                        <property name="visible">True</property>
+                        <child>
+                            <object class="GtkButton" id="close_button">
+                                <property name="label" translatable="yes">_Close</property>
+                                <property name="use-underline">True</property>
+                                <property name="visible">True</property>
+                            </object>
+                        </child>
+                        <child>
+                            <object class="GtkButton" id="apply_button">
+                                <property name="label" translatable="yes">_Apply</property>
+                                <property name="sensitive">False</property>
+                                <property name="tooltip-text" translatable="yes">Load the selected lines or 
all lines (if no lines are selected)</property>
+                                <property name="use-underline">True</property>
+                                <property name="visible">True</property>
+                            </object>
+                        </child>
+                    </object>
+                </child>
+            </object>
+            <packing>
+                <property name="left-attach">0</property>
+                <property name="top-attach">10</property>
+                <property name="width">4</property>
+            </packing>
+        </child>
+    </object>
+</interface>
diff --git a/data/org.gnome.EasyTAG.gresource.xml b/data/org.gnome.EasyTAG.gresource.xml
index b024e74..0e60546 100644
--- a/data/org.gnome.EasyTAG.gresource.xml
+++ b/data/org.gnome.EasyTAG.gresource.xml
@@ -2,6 +2,7 @@
 <gresources>
     <gresource prefix='/org/gnome/EasyTAG'>
         <file preprocess='xml-stripblanks'>browser.ui</file>
+        <file preprocess='xml-stripblanks'>cddb_dialog.ui</file>
         <file preprocess='xml-stripblanks'>load_files_dialog.ui</file>
         <file preprocess='xml-stripblanks'>menus.ui</file>
         <file preprocess='xml-stripblanks'>playlist_dialog.ui</file>
diff --git a/data/org.gnome.EasyTAG.gschema.xml b/data/org.gnome.EasyTAG.gschema.xml
index 91da89b..c007a7d 100644
--- a/data/org.gnome.EasyTAG.gschema.xml
+++ b/data/org.gnome.EasyTAG.gschema.xml
@@ -150,12 +150,6 @@
       
<default>['blues','classical','country','folk','jazz','misc','newage','reggae','rock','soundtrack']</default>
     </key>
 
-    <key name="cddb-search-show-categories" type="b">
-      <summary>Show the categories list in the CDDB manual search</summary>
-      <description>Whether to show the list of categories which can be searched with a manual CDDB 
query</description>
-      <default>false</default>
-    </key>
-
     <key name="cddb-set-fields" flags="org.gnome.EasyTAG.EtCddbSetField">
       <summary>The tag fields to set when matching against CDDB results</summary>
       <description>Which tag fields should be set when matching against selected files and CDDB 
results</description>
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 6c57cb3..f7e4eda 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,6 +1,7 @@
 data/easytag.appdata.xml.in
 data/easytag.desktop.in
 [type: gettext/glade]data/browser.ui
+[type: gettext/glade]data/cddb_dialog.ui
 [type: gettext/glade]data/load_files_dialog.ui
 [type: gettext/glade]data/menus.ui
 [type: gettext/glade]data/playlist_dialog.ui
diff --git a/src/application_window.c b/src/application_window.c
index 836ac28..29771c1 100644
--- a/src/application_window.c
+++ b/src/application_window.c
@@ -2023,11 +2023,6 @@ et_application_window_apply_changes (EtApplicationWindow *self)
         et_scan_dialog_apply_changes (ET_SCAN_DIALOG (priv->scan_dialog));
     }
 
-    if (priv->cddb_dialog)
-    {
-        et_cddb_dialog_apply_changes (ET_CDDB_DIALOG (priv->cddb_dialog));
-    }
-
     if (priv->search_dialog)
     {
         et_search_dialog_apply_changes (ET_SEARCH_DIALOG (priv->search_dialog));
diff --git a/src/cddb_dialog.c b/src/cddb_dialog.c
index bb6a0c5..4923e6b 100644
--- a/src/cddb_dialog.c
+++ b/src/cddb_dialog.c
@@ -73,10 +73,6 @@ struct _EtCDDBDialogPrivate
     GtkWidget *apply_button;
     GtkWidget *search_button;
     GtkWidget *stop_search_button;
-    GtkWidget *stop_auto_search_button;
-
-    GtkWidget *display_red_lines_toggle;
-    GtkWidget *show_categories_toggle;
 
     GtkWidget *status_bar;
     guint status_bar_context;
@@ -216,38 +212,6 @@ static gboolean Cddb_Get_Album_Tracks_List_CB (EtCDDBDialog *self, GtkTreeSelect
  */
 
 static void
-on_show_categories_toggle_toggled (EtCDDBDialog *self)
-{
-    EtCDDBDialogPrivate *priv;
-    gsize i;
-
-    priv = et_cddb_dialog_get_instance_private (self);
-
-    /* FIXME: Toggle visibility of the container instead. */
-    if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (priv->show_categories_toggle)))
-    {
-        gtk_widget_show (priv->separator_h);
-
-        for (i = 0; i < 10; i++)
-        {
-            gtk_widget_show (priv->category_toggle[i]);
-        }
-    }
-    else
-    {
-        gtk_widget_hide (priv->separator_h);
-
-        for (i = 0; i < 10; i++)
-        {
-            gtk_widget_hide (priv->category_toggle[i]);
-        }
-    }
-
-    /* Force the window to be redrawn. */
-    gtk_widget_queue_resize (GTK_WIDGET (self));
-}
-
-static void
 update_apply_button_sensitivity (EtCDDBDialog *self)
 {
     EtCDDBDialogPrivate *priv;
@@ -1015,7 +979,6 @@ Cddb_Get_Album_Tracks_List (EtCDDBDialog *self, GtkTreeSelection* selection)
             Log_Print(LOG_ERROR,"%s",msg);
             g_free(msg);
             gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-            gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
             return FALSE;
         }
 
@@ -1332,25 +1295,6 @@ Cddb_Load_Album_List (EtCDDBDialog *self, gboolean only_red_lines)
     }
 }
 
-static void
-Cddb_Display_Red_Lines_In_Result (EtCDDBDialog *self)
-{
-    EtCDDBDialogPrivate *priv;
-
-    priv = et_cddb_dialog_get_instance_private (self);
-
-    if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (priv->display_red_lines_toggle)))
-    {
-        /* Show only red lines. */
-        Cddb_Load_Album_List (self, TRUE);
-    }
-    else
-    {
-        /* Show all lines. */
-        Cddb_Load_Album_List (self, FALSE);
-    }
-}
-
 /*
  * Free priv->album_list
  */
@@ -1552,8 +1496,6 @@ Cddb_Search_Album_List_From_String_Freedb (EtCDDBDialog *self)
         *tmp = '\0';
     }
 
-    Add_String_To_Combo_List(priv->search_string_model, string);
-
     /* Convert spaces to '+' */
     while ( (tmp=strchr(string,' '))!=NULL )
         *tmp = '+';
@@ -1639,8 +1581,6 @@ Cddb_Search_Album_List_From_String_Freedb (EtCDDBDialog *self)
         Cddb_Free_Album_List (self);
     }
     gtk_widget_set_sensitive (GTK_WIDGET (priv->stop_search_button), TRUE);
-    gtk_widget_set_sensitive (GTK_WIDGET (priv->stop_auto_search_button),
-                              TRUE);
 
 
     /*
@@ -1660,7 +1600,6 @@ Cddb_Search_Album_List_From_String_Freedb (EtCDDBDialog *self)
         g_free(cddb_server_name);
         g_free(cddb_server_cgi_path);
         gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-        gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
         return FALSE;
     }
 
@@ -1677,7 +1616,6 @@ Cddb_Search_Album_List_From_String_Freedb (EtCDDBDialog *self)
         g_free(cddb_server_cgi_path);
         g_free (proxy_hostname);
         gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-        gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
         if (file)
             fclose(file);
         return FALSE;
@@ -1811,7 +1749,6 @@ Cddb_Search_Album_List_From_String_Freedb (EtCDDBDialog *self)
     }
 
     gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-    gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
 
     /* Close connection. */
     Cddb_Close_Connection (self, socket_id);
@@ -1823,9 +1760,6 @@ Cddb_Search_Album_List_From_String_Freedb (EtCDDBDialog *self)
     gtk_statusbar_push(GTK_STATUSBAR(priv->status_bar),priv->status_bar_context,msg);
     g_free(msg);
 
-    // Initialize the button
-    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->display_red_lines_toggle),FALSE);
-
     /* Load the albums found in the list. */
     Cddb_Load_Album_List (self, FALSE);
 
@@ -1891,8 +1825,6 @@ Cddb_Search_Album_List_From_String_Gnudb (EtCDDBDialog *self)
         *tmp = '\0';
     }
 
-    Add_String_To_Combo_List(priv->search_string_model, string);
-
     /* Convert spaces to '+' */
     while ( (tmp=strchr(string,' '))!=NULL )
         *tmp = '+';
@@ -1906,7 +1838,6 @@ Cddb_Search_Album_List_From_String_Gnudb (EtCDDBDialog *self)
         Cddb_Free_Album_List (self);
     }
     gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),TRUE);
-    gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),TRUE);
 
 
     // Do a loop to load all the pages of results
@@ -1936,7 +1867,6 @@ Cddb_Search_Album_List_From_String_Gnudb (EtCDDBDialog *self)
             g_free(cddb_server_cgi_path);
             g_free (proxy_hostname);
             gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-            gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
             return FALSE;
         }
 
@@ -1978,8 +1908,6 @@ Cddb_Search_Album_List_From_String_Gnudb (EtCDDBDialog *self)
             g_free (proxy_hostname);
             gtk_widget_set_sensitive (GTK_WIDGET (priv->stop_search_button),
                                       FALSE);
-            gtk_widget_set_sensitive (GTK_WIDGET (priv->stop_auto_search_button),
-                                      FALSE);
             return FALSE;
         }
         g_free(cddb_in);
@@ -2010,7 +1938,6 @@ Cddb_Search_Album_List_From_String_Gnudb (EtCDDBDialog *self)
             g_free(cddb_server_cgi_path);
             g_free (proxy_hostname);
             gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-            gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
             return FALSE;
         }
 
@@ -2029,7 +1956,6 @@ Cddb_Search_Album_List_From_String_Gnudb (EtCDDBDialog *self)
             g_free(cddb_server_cgi_path);
             g_free (proxy_hostname);
             gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-            gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
             if (file)
                 fclose(file);
             return FALSE;
@@ -2190,15 +2116,11 @@ Cddb_Search_Album_List_From_String_Gnudb (EtCDDBDialog *self)
 
 
     gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-    gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
 
     msg = g_strdup_printf(ngettext("Found one matching album","Found %d matching 
albums",num_albums),num_albums);
     gtk_statusbar_push(GTK_STATUSBAR(priv->status_bar),priv->status_bar_context,msg);
     g_free(msg);
 
-    // Initialize the button
-    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->display_red_lines_toggle),FALSE);
-
     /* Load the albums found in the list. */
     Cddb_Load_Album_List (self, FALSE);
 
@@ -2726,7 +2648,6 @@ et_cddb_dialog_on_response (EtCDDBDialog *self,
     {
         case GTK_RESPONSE_CLOSE:
             priv->stop_searching = TRUE;
-            et_cddb_dialog_apply_changes (self);
             gtk_widget_hide (GTK_WIDGET (self));
             break;
         case GTK_RESPONSE_DELETE_EVENT:
@@ -2747,22 +2668,14 @@ static void
 create_cddb_dialog (EtCDDBDialog *self)
 {
     EtCDDBDialogPrivate *priv;
-    GtkWidget *VBox, *vbox, *hbox, *notebookvbox;
-    GtkWidget *Frame;
-    GtkWidget *Table;
-    GtkWidget *Label;
-    GtkWidget *Button;
-    GtkWidget *Separator;
-    GtkWidget *ScrollWindow;
-    GtkWidget *Icon;
-    GtkWidget *combo;
-    GtkWidget *paned;
-    GtkWidget *notebook;
-    const gchar *CddbAlbumList_Titles[] = { NULL, N_("Artist / Album"), N_("Category")}; // Note: don't set 
"" instead of NULL else this will cause problem with translation language
-    const gchar *CddbTrackList_Titles[] = { "#", N_("Track Name"), N_("Duration")};
-    GtkCellRenderer* renderer;
-    GtkTreeViewColumn* column;
+    GtkWidget *vbox;
+    GtkWidget *grid;
+    GtkWidget *button;
+    GtkWidget *tool_button;
+    GtkWidget *image;
     GtkTreePath *path;
+    GtkBuilder *builder;
+    GError *error = NULL;
 
     priv = et_cddb_dialog_get_instance_private (self);
 
@@ -2773,114 +2686,59 @@ create_cddb_dialog (EtCDDBDialog *self)
     g_signal_connect (self, "delete-event",
                       G_CALLBACK (gtk_widget_hide_on_delete), NULL);
 
-    VBox = gtk_dialog_get_content_area (GTK_DIALOG (self));
+    vbox = gtk_dialog_get_content_area (GTK_DIALOG (self));
     gtk_container_set_border_width (GTK_CONTAINER (self), BOX_SPACING);
 
-     /*
-      * Cddb NoteBook
-      */
-    notebook = gtk_notebook_new ();
-    gtk_notebook_popup_enable (GTK_NOTEBOOK (notebook));
-    gtk_box_pack_start (GTK_BOX (VBox), notebook, FALSE, FALSE, 0);
-
-    /*
-     * 1 - Page for automatic search (generate the CDDBId from files)
-     */
-    Label = gtk_label_new(_("Automatic Search"));
+     /* Dialog content. */
+    builder = gtk_builder_new ();
+    gtk_builder_add_from_resource (builder,
+                                   "/org/gnome/EasyTAG/cddb_dialog.ui",
+                                   &error);
 
-    notebookvbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, BOX_SPACING);
-    gtk_container_set_border_width (GTK_CONTAINER (notebookvbox), BOX_SPACING);
-    gtk_notebook_append_page (GTK_NOTEBOOK (notebook), notebookvbox, Label);
-
-    hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, BOX_SPACING);
-    gtk_box_pack_start(GTK_BOX(notebookvbox),hbox,FALSE,FALSE,0);
+    if (error != NULL)
+    {
+        g_error ("Unable to get CDDB dialog from resource: %s",
+                 error->message);
+    }
 
-    Label = gtk_label_new(_("Request CDDB"));
-    gtk_widget_set_halign (Label, GTK_ALIGN_END);
-    gtk_box_pack_start(GTK_BOX(hbox),Label,FALSE,FALSE,0);
+    grid = GTK_WIDGET (gtk_builder_get_object (builder, "cddb_grid"));
+    gtk_box_pack_start (GTK_BOX (vbox), grid, TRUE, TRUE, 0);
 
     /* Button to generate CddbId and request string from the selected files. */
-    Button = gtk_button_new_with_mnemonic (_("_Search"));
-    gtk_box_pack_start (GTK_BOX (hbox), Button, FALSE, FALSE, 0);
-    gtk_widget_set_can_default (Button, TRUE);
-    gtk_widget_grab_default (Button);
-    g_signal_connect_swapped (Button, "clicked",
+    button = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                 "automatic_search_button"));
+    gtk_widget_set_can_default (button, TRUE);
+    gtk_widget_grab_default (button);
+    g_signal_connect_swapped (button, "clicked",
                               G_CALLBACK (et_cddb_dialog_search_from_selection),
                               self);
-    gtk_widget_set_tooltip_text (Button,
-                                _("Generate the CDDB disc ID using the selected files (the order is 
important)"));
-
-    // Button to stop the search
-    priv->stop_auto_search_button = gtk_button_new ();
-    gtk_container_add (GTK_CONTAINER (priv->stop_auto_search_button),
-                       gtk_image_new_from_icon_name ("process-stop",
-                                                     GTK_ICON_SIZE_BUTTON));
-    gtk_box_pack_start(GTK_BOX(hbox),priv->stop_auto_search_button,FALSE,FALSE,0);
-    gtk_button_set_relief(GTK_BUTTON(priv->stop_auto_search_button),GTK_RELIEF_NONE);
-    gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
-    g_signal_connect_swapped (priv->stop_auto_search_button, "clicked",
-                              G_CALLBACK (stop_search), self);
-    gtk_widget_set_tooltip_text (priv->stop_auto_search_button,
-                                 _("Stop the search"));
 
-    // Separator line
-    Separator = gtk_separator_new(GTK_ORIENTATION_VERTICAL);
-    gtk_box_pack_start(GTK_BOX(hbox),Separator,FALSE,FALSE,0);
+    /* Button to stop the search. */
+    priv->stop_search_button = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                                   "stop_button"));
+    g_signal_connect_swapped (priv->stop_search_button, "clicked",
+                              G_CALLBACK (stop_search), self);
 
     /* Button to quit. */
-    Button = gtk_button_new_with_mnemonic (_("_Close"));
-    gtk_box_pack_end(GTK_BOX(hbox),Button,FALSE,FALSE,0);
-    gtk_widget_set_can_default(Button,TRUE);
-    g_signal_connect_swapped (Button, "clicked",
+    button = GTK_WIDGET (gtk_builder_get_object (builder, "close_button"));
+    gtk_widget_set_can_default (button, TRUE);
+    g_signal_connect_swapped (button, "clicked",
                               G_CALLBACK (Cddb_Destroy_Window), self);
 
-    /*
-     * 2 - Page for manual search
-     */
-    Label = gtk_label_new(_("Manual Search"));
-    notebookvbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, BOX_SPACING);
-    gtk_notebook_append_page (GTK_NOTEBOOK (notebook), notebookvbox, Label);
-    gtk_container_set_border_width (GTK_CONTAINER (notebookvbox), BOX_SPACING);
-
-    /*
-     * Words to search
-     */
-    hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, BOX_SPACING);
-    gtk_box_pack_start(GTK_BOX(notebookvbox),hbox,FALSE,FALSE,0);
-
-    Label = gtk_label_new(_("Words:"));
-    gtk_widget_set_halign (Label, GTK_ALIGN_END);
-    gtk_box_pack_start(GTK_BOX(hbox),Label,FALSE,FALSE,0);
-
-    g_assert (priv->search_string_model == NULL);
-    priv->search_string_model = gtk_list_store_new (MISC_COMBO_COUNT,
-                                                G_TYPE_STRING);
-
-    combo = gtk_combo_box_new_with_model_and_entry (GTK_TREE_MODEL (priv->search_string_model));
-    g_object_unref (priv->search_string_model);
-    gtk_combo_box_set_entry_text_column (GTK_COMBO_BOX (combo),
-                                         MISC_COMBO_TEXT);
-    gtk_widget_set_size_request (combo, 220, -1);
-    gtk_box_pack_start (GTK_BOX (hbox), combo, FALSE, TRUE, 0);
-    gtk_widget_set_tooltip_text (combo,
-                                 _("Enter the words to search (separated by a space or ‘+’)"));
-    /* History List. */
-    Load_Cddb_Search_String_List (priv->search_string_model, MISC_COMBO_TEXT);
-
-    priv->search_string_entry = gtk_bin_get_child (GTK_BIN (combo));
+    priv->search_string_entry = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                                    "search_entry"));
     g_signal_connect_swapped (priv->search_string_entry, "activate",
                               G_CALLBACK (Cddb_Search_Album_List_From_String),
                               self);
-    gtk_entry_set_text (GTK_ENTRY (priv->search_string_entry),"");
 
     /* Set content of the clipboard if available. */
     gtk_editable_paste_clipboard (GTK_EDITABLE (priv->search_string_entry));
 
     /* Button to run the search. */
-    priv->search_button = gtk_button_new_with_mnemonic (_("_Search"));
-    gtk_box_pack_start(GTK_BOX(hbox),priv->search_button,FALSE,FALSE,0);
-    gtk_widget_set_can_default(priv->search_button,TRUE);
-    gtk_widget_grab_default(priv->search_button);
+    priv->search_button = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                              "manual_search_button"));
+    gtk_widget_set_can_default (priv->search_button, TRUE);
+    gtk_widget_grab_default (priv->search_button);
     g_signal_connect_swapped (priv->search_button, "clicked",
                               G_CALLBACK (Cddb_Search_Album_List_From_String),
                               self);
@@ -2888,69 +2746,25 @@ create_cddb_dialog (EtCDDBDialog *self)
                               G_CALLBACK (update_search_button_sensitivity),
                               self);
 
-    /* Button to stop the search. */
-    priv->stop_search_button = gtk_button_new ();
-    gtk_container_add (GTK_CONTAINER (priv->stop_search_button),
-                       gtk_image_new_from_icon_name ("process-stop",
-                                                     GTK_ICON_SIZE_BUTTON));
-    gtk_box_pack_start(GTK_BOX(hbox),priv->stop_search_button,FALSE,FALSE,0);
-    gtk_button_set_relief(GTK_BUTTON(priv->stop_search_button),GTK_RELIEF_NONE);
-    gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-    g_signal_connect (priv->stop_search_button, "clicked",
-                      G_CALLBACK (stop_search), self);
-    gtk_widget_set_tooltip_text (priv->stop_search_button, _("Stop the search"));
-
-    /* Button to quit. */
-    Button = gtk_button_new_with_mnemonic (_("_Close"));
-    gtk_box_pack_end(GTK_BOX(hbox),Button,FALSE,FALSE,0);
-    gtk_widget_set_can_default(Button,TRUE);
-    g_signal_connect_swapped (Button, "clicked",
-                              G_CALLBACK (Cddb_Destroy_Window), self);
-
-    /*
-     * Search options
-     */
-    Frame = gtk_frame_new(_("Search In:"));
-    gtk_box_pack_start(GTK_BOX(notebookvbox),Frame,FALSE,TRUE,0);
-
-    Table = gtk_grid_new ();
-    gtk_container_add(GTK_CONTAINER(Frame),Table);
-    gtk_grid_set_row_spacing (GTK_GRID (Table), 1);
-    gtk_grid_set_column_spacing (GTK_GRID (Table), 1);
-
+    /* Search options. */
     {
         gsize i;
-        GFlagsClass *flags_class;
         static const struct
         {
-            const gchar *label;
-            /* const gchar *tooltip; */
-        } mapping[] =
+            const gchar *id;
+        } ids[] =
         {
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Artist". */
-            { N_("Artist") },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Album". */
-            { N_("Album") },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Track Name". */
-            { N_("Track Name") },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Other". */
-            { N_("Other") }
+            { "artist_check" },
+            { "album_check" },
+            { "track_check" },
+            { "other_check" }
         };
 
-        flags_class = g_type_class_ref (ET_TYPE_CDDB_SEARCH_FIELD);
-
-        for (i = 0; i < G_N_ELEMENTS (mapping); i++)
+        for (i = 0; i < G_N_ELEMENTS (ids); i++)
         {
-            GFlagsValue *flags_value;
             GtkWidget *widget;
 
-            flags_value = g_flags_get_first_value (flags_class, 1 << i);
-            widget = gtk_check_button_new_with_label (gettext (mapping[i].label));
-            gtk_widget_set_name (widget, flags_value->value_nick);
+            widget = GTK_WIDGET (gtk_builder_get_object (builder, ids[i].id));
             g_object_set_data (G_OBJECT (widget), "flags-type",
                                GSIZE_TO_POINTER (ET_TYPE_CDDB_SEARCH_FIELD));
             g_settings_bind_with_mapping (MainSettings, "cddb-search-fields",
@@ -2959,72 +2773,37 @@ create_cddb_dialog (EtCDDBDialog *self)
                                           et_settings_flags_toggle_get,
                                           et_settings_flags_toggle_set,
                                           widget, NULL);
-            gtk_grid_attach (GTK_GRID (Table), widget, i, 0, 1, 1);
             g_signal_connect_swapped (widget, "toggled",
                                       G_CALLBACK (update_search_button_sensitivity),
                                       self);
         }
     }
 
-    priv->separator_h = gtk_separator_new(GTK_ORIENTATION_HORIZONTAL);
-    gtk_grid_attach (GTK_GRID (Table), priv->separator_h, 0, 1, 6, 1);
-
     {
         gsize i;
-        GFlagsClass *flags_class;
         static const struct
         {
-            const gchar *label;
-            const gchar *tooltip;
-        } mapping[] =
-        {
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Blues". */
-            { N_("Blues"), NULL },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Classical". */
-            { N_("Classical"), NULL },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Country". */
-            { N_("Country"), NULL },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Folk". */
-            { N_("Folk"), NULL },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Jazz". */
-            { N_("Jazz"), NULL },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Misc". */
-            { N_("Misc."),
-              N_("others that do not fit in the above categories") },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "New age". */
-            { N_("New Age"), NULL },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Reggae". */
-            { N_("Reggae"), NULL },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Rock". */
-            { N_("Rock"),
-              N_("includes: funk, soul, rap, pop, industrial, metal and so on") },
-            /* Translators: This option is for the previous 'search in' option.
-             * For instance, translate this as "Search in:" "Soundtrack". */
-            { N_("Soundtrack"), N_("movies, shows") }
-    
+            const gchar *id;
+        } ids[] =
+        {
+            { "blues_check" },
+            { "classical_check" },
+            { "country_check" },
+            { "folk_check" },
+            { "jazz_check" },
+            { "misc_check"  },
+            { "newage_check" },
+            { "reggae_check" },
+            { "rock_check" },
+            { "soundtrack_check" }
         };
 
-        flags_class = g_type_class_ref (ET_TYPE_CDDB_SEARCH_CATEGORY);
-
-        for (i = 0; i < G_N_ELEMENTS (mapping); i++)
+        for (i = 0; i < G_N_ELEMENTS (ids); i++)
         {
-            GFlagsValue *flags_value;
             GtkWidget *widget;
 
-            flags_value = g_flags_get_first_value (flags_class, 1 << i);
-            widget = gtk_check_button_new_with_label (gettext (mapping[i].label));
+            widget = GTK_WIDGET (gtk_builder_get_object (builder, ids[i].id));
             priv->category_toggle[i] = widget;
-            gtk_widget_set_tooltip_text (widget, gettext (mapping[i].tooltip));
-            gtk_widget_set_name (widget, flags_value->value_nick);
             g_object_set_data (G_OBJECT (widget), "flags-type",
                                GSIZE_TO_POINTER (ET_TYPE_CDDB_SEARCH_CATEGORY));
             g_settings_bind_with_mapping (MainSettings,
@@ -3033,134 +2812,39 @@ create_cddb_dialog (EtCDDBDialog *self)
                                           et_settings_flags_toggle_get,
                                           et_settings_flags_toggle_set,
                                           widget, NULL);
-            /* 2 rows of 5 columns each. */
-            gtk_grid_attach (GTK_GRID (Table), widget, (i % 5), (i / 5) + 2, 1,
-                             1);
             g_signal_connect_swapped (G_OBJECT (widget), "toggled",
                                       G_CALLBACK (update_search_button_sensitivity),
                                       self);
         }
-
-        g_type_class_unref (flags_class);
     }
 
-    /* Button to display/hide the categories. */
-    priv->show_categories_toggle = gtk_toggle_button_new_with_label (_("Categories"));
-    gtk_grid_attach (GTK_GRID (Table), priv->show_categories_toggle, 6, 0, 1,
-                     1);
-    g_settings_bind (MainSettings, "cddb-search-show-categories",
-                     priv->show_categories_toggle, "active",
-                     G_SETTINGS_BIND_DEFAULT);
-    g_signal_connect_swapped (priv->show_categories_toggle, "toggled",
-                              G_CALLBACK (on_show_categories_toggle_toggled),
-                              self);
-
-    /*
-     * Results command
-     */
-    Frame = gtk_frame_new(_("Results:"));
-    gtk_box_pack_start(GTK_BOX(VBox),Frame,FALSE,TRUE,0);
-
-    hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, BOX_SPACING);
-    gtk_container_add(GTK_CONTAINER(Frame),hbox);
-
-    priv->display_red_lines_toggle = gtk_toggle_button_new();
-    Icon = gtk_image_new_from_resource ("/org/gnome/EasyTAG/images/red-lines.png");
-    gtk_container_add(GTK_CONTAINER(priv->display_red_lines_toggle),Icon);
-    gtk_box_pack_start(GTK_BOX(hbox),priv->display_red_lines_toggle,FALSE,FALSE,0);
-    gtk_button_set_relief(GTK_BUTTON(priv->display_red_lines_toggle),GTK_RELIEF_NONE);
-    gtk_widget_set_tooltip_text (priv->display_red_lines_toggle,
-                                 _("Show only red lines (or show all lines) in the ‘Artist / Album’ list"));
-    g_signal_connect_swapped (priv->display_red_lines_toggle, "toggled",
-                              G_CALLBACK (Cddb_Display_Red_Lines_In_Result),
-                              self);
-
-    Icon = gtk_image_new_from_resource ("/org/gnome/EasyTAG/images/unselect-all.png");
-    Button = gtk_button_new ();
-    gtk_container_add (GTK_CONTAINER (Button), Icon);
-    gtk_box_pack_end (GTK_BOX (hbox), Button, FALSE, FALSE, 0);
-    gtk_button_set_relief (GTK_BUTTON (Button), GTK_RELIEF_NONE);
-    gtk_widget_set_tooltip_text (Button, _("Unselect all lines"));
-    g_signal_connect_swapped (Button, "clicked",
+    /* Results command. */
+    image = gtk_image_new_from_resource ("/org/gnome/EasyTAG/images/unselect-all.png");
+    tool_button = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                      "unselect_all_button"));
+    gtk_tool_button_set_icon_widget (GTK_TOOL_BUTTON (tool_button), image);
+    g_signal_connect_swapped (tool_button, "clicked",
                               G_CALLBACK (track_list_unselect_all), self);
 
-    Icon = gtk_image_new_from_resource ("/org/gnome/EasyTAG/images/invert-selection.png");
-    Button = gtk_button_new ();
-    gtk_container_add (GTK_CONTAINER (Button), Icon);
-    gtk_box_pack_end (GTK_BOX (hbox), Button, FALSE, FALSE, 0);
-    gtk_button_set_relief (GTK_BUTTON (Button), GTK_RELIEF_NONE);
-    gtk_widget_set_tooltip_text (Button, _("Invert lines selection"));
-    g_signal_connect_swapped (Button, "clicked",
+    image = gtk_image_new_from_resource ("/org/gnome/EasyTAG/images/invert-selection.png");
+    tool_button = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                      "invert_button"));
+    gtk_tool_button_set_icon_widget (GTK_TOOL_BUTTON (tool_button), image);
+    g_signal_connect_swapped (tool_button, "clicked",
                               G_CALLBACK (Cddb_Track_List_Invert_Selection),
                               self);
 
-    Button = gtk_button_new ();
-    gtk_container_add (GTK_CONTAINER (Button),
-                       gtk_image_new_from_icon_name ("edit-select-all",
-                                                     GTK_ICON_SIZE_BUTTON));
-    gtk_box_pack_end (GTK_BOX (hbox), Button, FALSE, FALSE, 0);
-    gtk_button_set_relief (GTK_BUTTON (Button), GTK_RELIEF_NONE);
-    gtk_widget_set_tooltip_text (Button, _("Select all lines"));
-    g_signal_connect_swapped (Button, "clicked",
+    tool_button = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                      "select_all_button"));
+    g_signal_connect_swapped (tool_button, "clicked",
                               G_CALLBACK (track_list_select_all), self);
 
-    /*
-     * Result of search
-     */
-    paned = gtk_paned_new (GTK_ORIENTATION_HORIZONTAL);
-    gtk_box_pack_start (GTK_BOX (VBox), paned, TRUE, TRUE, 0);
-
+    /* Result of search. */
     /* List of albums. */
-    ScrollWindow = gtk_scrolled_window_new(NULL, NULL);
-    
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(ScrollWindow),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC);
-    gtk_widget_set_size_request(GTK_WIDGET(ScrollWindow),-1,100);
-    gtk_paned_pack1 (GTK_PANED (paned), ScrollWindow, TRUE, FALSE);
-
-    priv->album_list_model = gtk_list_store_new(CDDB_ALBUM_LIST_COUNT,
-                                            GDK_TYPE_PIXBUF,
-                                            G_TYPE_STRING,
-                                            G_TYPE_STRING,
-                                            G_TYPE_POINTER,
-                                            PANGO_TYPE_STYLE,
-                                            G_TYPE_INT,
-                                            GDK_TYPE_RGBA);
-    priv->album_list_view = gtk_tree_view_new_with_model(GTK_TREE_MODEL(priv->album_list_model));
-    g_object_unref (priv->album_list_model);
-    gtk_tree_view_set_search_column (GTK_TREE_VIEW (priv->album_list_view),
-                                     CDDB_ALBUM_LIST_ALBUM);
-
-    renderer = gtk_cell_renderer_pixbuf_new();
-    column = gtk_tree_view_column_new_with_attributes(_(CddbAlbumList_Titles[0]), renderer,
-                                                      "pixbuf",         CDDB_ALBUM_LIST_PIXBUF,
-                                                      NULL);
-    gtk_tree_view_column_set_resizable(column, FALSE);
-    gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
-    gtk_tree_view_append_column(GTK_TREE_VIEW(priv->album_list_view), column);
-
-    renderer = gtk_cell_renderer_text_new();
-    column = gtk_tree_view_column_new_with_attributes(_(CddbAlbumList_Titles[1]), renderer,
-                                                      "text",           CDDB_ALBUM_LIST_ALBUM,
-                                                      "weight",         CDDB_ALBUM_LIST_FONT_WEIGHT,
-                                                      "style",          CDDB_ALBUM_LIST_FONT_STYLE,
-                                                      "foreground-rgba", CDDB_ALBUM_LIST_FOREGROUND_COLOR,
-                                                      NULL);
-    gtk_tree_view_column_set_resizable(column, TRUE);
-    gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
-    gtk_tree_view_append_column(GTK_TREE_VIEW(priv->album_list_view), column);
-
-    renderer = gtk_cell_renderer_text_new();
-    column = gtk_tree_view_column_new_with_attributes(_(CddbAlbumList_Titles[2]), renderer,
-                                                      "text",           CDDB_ALBUM_LIST_CATEGORY,
-                                                      "weight",         CDDB_ALBUM_LIST_FONT_WEIGHT,
-                                                      "style",          CDDB_ALBUM_LIST_FONT_STYLE,
-                                                      "foreground-rgba", CDDB_ALBUM_LIST_FOREGROUND_COLOR,
-                                                      NULL);
-    gtk_tree_view_column_set_resizable(column, TRUE);
-    gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
-    gtk_tree_view_append_column(GTK_TREE_VIEW(priv->album_list_view), column);
-    //gtk_tree_view_columns_autosize(GTK_TREE_VIEW(priv->album_list_view));
-
-    gtk_container_add(GTK_CONTAINER(ScrollWindow), priv->album_list_view);
+    priv->album_list_model = GTK_LIST_STORE (gtk_builder_get_object (builder,
+                                                                     "album_list_model"));
+    priv->album_list_view = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                                "album_view"));
 
     path = gtk_tree_path_new_first ();
     gtk_tree_view_set_cursor (GTK_TREE_VIEW (priv->album_list_view), path, NULL,
@@ -3173,104 +2857,49 @@ create_cddb_dialog (EtCDDBDialog *self)
                               G_CALLBACK (Cddb_Get_Album_Tracks_List_CB),
                               self);
 
-    // List of tracks
-    ScrollWindow = gtk_scrolled_window_new(NULL,NULL);
-    
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(ScrollWindow),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC);
-
-
-    gtk_widget_set_size_request(GTK_WIDGET(ScrollWindow), -1, 100);
-    gtk_paned_pack2 (GTK_PANED (paned), ScrollWindow, TRUE, FALSE);
-
-    priv->track_list_model = gtk_list_store_new(CDDB_TRACK_LIST_COUNT,
-                                            G_TYPE_UINT,
-                                            G_TYPE_STRING,
-                                            G_TYPE_STRING,
-                                            G_TYPE_POINTER,
-                                            G_TYPE_POINTER);
-    priv->track_list_view = gtk_tree_view_new_with_model(GTK_TREE_MODEL(priv->track_list_model));
-    g_object_unref (priv->track_list_model);
-    renderer = gtk_cell_renderer_text_new();
-    g_object_set(G_OBJECT(renderer), "xalign", 1.0, NULL); // Align to the right
-    column = gtk_tree_view_column_new_with_attributes(_(CddbTrackList_Titles[0]), renderer,
-                                                      "text", CDDB_TRACK_LIST_NUMBER, NULL);
-    gtk_tree_view_append_column(GTK_TREE_VIEW(priv->track_list_view), column);
-    gtk_tree_sortable_set_sort_func(GTK_TREE_SORTABLE(priv->track_list_model), SORT_LIST_NUMBER,
-                                    Cddb_Track_List_Sort_Func, GINT_TO_POINTER(SORT_LIST_NUMBER), NULL);
-    gtk_tree_view_column_set_sort_column_id(column, SORT_LIST_NUMBER);
-    renderer = gtk_cell_renderer_text_new();
-    column = gtk_tree_view_column_new_with_attributes(_(CddbTrackList_Titles[1]), renderer,
-                                                      "text", CDDB_TRACK_LIST_NAME, NULL);
-    gtk_tree_view_column_set_resizable(column, TRUE);
-    gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
-    gtk_tree_view_append_column(GTK_TREE_VIEW(priv->track_list_view), column);
-    gtk_tree_sortable_set_sort_func(GTK_TREE_SORTABLE(priv->track_list_model), SORT_LIST_NAME,
-                                    Cddb_Track_List_Sort_Func, GINT_TO_POINTER(SORT_LIST_NAME), NULL);
-    gtk_tree_view_column_set_sort_column_id(column, SORT_LIST_NAME);
-
-    renderer = gtk_cell_renderer_text_new();
-    g_object_set(G_OBJECT(renderer), "xalign", 1.0, NULL); // Align to the right
-    column = gtk_tree_view_column_new_with_attributes(_(CddbTrackList_Titles[2]), renderer,
-                                                      "text", CDDB_TRACK_LIST_TIME, NULL);
-    gtk_tree_view_append_column(GTK_TREE_VIEW(priv->track_list_view), column);
-
-    //gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(priv->track_list_model), SORT_LIST_NUMBER, 
GTK_SORT_ASCENDING);
-    gtk_tree_view_set_reorderable(GTK_TREE_VIEW(priv->track_list_view), TRUE);
-
-    gtk_container_add(GTK_CONTAINER(ScrollWindow),priv->track_list_view);
-    gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->track_list_view)),
-                                GTK_SELECTION_MULTIPLE);
+    /* List of tracks. */
+    priv->track_list_model = GTK_LIST_STORE (gtk_builder_get_object (builder,
+                                                                     "track_list_model"));
+    priv->track_list_view = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                                "track_view"));
     g_signal_connect_swapped (gtk_tree_view_get_selection (GTK_TREE_VIEW (priv->track_list_view)),
                               "changed",
                               G_CALLBACK (Cddb_Track_List_Row_Selected), self);
     g_signal_connect_swapped (priv->track_list_view, "button-press-event",
                               G_CALLBACK (on_track_list_button_press_event),
                               self);
-    gtk_widget_set_tooltip_text (priv->track_list_view,
-      _("Select lines from which tags will be applied to "
-        "your files list. All lines will be processed if no line is selected.\n"
-        "You can also reorder lines in this list before using the ‘apply’ button"));
-
-    /*
-     * Apply results to fields...
-     */
-    Frame = gtk_frame_new(_("Set Into:"));
-    gtk_box_pack_start(GTK_BOX(VBox),Frame,FALSE,TRUE,0);
 
-    vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, BOX_SPACING);
-    gtk_container_add(GTK_CONTAINER(Frame),vbox);
-
-    hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, BOX_SPACING);
-    gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,0);
+    gtk_tree_sortable_set_sort_func (GTK_TREE_SORTABLE (priv->track_list_model),
+                                     SORT_LIST_NUMBER,
+                                     Cddb_Track_List_Sort_Func,
+                                     GINT_TO_POINTER (SORT_LIST_NUMBER), NULL);
+    gtk_tree_sortable_set_sort_func (GTK_TREE_SORTABLE (priv->track_list_model),
+                                     SORT_LIST_NAME, Cddb_Track_List_Sort_Func,
+                                     GINT_TO_POINTER (SORT_LIST_NAME), NULL);
 
+    /* Apply results to fields.  */
     {
         gsize i;
-        GFlagsClass *flags_class;
         static const struct
         {
-            const gchar *label;
-            /* const gchar *tooltip; */
-        } mapping[] =
-        {
-            { N_("Filename") },
-            { N_("Title") },
-            { N_("Artist") },
-            { N_("Album") },
-            { N_("Year") },
-            { N_("Track #") },
-            { N_("# Tracks") },
-            { N_("Genre") }
+            const gchar *id;
+        } ids[] =
+        {
+            { "filename_check" },
+            { "title_check" },
+            { "fill_artist_check" },
+            { "fill_album_check" },
+            { "year_check" },
+            { "fill_track_check" },
+            { "track_total_check" },
+            { "genre_check" }
         };
 
-        flags_class = g_type_class_ref (ET_TYPE_CDDB_SET_FIELD);
-
-        for (i = 0; i < G_N_ELEMENTS (mapping); i++)
+        for (i = 0; i < G_N_ELEMENTS (ids); i++)
         {
-            GFlagsValue *flags_value;
             GtkWidget *widget;
 
-            flags_value = g_flags_get_first_value (flags_class, 1 << i);
-            widget = gtk_check_button_new_with_label (gettext (mapping[i].label));
-            gtk_widget_set_name (widget, flags_value->value_nick);
+            widget = GTK_WIDGET (gtk_builder_get_object (builder, ids[i].id));
             g_object_set_data (G_OBJECT (widget), "flags-type",
                                GSIZE_TO_POINTER (ET_TYPE_CDDB_SET_FIELD));
             g_settings_bind_with_mapping (MainSettings, "cddb-set-fields",
@@ -3279,75 +2908,44 @@ create_cddb_dialog (EtCDDBDialog *self)
                                           et_settings_flags_toggle_get,
                                           et_settings_flags_toggle_set,
                                           widget, NULL);
-            gtk_box_pack_start (GTK_BOX (hbox), widget, FALSE, FALSE, 2);
             g_signal_connect_swapped (G_OBJECT (widget), "toggled",
                                       G_CALLBACK (update_apply_button_sensitivity),
                                       self);
         }
-
-        g_type_class_unref (flags_class);
     }
 
-    hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, BOX_SPACING);
-    gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,0);
-
-    // Check box to run the scanner
-    priv->run_scanner_toggle = gtk_check_button_new_with_label(_("Run the current scanner for each file"));
-    gtk_box_pack_start(GTK_BOX(hbox),priv->run_scanner_toggle,FALSE,TRUE,0);
+    /* Check box to run the scanner. */
+    priv->run_scanner_toggle = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                                   "scanner_check"));
     g_settings_bind (MainSettings, "cddb-run-scanner",
                      priv->run_scanner_toggle, "active",
                      G_SETTINGS_BIND_DEFAULT);
-    gtk_widget_set_tooltip_text (priv->run_scanner_toggle,
-                                 _("Whether to run the tag scanner, with the current settings, on the CDDB 
results"));
 
-    // Check box to use DLM (also used in the preferences window)
-    priv->use_dlm2_toggle = gtk_check_button_new_with_label(_("Match lines with the Levenshtein algorithm"));
-    gtk_box_pack_start(GTK_BOX(hbox),priv->use_dlm2_toggle,FALSE,FALSE,0);
+    /* Check box to use DLM (also used in the preferences window). */
+    priv->use_dlm2_toggle = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                                "dlm_check"));
     g_settings_bind (MainSettings, "cddb-dlm-enabled", priv->use_dlm2_toggle,
                      "active", G_SETTINGS_BIND_DEFAULT);
-    gtk_widget_set_tooltip_text (priv->use_dlm2_toggle,
-                                 _("Whether to use the DLM algorithm to match CDDB results to files"));
 
     /* Button to apply. */
-    priv->apply_button = gtk_button_new_with_mnemonic (_("_Apply"));
-    gtk_box_pack_end(GTK_BOX(hbox),priv->apply_button,FALSE,FALSE,0);
+    priv->apply_button = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                             "apply_button"));
     g_signal_connect_swapped (priv->apply_button, "clicked",
                               G_CALLBACK (Cddb_Set_Track_Infos_To_File_List),
                               self);
-    gtk_widget_set_tooltip_text (priv->apply_button,
-                                 _("Load the selected lines or all lines (if no lines are selected)"));
 
-    /*
-     * Status bar
-     */
-    priv->status_bar = gtk_statusbar_new();
-    gtk_box_pack_start(GTK_BOX(VBox),priv->status_bar,FALSE,TRUE,0);
-    gtk_widget_set_size_request(priv->status_bar, 300, -1);
-    priv->status_bar_context = gtk_statusbar_get_context_id(GTK_STATUSBAR(priv->status_bar),"Messages");
-    gtk_statusbar_push (GTK_STATUSBAR (priv->status_bar), priv->status_bar_context,
-                        _("Ready to search"));
+    /* Status bar. */
+    priv->status_bar = GTK_WIDGET (gtk_builder_get_object (builder,
+                                                           "cddb_bar"));
+    priv->status_bar_context = gtk_statusbar_get_context_id (GTK_STATUSBAR (priv->status_bar),
+                                                             "Messages");
+    gtk_statusbar_push (GTK_STATUSBAR (priv->status_bar),
+                        priv->status_bar_context, _("Ready to search"));
 
     g_signal_emit_by_name (priv->search_string_entry, "changed");
     priv->stop_searching = FALSE;
 
-    /* TODO: Force resize window? */
-    g_signal_emit_by_name (priv->show_categories_toggle, "toggled");
-}
-
-/*
- * For the configuration file...
- */
-void
-et_cddb_dialog_apply_changes (EtCDDBDialog *self)
-{
-    EtCDDBDialogPrivate *priv;
-
-    g_return_if_fail (ET_CDDB_DIALOG (self));
-
-    priv = et_cddb_dialog_get_instance_private (self);
-
-    /* Save combobox history lists before exit. */
-    Save_Cddb_Search_String_List(priv->search_string_model, MISC_COMBO_TEXT);
+    g_object_unref (builder);
 }
 
 /*
@@ -3718,7 +3316,6 @@ et_cddb_dialog_search_from_selection (EtCDDBDialog *self)
         Cddb_Free_Album_List (self);
     }
     gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),TRUE);
-    gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),TRUE);
 
 
     {
@@ -3847,7 +3444,6 @@ et_cddb_dialog_search_from_selection (EtCDDBDialog *self)
                 g_free(cddb_server_cgi_path);
                 g_free (proxy_hostname);
                 gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-                gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
                 return FALSE;
             }
 
@@ -3865,7 +3461,6 @@ et_cddb_dialog_search_from_selection (EtCDDBDialog *self)
                 g_free(cddb_server_cgi_path);
                 g_free (proxy_hostname);
                 gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_search_button),FALSE);
-                gtk_widget_set_sensitive(GTK_WIDGET(priv->stop_auto_search_button),FALSE);
                 if (file)
                     fclose(file);
                 return FALSE;
@@ -3980,12 +3575,6 @@ et_cddb_dialog_search_from_selection (EtCDDBDialog *self)
     g_free(query_string);
 
     gtk_widget_set_sensitive (GTK_WIDGET (priv->stop_search_button), FALSE);
-    gtk_widget_set_sensitive (GTK_WIDGET (priv->stop_auto_search_button),
-                                 FALSE);
-
-    /* Initialize the button. */
-    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (priv->display_red_lines_toggle),
-                                  FALSE);
 
     /* Load the albums found in the list. */
     Cddb_Load_Album_List (self, FALSE);
diff --git a/src/cddb_dialog.h b/src/cddb_dialog.h
index 1b72870..dddf2b4 100644
--- a/src/cddb_dialog.h
+++ b/src/cddb_dialog.h
@@ -46,7 +46,6 @@ struct _EtCDDBDialogClass
 
 GType et_cddb_dialog_get_type (void);
 EtCDDBDialog *et_cddb_dialog_new (void);
-void et_cddb_dialog_apply_changes (EtCDDBDialog *self);
 gboolean et_cddb_dialog_search_from_selection (EtCDDBDialog *self);
 
 G_END_DECLS
diff --git a/src/setting.c b/src/setting.c
index 54e807d..3bb34b0 100644
--- a/src/setting.c
+++ b/src/setting.c
@@ -73,8 +73,6 @@ static const gchar RUN_PROGRAM_WITH_DIRECTORY_HISTORY_FILE[] = "run_program_with
 static const gchar RUN_PROGRAM_WITH_FILE_HISTORY_FILE[] = "run_program_with_file.history";
 // File for history of search string combobox
 static const gchar SEARCH_FILE_HISTORY_FILE[] = "search_file.history";
-// File for history of CddbSearchStringEntry combobox
-static const gchar CDDB_SEARCH_STRING_HISTORY_FILE[] = "cddb_search_string.history";
 
 
 
@@ -167,7 +165,6 @@ gboolean Setting_Create_Files (void)
     check_or_create_file (RUN_PROGRAM_WITH_DIRECTORY_HISTORY_FILE);
     check_or_create_file (RUN_PROGRAM_WITH_FILE_HISTORY_FILE);
     check_or_create_file (SEARCH_FILE_HISTORY_FILE);
-    check_or_create_file (CDDB_SEARCH_STRING_HISTORY_FILE);
 
     return TRUE;
 }
@@ -387,18 +384,6 @@ void Save_Search_File_List (GtkListStore *liststore, gint colnum)
 }
 
 /*
- * Functions for writing and reading list of combobox of cddb search string
- */
-void Load_Cddb_Search_String_List (GtkListStore *liststore, gint colnum)
-{
-    Populate_List_Store_From_File(CDDB_SEARCH_STRING_HISTORY_FILE, liststore, colnum);
-}
-void Save_Cddb_Search_String_List (GtkListStore *liststore, gint colnum)
-{
-    Save_List_Store_To_File(CDDB_SEARCH_STRING_HISTORY_FILE, liststore, colnum);
-}
-
-/*
  * migrate_config_to_xdg_dir:
  * @old_path: (type filename): the path to migrate from
  * @new_path: (type filename): the path to migrate to
@@ -417,7 +402,6 @@ migrate_config_file_dir (const gchar *old_path, const gchar *new_path)
                                         RUN_PROGRAM_WITH_DIRECTORY_HISTORY_FILE,
                                         RUN_PROGRAM_WITH_FILE_HISTORY_FILE,
                                         SEARCH_FILE_HISTORY_FILE,
-                                        CDDB_SEARCH_STRING_HISTORY_FILE,
                                         NULL
     };
 
diff --git a/src/setting.h b/src/setting.h
index e3c3aae..5e31153 100644
--- a/src/setting.h
+++ b/src/setting.h
@@ -268,10 +268,6 @@ void Save_Run_Program_With_File_List (GtkListStore *liststore, gint colnum);
 void Load_Search_File_List (GtkListStore *liststore, gint colnum);
 void Save_Search_File_List (GtkListStore *liststore, gint colnum);
 
-/* 'CddbSearchStringEntry' combobox */
-void Load_Cddb_Search_String_List (GtkListStore *liststore, gint colnum);
-void Save_Cddb_Search_String_List (GtkListStore *liststore, gint colnum);
-
 gboolean et_settings_enum_get (GValue *value, GVariant *variant,
                                gpointer user_data);
 GVariant *et_settings_enum_set (const GValue *value,



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]