summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/dlg-add-files.c59
-rw-r--r--src/dlg-add-folder.c180
-rw-r--r--src/engrampa.gresource.xml2
-rw-r--r--src/ui/Makefile.am2
-rw-r--r--src/ui/dlg-add-files.ui134
-rw-r--r--src/ui/dlg-add-folder.ui365
6 files changed, 549 insertions, 193 deletions
diff --git a/src/dlg-add-files.c b/src/dlg-add-files.c
index add0a71..bdce319 100644
--- a/src/dlg-add-files.c
+++ b/src/dlg-add-files.c
@@ -26,7 +26,6 @@
#include <glib/gi18n.h>
#include <gtk/gtk.h>
#include "file-utils.h"
-#include "fr-stock.h"
#include "fr-window.h"
#include "gtk-utils.h"
#include "preferences.h"
@@ -137,62 +136,36 @@ void
add_files_cb (GtkWidget *widget,
void *callback_data)
{
- GtkWidget *file_sel;
+ GtkBuilder *builder;
DialogData *data;
- GtkWidget *main_box;
char *folder;
+ builder = _gtk_builder_new_from_resource ("dlg-add-files.ui");
+ if (builder == NULL)
+ return;
+
data = g_new0 (DialogData, 1);
data->window = callback_data;
data->settings = g_settings_new (ENGRAMPA_SCHEMA_ADD);
- data->dialog = file_sel =
- gtk_file_chooser_dialog_new (_("Add Files"),
- GTK_WINDOW (data->window),
- GTK_FILE_CHOOSER_ACTION_OPEN,
- "gtk-cancel", GTK_RESPONSE_CANCEL,
- FR_STOCK_ADD_FILES, GTK_RESPONSE_OK,
- "gtk-help", GTK_RESPONSE_HELP,
- NULL);
-
- gtk_window_set_default_size (GTK_WINDOW (data->dialog), 530, 450);
-
- gtk_file_chooser_set_select_multiple (GTK_FILE_CHOOSER (file_sel), TRUE);
- gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (file_sel), FALSE);
- gtk_dialog_set_default_response (GTK_DIALOG (file_sel), GTK_RESPONSE_OK);
-
- /* Translators: add a file to the archive only if the disk version is
- * newer than the archive version. */
- data->add_if_newer_checkbutton = gtk_check_button_new_with_mnemonic (_("Add only if _newer"));
-
- main_box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 20);
- gtk_container_set_border_width (GTK_CONTAINER (main_box), 0);
- gtk_file_chooser_set_extra_widget (GTK_FILE_CHOOSER (file_sel), main_box);
-
- gtk_box_pack_start (GTK_BOX (main_box), data->add_if_newer_checkbutton,
- TRUE, TRUE, 0);
-
- gtk_widget_show_all (main_box);
+ data->dialog = _gtk_builder_get_widget (builder, "dialog_add_files");
+ data->add_if_newer_checkbutton = _gtk_builder_get_widget (builder, "add_if_newer_checkbutton");
/* set data */
-
folder = g_settings_get_string (data->settings, PREF_ADD_CURRENT_FOLDER);
if ((folder == NULL) || (strcmp (folder, "") == 0))
folder = g_strdup (fr_window_get_add_default_dir (data->window));
- gtk_file_chooser_set_current_folder_uri (GTK_FILE_CHOOSER (file_sel), folder);
+ gtk_file_chooser_set_current_folder_uri (GTK_FILE_CHOOSER (GTK_WIDGET (data->dialog)), folder);
g_free (folder);
/* signals */
+ gtk_builder_add_callback_symbols (builder,
+ "on_dlg_add_files_destroy", G_CALLBACK (open_file_destroy_cb),
+ "on_dlg_add_files_response", G_CALLBACK (file_sel_response_cb),
+ NULL);
+ gtk_builder_connect_signals (builder, data);
- g_signal_connect (G_OBJECT (file_sel),
- "destroy",
- G_CALLBACK (open_file_destroy_cb),
- data);
-
- g_signal_connect (G_OBJECT (file_sel),
- "response",
- G_CALLBACK (file_sel_response_cb),
- data);
+ g_object_unref (builder);
- gtk_window_set_modal (GTK_WINDOW (file_sel), TRUE);
- gtk_widget_show (file_sel);
+ gtk_window_set_modal (GTK_WINDOW (data->dialog), TRUE);
+ gtk_widget_show (data->dialog);
}
diff --git a/src/dlg-add-folder.c b/src/dlg-add-folder.c
index a52bf75..56d619a 100644
--- a/src/dlg-add-folder.c
+++ b/src/dlg-add-folder.c
@@ -29,7 +29,6 @@
#include <gio/gio.h>
#include "dlg-add-folder.h"
#include "file-utils.h"
-#include "fr-stock.h"
#include "fr-window.h"
#include "gtk-utils.h"
#include "preferences.h"
@@ -45,18 +44,11 @@ typedef struct {
GSettings *settings;
GtkWidget *dialog;
GtkWidget *include_subfold_checkbutton;
- GtkWidget *add_if_newer_checkbutton;
GtkWidget *exclude_symlinks;
- GtkWidget *include_files_checkbutton;
+ GtkWidget *add_if_newer_checkbutton;
GtkWidget *include_files_entry;
- GtkWidget *include_files_label;
GtkWidget *exclude_files_entry;
- GtkWidget *exclude_files_label;
GtkWidget *exclude_folders_entry;
- GtkWidget *exclude_folders_label;
- GtkWidget *load_button;
- GtkWidget *save_button;
- GtkWidget *clear_button;
char *last_options;
} DialogData;
@@ -192,7 +184,7 @@ include_subfold_toggled_cb (GtkWidget *widget,
DialogData *data = callback_data;
gtk_widget_set_sensitive (data->exclude_symlinks,
- gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)));
+ gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)));
return FALSE;
}
@@ -209,155 +201,43 @@ void
add_folder_cb (GtkWidget *widget,
void *callback_data)
{
- GtkWidget *file_sel;
+ GtkBuilder *builder;
DialogData *data;
- GtkWidget *main_box;
- GtkWidget *vbox;
- GtkWidget *grid;
+
+ builder = _gtk_builder_new_from_resource ("dlg-add-folder.ui");
+ if (builder == NULL) {
+ return;
+ }
data = g_new0 (DialogData, 1);
- data->settings = g_settings_new (ENGRAMPA_SCHEMA_ADD);
data->window = callback_data;
-
- data->dialog = file_sel =
- gtk_file_chooser_dialog_new (_("Add a Folder"),
- GTK_WINDOW (data->window),
- GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,
- "gtk-cancel", GTK_RESPONSE_CANCEL,
- FR_STOCK_ADD_FOLDER, GTK_RESPONSE_OK,
- "gtk-help", GTK_RESPONSE_HELP,
- NULL);
-
- gtk_window_set_default_size (GTK_WINDOW (data->dialog), 530, 510);
-
- gtk_file_chooser_set_select_multiple (GTK_FILE_CHOOSER (file_sel), FALSE);
- gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (file_sel), FALSE);
- gtk_dialog_set_default_response (GTK_DIALOG (file_sel), GTK_RESPONSE_OK);
-
- data->add_if_newer_checkbutton = gtk_check_button_new_with_mnemonic (_("Add only if _newer"));
- data->include_subfold_checkbutton = gtk_check_button_new_with_mnemonic (_("_Include subfolders"));
- data->exclude_symlinks = gtk_check_button_new_with_mnemonic (_("Exclude folders that are symbolic lin_ks"));
- gtk_widget_set_halign (data->exclude_symlinks, GTK_ALIGN_START);
- gtk_widget_set_valign (data->exclude_symlinks, GTK_ALIGN_START);
- gtk_widget_set_margin_start (data->exclude_symlinks, 12);
-
- data->include_files_entry = gtk_entry_new ();
- gtk_widget_set_tooltip_text (data->include_files_entry, _("example: *.o; *.bak"));
- data->include_files_label = gtk_label_new_with_mnemonic (_("Include _files:"));
- gtk_label_set_xalign (GTK_LABEL (data->include_files_label), 0.0);
- gtk_label_set_mnemonic_widget (GTK_LABEL (data->include_files_label), data->include_files_entry);
-
- data->exclude_files_entry = gtk_entry_new ();
- gtk_widget_set_tooltip_text (data->exclude_files_entry, _("example: *.o; *.bak"));
- data->exclude_files_label = gtk_label_new_with_mnemonic (_("E_xclude files:"));
- gtk_label_set_xalign (GTK_LABEL (data->exclude_files_label), 0.0);
- gtk_label_set_mnemonic_widget (GTK_LABEL (data->exclude_files_label), data->exclude_files_entry);
-
- data->exclude_folders_entry = gtk_entry_new ();
- gtk_widget_set_tooltip_text (data->exclude_folders_entry, _("example: *.o; *.bak"));
- data->exclude_folders_label = gtk_label_new_with_mnemonic (_("_Exclude folders:"));
- gtk_label_set_xalign (GTK_LABEL (data->exclude_folders_label), 0.0);
- gtk_label_set_mnemonic_widget (GTK_LABEL (data->exclude_folders_label), data->exclude_folders_entry);
-
- data->load_button = gtk_button_new_with_mnemonic (_("_Load Options"));
- data->save_button = gtk_button_new_with_mnemonic (_("Sa_ve Options"));
- data->clear_button = gtk_button_new_with_mnemonic (_("_Reset Options"));
-
- main_box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 20);
- gtk_container_set_border_width (GTK_CONTAINER (main_box), 0);
- gtk_file_chooser_set_extra_widget (GTK_FILE_CHOOSER (file_sel), main_box);
-
- vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
- gtk_container_set_border_width (GTK_CONTAINER (vbox), 0);
- gtk_box_pack_start (GTK_BOX (main_box), vbox, TRUE, TRUE, 0);
-
- gtk_box_pack_start (GTK_BOX (vbox), data->include_subfold_checkbutton,
- TRUE, TRUE, 0);
-
- gtk_box_pack_start (GTK_BOX (vbox), data->exclude_symlinks, TRUE, TRUE, 0);
-
- gtk_box_pack_start (GTK_BOX (vbox), data->add_if_newer_checkbutton,
- TRUE, TRUE, 0);
-
- grid = gtk_grid_new ();
- gtk_grid_set_row_spacing (GTK_GRID (grid), 6);
- gtk_grid_set_column_spacing (GTK_GRID (grid), 6);
- gtk_box_pack_start (GTK_BOX (vbox), grid,
- TRUE, TRUE, 0);
-
- gtk_grid_attach (GTK_GRID (grid),
- data->include_files_label,
- 0, 0,
- 1, 1);
- gtk_grid_attach (GTK_GRID (grid),
- data->include_files_entry,
- 1, 0,
- 3, 1);
- gtk_grid_attach (GTK_GRID (grid),
- data->exclude_files_label,
- 0, 1,
- 1, 1);
- gtk_grid_attach (GTK_GRID (grid),
- data->exclude_files_entry,
- 1, 1,
- 1, 1);
- gtk_grid_attach (GTK_GRID (grid),
- data->exclude_folders_label,
- 2, 1,
- 1, 1);
- gtk_grid_attach (GTK_GRID (grid),
- data->exclude_folders_entry,
- 3, 1,
- 1, 1);
-
- /**/
-
- vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
- gtk_container_set_border_width (GTK_CONTAINER (vbox), 0);
- gtk_box_pack_start (GTK_BOX (main_box), vbox, FALSE, FALSE, 0);
-
- gtk_box_pack_start (GTK_BOX (vbox), data->load_button,
- FALSE, FALSE, 0);
- gtk_box_pack_start (GTK_BOX (vbox), data->save_button,
- FALSE, FALSE, 0);
- gtk_box_pack_start (GTK_BOX (vbox), data->clear_button,
- FALSE, FALSE, 0);
-
- gtk_widget_show_all (main_box);
+ data->settings = g_settings_new (ENGRAMPA_SCHEMA_ADD);
+ data->dialog = _gtk_builder_get_widget (builder, "dialog_add_folder");
+ data->add_if_newer_checkbutton = _gtk_builder_get_widget (builder, "add_if_newer_checkbutton");
+ data->exclude_symlinks = _gtk_builder_get_widget (builder, "exclude_symlinks");
+ data->include_subfold_checkbutton = _gtk_builder_get_widget (builder, "include_subfold_checkbutton");
+ data->include_files_entry = _gtk_builder_get_widget (builder, "include_files_entry");
+ data->exclude_files_entry = _gtk_builder_get_widget (builder, "exclude_files_entry");
+ data->exclude_folders_entry = _gtk_builder_get_widget (builder, "exclude_folders_entry");
/* set data */
-
dlg_add_folder_load_last_options (data);
/* signals */
-
- g_signal_connect (G_OBJECT (file_sel),
- "destroy",
- G_CALLBACK (open_file_destroy_cb),
- data);
- g_signal_connect (G_OBJECT (file_sel),
- "response",
- G_CALLBACK (file_sel_response_cb),
- data);
- g_signal_connect (G_OBJECT (data->include_subfold_checkbutton),
- "toggled",
- G_CALLBACK (include_subfold_toggled_cb),
- data);
- g_signal_connect (G_OBJECT (data->load_button),
- "clicked",
- G_CALLBACK (load_options_cb),
- data);
- g_signal_connect (G_OBJECT (data->save_button),
- "clicked",
- G_CALLBACK (save_options_cb),
- data);
- g_signal_connect (G_OBJECT (data->clear_button),
- "clicked",
- G_CALLBACK (clear_options_cb),
- data);
-
- gtk_window_set_modal (GTK_WINDOW (file_sel),TRUE);
- gtk_widget_show (file_sel);
+ gtk_builder_add_callback_symbols (builder,
+ "on_dialog_add_folder_destroy", G_CALLBACK (open_file_destroy_cb),
+ "on_dialog_add_folder_response", G_CALLBACK (file_sel_response_cb),
+ "on_include_subfold_checkbutton_toggled", G_CALLBACK (include_subfold_toggled_cb),
+ "on_load_button_clicked", G_CALLBACK (load_options_cb),
+ "on_save_button_clicked", G_CALLBACK (save_options_cb),
+ "on_clear_button_clicked", G_CALLBACK (clear_options_cb),
+ NULL);
+ gtk_builder_connect_signals (builder, data);
+
+ g_object_unref (builder);
+
+ gtk_window_set_modal (GTK_WINDOW (data->dialog), TRUE);
+ gtk_widget_show (data->dialog);
}
diff --git a/src/engrampa.gresource.xml b/src/engrampa.gresource.xml
index 1060005..deed6e3 100644
--- a/src/engrampa.gresource.xml
+++ b/src/engrampa.gresource.xml
@@ -6,6 +6,8 @@
<file compressed="true">ui/batch-add-files.ui</file>
<file compressed="true">ui/batch-password.ui</file>
<file compressed="true">ui/delete.ui</file>
+ <file compressed="true">ui/dlg-add-files.ui</file>
+ <file compressed="true">ui/dlg-add-folder.ui</file>
<file compressed="true">ui/dlg-extract.ui</file>
<file compressed="true">ui/engrampa.about</file>
<file compressed="true">ui/menus-toolbars.ui</file>
diff --git a/src/ui/Makefile.am b/src/ui/Makefile.am
index a1efbc4..db123ae 100644
--- a/src/ui/Makefile.am
+++ b/src/ui/Makefile.am
@@ -4,6 +4,8 @@ EXTRA_DIST = \
batch-add-files.ui \
batch-password.ui \
delete.ui \
+ dlg-add-files.ui \
+ dlg-add-folder.ui \
dlg-extract.ui \
engrampa.about \
menus-toolbars.ui \
diff --git a/src/ui/dlg-add-files.ui b/src/ui/dlg-add-files.ui
new file mode 100644
index 0000000..0e3881d
--- /dev/null
+++ b/src/ui/dlg-add-files.ui
@@ -0,0 +1,134 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.22.1 -->
+<interface>
+ <requires lib="gtk+" version="3.22"/>
+ <object class="GtkImage" id="image1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">help-browser</property>
+ </object>
+ <object class="GtkImage" id="image2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">process-stop</property>
+ </object>
+ <object class="GtkImage" id="image3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">add-files-to-archive</property>
+ </object>
+ <object class="GtkFileChooserDialog" id="dialog_add_files">
+ <property name="can_focus">False</property>
+ <property name="type_hint">dialog</property>
+ <property name="create_folders">False</property>
+ <property name="local_only">False</property>
+ <property name="select_multiple">True</property>
+ <signal name="destroy" handler="on_dlg_add_files_destroy" swapped="no"/>
+ <signal name="response" handler="on_dlg_add_files_response" swapped="no"/>
+ <child>
+ <placeholder/>
+ </child>
+ <child internal-child="vbox">
+ <object class="GtkBox">
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox">
+ <property name="can_focus">False</property>
+ <property name="layout_style">end</property>
+ <child>
+ <object class="GtkButton" id="button1">
+ <property name="label" translatable="yes">_Help</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="image">image1</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button2">
+ <property name="label" translatable="yes">_Cancel</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="image">image2</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button3">
+ <property name="label" translatable="yes">_Add</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="has_default">True</property>
+ <property name="receives_default">True</property>
+ <property name="image">image3</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkCheckButton" id="add_if_newer_checkbutton">
+ <property name="label" translatable="yes">Add only if _newer</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="halign">start</property>
+ <property name="use_underline">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="-11">button1</action-widget>
+ <action-widget response="-6">button2</action-widget>
+ <action-widget response="-5">button3</action-widget>
+ </action-widgets>
+ </object>
+</interface>
diff --git a/src/ui/dlg-add-folder.ui b/src/ui/dlg-add-folder.ui
new file mode 100644
index 0000000..14aedc1
--- /dev/null
+++ b/src/ui/dlg-add-folder.ui
@@ -0,0 +1,365 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.22.1 -->
+<interface>
+ <requires lib="gtk+" version="3.22"/>
+ <object class="GtkImage" id="image1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">help-browser</property>
+ </object>
+ <object class="GtkImage" id="image2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">process-stop</property>
+ </object>
+ <object class="GtkImage" id="image3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">add-folder-to-archive</property>
+ </object>
+ <object class="GtkFileChooserDialog" id="dialog_add_folder">
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">Add a Folder</property>
+ <property name="type_hint">dialog</property>
+ <property name="action">select-folder</property>
+ <property name="create_folders">False</property>
+ <property name="local_only">False</property>
+ <signal name="destroy" handler="on_dialog_add_folder_destroy" swapped="no"/>
+ <signal name="response" handler="on_dialog_add_folder_response" swapped="no"/>
+ <child>
+ <placeholder/>
+ </child>
+ <child internal-child="vbox">
+ <object class="GtkBox">
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox">
+ <property name="can_focus">False</property>
+ <property name="layout_style">end</property>
+ <child>
+ <object class="GtkButton" id="button1">
+ <property name="label" translatable="yes">_Help</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="image">image1</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button3">
+ <property name="label" translatable="yes">_Cancel</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="image">image2</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button2">
+ <property name="label" translatable="yes">_Add</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="has_default">True</property>
+ <property name="receives_default">True</property>
+ <property name="image">image3</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkCheckButton" id="include_subfold_checkbutton">
+ <property name="label" translatable="yes">_Include subfolders</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="halign">start</property>
+ <property name="use_underline">True</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="on_include_subfold_checkbutton_toggled" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="exclude_symlinks">
+ <property name="label" translatable="yes">Exclude folders that are symbolic lin_ks</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="halign">start</property>
+ <property name="margin_left">12</property>
+ <property name="use_underline">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="add_if_newer_checkbutton">
+ <property name="label" translatable="yes">Add only if _newer</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="halign">start</property>
+ <property name="use_underline">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">8</property>
+ <child>
+ <object class="GtkLabel" id="include_file_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="label" translatable="yes">Include _files:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">include_files_entry</property>
+ <accessibility>
+ <relation type="label-for" target="include_files_entry"/>
+ </accessibility>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="include_files_entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="tooltip_text" translatable="yes">example: *.o; *.bak</property>
+ <accessibility>
+ <relation type="labelled-by" target="include_file_label"/>
+ </accessibility>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">8</property>
+ <child>
+ <object class="GtkLabel" id="exclude_files_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="label" translatable="yes">E_xclude files:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">exclude_files_entry</property>
+ <accessibility>
+ <relation type="label-for" target="exclude_files_entry"/>
+ </accessibility>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="exclude_files_entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="tooltip_text" translatable="yes">example: *.o; *.bak</property>
+ <accessibility>
+ <relation type="labelled-by" target="exclude_files_label"/>
+ </accessibility>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="exclude_folders_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="label" translatable="yes">_Exclude folders:</property>
+ <property name="use_underline">True</property>
+ <accessibility>
+ <relation type="label-for" target="exclude_folders_entry"/>
+ </accessibility>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="exclude_folders_entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="tooltip_text" translatable="yes">example: *.o; *.bak</property>
+ <accessibility>
+ <relation type="labelled-by" target="exclude_folders_label"/>
+ </accessibility>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButtonBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="valign">start</property>
+ <property name="margin_left">12</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">2</property>
+ <property name="layout_style">start</property>
+ <child>
+ <object class="GtkButton" id="load_button">
+ <property name="label" translatable="yes">_Load Options</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_underline">True</property>
+ <signal name="clicked" handler="on_load_button_clicked" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="save_button">
+ <property name="label" translatable="yes">Sa_ve Options</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_underline">True</property>
+ <signal name="clicked" handler="on_save_button_clicked" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="clear_button">
+ <property name="label" translatable="yes">_Reset Options</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_underline">True</property>
+ <signal name="clicked" handler="on_clear_button_clicked" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="-11">button1</action-widget>
+ <action-widget response="-6">button3</action-widget>
+ <action-widget response="-5">button2</action-widget>
+ </action-widgets>
+ </object>
+</interface>