[QGIS Commit] r11932 - in branches/symbology-ng-branch: python/core
src/app/legend src/core src/core/symbology-ng src/gui/symbology-ng
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Fri Nov 6 06:49:01 EST 2009
Author: wonder
Date: 2009-11-06 06:49:01 -0500 (Fri, 06 Nov 2009)
New Revision: 11932
Added:
branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2registry.cpp
branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2registry.h
Modified:
branches/symbology-ng-branch/python/core/symbology-ng-core.sip
branches/symbology-ng-branch/src/app/legend/qgslegendlayer.cpp
branches/symbology-ng-branch/src/core/CMakeLists.txt
branches/symbology-ng-branch/src/core/symbology-ng/qgscategorizedsymbolrendererv2.cpp
branches/symbology-ng-branch/src/core/symbology-ng/qgsgraduatedsymbolrendererv2.cpp
branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2.cpp
branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2.h
branches/symbology-ng-branch/src/core/symbology-ng/qgssinglesymbolrendererv2.cpp
branches/symbology-ng-branch/src/gui/symbology-ng/qgsrendererv2propertiesdialog.cpp
Log:
Added renderer registry to allow custom renderers. GUI for renderers is still hardcoded.
Modified: branches/symbology-ng-branch/python/core/symbology-ng-core.sip
===================================================================
--- branches/symbology-ng-branch/python/core/symbology-ng-core.sip 2009-11-06 11:23:17 UTC (rev 11931)
+++ branches/symbology-ng-branch/python/core/symbology-ng-core.sip 2009-11-06 11:49:01 UTC (rev 11932)
@@ -34,18 +34,10 @@
public:
- enum RendererType
- {
- RendererSingleSymbol,
- RendererCategorizedSymbol,
- RendererGraduatedSymbol
- // TODO: user type?
- };
-
//! return a new renderer - used by default in vector layers
static QgsFeatureRendererV2* defaultRenderer(QGis::GeometryType geomType) /Factory/;
- RendererType type() const;
+ QString type() const;
virtual QgsSymbolV2* symbolForFeature(QgsFeature& feature)=0;
@@ -69,7 +61,7 @@
void setUsingSymbolLevels(bool usingSymbolLevels);
protected:
- QgsFeatureRendererV2(RendererType type);
+ QgsFeatureRendererV2(QString type);
};
Modified: branches/symbology-ng-branch/src/app/legend/qgslegendlayer.cpp
===================================================================
--- branches/symbology-ng-branch/src/app/legend/qgslegendlayer.cpp 2009-11-06 11:23:17 UTC (rev 11931)
+++ branches/symbology-ng-branch/src/app/legend/qgslegendlayer.cpp 2009-11-06 11:49:01 UTC (rev 11932)
@@ -402,6 +402,7 @@
QPixmap pix(iconSize);
pix.fill(Qt::white);
p.begin(&pix);
+ p.setRenderHint(QPainter::Antialiasing);
sym->drawPreviewIcon(&p, iconSize);
p.end();
return pix;
@@ -417,54 +418,50 @@
bool showClassifiers = settings.value( "/qgis/showLegendClassifiers", false ).toBool();
QgsFeatureRendererV2* renderer = layer->rendererV2();
- switch (renderer->type())
+ QString rendererType = renderer->type();
+ if (rendererType == "singleSymbol")
{
- case QgsFeatureRendererV2::RendererSingleSymbol:
- {
- QgsSingleSymbolRendererV2* r = static_cast<QgsSingleSymbolRendererV2*>(renderer);
- QPixmap pix = _symbolPreviewPixmap(r->symbol(), iconSize);
+ QgsSingleSymbolRendererV2* r = static_cast<QgsSingleSymbolRendererV2*>(renderer);
+ QPixmap pix = _symbolPreviewPixmap(r->symbol(), iconSize);
- itemList.push_back( std::make_pair( "", pix ) );
- }
- break;
- case QgsFeatureRendererV2::RendererCategorizedSymbol:
- {
- QgsCategorizedSymbolRendererV2* r = static_cast<QgsCategorizedSymbolRendererV2*>(renderer);
- if (showClassifiers)
- {
- itemList.push_back( std::make_pair( r->classAttribute(), QPixmap() ) );
- }
+ itemList.push_back( std::make_pair( "", pix ) );
+ }
+ else if (rendererType == "categorizedSymbol")
+ {
+ QgsCategorizedSymbolRendererV2* r = static_cast<QgsCategorizedSymbolRendererV2*>(renderer);
+ if (showClassifiers)
+ {
+ itemList.push_back( std::make_pair( r->classAttribute(), QPixmap() ) );
+ }
- int count = r->categories().count();
- for (int i = 0; i < count; i++)
- {
- const QgsRendererCategoryV2& cat = r->categories()[i];
- QPixmap pix = _symbolPreviewPixmap( cat.symbol(), iconSize );
- itemList.push_back( std::make_pair( cat.label(), pix ) );
- }
- }
- break;
- case QgsFeatureRendererV2::RendererGraduatedSymbol:
- {
- QgsGraduatedSymbolRendererV2* r = static_cast<QgsGraduatedSymbolRendererV2*>(renderer);
- if (showClassifiers)
- {
- itemList.push_back( std::make_pair( r->classAttribute(), QPixmap() ) );
- }
+ int count = r->categories().count();
+ for (int i = 0; i < count; i++)
+ {
+ const QgsRendererCategoryV2& cat = r->categories()[i];
+ QPixmap pix = _symbolPreviewPixmap( cat.symbol(), iconSize );
+ itemList.push_back( std::make_pair( cat.label(), pix ) );
+ }
+ }
+ else if (rendererType == "graduatedSymbol")
+ {
+ QgsGraduatedSymbolRendererV2* r = static_cast<QgsGraduatedSymbolRendererV2*>(renderer);
+ if (showClassifiers)
+ {
+ itemList.push_back( std::make_pair( r->classAttribute(), QPixmap() ) );
+ }
- int count = r->ranges().count();
- for (int i = 0; i < count; i++)
- {
- const QgsRendererRangeV2& range = r->ranges()[i];
- QPixmap pix = _symbolPreviewPixmap( range.symbol(), iconSize );
- itemList.push_back( std::make_pair( range.label(), pix ) );
- }
- }
- break;
- default:
- // nothing for unknown renderers
- break;
+ int count = r->ranges().count();
+ for (int i = 0; i < count; i++)
+ {
+ const QgsRendererRangeV2& range = r->ranges()[i];
+ QPixmap pix = _symbolPreviewPixmap( range.symbol(), iconSize );
+ itemList.push_back( std::make_pair( range.label(), pix ) );
+ }
}
+ else
+ {
+ // nothing for unknown renderers
+ }
changeSymbologySettings( layer, itemList );
}
Modified: branches/symbology-ng-branch/src/core/CMakeLists.txt
===================================================================
--- branches/symbology-ng-branch/src/core/CMakeLists.txt 2009-11-06 11:23:17 UTC (rev 11931)
+++ branches/symbology-ng-branch/src/core/CMakeLists.txt 2009-11-06 11:49:01 UTC (rev 11932)
@@ -13,6 +13,7 @@
symbology-ng/qgsmarkersymbollayerv2.cpp
symbology-ng/qgsfillsymbollayerv2.cpp
symbology-ng/qgsrendererv2.cpp
+ symbology-ng/qgsrendererv2registry.cpp
symbology-ng/qgssinglesymbolrendererv2.cpp
symbology-ng/qgscategorizedsymbolrendererv2.cpp
symbology-ng/qgsgraduatedsymbolrendererv2.cpp
Modified: branches/symbology-ng-branch/src/core/symbology-ng/qgscategorizedsymbolrendererv2.cpp
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgscategorizedsymbolrendererv2.cpp 2009-11-06 11:23:17 UTC (rev 11931)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgscategorizedsymbolrendererv2.cpp 2009-11-06 11:49:01 UTC (rev 11932)
@@ -64,7 +64,7 @@
///////////////////
QgsCategorizedSymbolRendererV2::QgsCategorizedSymbolRendererV2(QString attrName, QgsCategoryList categories)
- : QgsFeatureRendererV2(RendererCategorizedSymbol),
+ : QgsFeatureRendererV2("categorizedSymbol"),
mAttrName(attrName),
mCategories(categories),
mSourceSymbol(NULL),
Modified: branches/symbology-ng-branch/src/core/symbology-ng/qgsgraduatedsymbolrendererv2.cpp
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgsgraduatedsymbolrendererv2.cpp 2009-11-06 11:23:17 UTC (rev 11931)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgsgraduatedsymbolrendererv2.cpp 2009-11-06 11:49:01 UTC (rev 11932)
@@ -69,7 +69,7 @@
QgsGraduatedSymbolRendererV2::QgsGraduatedSymbolRendererV2(QString attrName, QgsRangeList ranges)
- : QgsFeatureRendererV2(RendererGraduatedSymbol),
+ : QgsFeatureRendererV2("graduatedSymbol"),
mAttrName(attrName),
mRanges(ranges),
mMode(Custom),
Modified: branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2.cpp
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2.cpp 2009-11-06 11:23:17 UTC (rev 11931)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2.cpp 2009-11-06 11:49:01 UTC (rev 11932)
@@ -5,9 +5,7 @@
#include "qgssinglesymbolrendererv2.h" // for default renderer
-// TODO: to be removed once renderer registry is in place
-#include "qgscategorizedsymbolrendererv2.h"
-#include "qgsgraduatedsymbolrendererv2.h"
+#include "qgsrendererv2registry.h"
#include "qgsrendercontext.h"
#include "qgsgeometry.h"
@@ -121,7 +119,7 @@
}
-QgsFeatureRendererV2::QgsFeatureRendererV2(RendererType type)
+QgsFeatureRendererV2::QgsFeatureRendererV2(QString type)
: mType(type), mUsingSymbolLevels(false)
{
}
@@ -268,22 +266,13 @@
// load renderer
QString rendererType = element.attribute("type");
- // TODO: use renderer registry
- if (rendererType == "singleSymbol")
- {
- return QgsSingleSymbolRendererV2::create(element);
- }
- else if (rendererType == "categorizedSymbol")
- {
- return QgsCategorizedSymbolRendererV2::create(element);
- }
- else if (rendererType == "graduatedSymbol")
- {
- return QgsGraduatedSymbolRendererV2::create(element);
- }
+ QgsRendererV2CreateFunc pfCreate = QgsRendererV2Registry::instance()->rendererCreateFunction(rendererType);
- // unknown renderer type
- return NULL;
+ // unknown renderer type?
+ if (pfCreate == NULL)
+ return NULL;
+
+ return pfCreate(element);
}
QDomElement QgsFeatureRendererV2::save(QDomDocument& doc)
Modified: branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2.h
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2.h 2009-11-06 11:23:17 UTC (rev 11931)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2.h 2009-11-06 11:49:01 UTC (rev 11932)
@@ -50,18 +50,10 @@
public:
// renderer takes ownership of its symbols!
- enum RendererType
- {
- RendererSingleSymbol,
- RendererCategorizedSymbol,
- RendererGraduatedSymbol
- // TODO: user type?
- };
-
//! return a new renderer - used by default in vector layers
static QgsFeatureRendererV2* defaultRenderer(QGis::GeometryType geomType);
- RendererType type() const { return mType; }
+ QString type() const { return mType; }
// to be overridden
virtual QgsSymbolV2* symbolForFeature(QgsFeature& feature)=0;
@@ -100,9 +92,9 @@
protected:
- QgsFeatureRendererV2(RendererType type);
+ QgsFeatureRendererV2(QString type);
- RendererType mType;
+ QString mType;
bool mUsingSymbolLevels;
};
Added: branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2registry.cpp
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2registry.cpp (rev 0)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2registry.cpp 2009-11-06 11:49:01 UTC (rev 11932)
@@ -0,0 +1,47 @@
+#include "qgsrendererv2registry.h"
+
+// default renderers
+#include "qgssinglesymbolrendererv2.h"
+#include "qgscategorizedsymbolrendererv2.h"
+#include "qgsgraduatedsymbolrendererv2.h"
+
+
+QgsRendererV2Registry* QgsRendererV2Registry::mInstance = NULL;
+
+QgsRendererV2Registry::QgsRendererV2Registry()
+{
+ // add default renderers
+ addRenderer("singleSymbol", QgsSingleSymbolRendererV2::create);
+ addRenderer("categorizedSymbol", QgsCategorizedSymbolRendererV2::create);
+ addRenderer("graduatedSymbol", QgsGraduatedSymbolRendererV2::create);
+}
+
+QgsRendererV2Registry* QgsRendererV2Registry::instance()
+{
+ if (!mInstance)
+ mInstance = new QgsRendererV2Registry();
+
+ return mInstance;
+}
+
+
+bool QgsRendererV2Registry::addRenderer(QString rendererName, QgsRendererV2CreateFunc pfCreate)
+{
+ if (mRenderers.contains(rendererName))
+ return false;
+ mRenderers.insert(rendererName, pfCreate);
+ return true;
+}
+
+bool QgsRendererV2Registry::removeRenderer(QString rendererName)
+{
+ if (!mRenderers.contains(rendererName))
+ return false;
+ mRenderers.remove(rendererName);
+ return true;
+}
+
+QgsRendererV2CreateFunc QgsRendererV2Registry::rendererCreateFunction(QString rendererName)
+{
+ return mRenderers.value(rendererName, NULL);
+}
Added: branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2registry.h
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2registry.h (rev 0)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgsrendererv2registry.h 2009-11-06 11:49:01 UTC (rev 11932)
@@ -0,0 +1,37 @@
+#ifndef QGSRENDERERV2REGISTRY_H
+#define QGSRENDERERV2REGISTRY_H
+
+#include <QMap>
+
+class QgsFeatureRendererV2;
+class QDomElement;
+
+typedef QgsFeatureRendererV2* (*QgsRendererV2CreateFunc)(QDomElement&);
+
+/**
+ Registry of renderers.
+
+ This is a singleton, renderers can be added / removed at any time
+ */
+class QgsRendererV2Registry
+{
+public:
+
+ static QgsRendererV2Registry* instance();
+
+ bool addRenderer(QString rendererName, QgsRendererV2CreateFunc pfCreate);
+
+ bool removeRenderer(QString rendererName);
+
+ QgsRendererV2CreateFunc rendererCreateFunction(QString rendererName);
+
+protected:
+ //! protected constructor
+ QgsRendererV2Registry();
+
+ static QgsRendererV2Registry* mInstance;
+
+ QMap<QString, QgsRendererV2CreateFunc> mRenderers;
+};
+
+#endif // QGSRENDERERV2REGISTRY_H
Modified: branches/symbology-ng-branch/src/core/symbology-ng/qgssinglesymbolrendererv2.cpp
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgssinglesymbolrendererv2.cpp 2009-11-06 11:23:17 UTC (rev 11931)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgssinglesymbolrendererv2.cpp 2009-11-06 11:49:01 UTC (rev 11932)
@@ -8,7 +8,7 @@
#include <QDomElement>
QgsSingleSymbolRendererV2::QgsSingleSymbolRendererV2(QgsSymbolV2* symbol)
- : QgsFeatureRendererV2(RendererSingleSymbol)
+ : QgsFeatureRendererV2("singleSymbol")
{
mSymbol = symbol;
}
Modified: branches/symbology-ng-branch/src/gui/symbology-ng/qgsrendererv2propertiesdialog.cpp
===================================================================
--- branches/symbology-ng-branch/src/gui/symbology-ng/qgsrendererv2propertiesdialog.cpp 2009-11-06 11:23:17 UTC (rev 11931)
+++ branches/symbology-ng-branch/src/gui/symbology-ng/qgsrendererv2propertiesdialog.cpp 2009-11-06 11:49:01 UTC (rev 11932)
@@ -54,7 +54,7 @@
connect(radGraduated, SIGNAL(clicked()), this, SLOT(updateRenderer()));
// simple symbol page
- if (mRenderer->type() == QgsFeatureRendererV2::RendererSingleSymbol)
+ if (mRenderer->type() == "singleSymbol")
mSingleSymbol = ((QgsSingleSymbolRendererV2*)mRenderer)->symbol()->clone();
else
mSingleSymbol = QgsSymbolV2::defaultSymbol(mLayer->geometryType());
@@ -127,19 +127,19 @@
QgsSingleSymbolRendererV2* QgsRendererV2PropertiesDialog::rendererSingle()
{
- Q_ASSERT(mRenderer != NULL && mRenderer->type() == QgsFeatureRendererV2::RendererSingleSymbol);
+ Q_ASSERT(mRenderer != NULL && mRenderer->type() == "singleSymbol");
return static_cast<QgsSingleSymbolRendererV2*>(mRenderer);
}
QgsCategorizedSymbolRendererV2* QgsRendererV2PropertiesDialog::rendererCategorized()
{
- Q_ASSERT(mRenderer != NULL && mRenderer->type() == QgsFeatureRendererV2::RendererCategorizedSymbol);
+ Q_ASSERT(mRenderer != NULL && mRenderer->type() == "categorizedSymbol");
return static_cast<QgsCategorizedSymbolRendererV2*>(mRenderer);
}
QgsGraduatedSymbolRendererV2* QgsRendererV2PropertiesDialog::rendererGraduated()
{
- Q_ASSERT(mRenderer != NULL && mRenderer->type() == QgsFeatureRendererV2::RendererGraduatedSymbol);
+ Q_ASSERT(mRenderer != NULL && mRenderer->type() == "graduatedSymbol");
return static_cast<QgsGraduatedSymbolRendererV2*>(mRenderer);
}
@@ -167,101 +167,93 @@
void QgsRendererV2PropertiesDialog::updateUiFromRenderer()
{
- switch (mRenderer->type())
+ QString rendererType = mRenderer->type();
+
+ if (rendererType == "singleSymbol")
{
- case QgsFeatureRendererV2::RendererSingleSymbol:
- radSingleSymbol->setChecked(true);
-
- stackedWidget->setCurrentWidget(pageSingleSymbol);
- //updateSingleSymbolIcon();
- break;
-
- case QgsFeatureRendererV2::RendererCategorizedSymbol:
- radCategorized->setChecked(true);
-
- stackedWidget->setCurrentWidget(pageCategorized);
+ radSingleSymbol->setChecked(true);
+
+ stackedWidget->setCurrentWidget(pageSingleSymbol);
+ //updateSingleSymbolIcon();
+ }
+ else if (rendererType == "categorizedSymbol")
+ {
+ radCategorized->setChecked(true);
+
+ stackedWidget->setCurrentWidget(pageCategorized);
+ updateCategorizedSymbolIcon();
+ populateCategories();
+
+ QgsCategorizedSymbolRendererV2* r = rendererCategorized();
+
+ // set column
+ disconnect(cboCategorizedColumn, SIGNAL(currentIndexChanged(int)), this, SLOT(categoryColumnChanged()));
+ QString attrName = r->classAttribute();
+ int idx = cboCategorizedColumn->findText(attrName, Qt::MatchExactly);
+ cboCategorizedColumn->setCurrentIndex(idx >= 0 ? idx : 0);
+ connect(cboCategorizedColumn, SIGNAL(currentIndexChanged(int)), this, SLOT(categoryColumnChanged()));
+
+ // set source symbol
+ if (r->sourceSymbol())
+ {
+ delete mCategorizedSymbol;
+ mCategorizedSymbol = r->sourceSymbol()->clone();
updateCategorizedSymbolIcon();
- populateCategories();
+ }
- {
- QgsCategorizedSymbolRendererV2* r = rendererCategorized();
+ // set source color ramp
+ if (r->sourceColorRamp())
+ {
+ QSize rampIconSize(50,16);
+ QIcon icon = QgsSymbolLayerV2Utils::colorRampPreviewIcon(r->sourceColorRamp(), rampIconSize);
+ if (cboCategorizedColorRamp->itemText(0) == "[source]")
+ cboCategorizedColorRamp->setItemIcon(0, icon);
+ else
+ cboCategorizedColorRamp->insertItem(0, icon, "[source]");
+ cboCategorizedColorRamp->setCurrentIndex(0);
+ }
+ }
+ else if (rendererType == "graduatedSymbol")
+ {
+ radGraduated->setChecked(true);
- // set column
- disconnect(cboCategorizedColumn, SIGNAL(currentIndexChanged(int)), this, SLOT(categoryColumnChanged()));
- QString attrName = r->classAttribute();
- int idx = cboCategorizedColumn->findText(attrName, Qt::MatchExactly);
- cboCategorizedColumn->setCurrentIndex(idx >= 0 ? idx : 0);
- connect(cboCategorizedColumn, SIGNAL(currentIndexChanged(int)), this, SLOT(categoryColumnChanged()));
+ stackedWidget->setCurrentWidget(pageGraduated);
+ updateGraduatedSymbolIcon();
+ populateRanges();
- // set source symbol
- if (r->sourceSymbol())
- {
- delete mCategorizedSymbol;
- mCategorizedSymbol = r->sourceSymbol()->clone();
- updateCategorizedSymbolIcon();
- }
+ // update UI from the graduated renderer (update combo boxes, view)
+ QgsGraduatedSymbolRendererV2* r = rendererGraduated();
+ if (r->mode() < cboGraduatedMode->count())
+ cboGraduatedMode->setCurrentIndex( r->mode() );
+ if (r->ranges().count())
+ spinGraduatedClasses->setValue( r->ranges().count() );
- // set source color ramp
- if (r->sourceColorRamp())
- {
- QSize rampIconSize(50,16);
- QIcon icon = QgsSymbolLayerV2Utils::colorRampPreviewIcon(r->sourceColorRamp(), rampIconSize);
- if (cboCategorizedColorRamp->itemText(0) == "[source]")
- cboCategorizedColorRamp->setItemIcon(0, icon);
- else
- cboCategorizedColorRamp->insertItem(0, icon, "[source]");
- cboCategorizedColorRamp->setCurrentIndex(0);
- }
- }
+ // set column
+ //disconnect(cboGraduatedColumn, SIGNAL(currentIndexChanged(int)), this, SLOT(graduatedColumnChanged()));
+ QString attrName = r->classAttribute();
+ int idx = cboGraduatedColumn->findText(attrName, Qt::MatchExactly);
+ cboGraduatedColumn->setCurrentIndex(idx >= 0 ? idx : 0);
+ //connect(cboGraduatedColumn, SIGNAL(currentIndexChanged(int)), this, SLOT(graduatedColumnChanged()));
- break;
-
- case QgsFeatureRendererV2::RendererGraduatedSymbol:
- radGraduated->setChecked(true);
-
- stackedWidget->setCurrentWidget(pageGraduated);
+ // set source symbol
+ if (r->sourceSymbol())
+ {
+ delete mGraduatedSymbol;
+ mGraduatedSymbol = r->sourceSymbol()->clone();
updateGraduatedSymbolIcon();
- populateRanges();
-
- {
- // update UI from the graduated renderer (update combo boxes, view)
- QgsGraduatedSymbolRendererV2* r = rendererGraduated();
- if (r->mode() < cboGraduatedMode->count())
- cboGraduatedMode->setCurrentIndex( r->mode() );
- if (r->ranges().count())
- spinGraduatedClasses->setValue( r->ranges().count() );
-
- // set column
- //disconnect(cboGraduatedColumn, SIGNAL(currentIndexChanged(int)), this, SLOT(graduatedColumnChanged()));
- QString attrName = r->classAttribute();
- int idx = cboGraduatedColumn->findText(attrName, Qt::MatchExactly);
- cboGraduatedColumn->setCurrentIndex(idx >= 0 ? idx : 0);
- //connect(cboGraduatedColumn, SIGNAL(currentIndexChanged(int)), this, SLOT(graduatedColumnChanged()));
+ }
- // set source symbol
- if (r->sourceSymbol())
- {
- delete mGraduatedSymbol;
- mGraduatedSymbol = r->sourceSymbol()->clone();
- updateGraduatedSymbolIcon();
- }
-
- // set source color ramp
- if (r->sourceColorRamp())
- {
- QSize rampIconSize(50,16);
- QIcon icon = QgsSymbolLayerV2Utils::colorRampPreviewIcon(r->sourceColorRamp(), rampIconSize);
- if (cboGraduatedColorRamp->itemText(0) == "[source]")
- cboGraduatedColorRamp->setItemIcon(0, icon);
- else
- cboGraduatedColorRamp->insertItem(0, icon, "[source]");
- cboGraduatedColorRamp->setCurrentIndex(0);
- }
- }
- break;
-
- default: // custom renderer
- break;
+ // set source color ramp
+ if (r->sourceColorRamp())
+ {
+ QSize rampIconSize(50,16);
+ QIcon icon = QgsSymbolLayerV2Utils::colorRampPreviewIcon(r->sourceColorRamp(), rampIconSize);
+ if (cboGraduatedColorRamp->itemText(0) == "[source]")
+ cboGraduatedColorRamp->setItemIcon(0, icon);
+ else
+ cboGraduatedColorRamp->insertItem(0, icon, "[source]");
+ cboGraduatedColorRamp->setCurrentIndex(0);
+ }
}
}
More information about the QGIS-commit
mailing list