[tracker: 1/2] Reimplementation of the tracker-preferences user interface
- From: Philip Van Hoof <pvanhoof src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [tracker: 1/2] Reimplementation of the tracker-preferences user interface
- Date: Tue, 15 Sep 2009 11:10:15 +0000 (UTC)
commit 3a2601dbce3da56e53c985f921fe50e9054439a4
Author: Philip Van Hoof <philip codeminded be>
Date: Mon Sep 14 15:52:29 2009 +0200
Reimplementation of the tracker-preferences user interface
src/tracker-miner-fs/tracker-config.c | 7 +
src/tracker-miner-fs/tracker-config.h | 2 +
src/tracker-preferences/Makefile.am | 33 +-
src/tracker-preferences/config.vapi | 2 +
src/tracker-preferences/tracker-config.vapi | 50 +
.../tracker-preferences-dialogs.c | 85 -
.../tracker-preferences-dialogs.h | 31 -
src/tracker-preferences/tracker-preferences-main.c | 46 -
.../tracker-preferences-utils.c | 137 --
.../tracker-preferences-utils.h | 48 -
src/tracker-preferences/tracker-preferences.c | 1201 -----------
src/tracker-preferences/tracker-preferences.h | 50 -
src/tracker-preferences/tracker-preferences.ui | 2165 ++++++--------------
src/tracker-preferences/tracker-preferences.vala | 316 +++
14 files changed, 977 insertions(+), 3196 deletions(-)
---
diff --git a/src/tracker-miner-fs/tracker-config.c b/src/tracker-miner-fs/tracker-config.c
index 2d786f1..b5e75ed 100644
--- a/src/tracker-miner-fs/tracker-config.c
+++ b/src/tracker-miner-fs/tracker-config.c
@@ -803,6 +803,13 @@ tracker_config_new (void)
return g_object_new (TRACKER_TYPE_CONFIG, NULL);
}
+
+TrackerConfig *
+tracker_config_new_with_domain (const gchar *domain)
+{
+ return g_object_new (TRACKER_TYPE_CONFIG, "domain", domain, NULL);
+}
+
gboolean
tracker_config_save (TrackerConfig *config)
{
diff --git a/src/tracker-miner-fs/tracker-config.h b/src/tracker-miner-fs/tracker-config.h
index 551a018..553d198 100644
--- a/src/tracker-miner-fs/tracker-config.h
+++ b/src/tracker-miner-fs/tracker-config.h
@@ -48,6 +48,8 @@ struct TrackerConfigClass {
GType tracker_config_get_type (void) G_GNUC_CONST;
TrackerConfig *tracker_config_new (void);
+TrackerConfig *tracker_config_new_with_domain (const gchar *domain);
+
gboolean tracker_config_save (TrackerConfig *config);
gint tracker_config_get_verbosity (TrackerConfig *config);
diff --git a/src/tracker-preferences/Makefile.am b/src/tracker-preferences/Makefile.am
index a295abb..f6ab15e 100644
--- a/src/tracker-preferences/Makefile.am
+++ b/src/tracker-preferences/Makefile.am
@@ -15,21 +15,26 @@ INCLUDES = \
-DTRACKER_BINDIR=\""$(bindir)"\" \
-DTRACKER_LIBEXECDIR=\""$(libexecdir)"\" \
-DTRACKER_COMPILATION \
+ -DGETTEXT_PACKAGE=\"$(GETTEXT_PACKAGE)\" \
-I$(top_srcdir)/src \
$(WARN_CFLAGS) \
$(GLIB_CFLAGS) \
$(GCOV_CFLAGS) \
$(GTK2_CFLAGS) \
- $(DBUS_CFLAGS)
+ $(DBUS_CFLAGS) \
+ $(GMODULE_CFLAGS)
+
+BUILT_SOURCES = tracker-preferences.vala.stamp
+
+config_class_sources = \
+ $(top_srcdir)/src/tracker-miner-fs/tracker-config.h \
+ $(top_srcdir)/src/tracker-miner-fs/tracker-config.c
+
+tracker_preferences_VALASOURCES = tracker-preferences.vala
tracker_preferences_SOURCES = \
- tracker-preferences.c \
- tracker-preferences.h \
- tracker-preferences-dialogs.c \
- tracker-preferences-dialogs.h \
- tracker-preferences-main.c \
- tracker-preferences-utils.c \
- tracker-preferences-utils.h
+ $(config_class_sources) \
+ $(tracker_preferences_VALASOURCES:.vala=.c)
tracker_preferences_LDADD = \
$(top_builddir)/src/libtracker-client/libtracker-client- TRACKER_API_VERSION@.la \
@@ -37,8 +42,14 @@ tracker_preferences_LDADD = \
$(GTK2_LIBS) \
$(DBUS_LIBS) \
$(GCOV_LIBS) \
- $(GLIB_LIBS)
+ $(GLIB_LIBS) \
+ $(GMODULE_LIBS)
+
+EXTRA_DIST = $(pkgdata_DATA) tracker-config.vapi \
+ $(tracker_preferences_VALASOURCES)
-EXTRA_DIST = $(pkgdata_DATA)
+tracker-preferences.vala.stamp: $(tracker_preferences_VALASOURCES)
+ $(VALAC) --pkg gtk+-2.0 --pkg gmodule-2.0 -C $(VALAFLAGS) -H tracker-preferences.h tracker-config.vapi config.vapi $^
+ touch $@
-CLEANFILES = $(desktop_DATA)
+CLEANFILES = $(desktop_DATA) tracker-preferences.h tracker-preferences.c tracker-preferences.vala.stamp
diff --git a/src/tracker-preferences/config.vapi b/src/tracker-preferences/config.vapi
new file mode 100644
index 0000000..f46e084
--- /dev/null
+++ b/src/tracker-preferences/config.vapi
@@ -0,0 +1,2 @@
+[CCode (cheader_filename = "config.h")]
+public const string TRACKER_DATADIR;
diff --git a/src/tracker-preferences/tracker-config.vapi b/src/tracker-preferences/tracker-config.vapi
new file mode 100644
index 0000000..38cef39
--- /dev/null
+++ b/src/tracker-preferences/tracker-config.vapi
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2008-2009, Nokia
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ *
+ * Author: Philip Van Hoof <philip codeminded be>
+ */
+
+namespace Tracker {
+ [CCode (cheader_filename = "tracker-miner-fs/tracker-config.h")]
+ public class Config : GLib.Object {
+ public Config.with_domain (string domain);
+
+ public int verbosity { get; set; }
+ public int initial_sleep { get; set; }
+ public bool enable_monitors { get; set; }
+ public int scan_timeout { get; set; }
+ public int cache_timeout { get; set; }
+ public int throttle { get; set; }
+ public bool enable_thumbnails { get; set; }
+ public bool index_on_battery { get; set; }
+ public bool index_on_battery_first_time { get; set; }
+ public bool index_removable_devices { get; set; }
+ public bool index_mounted_directories { get; set; }
+ public int low_disk_space_limit { get; set; }
+ public GLib.SList<string> index_recursive_directories { get; set; }
+ public GLib.SList<string> index_single_directories { get; set; }
+ public GLib.SList<string> ignored_directories { get; set; }
+ public GLib.SList<string> ignored_directories_with_content { get; set; }
+ public GLib.SList<string> ignored_files { get; set; }
+ public GLib.SList<string> ignored_directory_patterns { get; }
+ public GLib.SList<string> ignored_file_patterns { get ; }
+
+ public bool save ();
+ }
+}
+
diff --git a/src/tracker-preferences/tracker-preferences.ui b/src/tracker-preferences/tracker-preferences.ui
index 2a8d11a..7c4e105 100644
--- a/src/tracker-preferences/tracker-preferences.ui
+++ b/src/tracker-preferences/tracker-preferences.ui
@@ -1,245 +1,126 @@
<?xml version="1.0"?>
-<!--*- mode: xml -*-->
<interface>
- <object class="GtkAdjustment" id="adjustment1">
- <property name="upper">1000</property>
- <property name="lower">0</property>
- <property name="page_increment">300</property>
- <property name="step_increment">1</property>
- <property name="page_size">0</property>
- <property name="value">0</property>
+ <requires lib="gtk+" version="2.16"/>
+ <!-- interface-naming-policy toplevel-contextual -->
+ <object class="GtkListStore" id="liststore_index_recursively">
+ <columns>
+ <!-- column-name Directory -->
+ <column type="gchararray"/>
+ </columns>
</object>
- <object class="GtkAdjustment" id="adjustment2">
- <property name="upper">20</property>
- <property name="lower">0</property>
- <property name="page_increment">5</property>
- <property name="step_increment">1</property>
- <property name="page_size">0</property>
- <property name="value">0</property>
+ <object class="GtkListStore" id="liststore_index_single">
+ <columns>
+ <!-- column-name Directory -->
+ <column type="gchararray"/>
+ </columns>
</object>
- <object class="GtkAdjustment" id="adjustment3">
- <property name="upper">1000000</property>
- <property name="lower">1000</property>
- <property name="page_increment">500</property>
- <property name="step_increment">100</property>
- <property name="page_size">0</property>
- <property name="value">10000</property>
+ <object class="GtkListStore" id="liststore_ignored_directories">
+ <columns>
+ <!-- column-name Directory -->
+ <column type="gchararray"/>
+ </columns>
</object>
- <object class="GtkAdjustment" id="adjustment4">
- <property name="upper">1000000</property>
- <property name="lower">1</property>
- <property name="page_increment">1024</property>
- <property name="step_increment">1</property>
- <property name="page_size">0</property>
- <property name="value">1000000</property>
+ <object class="GtkListStore" id="liststore_ignored_files">
+ <columns>
+ <!-- column-name Filename -->
+ <column type="gchararray"/>
+ </columns>
</object>
- <object class="GtkDialog" id="dlgPreferences">
+ <object class="GtkListStore" id="liststore_gnored_directories_with_content">
+ <columns>
+ <!-- column-name Directory -->
+ <column type="gchararray"/>
+ </columns>
+ </object>
+ <object class="GtkDialog" id="tracker-preferences">
+ <property name="width_request">500</property>
<property name="border_width">5</property>
- <property name="title" translatable="yes">Tracker Preferences</property>
- <property name="type">GTK_WINDOW_TOPLEVEL</property>
- <property name="window_position">GTK_WIN_POS_NONE</property>
- <property name="modal">False</property>
- <property name="default_width">431</property>
- <property name="default_height">462</property>
- <property name="resizable">False</property>
- <property name="destroy_with_parent">False</property>
- <property name="decorated">True</property>
- <property name="skip_taskbar_hint">False</property>
- <property name="skip_pager_hint">False</property>
- <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
- <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
- <property name="focus_on_map">True</property>
- <property name="urgency_hint">False</property>
+ <property name="type_hint">normal</property>
<property name="has_separator">False</property>
<child internal-child="vbox">
<object class="GtkVBox" id="dialog-vbox1">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">2</property>
- <child internal-child="action_area">
- <object class="GtkHButtonBox" id="dialog-action_area1">
- <property name="visible">True</property>
- <property name="layout_style">GTK_BUTTONBOX_END</property>
- <child>
- <object class="GtkButton" id="cmdHelp">
- <property name="visible">True</property>
- <property name="label">gtk-help</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- </object>
- </child>
- <child>
- <object class="GtkButton" id="cmdApply">
- <property name="visible">True</property>
- <property name="label">gtk-apply</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- </object>
- </child>
- <child>
- <object class="GtkButton" id="cmdCancel">
- <property name="visible">True</property>
- <property name="label">gtk-cancel</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- </object>
- </child>
- <child>
- <object class="GtkButton" id="cmdOK">
- <property name="visible">True</property>
- <property name="label">gtk-ok</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="pack_type">GTK_PACK_END</property>
- </packing>
- </child>
<child>
- <object class="GtkNotebook" id="nbPreferences">
- <property name="border_width">5</property>
+ <object class="GtkNotebook" id="notebook">
<property name="visible">True</property>
- <property name="show_tabs">True</property>
- <property name="show_border">True</property>
- <property name="tab_pos">GTK_POS_TOP</property>
- <property name="scrollable">False</property>
- <property name="enable_popup">False</property>
+ <property name="can_focus">True</property>
+ <property name="border_width">6</property>
<child>
<object class="GtkVBox" id="vbox1">
- <property name="border_width">12</property>
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="border_width">12</property>
+ <property name="orientation">vertical</property>
<property name="spacing">18</property>
<child>
- <object class="GtkFrame" id="fraStartup">
+ <object class="GtkFrame" id="frame_general">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <property name="shadow_type">none</property>
<child>
- <object class="GtkAlignment" id="alignment2">
+ <object class="GtkAlignment" id="alignment1">
<property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
<property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
<property name="left_padding">12</property>
- <property name="right_padding">0</property>
<child>
- <object class="GtkVBox" id="vbox20">
+ <object class="GtkVBox" id="vbox_general">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
+ <property name="orientation">vertical</property>
<child>
- <object class="GtkHBox" id="hbox8">
+ <object class="GtkHBox" id="hbox_delay">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
<property name="spacing">12</property>
<child>
- <object class="GtkLabel" id="lblInitialSleep">
+ <object class="GtkLabel" id="label_delay">
<property name="visible">True</property>
- <property name="label" translatable="yes">Index _delay:</property>
+ <property name="label" translatable="yes">_Delay</property>
<property name="use_underline">True</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="mnemonic_widget">spnInitialSleep</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- <accessibility>
- <relation target="spnInitialSleep" type="label-for"/>
- </accessibility>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkHBox" id="hbox16">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
<property name="spacing">6</property>
<child>
- <object class="GtkSpinButton" id="spnInitialSleep">
+ <object class="GtkSpinButton" id="spinbutton_delay">
<property name="visible">True</property>
<property name="can_focus">True</property>
+ <property name="invisible_char">●</property>
+ <property name="adjustment">adjustment_delay</property>
<property name="climb_rate">1</property>
- <property name="digits">0</property>
- <property name="numeric">True</property>
- <property name="update_policy">GTK_UPDATE_ALWAYS</property>
<property name="snap_to_ticks">True</property>
- <property name="wrap">False</property>
- <property name="adjustment">adjustment1</property>
- <accessibility>
- <relation target="lblInitialSleep" type="labelled-by"/>
- <relation target="lblInitialSleepSeconds" type="labelled-by"/>
- </accessibility>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="spinbutton_delay_value_changed_cb"/>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkLabel" id="lblInitialSleepSeconds">
+ <object class="GtkLabel" id="label_delay_seconds">
<property name="visible">True</property>
<property name="label" translatable="yes">seconds</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- <accessibility>
- <relation target="spnInitialSleep" type="label-for"/>
- </accessibility>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
</object>
@@ -247,68 +128,45 @@
</object>
</child>
<child type="label">
- <object class="GtkLabel" id="label5">
+ <object class="GtkLabel" id="label_general">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Startup</b></property>
- <property name="use_underline">False</property>
+ <property name="label" translatable="yes"><b>Start up</b></property>
<property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkFrame" id="frame5">
+ <object class="GtkFrame" id="frame_monitoring">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <property name="shadow_type">none</property>
<child>
- <object class="GtkAlignment" id="alignment9">
+ <object class="GtkAlignment" id="alignment2">
<property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
<property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
<property name="left_padding">12</property>
- <property name="right_padding">0</property>
<child>
- <object class="GtkVBox" id="vbox11">
+ <object class="GtkVBox" id="vbox_monitoring">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
+ <property name="orientation">vertical</property>
<child>
- <object class="GtkCheckButton" id="chkEnableIndexing">
+ <object class="GtkCheckButton" id="checkbutton_enable_monitoring">
+ <property name="label" translatable="yes">E_nable</property>
<property name="visible">True</property>
- <property name="label" translatable="yes">Enable i_ndexing</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
<property name="active">True</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
+ <signal name="toggled" handler="checkbutton_enable_monitoring_toggled_cb"/>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">0</property>
</packing>
</child>
</object>
@@ -316,322 +174,234 @@
</object>
</child>
<child type="label">
- <object class="GtkLabel" id="label12">
+ <object class="GtkLabel" id="label_monitoring">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Indexing Options</b></property>
- <property name="use_underline">False</property>
+ <property name="label" translatable="yes"><b>Monitoring</b></property>
<property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
- <object class="GtkFrame" id="frame11">
+ <object class="GtkFrame" id="frame_indexing">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <property name="shadow_type">none</property>
<child>
- <object class="GtkAlignment" id="alignment17">
+ <object class="GtkAlignment" id="alignment3">
<property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
<property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
<property name="left_padding">12</property>
- <property name="right_padding">0</property>
<child>
- <object class="GtkVBox" id="vbox17">
+ <object class="GtkVBox" id="vbox_indexing">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkHBox" id="hbox11">
+ <object class="GtkCheckButton" id="checkbutton_enable_thumbnails">
+ <property name="label" translatable="yes">Enable _thumbnails</property>
<property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">12</property>
- <child>
- <object class="GtkLabel" id="label27">
- <property name="visible">True</property>
- <property name="label" translatable="yes">_Language:</property>
- <property name="use_underline">True</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="mnemonic_widget">comLanguage</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- <child>
- <object class="GtkComboBox" id="comLanguage">
- <property name="visible">True</property>
- <property name="add_tearoffs">False</property>
- <property name="focus_on_click">True</property>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="checkbutton_enable_thumbnails_toggled_cb"/>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">0</property>
</packing>
</child>
- </object>
- </child>
- </object>
- </child>
- <child type="label">
- <object class="GtkLabel" id="label26">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>Stemming</b></property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkFrame" id="frame13">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
- <child>
- <object class="GtkAlignment" id="alignment19">
- <property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
- <property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
- <property name="left_padding">12</property>
- <property name="right_padding">0</property>
- <child>
- <object class="GtkVBox" id="vbox21">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
<child>
- <object class="GtkCheckButton" id="chkDisableBatteryIndex">
+ <object class="GtkCheckButton" id="checkbutton_enable_index_on_battery">
+ <property name="label" translatable="yes">Enable when running on _battery</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">Disable all Indexing when on battery</property>
+ <property name="receives_default">False</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
+ <property name="active">True</property>
<property name="draw_indicator">True</property>
+ <signal name="toggled" handler="checkbutton_enable_index_on_battery_toggled_cb"/>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkAlignment" id="alignment4">
+ <property name="visible">True</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkCheckButton" id="checkbutton_enable_index_on_battery_first_time">
+ <property name="label" translatable="yes">Enable for _first time</property>
+ <property name="visible">True</property>
+ <property name="sensitive">False</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="checkbutton_enable_index_on_battery_first_time_toggled_cb"/>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">2</property>
</packing>
</child>
<child>
- <object class="GtkCheckButton" id="chkDisableBatteryInitialIndex">
+ <object class="GtkCheckButton" id="checkbutton_index_mounted_directories">
+ <property name="label" translatable="yes">Include _mounted directories</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">Disable initial index sweep when on battery</property>
+ <property name="receives_default">False</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
+ <property name="active">True</property>
<property name="draw_indicator">True</property>
+ <signal name="toggled" handler="checkbutton_index_mounted_directories_toggled_cb"/>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
+ <property name="position">3</property>
</packing>
</child>
- </object>
- </child>
- </object>
- </child>
- <child type="label">
- <object class="GtkLabel" id="label37">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>Power management</b></property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
- </packing>
- </child>
- <child type="tab">
- <object class="GtkLabel" id="label1">
- <property name="visible">True</property>
- <property name="label" translatable="yes">General</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- </child>
- <child>
- <object class="GtkVBox" id="vbox14">
- <property name="border_width">12</property>
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">18</property>
- <child>
- <object class="GtkFrame" id="frame9">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
- <child>
- <object class="GtkAlignment" id="alignment15">
- <property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
- <property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
- <property name="left_padding">12</property>
- <property name="right_padding">0</property>
- <child>
- <object class="GtkVBox" id="vbox15">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
<child>
- <object class="GtkCheckButton" id="chkIndexContents">
+ <object class="GtkCheckButton" id="checkbutton_index_removable_media">
+ <property name="label" translatable="yes">Include _removable media</property>
<property name="visible">True</property>
- <property name="label" translatable="yes">Index _file contents</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
<property name="active">True</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
+ <signal name="toggled" handler="checkbutton_index_removable_media_toggled_cb"/>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
+ <property name="position">4</property>
</packing>
</child>
<child>
- <object class="GtkCheckButton" id="chkGenerateThumbs">
+ <object class="GtkHBox" id="hbox_disk_space_limit">
<property name="visible">True</property>
- <property name="label" translatable="yes">Generate thum_bnails</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
- <property name="draw_indicator">True</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_disk_space_limit">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0</property>
+ <property name="label" translatable="yes">Disk space _limit:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">hscale_disk_space_limit</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHScale" id="hscale_disk_space_limit">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="adjustment">adjustment_disk_space_limit</property>
+ <property name="digits">0</property>
+ <signal name="format_value" handler="hscale_disk_space_limit_format_value_cb"/>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="padding">12</property>
+ <property name="position">5</property>
</packing>
</child>
<child>
- <object class="GtkCheckButton" id="chkSkipMountPoints">
+ <object class="GtkHBox" id="hbox_throttle">
<property name="visible">True</property>
- <property name="label" translatable="yes">Index _mounted directories</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
- <property name="draw_indicator">True</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_throttle">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0</property>
+ <property name="label" translatable="yes">Thr_ottle:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">hscale_throttle</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkTable" id="table_throttle">
+ <property name="visible">True</property>
+ <property name="n_rows">2</property>
+ <property name="n_columns">2</property>
+ <property name="column_spacing">12</property>
+ <property name="row_spacing">6</property>
+ <child>
+ <object class="GtkLabel" id="label_slower">
+ <property name="visible">True</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes">Slower</property>
+ <property name="justify">right</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_faster">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Faster</property>
+ </object>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHScale" id="hscale_throttle">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="adjustment">adjustment_throttle</property>
+ <property name="digits">0</property>
+ <signal name="format_value" handler="hscale_throttle_format_value_cb"/>
+ </object>
+ <packing>
+ <property name="right_attach">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="padding">6</property>
+ <property name="position">6</property>
</packing>
</child>
</object>
@@ -639,200 +409,157 @@
</object>
</child>
<child type="label">
- <object class="GtkLabel" id="label20">
+ <object class="GtkLabel" id="label_indexing">
<property name="visible">True</property>
<property name="label" translatable="yes"><b>Indexing</b></property>
- <property name="use_underline">False</property>
<property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">2</property>
</packing>
</child>
+ </object>
+ </child>
+ <child type="tab">
+ <object class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">General</property>
+ </object>
+ <packing>
+ <property name="tab_fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVBox" id="vbox2">
+ <property name="visible">True</property>
+ <property name="border_width">12</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">18</property>
<child>
- <object class="GtkFrame" id="fraGeneralIndexing">
+ <object class="GtkFrame" id="frame_index_recursive_directories">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <property name="shadow_type">none</property>
<child>
- <object class="GtkAlignment" id="alignment7">
+ <object class="GtkAlignment" id="alignment5">
<property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
<property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
<property name="left_padding">12</property>
- <property name="right_padding">0</property>
<child>
<object class="GtkVBox" id="vbox7">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkCheckButton" id="chkIndexHomeDirectory">
+ <object class="GtkLabel" id="label_index_recursively">
<property name="visible">True</property>
- <property name="label" translatable="yes">Index and watch my home _directory</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <property name="active">True</property>
- <property name="inconsistent">False</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label8">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Additional paths to index and watch:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
<property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="mnemonic_widget">lstAdditionalPathIndexes</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- <accessibility>
- <relation target="lstAdditionalPathIndexes" type="label-for"/>
- </accessibility>
+ <property name="label" translatable="yes">Directories:</property>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkHBox" id="hbox1">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
<property name="spacing">6</property>
<child>
<object class="GtkScrolledWindow" id="scrolledwindow1">
<property name="visible">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">automatic</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <property name="shadow_type">in</property>
<child>
- <object class="GtkTreeView" id="lstAdditionalPathIndexes">
+ <object class="GtkTreeView" id="treeview_index_recursively">
<property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="model">liststore_index_recursively</property>
<property name="headers_visible">False</property>
- <property name="rules_hint">False</property>
- <property name="reorderable">False</property>
- <property name="enable_search">True</property>
- <property name="fixed_height_mode">False</property>
- <property name="hover_selection">False</property>
- <property name="hover_expand">False</property>
- <accessibility>
- <relation target="label8" type="labelled-by"/>
- </accessibility>
+ <property name="headers_clickable">False</property>
+ <property name="rules_hint">True</property>
+ <property name="search_column">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkVBox" id="vbox23">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkButton" id="cmdAddIndexPath">
+ <object class="GtkButton" id="button_index_recursively_add">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="button_index_recursively_add_clicked_cb"/>
<child>
- <object class="GtkImage" id="image2">
+ <object class="GtkImage" id="image3">
<property name="visible">True</property>
<property name="stock">gtk-add</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkButton" id="cmdRemoveIndexPath">
+ <object class="GtkButton" id="button_index_recursively_remove">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="button_index_recursively_remove_clicked_cb"/>
<child>
- <object class="GtkImage" id="image3">
+ <object class="GtkImage" id="image4">
<property name="visible">True</property>
<property name="stock">gtk-remove</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
- <placeholder/>
+ <object class="GtkToggleButton" id="togglebutton1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_text" translatable="yes">When toggled, this makes sure your home directory is included in the list.</property>
+ <property name="active">True</property>
+ <child>
+ <object class="GtkImage" id="image11">
+ <property name="visible">True</property>
+ <property name="stock">gtk-home</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">2</property>
+ </packing>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
@@ -840,166 +567,109 @@
</object>
</child>
<child type="label">
- <object class="GtkLabel" id="label7">
+ <object class="GtkLabel" id="label1">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Watch Directories</b></property>
- <property name="use_underline">False</property>
+ <property name="label" translatable="yes"><b>Recursively Indexed</b></property>
<property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkFrame" id="frame10">
+ <object class="GtkFrame" id="frame_index_single_directories">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <property name="shadow_type">none</property>
<child>
- <object class="GtkAlignment" id="alignment16">
+ <object class="GtkAlignment" id="alignment6">
<property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
<property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
<property name="left_padding">12</property>
- <property name="right_padding">0</property>
<child>
- <object class="GtkVBox" id="vbox16">
+ <object class="GtkVBox" id="vbox3">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label21">
+ <object class="GtkLabel" id="label_index_single">
<property name="visible">True</property>
- <property name="label" translatable="yes">Additional paths to index on startup (but not watch for updates):</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
<property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="mnemonic_widget">lstAdditionalPathIndexes</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- <accessibility>
- <relation target="lstCrawledPaths" type="label-for"/>
- </accessibility>
+ <property name="label" translatable="yes">Directories (no sub-directories are indexed):</property>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkHBox" id="hbox9">
+ <object class="GtkHBox" id="hbox4">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
<property name="spacing">6</property>
<child>
- <object class="GtkScrolledWindow" id="scrolledwindow5">
+ <object class="GtkScrolledWindow" id="scrolledwindow4">
<property name="visible">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">automatic</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <property name="shadow_type">in</property>
<child>
- <object class="GtkTreeView" id="lstCrawledPaths">
+ <object class="GtkTreeView" id="treeview_index_single">
<property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="model">liststore_index_single</property>
<property name="headers_visible">False</property>
- <property name="rules_hint">False</property>
- <property name="reorderable">False</property>
- <property name="enable_search">True</property>
- <property name="fixed_height_mode">False</property>
- <property name="hover_selection">False</property>
- <property name="hover_expand">False</property>
- <accessibility>
- <relation target="label21" type="labelled-by"/>
- </accessibility>
+ <property name="headers_clickable">False</property>
+ <property name="rules_hint">True</property>
+ <property name="search_column">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkVBox" id="vbox24">
+ <object class="GtkVBox" id="vbox5">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkButton" id="cmdAddCrawledPath">
+ <object class="GtkButton" id="button_index_single_add">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="button_index_single_add_clicked_cb"/>
<child>
- <object class="GtkImage" id="image4">
+ <object class="GtkImage" id="image5">
<property name="visible">True</property>
<property name="stock">gtk-add</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkButton" id="cmdRemoveCrawledPath">
+ <object class="GtkButton" id="button_index_single_remove">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="button_index_single_remove_clicked_cb"/>
<child>
- <object class="GtkImage" id="image5">
+ <object class="GtkImage" id="image10">
<property name="visible">True</property>
<property name="stock">gtk-remove</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
@@ -1007,16 +677,14 @@
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
@@ -1024,191 +692,132 @@
</object>
</child>
<child type="label">
- <object class="GtkLabel" id="label22">
+ <object class="GtkLabel" id="label7">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Crawled Directories</b></property>
- <property name="use_underline">False</property>
+ <property name="label" translatable="yes"><b>Non-Recursively Indexed</b></property>
<property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
<child type="tab">
- <object class="GtkLabel" id="label19">
+ <object class="GtkLabel" id="label2">
<property name="visible">True</property>
- <property name="label" translatable="yes">Files</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
+ <property name="label" translatable="yes">Locations</property>
</object>
+ <packing>
+ <property name="position">1</property>
+ <property name="tab_fill">False</property>
+ </packing>
</child>
<child>
<object class="GtkVBox" id="vbox4">
- <property name="border_width">12</property>
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="border_width">12</property>
+ <property name="orientation">vertical</property>
<property name="spacing">18</property>
<child>
- <object class="GtkFrame" id="fraIgnoredPaths">
+ <object class="GtkFrame" id="frame_ignored_directories">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <property name="shadow_type">none</property>
<child>
<object class="GtkAlignment" id="alignment13">
<property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
<property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
<property name="left_padding">12</property>
- <property name="right_padding">0</property>
<child>
- <object class="GtkVBox" id="vbIgnorePaths">
+ <object class="GtkVBox" id="vbox_ignored_directories">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
<object class="GtkLabel" id="label10">
<property name="visible">True</property>
- <property name="label" translatable="yes">Path roots to be ignored during indexing:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
<property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="mnemonic_widget">lstIgnorePaths</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
+ <property name="label" translatable="yes">Directoy glob patterns to ignore:</property>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkHBox" id="hbox2">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
<property name="spacing">6</property>
<child>
<object class="GtkScrolledWindow" id="scrolledwindow2">
<property name="visible">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">automatic</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <property name="shadow_type">in</property>
<child>
- <object class="GtkTreeView" id="lstIgnorePaths">
+ <object class="GtkTreeView" id="treeview_ignored_directories">
<property name="visible">True</property>
- <property name="headers_visible">True</property>
- <property name="rules_hint">False</property>
- <property name="reorderable">False</property>
- <property name="enable_search">True</property>
- <property name="fixed_height_mode">False</property>
- <property name="hover_selection">False</property>
- <property name="hover_expand">False</property>
+ <property name="can_focus">True</property>
+ <property name="tooltip_text" translatable="yes">Globbing patterns can be used here, for example: "*foo*".
+Most commonly this is used to ignore directories like po, CVS, .svn, .git, etc</property>
+ <property name="model">liststore_ignored_directories</property>
+ <property name="headers_visible">False</property>
+ <property name="headers_clickable">False</property>
+ <property name="rules_hint">True</property>
+ <property name="search_column">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkVBox" id="vbox25">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkButton" id="cmdAddIgnorePath">
+ <object class="GtkButton" id="button_ignored_directories_add">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="button_ignored_directories_add_clicked_cb"/>
<child>
<object class="GtkImage" id="image6">
<property name="visible">True</property>
<property name="stock">gtk-add</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkButton" id="cmdRemoveIgnorePath">
+ <object class="GtkButton" id="button_ignored_directories_remove">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="button_ignored_directories_remove_clicked_cb"/>
<child>
<object class="GtkImage" id="image7">
<property name="visible">True</property>
<property name="stock">gtk-remove</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
@@ -1216,16 +825,13 @@
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
@@ -1235,158 +841,107 @@
<child type="label">
<object class="GtkLabel" id="label6">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Ignored Paths</b></property>
- <property name="use_underline">False</property>
+ <property name="label" translatable="yes"><b>Directories</b></property>
<property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkFrame" id="fraIgnoredPatterns">
+ <object class="GtkFrame" id="frame_ignored_directories_with_content">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
+ <property name="shadow_type">none</property>
<child>
- <object class="GtkAlignment" id="alignment14">
+ <object class="GtkAlignment" id="alignment7">
<property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
<property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
<property name="left_padding">12</property>
- <property name="right_padding">0</property>
<child>
- <object class="GtkVBox" id="vbIgnorePatterns">
+ <object class="GtkVBox" id="vbox_ignored_directories_with_content">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label11">
+ <object class="GtkLabel" id="label5">
<property name="visible">True</property>
- <property name="label" translatable="yes">File patterns to ignore during indexing:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
<property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="mnemonic_widget">lstIgnoreFilePatterns</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
+ <property name="label" translatable="yes">Directories to ignore with specific files in them:</property>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkHBox" id="hbox3">
+ <object class="GtkHBox" id="hbox5">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
<property name="spacing">6</property>
<child>
- <object class="GtkScrolledWindow" id="scrolledwindow3">
+ <object class="GtkScrolledWindow" id="scrolledwindow5">
<property name="visible">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">automatic</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <property name="shadow_type">in</property>
<child>
- <object class="GtkTreeView" id="lstIgnoreFilePatterns">
+ <object class="GtkTreeView" id="treeview_ignored_directories_with_content">
<property name="visible">True</property>
- <property name="headers_visible">True</property>
- <property name="rules_hint">False</property>
- <property name="reorderable">False</property>
- <property name="enable_search">True</property>
- <property name="fixed_height_mode">False</property>
- <property name="hover_selection">False</property>
- <property name="hover_expand">False</property>
+ <property name="can_focus">True</property>
+ <property name="model">liststore_gnored_directories_with_content</property>
+ <property name="headers_visible">False</property>
+ <property name="headers_clickable">False</property>
+ <property name="rules_hint">True</property>
+ <property name="search_column">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkVBox" id="vbox26">
+ <object class="GtkVBox" id="vbox8">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkButton" id="cmdAddIgnorePattern">
+ <object class="GtkButton" id="button_ignored_directories_with_content_add">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="button_ignored_directories_with_content_add_clicked_cb"/>
<child>
- <object class="GtkImage" id="image8">
+ <object class="GtkImage" id="image12">
<property name="visible">True</property>
<property name="stock">gtk-add</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkButton" id="cmdRemoveIgnorePattern">
+ <object class="GtkButton" id="button_ignored_directories_with_content_remove">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="button_ignored_directories_with_content_remove_clicked_cb"/>
<child>
- <object class="GtkImage" id="image9">
+ <object class="GtkImage" id="image13">
<property name="visible">True</property>
<property name="stock">gtk-remove</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
@@ -1394,16 +949,13 @@
</child>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
@@ -1411,393 +963,125 @@
</object>
</child>
<child type="label">
- <object class="GtkLabel" id="label9">
+ <object class="GtkLabel" id="label8">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Ignored File Patterns</b></property>
- <property name="use_underline">False</property>
+ <property name="label" translatable="yes"><b>Directories With Content</b></property>
<property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
- </packing>
- </child>
- <child type="tab">
- <object class="GtkLabel" id="label3">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Ignored Files</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- </child>
- <child>
- <object class="GtkVBox" id="vbox3">
- <property name="border_width">12</property>
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">18</property>
- <child>
- <object class="GtkVBox" id="vbox8">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkCheckButton" id="chkEnableEvolutionIndexing">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Enable _Evolution email indexing</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <property name="active">True</property>
- <property name="inconsistent">False</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
- <object class="GtkVBox" id="vbox12">
+ <object class="GtkFrame" id="frame_ignored_files">
<property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkLabel" id="label14">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Additional mbox style mailboxes to index:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="mnemonic_widget">lstAdditionalMBoxIndexes</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
<child>
- <object class="GtkHBox" id="hbox5">
+ <object class="GtkAlignment" id="alignment14">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkScrolledWindow" id="scrolledwindow4">
- <property name="visible">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
- <child>
- <object class="GtkTreeView" id="lstAdditionalMBoxIndexes">
- <property name="visible">True</property>
- <property name="headers_visible">True</property>
- <property name="rules_hint">False</property>
- <property name="reorderable">False</property>
- <property name="enable_search">True</property>
- <property name="fixed_height_mode">False</property>
- <property name="hover_selection">False</property>
- <property name="hover_expand">False</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
<child>
- <object class="GtkVBox" id="vbox27">
+ <object class="GtkVBox" id="vbox_ignored_files">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkButton" id="cmdAddIndexMailbox">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <child>
- <object class="GtkImage" id="image10">
- <property name="visible">True</property>
- <property name="stock">gtk-add</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="cmdRemoveIndexMailbox">
+ <object class="GtkLabel" id="label11">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <child>
- <object class="GtkImage" id="image11">
- <property name="visible">True</property>
- <property name="stock">gtk-remove</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </object>
- </child>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">File glob patterns to ignore:</property>
</object>
<packing>
- <property name="padding">0</property>
<property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <placeholder/>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
- </packing>
- </child>
- <child type="tab">
- <object class="GtkLabel" id="label2">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Email</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- </child>
- <child>
- <object class="GtkVBox" id="vbox5">
- <property name="border_width">12</property>
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">18</property>
- <child>
- <object class="GtkFrame" id="fraThrottling">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
- <child>
- <object class="GtkAlignment" id="alignment6">
- <property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
- <property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
- <property name="left_padding">12</property>
- <property name="right_padding">0</property>
- <child>
- <object class="GtkVBox" id="vbox6">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkTable" id="table3">
+ <object class="GtkHBox" id="hbox3">
<property name="visible">True</property>
- <property name="n_rows">2</property>
- <property name="n_columns">3</property>
- <property name="homogeneous">False</property>
- <property name="row_spacing">6</property>
- <property name="column_spacing">12</property>
- <child>
- <object class="GtkLabel" id="label24">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Indexing Speed:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options"/>
- <property name="y_options">fill</property>
- </packing>
- </child>
- <child>
- <object class="GtkHScale" id="scaThrottle">
- <property name="visible">True</property>
- <property name="draw_value">True</property>
- <property name="value_pos">GTK_POS_TOP</property>
- <property name="digits">0</property>
- <property name="update_policy">GTK_UPDATE_CONTINUOUS</property>
- <property name="inverted">False</property>
- <property name="adjustment">adjustment2</property>
- </object>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">3</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="y_options"/>
- </packing>
- </child>
+ <property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label40">
+ <object class="GtkScrolledWindow" id="scrolledwindow3">
<property name="visible">True</property>
- <property name="label" translatable="yes">Slower</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_RIGHT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">1</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">automatic</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkTreeView" id="treeview_ignored_files">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="tooltip_text" translatable="yes">Globbing patterns can be used here, for example: "*bar*".
+Most commonly this is used to ignore directories like *~, *.o, *.la, etc</property>
+ <property name="model">liststore_ignored_files</property>
+ <property name="headers_visible">False</property>
+ <property name="headers_clickable">False</property>
+ <property name="rules_hint">True</property>
+ <property name="search_column">0</property>
+ </object>
+ </child>
</object>
<packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="y_options"/>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkLabel" id="label39">
+ <object class="GtkVBox" id="vbox6">
<property name="visible">True</property>
- <property name="label" translatable="yes">Faster</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkButton" id="button_ignored_files_add">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="button_ignored_files_add_clicked_cb"/>
+ <child>
+ <object class="GtkImage" id="image8">
+ <property name="visible">True</property>
+ <property name="stock">gtk-add</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button_ignored_files_remove">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="button_ignored_files_remove_clicked_cb"/>
+ <child>
+ <object class="GtkImage" id="image9">
+ <property name="visible">True</property>
+ <property name="stock">gtk-remove</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
</object>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="y_options"/>
+ <property name="expand">False</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
@@ -1805,406 +1089,113 @@
</object>
</child>
<child type="label">
- <object class="GtkLabel" id="lblThrottling">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>Throttling</b></property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkFrame" id="frame8">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
- <child>
- <object class="GtkAlignment" id="alignment12">
- <property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
- <property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
- <property name="left_padding">12</property>
- <property name="right_padding">0</property>
- <child>
- <object class="GtkVBox" id="vbox13">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkRadioButton" id="optReducedMemory">
- <property name="visible">True</property>
- <property name="label" translatable="yes">_Minimize memory usage (slower indexing)</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkRadioButton" id="optNormal">
- <property name="visible">True</property>
- <property name="label" translatable="yes">_Use additional memory for faster indexing</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <property name="active">True</property>
- <property name="inconsistent">False</property>
- <property name="draw_indicator">True</property>
- <property name="group">optReducedMemory</property>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- </child>
- <child type="label">
- <object class="GtkLabel" id="label18">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>Resource Usage</b></property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkFrame" id="frame14">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
- <child>
- <object class="GtkAlignment" id="alignment20">
- <property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
- <property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
- <property name="left_padding">12</property>
- <property name="right_padding">0</property>
- <child>
- <object class="GtkVBox" id="vbox22">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkCheckButton" id="chkFastMerges">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">Perform fast index merges (may affect system performance)</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- </child>
- <child type="label">
- <object class="GtkLabel" id="label38">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>Index Merging</b></property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkFrame" id="frame12">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
- <child>
- <object class="GtkAlignment" id="alignment18">
- <property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">1</property>
- <property name="yscale">1</property>
- <property name="top_padding">6</property>
- <property name="bottom_padding">0</property>
- <property name="left_padding">12</property>
- <property name="right_padding">0</property>
- <child>
- <object class="GtkTable" id="table2">
- <property name="visible">True</property>
- <property name="n_rows">2</property>
- <property name="n_columns">3</property>
- <property name="homogeneous">False</property>
- <property name="row_spacing">6</property>
- <property name="column_spacing">12</property>
- <child>
- <object class="GtkLabel" id="label33">
- <property name="visible">True</property>
- <property name="label" translatable="yes">kB</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options"/>
- <property name="y_options"/>
- </packing>
- </child>
- <child>
- <object class="GtkSpinButton" id="spnMaxWords">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="climb_rate">1</property>
- <property name="digits">0</property>
- <property name="numeric">False</property>
- <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- <property name="snap_to_ticks">False</property>
- <property name="wrap">False</property>
- <property name="adjustment">adjustment3</property>
- </object>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options"/>
- <property name="y_options"/>
- </packing>
- </child>
- <child>
- <object class="GtkSpinButton" id="spnMaxText">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="climb_rate">1</property>
- <property name="digits">0</property>
- <property name="numeric">False</property>
- <property name="update_policy">GTK_UPDATE_ALWAYS</property>
- <property name="snap_to_ticks">False</property>
- <property name="wrap">False</property>
- <property name="adjustment">adjustment4</property>
- </object>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options"/>
- <property name="y_options"/>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label31">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Maximum number of unique _words to index:</property>
- <property name="use_underline">True</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="mnemonic_widget">spnMaxWords</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label30">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Maximum _amount of text to index:</property>
- <property name="use_underline">True</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="mnemonic_widget">spnMaxText</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
- </object>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="y_options"/>
- </packing>
- </child>
- </object>
- </child>
- </object>
- </child>
- <child type="label">
- <object class="GtkLabel" id="label32">
+ <object class="GtkLabel" id="label9">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Indexing Limits (per file)</b></property>
- <property name="use_underline">False</property>
+ <property name="label" translatable="yes"><b>Files</b></property>
<property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
</object>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="position">2</property>
</packing>
</child>
</object>
<packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
+ <property name="position">2</property>
</packing>
</child>
<child type="tab">
<object class="GtkLabel" id="label4">
<property name="visible">True</property>
- <property name="label" translatable="yes">Performance</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
- <property name="width_chars">-1</property>
- <property name="single_line_mode">False</property>
- <property name="angle">0</property>
+ <property name="label" translatable="yes">Ignored Content</property>
</object>
+ <packing>
+ <property name="position">2</property>
+ <property name="tab_fill">False</property>
+ </packing>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child internal-child="action_area">
+ <object class="GtkHButtonBox" id="dialog-action_area1">
+ <property name="visible">True</property>
+ <property name="layout_style">end</property>
+ <child>
+ <object class="GtkButton" id="button_save">
+ <property name="label">gtk-save</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_stock">True</property>
+ <signal name="clicked" handler="button_save_clicked_cb"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button_close">
+ <property name="label">gtk-close</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_stock">True</property>
+ <signal name="clicked" handler="button_close_clicked_cb"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
</packing>
</child>
</object>
</child>
<action-widgets>
- <action-widget response="0">cmdHelp</action-widget>
- <action-widget response="0">cmdApply</action-widget>
- <action-widget response="0">cmdCancel</action-widget>
- <action-widget response="0">cmdOK</action-widget>
+ <action-widget response="0">button_save</action-widget>
+ <action-widget response="0">button_close</action-widget>
</action-widgets>
</object>
+ <object class="GtkAdjustment" id="adjustment_throttle">
+ <property name="upper">20</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">2</property>
+ <property name="page_size">5</property>
+ </object>
+ <object class="GtkImage" id="image1">
+ <property name="visible">True</property>
+ <property name="stock">gtk-missing-image</property>
+ </object>
+ <object class="GtkAdjustment" id="adjustment_disk_space_limit">
+ <property name="lower">-1</property>
+ <property name="upper">100</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ <property name="page_size">10</property>
+ </object>
+ <object class="GtkAdjustment" id="adjustment_delay">
+ <property name="value">10</property>
+ <property name="upper">1000</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ <property name="page_size">10</property>
+ </object>
+ <object class="GtkSizeGroup" id="sizegroup_indexing">
+ <widgets>
+ <widget name="label_disk_space_limit"/>
+ <widget name="label_throttle"/>
+ </widgets>
+ </object>
</interface>
diff --git a/src/tracker-preferences/tracker-preferences.vala b/src/tracker-preferences/tracker-preferences.vala
new file mode 100644
index 0000000..eaf12eb
--- /dev/null
+++ b/src/tracker-preferences/tracker-preferences.vala
@@ -0,0 +1,316 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * Copyright (C) 2009, Nokia
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ *
+ * Author: Philip Van Hoof <philip codeminded be>
+ */
+
+using Gtk;
+using GLib;
+using Tracker;
+
+public static Config config = null;
+
+public static Window window;
+public static CheckButton checkbutton_enable_index_on_battery_first_time;
+public static CheckButton checkbutton_enable_index_on_battery;
+public static SpinButton spinbutton_delay;
+public static CheckButton checkbutton_enable_monitoring;
+public static CheckButton checkbutton_enable_thumbnails;
+public static CheckButton checkbutton_index_mounted_directories;
+public static CheckButton checkbutton_index_removable_media;
+public static Scale hscale_disk_space_limit;
+public static Scale hscale_throttle;
+public static ListStore liststore_index_recursively;
+public static ListStore liststore_index_single;
+public static ListStore liststore_ignored_directories;
+public static ListStore liststore_ignored_files;
+public static ListStore liststore_gnored_directories_with_content;
+public static TreeView treeview_index_recursively;
+public static TreeView treeview_index_single;
+public static TreeView treeview_ignored_directories;
+public static TreeView treeview_ignored_directories_with_content;
+public static TreeView treeview_ignored_files;
+
+public static void spinbutton_delay_value_changed_cb (SpinButton source) {
+ config.initial_sleep = source.get_value_as_int ();
+}
+
+public static void checkbutton_enable_monitoring_toggled_cb (CheckButton source) {
+ config.enable_monitors = source.active;
+}
+
+public static void checkbutton_enable_thumbnails_toggled_cb (CheckButton source) {
+ config.enable_thumbnails = source.active;
+}
+
+public static void checkbutton_enable_index_on_battery_toggled_cb (CheckButton source) {
+ config.index_on_battery = source.active;
+ checkbutton_enable_index_on_battery_first_time.set_sensitive (source.active);
+}
+
+public static void checkbutton_enable_index_on_battery_first_time_toggled_cb (CheckButton source) {
+ config.index_on_battery_first_time = source.active;
+}
+
+public static void checkbutton_index_mounted_directories_toggled_cb (CheckButton source) {
+ config.index_mounted_directories = source.active;
+}
+
+public static void checkbutton_index_removable_media_toggled_cb (CheckButton source) {
+ config.index_removable_devices = source.active;
+}
+
+public static string hscale_disk_space_limit_format_value_cb (Scale source, double value) {
+ config.low_disk_space_limit = (int) value;
+ return "%d%%".printf ((int) value);
+}
+
+public static string hscale_throttle_format_value_cb (Scale source, double value) {
+ config.throttle = (int) value;
+ return "%d/20".printf ((int) value);
+}
+
+public static void add_freevalue (ListStore model) {
+ Dialog dialog;
+ Entry entry;
+ Container content_area;
+
+ dialog = new Dialog.with_buttons (_("Enter value"),
+ window,
+ DialogFlags.DESTROY_WITH_PARENT,
+ STOCK_CANCEL, ResponseType.CANCEL,
+ STOCK_OK, ResponseType.ACCEPT);
+
+ content_area = (Container) dialog.get_content_area ();
+ entry = new Entry ();
+ entry.show ();
+ content_area.add (entry);
+
+ if (dialog.run () == ResponseType.ACCEPT) {
+ TreeIter iter;
+
+ model.append (out iter);
+ var v = Value (typeof (string));
+ v.set_string (entry.get_text ());
+ model.set_value (iter, 0, v);
+ }
+
+ dialog.destroy ();
+}
+
+
+public static void add_dir (ListStore model)
+{
+ FileChooserDialog dialog = new FileChooserDialog (_("Select directory"), window,
+ FileChooserAction.SELECT_FOLDER,
+ STOCK_CANCEL, ResponseType.CANCEL,
+ STOCK_OK, ResponseType.ACCEPT);
+
+ if (dialog.run () == ResponseType.ACCEPT) {
+ TreeIter iter;
+ File dir;
+
+ dir = dialog.get_file ();
+
+ model.append (out iter);
+ var v = Value (typeof (string));
+ v.set_string (dir.get_path());
+ model.set_value (iter, 0, v);
+ }
+
+ dialog.destroy ();
+}
+
+public static void del_dir (TreeView view)
+{
+ List<TreePath> list;
+ ListStore store;
+ TreeModel model;
+
+ TreeSelection selection = view.get_selection ();
+ list= selection.get_selected_rows (out model);
+
+ store = (ListStore) model;
+
+ foreach (TreePath path in list) {
+ TreeIter iter;
+ if (model.get_iter (out iter, path)) {
+ store.remove (iter);
+ }
+ }
+}
+
+public static void button_index_recursively_add_clicked_cb (Button source) {
+ add_dir (liststore_index_recursively);
+}
+
+public static void button_index_recursively_remove_clicked_cb (Button source) {
+ del_dir (treeview_index_recursively);
+}
+
+public static void button_index_single_remove_clicked_cb (Button source) {
+ del_dir (treeview_index_single);
+}
+
+public static void button_index_single_add_clicked_cb (Button source) {
+ add_dir (liststore_index_single);
+}
+
+public static void button_ignored_directories_add_clicked_cb (Button source) {
+ add_freevalue (liststore_ignored_directories);
+}
+
+public static void button_ignored_directories_remove_clicked_cb (Button source) {
+ del_dir (treeview_ignored_directories);
+}
+
+public static void button_ignored_directories_with_content_add_clicked_cb (Button source) {
+ add_freevalue (liststore_gnored_directories_with_content);
+}
+
+public static void button_ignored_directories_with_content_remove_clicked_cb (Button source) {
+ del_dir (treeview_ignored_directories_with_content);
+}
+
+public static void button_ignored_files_add_clicked_cb (Button source) {
+ add_freevalue (liststore_ignored_files);
+}
+
+public static void button_ignored_files_remove_clicked_cb (Button source) {
+ del_dir (treeview_ignored_files);
+}
+
+public static SList<string> model_to_slist (ListStore model)
+{
+ bool valid;
+ SList<string> list = new SList<string>();
+ TreeIter iter;
+
+ valid = model.get_iter_first (out iter);
+ while (valid) {
+ Value value;
+ model.get_value (iter, 0, out value);
+ list.append (value.get_string ());
+ valid = model.iter_next (ref iter);
+ }
+
+ return list;
+}
+
+public static void button_save_clicked_cb (Button source) {
+
+ config.index_single_directories = model_to_slist (liststore_index_single);
+ config.ignored_directories = model_to_slist (liststore_ignored_directories);
+ config.ignored_files = model_to_slist (liststore_ignored_files);
+ config.ignored_directories_with_content = model_to_slist (liststore_gnored_directories_with_content);
+ config.index_recursive_directories = model_to_slist (liststore_index_recursively);
+
+ config.save ();
+}
+
+public static void button_close_clicked_cb (Button source) {
+ Gtk.main_quit ();
+}
+
+static void
+fill_in_model (ListStore model, SList<string> list)
+{
+ int position = 0;
+ foreach (string str in list) {
+ model.insert_with_values (null, position++, 0, str);
+ }
+}
+
+static void
+setup_standard_treeview (TreeView view, string title)
+{
+ TreeViewColumn column = new TreeViewColumn.with_attributes (title,
+ new CellRendererText (),
+ "text", 0);
+ view.append_column (column);
+}
+
+static int main (string[] args) {
+ Gtk.init (ref args);
+
+ try {
+ config = new Config.with_domain ("tracker-miner-fs");
+ var builder = new Builder ();
+ builder.add_from_file (TRACKER_DATADIR + Path.DIR_SEPARATOR_S + "tracker-preferences.ui");
+
+ window = builder.get_object ("tracker-preferences") as Window;
+ checkbutton_enable_index_on_battery = builder.get_object ("checkbutton_enable_index_on_battery") as CheckButton;
+ checkbutton_enable_index_on_battery_first_time = builder.get_object ("checkbutton_enable_index_on_battery_first_time") as CheckButton;
+ checkbutton_enable_index_on_battery.active = config.index_on_battery;
+ checkbutton_enable_index_on_battery_first_time.set_sensitive (checkbutton_enable_index_on_battery.active);
+ checkbutton_enable_index_on_battery_first_time.active = config.index_on_battery_first_time;
+ spinbutton_delay = builder.get_object ("spinbutton_delay") as SpinButton;
+ spinbutton_delay.set_increments (1, 1);
+ spinbutton_delay.value = (double) config.initial_sleep;
+ checkbutton_enable_monitoring = builder.get_object ("checkbutton_enable_monitoring") as CheckButton;
+ checkbutton_enable_monitoring.active = config.enable_monitors;
+ checkbutton_enable_thumbnails = builder.get_object ("checkbutton_enable_thumbnails") as CheckButton;
+ checkbutton_enable_thumbnails.active = config.enable_thumbnails;
+ checkbutton_index_mounted_directories = builder.get_object ("checkbutton_index_mounted_directories") as CheckButton;
+ checkbutton_index_mounted_directories.active = config.index_mounted_directories;
+ checkbutton_index_removable_media = builder.get_object ("checkbutton_index_removable_media") as CheckButton;
+ checkbutton_index_removable_media.active = config.index_removable_devices;
+ hscale_disk_space_limit = builder.get_object ("hscale_disk_space_limit") as Scale;
+ hscale_disk_space_limit.set_value ((double) config.low_disk_space_limit);
+ hscale_throttle = builder.get_object ("hscale_throttle") as Scale;
+ hscale_throttle.set_value ((double) config.throttle);
+
+ treeview_index_recursively = builder.get_object ("treeview_index_recursively") as TreeView;
+ treeview_index_single = builder.get_object ("treeview_index_single") as TreeView;
+ treeview_ignored_directories = builder.get_object ("treeview_ignored_directories") as TreeView;
+ treeview_ignored_directories_with_content = builder.get_object ("treeview_ignored_directories_with_content") as TreeView;
+ treeview_ignored_files = builder.get_object ("treeview_ignored_files") as TreeView;
+
+ setup_standard_treeview (treeview_index_recursively, _("Directory"));
+ setup_standard_treeview (treeview_index_single, _("Directory"));
+ setup_standard_treeview (treeview_ignored_directories, _("Directory"));
+ setup_standard_treeview (treeview_ignored_directories_with_content, _("Directory"));
+ setup_standard_treeview (treeview_ignored_files, _("File"));
+
+ liststore_index_recursively = builder.get_object ("liststore_index_recursively") as ListStore;
+ fill_in_model (liststore_index_recursively, config.index_recursive_directories);
+
+ liststore_index_single = builder.get_object ("liststore_index_single") as ListStore;
+ fill_in_model (liststore_index_single, config.index_single_directories);
+
+ liststore_ignored_directories = builder.get_object ("liststore_ignored_directories") as ListStore;
+ fill_in_model (liststore_ignored_directories, config.ignored_directories);
+
+ liststore_ignored_files = builder.get_object ("liststore_ignored_files") as ListStore;
+ fill_in_model (liststore_ignored_files, config.ignored_files);
+
+ liststore_gnored_directories_with_content = builder.get_object ("liststore_gnored_directories_with_content") as ListStore;
+ fill_in_model (liststore_gnored_directories_with_content, config.ignored_directories_with_content);
+
+ builder.connect_signals (null);
+
+ window.show_all ();
+ Gtk.main ();
+ } catch (Error e) {
+ stderr.printf ("Could not load UI: %s\n", e.message);
+ return 1;
+ }
+
+ return 0;
+}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]