]> git.street.me.uk Git - andy/viking.git/commitdiff
Consistent use of unique_sublayer_name function when creating new tracks via all...
authorRob Norris <rw_norris@hotmail.com>
Wed, 22 Aug 2012 23:45:03 +0000 (00:45 +0100)
committerRob Norris <rw_norris@hotmail.com>
Sat, 25 Aug 2012 09:58:07 +0000 (10:58 +0100)
src/viktrwlayer.c
src/viktrwlayer_propwin.c

index 36196e5c0afafe140b425defa938a60a351ad399..9bed24ba3bdb414936a4f1fecb693cd16f0e26dc 100644 (file)
@@ -3931,12 +3931,12 @@ static void trw_layer_split_at_selected_trackpoint ( VikTrwLayer *vtl )
 /* split by time routine */
 static void trw_layer_split_by_timestamp ( gpointer pass_along[6] )
 {
-  VikTrack *track = (VikTrack *) g_hash_table_lookup ( VIK_TRW_LAYER(pass_along[0])->tracks, pass_along[3] );
+  VikTrwLayer *vtl = (VikTrwLayer *)pass_along[0];
+  VikTrack *track = (VikTrack *) g_hash_table_lookup ( vtl->tracks, pass_along[3] );
   GList *trps = track->trackpoints;
   GList *iter;
   GList *newlists = NULL;
   GList *newtps = NULL;
-  guint i;
   static guint thr = 1;
 
   time_t ts, prev_ts;
@@ -3978,7 +3978,6 @@ static void trw_layer_split_by_timestamp ( gpointer pass_along[6] )
 
   /* put lists of trackpoints into tracks */
   iter = newlists;
-  i = 1;
   // Only bother updating if the split results in new tracks
   if (g_list_length (newlists) > 1) {
     while (iter) {
@@ -3989,15 +3988,15 @@ static void trw_layer_split_by_timestamp ( gpointer pass_along[6] )
       tr->visible = track->visible;
       tr->trackpoints = (GList *)(iter->data);
 
-      new_tr_name = g_strdup_printf ("%s #%d", track->name, i++);
-      vik_trw_layer_add_track(VIK_TRW_LAYER(pass_along[0]), new_tr_name, tr);
+      new_tr_name = trw_layer_new_unique_sublayer_name ( vtl, VIK_TRW_LAYER_SUBLAYER_TRACK, track->name);
+      vik_trw_layer_add_track(vtl, new_tr_name, tr);
       /*    g_print("adding track %s, times %d - %d\n", new_tr_name, VIK_TRACKPOINT(tr->trackpoints->data)->timestamp,
          VIK_TRACKPOINT(g_list_last(tr->trackpoints)->data)->timestamp);*/
 
       iter = g_list_next(iter);
     }
     // Remove original track and then update the display
-    vik_trw_layer_delete_track (VIK_TRW_LAYER(pass_along[0]), track);
+    vik_trw_layer_delete_track (vtl, track);
     vik_layer_emit_update(VIK_LAYER(pass_along[0]), FALSE);
   }
   g_list_free(newlists);
@@ -4055,7 +4054,6 @@ static void trw_layer_split_by_n_points ( gpointer pass_along[6] )
 
   /* put lists of trackpoints into tracks */
   iter = newlists;
-  guint i = 1;
   // Only bother updating if the split results in new tracks
   if (g_list_length (newlists) > 1) {
     while (iter) {
@@ -4066,13 +4064,13 @@ static void trw_layer_split_by_n_points ( gpointer pass_along[6] )
       tr->visible = track->visible;
       tr->trackpoints = (GList *)(iter->data);
 
-      new_tr_name = g_strdup_printf ("%s #%d", track->name, i++);
-      vik_trw_layer_add_track(VIK_TRW_LAYER(pass_along[0]), new_tr_name, tr);
+      new_tr_name = trw_layer_new_unique_sublayer_name ( vtl, VIK_TRW_LAYER_SUBLAYER_TRACK, track->name);
+      vik_trw_layer_add_track(vtl, new_tr_name, tr);
 
       iter = g_list_next(iter);
     }
     // Remove original track and then update the display
-    vik_trw_layer_delete_track (VIK_TRW_LAYER(pass_along[0]), track);
+    vik_trw_layer_delete_track (vtl, track);
     vik_layer_emit_update(VIK_LAYER(pass_along[0]), FALSE);
   }
   g_list_free(newlists);
index e14d912663de6c86c57973368a31dcbf0e334c17..79b47ee29000bd7c7ec55796948bb90d436c88ec 100644 (file)
@@ -2713,7 +2713,7 @@ static void propwin_response_cb( GtkDialog *dialog, gint resp, PropWidgets *widg
         for ( i = 0; i < ntracks; i++ )
         {
           if ( tracks[i] ) {
-           new_tr_name = g_strdup_printf("%s #%d", widgets->tr->name, i+1);
+           new_tr_name = trw_layer_new_unique_sublayer_name ( vtl, VIK_TRW_LAYER_SUBLAYER_TRACK, widgets->tr->name);
            vik_trw_layer_add_track ( vtl, new_tr_name, tracks[i] );
          }
         }
@@ -2741,7 +2741,7 @@ static void propwin_response_cb( GtkDialog *dialog, gint resp, PropWidgets *widg
           break;
         }
 
-        gchar *r_name = g_strdup_printf("%s #2", widgets->tr->name);
+        gchar *r_name = trw_layer_new_unique_sublayer_name(vtl, VIK_TRW_LAYER_SUBLAYER_TRACK, widgets->tr->name);
         iter->prev->next = NULL;
         iter->prev = NULL;
         VikTrack *tr_right = vik_track_new();