Skip to content
Permalink
Browse files

merge from trunk 10769:10800

git-svn-id: http://svn.osgeo.org/qgis/branches/symbology-ng-branch@11127 c8812cc2-4d05-0410-92ff-de0c093fc19c
  • Loading branch information
wonder
wonder committed Jul 21, 2009
1 parent 4786e54 commit 9bb40094caa9a2c69746549370b78c0f3f6d9a00
Showing with 1,072 additions and 326 deletions.
  1. +2 −2 i18n/qgis_de.ts
  2. +18 −15 i18n/qgis_pl_PL.ts
  3. BIN images/themes/default/mIconLock.png
  4. +44 −0 mac/xcode/Qgis.xcodeproj/project.pbxproj
  5. +79 −0 python/core/conversions.sip
  6. +2 −0 python/core/core.sip
  7. +17 −34 python/core/qgsoverlayobject.sip
  8. +6 −23 python/core/qgsvectoroverlay.sip
  9. +29 −12 src/app/attributetable/qgsattributetabledialog.cpp
  10. +25 −6 src/app/composer/qgscomposermapwidget.cpp
  11. +78 −31 src/app/qgsmaptoolsimplify.cpp
  12. +24 −6 src/app/qgsmaptoolsimplify.h
  13. +1 −0 src/core/CMakeLists.txt
  14. +171 −24 src/core/composer/qgscomposeritem.cpp
  15. +31 −1 src/core/composer/qgscomposeritem.h
  16. +0 −19 src/core/composer/qgscomposermap.cpp
  17. +0 −4 src/core/composer/qgscomposermap.h
  18. +2 −2 src/core/pal/palgeometry.h
  19. +7 −5 src/core/qgsoverlayobject.h
  20. +2 −1 src/core/qgsoverlayobjectpositionmanager.h
  21. +46 −0 src/core/qgspalgeometry.cpp
  22. +49 −0 src/core/qgspalgeometry.h
  23. +31 −6 src/core/qgspalobjectpositionmanager.cpp
  24. +6 −0 src/core/qgspalobjectpositionmanager.h
  25. +20 −2 src/core/qgsvectorlayer.cpp
  26. +16 −0 src/gui/qgscomposerview.cpp
  27. +5 −0 src/plugins/diagram_overlay/qgsdiagramoverlay.cpp
  28. +1 −1 src/plugins/grass/CMakeLists.txt
  29. +1 −0 src/plugins/grass/config/default.qgc
  30. BIN src/plugins/grass/modules/qgis.db.connect-login.pg.1.png
  31. +11 −0 src/plugins/grass/modules/qgis.db.connect-login.pg.qgm
  32. +134 −119 src/plugins/grass/qgsgrassmodule.cpp
  33. +83 −12 src/plugins/grass/qgsgrassmodule.h
  34. +5 −0 src/plugins/grass/scripts/CMakeLists.txt
  35. +117 −0 src/plugins/grass/scripts/qgis.db.connect-login.pg.py
  36. +1 −0 src/providers/grass/qgsgrass.cpp
  37. +1 −1 src/providers/grass/qgsgrassprovider.cpp
  38. +7 −0 src/ui/qgsattributetabledialog.ui
