]> err.no Git - mapper/commitdiff
Use menu entry for color settings.
authorKaj-Michael Lang <milang@tal.org>
Sun, 27 Jan 2008 10:47:36 +0000 (12:47 +0200)
committerKaj-Michael Lang <milang@tal.org>
Sun, 27 Jan 2008 10:47:36 +0000 (12:47 +0200)
src/cb.c
src/cb.h
src/settings-gui.c
src/ui-common.c

index 44c8ed7544f8acd1a909bbff6ea320746ca037f5..2252c15fd125447a8b2b0590e237a56c9e2731c6 100644 (file)
--- a/src/cb.c
+++ b/src/cb.c
@@ -498,6 +498,14 @@ map_force_redraw();
 return TRUE;
 }
 
+gboolean 
+menu_cb_settings_colors(GtkAction * action)
+{
+settings_dialog_colors();
+map_force_redraw();
+return TRUE;
+}
+
 gboolean 
 menu_cb_settings_osm(GtkAction * action)
 {
index 665d8bcd33a95ffe003ff97481efdd3566491f82..00e7d3ad042a681656b271d9fe9840a96c806f2b 100644 (file)
--- a/src/cb.h
+++ b/src/cb.h
@@ -71,6 +71,7 @@ gboolean menu_cb_gps_reset(GtkAction * action);
 gboolean menu_cb_settings(GtkAction * action);
 gboolean menu_cb_settings_gps(GtkAction * action);
 gboolean menu_cb_settings_osm(GtkAction * action);
+gboolean menu_cb_settings_colors(GtkAction * action);
 gboolean menu_cb_help(GtkAction * action);
 gboolean menu_cb_about(GtkAction * action);
 
index 5a1dee746ba7526db24e4a392ddf601c4f3a8a95..e8cca91f53b7c18645db931b2d68bfa00d4401a1 100644 (file)
@@ -38,6 +38,11 @@ struct _KeysDialogInfo {
        GtkWidget *cmb[CUSTOM_KEY_ENUM_COUNT];
 };
 
+typedef struct _ColorsDialogInfo ColorsDialogInfo;
+struct _ColorsDialogInfo {
+       GtkWidget *col[COLORABLE_ENUM_COUNT];
+};
+
 #define UPDATE_GC(gc) gdk_gc_set_line_attributes(gc, _draw_width, GDK_LINE_SOLID, GDK_CAP_ROUND, GDK_JOIN_ROUND);
 
 void 
@@ -80,7 +85,7 @@ return TRUE;
 }
 
 static gboolean
-settings_dialog_hardkeys_reset(GtkWidget * widget, KeysDialogInfo * cdi)
+settings_dialog_hardkeys_reset(GtkWidget *widget, KeysDialogInfo *cdi)
 {
 GtkWidget *confirm;
 
@@ -95,8 +100,8 @@ gtk_widget_destroy(confirm);
 return TRUE;
 }
 
-static gboolean 
-settings_dialog_hardkeys(GtkWidget * widget, GtkWidget * parent)
+gboolean 
+settings_dialog_hardkeys(void)
 {
 gint i;
 GtkWidget *dialog;
@@ -105,10 +110,7 @@ GtkWidget *label;
 KeysDialogInfo bdi;
 GtkWidget *btn_defaults;
 
-dialog = gtk_dialog_new_with_buttons(_("Hardware Keys"),
-                            GTK_WINDOW(parent),
-                            GTK_DIALOG_MODAL, GTK_STOCK_OK,
-                            GTK_RESPONSE_ACCEPT, NULL);
+dialog = gtk_dialog_new_with_buttons(_("Hardware Keys"), GTK_WINDOW(_window), GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL);
 
 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), btn_defaults = gtk_button_new_with_label(_("Reset...")));
 g_signal_connect(G_OBJECT(btn_defaults), "clicked",     G_CALLBACK(settings_dialog_hardkeys_reset), &bdi);
@@ -162,24 +164,17 @@ gtk_widget_destroy(dialog);
 return TRUE;
 }
 
-typedef struct _ColorsDialogInfo ColorsDialogInfo;
-struct _ColorsDialogInfo {
-       GtkWidget *col[COLORABLE_ENUM_COUNT];
-};
-
 static gboolean
