diff options
author | Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk> | 2009-05-30 01:53:38 +0800 |
---|---|---|
committer | Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk> | 2009-06-01 23:35:28 +0800 |
commit | c6d064ad5952f233d583ccd420c502b581d57a8c (patch) | |
tree | 43f66e39f2303c645138d461f60677d1ba1988ab /src | |
parent | c2c29925bcb51aa4b5bb5c6e07e52fa4c155ce95 (diff) | |
download | gsoc2013-empathy-c6d064ad5952f233d583ccd420c502b581d57a8c.tar gsoc2013-empathy-c6d064ad5952f233d583ccd420c502b581d57a8c.tar.gz gsoc2013-empathy-c6d064ad5952f233d583ccd420c502b581d57a8c.tar.bz2 gsoc2013-empathy-c6d064ad5952f233d583ccd420c502b581d57a8c.tar.lz gsoc2013-empathy-c6d064ad5952f233d583ccd420c502b581d57a8c.tar.xz gsoc2013-empathy-c6d064ad5952f233d583ccd420c502b581d57a8c.tar.zst gsoc2013-empathy-c6d064ad5952f233d583ccd420c502b581d57a8c.zip |
Add a Location tab in preferences
Diffstat (limited to 'src')
-rw-r--r-- | src/empathy-preferences.c | 52 | ||||
-rw-r--r-- | src/empathy-preferences.ui | 206 |
2 files changed, 253 insertions, 5 deletions
diff --git a/src/empathy-preferences.c b/src/empathy-preferences.c index 628db52da..ff74a8cdc 100644 --- a/src/empathy-preferences.c +++ b/src/empathy-preferences.c @@ -64,6 +64,12 @@ typedef struct { GtkWidget *treeview_spell_checker; + GtkWidget *checkbutton_location_publish; + GtkWidget *checkbutton_location_reduce_accuracy; + GtkWidget *checkbutton_location_resource_network; + GtkWidget *checkbutton_location_resource_cell; + GtkWidget *checkbutton_location_resource_gps; + GList *notify_ids; } EmpathyPreferences; @@ -247,6 +253,38 @@ preferences_setup_widgets (EmpathyPreferences *preferences) EMPATHY_PREFS_AUTOCONNECT, preferences->checkbutton_autoconnect); + preferences_hookup_toggle_button (preferences, + EMPATHY_PREFS_LOCATION_PUBLISH, + preferences->checkbutton_location_publish); + + preferences_hookup_toggle_button (preferences, + EMPATHY_PREFS_LOCATION_RESOURCE_NETWORK, + preferences->checkbutton_location_resource_network); + preferences_hookup_sensitivity (preferences, + EMPATHY_PREFS_LOCATION_PUBLISH, + preferences->checkbutton_location_resource_network); + + preferences_hookup_toggle_button (preferences, + EMPATHY_PREFS_LOCATION_RESOURCE_CELL, + preferences->checkbutton_location_resource_cell); + preferences_hookup_sensitivity (preferences, + EMPATHY_PREFS_LOCATION_PUBLISH, + preferences->checkbutton_location_resource_cell); + + preferences_hookup_toggle_button (preferences, + EMPATHY_PREFS_LOCATION_RESOURCE_GPS, + preferences->checkbutton_location_resource_gps); + preferences_hookup_sensitivity (preferences, + EMPATHY_PREFS_LOCATION_PUBLISH, + preferences->checkbutton_location_resource_gps); + + preferences_hookup_toggle_button (preferences, + EMPATHY_PREFS_LOCATION_REDUCE_ACCURACY, + preferences->checkbutton_location_reduce_accuracy); + preferences_hookup_sensitivity (preferences, + EMPATHY_PREFS_LOCATION_PUBLISH, + preferences->checkbutton_location_reduce_accuracy); + id = empathy_conf_notify_add (empathy_conf_get (), EMPATHY_PREFS_UI_COMPACT_CONTACT_LIST, preferences_compact_contact_list_changed_cb, @@ -1009,6 +1047,8 @@ preferences_radio_button_toggled_cb (GtkWidget *button, } value = enum_value->value_nick; + } else if (key && strcmp (key, EMPATHY_PREFS_CONTACTS_SORT_CRITERIUM) == 0) { + return; } empathy_conf_set_string (empathy_conf_get (), key, value); @@ -1094,6 +1134,11 @@ empathy_preferences_show (GtkWindow *parent) "checkbutton_sounds_disabled_away", &preferences->checkbutton_sounds_disabled_away, "treeview_sounds", &preferences->treeview_sounds, "treeview_spell_checker", &preferences->treeview_spell_checker, + "checkbutton_location_publish", &preferences->checkbutton_location_publish, + "checkbutton_location_reduce_accuracy", &preferences->checkbutton_location_reduce_accuracy, + "checkbutton_location_resource_network", &preferences->checkbutton_location_resource_network, + "checkbutton_location_resource_cell", &preferences->checkbutton_location_resource_cell, + "checkbutton_location_resource_gps", &preferences->checkbutton_location_resource_gps, NULL); g_free (filename); @@ -1124,6 +1169,13 @@ empathy_preferences_show (GtkWindow *parent) gtk_widget_show (page); } + if (TRUE) { /* FIXME */ + GtkWidget *page; + + page = gtk_notebook_get_nth_page (GTK_NOTEBOOK (preferences->notebook), 4); + gtk_widget_show (page); + } + if (parent) { gtk_window_set_transient_for (GTK_WINDOW (preferences->dialog), GTK_WINDOW (parent)); diff --git a/src/empathy-preferences.ui b/src/empathy-preferences.ui index c20d271e2..b95354720 100644 --- a/src/empathy-preferences.ui +++ b/src/empathy-preferences.ui @@ -308,7 +308,7 @@ <property name="label" translatable="yes">Notifications</property> </object> <packing> - <property name="position">4</property> + <property name="position">1</property> <property name="tab_fill">False</property> </packing> </child> @@ -424,6 +424,202 @@ </packing> </child> <child> + <object class="GtkVBox" id="vbox1"> + <property name="visible">True</property> + <property name="border_width">12</property> + <property name="orientation">vertical</property> + <property name="spacing">18</property> + <child> + <object class="GtkCheckButton" id="checkbutton_location_publish"> + <property name="label" translatable="yes">_Publish location to my contacts</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame1"> + <property name="visible">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment2"> + <property name="visible">True</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkVBox" id="vbox4"> + <property name="visible">True</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <object class="GtkHBox" id="hbox1"> + <property name="visible">True</property> + <property name="spacing">6</property> + <child> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="yalign">0</property> + <property name="stock">gtk-dialog-info</property> + </object> + <packing> + <property name="expand">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label6"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes"><small>Reduced location accuracy means that nothing more precise than your city, state and country will be published. GPS coordinates will have a random value added (±0.5°).</small></property> + <property name="use_markup">True</property> + <property name="wrap">True</property> + </object> + <packing> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="checkbutton_location_reduce_accuracy"> + <property name="label" translatable="yes">_Reduce location accuracy</property> + <property name="visible">True</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> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label3"> + <property name="visible">True</property> + <property name="label" translatable="yes"><b>Privacy</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame5"> + <property name="visible">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment4"> + <property name="visible">True</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkVBox" id="vbox5"> + <property name="visible">True</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkCheckButton" id="checkbutton_location_resource_gps"> + <property name="label" translatable="yes">Allow _GPS usage</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="checkbutton_location_resource_cell"> + <property name="label" translatable="yes">Allow _cellphone usage</property> + <property name="visible">True</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> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="checkbutton_location_resource_network"> + <property name="label" translatable="yes">Allow _network usage</property> + <property name="visible">True</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> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label5"> + <property name="visible">True</property> + <property name="label" translatable="yes"><b>Geoclue Settings</b></property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="position">3</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel" id="label2"> + <property name="visible">True</property> + <property name="label" translatable="yes">Location</property> + </object> + <packing> + <property name="position">3</property> + <property name="tab_fill">False</property> + </packing> + </child> + <child> <object class="GtkVBox" id="vbox168"> <property name="visible">True</property> <property name="border_width">12</property> @@ -532,7 +728,7 @@ </child> </object> <packing> - <property name="position">3</property> + <property name="position">4</property> </packing> </child> <child type="tab"> @@ -541,7 +737,7 @@ <property name="label" translatable="yes">Spell Checking</property> </object> <packing> - <property name="position">3</property> + <property name="position">4</property> <property name="tab_fill">False</property> </packing> </child> @@ -616,7 +812,7 @@ </child> </object> <packing> - <property name="position">4</property> + <property name="position">5</property> </packing> </child> <child type="tab"> @@ -625,7 +821,7 @@ <property name="label" translatable="yes">Themes</property> </object> <packing> - <property name="position">4</property> + <property name="position">5</property> <property name="tab_fill">False</property> </packing> </child> |