[QGIS Commit] r15511 - in trunk/qgis/src: app core plugins/dxf2shp_converter plugins/oracle_raster plugins/sqlanywhere

svn_qgis at osgeo.org svn_qgis at osgeo.org
Wed Mar 16 02:41:17 EDT 2011


Author: jef
Date: 2011-03-15 23:41:17 -0700 (Tue, 15 Mar 2011)
New Revision: 15511

Modified:
   trunk/qgis/src/app/qgsmaptoollabel.cpp
   trunk/qgis/src/app/qgsvectorlayerproperties.cpp
   trunk/qgis/src/core/CMakeLists.txt
   trunk/qgis/src/core/qgsdiagram.cpp
   trunk/qgis/src/core/qgsdiagramrendererv2.h
   trunk/qgis/src/core/qgspallabeling.cpp
   trunk/qgis/src/core/qgspallabeling.h
   trunk/qgis/src/core/qgsvectorlayer.cpp
   trunk/qgis/src/core/qgsvectorlayer.h
   trunk/qgis/src/plugins/dxf2shp_converter/CMakeLists.txt
   trunk/qgis/src/plugins/oracle_raster/CMakeLists.txt
   trunk/qgis/src/plugins/sqlanywhere/CMakeLists.txt
Log:
exclude pal headers from API and install qgsdiagramrendererv2.h

Modified: trunk/qgis/src/app/qgsmaptoollabel.cpp
===================================================================
--- trunk/qgis/src/app/qgsmaptoollabel.cpp	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/app/qgsmaptoollabel.cpp	2011-03-16 06:41:17 UTC (rev 15511)
@@ -20,6 +20,7 @@
 #include "qgsmaplayerregistry.h"
 #include "qgsrubberband.h"
 #include "qgsvectorlayer.h"
+#include "qgsdiagramrendererv2.h"
 #include <QMouseEvent>
 
 QgsMapToolLabel::QgsMapToolLabel( QgsMapCanvas* canvas ): QgsMapTool( canvas ), mLabelRubberBand( 0 ), mFeatureRubberBand( 0 ), mFixPointRubberBand( 0 )
@@ -394,11 +395,11 @@
   const QgsVectorLayer* vlayer = dynamic_cast<const QgsVectorLayer*>( ml );
   if ( vlayer && vlayer->diagramRenderer() )
   {
-    QgsDiagramLayerSettings dls = vlayer->diagramLayerSettings();
-    if ( dls.xPosColumn >= 0 && dls.yPosColumn >= 0 )
+    const QgsDiagramLayerSettings *dls = vlayer->diagramLayerSettings();
+    if ( dls && dls->xPosColumn >= 0 && dls->yPosColumn >= 0 )
     {
-      xCol = dls.xPosColumn;
-      yCol = dls.yPosColumn;
+      xCol = dls->xPosColumn;
+      yCol = dls->yPosColumn;
       return true;
     }
   }

Modified: trunk/qgis/src/app/qgsvectorlayerproperties.cpp
===================================================================
--- trunk/qgis/src/app/qgsvectorlayerproperties.cpp	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/app/qgsvectorlayerproperties.cpp	2011-03-16 06:41:17 UTC (rev 15511)
@@ -1628,7 +1628,7 @@
         break;
       case QGis::UnknownGeometry:
       case QGis::NoGeometry:
-	break;
+        break;
     }
     mBackgroundColorButton->setColor( QColor( 255, 255, 255, 255 ) );
   }
@@ -1689,13 +1689,16 @@
       }
     }
 
-    QgsDiagramLayerSettings dls = layer->diagramLayerSettings();
-    mDiagramDistanceSpinBox->setValue( dls.dist );
-    mPrioritySlider->setValue( dls.priority );
-    mDataDefinedXComboBox->setCurrentIndex( mDataDefinedXComboBox->findData( dls.xPosColumn ) );
-    mDataDefinedYComboBox->setCurrentIndex( mDataDefinedYComboBox->findData( dls.yPosColumn ) );
-    mPlacementComboBox->setCurrentIndex( mPlacementComboBox->findData( dls.placement ) );
-    mLineOptionsComboBox->setCurrentIndex( mLineOptionsComboBox->findData( dls.placementFlags ) );
+    const QgsDiagramLayerSettings *dls = layer->diagramLayerSettings();
+    if ( dls )
+    {
+      mDiagramDistanceSpinBox->setValue( dls->dist );
+      mPrioritySlider->setValue( dls->priority );
+      mDataDefinedXComboBox->setCurrentIndex( mDataDefinedXComboBox->findData( dls->xPosColumn ) );
+      mDataDefinedYComboBox->setCurrentIndex( mDataDefinedYComboBox->findData( dls->yPosColumn ) );
+      mPlacementComboBox->setCurrentIndex( mPlacementComboBox->findData( dls->placement ) );
+      mLineOptionsComboBox->setCurrentIndex( mLineOptionsComboBox->findData( dls->placementFlags ) );
+    }
 
     if ( dr->diagram() )
     {

Modified: trunk/qgis/src/core/CMakeLists.txt
===================================================================
--- trunk/qgis/src/core/CMakeLists.txt	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/core/CMakeLists.txt	2011-03-16 06:41:17 UTC (rev 15511)
@@ -472,6 +472,7 @@
   symbology-ng/qgssymbologyv2conversion.h
   symbology-ng/qgssymbolv2.h
   symbology-ng/qgsvectorcolorrampv2.h
+  qgsdiagramrendererv2.h
 
   spatialindex/qgsspatialindex.h
 )

