[tracker/tracker-preferences-xdg-dirs] tracker-preferences: Add XDG dirs as toggle buttons
- From: Martyn James Russell <mr src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker/tracker-preferences-xdg-dirs] tracker-preferences: Add XDG dirs as toggle buttons
- Date: Wed, 14 Sep 2011 18:32:06 +0000 (UTC)
commit b425a503545f8488892c46e8b31e82251983c721
Author: Martyn Russell <martyn lanedo com>
Date: Wed Sep 14 19:31:23 2011 +0100
tracker-preferences: Add XDG dirs as toggle buttons
src/tracker-preferences/tracker-preferences.ui | 655 +++++++++++++++++-----
src/tracker-preferences/tracker-preferences.vala | 137 ++++-
2 files changed, 629 insertions(+), 163 deletions(-)
---
diff --git a/src/tracker-preferences/tracker-preferences.ui b/src/tracker-preferences/tracker-preferences.ui
index aac6b98..2972633 100644
--- a/src/tracker-preferences/tracker-preferences.ui
+++ b/src/tracker-preferences/tracker-preferences.ui
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk+" version="2.16"/>
+ <!-- interface-naming-policy toplevel-contextual -->
<object class="GtkAdjustment" id="adjustment_delay">
<property name="upper">1000</property>
<property name="value">10</property>
@@ -24,11 +25,6 @@
<property name="step_increment">1</property>
<property name="page_increment">2</property>
</object>
- <object class="GtkImage" id="image1">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="stock">gtk-missing-image</property>
- </object>
<object class="GtkListStore" id="liststore_gnored_directories_with_content">
<columns>
<!-- column-name Directory -->
@@ -70,13 +66,12 @@
<signal name="delete-event" handler="gtk_main_quit" swapped="no"/>
<signal name="response" handler="tracker_preferences_response_cb" swapped="no"/>
<child internal-child="vbox">
- <object class="GtkBox" id="dialog-vbox1">
+ <object class="GtkVBox" id="dialog-vbox1">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="orientation">vertical</property>
<property name="spacing">2</property>
<child internal-child="action_area">
- <object class="GtkButtonBox" id="dialog-action_area1">
+ <object class="GtkHButtonBox" id="dialog-action_area1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="layout_style">end</property>
@@ -111,6 +106,12 @@
</packing>
</child>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
+ </packing>
</child>
<child>
<object class="GtkNotebook" id="notebook">
@@ -167,6 +168,10 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="invisible_char">â</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="secondary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">True</property>
+ <property name="secondary_icon_sensitive">True</property>
<property name="adjustment">adjustment_delay</property>
<property name="climb_rate">1</property>
<property name="snap_to_ticks">True</property>
@@ -419,158 +424,168 @@
<object class="GtkVBox" id="vbox11">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="spacing">18</property>
<child>
- <object class="GtkLabel" id="label_disk_space_limit">
+ <object class="GtkVBox" id="vbox13">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0</property>
- <property name="ypad">4</property>
- <property name="label" translatable="yes">Stop indexing when _disk space is below:</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="fill">True</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="tracker_preferences_hscale_disk_space_limit_format_value_cb" swapped="no"/>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label_throttle">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0</property>
- <property name="ypad">4</property>
- <property name="label" translatable="yes">Indexing s_peed (faster consumes more resources):</property>
- <property name="use_underline">True</property>
- <property name="mnemonic_widget">hscale_throttle</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">2</property>
- </packing>
- </child>
- <child>
- <object class="GtkTable" id="table_throttle">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="n_rows">2</property>
- <property name="n_columns">2</property>
- <property name="column_spacing">12</property>
- <property name="row_spacing">4</property>
- <child>
- <object class="GtkLabel" id="label_slower">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="xalign">1</property>
- <property name="label" translatable="yes">Faster</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">
+ <object class="GtkLabel" id="label_disk_space_limit">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Slower</property>
+ <property name="yalign">0</property>
+ <property name="ypad">4</property>
+ <property name="label" translatable="yes">Stop indexing when _disk space is below:</property>
+ <property name="use_underline">True</property>
</object>
<packing>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="y_options"></property>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkHScale" id="hscale_throttle">
+ <object class="GtkHScale" id="hscale_disk_space_limit">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="adjustment">adjustment_throttle</property>
- <property name="inverted">True</property>
+ <property name="adjustment">adjustment_disk_space_limit</property>
+ <property name="round_digits">0</property>
<property name="digits">0</property>
- <property name="draw_value">False</property>
- <signal name="format-value" handler="tracker_preferences_hscale_throttle_format_value_cb" swapped="no"/>
+ <signal name="format-value" handler="tracker_preferences_hscale_disk_space_limit_format_value_cb" swapped="no"/>
</object>
<packing>
- <property name="right_attach">2</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
- <property name="position">3</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkLabel" id="label_device_drop_threshold1">
+ <object class="GtkVBox" id="vbox12">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0</property>
- <property name="xpad">3</property>
- <property name="ypad">4</property>
- <property name="label" translatable="yes">Drop removable device from database after:</property>
- <property name="use_underline">True</property>
- <property name="mnemonic_widget">hscale_drop_device_threshold</property>
+ <child>
+ <object class="GtkLabel" id="label_throttle">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0</property>
+ <property name="ypad">4</property>
+ <property name="label" translatable="yes">Indexing s_peed (faster consumes more resources):</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">hscale_throttle</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkTable" id="table_throttle">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="n_rows">2</property>
+ <property name="n_columns">2</property>
+ <property name="column_spacing">12</property>
+ <property name="row_spacing">4</property>
+ <child>
+ <object class="GtkLabel" id="label_slower">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes">Faster</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="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Slower</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="inverted">True</property>
+ <property name="digits">0</property>
+ <property name="draw_value">False</property>
+ <signal name="format-value" handler="tracker_preferences_hscale_throttle_format_value_cb" swapped="no"/>
+ </object>
+ <packing>
+ <property name="right_attach">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
</object>
<packing>
- <property name="expand">False</property>
+ <property name="expand">True</property>
<property name="fill">True</property>
- <property name="position">4</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
- <object class="GtkHBox" id="hbox7">
+ <object class="GtkVBox" id="vbox9">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
- <object class="GtkHScale" id="hscale_drop_device_threshold">
+ <object class="GtkLabel" id="label_device_drop_threshold1">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">adjustment_drop_device_threshold</property>
- <property name="digits">0</property>
- <signal name="format-value" handler="tracker_preferences_hscale_drop_device_threshold_format_value_cb" swapped="no"/>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0</property>
+ <property name="xpad">3</property>
+ <property name="ypad">4</property>
+ <property name="label" translatable="yes">Days before deleting removable devices / files since last mounted:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">hscale_drop_device_threshold</property>
</object>
<packing>
- <property name="expand">True</property>
+ <property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkLabel" id="label_days1">
+ <object class="GtkHScale" id="hscale_drop_device_threshold">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="xalign">1</property>
- <property name="label" translatable="yes">Day(s)</property>
- <property name="justify">right</property>
+ <property name="can_focus">True</property>
+ <property name="adjustment">adjustment_drop_device_threshold</property>
+ <property name="round_digits">0</property>
+ <property name="digits">0</property>
+ <signal name="format-value" handler="tracker_preferences_hscale_drop_device_threshold_format_value_cb" swapped="no"/>
</object>
<packing>
- <property name="expand">False</property>
+ <property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
@@ -579,7 +594,7 @@
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
- <property name="position">5</property>
+ <property name="position">2</property>
</packing>
</child>
</object>
@@ -681,9 +696,6 @@
<property name="headers_clickable">False</property>
<property name="rules_hint">True</property>
<property name="search_column">0</property>
- <child internal-child="selection">
- <object class="GtkTreeSelection" id="treeview-selection1"/>
- </child>
</object>
</child>
</object>
@@ -741,27 +753,7 @@
</packing>
</child>
<child>
- <object class="GtkToggleButton" id="togglebutton_home">
- <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="use_action_appearance">False</property>
- <property name="active">True</property>
- <signal name="toggled" handler="tracker_preferences_togglebutton_home_toggled_cb" swapped="no"/>
- <child>
- <object class="GtkImage" id="image11">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="stock">gtk-home</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">2</property>
- </packing>
+ <placeholder/>
</child>
</object>
<packing>
@@ -777,6 +769,195 @@
<property name="position">1</property>
</packing>
</child>
+ <child>
+ <object class="GtkHBox" id="hbox7">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_recurse_home">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Home Directory Recursively</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_recurse_home_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="ypad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-home</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_recurse_desktop">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Desktop Directory Recursively</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_recurse_desktop_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="ypad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">user-desktop</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_recurse_documents">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Documents Directory Recursively</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_recurse_documents_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image11">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-documents</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_recurse_music">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Music Directory Recursively</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_recurse_music_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image14">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-music</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_recurse_pictures">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Pictures Directory Recursively</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_recurse_pictures_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image15">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-pictures</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_recurse_videos">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Videos Directory Recursively</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_recurse_videos_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image16">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-videos</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">5</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_recurse_download">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Download Directory Recursively</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_recurse_download_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image17">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-downloads</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">6</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
</object>
</child>
</object>
@@ -847,9 +1028,6 @@
<property name="headers_clickable">False</property>
<property name="rules_hint">True</property>
<property name="search_column">0</property>
- <child internal-child="selection">
- <object class="GtkTreeSelection" id="treeview-selection2"/>
- </child>
</object>
</child>
</object>
@@ -923,6 +1101,194 @@
<property name="position">1</property>
</packing>
</child>
+ <child>
+ <object class="GtkHBox" id="hbox8">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_single_home">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Home Directory Only</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_single_home_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image18">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-home</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_single_desktop">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Desktop Directory Only</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_single_desktop_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image19">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">user-desktop</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_single_documents">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Documents Directory Only</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_single_documents_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image20">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-documents</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_single_music">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Music Directory Only</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_single_music_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image21">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-music</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_single_pictures">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Pictures Directory Only</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_single_pictures_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image22">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-pictures</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_single_videos">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Videos Directory Only</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_single_videos_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image23">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-videos</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">5</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="togglebutton_single_download">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_markup">Index Download Directory Only</property>
+ <property name="use_action_appearance">False</property>
+ <property name="relief">none</property>
+ <signal name="toggled" handler="tracker_preferences_togglebutton_single_download_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image24">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xpad">1</property>
+ <property name="ypad">1</property>
+ <property name="pixel_size">24</property>
+ <property name="icon_name">folder-downloads</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">6</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
</object>
</child>
</object>
@@ -1020,9 +1386,6 @@
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
<property name="search_column">0</property>
- <child internal-child="selection">
- <object class="GtkTreeSelection" id="treeview-selection3"/>
- </child>
</object>
</child>
</object>
@@ -1159,9 +1522,6 @@
<property name="headers_visible">False</property>
<property name="rules_hint">True</property>
<property name="search_column">0</property>
- <child internal-child="selection">
- <object class="GtkTreeSelection" id="treeview-selection4"/>
- </child>
</object>
</child>
</object>
@@ -1314,9 +1674,6 @@ Most commonly this is used to ignore directories like *~, *.o, *.la, etc</proper
<property name="headers_clickable">False</property>
<property name="rules_hint">True</property>
<property name="search_column">0</property>
- <child internal-child="selection">
- <object class="GtkTreeSelection" id="treeview-selection5"/>
- </child>
</object>
</child>
</object>
diff --git a/src/tracker-preferences/tracker-preferences.vala b/src/tracker-preferences/tracker-preferences.vala
index f4b6007..42f6297 100644
--- a/src/tracker-preferences/tracker-preferences.vala
+++ b/src/tracker-preferences/tracker-preferences.vala
@@ -54,7 +54,20 @@ public class Tracker.Preferences {
private TreeView treeview_ignored_directories;
private TreeView treeview_ignored_directories_with_content;
private TreeView treeview_ignored_files;
- private ToggleButton togglebutton_home;
+ private ToggleButton togglebutton_recurse_home;
+ private ToggleButton togglebutton_recurse_desktop;
+ private ToggleButton togglebutton_recurse_documents;
+ private ToggleButton togglebutton_recurse_music;
+ private ToggleButton togglebutton_recurse_pictures;
+ private ToggleButton togglebutton_recurse_videos;
+ private ToggleButton togglebutton_recurse_download;
+ private ToggleButton togglebutton_single_home;
+ private ToggleButton togglebutton_single_desktop;
+ private ToggleButton togglebutton_single_documents;
+ private ToggleButton togglebutton_single_music;
+ private ToggleButton togglebutton_single_pictures;
+ private ToggleButton togglebutton_single_videos;
+ private ToggleButton togglebutton_single_download;
private Notebook notebook;
public Preferences () {
@@ -106,7 +119,20 @@ public class Tracker.Preferences {
hscale_disk_space_limit = builder.get_object ("hscale_disk_space_limit") as Scale;
hscale_throttle = builder.get_object ("hscale_throttle") as Scale;
hscale_drop_device_threshold = builder.get_object ("hscale_drop_device_threshold") as Scale;
- togglebutton_home = builder.get_object ("togglebutton_home") as ToggleButton;
+ togglebutton_recurse_home = builder.get_object ("togglebutton_recurse_home") as ToggleButton;
+ togglebutton_recurse_desktop = builder.get_object ("togglebutton_recurse_desktop") as ToggleButton;
+ togglebutton_recurse_documents = builder.get_object ("togglebutton_recurse_documents") as ToggleButton;
+ togglebutton_recurse_music = builder.get_object ("togglebutton_recurse_music") as ToggleButton;
+ togglebutton_recurse_pictures = builder.get_object ("togglebutton_recurse_pictures") as ToggleButton;
+ togglebutton_recurse_videos = builder.get_object ("togglebutton_recurse_videos") as ToggleButton;
+ togglebutton_recurse_download = builder.get_object ("togglebutton_recurse_download") as ToggleButton;
+ togglebutton_single_home = builder.get_object ("togglebutton_single_home") as ToggleButton;
+ togglebutton_single_desktop = builder.get_object ("togglebutton_single_desktop") as ToggleButton;
+ togglebutton_single_documents = builder.get_object ("togglebutton_single_documents") as ToggleButton;
+ togglebutton_single_music = builder.get_object ("togglebutton_single_music") as ToggleButton;
+ togglebutton_single_pictures = builder.get_object ("togglebutton_single_pictures") as ToggleButton;
+ togglebutton_single_videos = builder.get_object ("togglebutton_single_videos") as ToggleButton;
+ togglebutton_single_download = builder.get_object ("togglebutton_single_download") as ToggleButton;
treeview_index_recursively = builder.get_object ("treeview_index_recursively") as TreeView;
treeview_index_single = builder.get_object ("treeview_index_single") as TreeView;
@@ -146,7 +172,21 @@ public class Tracker.Preferences {
fill_in_model (liststore_ignored_files, settings.get_strv ("ignored-files"));
fill_in_model (liststore_gnored_directories_with_content, settings.get_strv ("ignored-directories-with-content"));
- togglebutton_home.active = model_contains (liststore_index_recursively, HOME_STRING);
+ //weak string = get_user_special_dir (DESKTOP)
+ togglebutton_recurse_home.active = model_contains (liststore_index_recursively, HOME_STRING);
+ togglebutton_recurse_desktop.active = model_contains (liststore_index_recursively, "&DESKTOP");
+ togglebutton_recurse_documents.active = model_contains (liststore_index_recursively, "&DOCUMENTS");
+ togglebutton_recurse_music.active = model_contains (liststore_index_recursively, "&MUSIC");
+ togglebutton_recurse_pictures.active = model_contains (liststore_index_recursively, "&PICTURES");
+ togglebutton_recurse_videos.active = model_contains (liststore_index_recursively, "&VIDEOS");
+ togglebutton_recurse_download.active = model_contains (liststore_index_recursively, "&DOWNLOAD");
+ togglebutton_single_home.active = model_contains (liststore_index_single, HOME_STRING);
+ togglebutton_single_desktop.active = model_contains (liststore_index_single, "&DESKTOP");
+ togglebutton_single_documents.active = model_contains (liststore_index_single, "&DOCUMENTS");
+ togglebutton_single_music.active = model_contains (liststore_index_single, "&MUSIC");
+ togglebutton_single_pictures.active = model_contains (liststore_index_single, "&PICTURES");
+ togglebutton_single_videos.active = model_contains (liststore_index_single, "&VIDEOS");
+ togglebutton_single_download.active = model_contains (liststore_index_single, "&DOWNLOAD");
// We hide this page because it contains the start up
// delay which is not necessary to display for most people.
@@ -324,34 +364,103 @@ public class Tracker.Preferences {
del_dir (treeview_ignored_files);
}
- [CCode (instance_pos = -1)]
- public void togglebutton_home_toggled_cb (ToggleButton source) {
- if (source.active && !model_contains (liststore_index_recursively, HOME_STRING)) {
+ private void togglebutton_directory_update_model (ToggleButton source, ListStore store, string to_check) {
+ if (source.active && !model_contains (store, to_check)) {
TreeIter iter;
liststore_index_recursively.append (out iter);
var v = Value (typeof (string));
- v.set_string (HOME_STRING);
+ v.set_string (to_check);
liststore_index_recursively.set_value (iter, 0, v);
}
- if (!source.active && model_contains (liststore_index_recursively, HOME_STRING)) {
+ if (!source.active && model_contains (store, to_check)) {
bool valid;
TreeIter iter;
- valid = liststore_index_recursively.get_iter_first (out iter);
+ valid = store.get_iter_first (out iter);
while (valid) {
Value value;
- liststore_index_recursively.get_value (iter, 0, out value);
- if (value.get_string () == HOME_STRING) {
- liststore_index_recursively.remove (iter);
- valid = liststore_index_recursively.get_iter_first (out iter);
+ store.get_value (iter, 0, out value);
+ if (value.get_string () == to_check) {
+ store.remove (iter);
+ valid = store.get_iter_first (out iter);
} else {
- valid = liststore_index_recursively.iter_next (ref iter);
+ valid = store.iter_next (ref iter);
}
}
}
}
+ [CCode (instance_pos = -1)]
+ public void togglebutton_recurse_home_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_recursively, HOME_STRING);
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_recurse_desktop_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_recursively, Environment.get_user_special_dir (UserDirectory.DESKTOP));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_recurse_documents_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_recursively, Environment.get_user_special_dir (UserDirectory.DOCUMENTS));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_recurse_music_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_recursively, Environment.get_user_special_dir (UserDirectory.MUSIC));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_recurse_pictures_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_recursively, Environment.get_user_special_dir (UserDirectory.PICTURES));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_recurse_videos_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_recursively, Environment.get_user_special_dir (UserDirectory.VIDEOS));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_recurse_download_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_recursively, Environment.get_user_special_dir (UserDirectory.DOWNLOAD));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_single_home_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_single, HOME_STRING);
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_single_desktop_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_single, Environment.get_user_special_dir (UserDirectory.DESKTOP));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_single_documents_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_single, Environment.get_user_special_dir (UserDirectory.DOCUMENTS));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_single_music_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_single, Environment.get_user_special_dir (UserDirectory.MUSIC));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_single_pictures_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_single, Environment.get_user_special_dir (UserDirectory.PICTURES));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_single_videos_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_single, Environment.get_user_special_dir (UserDirectory.VIDEOS));
+ }
+
+ [CCode (instance_pos = -1)]
+ public void togglebutton_single_download_toggled_cb (ToggleButton source) {
+ togglebutton_directory_update_model (source, liststore_index_single, Environment.get_user_special_dir (UserDirectory.DOWNLOAD));
+ }
+
private void add_freevalue (ListStore model) {
Dialog dialog;
Entry entry;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]