static void details_cb (GtkAction *action, GWeatherApplet *gw_applet) { if (gw_applet->details_dialog) { gtk_window_present (GTK_WINDOW (gw_applet->details_dialog)); } else { gw_applet->details_dialog = gweather_dialog_new(gw_applet); g_object_add_weak_pointer(G_OBJECT(gw_applet->details_dialog), (gpointer *)&(gw_applet->details_dialog)); gweather_dialog_update (GWEATHER_DIALOG (gw_applet->details_dialog)); gtk_widget_show (gw_applet->details_dialog); } }
static void details_cb (GSimpleAction *action, GVariant *parameter, gpointer user_data) { GWeatherApplet *gw_applet = (GWeatherApplet *) user_data; if (gw_applet->details_dialog) { gtk_window_present (GTK_WINDOW (gw_applet->details_dialog)); } else { gw_applet->details_dialog = gweather_dialog_new(gw_applet); g_object_add_weak_pointer(G_OBJECT(gw_applet->details_dialog), (gpointer *)&(gw_applet->details_dialog)); gweather_dialog_update (GWEATHER_DIALOG (gw_applet->details_dialog)); gtk_widget_show (gw_applet->details_dialog); } }