Matthew Hague [Tue, 4 Feb 2014 23:44:09 +0000 (23:44 +0000)]
Improve the Route Finder Tool
Changed route finder User Interface workings, it is now similar to the new route tool such that it shows the 'as the crow flys' direct line route,
but on creation of each new trackpoint the route from the last trackpoint is calculated using online services.
The user can switch between adding points with the new route tool or with the route finder tool, removed a lot of the vtk->route_finder fields and merged them with the new route fields instead, added code to ensure that double trackpoints get added at the joins between planned route segments.
Changed so that enforcing duplicates in viktrwlayer.c appending a track duplicates the end of the old track not the start of the new
Changed a bit of logic in route finder click to deal with a current empty route not created by the route finder
Like the current Create Track and Route tools, the Route Finder handles clicks when in pan mode and avoids extra dispay sync refreshing to avoid display flicker.
Update the UI during routing to show a busy cursor and info about the requests being made are shown in the statusbar (particularly in case the online requests are slow).
Matthew Hague [Wed, 5 Feb 2014 00:05:13 +0000 (00:05 +0000)]
Extend Routing functions for UI reuse.
Made vik_routing_default_find return whether find was successful or not, and exposed vik_routing_default_engine via vikrouting.h to allow the route planner to display the name of the engine it's using
Rob Norris [Wed, 1 Jan 2014 17:22:26 +0000 (17:22 +0000)]
Enable JPG files as a primary supported type.
The bonus of this besides being able to load via the File->Open method,
is being able to add image waypoints by drag and drop of JPG files into the viewport.
Rob Norris [Fri, 6 Dec 2013 23:56:05 +0000 (23:56 +0000)]
Enable double clicking as an optional way to control zooming in pan mode.
Double click of the left (primary) mouse will zoom in.
Double click of the right (secondary) mouse will zoom out.
Make use of a timeout function to wait and see if a double click event occurs.
If it hasn't then the timeout will action the single click request
(to recenter the display to the clicked location).
Rob Norris [Wed, 20 Nov 2013 22:02:24 +0000 (22:02 +0000)]
RedNotebook 1.7.3+ integration to open the diary program on a specific date.
It opens the diary program on the day of the selected track or waypoint.
Requires RedNotebook 1.7.3+ to support opening on the specified date.
This is only made available if an appropriate version of RedNotebook is detected.
Rob Norris [Tue, 5 Nov 2013 00:33:06 +0000 (00:33 +0000)]
Enable a history of requested positions.
Positions are stored on specific Go To requests (such entered position coordinates or to waypoint/track positions).
Currently panning and zooming do not modify the requested position.
Moving backwards and forwards through the list is supported sort of like a web browsers history of pages.
As the positions are not specifically named (just raw coordinates),
nothing advanced like showing the list of positions or jumping over multiple positions is offered.
Finer details such as the maximum size of the history list are controlled by Viking's internal preferences.
Rob Norris [Thu, 14 Nov 2013 23:19:41 +0000 (23:19 +0000)]
Support using multiple Viking files with relative paths.
Always calculate the canonical form for file references internally,
so that they are always accessible.
When saved the relative path will be calculated if necessary.
Thus on file opening there is no further need for changing the working directory.
Rob Norris [Wed, 30 Oct 2013 00:19:18 +0000 (00:19 +0000)]
Fix opening files on command line in different directories.
Restrict the changing of the working directory when handling the Viking file type,
since that is the only type (as far as I know) that supports relative file paths
(mostly for optional relative paths for Waypoint Images).
Restore the working directory to the previous value once the file has been used.
Rob Norris [Mon, 28 Oct 2013 00:05:22 +0000 (00:05 +0000)]
Basic support of some GPX Metadata values common to GPX1.0 and GPX1.1
Includes the fields: name, description, author, time, and keywords.
ATM the time is a read-only value loaded from a GPX file (no GUI way to alter it).
If there is no value or it's a new TrackWaypoint layer then the value auto generated from the earliest track or waypoint
or else from the current time.
Rob Norris [Wed, 18 Sep 2013 21:23:54 +0000 (22:23 +0100)]
Remove never used GPS layer drag drop request function.
Seemingly never used and it's not clear what it was meant to achieve.
Even if it was invoked, it would have aborted the program anyway:
as it was the only user of vik_gps_layer_delete()
which would have failed on the number of disconnect signals never equalling 1.
A good practice in translation is to avoid to concat strings but use
%s C format argument. This allow translators to decide where to put the
argument in the translated string.
Rob Norris [Fri, 27 Sep 2013 23:43:53 +0000 (00:43 +0100)]
Expand mapcache hash to include a hash of the map filename (if there is one).
This enables having multiple MBTiles (or multiple on Disk OSM Tile Format) Maps,
since they each respectively have the same Map Id number,
previously the hash key would have clashed.
Rob Norris [Thu, 26 Sep 2013 18:13:42 +0000 (19:13 +0100)]
Enable widget sensitivity in the layer properties to be controlled.
Some settings are only relevant when other settings are in the right state.
Allow control of the sensitivities to be adjusted when changes to the widget values have been made.
Changes to each widget have to be considered separately (referenced via the parameter enumeration numbers).
Also expose the label widgets so they many be controlled.
ATM control these settings:
Maps:
Auto Download -> Auto Download Only Missing
TrackWaypoints:
Waypoint Draw Labels -> Font Size, Colour, BG Colour & BG Translucency.
Waypoint Draw Image -> Image Size, Image Alpha + Cache Size.
Track Draw Mode -> All Tracks Colour
NB Since most track settings have been split across into the Advanced tab,
IMHO controlling sensitivities of widgets in another tab is not obvious,
so these relationships have not been changed.