@@ -8954,7 +8954,7 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<source>&amp;Make to toplevel item</source>
<translation>Als Top-Level Objekt &amp;machen</translation>
<translation>In oberste Ebene &amp;bringen</translation>
</message>
<message>
<source>Re&amp;name</source>
@@ -8966,7 +8966,7 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<source>&amp;Expand all</source>
<translation>Alles Ausklapp&amp;en</translation>
<translation>Alles ausklapp&amp;en</translation>
</message>
<message>
<source>&amp;Collapse all</source>
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.0" language="pl_PL">
<!DOCTYPE TS><TS version="1.1" language="pl_PL">
<defaultcodec></defaultcodec>
<context>
<name></name>
@@ -4738,7 +4737,7 @@ p, li { white-space: pre-wrap; }
<source>&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Verdana&apos;; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;© QGIS 2009&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#xa9; QGIS 2009&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;p, li { white-space: pre-wrap; }&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Verdana&apos;; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;© QGIS 2009&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
</context>
@@ -8468,7 +8467,7 @@ p, li { white-space: pre-wrap; }
<translation>Maksymalna skala, dla której warstwa będzie wyświetlana.</translation>
</message>
<message>
<source>°</source>
<source>&#xb0;</source>
<translation>°</translation>
</message>
</context>
@@ -11040,23 +11039,23 @@ Musisz włączyć ponownie Quantum GISa, żeby ją przeładować.</translation>
</message>
<message>
<source>not installed</source>
<translation type="unfinished"></translation>
<translation>niezainstalowana</translation>
</message>
<message>
<source>installed</source>
<translation type="unfinished"></translation>
<translation>zainstalowana</translation>
</message>
<message>
<source>upgradeable</source>
<translation type="unfinished">aktualizowalna</translation>
<translation>aktualizowalna</translation>
</message>
<message>
<source>new!</source>
<translation type="unfinished">nowość!</translation>
<translation>nowość!</translation>
</message>
<message>
<source>invalid</source>
<translation type="unfinished">niesprawna</translation>
<translation>niesprawna</translation>
</message>
</context>
<context>
@@ -12144,23 +12143,27 @@ Z tego powodu wybrór odwzorowania nie będzie działał...</translation>
</message>
<message>
<source>&amp;Execute</source>
<translation type="unfinished"></translation>
<translation>U&amp;ruchom</translation>
</message>
<message>
<source>&amp;Previous</source>
<translation type="unfinished"></translation>
<translation>&amp;Poprzedni</translation>
</message>
<message>
<source>&amp;Next</source>
<translation type="unfinished"></translation>
<translation>&amp;Następny</translation>
</message>
<message>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"></translation>
<translation>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
</context>
<context>
</message>
<message>
<source>Unique values</source>
<translation type="unfinished"></translation>
<translation>Unikalne wartości</translation>
</message>
<message>
<source>Total unique values</source>
<translation type="unfinished"></translation>
<translation>Łącznie unikalnych wartości</translation>
</message>
</context>
<context>
Binary file not shown.
@@ -546,6 +546,10 @@
72267A4B0F9A1CFD00010C18 /* mActionZoomNext.png in Copy - theme-default */ = {isa = PBXBuildFile; fileRef = 72267A4A0F9A1CE800010C18 /* mActionZoomNext.png */; };
72267A4E0F9A1D1D00010C18 /* mActionZoomNext.png in Copy - theme-gis */ = {isa = PBXBuildFile; fileRef = 72267A4D0F9A1D1400010C18 /* mActionZoomNext.png */; };
72267A510F9A1D3D00010C18 /* mActionZoomNext.png in Copy - theme-nkids */ = {isa = PBXBuildFile; fileRef = 72267A500F9A1D3100010C18 /* mActionZoomNext.png */; };
723FD05F0FBCB87900EFA55D /* qgspalgeometry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 723FD05D0FBCB85D00EFA55D /* qgspalgeometry.cpp */; };
723FD0620FBCB91C00EFA55D /* qgis.db.connect-login.pg.1.png in Copy - modules */ = {isa = PBXBuildFile; fileRef = 723FD0610FBCB8E100EFA55D /* qgis.db.connect-login.pg.1.png */; };
723FD0630FBCB91C00EFA55D /* qgis.db.connect-login.pg.qgm in Copy - modules */ = {isa = PBXBuildFile; fileRef = 723FD0600FBCB8E100EFA55D /* qgis.db.connect-login.pg.qgm */; };
723FD06B0FBCBA3500EFA55D /* qgis.db.connect-login.pg.py in Copy - scripts */ = {isa = PBXBuildFile; fileRef = 723FD0670FBCB94600EFA55D /* qgis.db.connect-login.pg.py */; };
7256F2D70F4146AC0022BE1F /* qgis_new_80pct.png in Copy - doc-images */ = {isa = PBXBuildFile; fileRef = 7209F0190F39E5DA003DC336 /* qgis_new_80pct.png */; };
7256F2FA0F4148FC0022BE1F /* Carl_Anderson.jpg in Copy - images-developers */ = {isa = PBXBuildFile; fileRef = 7209EE000F39E5D9003DC336 /* Carl_Anderson.jpg */; };
7256F2FB0F4148FC0022BE1F /* Christoph_Spoerri.jpg in Copy - images-developers */ = {isa = PBXBuildFile; fileRef = 7209EE010F39E5D9003DC336 /* Christoph_Spoerri.jpg */; };
@@ -1073,6 +1077,7 @@
72745A130F770319007F4218 /* spit.png in Copy - theme-gis-plugins */ = {isa = PBXBuildFile; fileRef = 72745A030F770252007F4218 /* spit.png */; };
72745A140F770319007F4218 /* wfs.png in Copy - theme-gis-plugins */ = {isa = PBXBuildFile; fileRef = 72745A040F770252007F4218 /* wfs.png */; };
72745A190F770356007F4218 /* coordinate_capture.png in Copy - theme-gis-plug-cc */ = {isa = PBXBuildFile; fileRef = 727459F80F770252007F4218 /* coordinate_capture.png */; };
727CEC220FBAFFA200F5B88C /* mIconLock.png in Copy - theme-default */ = {isa = PBXBuildFile; fileRef = 727CEC210FBAFF6000F5B88C /* mIconLock.png */; };
72820FE10FACCE770011C963 /* qgsmaptooldeletering.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72820FDE0FACCE520011C963 /* qgsmaptooldeletering.cpp */; };
72820FE20FACCE770011C963 /* qgsmaptooldeletepart.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72820FDD0FACCE520011C963 /* qgsmaptooldeletepart.cpp */; };
72820FE30FACCE770011C963 /* qgsmaptoolsimplify.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72820FE00FACCE520011C963 /* qgsmaptoolsimplify.cpp */; };
@@ -3667,6 +3672,17 @@
/* End PBXContainerItemProxy section */

