From caf76edae99174b243cd3988789420b713028f6d Mon Sep 17 00:00:00 2001 From: Kaj-Michael Lang Date: Sun, 27 Jan 2008 12:47:36 +0200 Subject: [PATCH] Use menu entry for color settings. --- src/cb.c | 8 +++++++ src/cb.h | 1 + src/settings-gui.c | 56 +++++++++++++++++----------------------------- src/ui-common.c | 8 ++++++- 4 files changed, 37 insertions(+), 36 deletions(-) diff --git a/src/cb.c b/src/cb.c index 44c8ed7..2252c15 100644 --- 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) { diff --git a/src/cb.h b/src/cb.h index 665d8bc..00e7d3a 100644 --- 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); diff --git a/src/settings-gui.c b/src/settings-gui.c index 5a1dee7..e8cca91 100644 --- a/src/settings-gui.c +++ b/src/settings-gui.c @@ -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); diff --git a/src/ui-common.c b/src/ui-common.c index 221bf6a..9d14e13 100644 --- a/src/ui-common.c +++ b/src/ui-common.c @@ -73,8 +73,13 @@ static const gchar *mapper_ui = " " " " " " -" " " " +" " +" " +#ifdef WITH_DEVICE_770 +" " +#endif +" " " " " " " " @@ -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"), "Q", NULL, G_CALLBACK(gtk_main_quit) }, -- 2.39.2