109 |
project_wizard(appdata); |
project_wizard(appdata); |
110 |
} |
} |
111 |
|
|
112 |
|
typedef struct { |
113 |
|
appdata_t *appdata; |
114 |
|
GtkWidget *dialog; |
115 |
|
} about_context_t; |
116 |
|
|
117 |
|
#ifdef ENABLE_BROWSER_INTERFACE |
118 |
|
#ifndef USE_HILDON |
119 |
|
#include <libgnome/gnome-url.h> |
120 |
|
#else |
121 |
|
#include <tablet-browser-interface.h> |
122 |
|
#endif |
123 |
|
|
124 |
|
void on_paypal_button_clicked(GtkButton *button, about_context_t *context) { |
125 |
|
const char *url = |
126 |
|
"https://www.paypal.com/cgi-bin/webscr" |
127 |
|
"?cmd=_s-xclick&hosted_button_id=7439286"; |
128 |
|
|
129 |
|
#ifndef USE_HILDON |
130 |
|
/* taken from gnome-open, part of libgnome */ |
131 |
|
GError *err = NULL; |
132 |
|
gnome_url_show(url, &err); |
133 |
|
#else |
134 |
|
/* close the dialog on hildon as it doesn't like open dialogs */ |
135 |
|
gtk_dialog_response(GTK_DIALOG(context->dialog), GTK_RESPONSE_ACCEPT); |
136 |
|
|
137 |
|
osso_rpc_run_with_defaults(context->appdata->osso_context, "osso_browser", |
138 |
|
OSSO_BROWSER_OPEN_NEW_WINDOW_REQ, NULL, |
139 |
|
DBUS_TYPE_STRING, url, |
140 |
|
DBUS_TYPE_BOOLEAN, FALSE, DBUS_TYPE_INVALID); |
141 |
|
#endif |
142 |
|
} |
143 |
|
#endif |
144 |
|
|
145 |
static void |
static void |
146 |
cb_menu_about(GtkMenuItem *item, gpointer data) { |
cb_menu_about(GtkMenuItem *item, gpointer data) { |
147 |
appdata_t *appdata = (appdata_t*)data; |
about_context_t context; |
148 |
|
context.appdata = (appdata_t *)data; |
149 |
|
|
150 |
const gchar *authors[] = { |
const gchar *authors[] = { |
151 |
"Till Harbaum <till@harbaum.org>", |
"Till Harbaum <till@harbaum.org>", |
158 |
"Andrew Zhilin <drew.zhilin@gmail.com>", |
"Andrew Zhilin <drew.zhilin@gmail.com>", |
159 |
NULL }; |
NULL }; |
160 |
|
|
161 |
gtk_show_about_dialog(GTK_WINDOW(appdata->window), |
context.dialog = g_object_new(GTK_TYPE_ABOUT_DIALOG, |
162 |
"name", "OSM2Go", |
"name", "OSM2Go", |
163 |
"version", VERSION, |
"version", VERSION, |
164 |
"copyright", _("Copyright 2008-2009"), |
"copyright", _("Copyright 2008-2009"), |
167 |
"website", _("http://www.harbaum.org/till/maemo"), |
"website", _("http://www.harbaum.org/till/maemo"), |
168 |
"comments", _("Mobile OSM Editor"), |
"comments", _("Mobile OSM Editor"), |
169 |
NULL); |
NULL); |
170 |
|
|
171 |
|
#ifdef ENABLE_BROWSER_INTERFACE |
172 |
|
/* add a way to donate to the project */ |
173 |
|
GtkWidget *alignment = gtk_alignment_new(0.5, 0, 0, 0); |
174 |
|
|
175 |
|
GtkWidget *hbox = gtk_hbox_new(FALSE, 8); |
176 |
|
gtk_box_pack_start(GTK_BOX(hbox), |
177 |
|
gtk_label_new(_("Do you ĺike OSM2Go?")), |
178 |
|
FALSE, FALSE, 0); |
179 |
|
|
180 |
|
GtkWidget *button = gtk_button_new(); |
181 |
|
gtk_button_set_image(GTK_BUTTON(button), |
182 |
|
icon_widget_load(&context.appdata->icon, "paypal")); |
183 |
|
gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE); |
184 |
|
g_signal_connect(button, "clicked", |
185 |
|
G_CALLBACK(on_paypal_button_clicked), &context); |
186 |
|
gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0); |
187 |
|
|
188 |
|
gtk_container_add(GTK_CONTAINER(alignment), hbox); |
189 |
|
gtk_box_pack_start_defaults(GTK_BOX((GTK_DIALOG(context.dialog))->vbox), |
190 |
|
alignment); |
191 |
|
|
192 |
|
gtk_widget_show_all(alignment); |
193 |
|
#endif |
194 |
|
|
195 |
|
gtk_dialog_run(GTK_DIALOG(context.dialog)); |
196 |
|
gtk_widget_destroy(context.dialog); |
197 |
} |
} |
198 |
|
|
199 |
void on_window_destroy (GtkWidget *widget, gpointer data); |
void on_window_destroy (GtkWidget *widget, gpointer data); |