X-Git-Url: https://git.street.me.uk/andy/viking.git/blobdiff_plain/181f5d0c7edbda676be7768a75dddde1909008da..80471a6a905e00bf80ad04fa2061f88ea81f15cb:/src/viklayerspanel.c?ds=inline diff --git a/src/viklayerspanel.c b/src/viklayerspanel.c index 8257f770..50358913 100644 --- a/src/viklayerspanel.c +++ b/src/viklayerspanel.c @@ -63,7 +63,7 @@ static GtkItemFactoryEntry base_entries[] = { { N_("/New Layer"), NULL, NULL, -1, "" }, }; -#define NUM_BASE_ENTRIES 5 +#define NUM_BASE_ENTRIES (sizeof(base_entries)/sizeof(base_entries[0])) static void layers_item_toggled (VikLayersPanel *vlp, GtkTreeIter *iter); static void layers_item_edited (VikLayersPanel *vlp, GtkTreeIter *iter, const gchar *new_text); @@ -485,7 +485,9 @@ gboolean vik_layers_panel_properties ( VikLayersPanel *vlp ) { if ( vik_treeview_item_get_data ( vlp->vt, &iter ) == VIK_LAYER_AGGREGATE ) a_dialog_info_msg ( VIK_GTK_WINDOW_FROM_WIDGET(vlp), _("Aggregate Layers have no settable properties.") ); - vik_layer_properties ( VIK_LAYER( vik_treeview_item_get_pointer ( vlp->vt, &iter ) ), vlp->vvp ); + VikLayer *layer = VIK_LAYER( vik_treeview_item_get_pointer ( vlp->vt, &iter ) ); + if (vik_layer_properties ( layer, vlp->vvp )) + vik_layer_emit_update ( layer ); return TRUE; } else @@ -509,7 +511,10 @@ void vik_layers_panel_cut_selected ( VikLayersPanel *vlp ) gint type; GtkTreeIter iter; - g_return_if_fail ( vik_treeview_get_selected_iter ( vlp->vt, &iter ) ); + g_debug(__FUNCTION__); + if ( ! vik_treeview_get_selected_iter ( vlp->vt, &iter ) ) + /* Nothing to do */ + return; type = vik_treeview_item_get_type ( vlp->vt, &iter ); @@ -538,7 +543,9 @@ void vik_layers_panel_copy_selected ( VikLayersPanel *vlp ) gint type; GtkTreeIter iter; - g_return_if_fail ( vik_treeview_get_selected_iter ( vlp->vt, &iter ) ); + if ( ! vik_treeview_get_selected_iter ( vlp->vt, &iter ) ) + /* Nothing to do */ + return; type = vik_treeview_item_get_type ( vlp->vt, &iter ); @@ -550,7 +557,9 @@ void vik_layers_panel_copy_selected ( VikLayersPanel *vlp ) void vik_layers_panel_paste_selected ( VikLayersPanel *vlp ) { GtkTreeIter iter; - g_return_if_fail ( vik_treeview_get_selected_iter ( vlp->vt, &iter ) ); + if ( ! vik_treeview_get_selected_iter ( vlp->vt, &iter ) ) + /* Nothing to do */ + return; a_clipboard_paste ( vlp ); } @@ -559,7 +568,9 @@ void vik_layers_panel_delete_selected ( VikLayersPanel *vlp ) gint type; GtkTreeIter iter; - g_return_if_fail ( vik_treeview_get_selected_iter ( vlp->vt, &iter ) ); + if ( ! vik_treeview_get_selected_iter ( vlp->vt, &iter ) ) + /* Nothing to do */ + return; type = vik_treeview_item_get_type ( vlp->vt, &iter );