Implemented decorations for GeoGraphicsItem.

Review Request #124154 - Created June 23, 2015 and submitted - Latest diff uploaded

Dávid Kolozsvári

This patch introduces a new virtual method GeoGraphicsItem::createDecoration() to enable the easy creation of decoration for every class thet is inherited from GeoGraphicsItem.

There are two new decorations implemented in this patch:

  • Outlines for GeoLineStringGraphicsItem, for better street rendering in OSM vector tiles;
  • Fake3D effect for GeoPolygonGraphicsItem if they represent buildings in OSM vector tiles.

For performance reasons these decorations are only painted when the map quality is set to noraml or higher.

Other changes:

  • Changed some of the color styles of OSM related items, e.g. streets, to match the default color scheme of openstreetmap maps;
  • Implemented two new OSM feature: HighwayFootway and HighwayCycleway.

In the end, I've decided to cache the decorations for every item, and thus the performance is much better than in the previous review request.
This patch works for me and the results are better than I expected.