[marble] (re)enable python bindings
Rex Dieter
rdieter at fedoraproject.org
Sun Aug 11 21:37:16 UTC 2013
commit 61d1be2836e435b343fd37b45e618476dd3ad53d
Author: Rex Dieter <rdieter at math.unl.edu>
Date: Sun Aug 11 16:37:08 2013 -0500
(re)enable python bindings
0001-Python-bindings-update.patch | 497 +++++++++
0002-Python-bindings-update.patch | 2011 +++++++++++++++++++++++++++++++++++++
marble.spec | 12 +-
3 files changed, 2518 insertions(+), 2 deletions(-)
---
diff --git a/0001-Python-bindings-update.patch b/0001-Python-bindings-update.patch
new file mode 100644
index 0000000..ebc0019
--- /dev/null
+++ b/0001-Python-bindings-update.patch
@@ -0,0 +1,497 @@
+From c640a6889b440640da501237f21c0847b6a8303d Mon Sep 17 00:00:00 2001
+From: Simon Edwards <simon at simonzone.com>
+Date: Sat, 10 Aug 2013 13:27:22 +0200
+Subject: [PATCH 1/2] Python bindings update.
+
+Phase 1: Remove what ever it takes to get it building again.
+---
+ src/bindings/python/sip/AbstractDataPlugin.sip | 1 -
+ src/bindings/python/sip/AbstractDataPluginItem.sip | 3 ---
+ src/bindings/python/sip/AbstractDataPluginModel.sip | 1 -
+ src/bindings/python/sip/FileViewWidget.sip | 3 ---
+ src/bindings/python/sip/GeoDataAbstractView.sip | 2 +-
+ src/bindings/python/sip/GeoDataCoordinates.sip | 1 -
+ src/bindings/python/sip/GeoDataFeature.sip | 4 ----
+ src/bindings/python/sip/GeoDataLatLonAltBox.sip | 2 --
+ src/bindings/python/sip/GeoDataObject.sip | 7 +++++--
+ src/bindings/python/sip/GeoDataPlacemark.sip | 3 ---
+ src/bindings/python/sip/GeoDataPoint.sip | 1 -
+ src/bindings/python/sip/GeoGraphicsItem.sip | 3 +--
+ src/bindings/python/sip/GeoGraphicsScene.sip | 1 -
+ src/bindings/python/sip/GeoPainter.sip | 8 +-------
+ src/bindings/python/sip/MarbleGraphicsItem.sip | 1 -
+ src/bindings/python/sip/MarbleMap.sip | 4 +---
+ src/bindings/python/sip/MarbleModel.sip | 4 ----
+ src/bindings/python/sip/MarbleWidget.sip | 2 --
+ src/bindings/python/sip/ParseRunnerPlugin.sip | 3 +--
+ src/bindings/python/sip/RenderPlugin.sip | 8 --------
+ src/bindings/python/sip/ReverseGeocodingRunnerPlugin.sip | 3 +--
+ src/bindings/python/sip/RoutingRunnerPlugin.sip | 3 +--
+ src/bindings/python/sip/SearchRunnerPlugin.sip | 3 +--
+ src/bindings/python/sip/marblemod.sip | 1 -
+ 24 files changed, 13 insertions(+), 59 deletions(-)
+
+diff --git a/src/bindings/python/sip/AbstractDataPlugin.sip b/src/bindings/python/sip/AbstractDataPlugin.sip
+index 92d1044..1b13b91 100644
+--- a/src/bindings/python/sip/AbstractDataPlugin.sip
++++ b/src/bindings/python/sip/AbstractDataPlugin.sip
+@@ -42,7 +42,6 @@ signals:
+ void changedNumberOfItems (quint32 number);
+ public:
+ //ig PluginManager* pluginManager () const;
+- virtual Marble::RenderPlugin::RenderType renderType () const;
+ AbstractDataPlugin (const Marble::MarbleModel* marbleModel);
+ bool isInitialized () const;
+ void setDelegate (QDeclarativeComponent* delegate, QGraphicsItem* parent);
+diff --git a/src/bindings/python/sip/AbstractDataPluginItem.sip b/src/bindings/python/sip/AbstractDataPluginItem.sip
+index dc61a7a..7cabb01 100644
+--- a/src/bindings/python/sip/AbstractDataPluginItem.sip
++++ b/src/bindings/python/sip/AbstractDataPluginItem.sip
+@@ -43,7 +43,6 @@
+ #include <MapViewWidget.h>
+ #include <MapWizard.h>
+ #include <MarbleAboutDialog.h>
+-#include <MarbleAbstractRunner.h>
+ #include <MarbleControlBox.h>
+ #include <MarbleMap.h>
+ #include <MarbleModel.h>
+@@ -114,8 +113,6 @@ public:
+ sipType = sipType_Marble_GeoGraphicsScene;
+ else if (dynamic_cast<Marble::MapThemeManager*>(sipCpp))
+ sipType = sipType_Marble_MapThemeManager;
+- else if (dynamic_cast<Marble::MarbleAbstractRunner*>(sipCpp))
+- sipType = sipType_Marble_MarbleAbstractRunner;
+ else if (dynamic_cast<Marble::MarbleMap*>(sipCpp))
+ sipType = sipType_Marble_MarbleMap;
+ else if (dynamic_cast<Marble::MarbleModel*>(sipCpp))
+diff --git a/src/bindings/python/sip/AbstractDataPluginModel.sip b/src/bindings/python/sip/AbstractDataPluginModel.sip
+index 37aeda1..95a34c7 100644
+--- a/src/bindings/python/sip/AbstractDataPluginModel.sip
++++ b/src/bindings/python/sip/AbstractDataPluginModel.sip
+@@ -51,7 +51,6 @@ protected:
+ virtual void getAdditionalItems (const Marble::GeoDataLatLonAltBox& box, const Marble::MarbleModel* model, qint32 number = 10)=0;
+ public:
+ //ig explicit AbstractDataPluginModel (const QString& name, const PluginManager* pluginManager, QObject* parent /TransferThis/ = 0);
+- QList<Marble::AbstractDataPluginItem*> items (const Marble::ViewportParams* viewport, const Marble::MarbleModel* model, qint32 number = 10);
+ virtual void setFavoriteItems (const QStringList& list);
+ QStringList favoriteItems () const;
+ virtual void setFavoriteItemsOnly (bool favoriteOnly);
+diff --git a/src/bindings/python/sip/FileViewWidget.sip b/src/bindings/python/sip/FileViewWidget.sip
+index 154d6ca..23e3cc3 100644
+--- a/src/bindings/python/sip/FileViewWidget.sip
++++ b/src/bindings/python/sip/FileViewWidget.sip
+@@ -28,12 +28,9 @@ class FileViewWidget : QWidget
+ public:
+ FileViewWidget (QWidget* parent /TransferThis/ = 0, Qt::WindowFlags f = 0);
+ ~FileViewWidget ();
+- void enableFileViewActions ();
+ //ig void setFileViewModel (FileViewModel* model);
+ signals:
+ void centerOn (const Marble::GeoDataPlacemark&, bool animated);
+ void centerOn (const Marble::GeoDataLatLonBox&, bool animated);
+-public:
+- void setTreeModel (Marble::GeoDataTreeModel* model);
+ };
+ };
+diff --git a/src/bindings/python/sip/GeoDataAbstractView.sip b/src/bindings/python/sip/GeoDataAbstractView.sip
+index 1da2da9..65fb8da 100644
+--- a/src/bindings/python/sip/GeoDataAbstractView.sip
++++ b/src/bindings/python/sip/GeoDataAbstractView.sip
+@@ -19,7 +19,7 @@
+
+ namespace Marble
+ {
+-class GeoDataAbstractView : Marble::GeoDataObject
++class GeoDataAbstractView : Marble::GeoDataObject /Abstract/
+ {
+ %TypeHeaderCode
+ #include <GeoDataAbstractView.h>
+diff --git a/src/bindings/python/sip/GeoDataCoordinates.sip b/src/bindings/python/sip/GeoDataCoordinates.sip
+index cadfa27..950430a 100644
+--- a/src/bindings/python/sip/GeoDataCoordinates.sip
++++ b/src/bindings/python/sip/GeoDataCoordinates.sip
+@@ -76,7 +76,6 @@ public:
+ virtual void detach ();
+ virtual ~GeoDataCoordinates ();
+ bool isPole (Marble::Pole = Marble::AnyPole) const;
+- virtual bool operator != (const Marble::GeoDataCoordinates&) const;
+ enum BearingType
+ {
+ InitialBearing,
+diff --git a/src/bindings/python/sip/GeoDataFeature.sip b/src/bindings/python/sip/GeoDataFeature.sip
+index 048aeed..d8b5a08 100644
+--- a/src/bindings/python/sip/GeoDataFeature.sip
++++ b/src/bindings/python/sip/GeoDataFeature.sip
+@@ -28,7 +28,6 @@ public:
+ GeoDataFeature ();
+ GeoDataFeature (const QString& name);
+ GeoDataFeature (const Marble::GeoDataFeature& other);
+- bool operator == (const Marble::GeoDataFeature&) const;
+ Marble::EnumFeatureId featureId () const;
+
+ enum GeoDataVisualCategory
+@@ -219,8 +218,6 @@ public:
+ protected:
+ //ig GeoDataFeature (GeoDataFeaturePrivate* priv);
+ public:
+- Marble::GeoDataAbstractView abstractView () const;
+- void setAbstractView (const Marble::GeoDataAbstractView& abstractView);
+ //ig Marble::GeoDataTimeSpan& timeSpan () const;
+ //ig GeoDataTimeStamp& timeStamp () const;
+ //ig void setTimeStamp (GeoDataTimeStamp timeStamp);
+@@ -235,7 +232,6 @@ public:
+ void setZoomLevel (int index);
+ static QColor defaultLabelColor ();
+ static void setDefaultLabelColor (const QColor& color);
+- void setStyle (const Marble::GeoDataStyle* style);
+ void setStyleMap (const Marble::GeoDataStyleMap* map);
+ };
+ // GeoDataFeature
+diff --git a/src/bindings/python/sip/GeoDataLatLonAltBox.sip b/src/bindings/python/sip/GeoDataLatLonAltBox.sip
+index 60b44ca..f80aab0 100644
+--- a/src/bindings/python/sip/GeoDataLatLonAltBox.sip
++++ b/src/bindings/python/sip/GeoDataLatLonAltBox.sip
+@@ -28,7 +28,6 @@ class GeoDataLatLonAltBox : Marble::GeoDataLatLonBox
+ public:
+ GeoDataLatLonAltBox ();
+ GeoDataLatLonAltBox (const Marble::GeoDataLatLonAltBox& other);
+- GeoDataLatLonAltBox (const Marble::GeoDataLatLonBox& other);
+ qreal minAltitude () const;
+ void setMinAltitude (const qreal minAltitude);
+ qreal maxAltitude () const;
+@@ -43,7 +42,6 @@ public:
+ bool isNull () const;
+ virtual void pack (QDataStream& stream) const;
+ virtual void unpack (QDataStream& stream);
+- GeoDataLatLonAltBox (const Marble::GeoDataCoordinates& coordinates);
+ virtual ~GeoDataLatLonAltBox ();
+ virtual const char* nodeType () const;
+ virtual Marble::GeoDataCoordinates center () const;
+diff --git a/src/bindings/python/sip/GeoDataObject.sip b/src/bindings/python/sip/GeoDataObject.sip
+index 6071ee8..44b39c7 100644
+--- a/src/bindings/python/sip/GeoDataObject.sip
++++ b/src/bindings/python/sip/GeoDataObject.sip
+@@ -18,7 +18,7 @@
+ namespace Marble
+ {
+
+-class GeoDataObject : Marble::GeoNode, Marble::Serializable
++class GeoDataObject : Marble::GeoNode, Marble::Serializable /Abstract/
+ {
+ %TypeHeaderCode
+ #include <GeoDataObject.h>
+@@ -34,7 +34,10 @@ public:
+ virtual void pack (QDataStream& stream) const;
+ virtual void unpack (QDataStream& steam);
+ virtual ~GeoDataObject ();
+- virtual const char* nodeType () const;
++
++// no impl.
++//ig virtual const char* nodeType () const;
++
+ virtual Marble::GeoDataObject* parent () const;
+ virtual void setParent (Marble::GeoDataObject* parent);
+ };
+diff --git a/src/bindings/python/sip/GeoDataPlacemark.sip b/src/bindings/python/sip/GeoDataPlacemark.sip
+index 7a3228f..627b9e5 100644
+--- a/src/bindings/python/sip/GeoDataPlacemark.sip
++++ b/src/bindings/python/sip/GeoDataPlacemark.sip
+@@ -32,7 +32,6 @@ public:
+ Marble::GeoDataCoordinates coordinate (const QDateTime& dateTime = QDateTime(), bool* iconAtCoordinates = 0) const;
+ Marble::GeoDataGeometry* geometry () const;
+ //ig void coordinate (qreal& longitude, qreal& latitude, qreal& altitude) const;
+- void setCoordinate (qreal longitude, qreal latitude, qreal altitude = 0, Marble::GeoDataPoint::Unit _unit = Marble::GeoDataPoint::Radian);
+ void setCoordinate (const Marble::GeoDataPoint& point);
+ qreal area () const;
+ void setArea (qreal area);
+@@ -49,8 +48,6 @@ public:
+ void setGeometry (Marble::GeoDataGeometry* entry);
+ const QString state () const;
+ void setState (const QString& state);
+- Marble::GeoDataLookAt* lookAt () const;
+- void setLookAt (Marble::GeoDataLookAt* lookAt);
+ };
+ // GeoDataPlacemark
+
+diff --git a/src/bindings/python/sip/GeoDataPoint.sip b/src/bindings/python/sip/GeoDataPoint.sip
+index 0f17a69..296760c 100644
+--- a/src/bindings/python/sip/GeoDataPoint.sip
++++ b/src/bindings/python/sip/GeoDataPoint.sip
+@@ -32,7 +32,6 @@ public:
+ GeoDataPoint (const Marble::GeoDataPoint& other);
+ GeoDataPoint (const Marble::GeoDataGeometry& other);
+ GeoDataPoint ();
+- GeoDataPoint (qreal _lon, qreal _lat, qreal alt = 0, Marble::GeoDataPoint::Unit _unit = Marble::GeoDataPoint::Radian, int _detail = 0);
+ typedef QVector<Marble::GeoDataPoint> Vector;
+
+ virtual void pack (QDataStream& stream) const;
+diff --git a/src/bindings/python/sip/GeoGraphicsItem.sip b/src/bindings/python/sip/GeoGraphicsItem.sip
+index eff28d5..39c7372 100644
+--- a/src/bindings/python/sip/GeoGraphicsItem.sip
++++ b/src/bindings/python/sip/GeoGraphicsItem.sip
+@@ -28,8 +28,7 @@ class GeoGraphicsItem
+ %End
+
+ public:
+- GeoGraphicsItem ();
+-
++ GeoGraphicsItem (const Marble::GeoDataFeature *x);
+ virtual ~GeoGraphicsItem ();
+ enum GeoGraphicsItemFlag
+ {
+diff --git a/src/bindings/python/sip/GeoGraphicsScene.sip b/src/bindings/python/sip/GeoGraphicsScene.sip
+index 420216d..5ad03e1 100644
+--- a/src/bindings/python/sip/GeoGraphicsScene.sip
++++ b/src/bindings/python/sip/GeoGraphicsScene.sip
+@@ -28,7 +28,6 @@ class GeoGraphicsScene : QObject
+ public:
+ GeoGraphicsScene (QObject* parent /TransferThis/ = 0);
+ ~GeoGraphicsScene ();
+- void removeItem (Marble::GeoGraphicsItem* item);
+ void clear ();
+ QList<Marble::GeoGraphicsItem*> items (const Marble::GeoDataLatLonAltBox& box, int maxZoomLevel) const;
+ //ig static int s_tileZoomLevel;
+diff --git a/src/bindings/python/sip/GeoPainter.sip b/src/bindings/python/sip/GeoPainter.sip
+index eb95e62..75295c2 100644
+--- a/src/bindings/python/sip/GeoPainter.sip
++++ b/src/bindings/python/sip/GeoPainter.sip
+@@ -18,28 +18,24 @@
+ namespace Marble
+ {
+
+-class GeoPainter : Marble::ClipPainter
++class GeoPainter : Marble::ClipPainter /Abstract/
+ {
+ %TypeHeaderCode
+ #include <GeoPainter.h>
+ %End
+
+ public:
+- void autoMapQuality ();
+ Marble::MapQuality mapQuality () const;
+ void drawAnnotation (const Marble::GeoDataCoordinates& position, const QString& text, QSizeF bubbleSize = QSizeF(130,100), qreal bubbleOffsetX = -10, qreal bubbleOffsetY = -30, qreal xRnd = 5, qreal yRnd = 5);
+ void drawPoint (const Marble::GeoDataCoordinates& position);
+- void drawPoints (const Marble::GeoDataCoordinates* positions, int pointCount);
+ void drawText (const Marble::GeoDataCoordinates& position, const QString& text);
+ void drawEllipse (const Marble::GeoDataCoordinates& centerPosition, qreal width, qreal height, bool isGeoProjected = 0);
+ void drawImage (const Marble::GeoDataCoordinates& centerPosition, const QImage& image);
+ void drawPixmap (const Marble::GeoDataCoordinates& centerPosition, const QPixmap& pixmap);
+- void drawLine (const Marble::GeoDataCoordinates& startPosition, const Marble::GeoDataCoordinates& endPosition, bool isGeoProjected = 0);
+ void drawPolyline (const Marble::GeoDataLineString& lineString, const QString& labelText = QString(), Marble::LabelPositionFlags labelPositionFlags = Marble::LineCenter);
+ void drawPolygon (const Marble::GeoDataLinearRing& linearRing, Qt::FillRule fillRule = Qt::OddEvenFill);
+ void drawPolygon (const Marble::GeoDataPolygon& polygon, Qt::FillRule fillRule = Qt::OddEvenFill);
+ void drawRect (const Marble::GeoDataCoordinates& centerPosition, qreal width, qreal height, bool isGeoProjected = 0);
+- void drawRoundRect (const Marble::GeoDataCoordinates& centerPosition, int width, int height, int xRnd = 25, int yRnd = 25, bool isGeoProjected = 0);
+ void drawText (int x, int y, const QString& text);
+ void drawText (const QPointF& position, const QString& text);
+ void drawText (const QPoint& position, const QString& text);
+@@ -62,11 +58,9 @@ public:
+ void drawPoint (const Marble::GeoDataPoint& point);
+ void drawImage (const QRect& rect, const QImage& image);
+ void drawImage (const QRectF& rect, const QImage& image);
+- GeoPainter (QPaintDevice* paintDevice, const Marble::ViewportParams* viewportParams, Marble::MapQuality mapQuality = Marble::NormalQuality, bool clip = 1);
+ QRegion regionFromPoint (const Marble::GeoDataCoordinates& position, qreal strokeWidth = 3) const;
+ QRegion regionFromPoint (const Marble::GeoDataPoint& point, qreal strokeWidth = 3) const;
+ QRegion regionFromEllipse (const Marble::GeoDataCoordinates& centerPosition, qreal width, qreal height, bool isGeoProjected = 0, qreal strokeWidth = 3) const;
+- QRegion regionFromLine (const Marble::GeoDataCoordinates& startPosition, const Marble::GeoDataCoordinates& endPosition, bool isGeoProjected = 0, qreal strokeWidth = 3) const;
+ QRegion regionFromPolyline (const Marble::GeoDataLineString& lineString, qreal strokeWidth = 3) const;
+ QRegion regionFromPolygon (const Marble::GeoDataLinearRing& linearRing, Qt::FillRule fillRule, qreal strokeWidth = 3) const;
+ QRegion regionFromRect (const Marble::GeoDataCoordinates& centerPosition, qreal width, qreal height, bool isGeoProjected = 0, qreal strokeWidth = 3) const;
+diff --git a/src/bindings/python/sip/MarbleGraphicsItem.sip b/src/bindings/python/sip/MarbleGraphicsItem.sip
+index 4c447eb..a97b300 100644
+--- a/src/bindings/python/sip/MarbleGraphicsItem.sip
++++ b/src/bindings/python/sip/MarbleGraphicsItem.sip
+@@ -49,7 +49,6 @@ protected:
+ public:
+ virtual ~MarbleGraphicsItem ();
+ bool contains (const QPointF& point) const;
+- QRectF containsRect (const QPointF& point) const;
+ Marble::AbstractMarbleGraphicsLayout* layout () const;
+ void setLayout (Marble::AbstractMarbleGraphicsLayout* layout);
+ bool visible () const;
+diff --git a/src/bindings/python/sip/MarbleMap.sip b/src/bindings/python/sip/MarbleMap.sip
+index 34aad1f..8d0dcb9 100644
+--- a/src/bindings/python/sip/MarbleMap.sip
++++ b/src/bindings/python/sip/MarbleMap.sip
+@@ -103,7 +103,7 @@ protected:
+
+ public:
+ virtual ~MarbleMap ();
+- void reload () const;
++ void reload ();
+ Marble::ViewportParams* viewport ();
+ Marble::MapQuality mapQuality () const;
+ void setSize (const QSize& size);
+@@ -140,11 +140,9 @@ public:
+ //ig const Marble::ViewportParams* viewport () const;
+ bool showSunShading () const;
+ bool showCityLights () const;
+- bool showSunInZenith () const;
+ void paint (Marble::GeoPainter& painter, const QRect& dirtyRect);
+ void setShowSunShading (bool visible);
+ void setShowCityLights (bool visible);
+- void setShowSunInZenith (bool visible);
+ signals:
+ void radiusChanged (int radius);
+ public:
+diff --git a/src/bindings/python/sip/MarbleModel.sip b/src/bindings/python/sip/MarbleModel.sip
+index 028d81f..93139a9 100644
+--- a/src/bindings/python/sip/MarbleModel.sip
++++ b/src/bindings/python/sip/MarbleModel.sip
+@@ -26,9 +26,6 @@ class MarbleModel : QObject
+
+ public:
+ QString mapThemeId () const;
+- void addPlacemarkFile (const QString& filename);
+- void addPlacemarkData (const QString& data, const QString& key = "data");
+- void removePlacemarkKey (const QString& key);
+ qreal planetRadius () const;
+ QString planetName () const;
+ const Marble::SunLocator* sunLocator () const;
+@@ -44,7 +41,6 @@ public:
+ virtual ~MarbleModel ();
+ //ig Marble::GeoSceneDocument* mapTheme () const;
+ //ig HttpDownloadManager* downloadManager () const;
+- void openGpxFile (const QString& filename);
+ void setHome (qreal lon, qreal lat, int zoom = 1050);
+ void setHome (const Marble::GeoDataCoordinates& homePoint, int zoom = 1050);
+ void addGeoDataFile (const QString& filename);
+diff --git a/src/bindings/python/sip/MarbleWidget.sip b/src/bindings/python/sip/MarbleWidget.sip
+index 9269971..f67b4a3 100644
+--- a/src/bindings/python/sip/MarbleWidget.sip
++++ b/src/bindings/python/sip/MarbleWidget.sip
+@@ -172,11 +172,9 @@ public:
+ //ig MarbleWidgetPopupMenu* popupMenu ();
+ bool showSunShading () const;
+ bool showCityLights () const;
+- bool showSunInZenith () const;
+ void centerOn (const Marble::GeoDataPlacemark& placemark, bool animated = 0);
+ void setShowSunShading (bool visible);
+ void setShowCityLights (bool visible);
+- void setShowSunInZenith (bool visible);
+ QRegion mapRegion () const;
+ bool screenCoordinates (qreal lon, qreal lat, qreal& x, qreal& y) const;
+ bool geoCoordinates (int x, int y, qreal& lon, qreal& lat, Marble::GeoDataCoordinates::Unit = Marble::GeoDataCoordinates::Degree) const;
+diff --git a/src/bindings/python/sip/ParseRunnerPlugin.sip b/src/bindings/python/sip/ParseRunnerPlugin.sip
+index fa1b6b9..24da447 100644
+--- a/src/bindings/python/sip/ParseRunnerPlugin.sip
++++ b/src/bindings/python/sip/ParseRunnerPlugin.sip
+@@ -19,7 +19,7 @@
+
+ namespace Marble
+ {
+-class ParseRunnerPlugin : QObject, Marble::PluginInterface
++class ParseRunnerPlugin : QObject, Marble::PluginInterface /Abstract/
+ {
+ %TypeHeaderCode
+ #include <ParseRunnerPlugin.h>
+@@ -30,7 +30,6 @@ public:
+ virtual ~ParseRunnerPlugin ();
+ virtual QString fileFormatDescription () const=0;
+ virtual QStringList fileExtensions () const=0;
+- virtual Marble::MarbleAbstractRunner* newRunner () const=0;
+ virtual QIcon icon () const;
+ };
+ };
+diff --git a/src/bindings/python/sip/RenderPlugin.sip b/src/bindings/python/sip/RenderPlugin.sip
+index 7570fa2..f7bed99 100644
+--- a/src/bindings/python/sip/RenderPlugin.sip
++++ b/src/bindings/python/sip/RenderPlugin.sip
+@@ -40,19 +40,11 @@ protected:
+
+ public:
+ virtual ~RenderPlugin ();
+- virtual QList<QActionGroup*>* actionGroups () const;
+- virtual QList<QActionGroup*>* toolbarActionGroups () const;
+ virtual QHash<QString,QVariant> settings () const;
+ signals:
+ void settingsChanged (QString nameId);
+ void actionGroupsChanged ();
+ public:
+- enum RenderType
+- {
+- Unknown,
+- Online
+- };
+- virtual Marble::RenderPlugin::RenderType renderType () const;
+ const Marble::MarbleModel* marbleModel () const;
+ void restoreDefaultSettings ();
+ signals:
+diff --git a/src/bindings/python/sip/ReverseGeocodingRunnerPlugin.sip b/src/bindings/python/sip/ReverseGeocodingRunnerPlugin.sip
+index 751fe55..4642de9 100644
+--- a/src/bindings/python/sip/ReverseGeocodingRunnerPlugin.sip
++++ b/src/bindings/python/sip/ReverseGeocodingRunnerPlugin.sip
+@@ -19,7 +19,7 @@
+
+ namespace Marble
+ {
+-class ReverseGeocodingRunnerPlugin : QObject, Marble::PluginInterface
++class ReverseGeocodingRunnerPlugin : QObject, Marble::PluginInterface /Abstract/
+ {
+ %TypeHeaderCode
+ #include <ReverseGeocodingRunnerPlugin.h>
+@@ -29,7 +29,6 @@ public:
+ explicit ReverseGeocodingRunnerPlugin (QObject* parent /TransferThis/ = 0);
+ virtual ~ReverseGeocodingRunnerPlugin ();
+ virtual QString guiString () const=0;
+- virtual Marble::MarbleAbstractRunner* newRunner () const=0;
+ bool supportsCelestialBody (const QString& celestialBodyId) const;
+ bool canWorkOffline () const;
+ virtual bool canWork () const;
+diff --git a/src/bindings/python/sip/RoutingRunnerPlugin.sip b/src/bindings/python/sip/RoutingRunnerPlugin.sip
+index 82e3954..b8381eb 100644
+--- a/src/bindings/python/sip/RoutingRunnerPlugin.sip
++++ b/src/bindings/python/sip/RoutingRunnerPlugin.sip
+@@ -19,7 +19,7 @@
+
+ namespace Marble
+ {
+-class RoutingRunnerPlugin : QObject, Marble::PluginInterface
++class RoutingRunnerPlugin : QObject, Marble::PluginInterface /Abstract/
+ {
+ %TypeHeaderCode
+ #include <RoutingRunnerPlugin.h>
+@@ -29,7 +29,6 @@ public:
+ explicit RoutingRunnerPlugin (QObject* parent /TransferThis/ = 0);
+ virtual ~RoutingRunnerPlugin ();
+ virtual QString guiString () const=0;
+- virtual Marble::MarbleAbstractRunner* newRunner () const=0;
+ bool supportsCelestialBody (const QString& celestialBodyId) const;
+ bool canWorkOffline () const;
+ virtual bool canWork () const;
+diff --git a/src/bindings/python/sip/SearchRunnerPlugin.sip b/src/bindings/python/sip/SearchRunnerPlugin.sip
+index 090ed26..2924e79 100644
+--- a/src/bindings/python/sip/SearchRunnerPlugin.sip
++++ b/src/bindings/python/sip/SearchRunnerPlugin.sip
+@@ -19,7 +19,7 @@
+
+ namespace Marble
+ {
+-class SearchRunnerPlugin : QObject, Marble::PluginInterface
++class SearchRunnerPlugin : QObject, Marble::PluginInterface /Abstract/
+ {
+ %TypeHeaderCode
+ #include <SearchRunnerPlugin.h>
+@@ -29,7 +29,6 @@ public:
+ explicit SearchRunnerPlugin (QObject* parent /TransferThis/ = 0);
+ virtual ~SearchRunnerPlugin ();
+ virtual QString guiString () const=0;
+- virtual Marble::MarbleAbstractRunner* newRunner () const=0;
+ bool supportsCelestialBody (const QString& celestialBodyId) const;
+ bool canWorkOffline () const;
+ virtual bool canWork () const;
+diff --git a/src/bindings/python/sip/marblemod.sip b/src/bindings/python/sip/marblemod.sip
+index f447ae9..9dc7f09 100644
+--- a/src/bindings/python/sip/marblemod.sip
++++ b/src/bindings/python/sip/marblemod.sip
+@@ -97,7 +97,6 @@
+ %Include MapViewWidget.sip
+ %Include MapWizard.sip
+ %Include MarbleAboutDialog.sip
+-%Include MarbleAbstractRunner.sip
+ %Include MarbleControlBox.sip
+ %Include MarbleDirs.sip
+ %Include MarbleGlobal.sip
+--
+1.8.3.1
+
diff --git a/0002-Python-bindings-update.patch b/0002-Python-bindings-update.patch
new file mode 100644
index 0000000..3534363
--- /dev/null
+++ b/0002-Python-bindings-update.patch
@@ -0,0 +1,2011 @@
+From 909b7e9bfb425106d5afdc0fe55fd9e1f96f51b5 Mon Sep 17 00:00:00 2001
+From: Simon Edwards <simon at simonzone.com>
+Date: Sun, 11 Aug 2013 11:48:37 +0200
+Subject: [PATCH 2/2] Python bindings update.
+
+Phase 2: update from current header files.
+---
+ src/bindings/python/sip/AbstractDataPlugin.sip | 8 +-
+ src/bindings/python/sip/AbstractDataPluginItem.sip | 18 +++-
+ .../python/sip/AbstractDataPluginModel.sip | 12 ++-
+ src/bindings/python/sip/AbstractFloatItem.sip | 6 +-
+ src/bindings/python/sip/AbstractProjection.sip | 2 +-
+ src/bindings/python/sip/AlternativeRoutesModel.sip | 1 +
+ src/bindings/python/sip/BillboardGraphicsItem.sip | 3 +
+ src/bindings/python/sip/FileViewWidget.sip | 3 +-
+ src/bindings/python/sip/FrameGraphicsItem.sip | 3 +-
+ src/bindings/python/sip/GeoDataAbstractView.sip | 8 ++
+ src/bindings/python/sip/GeoDataBalloonStyle.sip | 49 +++++++++++
+ src/bindings/python/sip/GeoDataColorStyle.sip | 1 +
+ src/bindings/python/sip/GeoDataContainer.sip | 3 +-
+ src/bindings/python/sip/GeoDataCoordinates.sip | 6 +-
+ src/bindings/python/sip/GeoDataDocument.sip | 6 ++
+ src/bindings/python/sip/GeoDataFeature.sip | 10 ++-
+ src/bindings/python/sip/GeoDataGroundOverlay.sip | 22 +++++
+ src/bindings/python/sip/GeoDataIconStyle.sip | 2 +
+ src/bindings/python/sip/GeoDataItemIcon.sip | 50 +++++++++++
+ src/bindings/python/sip/GeoDataLatLonAltBox.sip | 4 +
+ src/bindings/python/sip/GeoDataLineString.sip | 6 ++
+ src/bindings/python/sip/GeoDataListStyle.sip | 70 ++++++++++++++++
+ src/bindings/python/sip/GeoDataLookAt.sip | 1 +
+ src/bindings/python/sip/GeoDataObject.sip | 1 +
+ src/bindings/python/sip/GeoDataPlacemark.sip | 4 +
+ src/bindings/python/sip/GeoDataPoint.sip | 3 +
+ src/bindings/python/sip/GeoDataPolygon.sip | 22 ++++-
+ src/bindings/python/sip/GeoDataStyle.sip | 6 ++
+ src/bindings/python/sip/GeoDataTimePrimitive.sip | 36 ++++++++
+ src/bindings/python/sip/GeoDataTimeSpan.sip | 40 +++++++++
+ src/bindings/python/sip/GeoDataTimeStamp.sip | 47 +++++++++++
+ src/bindings/python/sip/GeoDataTreeModel.sip | 6 +-
+ src/bindings/python/sip/GeoDocument.sip | 33 +++++++-
+ src/bindings/python/sip/GeoGraphicsItem.sip | 4 +-
+ src/bindings/python/sip/GeoGraphicsScene.sip | 3 +-
+ src/bindings/python/sip/GeoPainter.sip | 21 +----
+ src/bindings/python/sip/GeoWriter.sip | 2 +-
+ src/bindings/python/sip/LayerInterface.sip | 2 +-
+ src/bindings/python/sip/MapThemeDownloadDialog.sip | 32 +++++++
+ src/bindings/python/sip/MapThemeManager.sip | 1 +
+ src/bindings/python/sip/MapViewWidget.sip | 4 +
+ src/bindings/python/sip/MarbleAboutDialog.sip | 8 ++
+ src/bindings/python/sip/MarbleColors.sip | 97 ++++++++++++++++++++++
+ src/bindings/python/sip/MarbleGlobal.sip | 3 +-
+ src/bindings/python/sip/MarbleGraphicsItem.sip | 2 +-
+ src/bindings/python/sip/MarbleMap.sip | 4 +
+ src/bindings/python/sip/MarbleModel.sip | 7 +-
+ src/bindings/python/sip/MarbleWebView.sip | 19 +++++
+ src/bindings/python/sip/MarbleWidget.sip | 8 ++
+ src/bindings/python/sip/ParseRunnerPlugin.sip | 1 +
+ src/bindings/python/sip/ParsingRunner.sip | 34 ++++++++
+ src/bindings/python/sip/Planet.sip | 4 +
+ src/bindings/python/sip/QtMarbleConfigDialog.sip | 1 +
+ src/bindings/python/sip/RenderPlugin.sip | 15 ++++
+ src/bindings/python/sip/ReverseGeocodingRunner.sip | 37 +++++++++
+ .../python/sip/ReverseGeocodingRunnerPlugin.sip | 2 +
+ src/bindings/python/sip/RoutingModel.sip | 2 +-
+ src/bindings/python/sip/RoutingRunner.sip | 37 +++++++++
+ src/bindings/python/sip/RoutingRunnerPlugin.sip | 2 +
+ src/bindings/python/sip/ScreenGraphicsItem.sip | 3 +-
+ src/bindings/python/sip/SearchRunner.sip | 38 +++++++++
+ src/bindings/python/sip/SearchRunnerPlugin.sip | 2 +
+ src/bindings/python/sip/TileId.sip | 47 +++++++++++
+ src/bindings/python/sip/ViewportParams.sip | 1 +
+ src/bindings/python/sip/WikipediaService.sip | 19 +++++
+ src/bindings/python/sip/marblemod.sip | 20 ++++-
+ 66 files changed, 919 insertions(+), 55 deletions(-)
+ create mode 100644 src/bindings/python/sip/GeoDataBalloonStyle.sip
+ create mode 100644 src/bindings/python/sip/GeoDataItemIcon.sip
+ create mode 100644 src/bindings/python/sip/GeoDataListStyle.sip
+ create mode 100644 src/bindings/python/sip/GeoDataTimePrimitive.sip
+ create mode 100644 src/bindings/python/sip/GeoDataTimeSpan.sip
+ create mode 100644 src/bindings/python/sip/GeoDataTimeStamp.sip
+ create mode 100644 src/bindings/python/sip/MapThemeDownloadDialog.sip
+ create mode 100644 src/bindings/python/sip/MarbleColors.sip
+ create mode 100644 src/bindings/python/sip/MarbleWebView.sip
+ create mode 100644 src/bindings/python/sip/ParsingRunner.sip
+ create mode 100644 src/bindings/python/sip/ReverseGeocodingRunner.sip
+ create mode 100644 src/bindings/python/sip/RoutingRunner.sip
+ create mode 100644 src/bindings/python/sip/SearchRunner.sip
+ create mode 100644 src/bindings/python/sip/TileId.sip
+ create mode 100644 src/bindings/python/sip/WikipediaService.sip
+
+diff --git a/src/bindings/python/sip/AbstractDataPlugin.sip b/src/bindings/python/sip/AbstractDataPlugin.sip
+index 1b13b91..4fcc0d6 100644
+--- a/src/bindings/python/sip/AbstractDataPlugin.sip
++++ b/src/bindings/python/sip/AbstractDataPlugin.sip
+@@ -41,17 +41,19 @@ public:
+ signals:
+ void changedNumberOfItems (quint32 number);
+ public:
+-//ig PluginManager* pluginManager () const;
+ AbstractDataPlugin (const Marble::MarbleModel* marbleModel);
+ bool isInitialized () const;
+- void setDelegate (QDeclarativeComponent* delegate, QGraphicsItem* parent);
++// FIXME
++//ig void setDelegate (QDeclarativeComponent* delegate, QGraphicsItem* parent);
+ void setFavoriteItemsOnly (bool favoriteOnly);
+ bool isFavoriteItemsOnly () const;
+ QObject* favoritesModel ();
+- void handleViewportChange (Marble::ViewportParams* viewport);
+ signals:
+ void favoriteItemsOnlyChanged ();
+ void favoritesModelChanged ();
++public:
++ virtual Marble::RenderPlugin::RenderType renderType () const;
++ void handleViewportChange (const Marble::ViewportParams* viewport);
+ };
+ // AbstractDataPlugin
+
+diff --git a/src/bindings/python/sip/AbstractDataPluginItem.sip b/src/bindings/python/sip/AbstractDataPluginItem.sip
+index 7cabb01..604b3ed 100644
+--- a/src/bindings/python/sip/AbstractDataPluginItem.sip
++++ b/src/bindings/python/sip/AbstractDataPluginItem.sip
+@@ -39,6 +39,7 @@
+ #include <LatLonBoxWidget.h>
+ #include <LatLonEdit.h>
+ #include <LegendWidget.h>
++#include <MapThemeDownloadDialog.h>
+ #include <MapThemeManager.h>
+ #include <MapViewWidget.h>
+ #include <MapWizard.h>
+@@ -51,14 +52,18 @@
+ #include <MarbleWidget.h>
+ #include <NavigationWidget.h>
+ #include <ParseRunnerPlugin.h>
++#include <ParsingRunner.h>
+ #include <PluginAboutDialog.h>
+ #include <PositionTracking.h>
+ #include <QtMarbleConfigDialog.h>
+ #include <RenderPlugin.h>
++#include <ReverseGeocodingRunner.h>
+ #include <ReverseGeocodingRunnerPlugin.h>
+ #include <routing/RouteRequest.h>
+ #include <routing/RoutingModel.h>
++#include <RoutingRunner.h>
+ #include <RoutingRunnerPlugin.h>
++#include <SearchRunner.h>
+ #include <SearchRunnerPlugin.h>
+ #include <SunLocator.h>
+ #include <TileCreator.h>
+@@ -86,7 +91,6 @@ public:
+ void setAddedAngularResolution (qreal resolution);
+ virtual QAction* action ()=0;
+ virtual QString itemType () const=0;
+- virtual bool initialized ()=0;
+ virtual void addDownloadedFile (const QString& url, const QString& type)=0;
+ //ig virtual bool operator < (const Marble::AbstractDataPluginItem* other) const;
+
+@@ -121,6 +125,8 @@ public:
+ sipType = sipType_Marble_MarbleRunnerManager;
+ else if (dynamic_cast<Marble::ParseRunnerPlugin*>(sipCpp))
+ sipType = sipType_Marble_ParseRunnerPlugin;
++ else if (dynamic_cast<Marble::ParsingRunner*>(sipCpp))
++ sipType = sipType_Marble_ParsingRunner;
+ else if (dynamic_cast<Marble::PositionTracking*>(sipCpp))
+ sipType = sipType_Marble_PositionTracking;
+ else if (dynamic_cast<Marble::RenderPlugin*>(sipCpp))
+@@ -131,12 +137,18 @@ public:
+ else if (dynamic_cast<Marble::AbstractFloatItem*>(sipCpp))
+ sipType = sipType_Marble_AbstractFloatItem;
+ }
++ else if (dynamic_cast<Marble::ReverseGeocodingRunner*>(sipCpp))
++ sipType = sipType_Marble_ReverseGeocodingRunner;
+ else if (dynamic_cast<Marble::ReverseGeocodingRunnerPlugin*>(sipCpp))
+ sipType = sipType_Marble_ReverseGeocodingRunnerPlugin;
+ else if (dynamic_cast<Marble::RouteRequest*>(sipCpp))
+ sipType = sipType_Marble_RouteRequest;
++ else if (dynamic_cast<Marble::RoutingRunner*>(sipCpp))
++ sipType = sipType_Marble_RoutingRunner;
+ else if (dynamic_cast<Marble::RoutingRunnerPlugin*>(sipCpp))
+ sipType = sipType_Marble_RoutingRunnerPlugin;
++ else if (dynamic_cast<Marble::SearchRunner*>(sipCpp))
++ sipType = sipType_Marble_SearchRunner;
+ else if (dynamic_cast<Marble::SearchRunnerPlugin*>(sipCpp))
+ sipType = sipType_Marble_SearchRunnerPlugin;
+ else if (dynamic_cast<Marble::SunLocator*>(sipCpp))
+@@ -175,6 +187,8 @@ public:
+ sipType = sipType_Marble_TileLevelRangeWidget;
+ else if (dynamic_cast<Marble::DownloadRegionDialog*>(sipCpp))
+ sipType = sipType_Marble_DownloadRegionDialog;
++ else if (dynamic_cast<Marble::MapThemeDownloadDialog*>(sipCpp))
++ sipType = sipType_Marble_MapThemeDownloadDialog;
+ else if (dynamic_cast<Marble::MarbleAboutDialog*>(sipCpp))
+ sipType = sipType_Marble_MarbleAboutDialog;
+ else if (dynamic_cast<Marble::PluginAboutDialog*>(sipCpp))
+@@ -206,6 +220,8 @@ public:
+ signals:
+ void idChanged ();
+ void stickyChanged ();
++public:
++ virtual bool initialized () const=0;
+ };
+ // AbstractDataPluginItem
+
+diff --git a/src/bindings/python/sip/AbstractDataPluginModel.sip b/src/bindings/python/sip/AbstractDataPluginModel.sip
+index 95a34c7..52d1f9d 100644
+--- a/src/bindings/python/sip/AbstractDataPluginModel.sip
++++ b/src/bindings/python/sip/AbstractDataPluginModel.sip
+@@ -47,10 +47,7 @@ protected:
+ bool itemExists (const QString& id) const;
+ signals:
+ void itemsUpdated ();
+-protected:
+- virtual void getAdditionalItems (const Marble::GeoDataLatLonAltBox& box, const Marble::MarbleModel* model, qint32 number = 10)=0;
+ public:
+-//ig explicit AbstractDataPluginModel (const QString& name, const PluginManager* pluginManager, QObject* parent /TransferThis/ = 0);
+ virtual void setFavoriteItems (const QStringList& list);
+ QStringList favoriteItems () const;
+ virtual void setFavoriteItemsOnly (bool favoriteOnly);
+@@ -63,10 +60,17 @@ public:
+ QObject* favoritesModel ();
+ void addItemsToList (const QList<Marble::AbstractDataPluginItem*>& items);
+ protected:
+- virtual void getItem (const QString& id, const Marble::MarbleModel* model);
+ void registerItemProperties (const QMetaObject& item);
+ signals:
+ void favoriteItemsOnlyChanged ();
++public:
++ explicit AbstractDataPluginModel (const QString& name, const Marble::MarbleModel* marbleModel, QObject* parent /TransferThis/ = 0);
++ const Marble::MarbleModel* marbleModel () const;
++ QList<Marble::AbstractDataPluginItem*> items (const Marble::ViewportParams* viewport, qint32 number = 10);
++protected:
++ virtual void getAdditionalItems (const Marble::GeoDataLatLonAltBox& box, qint32 number = 10)=0;
++ virtual void getItem (const QString& id);
++ void downloadItem (const QUrl& url, const QString& type, Marble::AbstractDataPluginItem* item);
+ };
+ // AbstractDataPluginModel
+
+diff --git a/src/bindings/python/sip/AbstractFloatItem.sip b/src/bindings/python/sip/AbstractFloatItem.sip
+index 16d7f56..aa1242b 100644
+--- a/src/bindings/python/sip/AbstractFloatItem.sip
++++ b/src/bindings/python/sip/AbstractFloatItem.sip
+@@ -44,7 +44,6 @@ public:
+ bool render (Marble::GeoPainter* painter, Marble::ViewportParams* viewport, const QString& renderPos = "FLOAT_ITEM", Marble::GeoSceneLayer* layer = 0);
+ void setVisible (bool visible);
+ bool visible () const;
+- bool positionLocked ();
+ void show ();
+ void hide ();
+ protected:
+@@ -55,6 +54,11 @@ public:
+ explicit AbstractFloatItem (const Marble::MarbleModel* marbleModel, const QPointF& point = QPointF(10.0,10.0), const QSizeF& size = QSizeF(150.0,50.0));
+ protected:
+ virtual void changeViewport (Marble::ViewportParams* viewport);
++public:
++ virtual QHash<QString,QVariant> settings () const;
++ virtual void setSettings (const QHash<QString,QVariant>& settings);
++ virtual Marble::RenderPlugin::RenderType renderType () const;
++ bool positionLocked () const;
+ };
+ // AbstractFloatItem
+
+diff --git a/src/bindings/python/sip/AbstractProjection.sip b/src/bindings/python/sip/AbstractProjection.sip
+index 29ccbe8..33c8e52 100644
+--- a/src/bindings/python/sip/AbstractProjection.sip
++++ b/src/bindings/python/sip/AbstractProjection.sip
+@@ -72,6 +72,6 @@ public:
+ virtual bool geoCoordinates (const int x, const int y, const Marble::ViewportParams* viewport, qreal& lon, qreal& lat, Marble::GeoDataCoordinates::Unit unit = Marble::GeoDataCoordinates::Degree) const=0;
+ virtual Marble::GeoDataLatLonAltBox latLonAltBox (const QRect& screenRect, const Marble::ViewportParams* viewport) const;
+ protected:
+-//ig AbstractProjection (AbstractProjectionPrivate& dd);
++//ig AbstractProjection (AbstractProjectionPrivate* dd);
+ };
+ };
+diff --git a/src/bindings/python/sip/AlternativeRoutesModel.sip b/src/bindings/python/sip/AlternativeRoutesModel.sip
+index 6b0df79..47a466b 100644
+--- a/src/bindings/python/sip/AlternativeRoutesModel.sip
++++ b/src/bindings/python/sip/AlternativeRoutesModel.sip
+@@ -47,5 +47,6 @@ public:
+ static QVector<qreal> deviation (const Marble::GeoDataDocument* routeA, const Marble::GeoDataDocument* routeB);
+ signals:
+ void currentRouteChanged (Marble::GeoDataDocument* newRoute);
++ void currentRouteChanged (int index);
+ };
+ };
+diff --git a/src/bindings/python/sip/BillboardGraphicsItem.sip b/src/bindings/python/sip/BillboardGraphicsItem.sip
+index 536f3f0..7ec7f66 100644
+--- a/src/bindings/python/sip/BillboardGraphicsItem.sip
++++ b/src/bindings/python/sip/BillboardGraphicsItem.sip
+@@ -31,5 +31,8 @@ public:
+ void setCoordinate (const Marble::GeoDataCoordinates& coordinates);
+ QList<QPointF> positions () const;
+ QList<QRectF> boundingRects () const;
++ Qt::Alignment alignment () const;
++ void setAlignment (Qt::Alignment alignment);
++ QRectF containsRect (const QPointF& point) const;
+ };
+ };
+diff --git a/src/bindings/python/sip/FileViewWidget.sip b/src/bindings/python/sip/FileViewWidget.sip
+index 23e3cc3..60dda41 100644
+--- a/src/bindings/python/sip/FileViewWidget.sip
++++ b/src/bindings/python/sip/FileViewWidget.sip
+@@ -28,9 +28,10 @@ class FileViewWidget : QWidget
+ public:
+ FileViewWidget (QWidget* parent /TransferThis/ = 0, Qt::WindowFlags f = 0);
+ ~FileViewWidget ();
+-//ig void setFileViewModel (FileViewModel* model);
+ signals:
+ void centerOn (const Marble::GeoDataPlacemark&, bool animated);
+ void centerOn (const Marble::GeoDataLatLonBox&, bool animated);
++public:
++ void setMarbleWidget (Marble::MarbleWidget* widget);
+ };
+ };
+diff --git a/src/bindings/python/sip/FrameGraphicsItem.sip b/src/bindings/python/sip/FrameGraphicsItem.sip
+index ddc9303..5eb3c3d 100644
+--- a/src/bindings/python/sip/FrameGraphicsItem.sip
++++ b/src/bindings/python/sip/FrameGraphicsItem.sip
+@@ -30,7 +30,8 @@ public:
+ {
+ NoFrame,
+ RectFrame,
+- RoundedRectFrame
++ RoundedRectFrame,
++ ShadowFrame
+ };
+ explicit FrameGraphicsItem (Marble::MarbleGraphicsItem* parent = 0);
+ virtual ~FrameGraphicsItem ();
+diff --git a/src/bindings/python/sip/GeoDataAbstractView.sip b/src/bindings/python/sip/GeoDataAbstractView.sip
+index 65fb8da..4bf760a 100644
+--- a/src/bindings/python/sip/GeoDataAbstractView.sip
++++ b/src/bindings/python/sip/GeoDataAbstractView.sip
+@@ -28,5 +28,13 @@ class GeoDataAbstractView : Marble::GeoDataObject /Abstract/
+ public:
+ GeoDataAbstractView ();
+ ~GeoDataAbstractView ();
++ GeoDataAbstractView (const Marble::GeoDataAbstractView& other);
++ virtual Marble::GeoDataAbstractView* copy () const=0;
++ const Marble::GeoDataTimeSpan& timeSpan () const;
++//ig Marble::GeoDataTimeSpan& timeSpan ();
++ void setTimeSpan (const Marble::GeoDataTimeSpan& timeSpan);
++//ig Marble::GeoDataTimeStamp& timeStamp ();
++ const Marble::GeoDataTimeStamp& timeStamp () const;
++ void setTimeStamp (const Marble::GeoDataTimeStamp& timeStamp);
+ };
+ };
+diff --git a/src/bindings/python/sip/GeoDataBalloonStyle.sip b/src/bindings/python/sip/GeoDataBalloonStyle.sip
+new file mode 100644
+index 0000000..9223740
+--- /dev/null
++++ b/src/bindings/python/sip/GeoDataBalloonStyle.sip
+@@ -0,0 +1,49 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class GeoDataBalloonStyle : Marble::GeoDataColorStyle
++{
++%TypeHeaderCode
++#include <GeoDataBalloonStyle.h>
++%End
++
++public:
++ GeoDataBalloonStyle ();
++ GeoDataBalloonStyle (const Marble::GeoDataBalloonStyle& other);
++ ~GeoDataBalloonStyle ();
++ virtual const char* nodeType () const;
++ enum DisplayMode
++ {
++ Default,
++ Hide
++ };
++ QColor backgroundColor () const;
++ void setBackgroundColor (const QColor& color);
++ QColor textColor () const;
++ void setTextColor (const QColor& color);
++ QString text () const;
++ void setText (const QString& text);
++ Marble::GeoDataBalloonStyle::DisplayMode displayMode () const;
++ void setDisplayMode (const Marble::GeoDataBalloonStyle::DisplayMode& mode);
++ virtual void pack (QDataStream& stream) const;
++ virtual void unpack (QDataStream& stream);
++};
++};
+diff --git a/src/bindings/python/sip/GeoDataColorStyle.sip b/src/bindings/python/sip/GeoDataColorStyle.sip
+index 878269b..ddce9ae 100644
+--- a/src/bindings/python/sip/GeoDataColorStyle.sip
++++ b/src/bindings/python/sip/GeoDataColorStyle.sip
+@@ -42,6 +42,7 @@ public:
+ GeoDataColorStyle (const Marble::GeoDataColorStyle& other);
+ virtual ~GeoDataColorStyle ();
+ virtual const char* nodeType () const;
++ QColor paintedColor () const;
+ };
+ // GeoDataColorStyle
+
+diff --git a/src/bindings/python/sip/GeoDataContainer.sip b/src/bindings/python/sip/GeoDataContainer.sip
+index a2d2107..1a41c0f 100644
+--- a/src/bindings/python/sip/GeoDataContainer.sip
++++ b/src/bindings/python/sip/GeoDataContainer.sip
+@@ -53,11 +53,12 @@ public:
+ //ig QVector<Marble::GeoDataFeature*> featureList () const;
+ //ig QVector<Marble::GeoDataPlacemark*> placemarkList () const;
+ Marble::GeoDataFeature* child (int);
+- int childPosition (Marble::GeoDataFeature* child);
+ void append (Marble::GeoDataFeature* other);
+ void remove (int index);
+ Marble::GeoDataLatLonAltBox latLonAltBox () const;
+ //ig const Marble::GeoDataFeature* child (int) const;
++ int childPosition (const Marble::GeoDataFeature* child) const;
++ void insert (Marble::GeoDataFeature* other, int index);
+ };
+ // GeoDataContainer
+
+diff --git a/src/bindings/python/sip/GeoDataCoordinates.sip b/src/bindings/python/sip/GeoDataCoordinates.sip
+index 950430a..e83efca 100644
+--- a/src/bindings/python/sip/GeoDataCoordinates.sip
++++ b/src/bindings/python/sip/GeoDataCoordinates.sip
+@@ -38,7 +38,10 @@ public:
+ {
+ Decimal,
+ DMS,
+- DM
++ DM,
++ UTM,
++ MGRS,
++ Astro
+ };
+
+ typedef QVector<Marble::GeoDataCoordinates> Vector;
+@@ -84,6 +87,7 @@ public:
+ bool isValid () const;
+ qreal bearing (const Marble::GeoDataCoordinates& other, Marble::GeoDataCoordinates::Unit unit = Marble::GeoDataCoordinates::Radian, Marble::GeoDataCoordinates::BearingType type = Marble::GeoDataCoordinates::InitialBearing) const;
+ //ig void geoCoordinates (qreal& lon, qreal& lat, qreal& alt, Marble::GeoDataCoordinates::Unit unit = GeoDataCoordinates::Radian) const;
++//ig virtual bool operator != (const Marble::GeoDataCoordinates&) const;
+ };
+ // GeoDataCoordinates
+
+diff --git a/src/bindings/python/sip/GeoDataDocument.sip b/src/bindings/python/sip/GeoDataDocument.sip
+index d8d0c0d..82f73b6 100644
+--- a/src/bindings/python/sip/GeoDataDocument.sip
++++ b/src/bindings/python/sip/GeoDataDocument.sip
+@@ -44,6 +44,12 @@ public:
+ ~GeoDataDocument ();
+ //ig DocumentRole documentRole () const;
+ void setDocumentRole (Marble::DocumentRole role);
++ QString property () const;
++ void setProperty (QString property);
++ QString baseUri () const;
++ void setBaseUri (const QString& baseUri);
++//ig Marble::GeoDataNetworkLinkControl networkLinkControl () const;
++//ig void setNetworkLinkControl (const Marble::GeoDataNetworkLinkControl& networkLinkControl);
+ };
+ // GeoDataDocument
+
+diff --git a/src/bindings/python/sip/GeoDataFeature.sip b/src/bindings/python/sip/GeoDataFeature.sip
+index d8b5a08..5d147d2 100644
+--- a/src/bindings/python/sip/GeoDataFeature.sip
++++ b/src/bindings/python/sip/GeoDataFeature.sip
+@@ -194,7 +194,7 @@ public:
+ void setStyleUrl (const QString& value);
+ bool isVisible () const;
+ void setVisible (bool value);
+- const Marble::GeoDataStyle* style () const;
++ const Marble::GeoDataStyle* style () const;
+ Marble::GeoDataFeature::GeoDataVisualCategory visualCategory () const;
+ void setVisualCategory (Marble::GeoDataFeature::GeoDataVisualCategory category);
+ //ig const QChar role () const;
+@@ -220,11 +220,9 @@ protected:
+ public:
+ //ig Marble::GeoDataTimeSpan& timeSpan () const;
+ //ig GeoDataTimeStamp& timeStamp () const;
+-//ig void setTimeStamp (GeoDataTimeStamp timeStamp);
+ //ig GeoDataExtendedData& extendedData () const;
+ //ig void setExtendedData (const GeoDataExtendedData& extendedData);
+ void setRole (const QString& role);
+-//ig void setTimeSpan (GeoDataTimeSpan timeSpan);
+ static Marble::GeoDataFeature::GeoDataVisualCategory OsmVisualCategory (const QString& keyValue);
+ bool isGloballyVisible () const;
+ const QImage symbol () const;
+@@ -233,6 +231,12 @@ public:
+ static QColor defaultLabelColor ();
+ static void setDefaultLabelColor (const QColor& color);
+ void setStyleMap (const Marble::GeoDataStyleMap* map);
++ const Marble::GeoDataAbstractView* abstractView () const;
++//ig Marble::GeoDataAbstractView* abstractView ();
++ void setAbstractView (Marble::GeoDataAbstractView* abstractView);
++ void setTimeSpan (const Marble::GeoDataTimeSpan& timeSpan);
++ void setTimeStamp (const Marble::GeoDataTimeStamp& timeStamp);
++ void setStyle (Marble::GeoDataStyle* style);
+ };
+ // GeoDataFeature
+
+diff --git a/src/bindings/python/sip/GeoDataGroundOverlay.sip b/src/bindings/python/sip/GeoDataGroundOverlay.sip
+index 5e96560..7c330a7 100644
+--- a/src/bindings/python/sip/GeoDataGroundOverlay.sip
++++ b/src/bindings/python/sip/GeoDataGroundOverlay.sip
+@@ -17,3 +17,25 @@
+ // Free Software Foundation, Inc.,
+ // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
++namespace Marble
++{
++class GeoDataGroundOverlay : Marble::GeoDataOverlay
++{
++%TypeHeaderCode
++#include <GeoDataOverlay.h>
++#include <GeoDataGroundOverlay.h>
++%End
++
++public:
++ GeoDataGroundOverlay ();
++ GeoDataGroundOverlay (const Marble::GeoDataGroundOverlay& other);
++ ~GeoDataGroundOverlay ();
++ virtual const char* nodeType () const;
++ double altitude () const;
++ void setAltitude (double altitude);
++ Marble::AltitudeMode altitudeMode () const;
++ void setAltitudeMode (const Marble::AltitudeMode altitudeMode);
++ Marble::GeoDataLatLonBox& latLonBox () const;
++ void setLatLonBox (const Marble::GeoDataLatLonBox& box);
++};
++};
+diff --git a/src/bindings/python/sip/GeoDataIconStyle.sip b/src/bindings/python/sip/GeoDataIconStyle.sip
+index b7b605c..8071be9 100644
+--- a/src/bindings/python/sip/GeoDataIconStyle.sip
++++ b/src/bindings/python/sip/GeoDataIconStyle.sip
+@@ -42,6 +42,8 @@ public:
+ void setIcon (const QImage& icon);
+ QString iconPath () const;
+ //ig QPointF hotSpot (Marble::GeoDataHotSpot::Units& xunits, Marble::GeoDataHotSpot::Units& yunits) const;
++ int heading () const;
++ void setHeading (int heading);
+ };
+ // GeoDataIconStyle
+
+diff --git a/src/bindings/python/sip/GeoDataItemIcon.sip b/src/bindings/python/sip/GeoDataItemIcon.sip
+new file mode 100644
+index 0000000..d63f3cb
+--- /dev/null
++++ b/src/bindings/python/sip/GeoDataItemIcon.sip
+@@ -0,0 +1,50 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class GeoDataItemIcon : Marble::GeoDataObject
++{
++%TypeHeaderCode
++#include <GeoDataItemIcon.h>
++%End
++
++public:
++ GeoDataItemIcon ();
++ GeoDataItemIcon (const Marble::GeoDataItemIcon& other);
++ ~GeoDataItemIcon ();
++ virtual const char* nodeType () const;
++ enum ItemIconState
++ {
++ Open,
++ Closed,
++ Error,
++ Fetching0,
++ Fetching1,
++ Fetching2
++ };
++ typedef QFlags<Marble::GeoDataItemIcon::ItemIconState> ItemIconStates;
++ Marble::GeoDataItemIcon::ItemIconStates state () const;
++ void setState (const Marble::GeoDataItemIcon::ItemIconStates& state);
++ QString iconPath () const;
++ void setIconPath (const QString& path);
++ QImage icon () const;
++ void setIcon (const QImage& icon);
++};
++};
+diff --git a/src/bindings/python/sip/GeoDataLatLonAltBox.sip b/src/bindings/python/sip/GeoDataLatLonAltBox.sip
+index f80aab0..08364ac 100644
+--- a/src/bindings/python/sip/GeoDataLatLonAltBox.sip
++++ b/src/bindings/python/sip/GeoDataLatLonAltBox.sip
+@@ -46,10 +46,14 @@ public:
+ virtual const char* nodeType () const;
+ virtual Marble::GeoDataCoordinates center () const;
+ virtual void clear ();
++ GeoDataLatLonAltBox (const Marble::GeoDataLatLonBox& other, qreal minAltitude, qreal maxAltitude);
++ explicit GeoDataLatLonAltBox (const Marble::GeoDataCoordinates& coordinates);
++//ig uint qHash (const Marble::GeoDataLatLonAltBox&);
+ };
+ // GeoDataLatLonAltBox
+
+ //ig bool operator == (const Marble::GeoDataLatLonAltBox& lhs, const Marble::GeoDataLatLonAltBox& rhs);
++//ig uint qHash (const Marble::GeoDataLatLonAltBox& r);
+ };
+ // Marble
+
+diff --git a/src/bindings/python/sip/GeoDataLineString.sip b/src/bindings/python/sip/GeoDataLineString.sip
+index d5a84dd..c6a722d 100644
+--- a/src/bindings/python/sip/GeoDataLineString.sip
++++ b/src/bindings/python/sip/GeoDataLineString.sip
+@@ -74,6 +74,12 @@ public:
+ void remove (int i);
+ protected:
+ //ig GeoDataLineString (GeoDataLineStringPrivate* priv);
++public:
++
++// FIXME
++//ig QVector<GeoDataCoordinates>::ConstIterator begin () const;
++//ig QVector<GeoDataCoordinates>::ConstIterator end () const;
++
+ };
+ // GeoDataLineString
+
+diff --git a/src/bindings/python/sip/GeoDataListStyle.sip b/src/bindings/python/sip/GeoDataListStyle.sip
+new file mode 100644
+index 0000000..e687a91
+--- /dev/null
++++ b/src/bindings/python/sip/GeoDataListStyle.sip
+@@ -0,0 +1,70 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class GeoDataListStyle : Marble::GeoDataObject
++{
++%TypeHeaderCode
++#include <GeoDataListStyle.h>
++%End
++
++public:
++ GeoDataListStyle ();
++ GeoDataListStyle (const Marble::GeoDataListStyle& other);
++ ~GeoDataListStyle ();
++ virtual const char* nodeType () const;
++ enum ListItemType
++ {
++ Check,
++ RadioFolder,
++ CheckOffOnly,
++ CheckHideChildren
++ };
++ Marble::GeoDataListStyle::ListItemType listItemType () const;
++ void setListItemType (const Marble::GeoDataListStyle::ListItemType& type);
++ QColor backgroundColor () const;
++ void setBackgroundColor (const QColor& color);
++//FIXME
++//ig QVector<Marble::GeoDataItemIcon*> itemIconList () const;
++
++//ig Marble::GeoDataItemIcon* child (int);
++ const Marble::GeoDataItemIcon* child (int) const;
++ int childPosition (Marble::GeoDataItemIcon* child);
++ void append (Marble::GeoDataItemIcon* other);
++ void remove (int index);
++ int size () const;
++//ig Marble::GeoDataItemIcon& at (int pos);
++ const Marble::GeoDataItemIcon& at (int pos) const;
++//ig Marble::GeoDataItemIcon& last ();
++ const Marble::GeoDataItemIcon& last () const;
++//ig Marble::GeoDataItemIcon& first ();
++ const Marble::GeoDataItemIcon& first () const;
++
++// FIXME
++// QVector<GeoDataItemIcon*>::Iterator begin ();
++// QVector<GeoDataItemIcon*>::Iterator end ();
++// QVector<GeoDataItemIcon*>::ConstIterator constBegin () const;
++// QVector<GeoDataItemIcon*>::ConstIterator constEnd () const;
++
++ void clear ();
++ virtual void pack (QDataStream& stream) const;
++ virtual void unpack (QDataStream& stream);
++};
++};
+diff --git a/src/bindings/python/sip/GeoDataLookAt.sip b/src/bindings/python/sip/GeoDataLookAt.sip
+index 7db3bf9..467a680 100644
+--- a/src/bindings/python/sip/GeoDataLookAt.sip
++++ b/src/bindings/python/sip/GeoDataLookAt.sip
+@@ -41,5 +41,6 @@ public:
+ void setCoordinates (const Marble::GeoDataCoordinates& coordinates);
+ virtual const char* nodeType () const;
+ void detach ();
++ Marble::GeoDataAbstractView* copy () const;
+ };
+ };
+diff --git a/src/bindings/python/sip/GeoDataObject.sip b/src/bindings/python/sip/GeoDataObject.sip
+index 44b39c7..ed1b2dd 100644
+--- a/src/bindings/python/sip/GeoDataObject.sip
++++ b/src/bindings/python/sip/GeoDataObject.sip
+@@ -40,6 +40,7 @@ public:
+
+ virtual Marble::GeoDataObject* parent () const;
+ virtual void setParent (Marble::GeoDataObject* parent);
++ QString resolvePath (const QString& relativePath) const;
+ };
+ // GeoDataObject
+
+diff --git a/src/bindings/python/sip/GeoDataPlacemark.sip b/src/bindings/python/sip/GeoDataPlacemark.sip
+index 627b9e5..9cd22c6 100644
+--- a/src/bindings/python/sip/GeoDataPlacemark.sip
++++ b/src/bindings/python/sip/GeoDataPlacemark.sip
+@@ -48,6 +48,10 @@ public:
+ void setGeometry (Marble::GeoDataGeometry* entry);
+ const QString state () const;
+ void setState (const QString& state);
++ void setCoordinate (qreal longitude, qreal latitude, qreal altitude = 0, Marble::GeoDataCoordinates::Unit _unit = Marble::GeoDataCoordinates::Radian);
++ void setCoordinate (const Marble::GeoDataCoordinates& coordinate);
++ const Marble::GeoDataLookAt* lookAt () const;
++//ig Marble::GeoDataLookAt* lookAt ();
+ };
+ // GeoDataPlacemark
+
+diff --git a/src/bindings/python/sip/GeoDataPoint.sip b/src/bindings/python/sip/GeoDataPoint.sip
+index 296760c..78131f1 100644
+--- a/src/bindings/python/sip/GeoDataPoint.sip
++++ b/src/bindings/python/sip/GeoDataPoint.sip
+@@ -41,6 +41,9 @@ public:
+ GeoDataPoint (const Marble::GeoDataCoordinates& other);
+ ~GeoDataPoint ();
+ virtual const char* nodeType () const;
++ GeoDataPoint (qreal lon, qreal lat, qreal alt = 0, Marble::GeoDataPoint::Unit _unit = Marble::GeoDataCoordinates::Radian);
++ void setCoordinates (const Marble::GeoDataCoordinates& coordinates);
++ const Marble::GeoDataCoordinates& coordinates () const;
+ };
+ // GeoDataPoint
+
+diff --git a/src/bindings/python/sip/GeoDataPolygon.sip b/src/bindings/python/sip/GeoDataPolygon.sip
+index ff0efe2..e1621ba 100644
+--- a/src/bindings/python/sip/GeoDataPolygon.sip
++++ b/src/bindings/python/sip/GeoDataPolygon.sip
+@@ -33,10 +33,10 @@ public:
+ void setTessellate (bool tessellate);
+ Marble::TessellationFlags tessellationFlags () const;
+ void setTessellationFlags (Marble::TessellationFlags f);
+- virtual const Marble::GeoDataLatLonAltBox& latLonAltBox () const;
+- Marble::GeoDataLinearRing& outerBoundary ();
++ virtual const Marble::GeoDataLatLonAltBox& latLonAltBox () const;
++//ig Marble::GeoDataLinearRing& outerBoundary ();
+ void setOuterBoundary (const Marble::GeoDataLinearRing& boundary);
+- QVector<Marble::GeoDataLinearRing>& innerBoundaries ();
++//ig QVector<Marble::GeoDataLinearRing>& innerBoundaries ();
+ void appendInnerBoundary (const Marble::GeoDataLinearRing& boundary);
+ virtual void pack (QDataStream& stream) const;
+ virtual void unpack (QDataStream& stream);
+@@ -45,9 +45,25 @@ protected:
+ //ig GeoDataPolygonPrivate* p () const;
+ public:
+ virtual bool contains (const Marble::GeoDataCoordinates& coordinates) const;
++ const Marble::GeoDataLinearRing& outerBoundary () const;
++ const QVector<Marble::GeoDataLinearRing>& innerBoundaries () const;
+ };
+ // GeoDataPolygon
+
++class GeoDataOuterBoundary : Marble::GeoDataPolygon
++{
++%TypeHeaderCode
++#include <GeoDataPolygon.h>
++%End
++
++};
++class GeoDataInnerBoundary : Marble::GeoDataPolygon
++{
++%TypeHeaderCode
++#include <GeoDataPolygon.h>
++%End
++
++};
+ };
+ // Marble
+
+diff --git a/src/bindings/python/sip/GeoDataStyle.sip b/src/bindings/python/sip/GeoDataStyle.sip
+index 02bd992..d10b5ef 100644
+--- a/src/bindings/python/sip/GeoDataStyle.sip
++++ b/src/bindings/python/sip/GeoDataStyle.sip
+@@ -42,6 +42,12 @@ public:
+ virtual void unpack (QDataStream& stream);
+ virtual const char* nodeType () const;
+ GeoDataStyle (const QImage& icon, const QFont& font, const QColor& color);
++ void setBalloonStyle (const Marble::GeoDataBalloonStyle& style);
++//ig Marble::GeoDataBalloonStyle& balloonStyle ();
++ const Marble::GeoDataBalloonStyle& balloonStyle () const;
++ void setListStyle (const Marble::GeoDataListStyle& style);
++//ig Marble::GeoDataListStyle& listStyle ();
++ const Marble::GeoDataListStyle& listStyle () const;
+ };
+ // GeoDataStyle
+
+diff --git a/src/bindings/python/sip/GeoDataTimePrimitive.sip b/src/bindings/python/sip/GeoDataTimePrimitive.sip
+new file mode 100644
+index 0000000..94faf2f
+--- /dev/null
++++ b/src/bindings/python/sip/GeoDataTimePrimitive.sip
+@@ -0,0 +1,36 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class GeoDataTimePrimitive : Marble::GeoDataObject
++{
++%TypeHeaderCode
++#include <GeoDataTimePrimitive.h>
++%End
++
++public:
++ virtual const char* nodeType () const;
++ virtual void pack (QDataStream& stream) const;
++ virtual void unpack (QDataStream& stream);
++ GeoDataTimePrimitive ();
++ GeoDataTimePrimitive (const Marble::GeoDataTimePrimitive& other);
++ ~GeoDataTimePrimitive ();
++};
++};
+diff --git a/src/bindings/python/sip/GeoDataTimeSpan.sip b/src/bindings/python/sip/GeoDataTimeSpan.sip
+new file mode 100644
+index 0000000..52b751f
+--- /dev/null
++++ b/src/bindings/python/sip/GeoDataTimeSpan.sip
+@@ -0,0 +1,40 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class GeoDataTimeSpan : Marble::GeoDataTimePrimitive
++{
++%TypeHeaderCode
++#include <GeoDataTimeSpan.h>
++%End
++
++public:
++ GeoDataTimeSpan ();
++ GeoDataTimeSpan (const Marble::GeoDataTimeSpan& other);
++ ~GeoDataTimeSpan ();
++ virtual const char* nodeType () const;
++ QDateTime begin () const;
++ void setBegin (const QDateTime& begin);
++ QDateTime end () const;
++ void setEnd (const QDateTime& end);
++ virtual void pack (QDataStream& stream) const;
++ virtual void unpack (QDataStream& stream);
++};
++};
+diff --git a/src/bindings/python/sip/GeoDataTimeStamp.sip b/src/bindings/python/sip/GeoDataTimeStamp.sip
+new file mode 100644
+index 0000000..1b3b6a5
+--- /dev/null
++++ b/src/bindings/python/sip/GeoDataTimeStamp.sip
+@@ -0,0 +1,47 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class GeoDataTimeStamp : Marble::GeoDataTimePrimitive
++{
++%TypeHeaderCode
++#include <GeoDataTimeStamp.h>
++%End
++
++public:
++ enum TimeResolution
++ {
++ SecondResolution,
++ DayResolution,
++ MonthResolution,
++ YearResolution
++ };
++ GeoDataTimeStamp ();
++ GeoDataTimeStamp (const Marble::GeoDataTimeStamp& other);
++ virtual ~GeoDataTimeStamp ();
++ virtual const char* nodeType () const;
++ QDateTime when () const;
++ void setWhen (const QDateTime& when);
++ void setResolution (Marble::GeoDataTimeStamp::TimeResolution resolution);
++ Marble::GeoDataTimeStamp::TimeResolution resolution () const;
++ virtual void pack (QDataStream& stream) const;
++ virtual void unpack (QDataStream& stream);
++};
++};
+diff --git a/src/bindings/python/sip/GeoDataTreeModel.sip b/src/bindings/python/sip/GeoDataTreeModel.sip
+index 8457f13..26bbaa5 100644
+--- a/src/bindings/python/sip/GeoDataTreeModel.sip
++++ b/src/bindings/python/sip/GeoDataTreeModel.sip
+@@ -41,9 +41,8 @@ public:
+ void reset ();
+ void setRootDocument (Marble::GeoDataDocument* document);
+ Marble::GeoDataDocument* rootDocument ();
+- int addFeature (Marble::GeoDataContainer* parent, Marble::GeoDataFeature* feature);
++ int addFeature (Marble::GeoDataContainer* parent, Marble::GeoDataFeature* feature, int row = -1);
+ bool removeFeature (Marble::GeoDataContainer* parent, int index);
+- bool removeFeature (Marble::GeoDataFeature* feature);
+ void updateFeature (Marble::GeoDataFeature* feature);
+ int addDocument (Marble::GeoDataDocument* document);
+ void removeDocument (int index);
+@@ -52,5 +51,8 @@ public:
+ signals:
+ void removed (Marble::GeoDataObject* object);
+ void added (Marble::GeoDataObject* object);
++public:
++ QItemSelectionModel* selectionModel ();
++ int removeFeature (const Marble::GeoDataFeature* feature);
+ };
+ };
+diff --git a/src/bindings/python/sip/GeoDocument.sip b/src/bindings/python/sip/GeoDocument.sip
+index 95e0d12..e4e3f0c 100644
+--- a/src/bindings/python/sip/GeoDocument.sip
++++ b/src/bindings/python/sip/GeoDocument.sip
+@@ -60,7 +60,9 @@ protected:
+ else if (dynamic_cast<Marble::GeoDataColorStyle*>(sipCpp))
+ {
+ sipType = sipType_Marble_GeoDataColorStyle;
+- if (dynamic_cast<Marble::GeoDataIconStyle*>(sipCpp))
++ if (dynamic_cast<Marble::GeoDataBalloonStyle*>(sipCpp))
++ sipType = sipType_Marble_GeoDataBalloonStyle;
++ else if (dynamic_cast<Marble::GeoDataIconStyle*>(sipCpp))
+ sipType = sipType_Marble_GeoDataIconStyle;
+ else if (dynamic_cast<Marble::GeoDataLabelStyle*>(sipCpp))
+ sipType = sipType_Marble_GeoDataLabelStyle;
+@@ -81,7 +83,11 @@ protected:
+ sipType = sipType_Marble_GeoDataFolder;
+ }
+ else if (dynamic_cast<Marble::GeoDataOverlay*>(sipCpp))
++ {
+ sipType = sipType_Marble_GeoDataOverlay;
++ if (dynamic_cast<Marble::GeoDataGroundOverlay*>(sipCpp))
++ sipType = sipType_Marble_GeoDataGroundOverlay;
++ }
+ else if (dynamic_cast<Marble::GeoDataPlacemark*>(sipCpp))
+ sipType = sipType_Marble_GeoDataPlacemark;
+ }
+@@ -99,18 +105,28 @@ protected:
+ else if (dynamic_cast<Marble::GeoDataPoint*>(sipCpp))
+ sipType = sipType_Marble_GeoDataPoint;
+ else if (dynamic_cast<Marble::GeoDataPolygon*>(sipCpp))
++ {
+ sipType = sipType_Marble_GeoDataPolygon;
++ if (dynamic_cast<Marble::GeoDataInnerBoundary*>(sipCpp))
++ sipType = sipType_Marble_GeoDataInnerBoundary;
++ else if (dynamic_cast<Marble::GeoDataOuterBoundary*>(sipCpp))
++ sipType = sipType_Marble_GeoDataOuterBoundary;
++ }
+ else if (dynamic_cast<Marble::GeoDataTrack*>(sipCpp))
+ sipType = sipType_Marble_GeoDataTrack;
+ }
+ else if (dynamic_cast<Marble::GeoDataHotSpot*>(sipCpp))
+ sipType = sipType_Marble_GeoDataHotSpot;
++ else if (dynamic_cast<Marble::GeoDataItemIcon*>(sipCpp))
++ sipType = sipType_Marble_GeoDataItemIcon;
+ else if (dynamic_cast<Marble::GeoDataLatLonBox*>(sipCpp))
+ {
+ sipType = sipType_Marble_GeoDataLatLonBox;
+ if (dynamic_cast<Marble::GeoDataLatLonAltBox*>(sipCpp))
+ sipType = sipType_Marble_GeoDataLatLonAltBox;
+ }
++ else if (dynamic_cast<Marble::GeoDataListStyle*>(sipCpp))
++ sipType = sipType_Marble_GeoDataListStyle;
+ else if (dynamic_cast<Marble::GeoDataLod*>(sipCpp))
+ sipType = sipType_Marble_GeoDataLod;
+ else if (dynamic_cast<Marble::GeoDataRegion*>(sipCpp))
+@@ -123,6 +139,14 @@ protected:
+ else if (dynamic_cast<Marble::GeoDataStyleMap*>(sipCpp))
+ sipType = sipType_Marble_GeoDataStyleMap;
+ }
++ else if (dynamic_cast<Marble::GeoDataTimePrimitive*>(sipCpp))
++ {
++ sipType = sipType_Marble_GeoDataTimePrimitive;
++ if (dynamic_cast<Marble::GeoDataTimeSpan*>(sipCpp))
++ sipType = sipType_Marble_GeoDataTimeSpan;
++ else if (dynamic_cast<Marble::GeoDataTimeStamp*>(sipCpp))
++ sipType = sipType_Marble_GeoDataTimeStamp;
++ }
+ }
+ %End
+ public:
+@@ -138,20 +162,24 @@ public:
+ %ModuleHeaderCode
+ //ctscc
+ #include <GeoDataAbstractView.h>
++#include <GeoDataBalloonStyle.h>
+ #include <GeoDataColorStyle.h>
+ #include <GeoDataContainer.h>
+ #include <GeoDataDocument.h>
+ #include <GeoDataFeature.h>
+ #include <GeoDataFolder.h>
+ #include <GeoDataGeometry.h>
++#include <GeoDataGroundOverlay.h>
+ #include <GeoDataHotSpot.h>
+ #include <GeoDataIconStyle.h>
++#include <GeoDataItemIcon.h>
+ #include <GeoDataLabelStyle.h>
+ #include <GeoDataLatLonAltBox.h>
+ #include <GeoDataLatLonBox.h>
+ #include <GeoDataLineString.h>
+ #include <GeoDataLineStyle.h>
+ #include <GeoDataLinearRing.h>
++#include <GeoDataListStyle.h>
+ #include <GeoDataLod.h>
+ #include <GeoDataLookAt.h>
+ #include <GeoDataMultiGeometry.h>
+@@ -165,6 +193,9 @@ public:
+ #include <GeoDataStyle.h>
+ #include <GeoDataStyleMap.h>
+ #include <GeoDataStyleSelector.h>
++#include <GeoDataTimePrimitive.h>
++#include <GeoDataTimeSpan.h>
++#include <GeoDataTimeStamp.h>
+ #include <GeoDataTrack.h>
+ #include <GeoDocument.h>
+ %End
+diff --git a/src/bindings/python/sip/GeoGraphicsItem.sip b/src/bindings/python/sip/GeoGraphicsItem.sip
+index 39c7372..2a50695 100644
+--- a/src/bindings/python/sip/GeoGraphicsItem.sip
++++ b/src/bindings/python/sip/GeoGraphicsItem.sip
+@@ -28,7 +28,7 @@ class GeoGraphicsItem
+ %End
+
+ public:
+- GeoGraphicsItem (const Marble::GeoDataFeature *x);
++ GeoGraphicsItem (const Marble::GeoDataFeature* feature);
+ virtual ~GeoGraphicsItem ();
+ enum GeoGraphicsItemFlag
+ {
+@@ -54,6 +54,8 @@ public:
+ virtual void paint (Marble::GeoPainter* painter, const Marble::ViewportParams* viewport)=0;
+ protected:
+ //ig GeoGraphicsItemPrivate* p () const;
++public:
++ const Marble::GeoDataFeature* feature () const;
+ };
+ // GeoGraphicsItem
+
+diff --git a/src/bindings/python/sip/GeoGraphicsScene.sip b/src/bindings/python/sip/GeoGraphicsScene.sip
+index 5ad03e1..1ec1d2e 100644
+--- a/src/bindings/python/sip/GeoGraphicsScene.sip
++++ b/src/bindings/python/sip/GeoGraphicsScene.sip
+@@ -29,9 +29,10 @@ public:
+ GeoGraphicsScene (QObject* parent /TransferThis/ = 0);
+ ~GeoGraphicsScene ();
+ void clear ();
+- QList<Marble::GeoGraphicsItem*> items (const Marble::GeoDataLatLonAltBox& box, int maxZoomLevel) const;
+ //ig static int s_tileZoomLevel;
+ void addItem (Marble::GeoGraphicsItem* item);
+ void eraseAll ();
++ void removeItem (const Marble::GeoDataFeature* feature);
++ QList<Marble::GeoGraphicsItem*> items (const Marble::GeoDataLatLonBox& box, int maxZoomLevel) const;
+ };
+ };
+diff --git a/src/bindings/python/sip/GeoPainter.sip b/src/bindings/python/sip/GeoPainter.sip
+index 75295c2..3bfc7f5 100644
+--- a/src/bindings/python/sip/GeoPainter.sip
++++ b/src/bindings/python/sip/GeoPainter.sip
+@@ -36,34 +36,17 @@ public:
+ void drawPolygon (const Marble::GeoDataLinearRing& linearRing, Qt::FillRule fillRule = Qt::OddEvenFill);
+ void drawPolygon (const Marble::GeoDataPolygon& polygon, Qt::FillRule fillRule = Qt::OddEvenFill);
+ void drawRect (const Marble::GeoDataCoordinates& centerPosition, qreal width, qreal height, bool isGeoProjected = 0);
+- void drawText (int x, int y, const QString& text);
+- void drawText (const QPointF& position, const QString& text);
+- void drawText (const QPoint& position, const QString& text);
+- void drawText (const QRect& rectangle, int flags, const QString& text, QRect* boundingRect = 0);
+- void drawEllipse (int x, int y, int width, int height);
+- void drawEllipse (const QRectF& rectangle);
+- void drawImage (const QRect& target, const QImage& image, const QRect& source, Qt::ImageConversionFlags flags = Qt::AutoColor);
+- void drawPixmap (int x, int y, const QPixmap& pixmap);
+- void drawPixmap (const QPointF& point, const QPixmap& pixmap);
+- void drawPixmap (const QPoint& point, const QPixmap& pixmap);
+- void drawPoint (int x, int y);
+- void drawPolyline (const QPolygonF& polyline);
+- void drawPolygon (const QPolygonF& polygon);
+- void drawLine (int x1, int y1, int x2, int y2);
+- void drawRect (const QRectF& rectangle);
+- void drawRect (const QRect& rectangle);
+- void drawRect (int x, int y, int width, int height);
+
+ ~GeoPainter ();
+ void drawPoint (const Marble::GeoDataPoint& point);
+- void drawImage (const QRect& rect, const QImage& image);
+- void drawImage (const QRectF& rect, const QImage& image);
+ QRegion regionFromPoint (const Marble::GeoDataCoordinates& position, qreal strokeWidth = 3) const;
+ QRegion regionFromPoint (const Marble::GeoDataPoint& point, qreal strokeWidth = 3) const;
+ QRegion regionFromEllipse (const Marble::GeoDataCoordinates& centerPosition, qreal width, qreal height, bool isGeoProjected = 0, qreal strokeWidth = 3) const;
+ QRegion regionFromPolyline (const Marble::GeoDataLineString& lineString, qreal strokeWidth = 3) const;
+ QRegion regionFromPolygon (const Marble::GeoDataLinearRing& linearRing, Qt::FillRule fillRule, qreal strokeWidth = 3) const;
+ QRegion regionFromRect (const Marble::GeoDataCoordinates& centerPosition, qreal width, qreal height, bool isGeoProjected = 0, qreal strokeWidth = 3) const;
++ GeoPainter (QPaintDevice* paintDevice, const Marble::ViewportParams* viewportParams, Marble::MapQuality mapQuality = NormalQuality);
++ void drawRoundRect (const Marble::GeoDataCoordinates& centerPosition, int width, int height, int xRnd = 25, int yRnd = 25);
+ };
+ // GeoPainter
+
+diff --git a/src/bindings/python/sip/GeoWriter.sip b/src/bindings/python/sip/GeoWriter.sip
+index 9ed3c22..60b9416 100644
+--- a/src/bindings/python/sip/GeoWriter.sip
++++ b/src/bindings/python/sip/GeoWriter.sip
+@@ -31,7 +31,7 @@ public:
+ void setDocumentType (const QString& documentType);
+ void writeElement (const QString& namespaceUri, const QString& key, const QString& value);
+ void writeElement (const QString& key, const QString& value);
+- void writeOptionalElement (const QString& key, const QString& value);
++ void writeOptionalElement (const QString& key, const QString& value, const QString& defaultValue = QString());
+ %ConvertToSubClassCode
+ // CTSCC for subclasses of 'QXmlStreamWriter'
+ sipType = NULL;
+diff --git a/src/bindings/python/sip/LayerInterface.sip b/src/bindings/python/sip/LayerInterface.sip
+index 59f4680..8aa1bc6 100644
+--- a/src/bindings/python/sip/LayerInterface.sip
++++ b/src/bindings/python/sip/LayerInterface.sip
+@@ -29,7 +29,7 @@ public:
+ virtual ~LayerInterface ();
+ virtual QStringList renderPosition () const=0;
+ virtual qreal zValue () const;
+- virtual bool render (Marble::GeoPainter* painter, Marble::ViewportParams* viewport, const QString& renderPos, Marble::GeoSceneLayer* layer)=0;
+ virtual QString runtimeTrace () const;
++ virtual bool render (Marble::GeoPainter* painter, Marble::ViewportParams* viewport, const QString& renderPos, Marble::GeoSceneLayer* layer)=0;
+ };
+ };
+diff --git a/src/bindings/python/sip/MapThemeDownloadDialog.sip b/src/bindings/python/sip/MapThemeDownloadDialog.sip
+new file mode 100644
+index 0000000..e496adf
+--- /dev/null
++++ b/src/bindings/python/sip/MapThemeDownloadDialog.sip
+@@ -0,0 +1,32 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class MapThemeDownloadDialog : QDialog
++{
++%TypeHeaderCode
++#include <MapThemeDownloadDialog.h>
++%End
++
++public:
++ explicit MapThemeDownloadDialog (Marble::MarbleWidget* marbleWidget);
++ ~MapThemeDownloadDialog ();
++};
++};
+diff --git a/src/bindings/python/sip/MapThemeManager.sip b/src/bindings/python/sip/MapThemeManager.sip
+index cabf20b..8adc717 100644
+--- a/src/bindings/python/sip/MapThemeManager.sip
++++ b/src/bindings/python/sip/MapThemeManager.sip
+@@ -35,6 +35,7 @@ public:
+ QStringList mapThemeIds () const;
+ //ig GeoSceneDocument* loadMapTheme (const QString& mapThemeStringID) const;
+ static void deleteMapTheme (const QString& mapThemeId);
++ QStandardItemModel* celestialBodiesModel ();
+ };
+ // MapThemeManager
+
+diff --git a/src/bindings/python/sip/MapViewWidget.sip b/src/bindings/python/sip/MapViewWidget.sip
+index bbc0f35..b9b0d42 100644
+--- a/src/bindings/python/sip/MapViewWidget.sip
++++ b/src/bindings/python/sip/MapViewWidget.sip
+@@ -39,5 +39,9 @@ signals:
+ void mapThemeIdChanged (const QString&);
+ void projectionChanged (Marble::Projection);
+ void celestialBodyChanged (const QString&);
++protected:
++ void resizeEvent (QResizeEvent* event);
++signals:
++ void mapThemeDeleted ();
+ };
+ };
+diff --git a/src/bindings/python/sip/MarbleAboutDialog.sip b/src/bindings/python/sip/MarbleAboutDialog.sip
+index d797d27..d793095 100644
+--- a/src/bindings/python/sip/MarbleAboutDialog.sip
++++ b/src/bindings/python/sip/MarbleAboutDialog.sip
+@@ -29,6 +29,14 @@ public:
+
+ ~MarbleAboutDialog ();
+ void setApplicationTitle (const QString& title);
++ enum Tab
++ {
++ About,
++ Authors,
++ Data,
++ License
++ };
++ void setInitialTab (Marble::MarbleAboutDialog::Tab tab);
+ };
+ // MarbleAboutDialog
+
+diff --git a/src/bindings/python/sip/MarbleColors.sip b/src/bindings/python/sip/MarbleColors.sip
+new file mode 100644
+index 0000000..c444c27
+--- /dev/null
++++ b/src/bindings/python/sip/MarbleColors.sip
+@@ -0,0 +1,97 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++namespace Oxygen
++{
++const QColor woodBrown6;
++const QColor woodBrown5;
++const QColor woodBrown4;
++const QColor woodBrown3;
++const QColor woodBrown2;
++const QColor woodBrown1;
++const QColor brickRed6;
++const QColor brickRed5;
++const QColor brickRed4;
++const QColor brickRed3;
++const QColor brickRed2;
++const QColor brickRed1;
++const QColor raspberryPink6;
++const QColor raspberryPink5;
++const QColor raspberryPink4;
++const QColor raspberryPink3;
++const QColor raspberryPink2;
++const QColor raspberryPink1;
++const QColor burgundyPurple6;
++const QColor burgundyPurple5;
++const QColor burgundyPurple4;
++const QColor burgundyPurple3;
++const QColor burgundyPurple2;
++const QColor burgundyPurple1;
++const QColor grapeViolet6;
++const QColor grapeViolet5;
++const QColor grapeViolet4;
++const QColor grapeViolet3;
++const QColor grapeViolet2;
++const QColor grapeViolet1;
++const QColor skyBlue6;
++const QColor skyBlue5;
++const QColor skyBlue4;
++const QColor skyBlue3;
++const QColor skyBlue2;
++const QColor skyBlue1;
++const QColor seaBlue6;
++const QColor seaBlue5;
++const QColor seaBlue4;
++const QColor seaBlue3;
++const QColor seaBlue2;
++const QColor seaBlue1;
++const QColor emeraldGreen6;
++const QColor emeraldGreen5;
++const QColor emeraldGreen4;
++const QColor emeraldGreen3;
++const QColor emeraldGreen2;
++const QColor emeraldGreen1;
++const QColor forestGreen6;
++const QColor forestGreen5;
++const QColor forestGreen4;
++const QColor forestGreen3;
++const QColor forestGreen2;
++const QColor forestGreen1;
++const QColor sunYellow6;
++const QColor sunYellow5;
++const QColor sunYellow4;
++const QColor sunYellow3;
++const QColor sunYellow2;
++const QColor sunYellow1;
++const QColor hotOrange6;
++const QColor hotOrange5;
++const QColor hotOrange4;
++const QColor hotOrange3;
++const QColor hotOrange2;
++const QColor hotOrange1;
++const QColor aluminumGray6;
++const QColor aluminumGray5;
++const QColor aluminumGray4;
++const QColor aluminumGray3;
++const QColor aluminumGray2;
++const QColor aluminumGray1;
++};
++};
+diff --git a/src/bindings/python/sip/MarbleGlobal.sip b/src/bindings/python/sip/MarbleGlobal.sip
+index 5dd45b1..c42c721 100644
+--- a/src/bindings/python/sip/MarbleGlobal.sip
++++ b/src/bindings/python/sip/MarbleGlobal.sip
+@@ -59,7 +59,8 @@ enum AngleUnit
+ {
+ DMSDegree,
+ DecimalDegree,
+- UTM
++ UTM,
++ MGRS
+ };
+
+
+diff --git a/src/bindings/python/sip/MarbleGraphicsItem.sip b/src/bindings/python/sip/MarbleGraphicsItem.sip
+index a97b300..b69ee6a 100644
+--- a/src/bindings/python/sip/MarbleGraphicsItem.sip
++++ b/src/bindings/python/sip/MarbleGraphicsItem.sip
+@@ -85,7 +85,7 @@ private:
+ %End
+ public:
+ bool paintEvent (QPainter* painter, const Marble::ViewportParams* viewport);
+- void setProjection (Marble::ViewportParams* viewport);
++ virtual void setProjection (const Marble::ViewportParams* viewport);
+ };
+ // MarbleGraphicsItem
+
+diff --git a/src/bindings/python/sip/MarbleMap.sip b/src/bindings/python/sip/MarbleMap.sip
+index 8d0dcb9..7c5e653 100644
+--- a/src/bindings/python/sip/MarbleMap.sip
++++ b/src/bindings/python/sip/MarbleMap.sip
+@@ -149,6 +149,10 @@ public:
+ //ig const TextureLayer* textureLayer () const;
+ void setShowRuntimeTrace (bool visible);
+ void downloadRegion (const QVector<Marble::TileCoordsPyramid>&);
++ bool isLockedToSubSolarPoint () const;
++ bool isSubSolarPointIconVisible () const;
++ void setLockToSubSolarPoint (bool visible);
++ void setSubSolarPointIconVisible (bool visible);
+ };
+ // MarbleMap
+
+diff --git a/src/bindings/python/sip/MarbleModel.sip b/src/bindings/python/sip/MarbleModel.sip
+index 93139a9..8374c89 100644
+--- a/src/bindings/python/sip/MarbleModel.sip
++++ b/src/bindings/python/sip/MarbleModel.sip
+@@ -63,14 +63,13 @@ public:
+ QString planetId () const;
+ explicit MarbleModel (QObject* parent /TransferThis/ = 0);
+ //ig GeoDataTreeModel* treeModel ();
+- QAbstractItemModel* placemarkModel ();
++//ig QAbstractItemModel* placemarkModel ();
+ QItemSelectionModel* placemarkSelectionModel ();
+ //ig GeoSceneDocument* mapTheme ();
+ void home (qreal& lon, qreal& lat, int& zoom) const;
+ Marble::MapThemeManager* mapThemeManager ();
+ //ig HttpDownloadManager* downloadManager ();
+ //ig FileManager* fileManager ();
+-//ig FileViewModel* fileViewModel ();
+ //ig MarbleClock* clock ();
+ //ig Marble::SunLocator* sunLocator ();
+ //ig const RoutingManager* routingManager () const;
+@@ -89,6 +88,10 @@ public:
+ //ig PluginManager* pluginManager ();
+ signals:
+ void homeChanged (const Marble::GeoDataCoordinates newHomePoint);
++public:
++ const Marble::GeoDataTreeModel* treeModel () const;
++ const QAbstractItemModel* placemarkModel () const;
++ void updateProperty (const QString& property, bool value);
+ };
+ // MarbleModel
+
+diff --git a/src/bindings/python/sip/MarbleWebView.sip b/src/bindings/python/sip/MarbleWebView.sip
+new file mode 100644
+index 0000000..5e96560
+--- /dev/null
++++ b/src/bindings/python/sip/MarbleWebView.sip
+@@ -0,0 +1,19 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
+diff --git a/src/bindings/python/sip/MarbleWidget.sip b/src/bindings/python/sip/MarbleWidget.sip
+index f67b4a3..ede7fbb 100644
+--- a/src/bindings/python/sip/MarbleWidget.sip
++++ b/src/bindings/python/sip/MarbleWidget.sip
+@@ -186,6 +186,14 @@ public:
+ //ig const TextureLayer* textureLayer () const;
+ void setShowRuntimeTrace (bool visible);
+ void downloadRegion (const QVector<Marble::TileCoordsPyramid>&);
++
++// FIXME
++//ig PopupLayer* popupLayer ();
++ bool isLockedToSubSolarPoint () const;
++ bool isSubSolarPointIconVisible () const;
++ void setZoom (int zoom, Marble::FlyToMode mode = Marble::Instant);
++ void setLockToSubSolarPoint (bool visible);
++ void setSubSolarPointIconVisible (bool visible);
+ };
+ // MarbleWidget
+
+diff --git a/src/bindings/python/sip/ParseRunnerPlugin.sip b/src/bindings/python/sip/ParseRunnerPlugin.sip
+index 24da447..262eaf5 100644
+--- a/src/bindings/python/sip/ParseRunnerPlugin.sip
++++ b/src/bindings/python/sip/ParseRunnerPlugin.sip
+@@ -31,5 +31,6 @@ public:
+ virtual QString fileFormatDescription () const=0;
+ virtual QStringList fileExtensions () const=0;
+ virtual QIcon icon () const;
++ virtual Marble::ParsingRunner* newRunner () const=0;
+ };
+ };
+diff --git a/src/bindings/python/sip/ParsingRunner.sip b/src/bindings/python/sip/ParsingRunner.sip
+new file mode 100644
+index 0000000..ce098e3
+--- /dev/null
++++ b/src/bindings/python/sip/ParsingRunner.sip
+@@ -0,0 +1,34 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class ParsingRunner : QObject
++{
++%TypeHeaderCode
++#include <ParsingRunner.h>
++%End
++
++public:
++ explicit ParsingRunner (QObject* parent /TransferThis/ = 0);
++ virtual void parseFile (const QString& fileName, Marble::DocumentRole role)=0;
++signals:
++ void parsingFinished (Marble::GeoDataDocument* document, const QString& error = QString());
++};
++};
+diff --git a/src/bindings/python/sip/Planet.sip b/src/bindings/python/sip/Planet.sip
+index 26f2afb..87f80fc 100644
+--- a/src/bindings/python/sip/Planet.sip
++++ b/src/bindings/python/sip/Planet.sip
+@@ -64,6 +64,10 @@ public:
+ static QString name (const QString& id);
+ ~Planet ();
+ static QStringList planetList ();
++ bool hasAtmosphere () const;
++ void setHasAtmosphere (bool enabled);
++ QColor atmosphereColor () const;
++ void setAtmosphereColor (const QColor& color);
+ };
+ // Planet
+
+diff --git a/src/bindings/python/sip/QtMarbleConfigDialog.sip b/src/bindings/python/sip/QtMarbleConfigDialog.sip
+index 804ad10..befd09a 100644
+--- a/src/bindings/python/sip/QtMarbleConfigDialog.sip
++++ b/src/bindings/python/sip/QtMarbleConfigDialog.sip
+@@ -61,5 +61,6 @@ public:
+ int chosenTimezone () const;
+ void initializeCustomTimezone ();
+ QLocale::MeasurementSystem measurementSystem () const;
++ bool inertialEarthRotation () const;
+ };
+ };
+diff --git a/src/bindings/python/sip/RenderPlugin.sip b/src/bindings/python/sip/RenderPlugin.sip
+index f7bed99..f8504ea 100644
+--- a/src/bindings/python/sip/RenderPlugin.sip
++++ b/src/bindings/python/sip/RenderPlugin.sip
+@@ -62,6 +62,21 @@ public:
+ QStringList settingKeys ();
+ bool setSetting (const QString& key, const QVariant& value);
+ QVariant setting (const QString& key);
++ enum RenderType
++ {
++ UnknownRenderType,
++ TopLevelRenderType,
++ PanelRenderType,
++ OnlineRenderType,
++ ThemeRenderType
++ };
++ virtual const QList<QActionGroup*>* actionGroups () const;
++ virtual const QList<QActionGroup*>* toolbarActionGroups () const;
++ bool isUserCheckable () const;
++ virtual Marble::RenderPlugin::RenderType renderType () const;
++ void setUserCheckable (bool isUserCheckable);
++signals:
++ void userCheckableChanged (bool isUserCheckable);
+ };
+ // RenderPlugin
+
+diff --git a/src/bindings/python/sip/ReverseGeocodingRunner.sip b/src/bindings/python/sip/ReverseGeocodingRunner.sip
+new file mode 100644
+index 0000000..887f063
+--- /dev/null
++++ b/src/bindings/python/sip/ReverseGeocodingRunner.sip
+@@ -0,0 +1,37 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class ReverseGeocodingRunner : QObject
++{
++%TypeHeaderCode
++#include <ReverseGeocodingRunner.h>
++%End
++
++public:
++ explicit ReverseGeocodingRunner (QObject* parent /TransferThis/);
++ void setModel (const Marble::MarbleModel* model);
++ virtual void reverseGeocoding (const Marble::GeoDataCoordinates& coordinates)=0;
++signals:
++ void reverseGeocodingFinished (const Marble::GeoDataCoordinates& coordinates, const Marble::GeoDataPlacemark& placemark);
++protected:
++ const Marble::MarbleModel* model () const;
++};
++};
+diff --git a/src/bindings/python/sip/ReverseGeocodingRunnerPlugin.sip b/src/bindings/python/sip/ReverseGeocodingRunnerPlugin.sip
+index 4642de9..d1f7252 100644
+--- a/src/bindings/python/sip/ReverseGeocodingRunnerPlugin.sip
++++ b/src/bindings/python/sip/ReverseGeocodingRunnerPlugin.sip
+@@ -36,5 +36,7 @@ public:
+ protected:
+ void setSupportedCelestialBodies (const QStringList& celestialBodies);
+ void setCanWorkOffline (bool canWorkOffline);
++public:
++ virtual Marble::ReverseGeocodingRunner* newRunner () const=0;
+ };
+ };
+diff --git a/src/bindings/python/sip/RoutingModel.sip b/src/bindings/python/sip/RoutingModel.sip
+index c2d8ac5..1da2865 100644
+--- a/src/bindings/python/sip/RoutingModel.sip
++++ b/src/bindings/python/sip/RoutingModel.sip
+@@ -49,6 +49,6 @@ signals:
+ void deviatedFromRoute (bool deviated);
+ void currentRouteChanged ();
+ public:
+- int rightNeighbor (const Marble::GeoDataCoordinates& position, const Marble::RouteRequest * route) const;
++ int rightNeighbor (const Marble::GeoDataCoordinates& position, const Marble::RouteRequest* route) const;
+ };
+ };
+diff --git a/src/bindings/python/sip/RoutingRunner.sip b/src/bindings/python/sip/RoutingRunner.sip
+new file mode 100644
+index 0000000..a91f943
+--- /dev/null
++++ b/src/bindings/python/sip/RoutingRunner.sip
+@@ -0,0 +1,37 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class RoutingRunner : QObject
++{
++%TypeHeaderCode
++#include <RoutingRunner.h>
++%End
++
++public:
++ explicit RoutingRunner (QObject* parent /TransferThis/);
++ void setModel (const Marble::MarbleModel* model);
++ virtual void retrieveRoute (const Marble::RouteRequest* request)=0;
++signals:
++ void routeCalculated (Marble::GeoDataDocument* route);
++protected:
++ const Marble::MarbleModel* model () const;
++};
++};
+diff --git a/src/bindings/python/sip/RoutingRunnerPlugin.sip b/src/bindings/python/sip/RoutingRunnerPlugin.sip
+index b8381eb..3ea0313 100644
+--- a/src/bindings/python/sip/RoutingRunnerPlugin.sip
++++ b/src/bindings/python/sip/RoutingRunnerPlugin.sip
+@@ -41,5 +41,7 @@ protected:
+ void setStatusMessage (const QString& message);
+ void setSupportedCelestialBodies (const QStringList& celestialBodies);
+ void setCanWorkOffline (bool canWorkOffline);
++public:
++ virtual Marble::RoutingRunner* newRunner () const=0;
+ };
+ };
+diff --git a/src/bindings/python/sip/ScreenGraphicsItem.sip b/src/bindings/python/sip/ScreenGraphicsItem.sip
+index eace811..fffebb9 100644
+--- a/src/bindings/python/sip/ScreenGraphicsItem.sip
++++ b/src/bindings/python/sip/ScreenGraphicsItem.sip
+@@ -35,7 +35,8 @@ public:
+
+ enum GraphicsItemFlag
+ {
+- ItemIsMovable
++ ItemIsMovable,
++ ItemIsHideable
+ };
+ typedef QFlags<Marble::ScreenGraphicsItem::GraphicsItemFlag> GraphicsItemFlags;
+ virtual ~ScreenGraphicsItem ();
+diff --git a/src/bindings/python/sip/SearchRunner.sip b/src/bindings/python/sip/SearchRunner.sip
+new file mode 100644
+index 0000000..b8f7009
+--- /dev/null
++++ b/src/bindings/python/sip/SearchRunner.sip
+@@ -0,0 +1,38 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class SearchRunner : QObject
++{
++%TypeHeaderCode
++#include <SearchRunner.h>
++%End
++
++public:
++ explicit SearchRunner (QObject* parent /TransferThis/ = 0);
++ void setModel (const Marble::MarbleModel* model);
++ virtual void search (const QString& searchTerm, const Marble::GeoDataLatLonAltBox& preferred)=0;
++signals:
++// FIXME
++//ig void searchFinished (QVector<Marble::GeoDataPlacemark*> result);
++protected:
++ const Marble::MarbleModel* model () const;
++};
++};
+diff --git a/src/bindings/python/sip/SearchRunnerPlugin.sip b/src/bindings/python/sip/SearchRunnerPlugin.sip
+index 2924e79..874e74f 100644
+--- a/src/bindings/python/sip/SearchRunnerPlugin.sip
++++ b/src/bindings/python/sip/SearchRunnerPlugin.sip
+@@ -36,5 +36,7 @@ public:
+ protected:
+ void setSupportedCelestialBodies (const QStringList& celestialBodies);
+ void setCanWorkOffline (bool canWorkOffline);
++public:
++ virtual Marble::SearchRunner* newRunner () const=0;
+ };
+ };
+diff --git a/src/bindings/python/sip/TileId.sip b/src/bindings/python/sip/TileId.sip
+new file mode 100644
+index 0000000..0f709bd
+--- /dev/null
++++ b/src/bindings/python/sip/TileId.sip
+@@ -0,0 +1,47 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
++namespace Marble
++{
++class TileId
++{
++%TypeHeaderCode
++#include <TileId.h>
++%End
++
++public:
++ TileId (const QString& mapThemeId, int zoomLevel, int tileX, int tileY);
++ TileId (uint mapThemeIdHash, int zoomLevel, int tileX, int tileY);
++ TileId ();
++ int zoomLevel () const;
++ int x () const;
++ int y () const;
++ uint mapThemeIdHash () const;
++ bool operator == (const Marble::TileId& rhs) const;
++ bool operator < (const Marble::TileId& rhs) const;
++ static Marble::TileId fromCoordinates (const Marble::GeoDataCoordinates& coords, int popularity);
++};
++uint qHash (const Marble::TileId&);
++//ig int TileId::zoomLevel () const;
++//ig int TileId::x () const;
++//ig int TileId::y () const;
++//ig uint TileId::mapThemeIdHash () const;
++//ig uint qHash (const Marble::TileId& tid);
++};
++//ig QDebug operator << (QDebug, const Marble::TileId&);
+diff --git a/src/bindings/python/sip/ViewportParams.sip b/src/bindings/python/sip/ViewportParams.sip
+index a2d4b45..b33406b 100644
+--- a/src/bindings/python/sip/ViewportParams.sip
++++ b/src/bindings/python/sip/ViewportParams.sip
+@@ -76,6 +76,7 @@ public:
+ //ig bool screenCoordinates (const Marble::GeoDataCoordinates& coordinates, qreal* x, qreal& y, int& pointRepeatNum, bool& globeHidesPoint) const;
+ bool screenCoordinates (const Marble::GeoDataCoordinates& coordinates, qreal* x, qreal& y, int& pointRepeatNum, const QSizeF& size, bool& globeHidesPoint) const;
+ //ig bool screenCoordinates (const Marble::GeoDataLineString& lineString, QVector<QPolygonF*>& polygons) const;
++ explicit ViewportParams (Marble::Projection projection, qreal centerLongitude = 0, qreal centerLatatitude = 0, int radius = 2000, const QSize& size = QSize(100,100));
+ };
+ // ViewportParams
+
+diff --git a/src/bindings/python/sip/WikipediaService.sip b/src/bindings/python/sip/WikipediaService.sip
+new file mode 100644
+index 0000000..5e96560
+--- /dev/null
++++ b/src/bindings/python/sip/WikipediaService.sip
+@@ -0,0 +1,19 @@
++// Copyright 2011 Simon Edwards <simon at simonzone.com>
++
++// Generated by twine2
++
++// This program is free software; you can redistribute it and/or modify
++// it under the terms of the GNU Library General Public License as
++// published by the Free Software Foundation; either version 2, or
++// (at your option) any later version.
++
++// This program is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details
++
++// You should have received a copy of the GNU Library General Public
++// License along with this program; if not, write to the
++// Free Software Foundation, Inc.,
++// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++
+diff --git a/src/bindings/python/sip/marblemod.sip b/src/bindings/python/sip/marblemod.sip
+index 9dc7f09..9baccd4 100644
+--- a/src/bindings/python/sip/marblemod.sip
++++ b/src/bindings/python/sip/marblemod.sip
+@@ -27,10 +27,9 @@
+ %Import QtGui/QtGuimod.sip
+ %Import QtWebKit/QtWebKitmod.sip
+ %Import QtXml/QtXmlmod.sip
+-%Import QtDeclarative/QtDeclarativemod.sip
+
+ %Include AbstractLayerInterface.sip
+-%Include GeoDataGroundOverlay.sip
++%Include CylindricalProjection.sip
+ %Include TileCreatorDialog.sip
+ %Include AbstractDataPlugin.sip
+ %Include AbstractDataPluginItem.sip
+@@ -44,7 +43,6 @@
+ %Include BookmarkManager.sip
+ %Include ClipPainter.sip
+ %Include CurrentLocationWidget.sip
+-%Include CylindricalProjection.sip
+ %Include DialogConfigurationInterface.sip
+ %Include DownloadRegion.sip
+ %Include DownloadRegionDialog.sip
+@@ -53,6 +51,7 @@
+ %Include FrameGraphicsItem.sip
+ %Include GeoDataAbstractView.sip
+ %Include GeoDataAccuracy.sip
++%Include GeoDataBalloonStyle.sip
+ %Include GeoDataColorStyle.sip
+ %Include GeoDataContainer.sip
+ %Include GeoDataCoordinates.sip
+@@ -62,17 +61,20 @@
+ %Include GeoDataGeometry.sip
+ %Include GeoDataHotSpot.sip
+ %Include GeoDataIconStyle.sip
++%Include GeoDataItemIcon.sip
+ %Include GeoDataLabelStyle.sip
+ %Include GeoDataLatLonAltBox.sip
+ %Include GeoDataLatLonBox.sip
+ %Include GeoDataLineString.sip
+ %Include GeoDataLineStyle.sip
+ %Include GeoDataLinearRing.sip
++%Include GeoDataListStyle.sip
+ %Include GeoDataLod.sip
+ %Include GeoDataLookAt.sip
+ %Include GeoDataMultiGeometry.sip
+ %Include GeoDataObject.sip
+ %Include GeoDataOverlay.sip
++%Include GeoDataGroundOverlay.sip
+ %Include GeoDataPlacemark.sip
+ %Include GeoDataPoint.sip
+ %Include GeoDataPolyStyle.sip
+@@ -81,6 +83,9 @@
+ %Include GeoDataStyle.sip
+ %Include GeoDataStyleMap.sip
+ %Include GeoDataStyleSelector.sip
++%Include GeoDataTimePrimitive.sip
++%Include GeoDataTimeSpan.sip
++%Include GeoDataTimeStamp.sip
+ %Include GeoDataTrack.sip
+ %Include GeoDataTreeModel.sip
+ %Include GeoDocument.sip
+@@ -93,10 +98,12 @@
+ %Include LatLonEdit.sip
+ %Include LayerInterface.sip
+ %Include LegendWidget.sip
++%Include MapThemeDownloadDialog.sip
+ %Include MapThemeManager.sip
+ %Include MapViewWidget.sip
+ %Include MapWizard.sip
+ %Include MarbleAboutDialog.sip
++%Include MarbleColors.sip
+ %Include MarbleControlBox.sip
+ %Include MarbleDirs.sip
+ %Include MarbleGlobal.sip
+@@ -106,9 +113,11 @@
+ %Include MarbleModel.sip
+ %Include MarbleNavigator.sip
+ %Include MarbleRunnerManager.sip
++%Include MarbleWebView.sip
+ %Include MarbleWidget.sip
+ %Include NavigationWidget.sip
+ %Include ParseRunnerPlugin.sip
++%Include ParsingRunner.sip
+ %Include Planet.sip
+ %Include PluginAboutDialog.sip
+ %Include PluginInterface.sip
+@@ -119,18 +128,23 @@
+ %Include Quaternion.sip
+ %Include RenderPlugin.sip
+ %Include RenderPluginInterface.sip
++%Include ReverseGeocodingRunner.sip
+ %Include ReverseGeocodingRunnerPlugin.sip
++%Include RoutingRunner.sip
+ %Include RoutingRunnerPlugin.sip
+ %Include ScreenGraphicsItem.sip
++%Include SearchRunner.sip
+ %Include SearchRunnerPlugin.sip
+ %Include Serializable.sip
+ %Include SunLocator.sip
+ %Include TileCoordsPyramid.sip
+ %Include TileCreator.sip
++%Include TileId.sip
+ %Include TileLevelRangeWidget.sip
+ %Include TinyWebBrowser.sip
+ %Include ViewportParams.sip
+ %Include WidgetGraphicsItem.sip
++%Include WikipediaService.sip
+ %Include AlternativeRoutesModel.sip
+ %Include Maneuver.sip
+ %Include Route.sip
+--
+1.8.3.1
+
diff --git a/marble.spec b/marble.spec
index 1de8019..dfcf656 100644
--- a/marble.spec
+++ b/marble.spec
@@ -1,11 +1,11 @@
## enable python bindings or not
-#global python 1
+%global python 1
Name: marble
Summary: Virtual globe and world atlas
Epoch: 1
Version: 4.11.0
-Release: 1%{?dist}
+Release: 2%{?dist}
License: LGPLv2+
#URL: https://projects.kde.org/projects/kde/kdeedu/marble
@@ -25,6 +25,8 @@ Patch0: marble-4.10.90-qextserialport.patch
## upstreamable patches
## upstream patches
+Patch101: 0001-Python-bindings-update.patch
+Patch102: 0002-Python-bindings-update.patch
BuildRequires: desktop-file-utils
BuildRequires: kdelibs4-devel >= %{version}
@@ -107,7 +109,10 @@ Requires: pykde4 >= %{version}
%prep
%setup -q
+
%patch0 -p1 -b .qextserialport
+%patch101 -p1 -b .0001
+%patch102 -p1 -b .0002
%build
@@ -201,6 +206,9 @@ fi
%changelog
+* Sun Aug 11 2013 Rex Dieter <rdieter at fedoraproject.org> 4.11.0-2
+- (re)enable python bindings
+
* Thu Aug 08 2013 Than Ngo <than at redhat.com> - 4.11.0-1
- 4.11.0
More information about the scm-commits
mailing list