12 #ifndef MARBLE_MARBLEWIDGET_H
13 #define MARBLE_MARBLEWIDGET_H
33 class QItemSelectionModel;
39 class AbstractDataPluginItem;
40 class AbstractFloatItem;
41 class GeoDataLatLonAltBox;
42 class GeoDataLatLonBox;
44 class GeoSceneDocument;
47 class MarbleWidgetPopupMenu;
48 class MarbleWidgetInputHandler;
49 class MarbleWidgetPrivate;
54 class TileCoordsPyramid;
56 class GeoDataPlacemark;
106 Q_CLASSINFO(
"D-Bus Interface",
"org.kde.MarbleWidget")
109 Q_PROPERTY(
int zoom READ zoom WRITE setZoom)
111 Q_PROPERTY(QString mapThemeId READ mapThemeId WRITE setMapThemeId)
112 Q_PROPERTY(
int projection READ projection WRITE setProjection)
114 Q_PROPERTY(qreal longitude READ centerLongitude WRITE setCenterLongitude)
115 Q_PROPERTY(qreal latitude READ centerLatitude WRITE setCenterLatitude)
117 Q_PROPERTY(
bool showOverviewMap READ showOverviewMap WRITE setShowOverviewMap)
118 Q_PROPERTY(
bool showScaleBar READ showScaleBar WRITE setShowScaleBar)
119 Q_PROPERTY(
bool showCompass READ showCompass WRITE setShowCompass)
120 Q_PROPERTY(
bool showGrid READ showGrid WRITE setShowGrid)
122 Q_PROPERTY(
bool showClouds READ showClouds WRITE setShowClouds)
123 Q_PROPERTY(
bool showSunShading READ showSunShading WRITE setShowSunShading)
124 Q_PROPERTY(
bool showCityLights READ showCityLights WRITE setShowCityLights)
125 Q_PROPERTY(
bool isLockedToSubSolarPoint READ isLockedToSubSolarPoint WRITE setLockToSubSolarPoint)
126 Q_PROPERTY(
bool isSubSolarPointIconVisible READ isSubSolarPointIconVisible WRITE setSubSolarPointIconVisible)
127 Q_PROPERTY(
bool showAtmosphere READ showAtmosphere WRITE setShowAtmosphere)
128 Q_PROPERTY(
bool showCrosshairs READ showCrosshairs WRITE setShowCrosshairs)
130 Q_PROPERTY(
bool showPlaces READ showPlaces WRITE setShowPlaces)
131 Q_PROPERTY(
bool showCities READ showCities WRITE setShowCities)
132 Q_PROPERTY(
bool showTerrain READ showTerrain WRITE setShowTerrain)
133 Q_PROPERTY(
bool showOtherPlaces READ showOtherPlaces WRITE setShowOtherPlaces)
135 Q_PROPERTY(
bool showRelief READ showRelief WRITE setShowRelief)
137 Q_PROPERTY(
bool showIceLayer READ showIceLayer WRITE setShowIceLayer)
138 Q_PROPERTY(
bool showBorders READ showBorders WRITE setShowBorders)
139 Q_PROPERTY(
bool showRivers READ showRivers WRITE setShowRivers)
140 Q_PROPERTY(
bool showLakes READ showLakes WRITE setShowLakes)
142 Q_PROPERTY(quint64 volatileTileCacheLimit READ volatileTileCacheLimit WRITE setVolatileTileCacheLimit)
207 void readPluginSettings( QSettings& settings );
215 void writePluginSettings( QSettings& settings ) const;
269 QString mapThemeId() const;
274 QRegion mapRegion() const;
286 int tileZoomLevel() const;
291 qreal distance() const;
296 QString distanceString() const;
301 int minimumZoom() const;
306 int maximumZoom() const;
322 bool screenCoordinates( qreal lon, qreal lat,
323 qreal& x, qreal& y ) const;
334 bool geoCoordinates(
int x,
int y,
335 qreal& lon, qreal& lat,
342 qreal centerLongitude() const;
348 qreal centerLatitude() const;
354 qreal moveStep() const;
380 void resetFocusPoint();
385 qreal radiusFromDistance( qreal distance ) const;
390 qreal distanceFromRadius( qreal radius ) const;
395 qreal zoomFromDistance( qreal distance ) const;
400 qreal distanceFromZoom( qreal zoom ) const;
418 bool showOverviewMap() const;
424 bool showScaleBar() const;
430 bool showCompass() const;
436 bool showClouds() const;
442 bool showSunShading() const;
448 bool showCityLights() const;
454 bool isLockedToSubSolarPoint() const;
460 bool isSubSolarPointIconVisible() const;
466 bool showAtmosphere() const;
472 bool showCrosshairs() const;
478 bool showGrid() const;
484 bool showPlaces() const;
490 bool showCities() const;
496 bool showTerrain() const;
502 bool showOtherPlaces() const;
508 bool showRelief() const;
514 bool showIceLayer() const;
520 bool showBorders() const;
526 bool showRivers() const;
532 bool showLakes() const;
538 bool showFrameRate() const;
540 bool showBackground() const;
550 bool animationsEnabled() const;
553 void setDefaultAngleUnit(
AngleUnit angleUnit );
555 QFont defaultFont() const;
556 void setDefaultFont( const QFont& font );
567 quint64 volatileTileCacheLimit() const;
577 QPixmap mapScreenShot();
595 void setRadius(
int radius );
610 void zoomView(
int zoom,
FlyToMode mode = Instant );
616 void zoomViewBy(
int zoomStep,
FlyToMode mode = Instant );
625 void zoomOut(
FlyToMode mode = Automatic );
631 void setDistance( qreal distance );
644 void rotateBy( const qreal deltaLon, const qreal deltaLat,
FlyToMode mode = Instant );
653 void centerOn( const qreal lon, const qreal lat,
bool animated = false );
689 void setCenterLatitude( qreal lat,
FlyToMode mode = Instant );
696 void setCenterLongitude( qreal lon,
FlyToMode mode = Instant );
701 void moveLeft(
FlyToMode mode = Automatic );
706 void moveRight(
FlyToMode mode = Automatic );
711 void moveUp(
FlyToMode mode = Automatic );
716 void moveDown(
FlyToMode mode = Automatic );
721 void goHome(
FlyToMode mode = Automatic );
748 void setProjection(
int projection );
760 void setMapThemeId( const QString& maptheme );
769 void setPropertyValue( const QString& name,
bool value );
775 void setShowOverviewMap(
bool visible );
781 void setShowScaleBar(
bool visible );
787 void setShowCompass(
bool visible );
793 void setShowClouds(
bool visible );
799 void setShowSunShading(
bool visible );
805 void setShowCityLights(
bool visible );
811 void setLockToSubSolarPoint(
bool visible );
817 void setSubSolarPointIconVisible(
bool visible );
823 void setShowAtmosphere(
bool visible );
829 void setShowCrosshairs(
bool visible );
835 void setShowGrid(
bool visible );
841 void setShowPlaces(
bool visible );
847 void setShowCities(
bool visible );
853 void setShowTerrain(
bool visible );
859 void setShowOtherPlaces(
bool visible );
865 void setShowRelief(
bool visible );
871 void setShowIceLayer(
bool visible );
877 void setShowBorders(
bool visible );
883 void setShowRivers(
bool visible );
889 void setShowLakes(
bool visible );
895 void setShowFrameRate(
bool visible );
897 void setShowBackground(
bool visible );
905 void setShowTileId(
bool visible );
911 void setShowRuntimeTrace(
bool visible );
929 void setAnimationsEnabled(
bool enabled );
936 void clearVolatileTileCache();
941 void setVolatileTileCacheLimit( quint64 kiloBytes );
961 void creatingTilesStart(
TileCreator *creator, const QString& name, const QString& description );
978 void notifyMouseClick(
int x,
int y );
980 void setSelection( const QRect& region );
982 void setInputEnabled(
bool );
994 void zoomChanged(
int zoom );
995 void distanceChanged( const QString& distanceString );
997 void tileLevelChanged(
int level );
1003 void themeChanged( const QString& theme );
1007 void mouseMoveGeoPosition( const QString& );
1011 void framesPerSecond( qreal fps );
1017 void regionSelected( const QList<
double>& );
1022 void pluginSettingsChanged();
1027 void renderPluginInitialized(
RenderPlugin *renderPlugin );
1039 virtual
void leaveEvent( QEvent *event );
1044 virtual
void paintEvent( QPaintEvent *event );
1049 virtual
void resizeEvent( QResizeEvent *event );
1051 void connectNotify( const
char * signal );
1052 void disconnectNotify( const
char * signal );
1058 virtual
void changeEvent( QEvent * event );
1067 virtual
void customPaint(
GeoPainter *painter );
1070 Q_PRIVATE_SLOT( d,
void updateMapTheme() )
1071 Q_PRIVATE_SLOT( d,
void updateSystemBackgroundAttribute() )
1074 Q_DISABLE_COPY( MarbleWidget )
1075 MarbleWidgetPrivate * const d;
1076 friend class MarbleWidgetPrivate;
1078 class CustomPaintLayer;
1079 friend class CustomPaintLayer;
A 3d point representation.
A sane value is chosen automatically depending on animation settings and the action.
A painter that allows to draw geometric primitives on the map.
ViewContext
This enum is used to choose context in which map quality gets used.
MapQuality
This enum is used to choose the map quality shown in the view.
static GeoTagHandlerRegistrar handler(GeoParser::QualifiedName(dgmlTag_DownloadPolicy, dgmlTag_nameSpace20), new DgmlDownloadPolicyTagHandler)
A paint layer that serves as a view on a route model.
The abstract class for float item plugins.
A public class that controls what is visible in the viewport of a Marble map.
A container for features parsed from the DGML file.
FlyToMode
Describes possible flight mode (interpolation between source and target camera positions) ...
The data model (not based on QAbstractModel) for a MarbleWidget.
AngleUnit
This enum is used to choose the unit chosen to measure angles.
Projection
This enum is used to choose the projection shown in the view.
Change camera position immediately (no interpolation)
a class representing a point of interest on the map
The abstract class that creates a renderable item.
A class that defines a 3D bounding box for geographic data.
A class that defines a 2D bounding box for geographic data.