Bug 311805 - Implement more flexibility for including .kml files in map themes
Summary: Implement more flexibility for including .kml files in map themes
Alias: None
Product: marble
Classification: Unclassified
Component: general (show other bugs)
Version: 1.4 (KDE 4.9)
Platform: unspecified All
: NOR task (vote)
Target Milestone: ---
Assignee: marble-bugs
Depends on:
Reported: 2012-12-16 21:28 UTC by torhamzed
Modified: 2013-01-01 21:40 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Note You need to log in before you can comment on or make changes to this bug.
Description torhamzed 2012-12-16 21:28:06 UTC
It should be possible to 1) toggle any .kml file included in a .dgml file via the legend with any icon and 2) show anything contained in the kml file without filtering for roles.

Reproducible: Always
Comment 1 torhamzed 2012-12-16 21:39:39 UTC
I would like to be able to have greater separation between objects on screen(via the check boxes in the legend) to help reduce visual clutter.  Particularly with greater control over icons that end up being associated with blips on the map itself.

Comment 2 Thibaut Gridel 2013-01-01 21:40:48 UTC
Git commit 2aaf9f1581f8187dba01fb9e9bba0d506bb37eb3 by Thibaut Gridel.
Committed on 01/01/2013 at 22:07.
Pushed by tgridel into branch 'master'.

GeoData: trigger visibility of documents from the theme legend

For this purpose, a property attribute is brought in the following:
- GeoSceneGeoData (aka geodata layer)
- FileManager and FileLoader
- GeoDataDocument
Then MarbleModel reacts to mapTheme settings signals and toggles
GeoDataDocument visibility.
The property name is generic and simply needs to be coordinated in
the dgml file in the following sections:
- <layer><geodata property="rivers">
- <settings><property name="rivers">
- <legend><section checkable="true" connect="rivers">

M  +10   -5    src/lib/FileLoader.cpp
M  +1    -1    src/lib/FileLoader.h
M  +5    -11   src/lib/FileManager.cpp
M  +2    -2    src/lib/FileManager.h
M  +1    -1    src/lib/MarbleLegendBrowser.cpp
M  +32   -13   src/lib/MarbleMap.cpp
M  +1    -1    src/lib/MarbleMap.h
M  +22   -7    src/lib/MarbleModel.cpp
M  +2    -0    src/lib/MarbleModel.h
M  +10   -0    src/lib/geodata/data/GeoDataDocument.cpp
M  +3    -0    src/lib/geodata/data/GeoDataDocument.h
M  +1    -0    src/lib/geodata/data/GeoDataDocument_p.h
M  +1    -0    src/lib/geodata/handlers/dgml/DgmlAttributeDictionary.cpp
M  +1    -0    src/lib/geodata/handlers/dgml/DgmlAttributeDictionary.h
M  +3    -0    src/lib/geodata/handlers/dgml/DgmlGeodataTagHandler.cpp
M  +7    -3    src/lib/geodata/scene/GeoSceneGeodata.cpp
M  +3    -2    src/lib/geodata/scene/GeoSceneGeodata.h