Modified: trunk/qgis/src/core/qgsdiagram.cpp
===================================================================
--- trunk/qgis/src/core/qgsdiagram.cpp	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/core/qgsdiagram.cpp	2011-03-16 06:41:17 UTC (rev 15511)
@@ -3,6 +3,7 @@
 #include "qgsrendercontext.h"
 
 #include <QPainter>
+#include <QBrush>
 
 void QgsDiagram::setPenWidth( QPen& pen, const QgsDiagramSettings& s, const QgsRenderContext& c )
 {

Modified: trunk/qgis/src/core/qgsdiagramrendererv2.h
===================================================================
--- trunk/qgis/src/core/qgsdiagramrendererv2.h	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/core/qgsdiagramrendererv2.h	2011-03-16 06:41:17 UTC (rev 15511)
@@ -6,7 +6,6 @@
 #include <QList>
 #include <QPointF>
 #include <QSizeF>
-#include "pal/layer.h" //pal::Layer
 #include "qgsfeature.h"
 #include "qgspallabeling.h"
 
@@ -15,6 +14,7 @@
 class QgsFeature;
 class QgsRenderContext;
 class QDomElement;
+namespace pal { class Layer; }
 
 struct CORE_EXPORT QgsDiagramLayerSettings
 {

Modified: trunk/qgis/src/core/qgspallabeling.cpp
===================================================================
--- trunk/qgis/src/core/qgspallabeling.cpp	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/core/qgspallabeling.cpp	2011-03-16 06:41:17 UTC (rev 15511)
@@ -753,18 +753,18 @@
   return 1; // init successful
 }
 
-int QgsPalLabeling::addDiagramLayer( QgsVectorLayer* layer, QgsDiagramLayerSettings& s )
+int QgsPalLabeling::addDiagramLayer( QgsVectorLayer* layer, QgsDiagramLayerSettings *s )
 {
-  Layer* l = mPal->addLayer( layer->id().append( "d" ).toLocal8Bit().data(), -1, -1, pal::Arrangement( s.placement ), METER, s.priority, s.obstacle, true, true );
-  l->setArrangementFlags( s.placementFlags );
+  Layer* l = mPal->addLayer( layer->id().append( "d" ).toLocal8Bit().data(), -1, -1, pal::Arrangement( s->placement ), METER, s->priority, s->obstacle, true, true );
+  l->setArrangementFlags( s->placementFlags );
 
-  s.palLayer = l;
+  s->palLayer = l;
   if ( mMapRenderer->hasCrsTransformEnabled() )
-    s.ct = new QgsCoordinateTransform( layer->crs(), mMapRenderer->destinationCrs() );
+    s->ct = new QgsCoordinateTransform( layer->crs(), mMapRenderer->destinationCrs() );
   else
-    s.ct = NULL;
-  s.xform = mMapRenderer->coordinateTransform();
-  mActiveDiagramLayers.insert( layer, s );
+    s->ct = NULL;
+  s->xform = mMapRenderer->coordinateTransform();
+  mActiveDiagramLayers.insert( layer, *s );
   return 1;
 }
 

Modified: trunk/qgis/src/core/qgspallabeling.h
===================================================================
--- trunk/qgis/src/core/qgspallabeling.h	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/core/qgspallabeling.h	2011-03-16 06:41:17 UTC (rev 15511)
@@ -200,7 +200,7 @@
     //! hook called when drawing layer before issuing select()
     virtual int prepareLayer( QgsVectorLayer* layer, QSet<int>& attrIndices, QgsRenderContext& ctx );
     //! adds a diagram layer to the labeling engine
-    virtual int addDiagramLayer( QgsVectorLayer* layer, QgsDiagramLayerSettings& s );
+    virtual int addDiagramLayer( QgsVectorLayer* layer, QgsDiagramLayerSettings *s );
     //! hook called when drawing for every feature in a layer
     virtual void registerFeature( QgsVectorLayer* layer, QgsFeature& feat, const QgsRenderContext& context = QgsRenderContext() );
     virtual void registerDiagramFeature( QgsVectorLayer* layer, QgsFeature& feat, const QgsRenderContext& context = QgsRenderContext() );

Modified: trunk/qgis/src/core/qgsvectorlayer.cpp
===================================================================
--- trunk/qgis/src/core/qgsvectorlayer.cpp	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/core/qgsvectorlayer.cpp	2011-03-16 06:41:17 UTC (rev 15511)
@@ -78,6 +78,7 @@
 #include "qgssymbolv2.h"
 #include "qgssymbollayerv2.h"
 #include "qgssinglesymbolrendererv2.h"
+#include "qgsdiagramrendererv2.h"
 
 #ifdef TESTPROVIDERLIB
 #include <dlfcn.h>
@@ -95,24 +96,25 @@
                                 QString baseName,
                                 QString providerKey,
                                 bool loadDefaultStyleFlag )
