summaryrefslogtreecommitdiff
path: root/src/location/maps/qgeocameracapabilities.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Clarify overzoomEnabled property of QGeoCameraCapabilitiesv5.9.0-beta2Paolo Angelelli2017-04-121-0/+8
| | | | | Change-Id: If6f8fd446c562d6ccaf368e1d5afb5eee113fece Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Allow overzooming when setting zoomLevel directly in a MapPaolo Angelelli2017-04-121-3/+29
| | | | | | | | | | | | | This patch moves the lower/upper bound check on setZoom from QDeclarativeGeoMap to the gesture area, allowing to set higher zoom levels than the maximumZoomLevel when setting Map.zoomLevel directly, for the map types that support overzoom. This is now safe as the bound check is introduced in the tile fetcher, so no invalid tiles will be requested, and is beneficial when combining layers supporting different maximum zoom levels. Change-Id: I08ee9c282ee2ebc1dafa3c68a238b93ffbc1ba02 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Lower bound minimum/maximumZoomLevelAt256Paolo Angelelli2017-03-221-2/+2
| | | | | | | | | Without this patch, using tiles of size 128 may cause these methods to return negative values Change-Id: I6476083350fd552756d1388fa9bc8fa36d8c4ee3 Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Bruno de Oliveira Abinader <brunoabinader@gmail.com>
* Make QGeoCameraCapabilities independent of the enginePaolo Angelelli2017-02-281-1/+28
| | | | | | | | | | | | | | This patch makes it possible to change QGeoCameraCapabilites at runtime, when the map type changes, to accommodate for those plugins that offer different maps having different capabilities. This is then used to properly push the min/max zoom levels for each map type in our OSM plugin. Autotests are included. Change-Id: I48532da77ffb3eaf2e752561395945c3a2c21985 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Add field of view support to QtLocation mappingPaolo Angelelli2017-01-261-2/+57
| | | | | | | | | | | | | | | | This patch introduces a new camera parameter, field of view, used in QGeoCameraCapabilities, QGeoCameraData and QDeclarativeGeoMap. This is necessary as now QtLocation supports map tilting, and different QGeoMap implementations support different ranges for the field of view of the camera. Through this API it becomes possible to query the supported range and current value, and to stack Map elements using different plugins while keeping a consistent camera projection across all of them. Change-Id: Ie061142bea090ec223d842efbe7924f924430496 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Add rotation and tilt controls to QDeclarativeGeoMapPaolo Angelelli2017-01-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QDeclarativeGeoMap currently does not provide any mean to set bearing and tilt into qgeocameradata. It has been not a problem since QGeoTiledMap and sons did not support it. External renderers however support it, so this patch adds QML api calls to control these parameters, and adapt the existing logic to take them into consideration in camera-related calls, as well as in the afterViewportChange handlers of the Map Items. This patch also sligthly modifies the QML api to make the handling of all the bounded camera property more homogeneous. Minimum and maximum zoom levels prior plugin initialization aren't -1 anymore, but are some valid lower and upper bounds for this property, that is 0 and 30. in this way all the 2 bounded properties (zoomLevel and tilt) behave the same, in that they can be freely set before plugin initialization, within reasonable predefined bounds, and, after that, they may be clamped depending on the actual plugin capabilities. Autotests for the QML part of the API included. Change-Id: I9d09e32698a7330388e465e8ea7523ee39577d34 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Make zoomLevel refer to a default 256^2 tile sizePaolo Angelelli2017-01-161-2/+40
| | | | | | | | | | | | | | | | | | | | | | | | Currently the zoomLevel is the power of 2 reflecting how many tiles are in a map edge. This means that two plugins with two different tileSize will show a map of different size at the same zoomLevel. With this patch the zoomLevel is "normalized" upon a tileSize of 256, regardless of the tile size in use. In this way, the new 256 based zoom level can be a consistent parameter also for plugins that are not tile based. CameraCapabilities therefore now offers two new methods, m[in,ax]imumZoomLevelAt256, that return the respective value for the normalized 256^2 tilesize. It also gets a setTileSize, which is currently not used as all our plugins use a tile size of 256 (which is the camera capabilities default tilesize value). Change-Id: Ib12092fd14faf7fc85f8be5fb799dbd5496b760b Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Bump all QtLocation 5.5 tags to 5.6Alex Blasche2015-09-231-1/+1
| | | | | | | | | | | | | | | 5.5 was a tech preview release. The real release is 5.6. Some 5.5 interfaces did change. It is possible that there are apps in existence which are based on the 5.5 API's. To avoid miscommunication we bump all version tags to the real first release version. The existing 5.5 QML imports will continue to work but apps may encounter API changes when they move from 5.5 to 5.6. The API changes are listed in the QtLocation documentation. Change-Id: Ia7000e871a5ee6b09234e5d58d4fc8927e93b154 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Fix QtLocation \since tags in QML and C++Alex Blasche2015-05-291-1/+1
| | | | | | | | The first release is 5.5 and not 5.0 Change-Id: Ib659adf77293e10e8f3d117ce16bbc25858d6ab2 Reviewed-by: Michal Klocek <michal.klocek@theqtcompany.com> Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Remove LGPLv2.1 and add GPLv2+ from/to QtLocationAlex Blasche2015-02-191-14/+17
| | | | | | Change-Id: I3007aa04d3dbc0e00cb0a43987d64d01ddf91edd Reviewed-by: Lorn Potter <lorn.potter@gmail.com> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
* Update contact URL in all license headers to qt.ioAlex Blasche2015-02-181-1/+1
| | | | | Change-Id: Ia1e333be7fec8898de609d9b9303b1ad7687632e Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
* Update license headers and add new license filesAntti Kokko2014-08-241-19/+11
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: Iedee2507ab1bd46788409a98505d7be510253110 Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
* Fix some typosSergio Ahumada2014-03-031-2/+2
| | | | | Change-Id: If46057e48040fda7b61b81e735c171daf2cc7d06 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Update copyright year to 2013Sergio Ahumada2013-06-131-1/+1
| | | | | Change-Id: I5b0cb7d56997ad7b91c073b3e02b31d0368fdcfa Reviewed-by: Alex <alexander.blasche@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-241-24/+24
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: Ic1390da64a219642fa1e1482a7677a4c2db15cbc Reviewed-by: Janne Anttila <janne.anttila@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Remove Maps from public C++ API.Aaron McCarthy2012-06-071-0/+1
| | | | | | | | | | | | The preliminary C++ Maps API was exposed to provide an interface between the QML plugin and the geo services plugins. Mark it as private API for now as it is likely to change when the full C++ API is developed. Mapping functionality is currently only available through QML. Change-Id: Id16e0f1a2165c70192047dffa40e69ab1f29ba69 Reviewed-by: Alex Wilson <alex.wilson@nokia.com>
* Coding style fixes: whitespace around pointers/referencesAlex Wilson2012-05-151-3/+3
| | | | | | Change-Id: Ie527591e2d9a1578137136fb6664e86c43eed1bf Reviewed-by: Thomas Lowe <thomas.lowe@nokia.com> Reviewed-by: Alex Wilson <alex.wilson@nokia.com>
* Coding style fixes, round #1Alex Wilson2012-05-151-0/+3
| | | | | | | | | | | In this patch: * Assignment operators that don't check for self-assignment * Using const references where possible in function arguments * Using const refs in the iterator var of a foreach() loop * Add 'explicit' to constructors taking one parameter Change-Id: I640fd85c3312851f0d8c10193333efec41232e05 Reviewed-by: Aaron McCarthy <aaron.mccarthy@nokia.com>
* Coverity and compiler warning fixesAlex Wilson2012-04-191-0/+3
| | | | | Change-Id: Iae536630edbfbda2c0e8c67c48477d5867d25f07 Reviewed-by: Aaron McCarthy <aaron.mccarthy@nokia.com>
* General documentation issuesWolfgang Beck2012-03-291-1/+1
| | | | | Change-Id: I021ab70e1cbb973817aecbf53b7af0760c5e36c4 Reviewed-by: Aaron McCarthy <aaron.mccarthy@nokia.com>
* Fixes various Coverity warnings.David Laing2012-03-161-1/+0
| | | | | Change-Id: I58a7191dae9cd441025cad658d82422561f216f6 Reviewed-by: Aaron McCarthy <aaron.mccarthy@nokia.com>
* Docs: Bug-6677 fix for items 001-003.Peter Yard2012-03-151-4/+4
| | | | | Change-Id: I8da3e2e445782eccec379a54823d39df7ed8d9f8 Reviewed-by: Alex <alex.blasche@nokia.com>
* Location C++ API documentation needs to be updatedJean Gressmann2012-03-021-3/+1
| | | | | | | | | | | | Work towards QTBUG-24439 * Removed TODO private API from QGeoCameraCapabilities. * Added detail to QGeoAddress documentation. * Minor improvents in various places. Change-Id: I3bbebda972228c86c4315b0ec63358997675f362 Reviewed-by: Alex <alex.blasche@nokia.com> Reviewed-by: abcd <amos.choy@nokia.com>
* Expose camera caps via QGeoMap, add isValid() method to camera capsAlex Wilson2012-02-241-0/+26
| | | | | | | | | | | This is useful to the QML plugin, so that map objects can be aware of what camera actions to expect from their parent map. The isValid() method is necessary so that callers can tell the difference between a default, empty QGeoCameraCapabilities, and one actually populated by a backend plugin. Change-Id: I7e742fee5bac9f003e0cc99e4c3d6a747a67ea24 Reviewed-by: David Laing <david.laing@nokia.com>
* Adds the camera capabilities class.David Laing2012-02-161-0/+287
This class unifies access to the data related to what the valid range of camera parameters are for a given map plugin. Change-Id: I681eba4a8e1c1cbd34995ed1e97064ab194b1e40 Reviewed-by: Alex Wilson <alex.wilson@nokia.com>