diff options
author | Chris Toshok <toshok@ximian.com> | 2002-11-12 12:01:10 +0800 |
---|---|---|
committer | Chris Toshok <toshok@src.gnome.org> | 2002-11-12 12:01:10 +0800 |
commit | d7aee7e7edfe1d76beba4246f50510479af955a7 (patch) | |
tree | db6f952d40cf95964810b1467d15ebcb8fc1460e /addressbook/gui/widgets | |
parent | b5d027f4285267d769975ab7fc4ec95959375b26 (diff) | |
download | gsoc2013-evolution-d7aee7e7edfe1d76beba4246f50510479af955a7.tar gsoc2013-evolution-d7aee7e7edfe1d76beba4246f50510479af955a7.tar.gz gsoc2013-evolution-d7aee7e7edfe1d76beba4246f50510479af955a7.tar.bz2 gsoc2013-evolution-d7aee7e7edfe1d76beba4246f50510479af955a7.tar.lz gsoc2013-evolution-d7aee7e7edfe1d76beba4246f50510479af955a7.tar.xz gsoc2013-evolution-d7aee7e7edfe1d76beba4246f50510479af955a7.tar.zst gsoc2013-evolution-d7aee7e7edfe1d76beba4246f50510479af955a7.zip |
change signature to that of a weak ref notify function. (main): ::destroy
2002-11-11 Chris Toshok <toshok@ximian.com>
* gui/widgets/test-reflow.c (destroy_callback): change signature
to that of a weak ref notify function.
(main): ::destroy -> weak_ref.
* gui/widgets/test-minicard.c (destroy_callback): change signature
to that of a weak ref notify function.
(main): ::destroy -> weak_ref.
* gui/widgets/test-minicard-view.c (destroy_callback): change
signature to that of a weak ref notify function.
(main): ::destroy -> weak_ref.
* gui/widgets/test-minicard-label.c (destroy_callback): change
signature to that of a weak ref notify function.
(main): ::destroy -> weak_ref.
* gui/widgets/e-minicard-widget.c (e_minicard_widget_init): ifdef
out the call to gnome_canvas_set_scroll_region. It doesn't seem
necessary judging from the rest of the code, and it also crashes
the addressbook if it's in.
* gui/widgets/e-minicard-widget-test.c (destroy_callback): change
signature to that of a weak ref notify function.
(main): ::destroy -> weak_ref.
* gui/widgets/e-minicard-control.c (free_struct): change signature
to that of a weak ref notify function.
(e_minicard_control_factory): ::destroy -> weak_ref.
* gui/widgets/e-addressbook-view.c (e_addressbook_view_init):
::destroy -> weak_ref.
(e_addressbook_view_print): same.
(free_closure): change signature to that of a weak ref notify
function.
(e_contact_print_destroy): same.
(invisible_destroyed): same.
* gui/widgets/e-addressbook-util.c
(e_addressbook_prompt_save_dialog): convert from GnomeDialog to
GtkDialog.
(e_addressbook_show_multiple_cards): same.
* gui/contact-list-editor/e-contact-list-editor.c
(prompt_to_save_changes): change response ids to use
GTK_RESPONSE_.
* gui/component/select-names/e-select-names-manager.c
(clear_widget): new function.
(e_select_names_manager_activate_dialog): ::destroy -> weak_ref.
* gui/component/select-names/e-select-names.c (clear_widget):
change signature to that of a weak ref notify function.
(e_select_names_init): ::destroy -> weak_ref.
* gui/component/e-address-popup.c (mini_wizard_destroy_cb): change
signature to that of a weak ref notify function.
(mini_wizard_new): ::destroy -> weak_ref.
* gui/component/addressbook-config.c
(addressbook_source_dialog_destroy): change signature to that of a
weak ref notify function.
(ldap_config_control_destroy_callback): same.
(addressbook_add_server_druid): ::destroy -> weak_ref.
(addressbook_edit_server_dialog): same.
(ldap_config_control_new): same.
* gui/component/addressbook.c (destroy_callback): change signature
to that of a a weak ref notify function.
(addressbook_factory_new_control): ::destroy -> weak_ref.
* gui/merging/e-card-merging.c (response): rename clicked to this,
and destroy the dialog here.
(match_query_callback): ::clicked -> ::response
* gui/merging/e-card-merging-book-commit-duplicate-detected.glade:
convert.
* gui/merging/e-card-duplicate-detected.glade: same.
svn path=/trunk/; revision=18719
Diffstat (limited to 'addressbook/gui/widgets')
-rw-r--r-- | addressbook/gui/widgets/e-addressbook-util.c | 91 | ||||
-rw-r--r-- | addressbook/gui/widgets/e-addressbook-view.c | 42 | ||||
-rw-r--r-- | addressbook/gui/widgets/e-minicard-control.c | 5 | ||||
-rw-r--r-- | addressbook/gui/widgets/e-minicard-widget-test.c | 6 | ||||
-rw-r--r-- | addressbook/gui/widgets/e-minicard-widget.c | 4 | ||||
-rw-r--r-- | addressbook/gui/widgets/test-minicard-label.c | 6 | ||||
-rw-r--r-- | addressbook/gui/widgets/test-minicard-view.c | 6 | ||||
-rw-r--r-- | addressbook/gui/widgets/test-minicard.c | 6 | ||||
-rw-r--r-- | addressbook/gui/widgets/test-reflow.c | 6 |
9 files changed, 74 insertions, 98 deletions
diff --git a/addressbook/gui/widgets/e-addressbook-util.c b/addressbook/gui/widgets/e-addressbook-util.c index 93727b7e1b..76453d5616 100644 --- a/addressbook/gui/widgets/e-addressbook-util.c +++ b/addressbook/gui/widgets/e-addressbook-util.c @@ -60,19 +60,26 @@ gint e_addressbook_prompt_save_dialog (GtkWindow *parent) { GtkWidget *dialog; + gint response; - dialog = gnome_message_box_new (_("Do you want to save changes?"), - GNOME_MESSAGE_BOX_QUESTION, - GNOME_STOCK_BUTTON_YES, - GNOME_STOCK_BUTTON_NO, - GNOME_STOCK_BUTTON_CANCEL, - NULL); + dialog = gtk_message_dialog_new (parent, + (GtkDialogFlags)0, + GTK_MESSAGE_QUESTION, + GTK_BUTTONS_NONE, + _("Do you want to save changes?")); + gtk_dialog_add_buttons (GTK_DIALOG (dialog), + GTK_STOCK_YES, GTK_RESPONSE_YES, + GTK_STOCK_NO, GTK_RESPONSE_NO, + GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, + NULL); - gnome_dialog_set_default (GNOME_DIALOG (dialog), 0); - gnome_dialog_grab_focus (GNOME_DIALOG (dialog), 0); - gnome_dialog_set_parent (GNOME_DIALOG (dialog), parent); + gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_YES); - return gnome_dialog_run_and_close (GNOME_DIALOG (dialog)); + response = gtk_dialog_run (GTK_DIALOG (dialog)); + + gtk_widget_destroy (dialog); + + return response; } static void @@ -154,12 +161,6 @@ e_addressbook_show_contact_list_editor (EBook *book, ECard *card, return ce; } -typedef struct { - EBook *book; - GList *list; - gboolean editable; -} BookAndList; - static void view_cards (EBook *book, GList *list, gboolean editable) { @@ -172,24 +173,6 @@ view_cards (EBook *book, GList *list, gboolean editable) } } -static void -view_question_clicked (GtkObject *object, int button, BookAndList *bnl) -{ - GnomeDialog *dialog = GNOME_DIALOG (object); - switch (button) { - case 0: - view_cards (bnl->book, bnl->list, bnl->editable); - break; - } - gnome_dialog_close(dialog); -} - -static void -view_question_destroyed (GtkObject *object, GList *list) -{ - gtk_main_quit(); -} - void e_addressbook_show_multiple_cards (EBook *book, GList *list, @@ -198,32 +181,22 @@ e_addressbook_show_multiple_cards (EBook *book, if (list) { int length = g_list_length (list); if (length > 5) { - char *string; GtkWidget *dialog; - BookAndList bnl; - - bnl.book = book; - bnl.list = list; - bnl.editable = editable; - - dialog = gnome_dialog_new (_("Display Cards?"), - _("Display Cards"), - GNOME_STOCK_BUTTON_CANCEL, - NULL); - - string = g_strdup_printf (_("Opening %d cards will open %d new windows as well.\n" - "Do you really want to display all of these cards?"), length, length); - gtk_box_pack_start (GTK_BOX (GNOME_DIALOG (dialog)->vbox), gtk_label_new (string), FALSE, FALSE, 0); - g_free (string); - - g_signal_connect (dialog, "destroy", - G_CALLBACK (view_question_destroyed), &bnl); - g_signal_connect (dialog, "clicked", - G_CALLBACK (view_question_clicked), &bnl); - - gtk_widget_show_all (dialog); - - gtk_main(); + gint response; + + dialog = gtk_message_dialog_new (NULL, + 0, + GTK_MESSAGE_QUESTION, + GTK_BUTTONS_YES_NO, + _("Opening %d cards will open %d new windows as well.\n" + "Do you really want to display all of these cards?"), + length, + length); + + response = gtk_dialog_run (GTK_DIALOG (dialog)); + gtk_widget_destroy (dialog); + if (response == GTK_RESPONSE_YES) + view_cards (book, list, editable); } else { view_cards (book, list, editable); } diff --git a/addressbook/gui/widgets/e-addressbook-view.c b/addressbook/gui/widgets/e-addressbook-view.c index 1c74a1b636..5c4cd58ac3 100644 --- a/addressbook/gui/widgets/e-addressbook-view.c +++ b/addressbook/gui/widgets/e-addressbook-view.c @@ -92,7 +92,7 @@ static void selection_received (GtkWidget *invisible, GtkSelectionData *selectio guint time, EAddressbookView *view); static void selection_get (GtkWidget *invisible, GtkSelectionData *selection_data, guint info, guint time_stamp, EAddressbookView *view); -static void invisible_destroyed (GtkWidget *invisible, EAddressbookView *view); +static void invisible_destroyed (gpointer data, GObject *where_object_was); static GtkTableClass *parent_class = NULL; @@ -303,9 +303,7 @@ e_addressbook_view_init (EAddressbookView *eav) g_signal_connect (eav->invisible, "selection_received", G_CALLBACK (selection_received), eav); - g_signal_connect (eav->invisible, "destroy", - G_CALLBACK (invisible_destroyed), - eav); + g_object_weak_ref (G_OBJECT (eav->invisible), invisible_destroyed, eav); } static void @@ -1018,8 +1016,10 @@ button_toggled(GtkWidget *button, LetterClosure *closure) } static void -free_closure(GtkWidget *button, LetterClosure *closure) +free_closure(gpointer data, GObject *where_object_was) { + GtkWidget *button = GTK_WIDGET (where_object_was); + LetterClosure *closure = data; if (button != NULL && button == closure->view->current_alphabet_widget) { closure->view->current_alphabet_widget = NULL; @@ -1074,8 +1074,7 @@ create_alphabet (EAddressbookView *view) closure->vbox = vbox; g_signal_connect(button, "toggled", G_CALLBACK (button_toggled), closure); - g_signal_connect(button, "destroy", - G_CALLBACK (free_closure), closure); + g_object_weak_ref (G_OBJECT (button), free_closure, closure); } g_strfreev (label_v); @@ -1397,13 +1396,18 @@ change_view_type (EAddressbookView *view, EAddressbookViewType view_type) command_state_change (view); } +typedef struct { + GtkWidget *table; + GObject *printable; +} EContactPrintDialogWeakData; + static void -e_contact_print_destroy(GnomeDialog *dialog, gpointer data) +e_contact_print_destroy(gpointer data, GObject *where_object_was) { - ETableScrolled *table = g_object_get_data(G_OBJECT(dialog), "table"); - EPrintable *printable = g_object_get_data(G_OBJECT(dialog), "printable"); - g_object_unref (printable); - g_object_unref (table); + EContactPrintDialogWeakData *weak_data = data; + g_object_unref (weak_data->printable); + g_object_unref (weak_data->table); + g_free (weak_data); } static void @@ -1534,6 +1538,7 @@ e_addressbook_view_print(EAddressbookView *view) GtkWidget *dialog; EPrintable *printable; ETable *etable; + EContactPrintDialogWeakData *weak_data; dialog = gnome_print_dialog_new("Print cards", GNOME_PRINT_DIALOG_RANGE | GNOME_PRINT_DIALOG_COPIES); gnome_print_dialog_construct_range_any(GNOME_PRINT_DIALOG(dialog), GNOME_PRINT_RANGE_ALL | GNOME_PRINT_RANGE_SELECTION, @@ -1549,8 +1554,14 @@ e_addressbook_view_print(EAddressbookView *view) g_signal_connect(dialog, "clicked", G_CALLBACK(e_contact_print_button), NULL); - g_signal_connect(dialog, - "destroy", G_CALLBACK(e_contact_print_destroy), NULL); + + weak_data = g_new (EContactPrintDialogWeakData, 1); + + weak_data->table = view->widget; + weak_data->printable = G_OBJECT (printable); + + g_object_weak_ref (G_OBJECT (dialog), e_contact_print_destroy, weak_data); + gtk_widget_show(dialog); } } @@ -1646,8 +1657,9 @@ e_addressbook_view_delete_selection(EAddressbookView *view) } static void -invisible_destroyed (GtkWidget *invisible, EAddressbookView *view) +invisible_destroyed (gpointer data, GObject *where_object_was) { + EAddressbookView *view = data; view->invisible = NULL; } diff --git a/addressbook/gui/widgets/e-minicard-control.c b/addressbook/gui/widgets/e-minicard-control.c index c5256f6c3e..278cfa0120 100644 --- a/addressbook/gui/widgets/e-minicard-control.c +++ b/addressbook/gui/widgets/e-minicard-control.c @@ -265,7 +265,7 @@ save_in_addressbook(GtkWidget *button, gpointer data) } static void -free_struct (GtkWidget *control, gpointer data) +free_struct (gpointer data, GObject *where_object_was) { EMinicardControl *minicard_control = data; e_free_object_list (minicard_control->card_list); @@ -317,8 +317,7 @@ e_minicard_control_factory (BonoboGenericFactory *Factory, control = bonobo_control_new (vbox); - g_signal_connect (control, "destroy", - G_CALLBACK (free_struct), minicard_control); + g_object_weak_ref (G_OBJECT (control), free_struct, minicard_control); stream = bonobo_persist_stream_new (pstream_load, pstream_save, pstream_get_content_types, diff --git a/addressbook/gui/widgets/e-minicard-widget-test.c b/addressbook/gui/widgets/e-minicard-widget-test.c index b768ff9e74..9a8d27d21c 100644 --- a/addressbook/gui/widgets/e-minicard-widget-test.c +++ b/addressbook/gui/widgets/e-minicard-widget-test.c @@ -60,7 +60,7 @@ /* This is a horrible thing to do, but it is just a test. */ -static void destroy_callback(GtkWidget *app, gpointer data) +static void destroy_callback(gpointer data, GObject *where_object_was) { exit(0); } @@ -106,9 +106,7 @@ int main( int argc, char *argv[] ) gnome_app_set_contents( GNOME_APP( app ), minicard ); /* Connect the signals */ - g_signal_connect( app, "destroy", - G_CALLBACK( destroy_callback ), - ( gpointer ) app ); + g_object_weak_ref (app, destroy_callback, app); gtk_widget_show_all( app ); diff --git a/addressbook/gui/widgets/e-minicard-widget.c b/addressbook/gui/widgets/e-minicard-widget.c index 5c8483ac88..e8f33673c3 100644 --- a/addressbook/gui/widgets/e-minicard-widget.c +++ b/addressbook/gui/widgets/e-minicard-widget.c @@ -169,10 +169,12 @@ e_minicard_widget_init (EMinicardWidget *emw) "width", (double) 100, NULL ); +#if PENDING_PORT_WORK + /* XXX this crashes since the canvas has no h/v adjustments. */ gnome_canvas_set_scroll_region ( GNOME_CANVAS( emw ), 0, 0, 100, 100 ); - +#endif emw->card = NULL; } diff --git a/addressbook/gui/widgets/test-minicard-label.c b/addressbook/gui/widgets/test-minicard-label.c index cdbebe3160..c109497628 100644 --- a/addressbook/gui/widgets/test-minicard-label.c +++ b/addressbook/gui/widgets/test-minicard-label.c @@ -32,7 +32,7 @@ GnomeCanvasItem *label; GnomeCanvasItem *rect; -static void destroy_callback(GtkWidget *app, gpointer data) +static void destroy_callback(gpointer data, GObject *where_object_was) { exit(0); } @@ -110,9 +110,7 @@ int main( int argc, char *argv[] ) /* Connect the signals */ - g_signal_connect( app, "destroy", - G_CALLBACK( destroy_callback ), - ( gpointer ) app ); + g_object_weak_ref (app, destroy_callback, app); g_signal_connect( canvas , "size_allocate", G_CALLBACK ( allocate_callback ), diff --git a/addressbook/gui/widgets/test-minicard-view.c b/addressbook/gui/widgets/test-minicard-view.c index e14443b01e..7abe611711 100644 --- a/addressbook/gui/widgets/test-minicard-view.c +++ b/addressbook/gui/widgets/test-minicard-view.c @@ -48,7 +48,7 @@ init_bonobo (int argc, char **argv) } -static void destroy_callback(GtkWidget *app, gpointer data) +static void destroy_callback(gpointer data, GObject *where_object_was) { exit(0); } @@ -188,9 +188,7 @@ int main( int argc, char *argv[] ) gnome_app_set_contents( GNOME_APP( app ), vbox ); /* Connect the signals */ - g_signal_connect( app, "destroy", - G_CALLBACK ( destroy_callback ), - ( gpointer ) app ); + g_object_weak_ref (app, destroy_callback, app); g_signal_connect( canvas, "size_allocate", G_CALLBACK ( allocate_callback ), diff --git a/addressbook/gui/widgets/test-minicard.c b/addressbook/gui/widgets/test-minicard.c index 77cc2975cb..822362d972 100644 --- a/addressbook/gui/widgets/test-minicard.c +++ b/addressbook/gui/widgets/test-minicard.c @@ -33,7 +33,7 @@ GnomeCanvasItem *card; GnomeCanvasItem *rect; -static void destroy_callback(GtkWidget *app, gpointer data) +static void destroy_callback(gpointer data, GObject *where_object_was) { exit(0); } @@ -105,9 +105,7 @@ int main( int argc, char *argv[] ) gnome_app_set_contents( GNOME_APP( app ), canvas ); /* Connect the signals */ - g_signal_connect( app, "destroy", - G_CALLBACK( destroy_callback ), - ( gpointer ) app ); + g_object_weak_ref (app, destroy_callback, app); g_signal_connect( canvas, "size_allocate", G_CALLBACK( allocate_callback ), diff --git a/addressbook/gui/widgets/test-reflow.c b/addressbook/gui/widgets/test-reflow.c index 7f4325f130..66f003fe2c 100644 --- a/addressbook/gui/widgets/test-reflow.c +++ b/addressbook/gui/widgets/test-reflow.c @@ -65,7 +65,7 @@ GnomeCanvasItem *reflow; GnomeCanvasItem *rect; GtkAllocation last_alloc; -static void destroy_callback(GtkWidget *app, gpointer data) +static void destroy_callback(gpointer data, GObject *where_object_was) { exit(0); } @@ -183,9 +183,7 @@ int main( int argc, char *argv[] ) gnome_app_set_contents( GNOME_APP( app ), scrollframe ); /* Connect the signals */ - g_signal_connect( app, "destroy", - G_CALLBACK ( destroy_callback ), - ( gpointer ) app ); + g_object_weak_ref (app, destroy_callback, app); g_signal_connect( canvas, "size_allocate", G_CALLBACK ( allocate_callback ), |