r3465 - in trunk/src/target/OM-2007.2/applications/openmoko-messages2: . src
chris at sita.openmoko.org
chris at sita.openmoko.org
Wed Nov 21 17:00:09 CET 2007
Author: chris
Date: 2007-11-21 17:00:08 +0100 (Wed, 21 Nov 2007)
New Revision: 3465
Modified:
trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog
trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-contacts.c
Log:
* src/sms-contacts.c: (nophoto_filter_func),
(sms_contacts_page_new):
Use a filter modify func to set contacts with no photo to the
stock_person icon
Modified: trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog 2007-11-21 15:17:58 UTC (rev 3464)
+++ trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog 2007-11-21 16:00:08 UTC (rev 3465)
@@ -1,5 +1,12 @@
2007-11-21 Chris Lord <chris at openedhand.com>
+ * src/sms-contacts.c: (nophoto_filter_func),
+ (sms_contacts_page_new):
+ Use a filter modify func to set contacts with no photo to the
+ stock_person icon
+
+2007-11-21 Chris Lord <chris at openedhand.com>
+
* configure.ac:
* Makefile.am:
Remove libhito
Modified: trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-contacts.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-contacts.c 2007-11-21 15:17:58 UTC (rev 3464)
+++ trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-contacts.c 2007-11-21 16:00:08 UTC (rev 3465)
@@ -149,6 +149,33 @@
g_slice_free (GtkTreeIter, iter);
}
+static void
+nophoto_filter_func (GtkTreeModel *model, GtkTreeIter *iter, GValue *value,
+ gint column, SmsData *data)
+{
+ GtkTreeIter real_iter;
+ gpointer pointer;
+
+ gtk_tree_model_filter_convert_iter_to_child_iter (
+ (GtkTreeModelFilter *)model, &real_iter, iter);
+
+ gtk_tree_model_get (data->contacts_store, &real_iter,
+ column, &pointer, -1);
+ switch (column) {
+ case COL_UID :
+ case COL_NAME :
+ case COL_DETAIL :
+ g_value_take_string (value, pointer);
+ break;
+ case COL_ICON :
+ if (pointer)
+ g_value_take_object (value, pointer);
+ else
+ g_value_set_object (value, data->no_photo);
+ break;
+ }
+}
+
GtkWidget *
sms_contacts_page_new (SmsData *data)
{
@@ -212,6 +239,11 @@
/* Create filter */
data->contacts_filter = gtk_tree_model_filter_new (
data->contacts_store, NULL);
+ gtk_tree_model_filter_set_modify_func ((GtkTreeModelFilter *)
+ data->contacts_filter, COL_LAST,
+ (GType []){G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING, GDK_TYPE_PIXBUF},
+ (GtkTreeModelFilterModifyFunc)nophoto_filter_func, data, NULL);
/* Create groups model */
data->contacts_combo = gtk_combo_box_new_text ();
More information about the commitlog
mailing list