Changeset 3566

Show
Ignore:
Timestamp:
04/11/08 16:29:30
Author:
pvanhoof
Message:

create as async

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/tests/c-demo/tny-demoui-summary-view.c

    r3526 r3566  
    15231523} 
    15241524 
    1525  
     1525static void 
     1526create_cb (TnyFolderStore *store, gboolean cancelled, TnyFolder *new_folder, GError *err, gpointer user_data) 
     1527
     1528        TnyDemouiSummaryView *self = user_data; 
     1529        if (err != NULL) { 
     1530                GtkWidget *edialog; 
     1531                edialog = gtk_message_dialog_new ( 
     1532                                                  GTK_WINDOW (gtk_widget_get_parent (GTK_WIDGET (self))), 
     1533                                                  GTK_DIALOG_DESTROY_WITH_PARENT, 
     1534                                                  GTK_MESSAGE_ERROR, 
     1535                                                  GTK_BUTTONS_CLOSE, 
     1536                                                  err->message); 
     1537                g_signal_connect_swapped (edialog, "response", 
     1538                        G_CALLBACK (gtk_widget_destroy), edialog); 
     1539                gtk_widget_show_all (edialog); 
     1540        } 
     1541 
     1542        g_object_unref (self); 
     1543
    15261544static void  
    15271545on_create_folder_activate (GtkMenuItem *mitem, gpointer user_data) 
     
    15731591                                        const gchar *newname = gtk_entry_get_text (GTK_ENTRY (entry)); 
    15741592 
    1575                                         TnyFolder *created = tny_folder_store_create_folder (folderstore, newname, &err); 
    1576  
    1577                                         if (created) /* Can be NULL on failure */ 
    1578                                                 g_object_unref (G_OBJECT (created)); 
    1579  
    1580                                         if (err != NULL) 
    1581                                         { 
    1582                                                 GtkWidget *edialog; 
    1583  
    1584                                                 gtk_widget_destroy (dialog); 
    1585                                                 dialog = NULL; 
    1586  
    1587                                                 edialog = gtk_message_dialog_new ( 
    1588                                                                                   GTK_WINDOW (gtk_widget_get_parent (GTK_WIDGET (self))), 
    1589                                                                                   GTK_DIALOG_DESTROY_WITH_PARENT, 
    1590                                                                                   GTK_MESSAGE_ERROR, 
    1591                                                                                   GTK_BUTTONS_CLOSE, 
    1592                                                                                   err->message); 
    1593                                                 g_signal_connect_swapped (edialog, "response", 
    1594                                                         G_CALLBACK (gtk_widget_destroy), edialog); 
    1595                                                 gtk_widget_show_all (edialog); 
    1596                                                 g_error_free (err); 
    1597                                         } 
     1593                                        tny_folder_store_create_folder_async (folderstore, newname,  
     1594                                                create_cb, status_update,  
     1595                                                g_object_ref (self)); 
     1596 
    15981597                                } 
    15991598                                break; 
     
    16051604                        if (dialog) 
    16061605                                gtk_widget_destroy (dialog); 
    1607                         g_object_unref (G_OBJECT (folderstore)); 
     1606                        g_object_unref (folderstore); 
    16081607                } 
    16091608