I create and edit routes a lot for my outdoor activities. One frequent operation is to add more detail to a leg by cutting it into multiple legs and moving the points around. In Viking, this is done by selecting a point and adding one before or after. I find it much more convenient the approach used in googlemaps and openstreetmap javascript editors, i.e. they have a handle in the middle of every leg, that you can grab and drag with the mouse. Then it becomes a new trackpoint. It would be great if Viking had the same feature to edit routes/tracks.
Thanks.
I agree!
However, Viking's internals doesn't easily support such feature.
This won't be done until at least the 1.7 release as the 1.6 release is imminent.
I have an idea in mind that might be implementable with the current code base - this might be only enabled for routes, since that is the normal use case - without too much time/effort... (these notes are more for myself):
When (code) drawing a route (i.e. not for tracks) at the half way point - draw an unfilled box to suggest the phantom point.
Decide if Phantom points should work with the select tool and/or edit trackpoint tool - probably should do both.
On loading/creating/deleting a route and create equivalent phantom route point list. (see how routes & routes_iter are managed for a new routes_phantom hash of such items)
Instead of adding IsPhantom into viktrackpoint (which could waste memory xN trackpoints for the whole program) - save the IsPhantomPoint statically per vikwindow - and pass this value around - this may have knock on issues with existing function definitions/need to handle 'userdata' pointers differently. Could be some detail here that takes effort.
I agree also, would love to have this! Would really speed up the editing of routes.
Instead of doing it with phantom points what about this idea:
When using the select tool, Ctrl + Click on Track Point will result in it inserting a new trackpoint after it, and focusing and dragging it instead of the original clicked one.