• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.12
  • kdeedu
  • marble
  • src
  • lib
  • marble
  • routing
RoutingLayer.h
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2010 Dennis Nienhüser <earthwings@gentoo.org>
9 //
10 
11 #ifndef MARBLE_ROUTINGLAYER_H
12 #define MARBLE_ROUTINGLAYER_H
13 
14 #include "GeoDataCoordinates.h"
15 #include "LayerInterface.h"
16 #include "RoutingManager.h"
17 
18 #include <QModelIndex>
19 #include <QRect>
20 #include <QItemSelection>
21 
22 class QAbstractProxyModel;
23 
24 namespace Marble
25 {
26 
27 class MarbleWidget;
28 class RoutingModel;
29 class MarblePlacemarkModel;
30 class RoutingLayerPrivate;
31 class AlternativeRoutesModel;
32 
36 class RoutingLayer: public QObject, public LayerInterface
37 {
38  Q_OBJECT
39 
40 public:
47  explicit RoutingLayer( MarbleWidget *widget, QWidget *parent = 0 );
48 
50  ~RoutingLayer();
51 
53  QStringList renderPosition() const;
54 
56  qreal zValue() const;
57 
59  bool render( GeoPainter *painter, ViewportParams *viewport,
60  const QString &renderPos = "NONE", GeoSceneLayer *layer = 0 );
61 
67  void synchronizeWith( QItemSelectionModel *selection );
68 
72  void setPlacemarkModel ( MarblePlacemarkModel *model );
73 
77  void setViewContext( ViewContext viewContext );
78 
79 Q_SIGNALS:
84  void placemarkSelected( const QModelIndex &index );
85 
86  void repaintNeeded( const QRect &rect = QRect() );
87 
88 public:
90  bool eventFilter( QObject *obj, QEvent *event );
91 
92 private Q_SLOTS:
93  void removeViaPoint();
94 
95  void showAlternativeRoutes();
96 
98  void exportRoute();
99 
103  void updateRouteState( RoutingManager::State state );
104 
108  void setViewportChanged();
109 
110 private:
111  RoutingLayerPrivate *const d;
112  friend class RoutingLayerPrivate;
113 
114 };
115 
116 } // namespace Marble
117 
118 #endif
GeoDataCoordinates.h
Marble::RoutingLayer::RoutingLayer
RoutingLayer(MarbleWidget *widget, QWidget *parent=0)
Constructor.
Definition: RoutingLayer.cpp:611
Marble::MarblePlacemarkModel
This class represents a model of all place marks which are currently available through a given Placem...
Definition: MarblePlacemarkModel.h:37
Marble::RoutingLayer::eventFilter
bool eventFilter(QObject *obj, QEvent *event)
Overriding QWidget, used to make the layer interactive.
Definition: RoutingLayer.cpp:673
Marble::RoutingLayer::setViewContext
void setViewContext(ViewContext viewContext)
Set the view context to determine whether the map is used interactively.
Definition: RoutingLayer.cpp:767
Marble::RoutingLayer::repaintNeeded
void repaintNeeded(const QRect &rect=QRect())
Marble::GeoPainter
A painter that allows to draw geometric primitives on the map.
Definition: GeoPainter.h:98
Marble::RoutingLayer::zValue
qreal zValue() const
Reimplemented from LayerInterface.
Definition: RoutingLayer.cpp:636
Marble::ViewContext
ViewContext
This enum is used to choose context in which map quality gets used.
Definition: MarbleGlobal.h:72
QWidget
LayerInterface.h
Marble::LayerInterface
Definition: LayerInterface.h:25
QObject
Marble::RoutingLayer::~RoutingLayer
~RoutingLayer()
Destructor.
Definition: RoutingLayer.cpp:626
Marble::RoutingLayer::placemarkSelected
void placemarkSelected(const QModelIndex &index)
A placemark was selected (clicked) by the user.
Marble::RoutingLayer
A paint layer that serves as a view on a route model.
Definition: RoutingLayer.h:36
Marble::MarbleWidget
A widget class that displays a view of the earth.
Definition: MarbleWidget.h:102
RoutingManager.h
Marble::GeoSceneLayer
Layer of a GeoScene document.
Definition: GeoSceneLayer.h:43
Marble::RoutingLayer::RoutingLayerPrivate
friend class RoutingLayerPrivate
Definition: RoutingLayer.h:112
Marble::RoutingLayer::renderPosition
QStringList renderPosition() const
Reimplemented from LayerInterface.
Definition: RoutingLayer.cpp:631
Marble::RoutingLayer::render
bool render(GeoPainter *painter, ViewportParams *viewport, const QString &renderPos="NONE", GeoSceneLayer *layer=0)
Reimplemented from LayerInterface.
Definition: RoutingLayer.cpp:641
Marble::ViewportParams
A public class that controls what is visible in the viewport of a Marble map.
Definition: ViewportParams.h:44
QAbstractProxyModel
Marble::RoutingManager::State
State
Definition: RoutingManager.h:42
Marble::RoutingLayer::setPlacemarkModel
void setPlacemarkModel(MarblePlacemarkModel *model)
Set the placemark model to use.
Definition: RoutingLayer.cpp:695
Marble::RoutingLayer::synchronizeWith
void synchronizeWith(QItemSelectionModel *selection)
Set the proxy model another QAbstractItemView uses that should share its selection model with us...
Definition: RoutingLayer.cpp:701
MarbleWidget
Wraps a Marble::MarbleWidget, providing access to important properties and methods.
Definition: MarbleDeclarativeWidget.h:50
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:38:52 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal