r3658 - in trunk/src/target/OM-2007.2/applications/openmoko-messages2: . src

chris at sita.openmoko.org chris at sita.openmoko.org
Mon Dec 17 13:11:37 CET 2007


Author: chris
Date: 2007-12-17 13:11:35 +0100 (Mon, 17 Dec 2007)
New Revision: 3658

Modified:
   trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog
   trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-contacts.c
   trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms.h
Log:
        * src/sms-contacts.c: (delete_all_added_cb),
        (delete_all_progress_cb), (delete_all_clicked_cb):
        Implement delete-all functionality in the contacts view

        * src/sms.h:
        Remove unused variable


Modified: trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog	2007-12-17 09:31:02 UTC (rev 3657)
+++ trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog	2007-12-17 12:11:35 UTC (rev 3658)
@@ -1,3 +1,12 @@
+2007-12-17  Chris Lord  <chris at openedhand.com>
+
+	* src/sms-contacts.c: (delete_all_added_cb),
+	(delete_all_progress_cb), (delete_all_clicked_cb):
+	Implement delete-all functionality in the contacts view
+
+	* src/sms.h:
+	Remove unused variable
+
 2007-12-14  Chris Lord  <chris at openedhand.com>
 
 	* src/sms-contacts.c: (delete_clicked_cb):

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-12-17 09:31:02 UTC (rev 3657)
+++ trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-contacts.c	2007-12-17 12:11:35 UTC (rev 3658)
@@ -253,9 +253,50 @@
 }
 
 static void
+delete_all_added_cb (JanaStoreView *store_view, GList *components,
+		     SmsData *data)
+{
+	for (; components; components = components->next) {
+		JanaComponent *comp = JANA_COMPONENT (components->data);
+		jana_store_remove_component (
+			jana_store_view_get_store (store_view), comp);
+	}
+}
+
+static void
+delete_all_progress_cb (JanaStoreView *store_view, gint percent,
+			SmsData *data)
+{
+	if (percent == 100) g_object_unref (store_view);
+}
+
+static void
 delete_all_clicked_cb (GtkToolButton *button, SmsData *data)
 {
+	JanaStoreView *notes_view;
+	GtkWidget *dialog;
+	gint response;
+
 	if (hidden) return;
+	
+	dialog = gtk_message_dialog_new_with_markup (GTK_WINDOW (data->window),
+		GTK_DIALOG_MODAL,
+		GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
+		"Delete <b>all</b> messages?");
+	gtk_dialog_add_buttons (GTK_DIALOG (dialog), GTK_STOCK_CANCEL,
+		GTK_RESPONSE_CANCEL, GTK_STOCK_DELETE, GTK_RESPONSE_YES, NULL);
+	
+	response = gtk_dialog_run (GTK_DIALOG (dialog));
+	gtk_widget_destroy (dialog);
+	if (response != GTK_RESPONSE_YES) return;
+	
+	/* Delete all messages */
+	notes_view = jana_store_get_view (data->notes);
+	g_signal_connect (notes_view, "added",
+		G_CALLBACK (delete_all_added_cb), data);
+	g_signal_connect (notes_view, "progress",
+		G_CALLBACK (delete_all_progress_cb), data);
+	jana_store_view_start (notes_view);
 }
 
 GtkWidget *

Modified: trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms.h
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms.h	2007-12-17 09:31:02 UTC (rev 3657)
+++ trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms.h	2007-12-17 12:11:35 UTC (rev 3658)
@@ -35,7 +35,6 @@
 
 typedef struct {
 	JanaStore *notes;
-	JanaStoreView *notes_view;
 	GtkTreeModel *note_store;
 	GtkTreeModel *note_filter;
 	GHashTable *note_count;





More information about the commitlog mailing list