Diff of /trunk/src/main.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 314 by harbaum, Sun Oct 18 18:51:29 2009 UTC revision 315 by harbaum, Wed Dec 16 20:07:58 2009 UTC
# Line 116  cb_menu_project_wizard(GtkMenuItem *item Line 116  cb_menu_project_wizard(GtkMenuItem *item
116    project_wizard(appdata);    project_wizard(appdata);
117  }  }
118    
119  typedef struct {  void on_window_destroy (GtkWidget *widget, gpointer data);
   appdata_t *appdata;  
   GtkWidget *dialog;  
 } about_context_t;  
   
 #ifdef ENABLE_BROWSER_INTERFACE  
 #ifndef USE_HILDON  
 #include <libgnome/gnome-url.h>  
 #else  
 #include <tablet-browser-interface.h>  
 #endif  
   
 void on_paypal_button_clicked(GtkButton *button, about_context_t *context) {  
   const char *url =  
     "https://www.paypal.com/cgi-bin/webscr"  
     "?cmd=_s-xclick&hosted_button_id=7439286";  
   
 #ifndef USE_HILDON  
   /* taken from gnome-open, part of libgnome */  
   GError *err = NULL;  
   gnome_url_show(url, &err);  
 #else  
   /* close the dialog on hildon as it doesn't like open dialogs */  
   gtk_dialog_response(GTK_DIALOG(context->dialog), GTK_RESPONSE_ACCEPT);  
   
   osso_rpc_run_with_defaults(context->appdata->osso_context, "osso_browser",  
                              OSSO_BROWSER_OPEN_NEW_WINDOW_REQ, NULL,  
                              DBUS_TYPE_STRING, url,  
                              DBUS_TYPE_BOOLEAN, FALSE, DBUS_TYPE_INVALID);  
 #endif  
 }  
 #endif  
120    
121  static void  static void
122  cb_menu_about(GtkMenuItem *item, gpointer data) {  cb_menu_about(GtkMenuItem *item, gpointer data) {
123    about_context_t context;    appdata_t *appdata = (appdata_t*)data;
124    context.appdata = (appdata_t *)data;    about_box(appdata);
   
   const gchar *authors[] = {  
     "Till Harbaum <till@harbaum.org>",  
     "Andrew Chadwick <andrewc-osm2go@piffle.org>",  
     "\nOriginal OSM-GPS-MAP widget by:",  
     "Marcus Bauer <marcus.bauer@gmail.com>",  
     "John Stowers <john.stowers@gmail.com>",  
     "\nVarious patches by:",  
     "Rolf Bode-Meyer <robome@gmail.com>",  
     NULL };  
   
   const gchar *artists[] = {  
     "Andrew Zhilin <drew.zhilin@gmail.com>",  
     NULL };  
   
   context.dialog = g_object_new(GTK_TYPE_ABOUT_DIALOG,  
                         "name", "OSM2Go",  
                         "version", VERSION,  
                         "copyright", _("Copyright 2008-2009"),  
                         "authors", authors,  
                         "artists", artists,  
                         "website", _("http://www.harbaum.org/till/maemo"),  
                         "comments", _("Mobile OpenStreetMap Editor"),  
                         NULL);  
   
 #ifdef ENABLE_BROWSER_INTERFACE  
   /* add a way to donate to the project */  
   GtkWidget *alignment = gtk_alignment_new(0.5, 0, 0, 0);  
   
   GtkWidget *hbox = gtk_hbox_new(FALSE, 8);  
   gtk_box_pack_start(GTK_BOX(hbox),  
                      gtk_label_new(_("Do you ĺike OSM2Go?")),  
                      FALSE, FALSE, 0);  
   
   GtkWidget *button = gtk_button_new();  
   gtk_button_set_image(GTK_BUTTON(button),  
                        icon_widget_load(&context.appdata->icon, "paypal"));  
   gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);  
   g_signal_connect(button, "clicked",  
                    G_CALLBACK(on_paypal_button_clicked), &context);  
   gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);  
   
   gtk_container_add(GTK_CONTAINER(alignment), hbox);  
   gtk_box_pack_start_defaults(GTK_BOX((GTK_DIALOG(context.dialog))->vbox),  
                               alignment);  
   
   gtk_widget_show_all(alignment);  
 #endif  
   
   gtk_dialog_run(GTK_DIALOG(context.dialog));  
   gtk_widget_destroy(context.dialog);  
125  }  }
126    
 void on_window_destroy (GtkWidget *widget, gpointer data);  
   
127  #ifndef USE_HILDON  #ifndef USE_HILDON
128  static void  static void
129  cb_menu_quit(GtkMenuItem *item, gpointer data) {  cb_menu_quit(GtkMenuItem *item, gpointer data) {

Legend:
Removed from v.314  
changed lines
  Added in v.315