X-Git-Url: https://git.street.me.uk/andy/viking.git/blobdiff_plain/86642fdf8b75a2eb10b1d75cfda7be30ea8eb84a..b9a07ebc208b54c1abdb2f8e4f7332759fe351e3:/src/viklayerspanel.c diff --git a/src/viklayerspanel.c b/src/viklayerspanel.c index 96b0cbf7..cc4f6a99 100644 --- a/src/viklayerspanel.c +++ b/src/viklayerspanel.c @@ -24,6 +24,7 @@ #endif #include "viking.h" +#include "settings.h" #include @@ -180,7 +181,7 @@ static void vik_layers_panel_init ( VikLayersPanel *vlp ) vik_layer_rename ( VIK_LAYER(vlp->toplayer), _("Top Layer")); g_signal_connect_swapped ( G_OBJECT(vlp->toplayer), "update", G_CALLBACK(vik_layers_panel_emit_update), vlp ); - vik_treeview_add_layer ( vlp->vt, NULL, &(vlp->toplayer_iter), VIK_LAYER(vlp->toplayer)->name, NULL, TRUE, vlp->toplayer, VIK_LAYER_AGGREGATE, VIK_LAYER_AGGREGATE ); + vik_treeview_add_layer ( vlp->vt, NULL, &(vlp->toplayer_iter), VIK_LAYER(vlp->toplayer)->name, NULL, TRUE, vlp->toplayer, VIK_LAYER_AGGREGATE, VIK_LAYER_AGGREGATE, 0 ); vik_layer_realize ( VIK_LAYER(vlp->toplayer), vlp->vt, &(vlp->toplayer_iter) ); g_signal_connect_swapped ( vlp->vt, "popup_menu", G_CALLBACK(menu_popup_cb), vlp); @@ -442,6 +443,7 @@ static void layers_popup_cb ( VikLayersPanel *vlp ) layers_popup ( vlp, NULL, 0 ); } +#define VIK_SETTINGS_LAYERS_TRW_CREATE_DEFAULT "layers_create_trw_auto_default" /** * vik_layers_panel_new_layer: * @type: type of the new layer @@ -452,7 +454,11 @@ gboolean vik_layers_panel_new_layer ( VikLayersPanel *vlp, VikLayerTypeEnum type { VikLayer *l; g_assert ( vlp->vvp ); - l = vik_layer_create ( type, vlp->vvp, TRUE ); + gboolean ask_user = FALSE; + if ( type == VIK_LAYER_TRW ) + a_settings_get_boolean ( VIK_SETTINGS_LAYERS_TRW_CREATE_DEFAULT, &ask_user ); + ask_user = !ask_user; + l = vik_layer_create ( type, vlp->vvp, ask_user ); if ( l ) { vik_layers_panel_add_layer ( vlp, l );