/* Begin PBXCopyFilesBuildPhase section */
723FD0700FBCBA3D00EFA55D /* Copy - scripts */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = "$(QGIS_BUILD_PATH)/MacOS/$(QGIS_DATA_SUBDIR)/grass/scripts";
dstSubfolderSpec = 0;
files = (
723FD06B0FBCBA3500EFA55D /* qgis.db.connect-login.pg.py in Copy - scripts */,
);
name = "Copy - scripts";
runOnlyForDeploymentPostprocessing = 0;
};
7256F2D60F4146A70022BE1F /* Copy - doc-images */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
@@ -3992,6 +4008,7 @@
dstPath = "$(QGIS_DATA_SUBDIR)/themes/default";
dstSubfolderSpec = 6;
files = (
727CEC220FBAFFA200F5B88C /* mIconLock.png in Copy - theme-default */,
72267A4B0F9A1CFD00010C18 /* mActionZoomNext.png in Copy - theme-default */,
7256F4220F41C4DD0022BE1F /* clearInput.png in Copy - theme-default */,
7256F4230F41C4DD0022BE1F /* extents.png in Copy - theme-default */,
72E70A1C0F426C7600142011 /* v.what.vect.1.png in Copy - modules */,
72E70A1D0F426C7600142011 /* v.what.vect.2.png in Copy - modules */,
72E70A1E0F426C7600142011 /* v.what.vect.qgm in Copy - modules */,
723FD0620FBCB91C00EFA55D /* qgis.db.connect-login.pg.1.png in Copy - modules */,
723FD0630FBCB91C00EFA55D /* qgis.db.connect-login.pg.qgm in Copy - modules */,
);
name = "Copy - modules";
runOnlyForDeploymentPostprocessing = 0;
72331DFB0F8E2A2100398D2B /* qgsoverlayobject.sip */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = qgsoverlayobject.sip; path = ../../python/core/qgsoverlayobject.sip; sourceTree = SOURCE_ROOT; };
72331DFC0F8E2A5D00398D2B /* sqlite3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sqlite3.c; path = ../../src/core/spatialite/sqlite3.c; sourceTree = SOURCE_ROOT; };
72331DFD0F8E2A5D00398D2B /* spatialite.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = spatialite.c; path = ../../src/core/spatialite/spatialite.c; sourceTree = SOURCE_ROOT; };
723FD05D0FBCB85D00EFA55D /* qgspalgeometry.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = qgspalgeometry.cpp; path = ../../src/core/qgspalgeometry.cpp; sourceTree = SOURCE_ROOT; };
723FD05E0FBCB85D00EFA55D /* qgspalgeometry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = qgspalgeometry.h; path = ../../src/core/qgspalgeometry.h; sourceTree = SOURCE_ROOT; };
723FD0600FBCB8E100EFA55D /* qgis.db.connect-login.pg.qgm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; name = "qgis.db.connect-login.pg.qgm"; path = "../../src/plugins/grass/modules/qgis.db.connect-login.pg.qgm"; sourceTree = SOURCE_ROOT; };
723FD0610FBCB8E100EFA55D /* qgis.db.connect-login.pg.1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "qgis.db.connect-login.pg.1.png"; path = "../../src/plugins/grass/modules/qgis.db.connect-login.pg.1.png"; sourceTree = SOURCE_ROOT; };
723FD0660FBCB94600EFA55D /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = CMakeLists.txt; path = ../../src/plugins/grass/scripts/CMakeLists.txt; sourceTree = SOURCE_ROOT; };
723FD0670FBCB94600EFA55D /* qgis.db.connect-login.pg.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; name = "qgis.db.connect-login.pg.py"; path = "../../src/plugins/grass/scripts/qgis.db.connect-login.pg.py"; sourceTree = SOURCE_ROOT; };
7256F2DC0F4147890022BE1F /* TODO */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = TODO; path = ../../TODO; sourceTree = SOURCE_ROOT; };
7256F2DD0F4147890022BE1F /* SPONSORS */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = SPONSORS; path = ../../SPONSORS; sourceTree = SOURCE_ROOT; };
7256F2DE0F4147890022BE1F /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = README; path = ../../README; sourceTree = SOURCE_ROOT; };
72745A020F770252007F4218 /* scale_bar.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = scale_bar.png; path = ../../images/themes/gis/plugins/scale_bar.png; sourceTree = SOURCE_ROOT; };
72745A030F770252007F4218 /* spit.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = spit.png; path = ../../images/themes/gis/plugins/spit.png; sourceTree = SOURCE_ROOT; };
72745A040F770252007F4218 /* wfs.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = wfs.png; path = ../../images/themes/gis/plugins/wfs.png; sourceTree = SOURCE_ROOT; };
727CEC210FBAFF6000F5B88C /* mIconLock.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = mIconLock.png; path = ../../images/themes/default/mIconLock.png; sourceTree = SOURCE_ROOT; };
72820FDB0FACCE520011C963 /* qgsmaptooldeletering.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = qgsmaptooldeletering.h; path = ../../src/app/qgsmaptooldeletering.h; sourceTree = SOURCE_ROOT; };
72820FDC0FACCE520011C963 /* qgsmaptooldeletepart.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = qgsmaptooldeletepart.h; path = ../../src/app/qgsmaptooldeletepart.h; sourceTree = SOURCE_ROOT; };
72820FDD0FACCE520011C963 /* qgsmaptooldeletepart.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = qgsmaptooldeletepart.cpp; path = ../../src/app/qgsmaptooldeletepart.cpp; sourceTree = SOURCE_ROOT; };
7209E6AC0F39E57A003DC336 /* qgsmaptopixel.h */,
7209E6AD0F39E57A003DC336 /* qgsmessageoutput.cpp */,
7209E6AE0F39E57A003DC336 /* qgsmessageoutput.h */,
723FD05D0FBCB85D00EFA55D /* qgspalgeometry.cpp */,
723FD05E0FBCB85D00EFA55D /* qgspalgeometry.h */,
7209E6AF0F39E57A003DC336 /* qgspoint.cpp */,
7209E6B00F39E57A003DC336 /* qgspoint.h */,
7209E6B10F39E57A003DC336 /* qgsproject.cpp */,
7209E8300F39E57B003DC336 /* config */,
7209E8340F39E57B003DC336 /* images */,
7209E8370F39E57B003DC336 /* modules */,
723FD0650FBCB94600EFA55D /* scripts */,
7209EB490F39E57B003DC336 /* themes */,
);
name = grass;
7209EB200F39E57B003DC336 /* v.what.vect.1.png */,
7209EB210F39E57B003DC336 /* v.what.vect.2.png */,
7209EB220F39E57B003DC336 /* v.what.vect.qgm */,
723FD0600FBCB8E100EFA55D /* qgis.db.connect-login.pg.qgm */,
723FD0610FBCB8E100EFA55D /* qgis.db.connect-login.pg.1.png */,
);
name = modules;
path = ../../src/plugins/grass/modules;
7209EF610F39E5D9003DC336 /* user.svg */,
7209EF620F39E5D9003DC336 /* zoomMaster.svg */,
7262ED890F7A75FB00498385 /* mActionAddSpatiaLiteLayer.png */,
727CEC210FBAFF6000F5B88C /* mIconLock.png */,
72EB12940F7E9B51002C38FA /* plugins */,
);
name = default;
path = ../../src/plugins/oracle_raster;
sourceTree = SOURCE_ROOT;
};
723FD0650FBCB94600EFA55D /* scripts */ = {
isa = PBXGroup;
children = (
723FD0660FBCB94600EFA55D /* CMakeLists.txt */,
723FD0670FBCB94600EFA55D /* qgis.db.connect-login.pg.py */,
);
name = scripts;
path = ../../src/plugins/grass/scripts;
sourceTree = SOURCE_ROOT;
};
7262ED8C0F7A767400498385 /* spatialite */ = {
isa = PBXGroup;
children = (
72E70A4E0F426D3B00142011 /* Copy - theme-classic */,
72E70A810F426DF300142011 /* Copy - theme-gis */,
72EBC9800F49D7F60016BA3C /* Copy - theme-default */,
723FD0700FBCBA3D00EFA55D /* Copy - scripts */,
);
buildRules = (
729288440F71F4F0006D9489 /* PBXBuildRule */,
7203830A0F8B8C8F0083B883 /* qgscentralpointpositionmanager.cpp in Sources */,
7203830B0F8B8C8F0083B883 /* qgsoverlayobject.cpp in Sources */,
7203830C0F8B8C8F0083B883 /* qgspalobjectpositionmanager.cpp in Sources */,
723FD05F0FBCB87900EFA55D /* qgspalgeometry.cpp in Sources */,
7203830D0F8B8C8F0083B883 /* qgsvectoroverlay.cpp in Sources */,
720383780F8BA8C50083B883 /* feature.cpp in Sources */,
720383790F8BA8C50083B883 /* geomfunction.cpp in Sources */,
@@ -10,6 +10,7 @@ which are not wrapped by PyQt:
- QMap<QString, QVariant::Type>
- QMap<TYPE1, TYPE2*>
- QMultiMap<double, TYPE2>
- QMap<int, QgsOverlayObject*>*
*/

%ModuleHeaderCode
@@ -22,6 +23,7 @@ typedef int Py_ssize_t;
%End



template <TYPE>
%MappedType QVector< QVector<TYPE> >
{
@@ -817,3 +819,80 @@ template<double, TYPE2>
return sipGetState(sipTransferObj);
%End
};

%MappedType QMap<int, QgsOverlayObject*>
{
%TypeHeaderCode
#include <QMap>
%End

%ConvertFromTypeCode

//convert map to a python dictionary
PyObject *d;

if ((d = PyDict_New()) == NULL)
return NULL;

for (QMap<int, QgsOverlayObject*>::iterator it = sipCpp->begin(); it != sipCpp->end(); ++it)
{
QgsOverlayObject* oobj = new QgsOverlayObject(*it.value());

PyObject* keyobj = PyInt_FromLong(it.key());
PyObject* pyOobj = sipConvertFromInstance(oobj, sipClass_QgsOverlayObject, sipTransferObj);
PyDict_SetItem(d, keyobj, pyOobj);

if(pyOobj == NULL || keyobj == NULL || PyDict_SetItem(d, keyobj, pyOobj) < 0)
{
Py_DECREF(d);

if (pyOobj)
{
Py_DECREF(pyOobj);
}

if (keyobj)
{
Py_DECREF(keyobj);
}
return NULL;
}
Py_DECREF(pyOobj);
Py_DECREF(keyobj);
}
return d;

%End
%ConvertToTypeCode
PyObject *t1obj, *t2obj;
#if PY_VERSION_HEX >= 0x02050000
Py_ssize_t i = 0;
#else
int i = 0;
#endif

QMap<int, QgsOverlayObject*> *qm = new QMap<int, QgsOverlayObject*>;

while (PyDict_Next(sipPy, &i, &t1obj, &t2obj))
{
int state;
int t1 = (int)(PyFloat_AsDouble(t1obj));
QgsOverlayObject* t2 = reinterpret_cast<QgsOverlayObject*>(sipConvertToInstance(t2obj, sipClass_QgsOverlayObject, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));

if (*sipIsErr)
{
sipReleaseInstance(t2, sipClass_QgsOverlayObject, state);
delete qm;
return 0;
}

qm->insert(t1, t2);

sipReleaseInstance(t2, sipClass_QgsOverlayObject, state);
}

*sipCppPtr = qm;

return sipGetState(sipTransferObj);
%End
};
@@ -42,6 +42,7 @@
%Include qgsmaptopixel.sip
%Include qgsmarkercatalogue.sip
%Include qgsmessageoutput.sip
%Include qgsoverlayobject.sip
%Include qgspoint.sip
%Include qgsproject.sip
%Include qgsprovidermetadata.sip
@@ -70,5 +71,6 @@
%Include qgsvectordataprovider.sip
%Include qgsvectorfilewriter.sip
%Include qgsvectorlayer.sip
%Include qgsvectoroverlay.sip

%Include symbology-ng-core.sip

0 comments on commit 9bb4009

Please sign in to comment.
You can’t perform that action at this time.