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) { |