]>
git.street.me.uk Git - andy/viking.git/log
Rob Norris [Sun, 14 Dec 2014 11:12:38 +0000 (11:12 +0000)]
A Mapnik Rendering layer
This uses the Mapnik C++ library to render images given an XML configuration file
(which describes the datasources and how to render them).
The interfacing code is in C++, hence the need for a C++ compiler.
This has been primarily tested with Mapnik 2.2.0 but should work with other versions.
Images are generated at 256x256 pixels in an OSM Tileset manner and are stored directly in the memory map cache.
More complex configurations/datasources (e.g. the main OSM.org Mapnik Stylesheet)
can make the rendering relatively slow - sometimes several seconds per tile.
For the first iteration this all happens in the main program thread,
but will be addressed in subsequent commits.
All this can be disabled at the configure stage with '--disable-mapnik'
Rob Norris [Thu, 1 Jan 2015 11:50:31 +0000 (11:50 +0000)]
Split background threads into two pools.
One pool is for remote (i.e. downloading) requests.
One pool is for local CPU tasks.
Thus for best performance the number of CPU bound tasks should not be more than the number of CPUs available.
Whereas for network requests, the number of active tasks can be higher.
Rob Norris [Tue, 2 Dec 2014 20:36:29 +0000 (20:36 +0000)]
Simple function to add a file into the GTK+ Recent list.
Rob Norris [Wed, 3 Dec 2014 01:48:37 +0000 (01:48 +0000)]
Add Inverse TMS to Spherical Mercator VikCoord conversion (top left corner)
Rob Norris [Wed, 3 Dec 2014 01:44:07 +0000 (01:44 +0000)]
Shift Inverse TMS MapCoord <=> Spherical Mercator VikCoord functions for global access.
Rob Norris [Sun, 30 Nov 2014 11:40:35 +0000 (11:40 +0000)]
Add ability to remove the map cache for a single map type.
Adjust internal map cache hash key structure order.
Hence map type is the first part to make easy identification of related keys.
Presently not a normal user feature so only available in the GUI in debug mode.
Rob Norris [Wed, 3 Dec 2014 00:32:28 +0000 (00:32 +0000)]
Add function to get number of processors.
Would be simple if only GLib 2.36+, but need to support older versions.
Particularly for Windows builds which ATM uses GLib 2.28
Rob Norris [Sun, 30 Nov 2014 11:41:24 +0000 (11:41 +0000)]
Add XML as file entry filter option.
Rob Norris [Tue, 27 Jan 2015 23:20:05 +0000 (23:20 +0000)]
[DOC] Add command line synopsis from the man page into the help.
Rob Norris [Tue, 27 Jan 2015 21:12:10 +0000 (21:12 +0000)]
Allow starting Viking with command line parameters to set position, zoom and map type.
--latitude <degrees>
--longitude <degrees>
--zoom <ZoomLevelOSM>
--map <MapID>
e.g.:
viking --latitude 51.4 --longitude -1.3 --zoom 12 --map 13
Rob Norris [Tue, 27 Jan 2015 21:04:28 +0000 (21:04 +0000)]
Add functions to allow getting the default and setting the map layer type.
Rob Norris [Tue, 27 Jan 2015 20:57:50 +0000 (20:57 +0000)]
[QA] Fix vik_maps_layer_get_map_type() and improve return type.
Rob Norris [Tue, 27 Jan 2015 20:52:49 +0000 (20:52 +0000)]
[QA] Use map ids.
Rob Norris [Thu, 22 Jan 2015 21:50:39 +0000 (21:50 +0000)]
Rework Map Tile information output to use new multi line dialog.
Rob Norris [Thu, 22 Jan 2015 21:43:17 +0000 (21:43 +0000)]
Add a dialog to display several separate lines of text.
Rob Norris [Sat, 17 Jan 2015 17:34:39 +0000 (17:34 +0000)]
Fix drawing of copied MBTiles map layers.
Rob Norris [Sat, 17 Jan 2015 17:33:24 +0000 (17:33 +0000)]
[QA] Write boolean check in a more standard manner.
Rob Norris [Sat, 17 Jan 2015 17:30:23 +0000 (17:30 +0000)]
[QA] Fix spelling mistakes and note that the INSTALL file is for Unix like systems.
Rob Norris [Fri, 9 Jan 2015 22:51:40 +0000 (22:51 +0000)]
Allow various variable text output to be selectable so the user can copy the information.
Rob Norris [Fri, 9 Jan 2015 22:51:06 +0000 (22:51 +0000)]
Add a function to enable creating a selectable label.
Rob Norris [Tue, 23 Dec 2014 12:18:16 +0000 (12:18 +0000)]
[QA] Fix incorrect comment.
Rob Norris [Tue, 23 Dec 2014 12:17:49 +0000 (12:17 +0000)]
Enable opening an external Astronomy program at the specific date & time of a trackpoint or waypoint.
Primary aimed at invoking Stellarium.
Rob Norris [Tue, 16 Dec 2014 20:06:43 +0000 (20:06 +0000)]
Slightly more configurable support for RedNotebook.
Enable specifying any actual program.
Add a default for Windows Systems.
Rob Norris [Mon, 15 Dec 2014 19:23:15 +0000 (19:23 +0000)]
Add 'Education' back into the Desktop Specification.
Particularly for the XFCE Desktop, otherwise Viking ends up in the catch all category of 'Other'.
Rob Norris [Sun, 14 Dec 2014 10:51:26 +0000 (10:51 +0000)]
Release some resources on program exit.
Rob Norris [Mon, 15 Dec 2014 23:49:23 +0000 (23:49 +0000)]
Correct Bing Aerial map name and allow for i18n.
Rob Norris [Mon, 15 Dec 2014 23:45:50 +0000 (23:45 +0000)]
Shift Map Ids into a central location for ease of knowing what is in use.
Rob Norris [Sun, 14 Dec 2014 11:02:05 +0000 (11:02 +0000)]
Show maps layer tile grid lines in extreme debug mode
Rob Norris [Sun, 14 Dec 2014 10:49:10 +0000 (10:49 +0000)]
Shift GTK+ compatibility definitions into vik_compat.h
Rob Norris [Sun, 14 Dec 2014 10:49:50 +0000 (10:49 +0000)]
Extend zoom menus to cater for the highest zoom levels.
Rob Norris [Sun, 14 Dec 2014 10:48:00 +0000 (10:48 +0000)]
Prevent compiler warnings with GLIB version 2.32 or later.
Create new file to contain compatibility functions.
Just GLIB to begin with for GMutex functions.
Rob Norris [Sat, 13 Dec 2014 13:10:51 +0000 (13:10 +0000)]
SF Features#129: Advanced Maps Layer drawing configuration.
Add options to control extent of alternative zoom level tiles
and whether to try smaller or larger zooms first.
These settings are used in the ~/.viking/viking.ini file.
. 'maps_scale_inc_up' - default = 2
. 'maps_scale_inc_down' - default = 4
. 'maps_scale_smaller_zoom_first' - default = true
Rob Norris [Sat, 13 Dec 2014 12:57:09 +0000 (12:57 +0000)]
Fix potential crashes from long running threads in a removed window.
Rob Norris [Thu, 11 Dec 2014 21:22:34 +0000 (21:22 +0000)]
Remove configure check for strdup() as it is not used.
Rob Norris [Sun, 7 Dec 2014 16:21:11 +0000 (16:21 +0000)]
SF Bugs#116: Fix erroneous usage of abs(). Use fabs() instead.
Rob Norris [Sun, 7 Dec 2014 16:18:56 +0000 (16:18 +0000)]
Fix stdout/stderr variable usage.
Rob Norris [Tue, 2 Dec 2014 20:49:36 +0000 (20:49 +0000)]
Improve potential statusbar message of a selected trackpoint.
Actually supply the previous trackpoint so some interpolated values (such as speed) can be calculated.
Rob Norris [Tue, 2 Dec 2014 20:44:06 +0000 (20:44 +0000)]
Fix display of calculated speed for the statusbar message.
Rob Norris [Tue, 2 Dec 2014 20:39:54 +0000 (20:39 +0000)]
Remove not very helpful debug message since it can generate large volumes of messages.
Rob Norris [Mon, 1 Dec 2014 20:58:44 +0000 (20:58 +0000)]
Support showing a climb (vertical speed) value in the statusbar.
Requires adding 'B' to a format message code.
Presently choose not to store a vertical speed in trackpoints,
as the climb value is only from GPSD.
On tracks the value is calculated from the altitude and time difference.
Rob Norris [Sun, 30 Nov 2014 11:10:29 +0000 (11:10 +0000)]
[QA] Minor function rename for consistency
Rob Norris [Wed, 26 Nov 2014 21:12:14 +0000 (21:12 +0000)]
Shift build configurable bits into modules.c
Rob Norris [Tue, 18 Nov 2014 00:16:47 +0000 (00:16 +0000)]
[WINDOWS] Tidy up Windows build
Rob Norris [Mon, 17 Nov 2014 22:46:41 +0000 (22:46 +0000)]
SF Bugs#112: Enable using libgexiv2 for writing geotag image data to void XMP data loss.
Use libgexiv2 which is the C interface to Exiv2 C++ library.
Requires installation of the package named libgexiv2-dev or similar.
If libgexiv2 is not available,
then it's possible to run configure with --with-libexif to force the use of the libexif
(and then 'libjpeg' code to write EXIF data only to JPEGs but may lose XMP data)
Rob Norris [Sun, 16 Nov 2014 18:16:14 +0000 (18:16 +0000)]
SF Features#124: Enable modifier key to enable panning in select tool mode.
Alt Left on Windows and possibly Alt Right (key in Mod 5 group) on Linux like systems.
Particularly useful on laptops with touch-pads, as using the middle click (to pan) is often quite awkward.
Rob Norris [Sun, 16 Nov 2014 11:35:46 +0000 (11:35 +0000)]
Merge branch 'GeoRefImprove'
Rob Norris [Sun, 16 Nov 2014 11:05:13 +0000 (11:05 +0000)]
[DOC] Update GeoRef Layer documentation for the latest capabilities.
Rob Norris [Sun, 16 Nov 2014 10:23:14 +0000 (10:23 +0000)]
[DOC] Shift GeoRef layer help into a separate file.
Rob Norris [Sat, 15 Nov 2014 14:52:50 +0000 (14:52 +0000)]
Add alpha capability to GeoRef images.
Rob Norris [Sat, 15 Nov 2014 14:48:14 +0000 (14:48 +0000)]
Move function to apply an alpha value to be reuse-able.
Rob Norris [Fri, 14 Nov 2014 18:22:49 +0000 (18:22 +0000)]
GeoRef Layer improvement to offer entering coordinates in Lat/Lon.
Optionally work out MPP values if the lower right coordinate is entered.
For Lat/Lon <-> UTM conversion actually store UTM zone and letter rather than the implicit value of the viewport.
Rob Norris [Wed, 5 Nov 2014 00:46:40 +0000 (00:46 +0000)]
By default automatically attempt to read the associated world file of a new georef image.
A preference allows turning off this attempt.
Rob Norris [Wed, 5 Nov 2014 00:44:56 +0000 (00:44 +0000)]
Refactor world file reading to be more reuseable and improved comments.
Rob Norris [Wed, 5 Nov 2014 00:36:09 +0000 (00:36 +0000)]
Extend file entry to enable running a callback on entry accepted.
Rob Norris [Tue, 4 Nov 2014 21:34:03 +0000 (21:34 +0000)]
GeoRefLayer is always created before the properties dialog is called.
Thus simplify the pointer usage and remove the unused create/setup.
Rob Norris [Tue, 4 Nov 2014 21:30:26 +0000 (21:30 +0000)]
Remove unnecessary restriction on GeoRef layer needing to be in UTM Mode.
Although currently setting the Ref points needs UTM input the drawing doesn't need to restricted that way.
Rob Norris [Sun, 2 Nov 2014 19:08:10 +0000 (19:08 +0000)]
SF Bugs#113: Fix waypoints can be accidentally moved on (re)selection by the select tool
Add specific flag for detecting delibrate movement within the TrackWaypoint handling.
Also fix incorrect function definition for select move.
Hence replace the removed button state with a 'something selected' flag.
Rob Norris [Sun, 2 Nov 2014 18:48:24 +0000 (18:48 +0000)]
[QA] Fix compiler warning from previous commit
Rob Norris [Sun, 2 Nov 2014 18:22:06 +0000 (18:22 +0000)]
SF Bugs#115: Fix application hanging on degrees input ending in a comma.
Need to detect when the processing endptr hasn't changed in analysing the text input,
otherwise the while loop will get stuck in an infinite loop.
Rob Norris [Tue, 28 Oct 2014 23:35:19 +0000 (23:35 +0000)]
Some geotagging tests.
Rob Norris [Tue, 21 Oct 2014 20:15:55 +0000 (21:15 +0100)]
SF Features#125: Don't export unchecked items when exporting GPX files.
Rob Norris [Tue, 21 Oct 2014 19:38:56 +0000 (20:38 +0100)]
SF Bugs#114: Fix Shortcut keys get reset next start
Load / save the GTK+ Accelerator key map on program start / exit.
Rob Norris [Mon, 20 Oct 2014 20:44:22 +0000 (21:44 +0100)]
Use test_metatile as a test program.
Rob Norris [Mon, 20 Oct 2014 20:27:59 +0000 (21:27 +0100)]
[QA] Prevent depreciated warnings from test programs.
Rob Norris [Mon, 20 Oct 2014 19:07:33 +0000 (20:07 +0100)]
Fix memory leak in saving Geotag EXIF information.
Rob Norris [Sun, 19 Oct 2014 22:10:35 +0000 (23:10 +0100)]
Fix memory leak in display of the preferences window.
Rob Norris [Sun, 19 Oct 2014 22:08:48 +0000 (23:08 +0100)]
Fix crashing on invoking the Customize Toolbar from the preferences dialog.
Only occurs after dialog has previously been OKed.
Don't save the pointer value in the preferences run_set_param
(since this is an internal value never shown - the value passed into the set_param is random/not relevant)
The fault was introduced by the new configure toolbar code so not in any released version of Viking.
Rob Norris [Sun, 19 Oct 2014 19:53:10 +0000 (20:53 +0100)]
[DOC] Toolbar customization.
Rob Norris [Fri, 17 Oct 2014 17:47:38 +0000 (18:47 +0100)]
Bump requirements to match the code.
autoconf 2.64 needed for PACKAGE_URL definition.
glib 2.26 for GDateTime + GTimeZone usage for some time manipulation functionality.
Rob Norris [Fri, 17 Oct 2014 17:16:19 +0000 (18:16 +0100)]
Fix for non portable GNU only strcasestr() function.
Mostly for Windows platform but should work for others too.
Rob Norris [Thu, 16 Oct 2014 19:24:13 +0000 (20:24 +0100)]
[DOC] Wiki Help URL change.
Rob Norris [Thu, 16 Oct 2014 19:23:32 +0000 (20:23 +0100)]
[DOC] Fix some strict docbook validation issues.
Rob Norris [Thu, 16 Oct 2014 18:38:50 +0000 (19:38 +0100)]
[DOC] Recommended programs
Rob Norris [Tue, 14 Oct 2014 23:44:36 +0000 (00:44 +0100)]
[WINDOWS] Various install improvements.
Use common settings for HKLM/HKCU -> SHCTX
Set more values for install information:
. Program icon
. Work out the install size
. URLs
. Comment (with translations)
Return to removing installed files rather than forced directory removal
(as this may have bad side effects)
Rob Norris [Tue, 14 Oct 2014 23:32:02 +0000 (00:32 +0100)]
[WINDOWS] Must accept GPL2 license before installing.
Rob Norris [Tue, 14 Oct 2014 23:31:18 +0000 (00:31 +0100)]
[WINDOWS] .vik file registration is automatic, .gpx is optional
Rob Norris [Tue, 14 Oct 2014 23:11:18 +0000 (00:11 +0100)]
[WINDOWS] Enable optional install of GPSBabel 1.5.1
Package and run the GPSBabel setup installer directly.
Rob Norris [Tue, 14 Oct 2014 23:10:17 +0000 (00:10 +0100)]
[WINDOWS] Toolbar default to be similar to previous non optional setting.
Rob Norris [Tue, 14 Oct 2014 23:09:36 +0000 (00:09 +0100)]
[WINDOWS] Update to use libcurl 7.34.0
Rob Norris [Tue, 14 Oct 2014 23:08:06 +0000 (00:08 +0100)]
[WINDOWS] Update to compile with GCC4.8.1
Also update to make use of some batch functions and a few general tweaks.
Rob Norris [Sun, 21 Sep 2014 17:00:11 +0000 (18:00 +0100)]
[WINDOWS] Fix path in installer generation
Rob Norris [Sat, 20 Sep 2014 13:15:33 +0000 (14:15 +0100)]
[WINDOWS] For some reason the compiler under Windows doesn't like variables such as 'stdout' or 'stderr'
Rob Norris [Mon, 13 Oct 2014 20:11:37 +0000 (21:11 +0100)]
[DOC] Some words about GPX export options.
Rob Norris [Mon, 6 Oct 2014 23:12:30 +0000 (00:12 +0100)]
[WINDOWS] Default locations for GPSBabel
Rob Norris [Fri, 26 Sep 2014 17:21:43 +0000 (18:21 +0100)]
Only enable Google routing when GPSBabel is available.
Rob Norris [Fri, 26 Sep 2014 17:21:10 +0000 (18:21 +0100)]
Allow specifying the location for GPSBabel via a preference.
Rob Norris [Thu, 25 Sep 2014 20:41:16 +0000 (21:41 +0100)]
Update README to reflect current capabilities and fix changed Git URL.
Rob Norris [Tue, 23 Sep 2014 23:40:18 +0000 (00:40 +0100)]
Ensure waypoint bounds are recalculated when a waypoint is deleted.
Rob Norris [Thu, 11 Sep 2014 18:22:13 +0000 (19:22 +0100)]
Add TIFF as an image file type that gets listed in the applied filter.
Rob Norris [Mon, 8 Sep 2014 00:43:54 +0000 (01:43 +0100)]
[DOC] Add manual section about the command line options.
Rob Norris [Mon, 8 Sep 2014 00:43:11 +0000 (01:43 +0100)]
'extreme' debug mode (i.e. -Vd) to not remove downloaded temporary files.
Thus the contents can be inspected if things go wrong.
Rob Norris [Sun, 7 Sep 2014 22:36:28 +0000 (23:36 +0100)]
Make "utils.h" commonly available in "viking.h"
Rob Norris [Tue, 14 Oct 2014 22:40:21 +0000 (23:40 +0100)]
Add simple amenity POI datasource for immediate use and an extended example.
Rob Norris [Tue, 14 Oct 2014 22:38:15 +0000 (23:38 +0100)]
[DOC] Help for the extended datasource.
Rob Norris [Tue, 14 Oct 2014 22:36:23 +0000 (23:36 +0100)]
Add i18n and activate on return key in the entry in web datasource.
Matthew Hague [Mon, 13 Oct 2014 21:21:09 +0000 (22:21 +0100)]
added help for the extended datasource stuff
Matthew Hague [Mon, 13 Oct 2014 21:16:00 +0000 (22:16 +0100)]
removed a grab_focus that wasn't working
Matthew Hague [Mon, 13 Oct 2014 20:56:16 +0000 (21:56 +0100)]
fixed a memory leak in babel.c
Matthew Hague [Mon, 13 Oct 2014 20:54:21 +0000 (21:54 +0100)]
added map to datasources so that last string is remembered by datasource not one for all
Matthew Hague [Mon, 13 Oct 2014 20:18:35 +0000 (21:18 +0100)]
added save previous user input string and input label options to datasource search with user string