-settings_dialog_colors_reset(GtkWidget * widget, ColorsDialogInfo * cdi)
+settings_dialog_colors_reset(GtkWidget *widget, ColorsDialogInfo *cdi)
 {
-       GtkWidget *confirm;
+GtkWidget *confirm;
 
-       confirm = hildon_note_new_confirmation(GTK_WINDOW(_window),
-                                              _("Reset all colors to their original defaults?"));
+confirm = hildon_note_new_confirmation(GTK_WINDOW(_window), _("Reset all colors to their original defaults?"));
 
-       if (GTK_RESPONSE_OK == gtk_dialog_run(GTK_DIALOG(confirm))) {
-               gint i;
-               for (i = 0; i < COLORABLE_ENUM_COUNT; i++) {
-                       gtk_color_button_set_color(GTK_COLOR_BUTTON
-                             (cdi->col[i]), &COLORABLE_DEFAULT[i]);
+if (GTK_RESPONSE_OK == gtk_dialog_run(GTK_DIALOG(confirm))) {
+       gint i;
+       for (i = 0; i < COLORABLE_ENUM_COUNT; i++) {
+               gtk_color_button_set_color(GTK_COLOR_BUTTON(cdi->col[i]), &COLORABLE_DEFAULT[i]);
        }
 }
 gtk_widget_destroy(confirm);
@@ -187,8 +182,8 @@ gtk_widget_destroy(confirm);
 return TRUE;
 }
 
-static gboolean 
-settings_dialog_colors(GtkWidget * widget, GtkWidget * parent)
+gboolean 
+settings_dialog_colors(void)
 {
 GtkWidget *dialog;
 GtkWidget *table;
@@ -196,7 +191,7 @@ GtkWidget *label;
 GtkWidget *btn_defaults;
 ColorsDialogInfo cdi;
 
-dialog = gtk_dialog_new_with_buttons(_("Colors"), GTK_WINDOW(parent), GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL);
+dialog = gtk_dialog_new_with_buttons(_("Colors"), GTK_WINDOW(_window), GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL);
 
 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), btn_defaults = gtk_button_new_with_label(_("Reset...")));
 g_signal_connect(G_OBJECT(btn_defaults), "clicked", G_CALLBACK(settings_dialog_colors_reset), &cdi);
@@ -427,23 +422,16 @@ GtkWidget *chk_always_keep_on;
 GtkWidget *cmb_units;
 GtkWidget *cmb_degformat;
 GtkWidget *btn_buttons;
-GtkWidget *btn_colors;
 GtkWidget *num_poi_zoom;
 GtkWidget *chk_speed_on;
 GtkWidget *num_speed;
 GtkWidget *cmb_info_font_size;
 guint i;
 
-dialog = gtk_dialog_new_with_buttons(_("Settings"), GTK_WINDOW(_window), GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL);
+dialog = gtk_dialog_new_with_buttons(_("Settings"), GTK_WINDOW(_window), GTK_DIALOG_MODAL, 
+       GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT, NULL);
 help_dialog_help_enable(GTK_DIALOG(dialog), HELP_ID_SETTINGS);
 
-#ifdef WITH_DEVICE_770
-gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), btn_buttons = gtk_button_new_with_label(_("Hardware Keys...")));
-g_signal_connect(G_OBJECT(btn_buttons), "clicked", G_CALLBACK(settings_dialog_hardkeys), dialog);
-#endif
-
-gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), btn_colors = gtk_button_new_with_label(_("Colors...")));
-gtk_dialog_add_button(GTK_DIALOG(dialog), GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT);
 gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox), notebook = gtk_notebook_new(), TRUE, TRUE, 0);
 
 /* Auto-Center page. */
@@ -539,8 +527,6 @@ gtk_misc_set_alignment(GTK_MISC(label), 1.f, 0.5f);
 gtk_table_attach(GTK_TABLE(table), label = gtk_alignment_new(0.f, 0.5f, 0.f, 0.f), 1, 2, 2, 3, GTK_EXPAND | GTK_FILL, 0, 2, 4);
 gtk_container_add(GTK_CONTAINER(label), num_poi_zoom = hildon_number_editor_new(0, MAX_ZOOM));
 
-g_signal_connect(G_OBJECT(btn_colors), "clicked", G_CALLBACK(settings_dialog_colors), dialog);
-
 /* Initialize fields. */
 hildon_number_editor_set_value(HILDON_NUMBER_EDITOR(num_poi_zoom), _poi_zoom);
 hildon_controlbar_set_value(HILDON_CONTROLBAR(num_center_ratio), _center_ratio);
index 221bf6ad051a84d92bd488af3f670509b5b2afd1..9d14e13b19f4c9f6e287f5e51f61c67b07e64663 100644 (file)
@@ -73,8 +73,13 @@ static const gchar *mapper_ui =
 "  <menubar name='MenuBar'>"
 "    <menu action='file'>"
 "      <menu action='file_settings'>"
-"       <menuitem action='file_settings_generic'/>"
 "       <menuitem action='file_settings_gps'/>"
+"       <menuitem action='file_settings_generic'/>"
+"       <menuitem action='file_settings_colors'/>"
+#ifdef WITH_DEVICE_770
+"       <menuitem action='file_settings_keys'/>"
+#endif
+"       <separator/>"
 "       <menuitem action='file_settings_osm'/>"
 "         </menu>"
 "      <separator/>"
@@ -192,6 +197,7 @@ static GtkActionEntry ui_entries[] = {
        {"file", NULL, N_("_File"), NULL, NULL, NULL },
        {"file_settings", GTK_STOCK_PREFERENCES, N_("_Settings..."), NULL, NULL, NULL },
        {"file_settings_generic", NULL, N_("Generic..."), NULL, NULL, G_CALLBACK(menu_cb_settings) },
+       {"file_settings_colors", NULL, N_("_Colors..."), NULL, NULL, G_CALLBACK(menu_cb_settings_colors) },
        {"file_settings_gps", NULL, N_("_Gps..."), NULL, NULL, G_CALLBACK(menu_cb_settings_gps) },
        {"file_settings_osm", NULL, N_("_Map info..."), NULL, NULL, G_CALLBACK(menu_cb_settings_osm) },
        {"file_quit", GTK_STOCK_QUIT, N_("_Quit"), "<control>Q", NULL, G_CALLBACK(gtk_main_quit) },