[Marble-devel] Review Request 123406: Adds the possibility to change the Map Theme and Projection from within the Tour Widget playlist ( adds the GeoDataMapChange element )

Marius Stanciu stanciumarius94 at gmail.com
Wed Apr 29 22:19:15 UTC 2015


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/123406/
-----------------------------------------------------------

(Updated April 29, 2015, 10:19 p.m.)


Review request for Marble.


Changes
-------

Fixed the mentioned issues( changed the default current item of the map view to MarbleWidget's current mapTheme Id ) and added some more comments


Repository: marble


Description
-------

Firstly:

- GeoDataMapChange is introduced, as a tour primitive. It adds the possibility to schedule a map theme or projection change from within the Tour Widget Playlist.
- MapChangeEditDialog makes editing possible for the GeoDataMapChange elements. It uses the same UI from the MapViewWidget.
- KmlMapChangeTagWriter/Handler + KmlThemeTagHandler + KmlProjectionTagHandler make import/export possible this way:
     Example kmlFile:
     <mx:MapChange>
          <mx:theme>earth/citylights/citylights.dgml</mx:theme>
          <mx:projection>Spherical</mx:projection>
     </mx:MapChange>
     
     This, after parsing, represents a mapChange element that will change the current map theme to       
     earth/citylights/citylights.dgml and projection to Spherical (Globe)
     
- As it can be seen above, a new xml namespace was introduced (mx), because the new element is Marble only.
- Adds a new icon for the mapChange item. ( mapChange.png )

Secondly:

A lot of code was refactored from MapViewWidget.cpp ( CelestialSortFilterProxyModel, MapViewItemDelegate classes )
to their own files, so they can be reused by the MapChangeEditDialog


Diffs (updated)
-----

  data/bitmaps/changeMap.png PRE-CREATION 
  src/lib/marble/CMakeLists.txt f448f84 
  src/lib/marble/CelestialSortFilterProxyModel.h PRE-CREATION 
  src/lib/marble/CelestialSortFilterProxyModel.cpp PRE-CREATION 
  src/lib/marble/MapChangeEditDialog.h PRE-CREATION 
  src/lib/marble/MapChangeEditDialog.cpp PRE-CREATION 
  src/lib/marble/MapChangeTrack.h PRE-CREATION 
  src/lib/marble/MapChangeTrack.cpp PRE-CREATION 
  src/lib/marble/MapViewItemDelegate.h PRE-CREATION 
  src/lib/marble/MapViewItemDelegate.cpp PRE-CREATION 
  src/lib/marble/MapViewWidget.cpp 4d8f9f6 
  src/lib/marble/TourItemDelegate.h d0d67d3 
  src/lib/marble/TourItemDelegate.cpp b038a7f 
  src/lib/marble/TourPlayback.cpp f9bf828 
  src/lib/marble/TourWidget.h a6cb8ca 
  src/lib/marble/TourWidget.cpp b9fab0e 
  src/lib/marble/geodata/CMakeLists.txt fe22e24 
  src/lib/marble/geodata/data/GeoDataMapChange.h PRE-CREATION 
  src/lib/marble/geodata/data/GeoDataMapChange.cpp PRE-CREATION 
  src/lib/marble/geodata/handlers/kml/KmlElementDictionary.h f2c062c 
  src/lib/marble/geodata/handlers/kml/KmlElementDictionary.cpp ea53d43 
  src/lib/marble/geodata/handlers/kml/KmlMapChangeTagHandler.h PRE-CREATION 
  src/lib/marble/geodata/handlers/kml/KmlMapChangeTagHandler.cpp PRE-CREATION 
  src/lib/marble/geodata/handlers/kml/KmlProjectionTagHandler.h PRE-CREATION 
  src/lib/marble/geodata/handlers/kml/KmlProjectionTagHandler.cpp PRE-CREATION 
  src/lib/marble/geodata/handlers/kml/KmlThemeTagHandler.h PRE-CREATION 
  src/lib/marble/geodata/handlers/kml/KmlThemeTagHandler.cpp PRE-CREATION 
  src/lib/marble/geodata/parser/GeoDataParser.cpp 588b086 
  src/lib/marble/geodata/parser/GeoDataTypes.h 45d81d3 
  src/lib/marble/geodata/parser/GeoDataTypes.cpp 47fde69 
  src/lib/marble/geodata/writers/kml/KmlMapChangeTagWriter.h PRE-CREATION 
  src/lib/marble/geodata/writers/kml/KmlMapChangeTagWriter.cpp PRE-CREATION 
  src/lib/marble/geodata/writers/kml/KmlPlaylistTagWriter.h d01fd7b 
  src/lib/marble/geodata/writers/kml/KmlPlaylistTagWriter.cpp 131e3ab 
  src/lib/marble/geodata/writers/kml/KmlTagWriter.cpp 47ca42c 
  src/lib/marble/libmarble.qrc f30e887 

Diff: https://git.reviewboard.kde.org/r/123406/diff/


Testing
-------

I've tested the feature as much as I could and it worked. If you find any bugs, please report an issue.


Thanks,

Marius Stanciu

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/marble-devel/attachments/20150429/d5e21ea3/attachment-0001.html>


More information about the Marble-devel mailing list