[QGIS Commit] r10483 - in branches/vector_overlay_branch/src: core plugins/diagram_overlay

svn_qgis at osgeo.org svn_qgis at osgeo.org
Mon Apr 6 07:34:08 EDT 2009


Author: mhugent
Date: 2009-04-06 07:34:08 -0400 (Mon, 06 Apr 2009)
New Revision: 10483

Modified:
   branches/vector_overlay_branch/src/core/qgspalobjectpositionmanager.cpp
   branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramdialog.cpp
   branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramdialog.h
   branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramoverlay.cpp
   branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramoverlay.h
   branches/vector_overlay_branch/src/plugins/diagram_overlay/qgswkndiagramfactory.h
Log:
Disable diagram dialog if diagram display is unchecked

Modified: branches/vector_overlay_branch/src/core/qgspalobjectpositionmanager.cpp
===================================================================
--- branches/vector_overlay_branch/src/core/qgspalobjectpositionmanager.cpp	2009-04-06 09:41:30 UTC (rev 10482)
+++ branches/vector_overlay_branch/src/core/qgspalobjectpositionmanager.cpp	2009-04-06 11:34:08 UTC (rev 10483)
@@ -58,7 +58,7 @@
       return; //error
     }
 
-  pal::Layer* positionLayer = mPositionEngine.addLayer(QString::number(mNumberOfLayers).toLocal8Bit().data(), 0, 1000000, labelArrangement, pal::PIXEL, 0, false, true, true);
+  pal::Layer* positionLayer = mPositionEngine.addLayer(QString::number(mNumberOfLayers).toLocal8Bit().data(), 0, 1000000, labelArrangement, pal::PIXEL, 0.5, true, true, true);
   ++mNumberOfLayers;
 
   if(!positionLayer)

Modified: branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramdialog.cpp
===================================================================
--- branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramdialog.cpp	2009-04-06 09:41:30 UTC (rev 10482)
+++ branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramdialog.cpp	2009-04-06 11:34:08 UTC (rev 10483)
@@ -65,6 +65,7 @@
     {
       restoreSettings(previousOverlay);
     }
+  setGuiElementsEnabled(mDisplayDiagramsCheckBox->checkState() == Qt::Checked);
 }
 
 QgsDiagramDialog::QgsDiagramDialog(): mVectorLayer(0)
@@ -138,6 +139,19 @@
     }
 }
 
+void QgsDiagramDialog::on_mDisplayDiagramsCheckBox_stateChanged(int state)
+{
+  //activate / deactivate all gui items depending on the checkbox state
+  if(state == Qt::Checked)
+  {
+    setGuiElementsEnabled(true);
+  }
+  else
+  {
+    setGuiElementsEnabled(false);
+  }
+}
+
 void QgsDiagramDialog::apply() const
 {
     if(!mVectorLayer)
@@ -318,5 +332,17 @@
   }
 }
 
+void QgsDiagramDialog::setGuiElementsEnabled(bool enabled)
+{
+  mDiagramTypeComboBox->setEnabled(enabled);
+  mTypeLabel->setEnabled(enabled);
+  mDiagramFactoryStackedWidget->setEnabled(enabled);
+  mClassificationTypeLabel->setEnabled(enabled);
+  mClassificationTypeComboBox->setEnabled(enabled);
+  mClassificationLabel->setEnabled(enabled);
+  mClassificationComboBox->setEnabled(enabled);
+  mWidgetStackRenderers->setEnabled(enabled);
+}
 
 
+

Modified: branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramdialog.h
===================================================================
--- branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramdialog.h	2009-04-06 09:41:30 UTC (rev 10482)
+++ branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramdialog.h	2009-04-06 11:34:08 UTC (rev 10483)
@@ -37,6 +37,7 @@
   void on_mClassificationTypeComboBox_currentIndexChanged(const QString& newType);
   void on_mClassificationComboBox_currentIndexChanged(const QString& newAttribute);
   void on_mDiagramTypeComboBox_currentIndexChanged(const QString& text);
+  void on_mDisplayDiagramsCheckBox_stateChanged(int state);
 
 
  private:
@@ -45,6 +46,8 @@
   void restoreSettings(const QgsVectorOverlay* overlay);
   /**Vector layer containing the features to be symbolized with diagrams*/
   QgsVectorLayer* mVectorLayer;
+  /**Activate / deactivate all the input elements of this dialog*/
+  void setGuiElementsEnabled(bool enabled);
 };
 
 #endif

Modified: branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramoverlay.cpp
===================================================================
--- branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramoverlay.cpp	2009-04-06 09:41:30 UTC (rev 10482)
+++ branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramoverlay.cpp	2009-04-06 11:34:08 UTC (rev 10483)
@@ -49,6 +49,11 @@
   mDiagramRenderer = r;
 }
 
+const QgsDiagramRenderer* QgsDiagramOverlay::diagramRenderer() const
+{
+  return mDiagramRenderer;
+}
+
 void QgsDiagramOverlay::createOverlayObjects(const QgsRenderContext& renderContext)
 {
     if(!mDisplayFlag)

Modified: branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramoverlay.h
===================================================================
--- branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramoverlay.h	2009-04-06 09:41:30 UTC (rev 10482)
+++ branches/vector_overlay_branch/src/plugins/diagram_overlay/qgsdiagramoverlay.h	2009-04-06 11:34:08 UTC (rev 10483)
@@ -34,7 +34,7 @@
   //setters and getters
   QString typeName() const{return "diagram";}
   void setDiagramRenderer(QgsDiagramRenderer* r);
-  const QgsDiagramRenderer* diagramRenderer() const {return mDiagramRenderer;}
+  const QgsDiagramRenderer* diagramRenderer() const;
 
   bool readXML(const QDomNode& overlayNode);
   bool writeXML(QDomNode& layer_node, QDomDocument& doc) const;

Modified: branches/vector_overlay_branch/src/plugins/diagram_overlay/qgswkndiagramfactory.h
===================================================================
--- branches/vector_overlay_branch/src/plugins/diagram_overlay/qgswkndiagramfactory.h	2009-04-06 09:41:30 UTC (rev 10482)
+++ branches/vector_overlay_branch/src/plugins/diagram_overlay/qgswkndiagramfactory.h	2009-04-06 11:34:08 UTC (rev 10483)
@@ -42,7 +42,7 @@
   /**Writes the wkn diagram information into a <factory> tag*/
   bool writeXML(QDomNode& overlay_node, QDomDocument& doc) const;
   /**Possibility for wkn subclasses to write specific information into the XML document*/
-  virtual bool _writeXML(QDomNode& factory_node, QDomDocument& doc) const {};
+  virtual bool _writeXML(QDomNode& factory_node, QDomDocument& doc) const {return true;}
   /**Returns the property described by the size (e.g. diameter or height). This can be important to
    know if e.g. size has to be calculated proportional to pie area*/
   virtual QgsDiagramFactory::SizeType sizeType() const = 0;



More information about the QGIS-commit mailing list