-    : QgsMapLayer( VectorLayer, baseName, vectorLayerPath ),
-    mUpdateThreshold( 0 ),     // XXX better default value?
-    mDataProvider( NULL ),
-    mProviderKey( providerKey ),
-    mEditable( false ),
-    mReadOnly( false ),
-    mModified( false ),
-    mMaxUpdatedIndex( -1 ),
-    mActiveCommand( NULL ),
-    mRenderer( 0 ),
-    mRendererV2( NULL ),
-    mUsingRendererV2( false ),
-    mLabel( 0 ),
-    mLabelOn( false ),
-    mVertexMarkerOnlyForSelection( false ),
-    mFetching( false ),
-    mJoinBuffer( 0 ),
-    mDiagramRenderer( 0 )
+    : QgsMapLayer( VectorLayer, baseName, vectorLayerPath )
+    , mUpdateThreshold( 0 )     // XXX better default value?
+    , mDataProvider( NULL )
+    , mProviderKey( providerKey )
+    , mEditable( false )
+    , mReadOnly( false )
+    , mModified( false )
+    , mMaxUpdatedIndex( -1 )
+    , mActiveCommand( NULL )
+    , mRenderer( 0 )
+    , mRendererV2( NULL )
+    , mUsingRendererV2( false )
+    , mLabel( 0 )
+    , mLabelOn( false )
+    , mVertexMarkerOnlyForSelection( false )
+    , mFetching( false )
+    , mJoinBuffer( 0 )
+    , mDiagramRenderer( 0 )
+    , mDiagramLayerSettings( 0 )
 {
   mActions = new QgsAttributeAction( this );
 
@@ -187,6 +189,7 @@
   delete mDataProvider;
   delete mJoinBuffer;
   delete mLabel;
+  delete mDiagramLayerSettings;
 
   // Destroy any cached geometries and clear the references to them
   deleteCachedGeometries();
@@ -2960,7 +2963,8 @@
       QDomElement diagramSettingsElem = node.firstChildElement( "DiagramLayerSettings" );
       if ( !diagramSettingsElem.isNull() )
       {
-        mDiagramLayerSettings.readXML( diagramSettingsElem );
+        mDiagramLayerSettings = new QgsDiagramLayerSettings();
+        mDiagramLayerSettings->readXML( diagramSettingsElem );
       }
     }
   }
@@ -3139,7 +3143,8 @@
     if ( mDiagramRenderer )
     {
       mDiagramRenderer->writeXML( mapLayerNode, doc );
-      mDiagramLayerSettings.writeXML( mapLayerNode, doc );
+      if ( mDiagramLayerSettings )
+        mDiagramLayerSettings->writeXML( mapLayerNode, doc );
     }
   }
 
@@ -5183,10 +5188,10 @@
     }
 
     //register diagram layers
-    if ( mDiagramRenderer )
+    if ( mDiagramRenderer && mDiagramLayerSettings )
     {
-      mDiagramLayerSettings.renderer = mDiagramRenderer;
-      rendererContext.labelingEngine()->addDiagramLayer( this, mDiagramLayerSettings );
+      mDiagramLayerSettings->renderer = mDiagramRenderer;
+      rendererContext.labelingEngine()->addDiagramLayer( this, *mDiagramLayerSettings );
       //add attributes needed by the diagram renderer
       QList<int> att = mDiagramRenderer->diagramAttributes();
       QList<int>::const_iterator attIt = att.constBegin();
@@ -5198,14 +5203,21 @@
         }
       }
       //and the ones needed for data defined diagram positions
-      if ( mDiagramLayerSettings.xPosColumn >= 0 && !attributes.contains( mDiagramLayerSettings.xPosColumn ) )
+      if ( mDiagramLayerSettings->xPosColumn >= 0 && !attributes.contains( mDiagramLayerSettings->xPosColumn ) )
       {
-        attributes << mDiagramLayerSettings.xPosColumn;
+        attributes << mDiagramLayerSettings->xPosColumn;
       }
