1#include "MarbleDBusInterface.h"
5#include "MapThemeManager.h"
6#include <GeoSceneDocument.h>
7#include <GeoSceneSettings.h>
8#include <GeoSceneProperty.h>
13class Q_DECL_HIDDEN MarbleDBusInterface::Private
16 Private( MarbleWidget* widget );
18 MarbleWidget* m_marbleWidget;
22MarbleDBusInterface::Private::Private( MarbleWidget *widget ) :
23 m_marbleWidget( widget )
28MarbleDBusInterface::MarbleDBusInterface( MarbleWidget* widget ) :
30 d( new Private( widget ) )
33 connect( widget, SIGNAL(tileLevelChanged(
int)),
this, SIGNAL(tileLevelChanged(
int)) );
34 connect( widget, SIGNAL(zoomChanged(
int)),
this, SIGNAL(zoomChanged(
int)) );
35 connect( widget, SIGNAL(visibleLatLonAltBoxChanged(GeoDataLatLonAltBox)),
36 this, SLOT(handleVisibleLatLonAltBoxChange()) );
39MarbleDBusInterface::~MarbleDBusInterface()
45QString MarbleDBusInterface::mapTheme()
const
47 return d->m_marbleWidget->mapThemeId();
56int MarbleDBusInterface::tileLevel()
const
58 return d->m_marbleWidget->tileZoomLevel();
61int MarbleDBusInterface::zoom()
const
63 return d->m_marbleWidget->zoom();
66QPointF MarbleDBusInterface::center()
const
68 return d->m_currentCenter;
71void MarbleDBusInterface::setMapTheme(
const QString &mapTheme )
73 d->m_marbleWidget->setMapThemeId( mapTheme );
76void MarbleDBusInterface::setZoom(
int zoom)
78 d->m_marbleWidget->setZoom(zoom);
81void MarbleDBusInterface::setPropertyEnabled(
const QString &key,
bool enabled )
83 d->m_marbleWidget->setPropertyValue( key, enabled );
86bool MarbleDBusInterface::isPropertyEnabled(
const QString &key )
const
89 GeoSceneDocument
const *
const mapTheme = d->m_marbleWidget->model()->mapTheme();
91 mapTheme->settings()->propertyValue( key, value );
100 GeoSceneDocument
const *
const mapTheme = d->m_marbleWidget->model()->mapTheme();
102 for(
const GeoSceneProperty* property: mapTheme->settings()->allProperties() ) {
109void MarbleDBusInterface::setCenter(
const QPointF ¢er )
const
114void MarbleDBusInterface::handleVisibleLatLonAltBoxChange()
116 QPointF const newCenter =
QPointF( d->m_marbleWidget->centerLongitude(),
117 d->m_marbleWidget->centerLatitude() );
118 if ( newCenter != d->m_currentCenter ) {
119 d->m_currentCenter = newCenter;
120 emit centerChanged( d->m_currentCenter );
126#include "moc_MarbleDBusInterface.cpp"
This file contains the headers for MarbleModel.
Provides access to all map themes installed locally.
QStringList mapThemeIds() const
A list of all installed map theme ids, each entry has the form "planet/themeid/themeid....
Binds a QML item to a specific geodetic location in screen coordinates.
QTextStream & center(QTextStream &stream)
QFuture< ArgsType< Signal > > connect(Sender *sender, Signal signal)