[QGIS Commit] r10779 - in branches/symbology-ng-branch/src/core: .
symbology-ng
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Wed May 13 07:23:30 EDT 2009
Author: wonder
Date: 2009-05-13 07:23:29 -0400 (Wed, 13 May 2009)
New Revision: 10779
Modified:
branches/symbology-ng-branch/src/core/qgsapplication.cpp
branches/symbology-ng-branch/src/core/qgsapplication.h
branches/symbology-ng-branch/src/core/symbology-ng/qgsmarkersymbollayerv2.cpp
branches/symbology-ng-branch/src/core/symbology-ng/qgsstylev2.cpp
branches/symbology-ng-branch/src/core/symbology-ng/qgssymbolv2.cpp
branches/symbology-ng-branch/src/core/symbology-ng/qgssymbolv2.h
Log:
bugfixes and functions returning master / user's style file path
Modified: branches/symbology-ng-branch/src/core/qgsapplication.cpp
===================================================================
--- branches/symbology-ng-branch/src/core/qgsapplication.cpp 2009-05-13 10:29:54 UTC (rev 10778)
+++ branches/symbology-ng-branch/src/core/qgsapplication.cpp 2009-05-13 11:23:29 UTC (rev 10779)
@@ -272,6 +272,16 @@
return mPkgDataPath + QString( "/svg/" );
}
+const QString QgsApplication::userStyleV2Path()
+{
+ return qgisSettingsDirPath() + QString( "symbology-ng-style.xml" );
+}
+
+const QString QgsApplication::defaultStyleV2Path()
+{
+ return mPkgDataPath + QString( "/resources/symbology-ng-style.xml" );
+}
+
QgsApplication::endian_t QgsApplication::endian()
{
return ( htonl( 1 ) == 1 ) ? XDR : NDR ;
Modified: branches/symbology-ng-branch/src/core/qgsapplication.h
===================================================================
--- branches/symbology-ng-branch/src/core/qgsapplication.h 2009-05-13 10:29:54 UTC (rev 10778)
+++ branches/symbology-ng-branch/src/core/qgsapplication.h 2009-05-13 11:23:29 UTC (rev 10779)
@@ -111,6 +111,12 @@
//! Returns the path to the default theme directory.
static const QString defaultThemePath();
+ //! Returns the path to user's style. Added in QGIS 1.2
+ static const QString userStyleV2Path();
+
+ //! Returns the path to default style (works as a starting point). Added in QGIS 1.2
+ static const QString defaultStyleV2Path();
+
//! Alters prefix path - used by 3rd party apps
static void setPrefixPath( const QString thePrefixPath, bool useDefaultPaths = FALSE );
Modified: branches/symbology-ng-branch/src/core/symbology-ng/qgsmarkersymbollayerv2.cpp
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgsmarkersymbollayerv2.cpp 2009-05-13 10:29:54 UTC (rev 10778)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgsmarkersymbollayerv2.cpp 2009-05-13 11:23:29 UTC (rev 10779)
@@ -4,6 +4,7 @@
#include "qgsrendercontext.h"
#include "qgsapplication.h"
+#include "qgslogger.h"
#include <QPainter>
#include <QSvgRenderer>
@@ -43,7 +44,7 @@
if (props.contains("size"))
size = props["size"].toDouble();
if (props.contains("angle"))
- size = props["angle"].toDouble();
+ angle = props["angle"].toDouble();
return new QgsSimpleMarkerSymbolLayerV2(name, color, borderColor, size, angle);
}
@@ -253,7 +254,7 @@
if (props.contains("size"))
size = props["size"].toDouble();
if (props.contains("angle"))
- size = props["angle"].toDouble();
+ angle = props["angle"].toDouble();
return new QgsSvgMarkerSymbolLayerV2(name, size, angle);
}
Modified: branches/symbology-ng-branch/src/core/symbology-ng/qgsstylev2.cpp
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgsstylev2.cpp 2009-05-13 10:29:54 UTC (rev 10778)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgsstylev2.cpp 2009-05-13 11:23:29 UTC (rev 10779)
@@ -411,7 +411,7 @@
// save
QFile f(filename);
- if (!f.open(QFile::ReadWrite))
+ if (!f.open(QFile::WriteOnly))
{
mErrorString = "Couldn't open file for writing: "+filename;
return false;
Modified: branches/symbology-ng-branch/src/core/symbology-ng/qgssymbolv2.cpp
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgssymbolv2.cpp 2009-05-13 10:29:54 UTC (rev 10778)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgssymbolv2.cpp 2009-05-13 11:23:29 UTC (rev 10779)
@@ -198,6 +198,19 @@
}
}
+QgsSymbolLayerV2List QgsSymbolV2::cloneLayers() const
+{
+ QgsSymbolLayerV2List lst;
+ for (QgsSymbolLayerV2List::const_iterator it = mLayers.begin(); it != mLayers.end(); ++it)
+ {
+ QgsSymbolLayerV2* layer = (*it)->clone();
+ layer->setLocked( (*it)->isLocked() );
+ lst.append( layer );
+ }
+ return lst;
+}
+
+
///////////////////
@@ -263,10 +276,7 @@
QgsSymbolV2* QgsMarkerSymbolV2::clone() const
{
- QgsSymbolLayerV2List lst;
- for (QgsSymbolLayerV2List::const_iterator it = mLayers.begin(); it != mLayers.end(); ++it)
- lst.append( (*it)->clone() );
- return new QgsMarkerSymbolV2(lst);
+ return new QgsMarkerSymbolV2( cloneLayers() );
}
@@ -315,10 +325,7 @@
QgsSymbolV2* QgsLineSymbolV2::clone() const
{
- QgsSymbolLayerV2List lst;
- for (QgsSymbolLayerV2List::const_iterator it = mLayers.begin(); it != mLayers.end(); ++it)
- lst.append( (*it)->clone() );
- return new QgsLineSymbolV2(lst);
+ return new QgsLineSymbolV2( cloneLayers() );
}
///////////////////
@@ -343,8 +350,5 @@
QgsSymbolV2* QgsFillSymbolV2::clone() const
{
- QgsSymbolLayerV2List lst;
- for (QgsSymbolLayerV2List::const_iterator it = mLayers.begin(); it != mLayers.end(); ++it)
- lst.append( (*it)->clone() );
- return new QgsFillSymbolV2(lst);
+ return new QgsFillSymbolV2( cloneLayers() );
}
Modified: branches/symbology-ng-branch/src/core/symbology-ng/qgssymbolv2.h
===================================================================
--- branches/symbology-ng-branch/src/core/symbology-ng/qgssymbolv2.h 2009-05-13 10:29:54 UTC (rev 10778)
+++ branches/symbology-ng-branch/src/core/symbology-ng/qgssymbolv2.h 2009-05-13 11:23:29 UTC (rev 10779)
@@ -70,6 +70,8 @@
protected:
QgsSymbolV2(SymbolType type, QgsSymbolLayerV2List layers); // can't be instantiated
+
+ QgsSymbolLayerV2List cloneLayers() const;
SymbolType mType;
QgsSymbolLayerV2List mLayers;
More information about the QGIS-commit
mailing list