-      if ( mDiagramLayerSettings.yPosColumn >= 0 && !attributes.contains( mDiagramLayerSettings.yPosColumn ) )
+      if ( mDiagramLayerSettings->yPosColumn >= 0 && !attributes.contains( mDiagramLayerSettings->yPosColumn ) )
       {
-        attributes << mDiagramLayerSettings.yPosColumn;
+        attributes << mDiagramLayerSettings->yPosColumn;
       }
     }
   }
 }
+
+void QgsVectorLayer::setDiagramLayerSettings( const QgsDiagramLayerSettings& s )
+{
+  if ( !mDiagramLayerSettings )
+    mDiagramLayerSettings = new QgsDiagramLayerSettings();
+  *mDiagramLayerSettings = s;
+}

Modified: trunk/qgis/src/core/qgsvectorlayer.h
===================================================================
--- trunk/qgis/src/core/qgsvectorlayer.h	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/core/qgsvectorlayer.h	2011-03-16 06:41:17 UTC (rev 15511)
@@ -24,16 +24,12 @@
 #include <QList>
 #include <QStringList>
 
-
-
 #include "qgis.h"
-#include "qgsdiagramrendererv2.h"
 #include "qgsmaplayer.h"
 #include "qgsfeature.h"
 #include "qgssnapper.h"
 #include "qgsfield.h"
 
-
 class QPainter;
 class QImage;
 
@@ -52,6 +48,8 @@
 class QgsRectangle;
 class QgsVectorLayerJoinBuffer;
 class QgsFeatureRendererV2;
+class QgsDiagramRendererV2;
+class QgsDiagramLayerSettings;
 
 typedef QList<int> QgsAttributeList;
 typedef QSet<int> QgsFeatureIds;
@@ -214,8 +212,8 @@
     void setDiagramRenderer( QgsDiagramRendererV2* r );
     const QgsDiagramRendererV2* diagramRenderer() const { return mDiagramRenderer; }
 
-    void setDiagramLayerSettings( const QgsDiagramLayerSettings& s ) { mDiagramLayerSettings = s; }
-    QgsDiagramLayerSettings diagramLayerSettings() const { return mDiagramLayerSettings; }
+    void setDiagramLayerSettings( const QgsDiagramLayerSettings& s );
+    const QgsDiagramLayerSettings *diagramLayerSettings() const { return mDiagramLayerSettings; }
 
     /** Return renderer V2.
      * @note added in 1.4 */
@@ -951,7 +949,7 @@
     QgsDiagramRendererV2* mDiagramRenderer;
 
     //stores infos about diagram placement (placement type, priority, position distance)
-    QgsDiagramLayerSettings mDiagramLayerSettings;
+    QgsDiagramLayerSettings *mDiagramLayerSettings;
 };
 
 #endif

Modified: trunk/qgis/src/plugins/dxf2shp_converter/CMakeLists.txt
===================================================================
--- trunk/qgis/src/plugins/dxf2shp_converter/CMakeLists.txt	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/plugins/dxf2shp_converter/CMakeLists.txt	2011-03-16 06:41:17 UTC (rev 15511)
@@ -39,7 +39,6 @@
      ../../core/symbology
      ../../gui
      ..
-     ${GEOS_INCLUDE_DIR}
 )
 
 TARGET_LINK_LIBRARIES(dxf2shpconverterplugin

Modified: trunk/qgis/src/plugins/oracle_raster/CMakeLists.txt
===================================================================
--- trunk/qgis/src/plugins/oracle_raster/CMakeLists.txt	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/plugins/oracle_raster/CMakeLists.txt	2011-03-16 06:41:17 UTC (rev 15511)
@@ -38,7 +38,6 @@
      ../../gui
      ..
      ${GDAL_INCLUDE_DIR}
-     ${GEOS_INCLUDE_DIR}
 )
 
 TARGET_LINK_LIBRARIES(oracleplugin

Modified: trunk/qgis/src/plugins/sqlanywhere/CMakeLists.txt
===================================================================
--- trunk/qgis/src/plugins/sqlanywhere/CMakeLists.txt	2011-03-16 05:57:16 UTC (rev 15510)
+++ trunk/qgis/src/plugins/sqlanywhere/CMakeLists.txt	2011-03-16 06:41:17 UTC (rev 15511)
@@ -59,7 +59,6 @@
      ../../app
      ..
      ../../providers/sqlanywhere/sqlanyconnection
-     ${GEOS_INCLUDE_DIR}
 )
 
 TARGET_LINK_LIBRARIES(sqlanywhereplugin



More information about the QGIS-commit mailing list