Skip to content

Commit 0341478

Browse files
committedJan 27, 2017
Remove code for reading of legacy (QGIS < 1.0) renderers
Also removes a bunch of unused old QMLs and upgrades one still in use
1 parent ac79bc9 commit 0341478

23 files changed

+924
-1686
lines changed
 

‎doc/api_break.dox

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,6 @@ Renamed Classes {#qgis_api_break_3_0_renamed_classes}
170170
<tr><td>QgsSymbolV2RenderContext<td>QgsSymbolRenderContext
171171
<tr><td>QgsSymbolV2SelectorDialog<td>QgsSymbolSelectorDialog
172172
<tr><td>QgsSymbolV2SelectorWidget<td>QgsSymbolSelectorWidget
173-
<tr><td>QgsSymbologyV2Conversion<td>QgsSymbologyConversion
174173
<tr><td>QgsVectorColorBrewerColorRampV2<td>QgsColorBrewerColorRamp
175174
<tr><td>QgsVectorColorBrewerColorRampV2Dialog<td>QgsColorBrewerColorRampDialog
176175
<tr><td>QgsVectorColorBrewerColorRampV2DialogBase<td>QgsColorBrewerColorRampDialogBase
@@ -267,6 +266,7 @@ should now call QgsCoordinateReferenceSystem::invalidateCache() and QgsCoordinat
267266
- QgsLegacyHelpers.
268267
- QgsProviderCountCalcEvent and QgsProviderExtentCalcEvent. These classes were unused in QGIS core and unmaintained.
269268
- QgsEditorWidgetConfig was removed. Use QVariantMap instead.
269+
- QgsSymbologyV2Conversion was removed. Reading of renderers from pre-1.0 versions is not supported anymore.
270270

271271

272272
General changes {#qgis_api_break_3_0_global}

‎python/core/core.sip

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -339,8 +339,6 @@
339339
%Include symbology-ng/qgsvectorfieldsymbollayer.sip
340340
%Include symbology-ng/qgsarrowsymbollayer.sip
341341

342-
%Include symbology-ng/qgssymbologyconversion.sip
343-
344342
%Include dxf/qgsdxfexport.sip
345343

346344
%Include geometry/qgsabstractgeometry.sip

‎python/core/symbology-ng/qgssymbologyconversion.sip

Lines changed: 0 additions & 15 deletions
This file was deleted.

‎src/app/qgsvectorlayerproperties.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@
6767

6868
#include "qgsrendererpropertiesdialog.h"
6969
#include "qgsstyle.h"
70-
#include "qgssymbologyconversion.h"
7170

7271
QgsVectorLayerProperties::QgsVectorLayerProperties(
7372
QgsVectorLayer *lyr,

‎src/core/CMakeLists.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ SET(QGIS_CORE_SRCS
4242
symbology-ng/qgssymbollayer.cpp
4343
symbology-ng/qgssymbollayerregistry.cpp
4444
symbology-ng/qgssymbollayerutils.cpp
45-
symbology-ng/qgssymbologyconversion.cpp
4645
symbology-ng/qgssymbol.cpp
4746
symbology-ng/qgsvectorfieldsymbollayer.cpp
4847

@@ -868,7 +867,6 @@ SET(QGIS_CORE_HDRS
868867
symbology-ng/qgssymbollayer.h
869868
symbology-ng/qgssymbollayerregistry.h
870869
symbology-ng/qgssymbollayerutils.h
871-
symbology-ng/qgssymbologyconversion.h
872870
symbology-ng/qgssymbol.h
873871
symbology-ng/qgsvectorfieldsymbollayer.h
874872
symbology-ng/qgsgeometrygeneratorsymbollayer.h

‎src/core/qgsvectorlayer.cpp

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@
7777
#include "qgssinglesymbolrenderer.h"
7878
#include "qgsdiagramrenderer.h"
7979
#include "qgsstyle.h"
80-
#include "qgssymbologyconversion.h"
8180
#include "qgspallabeling.h"
8281
#include "qgssimplifymethod.h"
8382
#include "qgsexpressioncontext.h"
@@ -1843,14 +1842,6 @@ bool QgsVectorLayer::readStyle( const QDomNode &node, QString &errorMessage )
18431842
result = false;
18441843
}
18451844
}
1846-
else
1847-
{
1848-
QgsFeatureRenderer* r = QgsSymbologyConversion::readOldRenderer( node, geometryType() );
1849-
if ( r )
1850-
{
1851-
setRenderer( r );
1852-
}
1853-
}
18541845

18551846
// make sure layer has a renderer - if none exists, fallback to a default renderer
18561847
if ( !renderer() )

‎src/core/symbology-ng/qgssymbologyconversion.cpp

Lines changed: 0 additions & 571 deletions
This file was deleted.

‎src/core/symbology-ng/qgssymbologyconversion.h

Lines changed: 0 additions & 42 deletions
This file was deleted.

‎tests/src/core/testqgsrenderers.cpp

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -152,29 +152,6 @@ void TestQgsRenderers::singleSymbol()
152152
QVERIFY( imageCheck( "single" ) );
153153
}
154154

155-
// TODO: update tests and enable
156-
/*
157-
void TestQgsRenderers::uniqueValue()
158-
{
159-
mReport += "<h2>Unique value symbol renderer test</h2>\n";
160-
QVERIFY( setQml( "uniquevalue" ) );
161-
QVERIFY( imageCheck( "uniquevalue" ) );
162-
}
163-
164-
void TestQgsRenderers::graduatedSymbol()
165-
{
166-
mReport += "<h2>Graduated symbol renderer test</h2>\n";
167-
QVERIFY( setQml( "graduated" ) );
168-
QVERIFY( imageCheck( "graduated" ) );
169-
}
170-
171-
void TestQgsRenderers::continuousSymbol()
172-
{
173-
mReport += "<h2>Continuous symbol renderer test</h2>\n";
174-
QVERIFY( setQml( "continuous" ) );
175-
QVERIFY( imageCheck( "continuous" ) );
176-
}
177-
*/
178155
//
179156
// Private helper functions not called directly by CTest
180157
//

‎tests/testdata/lines.qml

Lines changed: 137 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,70 @@
11
<!DOCTYPE qgis PUBLIC 'http://mrcc.com/qgis.dtd' 'SYSTEM'>
2-
<qgis version="1.9.90-Alpha" minimumScale="1" maximumScale="1e+08" minLabelScale="1" maxLabelScale="1e+08" hasScaleBasedVisibilityFlag="0" scaleBasedLabelVisibilityFlag="0">
3-
<transparencyLevelInt>255</transparencyLevelInt>
4-
<classificationattribute>Name</classificationattribute>
5-
<uniquevalue>
6-
<classificationfield>Name</classificationfield>
7-
<symbol>
8-
<lowervalue>Arterial</lowervalue>
9-
<uppervalue></uppervalue>
10-
<label></label>
11-
<pointsymbol>hard:circle</pointsymbol>
12-
<pointsize>11</pointsize>
13-
<pointsizeunits>pixels</pointsizeunits>
14-
<rotationclassificationfieldname></rotationclassificationfieldname>
15-
<scaleclassificationfieldname></scaleclassificationfieldname>
16-
<symbolfieldname></symbolfieldname>
17-
<outlinecolor red="154" blue="116" green="139"/>
18-
<outlinestyle>DashDotDotLine</outlinestyle>
19-
<outlinewidth>5</outlinewidth>
20-
<fillcolor red="0" blue="0" green="0"/>
21-
<fillpattern>NoBrush</fillpattern>
22-
<texturepath></texturepath>
23-
</symbol>
24-
<symbol>
25-
<lowervalue>Highway</lowervalue>
26-
<uppervalue></uppervalue>
27-
<label></label>
28-
<pointsymbol>hard:circle</pointsymbol>
29-
<pointsize>11</pointsize>
30-
<pointsizeunits>pixels</pointsizeunits>
31-
<rotationclassificationfieldname></rotationclassificationfieldname>
32-
<scaleclassificationfieldname></scaleclassificationfieldname>
33-
<symbolfieldname></symbolfieldname>
34-
<outlinecolor red="94" blue="55" green="89"/>
35-
<outlinestyle>SolidLine</outlinestyle>
36-
<outlinewidth>7</outlinewidth>
37-
<fillcolor red="0" blue="0" green="0"/>
38-
<fillpattern>NoBrush</fillpattern>
39-
<texturepath></texturepath>
40-
</symbol>
41-
</uniquevalue>
42-
<customproperties/>
2+
<qgis version="2.18.0" simplifyAlgorithm="0" minimumScale="1" maximumScale="1e+08" simplifyDrawingHints="1" minLabelScale="1" maxLabelScale="1e+08" simplifyDrawingTol="1" simplifyMaxScale="1" hasScaleBasedVisibilityFlag="0" simplifyLocal="1" scaleBasedLabelVisibilityFlag="0">
3+
<edittypes>
4+
<edittype widgetv2type="TextEdit" name="Name">
5+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
6+
</edittype>
7+
<edittype widgetv2type="TextEdit" name="Value">
8+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
9+
</edittype>
10+
</edittypes>
11+
<renderer-v2 attr="Name" forceraster="0" symbollevels="0" type="categorizedSymbol" enableorderby="0">
12+
<categories>
13+
<category render="true" symbol="0" value="Arterial" label="Arterial"/>
14+
<category render="true" symbol="1" value="Highway" label="Highway"/>
15+
</categories>
16+
<symbols>
17+
<symbol alpha="1" clip_to_extent="1" type="line" name="0">
18+
<layer pass="0" class="SimpleLine" locked="0">
19+
<prop k="capstyle" v="square"/>
20+
<prop k="customdash" v="5;2"/>
21+
<prop k="customdash_map_unit_scale" v="0,0,0,0,0,0"/>
22+
<prop k="customdash_unit" v="MM"/>
23+
<prop k="draw_inside_polygon" v="0"/>
24+
<prop k="joinstyle" v="bevel"/>
25+
<prop k="line_color" v="154,139,116,255"/>
26+
<prop k="line_style" v="dash dot dot"/>
27+
<prop k="line_width" v="5"/>
28+
<prop k="line_width_unit" v="MM"/>
29+
<prop k="offset" v="0"/>
30+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
31+
<prop k="offset_unit" v="MM"/>
32+
<prop k="use_custom_dash" v="0"/>
33+
<prop k="width_map_unit_scale" v="0,0,0,0,0,0"/>
34+
</layer>
35+
</symbol>
36+
<symbol alpha="1" clip_to_extent="1" type="line" name="1">
37+
<layer pass="0" class="SimpleLine" locked="0">
38+
<prop k="capstyle" v="square"/>
39+
<prop k="customdash" v="5;2"/>
40+
<prop k="customdash_map_unit_scale" v="0,0,0,0,0,0"/>
41+
<prop k="customdash_unit" v="MM"/>
42+
<prop k="draw_inside_polygon" v="0"/>
43+
<prop k="joinstyle" v="bevel"/>
44+
<prop k="line_color" v="94,89,55,255"/>
45+
<prop k="line_style" v="solid"/>
46+
<prop k="line_width" v="7"/>
47+
<prop k="line_width_unit" v="MM"/>
48+
<prop k="offset" v="0"/>
49+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
50+
<prop k="offset_unit" v="MM"/>
51+
<prop k="use_custom_dash" v="0"/>
52+
<prop k="width_map_unit_scale" v="0,0,0,0,0,0"/>
53+
</layer>
54+
</symbol>
55+
</symbols>
56+
<rotation/>
57+
<sizescale scalemethod="diameter"/>
58+
</renderer-v2>
59+
<labeling type="simple"/>
60+
<customproperties>
61+
<property key="embeddedWidgets/count" value="0"/>
62+
<property key="variableNames"/>
63+
<property key="variableValues"/>
64+
</customproperties>
65+
<blendMode>0</blendMode>
66+
<featureBlendMode>0</featureBlendMode>
67+
<layerTransparency>0</layerTransparency>
4368
<displayfield>Name</displayfield>
4469
<label>0</label>
4570
<labelattributes>
@@ -62,12 +87,76 @@
6287
<multilineenabled fieldname="" on=""/>
6388
<selectedonly on=""/>
6489
</labelattributes>
65-
<edittypes>
66-
<edittype type="0" name="Name"/>
67-
<edittype type="0" name="Value"/>
68-
</edittypes>
69-
<editform></editform>
70-
<editforminit></editforminit>
90+
<SingleCategoryDiagramRenderer diagramType="Histogram" sizeLegend="0" attributeLegend="1">
91+
<DiagramCategory penColor="#000000" labelPlacementMethod="XHeight" penWidth="0" diagramOrientation="Up" sizeScale="0,0,0,0,0,0" minimumSize="0" barWidth="5" penAlpha="255" maxScaleDenominator="1e+08" backgroundColor="#ffffff" transparency="0" width="15" scaleDependency="Area" backgroundAlpha="255" angleOffset="1440" scaleBasedVisibility="0" enabled="0" height="15" lineSizeScale="0,0,0,0,0,0" sizeType="MM" lineSizeType="MM" minScaleDenominator="1">
92+
<fontProperties description="Noto Sans,10,-1,5,50,0,0,0,0,0" style=""/>
93+
</DiagramCategory>
94+
<symbol alpha="1" clip_to_extent="1" type="marker" name="sizeSymbol">
95+
<layer pass="0" class="SimpleMarker" locked="0">
96+
<prop k="angle" v="0"/>
97+
<prop k="color" v="255,0,0,255"/>
98+
<prop k="horizontal_anchor_point" v="1"/>
99+
<prop k="joinstyle" v="bevel"/>
100+
<prop k="name" v="circle"/>
101+
<prop k="offset" v="0,0"/>
102+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
103+
<prop k="offset_unit" v="MM"/>
104+
<prop k="outline_color" v="0,0,0,255"/>
105+
<prop k="outline_style" v="solid"/>
106+
<prop k="outline_width" v="0"/>
107+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
108+
<prop k="outline_width_unit" v="MM"/>
109+
<prop k="scale_method" v="diameter"/>
110+
<prop k="size" v="2"/>
111+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
112+
<prop k="size_unit" v="MM"/>
113+
<prop k="vertical_anchor_point" v="1"/>
114+
</layer>
115+
</symbol>
116+
</SingleCategoryDiagramRenderer>
117+
<DiagramLayerSettings yPosColumn="-1" showColumn="-1" linePlacementFlags="10" placement="2" dist="0" xPosColumn="-1" priority="0" obstacle="0" zIndex="0" showAll="1"/>
71118
<annotationform></annotationform>
72-
<attributeactions/>
119+
<aliases>
120+
<alias field="Name" index="0" name=""/>
121+
<alias field="Value" index="1" name=""/>
122+
</aliases>
123+
<excludeAttributesWMS/>
124+
<excludeAttributesWFS/>
125+
<attributeactions default="-1"/>
126+
<attributetableconfig actionWidgetStyle="dropDown" sortExpression="" sortOrder="0">
127+
<columns>
128+
<column width="-1" hidden="0" type="field" name="Name"/>
129+
<column width="-1" hidden="0" type="field" name="Value"/>
130+
<column width="-1" hidden="1" type="actions"/>
131+
</columns>
132+
</attributetableconfig>
133+
<editform></editform>
134+
<editforminit/>
135+
<editforminitcodesource>0</editforminitcodesource>
136+
<editforminitfilepath></editforminitfilepath>
137+
<editforminitcode><![CDATA[# -*- coding: utf-8 -*-
138+
"""
139+
QGIS forms can have a Python function that is called when the form is
140+
opened.
141+
142+
Use this function to add extra logic to your forms.
143+
144+
Enter the name of the function in the "Python Init function"
145+
field.
146+
An example follows:
147+
"""
148+
from qgis.PyQt.QtWidgets import QWidget
149+
150+
def my_form_open(dialog, layer, feature):
151+
geom = feature.geometry()
152+
control = dialog.findChild(QWidget, "MyLineEdit")
153+
]]></editforminitcode>
154+
<featformsuppress>0</featformsuppress>
155+
<editorlayout>generatedlayout</editorlayout>
156+
<widgets/>
157+
<conditionalstyles>
158+
<rowstyles/>
159+
<fieldstyles/>
160+
</conditionalstyles>
161+
<layerGeometryType>1</layerGeometryType>
73162
</qgis>

‎tests/testdata/lines_continuous_symbol.qml

Lines changed: 0 additions & 80 deletions
This file was deleted.

‎tests/testdata/lines_graduated_symbol.qml

Lines changed: 0 additions & 90 deletions
This file was deleted.
Lines changed: 136 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,139 @@
11
<!DOCTYPE qgis PUBLIC 'http://mrcc.com/qgis.dtd' 'SYSTEM'>
2-
<qgis version="0.9.2-Ganymede" minimumScale="1" maximumScale="1e+08" hasScaleBasedVisibilityFlag="0" geometry="Line" type="vector" >
3-
<id>lines20080110101725388</id>
4-
<datasource>/Users/tim/dev/cpp/qgis/tests/testdata/lines.shp</datasource>
5-
<layername>lines</layername>
6-
<srs>
7-
<spatialrefsys>
8-
<proj4>+proj=longlat +ellps=WGS84 +no_defs</proj4>
9-
<srsid>1449</srsid>
10-
<srid>4031</srid>
11-
<epsg>4031</epsg>
12-
<description>Unknown datum based upon the GEM 10C ellipsoid</description>
13-
<projectionacronym>longlat</projectionacronym>
14-
<ellipsoidacronym>WGS84</ellipsoidacronym>
15-
<geographicflag>false</geographicflag>
16-
</spatialrefsys>
17-
</srs>
18-
<transparencyLevelInt>255</transparencyLevelInt>
19-
<provider>ogr</provider>
20-
<encoding>System</encoding>
21-
<displayfield>Name</displayfield>
22-
<label>0</label>
23-
<attributeactions/>
24-
<singlesymbol>
25-
<symbol>
26-
<lowervalue></lowervalue>
27-
<uppervalue></uppervalue>
28-
<label></label>
29-
<pointsymbol>hard:circle</pointsymbol>
30-
<pointsize>11</pointsize>
31-
<rotationclassificationfield>-1</rotationclassificationfield>
32-
<scaleclassificationfield>-1</scaleclassificationfield>
33-
<outlinecolor red="159" blue="98" green="113" />
34-
<outlinestyle>DashLine</outlinestyle>
35-
<outlinewidth>0.8</outlinewidth>
36-
<fillcolor red="0" blue="0" green="0" />
37-
<fillpattern>NoBrush</fillpattern>
38-
<texturepath></texturepath>
2+
<qgis version="2.18.0" simplifyAlgorithm="0" minimumScale="1" maximumScale="1e+08" simplifyDrawingHints="1" minLabelScale="1" maxLabelScale="1e+08" simplifyDrawingTol="1" simplifyMaxScale="1" hasScaleBasedVisibilityFlag="0" simplifyLocal="1" scaleBasedLabelVisibilityFlag="0">
3+
<edittypes>
4+
<edittype widgetv2type="TextEdit" name="Name">
5+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
6+
</edittype>
7+
<edittype widgetv2type="TextEdit" name="Value">
8+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
9+
</edittype>
10+
</edittypes>
11+
<renderer-v2 forceraster="0" symbollevels="0" type="singleSymbol" enableorderby="0">
12+
<symbols>
13+
<symbol alpha="1" clip_to_extent="1" type="line" name="0">
14+
<layer pass="0" class="SimpleLine" locked="0">
15+
<prop k="capstyle" v="square"/>
16+
<prop k="customdash" v="5;2"/>
17+
<prop k="customdash_map_unit_scale" v="0,0,0,0,0,0"/>
18+
<prop k="customdash_unit" v="MM"/>
19+
<prop k="draw_inside_polygon" v="0"/>
20+
<prop k="joinstyle" v="bevel"/>
21+
<prop k="line_color" v="159,113,98,255"/>
22+
<prop k="line_style" v="dash"/>
23+
<prop k="line_width" v="0.8"/>
24+
<prop k="line_width_unit" v="MM"/>
25+
<prop k="offset" v="0"/>
26+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
27+
<prop k="offset_unit" v="MM"/>
28+
<prop k="use_custom_dash" v="0"/>
29+
<prop k="width_map_unit_scale" v="0,0,0,0,0,0"/>
30+
</layer>
3931
</symbol>
40-
</singlesymbol>
41-
<labelattributes>
42-
<label field="" text="Label" />
43-
<family field="" name="Lucida Grande" />
44-
<size field="" units="pt" value="12" />
45-
<bold field="" on="0" />
46-
<italic field="" on="0" />
47-
<underline field="" on="0" />
48-
<color field="" red="0" blue="0" green="0" />
49-
<x field="" />
50-
<y field="" />
51-
<offset x="0" y="0" yfield="-1" xfield="-1" units="pt" />
52-
<angle field="" value="0" />
53-
<alignment field="-1" value="center" />
54-
<buffercolor field="" red="255" blue="255" green="255" />
55-
<buffersize field="" units="pt" value="1" />
56-
<bufferenabled field="" on="" />
57-
</labelattributes>
32+
</symbols>
33+
<rotation/>
34+
<sizescale scalemethod="diameter"/>
35+
</renderer-v2>
36+
<labeling type="simple"/>
37+
<customproperties>
38+
<property key="embeddedWidgets/count" value="0"/>
39+
<property key="variableNames"/>
40+
<property key="variableValues"/>
41+
</customproperties>
42+
<blendMode>0</blendMode>
43+
<featureBlendMode>0</featureBlendMode>
44+
<layerTransparency>0</layerTransparency>
45+
<displayfield>Name</displayfield>
46+
<label>0</label>
47+
<labelattributes>
48+
<label fieldname="" text="Label"/>
49+
<family fieldname="" name="Lucida Grande"/>
50+
<size fieldname="" units="pt" value="12"/>
51+
<bold fieldname="" on="0"/>
52+
<italic fieldname="" on="0"/>
53+
<underline fieldname="" on="0"/>
54+
<strikeout fieldname="" on="0"/>
55+
<color fieldname="" red="0" blue="0" green="0"/>
56+
<x fieldname=""/>
57+
<y fieldname=""/>
58+
<offset x="0" y="0" units="pt" yfieldname="" xfieldname=""/>
59+
<angle fieldname="" value="0" auto="0"/>
60+
<alignment fieldname="" value="center"/>
61+
<buffercolor fieldname="" red="255" blue="255" green="255"/>
62+
<buffersize fieldname="" units="pt" value="1"/>
63+
<bufferenabled fieldname="" on=""/>
64+
<multilineenabled fieldname="" on=""/>
65+
<selectedonly on=""/>
66+
</labelattributes>
67+
<SingleCategoryDiagramRenderer diagramType="Histogram" sizeLegend="0" attributeLegend="1">
68+
<DiagramCategory penColor="#000000" labelPlacementMethod="XHeight" penWidth="0" diagramOrientation="Up" sizeScale="0,0,0,0,0,0" minimumSize="0" barWidth="5" penAlpha="255" maxScaleDenominator="1e+08" backgroundColor="#ffffff" transparency="0" width="15" scaleDependency="Area" backgroundAlpha="255" angleOffset="1440" scaleBasedVisibility="0" enabled="0" height="15" lineSizeScale="0,0,0,0,0,0" sizeType="MM" lineSizeType="MM" minScaleDenominator="1">
69+
<fontProperties description="Noto Sans,10,-1,5,50,0,0,0,0,0" style=""/>
70+
</DiagramCategory>
71+
<symbol alpha="1" clip_to_extent="1" type="marker" name="sizeSymbol">
72+
<layer pass="0" class="SimpleMarker" locked="0">
73+
<prop k="angle" v="0"/>
74+
<prop k="color" v="255,0,0,255"/>
75+
<prop k="horizontal_anchor_point" v="1"/>
76+
<prop k="joinstyle" v="bevel"/>
77+
<prop k="name" v="circle"/>
78+
<prop k="offset" v="0,0"/>
79+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
80+
<prop k="offset_unit" v="MM"/>
81+
<prop k="outline_color" v="0,0,0,255"/>
82+
<prop k="outline_style" v="solid"/>
83+
<prop k="outline_width" v="0"/>
84+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
85+
<prop k="outline_width_unit" v="MM"/>
86+
<prop k="scale_method" v="diameter"/>
87+
<prop k="size" v="2"/>
88+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
89+
<prop k="size_unit" v="MM"/>
90+
<prop k="vertical_anchor_point" v="1"/>
91+
</layer>
92+
</symbol>
93+
</SingleCategoryDiagramRenderer>
94+
<DiagramLayerSettings yPosColumn="-1" showColumn="-1" linePlacementFlags="10" placement="2" dist="0" xPosColumn="-1" priority="0" obstacle="0" zIndex="0" showAll="1"/>
95+
<annotationform></annotationform>
96+
<aliases>
97+
<alias field="Name" index="0" name=""/>
98+
<alias field="Value" index="1" name=""/>
99+
</aliases>
100+
<excludeAttributesWMS/>
101+
<excludeAttributesWFS/>
102+
<attributeactions default="0"/>
103+
<attributetableconfig actionWidgetStyle="dropDown" sortExpression="" sortOrder="0">
104+
<columns>
105+
<column width="-1" hidden="0" type="field" name="Name"/>
106+
<column width="-1" hidden="0" type="field" name="Value"/>
107+
<column width="-1" hidden="1" type="actions"/>
108+
</columns>
109+
</attributetableconfig>
110+
<editform></editform>
111+
<editforminit/>
112+
<editforminitcodesource>0</editforminitcodesource>
113+
<editforminitfilepath></editforminitfilepath>
114+
<editforminitcode><![CDATA[# -*- coding: utf-8 -*-
115+
"""
116+
QGIS forms can have a Python function that is called when the form is
117+
opened.
118+
119+
Use this function to add extra logic to your forms.
120+
121+
Enter the name of the function in the "Python Init function"
122+
field.
123+
An example follows:
124+
"""
125+
from qgis.PyQt.QtWidgets import QWidget
126+
127+
def my_form_open(dialog, layer, feature):
128+
geom = feature.geometry()
129+
control = dialog.findChild(QWidget, "MyLineEdit")
130+
]]></editforminitcode>
131+
<featformsuppress>0</featformsuppress>
132+
<editorlayout>generatedlayout</editorlayout>
133+
<widgets/>
134+
<conditionalstyles>
135+
<rowstyles/>
136+
<fieldstyles/>
137+
</conditionalstyles>
138+
<layerGeometryType>1</layerGeometryType>
58139
</qgis>

‎tests/testdata/lines_uniquevalue_symbol.qml

Lines changed: 0 additions & 75 deletions
This file was deleted.

‎tests/testdata/points.qml

Lines changed: 180 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,105 @@
11
<!DOCTYPE qgis PUBLIC 'http://mrcc.com/qgis.dtd' 'SYSTEM'>
2-
<qgis version="1.9.90-Alpha" minimumScale="1" maximumScale="1e+08" minLabelScale="1" maxLabelScale="1e+08" hasScaleBasedVisibilityFlag="0" scaleBasedLabelVisibilityFlag="0">
3-
<transparencyLevelInt>255</transparencyLevelInt>
4-
<classificationattribute>Importance</classificationattribute>
5-
<classificationattribute>Heading</classificationattribute>
6-
<classificationattribute>Class</classificationattribute>
7-
<uniquevalue>
8-
<classificationfield>Class</classificationfield>
9-
<symbol>
10-
<lowervalue>B52</lowervalue>
11-
<uppervalue></uppervalue>
12-
<label></label>
13-
<pointsymbol>svg:/gpsicons/plane.svg</pointsymbol>
14-
<pointsize>11</pointsize>
15-
<pointsizeunits>pixels</pointsizeunits>
16-
<rotationclassificationfieldname>Importance</rotationclassificationfieldname>
17-
<scaleclassificationfieldname>Importance</scaleclassificationfieldname>
18-
<symbolfieldname></symbolfieldname>
19-
<outlinecolor red="0" blue="0" green="0"/>
20-
<outlinestyle>SolidLine</outlinestyle>
21-
<outlinewidth>1</outlinewidth>
22-
<fillcolor red="176" blue="238" green="151"/>
23-
<fillpattern>SolidPattern</fillpattern>
24-
<texturepath></texturepath>
25-
</symbol>
26-
<symbol>
27-
<lowervalue>Biplane</lowervalue>
28-
<uppervalue></uppervalue>
29-
<label></label>
30-
<pointsymbol>svg:/gpsicons/plane_orange.svg</pointsymbol>
31-
<pointsize>18</pointsize>
32-
<pointsizeunits>pixels</pointsizeunits>
33-
<rotationclassificationfieldname>Heading</rotationclassificationfieldname>
34-
<scaleclassificationfieldname>Importance</scaleclassificationfieldname>
35-
<symbolfieldname></symbolfieldname>
36-
<outlinecolor red="0" blue="0" green="0"/>
37-
<outlinestyle>SolidLine</outlinestyle>
38-
<outlinewidth>1</outlinewidth>
39-
<fillcolor red="216" blue="24" green="135"/>
40-
<fillpattern>SolidPattern</fillpattern>
41-
<texturepath></texturepath>
42-
</symbol>
43-
<symbol>
44-
<lowervalue>Jet</lowervalue>
45-
<uppervalue></uppervalue>
46-
<label></label>
47-
<pointsymbol>svg:/gpsicons/plane.svg</pointsymbol>
48-
<pointsize>11</pointsize>
49-
<pointsizeunits>pixels</pointsizeunits>
50-
<rotationclassificationfieldname>Heading</rotationclassificationfieldname>
51-
<scaleclassificationfieldname>Importance</scaleclassificationfieldname>
52-
<symbolfieldname></symbolfieldname>
53-
<outlinecolor red="0" blue="0" green="0"/>
54-
<outlinestyle>SolidLine</outlinestyle>
55-
<outlinewidth>1</outlinewidth>
56-
<fillcolor red="167" blue="179" green="107"/>
57-
<fillpattern>SolidPattern</fillpattern>
58-
<texturepath></texturepath>
59-
</symbol>
60-
</uniquevalue>
61-
<customproperties/>
2+
<qgis version="2.18.0" simplifyAlgorithm="0" minimumScale="1" maximumScale="1e+08" simplifyDrawingHints="0" minLabelScale="1" maxLabelScale="1e+08" simplifyDrawingTol="1" simplifyMaxScale="1" hasScaleBasedVisibilityFlag="0" simplifyLocal="1" scaleBasedLabelVisibilityFlag="0">
3+
<edittypes>
4+
<edittype widgetv2type="TextEdit" name="Class">
5+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
6+
</edittype>
7+
<edittype widgetv2type="TextEdit" name="Heading">
8+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
9+
</edittype>
10+
<edittype widgetv2type="TextEdit" name="Importance">
11+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
12+
</edittype>
13+
<edittype widgetv2type="TextEdit" name="Pilots">
14+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
15+
</edittype>
16+
<edittype widgetv2type="TextEdit" name="Cabin Crew">
17+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
18+
</edittype>
19+
<edittype widgetv2type="TextEdit" name="Staff">
20+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
21+
</edittype>
22+
</edittypes>
23+
<renderer-v2 attr="Class" forceraster="0" symbollevels="0" type="categorizedSymbol" enableorderby="0">
24+
<categories>
25+
<category render="true" symbol="0" value="B52" label="B52"/>
26+
<category render="true" symbol="1" value="Biplane" label="Biplane"/>
27+
<category render="true" symbol="2" value="Jet" label="Jet"/>
28+
</categories>
29+
<symbols>
30+
<symbol alpha="1" clip_to_extent="1" type="marker" name="0">
31+
<layer pass="0" class="SvgMarker" locked="0">
32+
<prop k="angle" v="0"/>
33+
<prop k="color" v="0,0,0,255"/>
34+
<prop k="horizontal_anchor_point" v="1"/>
35+
<prop k="name" v="gpsicons/plane.svg"/>
36+
<prop k="offset" v="0,0"/>
37+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
38+
<prop k="offset_unit" v="MM"/>
39+
<prop k="outline_color" v="0,0,0,255"/>
40+
<prop k="outline_width" v="0.2"/>
41+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
42+
<prop k="outline_width_unit" v="MM"/>
43+
<prop k="scale_method" v="diameter"/>
44+
<prop k="size" v="11"/>
45+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
46+
<prop k="size_unit" v="MM"/>
47+
<prop k="vertical_anchor_point" v="1"/>
48+
</layer>
49+
</symbol>
50+
<symbol alpha="1" clip_to_extent="1" type="marker" name="1">
51+
<layer pass="0" class="SvgMarker" locked="0">
52+
<prop k="angle" v="0"/>
53+
<prop k="color" v="0,0,0,255"/>
54+
<prop k="horizontal_anchor_point" v="1"/>
55+
<prop k="name" v="gpsicons/plane_orange.svg"/>
56+
<prop k="offset" v="0,0"/>
57+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
58+
<prop k="offset_unit" v="MM"/>
59+
<prop k="outline_color" v="0,0,0,255"/>
60+
<prop k="outline_width" v="0.2"/>
61+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
62+
<prop k="outline_width_unit" v="MM"/>
63+
<prop k="scale_method" v="diameter"/>
64+
<prop k="size" v="18"/>
65+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
66+
<prop k="size_unit" v="MM"/>
67+
<prop k="vertical_anchor_point" v="1"/>
68+
</layer>
69+
</symbol>
70+
<symbol alpha="1" clip_to_extent="1" type="marker" name="2">
71+
<layer pass="0" class="SvgMarker" locked="0">
72+
<prop k="angle" v="0"/>
73+
<prop k="color" v="0,0,0,255"/>
74+
<prop k="horizontal_anchor_point" v="1"/>
75+
<prop k="name" v="gpsicons/plane.svg"/>
76+
<prop k="offset" v="0,0"/>
77+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
78+
<prop k="offset_unit" v="MM"/>
79+
<prop k="outline_color" v="0,0,0,255"/>
80+
<prop k="outline_width" v="0.2"/>
81+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
82+
<prop k="outline_width_unit" v="MM"/>
83+
<prop k="scale_method" v="diameter"/>
84+
<prop k="size" v="11"/>
85+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
86+
<prop k="size_unit" v="MM"/>
87+
<prop k="vertical_anchor_point" v="1"/>
88+
</layer>
89+
</symbol>
90+
</symbols>
91+
<rotation/>
92+
<sizescale scalemethod="diameter"/>
93+
</renderer-v2>
94+
<labeling type="simple"/>
95+
<customproperties>
96+
<property key="embeddedWidgets/count" value="0"/>
97+
<property key="variableNames"/>
98+
<property key="variableValues"/>
99+
</customproperties>
100+
<blendMode>0</blendMode>
101+
<featureBlendMode>0</featureBlendMode>
102+
<layerTransparency>0</layerTransparency>
62103
<displayfield>Class</displayfield>
63104
<label>0</label>
64105
<labelattributes>
@@ -81,13 +122,84 @@
81122
<multilineenabled fieldname="" on=""/>
82123
<selectedonly on=""/>
83124
</labelattributes>
84-
<edittypes>
85-
<edittype type="0" name="Class"/>
86-
<edittype type="0" name="Heading"/>
87-
<edittype type="0" name="Importance"/>
88-
</edittypes>
89-
<editform></editform>
90-
<editforminit></editforminit>
125+
<SingleCategoryDiagramRenderer diagramType="Histogram" sizeLegend="0" attributeLegend="1">
126+
<DiagramCategory penColor="#000000" labelPlacementMethod="XHeight" penWidth="0" diagramOrientation="Up" sizeScale="0,0,0,0,0,0" minimumSize="0" barWidth="5" penAlpha="255" maxScaleDenominator="1e+08" backgroundColor="#ffffff" transparency="0" width="15" scaleDependency="Area" backgroundAlpha="255" angleOffset="1440" scaleBasedVisibility="0" enabled="0" height="15" lineSizeScale="0,0,0,0,0,0" sizeType="MM" lineSizeType="MM" minScaleDenominator="1">
127+
<fontProperties description="Noto Sans,10,-1,5,50,0,0,0,0,0" style=""/>
128+
</DiagramCategory>
129+
<symbol alpha="1" clip_to_extent="1" type="marker" name="sizeSymbol">
130+
<layer pass="0" class="SimpleMarker" locked="0">
131+
<prop k="angle" v="0"/>
132+
<prop k="color" v="255,0,0,255"/>
133+
<prop k="horizontal_anchor_point" v="1"/>
134+
<prop k="joinstyle" v="bevel"/>
135+
<prop k="name" v="circle"/>
136+
<prop k="offset" v="0,0"/>
137+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
138+
<prop k="offset_unit" v="MM"/>
139+
<prop k="outline_color" v="0,0,0,255"/>
140+
<prop k="outline_style" v="solid"/>
141+
<prop k="outline_width" v="0"/>
142+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
143+
<prop k="outline_width_unit" v="MM"/>
144+
<prop k="scale_method" v="diameter"/>
145+
<prop k="size" v="2"/>
146+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
147+
<prop k="size_unit" v="MM"/>
148+
<prop k="vertical_anchor_point" v="1"/>
149+
</layer>
150+
</symbol>
151+
</SingleCategoryDiagramRenderer>
152+
<DiagramLayerSettings yPosColumn="-1" showColumn="-1" linePlacementFlags="10" placement="0" dist="0" xPosColumn="-1" priority="0" obstacle="0" zIndex="0" showAll="1"/>
91153
<annotationform></annotationform>
92-
<attributeactions/>
154+
<aliases>
155+
<alias field="Class" index="0" name=""/>
156+
<alias field="Heading" index="1" name=""/>
157+
<alias field="Importance" index="2" name=""/>
158+
<alias field="Pilots" index="3" name=""/>
159+
<alias field="Cabin Crew" index="4" name=""/>
160+
<alias field="Staff" index="5" name=""/>
161+
</aliases>
162+
<excludeAttributesWMS/>
163+
<excludeAttributesWFS/>
164+
<attributeactions default="0"/>
165+
<attributetableconfig actionWidgetStyle="dropDown" sortExpression="" sortOrder="0">
166+
<columns>
167+
<column width="-1" hidden="0" type="field" name="Class"/>
168+
<column width="-1" hidden="0" type="field" name="Heading"/>
169+
<column width="-1" hidden="0" type="field" name="Importance"/>
170+
<column width="-1" hidden="0" type="field" name="Pilots"/>
171+
<column width="-1" hidden="0" type="field" name="Cabin Crew"/>
172+
<column width="-1" hidden="0" type="field" name="Staff"/>
173+
<column width="-1" hidden="1" type="actions"/>
174+
</columns>
175+
</attributetableconfig>
176+
<editform></editform>
177+
<editforminit/>
178+
<editforminitcodesource>0</editforminitcodesource>
179+
<editforminitfilepath></editforminitfilepath>
180+
<editforminitcode><![CDATA[# -*- coding: utf-8 -*-
181+
"""
182+
QGIS forms can have a Python function that is called when the form is
183+
opened.
184+
185+
Use this function to add extra logic to your forms.
186+
187+
Enter the name of the function in the "Python Init function"
188+
field.
189+
An example follows:
190+
"""
191+
from qgis.PyQt.QtWidgets import QWidget
192+
193+
def my_form_open(dialog, layer, feature):
194+
geom = feature.geometry()
195+
control = dialog.findChild(QWidget, "MyLineEdit")
196+
]]></editforminitcode>
197+
<featformsuppress>0</featformsuppress>
198+
<editorlayout>generatedlayout</editorlayout>
199+
<widgets/>
200+
<conditionalstyles>
201+
<rowstyles/>
202+
<fieldstyles/>
203+
</conditionalstyles>
204+
<layerGeometryType>0</layerGeometryType>
93205
</qgis>

‎tests/testdata/points_continuous_symbol.qml

Lines changed: 0 additions & 80 deletions
This file was deleted.
Lines changed: 208 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -1,91 +1,213 @@
11
<!DOCTYPE qgis PUBLIC 'http://mrcc.com/qgis.dtd' 'SYSTEM'>
2-
<qgis version="0.9.2-Ganymede" minimumScale="1" maximumScale="1e+08" hasScaleBasedVisibilityFlag="0" geometry="Point" type="vector" >
3-
<id>points20080103150949100</id>
4-
<datasource>/Users/tim/dev/cpp/qgis/tests/testdata/points.shp</datasource>
5-
<layername>points</layername>
6-
<srs>
7-
<spatialrefsys>
8-
<proj4>+proj=longlat +ellps=WGS84 +no_defs</proj4>
9-
<srsid>1449</srsid>
10-
<srid>4031</srid>
11-
<epsg>4031</epsg>
12-
<description>Unknown datum based upon the GEM 10C ellipsoid</description>
13-
<projectionacronym>longlat</projectionacronym>
14-
<ellipsoidacronym>WGS84</ellipsoidacronym>
15-
<geographicflag>true</geographicflag>
16-
</spatialrefsys>
17-
</srs>
18-
<transparencyLevelInt>255</transparencyLevelInt>
19-
<provider>ogr</provider>
20-
<encoding>System</encoding>
21-
<classificationattribute>Heading</classificationattribute>
22-
<classificationattribute>Importance</classificationattribute>
23-
<displayfield>Class</displayfield>
24-
<label>0</label>
25-
<attributeactions/>
26-
<graduatedsymbol>
27-
<classificationfield>Importance</classificationfield>
28-
<symbol>
29-
<lowervalue>0.999</lowervalue>
30-
<uppervalue>7.333</uppervalue>
31-
<label></label>
32-
<pointsymbol>hard:circle</pointsymbol>
33-
<pointsize>4</pointsize>
34-
<rotationclassificationfield>1</rotationclassificationfield>
35-
<scaleclassificationfield>2</scaleclassificationfield>
36-
<outlinecolor red="0" blue="0" green="0" />
37-
<outlinestyle>SolidLine</outlinestyle>
38-
<outlinewidth>0.4</outlinewidth>
39-
<fillcolor red="0" blue="0" green="255" />
40-
<fillpattern>SolidPattern</fillpattern>
41-
<texturepath></texturepath>
2+
<qgis version="2.18.0" simplifyAlgorithm="0" minimumScale="1" maximumScale="1e+08" simplifyDrawingHints="0" minLabelScale="1" maxLabelScale="1e+08" simplifyDrawingTol="1" simplifyMaxScale="1" hasScaleBasedVisibilityFlag="0" simplifyLocal="1" scaleBasedLabelVisibilityFlag="0">
3+
<edittypes>
4+
<edittype widgetv2type="TextEdit" name="Class">
5+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
6+
</edittype>
7+
<edittype widgetv2type="TextEdit" name="Heading">
8+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
9+
</edittype>
10+
<edittype widgetv2type="TextEdit" name="Importance">
11+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
12+
</edittype>
13+
<edittype widgetv2type="TextEdit" name="Pilots">
14+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
15+
</edittype>
16+
<edittype widgetv2type="TextEdit" name="Cabin Crew">
17+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
18+
</edittype>
19+
<edittype widgetv2type="TextEdit" name="Staff">
20+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
21+
</edittype>
22+
</edittypes>
23+
<renderer-v2 attr="Importance" forceraster="0" symbollevels="0" type="graduatedSymbol" graduatedMethod="GraduatedColor" enableorderby="0">
24+
<ranges>
25+
<range render="true" symbol="0" lower="0.999000000000000" upper="7.333000000000000" label="0.999 - 7.333"/>
26+
<range render="true" symbol="1" lower="7.333000000000000" upper="13.667000000000000" label="7.333 - 13.667"/>
27+
<range render="true" symbol="2" lower="13.667000000000000" upper="20.001000000000001" label="13.667 - 20.001"/>
28+
</ranges>
29+
<symbols>
30+
<symbol alpha="1" clip_to_extent="1" type="marker" name="0">
31+
<layer pass="0" class="SimpleMarker" locked="0">
32+
<prop k="angle" v="0"/>
33+
<prop k="color" v="0,255,0,255"/>
34+
<prop k="horizontal_anchor_point" v="1"/>
35+
<prop k="joinstyle" v="bevel"/>
36+
<prop k="name" v="circle"/>
37+
<prop k="offset" v="0,0"/>
38+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
39+
<prop k="offset_unit" v="MM"/>
40+
<prop k="outline_color" v="0,0,0,255"/>
41+
<prop k="outline_style" v="solid"/>
42+
<prop k="outline_width" v="0"/>
43+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
44+
<prop k="outline_width_unit" v="MM"/>
45+
<prop k="scale_method" v="diameter"/>
46+
<prop k="size" v="4"/>
47+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
48+
<prop k="size_unit" v="MM"/>
49+
<prop k="vertical_anchor_point" v="1"/>
50+
</layer>
4251
</symbol>
43-
<symbol>
44-
<lowervalue>7.333</lowervalue>
45-
<uppervalue>13.667</uppervalue>
46-
<label></label>
47-
<pointsymbol>hard:rectangle</pointsymbol>
48-
<pointsize>7</pointsize>
49-
<rotationclassificationfield>1</rotationclassificationfield>
50-
<scaleclassificationfield>2</scaleclassificationfield>
51-
<outlinecolor red="0" blue="0" green="0" />
52-
<outlinestyle>SolidLine</outlinestyle>
53-
<outlinewidth>0.4</outlinewidth>
54-
<fillcolor red="169" blue="108" green="102" />
55-
<fillpattern>SolidPattern</fillpattern>
56-
<texturepath></texturepath>
52+
<symbol alpha="1" clip_to_extent="1" type="marker" name="1">
53+
<layer pass="0" class="SimpleMarker" locked="0">
54+
<prop k="angle" v="0"/>
55+
<prop k="color" v="169,102,108,255"/>
56+
<prop k="horizontal_anchor_point" v="1"/>
57+
<prop k="joinstyle" v="bevel"/>
58+
<prop k="name" v="square"/>
59+
<prop k="offset" v="0,0"/>
60+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
61+
<prop k="offset_unit" v="MM"/>
62+
<prop k="outline_color" v="0,0,0,255"/>
63+
<prop k="outline_style" v="solid"/>
64+
<prop k="outline_width" v="0"/>
65+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
66+
<prop k="outline_width_unit" v="MM"/>
67+
<prop k="scale_method" v="diameter"/>
68+
<prop k="size" v="7"/>
69+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
70+
<prop k="size_unit" v="MM"/>
71+
<prop k="vertical_anchor_point" v="1"/>
72+
</layer>
5773
</symbol>
58-
<symbol>
59-
<lowervalue>13.667</lowervalue>
60-
<uppervalue>20.001</uppervalue>
61-
<label></label>
62-
<pointsymbol>hard:star</pointsymbol>
63-
<pointsize>9</pointsize>
64-
<rotationclassificationfield>1</rotationclassificationfield>
65-
<scaleclassificationfield>2</scaleclassificationfield>
66-
<outlinecolor red="0" blue="0" green="0" />
67-
<outlinestyle>SolidLine</outlinestyle>
68-
<outlinewidth>0.4</outlinewidth>
69-
<fillcolor red="0" blue="171" green="84" />
70-
<fillpattern>SolidPattern</fillpattern>
71-
<texturepath></texturepath>
74+
<symbol alpha="1" clip_to_extent="1" type="marker" name="2">
75+
<layer pass="0" class="SimpleMarker" locked="0">
76+
<prop k="angle" v="0"/>
77+
<prop k="color" v="0,84,171,255"/>
78+
<prop k="horizontal_anchor_point" v="1"/>
79+
<prop k="joinstyle" v="bevel"/>
80+
<prop k="name" v="star"/>
81+
<prop k="offset" v="0,0"/>
82+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
83+
<prop k="offset_unit" v="MM"/>
84+
<prop k="outline_color" v="0,0,0,255"/>
85+
<prop k="outline_style" v="solid"/>
86+
<prop k="outline_width" v="0"/>
87+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
88+
<prop k="outline_width_unit" v="MM"/>
89+
<prop k="scale_method" v="diameter"/>
90+
<prop k="size" v="9"/>
91+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
92+
<prop k="size_unit" v="MM"/>
93+
<prop k="vertical_anchor_point" v="1"/>
94+
</layer>
7295
</symbol>
73-
</graduatedsymbol>
74-
<labelattributes>
75-
<label field="" text="Label" />
76-
<family field="" name="Lucida Grande" />
77-
<size field="" units="pt" value="12" />
78-
<bold field="" on="0" />
79-
<italic field="" on="0" />
80-
<underline field="" on="0" />
81-
<color field="" red="0" blue="0" green="0" />
82-
<x field="" />
83-
<y field="" />
84-
<offset x="0" y="0" yfield="-1" xfield="-1" units="pt" />
85-
<angle field="" value="0" />
86-
<alignment field="-1" value="center" />
87-
<buffercolor field="" red="255" blue="255" green="255" />
88-
<buffersize field="" units="pt" value="1" />
89-
<bufferenabled field="" on="" />
90-
</labelattributes>
96+
</symbols>
97+
<mode name="equal"/>
98+
<rotation/>
99+
<sizescale scalemethod="diameter"/>
100+
<labelformat format=" %1 - %2 " trimtrailingzeroes="false" decimalplaces="4"/>
101+
</renderer-v2>
102+
<labeling type="simple"/>
103+
<customproperties>
104+
<property key="embeddedWidgets/count" value="0"/>
105+
<property key="variableNames"/>
106+
<property key="variableValues"/>
107+
</customproperties>
108+
<blendMode>0</blendMode>
109+
<featureBlendMode>0</featureBlendMode>
110+
<layerTransparency>0</layerTransparency>
111+
<displayfield>Class</displayfield>
112+
<label>0</label>
113+
<labelattributes>
114+
<label fieldname="" text="Label"/>
115+
<family fieldname="" name="Lucida Grande"/>
116+
<size fieldname="" units="pt" value="12"/>
117+
<bold fieldname="" on="0"/>
118+
<italic fieldname="" on="0"/>
119+
<underline fieldname="" on="0"/>
120+
<strikeout fieldname="" on="0"/>
121+
<color fieldname="" red="0" blue="0" green="0"/>
122+
<x fieldname=""/>
123+
<y fieldname=""/>
124+
<offset x="0" y="0" units="pt" yfieldname="" xfieldname=""/>
125+
<angle fieldname="" value="0" auto="0"/>
126+
<alignment fieldname="" value="center"/>
127+
<buffercolor fieldname="" red="255" blue="255" green="255"/>
128+
<buffersize fieldname="" units="pt" value="1"/>
129+
<bufferenabled fieldname="" on=""/>
130+
<multilineenabled fieldname="" on=""/>
131+
<selectedonly on=""/>
132+
</labelattributes>
133+
<SingleCategoryDiagramRenderer diagramType="Histogram" sizeLegend="0" attributeLegend="1">
134+
<DiagramCategory penColor="#000000" labelPlacementMethod="XHeight" penWidth="0" diagramOrientation="Up" sizeScale="0,0,0,0,0,0" minimumSize="0" barWidth="5" penAlpha="255" maxScaleDenominator="1e+08" backgroundColor="#ffffff" transparency="0" width="15" scaleDependency="Area" backgroundAlpha="255" angleOffset="1440" scaleBasedVisibility="0" enabled="0" height="15" lineSizeScale="0,0,0,0,0,0" sizeType="MM" lineSizeType="MM" minScaleDenominator="1">
135+
<fontProperties description="Noto Sans,10,-1,5,50,0,0,0,0,0" style=""/>
136+
</DiagramCategory>
137+
<symbol alpha="1" clip_to_extent="1" type="marker" name="sizeSymbol">
138+
<layer pass="0" class="SimpleMarker" locked="0">
139+
<prop k="angle" v="0"/>
140+
<prop k="color" v="255,0,0,255"/>
141+
<prop k="horizontal_anchor_point" v="1"/>
142+
<prop k="joinstyle" v="bevel"/>
143+
<prop k="name" v="circle"/>
144+
<prop k="offset" v="0,0"/>
145+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
146+
<prop k="offset_unit" v="MM"/>
147+
<prop k="outline_color" v="0,0,0,255"/>
148+
<prop k="outline_style" v="solid"/>
149+
<prop k="outline_width" v="0"/>
150+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
151+
<prop k="outline_width_unit" v="MM"/>
152+
<prop k="scale_method" v="diameter"/>
153+
<prop k="size" v="2"/>
154+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
155+
<prop k="size_unit" v="MM"/>
156+
<prop k="vertical_anchor_point" v="1"/>
157+
</layer>
158+
</symbol>
159+
</SingleCategoryDiagramRenderer>
160+
<DiagramLayerSettings yPosColumn="-1" showColumn="-1" linePlacementFlags="10" placement="0" dist="0" xPosColumn="-1" priority="0" obstacle="0" zIndex="0" showAll="1"/>
161+
<annotationform></annotationform>
162+
<aliases>
163+
<alias field="Class" index="0" name=""/>
164+
<alias field="Heading" index="1" name=""/>
165+
<alias field="Importance" index="2" name=""/>
166+
<alias field="Pilots" index="3" name=""/>
167+
<alias field="Cabin Crew" index="4" name=""/>
168+
<alias field="Staff" index="5" name=""/>
169+
</aliases>
170+
<excludeAttributesWMS/>
171+
<excludeAttributesWFS/>
172+
<attributeactions default="-1"/>
173+
<attributetableconfig actionWidgetStyle="dropDown" sortExpression="" sortOrder="0">
174+
<columns>
175+
<column width="-1" hidden="0" type="field" name="Class"/>
176+
<column width="-1" hidden="0" type="field" name="Heading"/>
177+
<column width="-1" hidden="0" type="field" name="Importance"/>
178+
<column width="-1" hidden="0" type="field" name="Pilots"/>
179+
<column width="-1" hidden="0" type="field" name="Cabin Crew"/>
180+
<column width="-1" hidden="0" type="field" name="Staff"/>
181+
<column width="-1" hidden="1" type="actions"/>
182+
</columns>
183+
</attributetableconfig>
184+
<editform></editform>
185+
<editforminit/>
186+
<editforminitcodesource>0</editforminitcodesource>
187+
<editforminitfilepath></editforminitfilepath>
188+
<editforminitcode><![CDATA[# -*- coding: utf-8 -*-
189+
"""
190+
QGIS forms can have a Python function that is called when the form is
191+
opened.
192+
193+
Use this function to add extra logic to your forms.
194+
195+
Enter the name of the function in the "Python Init function"
196+
field.
197+
An example follows:
198+
"""
199+
from qgis.PyQt.QtWidgets import QWidget
200+
201+
def my_form_open(dialog, layer, feature):
202+
geom = feature.geometry()
203+
control = dialog.findChild(QWidget, "MyLineEdit")
204+
]]></editforminitcode>
205+
<featformsuppress>0</featformsuppress>
206+
<editorlayout>generatedlayout</editorlayout>
207+
<widgets/>
208+
<conditionalstyles>
209+
<rowstyles/>
210+
<fieldstyles/>
211+
</conditionalstyles>
212+
<layerGeometryType>0</layerGeometryType>
91213
</qgis>

‎tests/testdata/points_uniquevalue_symbol.qml

Lines changed: 0 additions & 92 deletions
This file was deleted.

‎tests/testdata/polys.qml

Lines changed: 129 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,62 @@
11
<!DOCTYPE qgis PUBLIC 'http://mrcc.com/qgis.dtd' 'SYSTEM'>
2-
<qgis version="1.9.90-Alpha" minimumScale="1" maximumScale="1e+08" minLabelScale="1" maxLabelScale="1e+08" hasScaleBasedVisibilityFlag="0" scaleBasedLabelVisibilityFlag="0">
3-
<transparencyLevelInt>227</transparencyLevelInt>
4-
<classificationattribute>Name</classificationattribute>
5-
<uniquevalue>
6-
<classificationfield>Name</classificationfield>
7-
<symbol>
8-
<lowervalue>Dam</lowervalue>
9-
<uppervalue></uppervalue>
10-
<label>Dam</label>
11-
<pointsymbol>hard:circle</pointsymbol>
12-
<pointsize>11</pointsize>
13-
<pointsizeunits>pixels</pointsizeunits>
14-
<rotationclassificationfieldname></rotationclassificationfieldname>
15-
<scaleclassificationfieldname></scaleclassificationfieldname>
16-
<symbolfieldname></symbolfieldname>
17-
<outlinecolor red="159" blue="159" green="159"/>
18-
<outlinestyle>SolidLine</outlinestyle>
19-
<outlinewidth>2</outlinewidth>
20-
<fillcolor red="27" blue="212" green="54"/>
21-
<fillpattern>Dense4Pattern</fillpattern>
22-
<texturepath></texturepath>
23-
</symbol>
24-
<symbol>
25-
<lowervalue>Lake</lowervalue>
26-
<uppervalue></uppervalue>
27-
<label>Lake</label>
28-
<pointsymbol>hard:circle</pointsymbol>
29-
<pointsize>11</pointsize>
30-
<pointsizeunits>pixels</pointsizeunits>
31-
<rotationclassificationfieldname></rotationclassificationfieldname>
32-
<scaleclassificationfieldname></scaleclassificationfieldname>
33-
<symbolfieldname></symbolfieldname>
34-
<outlinecolor red="144" blue="144" green="144"/>
35-
<outlinestyle>SolidLine</outlinestyle>
36-
<outlinewidth>1</outlinewidth>
37-
<fillcolor red="110" blue="217" green="194"/>
38-
<fillpattern>SolidPattern</fillpattern>
39-
<texturepath></texturepath>
40-
</symbol>
41-
</uniquevalue>
42-
<customproperties/>
2+
<qgis version="2.18.0" simplifyAlgorithm="0" minimumScale="1" maximumScale="1e+08" simplifyDrawingHints="1" minLabelScale="1" maxLabelScale="1e+08" simplifyDrawingTol="1" simplifyMaxScale="1" hasScaleBasedVisibilityFlag="0" simplifyLocal="1" scaleBasedLabelVisibilityFlag="0">
3+
<edittypes>
4+
<edittype widgetv2type="TextEdit" name="Name">
5+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
6+
</edittype>
7+
<edittype widgetv2type="TextEdit" name="Value">
8+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
9+
</edittype>
10+
</edittypes>
11+
<renderer-v2 attr="Name" forceraster="0" symbollevels="0" type="categorizedSymbol" enableorderby="0">
12+
<categories>
13+
<category render="true" symbol="0" value="Dam" label="Dam"/>
14+
<category render="true" symbol="1" value="Lake" label="Lake"/>
15+
</categories>
16+
<symbols>
17+
<symbol alpha="1" clip_to_extent="1" type="fill" name="0">
18+
<layer pass="0" class="SimpleFill" locked="0">
19+
<prop k="border_width_map_unit_scale" v="0,0,0,0,0,0"/>
20+
<prop k="color" v="27,54,212,255"/>
21+
<prop k="joinstyle" v="bevel"/>
22+
<prop k="offset" v="0,0"/>
23+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
24+
<prop k="offset_unit" v="MM"/>
25+
<prop k="outline_color" v="159,159,159,255"/>
26+
<prop k="outline_style" v="solid"/>
27+
<prop k="outline_width" v="2"/>
28+
<prop k="outline_width_unit" v="MM"/>
29+
<prop k="style" v="dense4"/>
30+
</layer>
31+
</symbol>
32+
<symbol alpha="1" clip_to_extent="1" type="fill" name="1">
33+
<layer pass="0" class="SimpleFill" locked="0">
34+
<prop k="border_width_map_unit_scale" v="0,0,0,0,0,0"/>
35+
<prop k="color" v="110,194,217,255"/>
36+
<prop k="joinstyle" v="bevel"/>
37+
<prop k="offset" v="0,0"/>
38+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
39+
<prop k="offset_unit" v="MM"/>
40+
<prop k="outline_color" v="144,144,144,255"/>
41+
<prop k="outline_style" v="solid"/>
42+
<prop k="outline_width" v="1"/>
43+
<prop k="outline_width_unit" v="MM"/>
44+
<prop k="style" v="solid"/>
45+
</layer>
46+
</symbol>
47+
</symbols>
48+
<rotation/>
49+
<sizescale scalemethod="diameter"/>
50+
</renderer-v2>
51+
<labeling type="simple"/>
52+
<customproperties>
53+
<property key="embeddedWidgets/count" value="0"/>
54+
<property key="variableNames"/>
55+
<property key="variableValues"/>
56+
</customproperties>
57+
<blendMode>0</blendMode>
58+
<featureBlendMode>0</featureBlendMode>
59+
<layerTransparency>0</layerTransparency>
4360
<displayfield>Name</displayfield>
4461
<label>0</label>
4562
<labelattributes>
@@ -62,12 +79,76 @@
6279
<multilineenabled fieldname="" on=""/>
6380
<selectedonly on=""/>
6481
</labelattributes>
65-
<edittypes>
66-
<edittype type="0" name="Name"/>
67-
<edittype type="0" name="Value"/>
68-
</edittypes>
69-
<editform></editform>
70-
<editforminit></editforminit>
82+
<SingleCategoryDiagramRenderer diagramType="Histogram" sizeLegend="0" attributeLegend="1">
83+
<DiagramCategory penColor="#000000" labelPlacementMethod="XHeight" penWidth="0" diagramOrientation="Up" sizeScale="0,0,0,0,0,0" minimumSize="0" barWidth="5" penAlpha="255" maxScaleDenominator="1e+08" backgroundColor="#ffffff" transparency="0" width="15" scaleDependency="Area" backgroundAlpha="255" angleOffset="1440" scaleBasedVisibility="0" enabled="0" height="15" lineSizeScale="0,0,0,0,0,0" sizeType="MM" lineSizeType="MM" minScaleDenominator="1">
84+
<fontProperties description="Noto Sans,10,-1,5,50,0,0,0,0,0" style=""/>
85+
</DiagramCategory>
86+
<symbol alpha="1" clip_to_extent="1" type="marker" name="sizeSymbol">
87+
<layer pass="0" class="SimpleMarker" locked="0">
88+
<prop k="angle" v="0"/>
89+
<prop k="color" v="255,0,0,255"/>
90+
<prop k="horizontal_anchor_point" v="1"/>
91+
<prop k="joinstyle" v="bevel"/>
92+
<prop k="name" v="circle"/>
93+
<prop k="offset" v="0,0"/>
94+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
95+
<prop k="offset_unit" v="MM"/>
96+
<prop k="outline_color" v="0,0,0,255"/>
97+
<prop k="outline_style" v="solid"/>
98+
<prop k="outline_width" v="0"/>
99+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
100+
<prop k="outline_width_unit" v="MM"/>
101+
<prop k="scale_method" v="diameter"/>
102+
<prop k="size" v="2"/>
103+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
104+
<prop k="size_unit" v="MM"/>
105+
<prop k="vertical_anchor_point" v="1"/>
106+
</layer>
107+
</symbol>
108+
</SingleCategoryDiagramRenderer>
109+
<DiagramLayerSettings yPosColumn="-1" showColumn="-1" linePlacementFlags="10" placement="0" dist="0" xPosColumn="-1" priority="0" obstacle="0" zIndex="0" showAll="1"/>
71110
<annotationform></annotationform>
72-
<attributeactions/>
111+
<aliases>
112+
<alias field="Name" index="0" name=""/>
113+
<alias field="Value" index="1" name=""/>
114+
</aliases>
115+
<excludeAttributesWMS/>
116+
<excludeAttributesWFS/>
117+
<attributeactions default="-1"/>
118+
<attributetableconfig actionWidgetStyle="dropDown" sortExpression="" sortOrder="0">
119+
<columns>
120+
<column width="-1" hidden="0" type="field" name="Name"/>
121+
<column width="-1" hidden="0" type="field" name="Value"/>
122+
<column width="-1" hidden="1" type="actions"/>
123+
</columns>
124+
</attributetableconfig>
125+
<editform></editform>
126+
<editforminit/>
127+
<editforminitcodesource>0</editforminitcodesource>
128+
<editforminitfilepath></editforminitfilepath>
129+
<editforminitcode><![CDATA[# -*- coding: utf-8 -*-
130+
"""
131+
QGIS forms can have a Python function that is called when the form is
132+
opened.
133+
134+
Use this function to add extra logic to your forms.
135+
136+
Enter the name of the function in the "Python Init function"
137+
field.
138+
An example follows:
139+
"""
140+
from qgis.PyQt.QtWidgets import QWidget
141+
142+
def my_form_open(dialog, layer, feature):
143+
geom = feature.geometry()
144+
control = dialog.findChild(QWidget, "MyLineEdit")
145+
]]></editforminitcode>
146+
<featformsuppress>0</featformsuppress>
147+
<editorlayout>generatedlayout</editorlayout>
148+
<widgets/>
149+
<conditionalstyles>
150+
<rowstyles/>
151+
<fieldstyles/>
152+
</conditionalstyles>
153+
<layerGeometryType>2</layerGeometryType>
73154
</qgis>

‎tests/testdata/polys_continuous_symbol.qml

Lines changed: 0 additions & 80 deletions
This file was deleted.

‎tests/testdata/polys_graduated_symbol.qml

Lines changed: 0 additions & 90 deletions
This file was deleted.
Lines changed: 133 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,136 @@
11
<!DOCTYPE qgis PUBLIC 'http://mrcc.com/qgis.dtd' 'SYSTEM'>
2-
<qgis version="0.9.2-Ganymede" minimumScale="1" maximumScale="1e+08" hasScaleBasedVisibilityFlag="0" geometry="Polygon" type="vector" >
3-
<id>polys20080110101725465</id>
4-
<datasource>/Users/tim/dev/cpp/qgis/tests/testdata/polys.shp</datasource>
5-
<layername>polys</layername>
6-
<srs>
7-
<spatialrefsys>
8-
<proj4>+proj=longlat +ellps=WGS84 +no_defs</proj4>
9-
<srsid>1449</srsid>
10-
<srid>4031</srid>
11-
<epsg>4031</epsg>
12-
<description>Unknown datum based upon the GEM 10C ellipsoid</description>
13-
<projectionacronym>longlat</projectionacronym>
14-
<ellipsoidacronym>WGS84</ellipsoidacronym>
15-
<geographicflag>false</geographicflag>
16-
</spatialrefsys>
17-
</srs>
18-
<transparencyLevelInt>255</transparencyLevelInt>
19-
<provider>ogr</provider>
20-
<encoding>System</encoding>
21-
<displayfield>Name</displayfield>
22-
<label>0</label>
23-
<attributeactions/>
24-
<singlesymbol>
25-
<symbol>
26-
<lowervalue></lowervalue>
27-
<uppervalue></uppervalue>
28-
<label></label>
29-
<pointsymbol>hard:circle</pointsymbol>
30-
<pointsize>11</pointsize>
31-
<rotationclassificationfield>-1</rotationclassificationfield>
32-
<scaleclassificationfield>-1</scaleclassificationfield>
33-
<outlinecolor red="11" blue="195" green="124" />
34-
<outlinestyle>DashLine</outlinestyle>
35-
<outlinewidth>0.8</outlinewidth>
36-
<fillcolor red="104" blue="222" green="152" />
37-
<fillpattern>Dense5Pattern</fillpattern>
38-
<texturepath></texturepath>
2+
<qgis version="2.18.0" simplifyAlgorithm="0" minimumScale="1" maximumScale="1e+08" simplifyDrawingHints="1" minLabelScale="1" maxLabelScale="1e+08" simplifyDrawingTol="1" simplifyMaxScale="1" hasScaleBasedVisibilityFlag="0" simplifyLocal="1" scaleBasedLabelVisibilityFlag="0">
3+
<edittypes>
4+
<edittype widgetv2type="TextEdit" name="Name">
5+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
6+
</edittype>
7+
<edittype widgetv2type="TextEdit" name="Value">
8+
<widgetv2config IsMultiline="0" fieldEditable="1" constraint="" UseHtml="0" labelOnTop="0" constraintDescription="" notNull="0"/>
9+
</edittype>
10+
</edittypes>
11+
<renderer-v2 forceraster="0" symbollevels="0" type="singleSymbol" enableorderby="0">
12+
<symbols>
13+
<symbol alpha="1" clip_to_extent="1" type="fill" name="0">
14+
<layer pass="0" class="SimpleFill" locked="0">
15+
<prop k="border_width_map_unit_scale" v="0,0,0,0,0,0"/>
16+
<prop k="color" v="104,152,222,255"/>
17+
<prop k="joinstyle" v="bevel"/>
18+
<prop k="offset" v="0,0"/>
19+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
20+
<prop k="offset_unit" v="MM"/>
21+
<prop k="outline_color" v="11,124,195,255"/>
22+
<prop k="outline_style" v="dash"/>
23+
<prop k="outline_width" v="0.8"/>
24+
<prop k="outline_width_unit" v="MM"/>
25+
<prop k="style" v="dense5"/>
26+
</layer>
3927
</symbol>
40-
</singlesymbol>
41-
<labelattributes>
42-
<label field="" text="Label" />
43-
<family field="" name="Lucida Grande" />
44-
<size field="" units="pt" value="12" />
45-
<bold field="" on="0" />
46-
<italic field="" on="0" />
47-
<underline field="" on="0" />
48-
<color field="" red="0" blue="0" green="0" />
49-
<x field="" />
50-
<y field="" />
51-
<offset x="0" y="0" yfield="-1" xfield="-1" units="pt" />
52-
<angle field="" value="0" />
53-
<alignment field="-1" value="center" />
54-
<buffercolor field="" red="255" blue="255" green="255" />
55-
<buffersize field="" units="pt" value="1" />
56-
<bufferenabled field="" on="" />
57-
</labelattributes>
28+
</symbols>
29+
<rotation/>
30+
<sizescale scalemethod="diameter"/>
31+
</renderer-v2>
32+
<labeling type="simple"/>
33+
<customproperties>
34+
<property key="embeddedWidgets/count" value="0"/>
35+
<property key="variableNames"/>
36+
<property key="variableValues"/>
37+
</customproperties>
38+
<blendMode>0</blendMode>
39+
<featureBlendMode>0</featureBlendMode>
40+
<layerTransparency>0</layerTransparency>
41+
<displayfield>Name</displayfield>
42+
<label>0</label>
43+
<labelattributes>
44+
<label fieldname="" text="Label"/>
45+
<family fieldname="" name="Lucida Grande"/>
46+
<size fieldname="" units="pt" value="12"/>
47+
<bold fieldname="" on="0"/>
48+
<italic fieldname="" on="0"/>
49+
<underline fieldname="" on="0"/>
50+
<strikeout fieldname="" on="0"/>
51+
<color fieldname="" red="0" blue="0" green="0"/>
52+
<x fieldname=""/>
53+
<y fieldname=""/>
54+
<offset x="0" y="0" units="pt" yfieldname="" xfieldname=""/>
55+
<angle fieldname="" value="0" auto="0"/>
56+
<alignment fieldname="" value="center"/>
57+
<buffercolor fieldname="" red="255" blue="255" green="255"/>
58+
<buffersize fieldname="" units="pt" value="1"/>
59+
<bufferenabled fieldname="" on=""/>
60+
<multilineenabled fieldname="" on=""/>
61+
<selectedonly on=""/>
62+
</labelattributes>
63+
<SingleCategoryDiagramRenderer diagramType="Histogram" sizeLegend="0" attributeLegend="1">
64+
<DiagramCategory penColor="#000000" labelPlacementMethod="XHeight" penWidth="0" diagramOrientation="Up" sizeScale="0,0,0,0,0,0" minimumSize="0" barWidth="5" penAlpha="255" maxScaleDenominator="1e+08" backgroundColor="#ffffff" transparency="0" width="15" scaleDependency="Area" backgroundAlpha="255" angleOffset="1440" scaleBasedVisibility="0" enabled="0" height="15" lineSizeScale="0,0,0,0,0,0" sizeType="MM" lineSizeType="MM" minScaleDenominator="1">
65+
<fontProperties description="Noto Sans,10,-1,5,50,0,0,0,0,0" style=""/>
66+
<attribute field="" color="#000000" label=""/>
67+
</DiagramCategory>
68+
<symbol alpha="1" clip_to_extent="1" type="marker" name="sizeSymbol">
69+
<layer pass="0" class="SimpleMarker" locked="0">
70+
<prop k="angle" v="0"/>
71+
<prop k="color" v="255,0,0,255"/>
72+
<prop k="horizontal_anchor_point" v="1"/>
73+
<prop k="joinstyle" v="bevel"/>
74+
<prop k="name" v="circle"/>
75+
<prop k="offset" v="0,0"/>
76+
<prop k="offset_map_unit_scale" v="0,0,0,0,0,0"/>
77+
<prop k="offset_unit" v="MM"/>
78+
<prop k="outline_color" v="0,0,0,255"/>
79+
<prop k="outline_style" v="solid"/>
80+
<prop k="outline_width" v="0"/>
81+
<prop k="outline_width_map_unit_scale" v="0,0,0,0,0,0"/>
82+
<prop k="outline_width_unit" v="MM"/>
83+
<prop k="scale_method" v="diameter"/>
84+
<prop k="size" v="2"/>
85+
<prop k="size_map_unit_scale" v="0,0,0,0,0,0"/>
86+
<prop k="size_unit" v="MM"/>
87+
<prop k="vertical_anchor_point" v="1"/>
88+
</layer>
89+
</symbol>
90+
</SingleCategoryDiagramRenderer>
91+
<DiagramLayerSettings yPosColumn="-1" showColumn="-1" linePlacementFlags="10" placement="0" dist="0" xPosColumn="-1" priority="0" obstacle="0" zIndex="0" showAll="1"/>
92+
<annotationform></annotationform>
93+
<aliases>
94+
<alias field="Name" index="0" name=""/>
95+
<alias field="Value" index="1" name=""/>
96+
</aliases>
97+
<excludeAttributesWMS/>
98+
<excludeAttributesWFS/>
99+
<attributeactions default="-1"/>
100+
<attributetableconfig actionWidgetStyle="dropDown" sortExpression="" sortOrder="0">
101+
<columns>
102+
<column width="-1" hidden="0" type="field" name="Name"/>
103+
<column width="-1" hidden="0" type="field" name="Value"/>
104+
<column width="-1" hidden="1" type="actions"/>
105+
</columns>
106+
</attributetableconfig>
107+
<editform></editform>
108+
<editforminit/>
109+
<editforminitcodesource>0</editforminitcodesource>
110+
<editforminitfilepath></editforminitfilepath>
111+
<editforminitcode><![CDATA[# -*- coding: utf-8 -*-
112+
"""
113+
QGIS forms can have a Python function that is called when the form is
114+
opened.
115+
116+
Use this function to add extra logic to your forms.
117+
118+
Enter the name of the function in the "Python Init function"
119+
field.
120+
An example follows:
121+
"""
122+
from qgis.PyQt.QtWidgets import QWidget
123+
124+
def my_form_open(dialog, layer, feature):
125+
geom = feature.geometry()
126+
control = dialog.findChild(QWidget, "MyLineEdit")
127+
]]></editforminitcode>
128+
<featformsuppress>0</featformsuppress>
129+
<editorlayout>generatedlayout</editorlayout>
130+
<widgets/>
131+
<conditionalstyles>
132+
<rowstyles/>
133+
<fieldstyles/>
134+
</conditionalstyles>
135+
<layerGeometryType>2</layerGeometryType>
58136
</qgis>

‎tests/testdata/polys_uniquevalue_symbol.qml

Lines changed: 0 additions & 73 deletions
This file was deleted.

0 commit comments

Comments
 (0)
Please sign in to comment.