Skip to content
Permalink
Browse files

Update labeling gui and add expression support as data defined value

- Add QgsDataDefined class
- Add QgsDataDefinedButton class
- Add data defined Python support
- Add standalone SVG selector dialog to QgsSvgSelectorWidget class

- Fix for #4607, show only pertinent fields when setting a data defined value
- Fix for #5048 and #5049, data defined settings are literally used
- Fix for #5726, number formatting does not work for expressions
- Fix for #7755, using bufferSize to enable/disable label buffer is confusing
- Fix for #7779, labels do not register in label collision engine; and for #4719, inactive options in labeling dialog
- Prepare label text's expression upfront when preparing layer; makes rendering much faster
- Change name of 'feature obstacles' to appropriate terminology
  • Loading branch information
dakcarto committed May 20, 2013
1 parent 7eacf42 commit 45f374f428364604722f756a60dd9b40e9db2b85
Showing with 11,852 additions and 6,062 deletions.
  1. +18 −0 images/images.qrc
  2. +28 −0 images/themes/default/mIconAutoPlacementSettings.svg
  3. +85 −0 images/themes/default/mIconDataDefine.svg
  4. +62 −0 images/themes/default/mIconDataDefineError.svg
  5. +83 −0 images/themes/default/mIconDataDefineExpression.svg
  6. +62 −0 images/themes/default/mIconDataDefineExpressionError.svg
  7. +83 −0 images/themes/default/mIconDataDefineExpressionOn.svg
  8. +85 −0 images/themes/default/mIconDataDefineOn.svg
  9. +27 −0 images/themes/default/mIconExpression.svg
  10. +30 −0 images/themes/default/mIconExpressionEditorOpen.svg
  11. +40 −0 images/themes/default/mIconLabelQuadrantCenter.svg
  12. +104 −0 images/themes/default/mIconLabelQuadrantOffset.svg
  13. +86 −0 images/themes/default/propertyicons/datadefined.svg
  14. +54 −0 images/themes/default/propertyicons/labelbackground.svg
  15. +80 −0 images/themes/default/propertyicons/labelbuffer.svg
  16. +32 −0 images/themes/default/propertyicons/labelformatting.svg
  17. +49 −0 images/themes/default/propertyicons/labelshadow.svg
  18. +30 −0 images/themes/default/propertyicons/labeltext.svg
  19. +116 −0 images/themes/default/propertyicons/render.svg
  20. +1 −0 python/core/core.sip
  21. +53 −0 python/core/qgsdatadefined.sip
  22. +8 −1 python/core/qgsmaprenderer.sip
  23. +257 −84 python/core/qgspallabeling.sip
  24. +1 −1 src/app/qgisapp.cpp
  25. +717 −463 src/app/qgslabelinggui.cpp
  26. +18 −12 src/app/qgslabelinggui.h
  27. +58 −40 src/app/qgslabelpropertydialog.cpp
  28. +1 −4 src/app/qgslabelpropertydialog.h
  29. +112 −173 src/app/qgsmaptoollabel.cpp
  30. +18 −3 src/app/qgsmaptoollabel.h
  31. +1 −1 src/app/qgsvectorlayerproperties.cpp
  32. +2 −0 src/core/CMakeLists.txt
  33. +117 −0 src/core/qgsdatadefined.cpp
  34. +88 −0 src/core/qgsdatadefined.h
  35. +2 −2 src/core/qgslabelsearchtree.cpp
  36. +1 −1 src/core/qgslabelsearchtree.h
  37. +10 −3 src/core/qgsmaprenderer.h
  38. +2,493 −583 src/core/qgspallabeling.cpp
  39. +305 −90 src/core/qgspallabeling.h
  40. +5 −0 src/core/symbology-ng/qgssvgcache.cpp
  41. +24 −14 src/core/symbology-ng/qgssymbollayerv2utils.cpp
  42. +3 −0 src/gui/CMakeLists.txt
  43. +637 −0 src/gui/qgsdatadefinedbutton.cpp
  44. +274 −0 src/gui/qgsdatadefinedbutton.h
  45. +82 −30 src/gui/symbology-ng/qgssvgselectorwidget.cpp
  46. +36 −3 src/gui/symbology-ng/qgssvgselectorwidget.h
  47. +5,336 −4,504 src/ui/qgslabelingguibase.ui
  48. +28 −50 src/ui/qgsvectorlayerpropertiesbase.ui
  49. +10 −0 src/ui/symbollayer/widget_svgselector.ui
@@ -296,24 +296,35 @@
<file>themes/default/mActionZoomOut.png</file>
<file>themes/default/mActionZoomToLayer.png</file>
<file>themes/default/mActionZoomToSelected.png</file>
<file>themes/default/mIconAutoPlacementSettings.svg</file>
<file>themes/default/mIconClear.svg</file>
<file>themes/default/mIconClose.png</file>
<file>themes/default/mIconCollapse.png</file>
<file>themes/default/mIconConnect.png</file>
<file>themes/default/mIconCritical.png</file>
<file>themes/default/mIconDataDefine.svg</file>
<file>themes/default/mIconDataDefineError.svg</file>
<file>themes/default/mIconDataDefineOn.svg</file>
<file>themes/default/mIconDataDefineExpression.svg</file>
<file>themes/default/mIconDataDefineExpressionError.svg</file>
<file>themes/default/mIconDataDefineExpressionOn.svg</file>
<file>themes/default/mIconDbSchema.png</file>
<file>themes/default/mIconDelete.png</file>
<file>themes/default/mIconDeselected.svg</file>
<file>themes/default/mIconEditable.png</file>
<file>themes/default/mIconEditableEdits.png</file>
<file>themes/default/mIconExpand.png</file>
<file>themes/default/mIconExpression.svg</file>
<file>themes/default/mIconExpressionEditorOpen.svg</file>
<file>themes/default/mIconExpressionFilter.svg</file>
<file>themes/default/mIconExpressionPreview.svg</file>
<file>themes/default/mIconExpressionSelect.svg</file>
<file>themes/default/mIconFavourites.png</file>
<file>themes/default/mIconFirst.png</file>
<file>themes/default/mIconGeometryLayer.png</file>
<file>themes/default/mIconInfo.png</file>
<file>themes/default/mIconLabelQuadrantCenter.svg</file>
<file>themes/default/mIconLabelQuadrantOffset.svg</file>
<file>themes/default/mIconLast.png</file>
<file>themes/default/mIconLayer.png</file>
<file>themes/default/mIconLineLayer.png</file>
@@ -377,15 +388,21 @@
<file>themes/default/propertyicons/attributes.png</file>
<file>themes/default/propertyicons/colormap.png</file>
<file>themes/default/propertyicons/CRS.png</file>
<file>themes/default/propertyicons/datadefined.svg</file>
<file>themes/default/propertyicons/diagram.png</file>
<file>themes/default/propertyicons/digitising.png</file>
<file>themes/default/propertyicons/display.svg</file>
<file>themes/default/propertyicons/gdal.png</file>
<file>themes/default/propertyicons/general.png</file>
<file>themes/default/propertyicons/histogram.png</file>
<file>themes/default/propertyicons/join.png</file>
<file>themes/default/propertyicons/labelbackground.svg</file>
<file>themes/default/propertyicons/labelbuffer.svg</file>
<file>themes/default/propertyicons/labelformatting.svg</file>
<file>themes/default/propertyicons/labels.png</file>
<file>themes/default/propertyicons/labels.svg</file>
<file>themes/default/propertyicons/labelshadow.svg</file>
<file>themes/default/propertyicons/labeltext.svg</file>
<file>themes/default/propertyicons/locale.png</file>
<file>themes/default/propertyicons/map_tools.png</file>
<file>themes/default/propertyicons/metadata.png</file>
@@ -394,6 +411,7 @@
<file>themes/default/propertyicons/overlay.png</file>
<file>themes/default/propertyicons/pyramids.png</file>
<file>themes/default/propertyicons/rendering.png</file>
<file>themes/default/propertyicons/render.svg</file>
<file>themes/default/propertyicons/symbology.png</file>
<file>themes/default/propertyicons/transparency.png</file>
<file>themes/default/qgis.xpm</file>
@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 15.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0"
id="autoplacement" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" inkscape:version="0.48.2 r9819" sodipodi:docname="mActionRotateLabel.svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" inkscape:export-filename="/mnt/home1/robert/svn/graphics/trunk/toolbar-icons/24x24/label-rotate.png" xmlns:svg="http://www.w3.org/2000/svg" inkscape:export-ydpi="90" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" inkscape:export-xdpi="90"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="24px" height="18px"
viewBox="4 7 24 18" enable-background="new 4 7 24 18" xml:space="preserve">
<g id="svg5692">
<g id="g6905" transform="translate(-18,-16)">

<path id="path2844" inkscape:export-filename="E:\Program Files\QGIS-Dev\themes\gis-0.1.1\path2844.png" inkscape:export-ydpi="90" inkscape:export-xdpi="90" sodipodi:nodetypes="cccccccc" fill="#82A0B4" stroke="#3C5A6E" stroke-linejoin="round" d="
M30.61,39.576l3.495-3.5h-2.331v-2.334h-2.331v2.334H27.11L30.61,39.576z"/>
<path id="path2846" sodipodi:nodetypes="cccccccc" fill="#82A0B4" stroke="#3C5A6E" stroke-linejoin="round" d="M22.652,31.623
l3.5,3.497v-2.332h2.333v-2.331h-2.333v-2.334L22.652,31.623z"/>
<path id="path2848" sodipodi:nodetypes="cccccccc" fill="#82A0B4" stroke="#3C5A6E" stroke-linejoin="round" d="M30.61,23.664
l3.495,3.5h-2.331v2.333h-2.331v-2.333H27.11L30.61,23.664z"/>
<path id="path2850" sodipodi:nodetypes="cccccccc" fill="#82A0B4" stroke="#3C5A6E" stroke-linejoin="round" d="M38.563,31.623
l-3.502,3.497v-2.332h-2.333v-2.331h2.333v-2.334L38.563,31.623z"/>
</g>
</g>
<path id="path7183" fill="#FCE94F" stroke="#C4A000" stroke-linecap="round" stroke-linejoin="round" d="M23.949,14.637v3.083
c-0.163,0.059-0.325,0.125-0.48,0.198l-2.176-2.177l-2.572,2.573l2.177,2.176c-0.073,0.154-0.14,0.317-0.198,0.48h-3.08v3.617h3.08
c0.058,0.161,0.125,0.326,0.198,0.48l-2.177,2.176l2.572,2.571l2.176-2.176c0.155,0.073,0.317,0.14,0.48,0.198v3.08h3.617v-3.08
c0.163-0.059,0.325-0.125,0.48-0.198l2.176,2.176l2.571-2.571l-2.176-2.176c0.072-0.154,0.141-0.319,0.198-0.48h3.08V20.97h-3.08
c-0.059-0.163-0.125-0.325-0.198-0.48l2.176-2.176l-2.571-2.573l-2.176,2.177c-0.153-0.073-0.319-0.141-0.48-0.198v-3.083H23.949z
M25.758,20.603c1.2,0,2.176,0.975,2.176,2.176c0,1.2-0.976,2.176-2.176,2.176c-1.201,0-2.176-0.976-2.176-2.176
C23.582,21.577,24.557,20.603,25.758,20.603z"/>
</svg>
@@ -0,0 +1,85 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 15.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0"
id="svg5692" inkscape:export-xdpi="90" inkscape:export-ydpi="90" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:svg="http://www.w3.org/2000/svg" inkscape:export-filename="/media/home1/robert/svn/graphics/trunk/toolbar-icons/32x32/table-field-create.png" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:dc="http://purl.org/dc/elements/1.1/" sodipodi:docname="table-field-add.svg" inkscape:version="0.47 r22583"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="24px" height="24px"
viewBox="4 4 24 24" enable-background="new 4 4 24 24" xml:space="preserve">
<path fill="#939598" stroke="#58595B" stroke-width="1.5" d="M9.664,19.892c0,0.836-0.284,1.193-0.631,0.792l-3.771-4.351
c-0.348-0.401-0.348-1.058,0-1.459l3.771-4.359c0.347-0.402,0.631-0.045,0.631,0.792V19.892z"/>
<path id="path7926_2_" fill="#FFFFFF" d="M9.341,8.199v15.156h12.514V8.199H9.341L9.341,8.199z"/>
<path id="rect8772_1_" sodipodi:nodetypes="ccccccccc" display="none" fill="#EDB2B2" stroke="#C40000" stroke-linecap="round" stroke-linejoin="round" d="
M9.341,8.199v9.471v2.525v3.159h12.514v-3.159V17.67V8.199H9.341z"/>
<path id="rect8772" sodipodi:nodetypes="ccccccccc" display="none" fill="#FBF091" stroke="#C4A000" stroke-linecap="round" stroke-linejoin="round" d="
M9.341,8.199v9.471v2.525v3.159h12.514v-3.159V17.67V8.199H9.341z"/>
<g display="none">

<rect id="rect8700_1_" x="9.343" y="8.219" display="inline" fill="none" stroke="#C40000" stroke-linecap="round" stroke-linejoin="round" width="12.51" height="7.559"/>

<rect id="rect8700_2_" x="9.343" y="8.219" display="inline" fill="none" stroke="#C4A000" stroke-linecap="round" stroke-linejoin="round" width="12.51" height="7.559"/>
<g display="inline">

<path id="path8729" sodipodi:nodetypes="cc" fill="none" stroke="#58595B" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="
M12.325,11.955H18.9"/>
<path id="path8742" sodipodi:nodetypes="cc" fill="none" stroke="#58595B" stroke-linecap="round" stroke-linejoin="round" d="
M12.494,19.404h6.577"/>
</g>
</g>
<g display="none">
<path id="path7926_1_" display="inline" fill="none" stroke="#878984" stroke-linecap="round" stroke-linejoin="round" d="
M9.341,8.199v15.156h12.514V8.199H9.341L9.341,8.199z"/>
<path id="path3002_1_" display="inline" fill="#58595B" d="M13.948,15.357c-1.573-0.56-2.361-1.408-2.361-2.542
c0-0.896,0.416-1.611,1.246-2.147c0.839-0.535,1.878-0.803,3.116-0.803c1.125,0,2.016,0.188,2.68,0.563
c0.664,0.369,0.996,0.812,0.996,1.332c0,0.271-0.104,0.511-0.312,0.72c-0.207,0.2-0.447,0.3-0.719,0.3
c-0.447,0-0.816-0.312-1.104-0.936c-0.397-0.863-0.995-1.295-1.792-1.295c-0.63,0-1.151,0.208-1.559,0.623
c-0.408,0.416-0.612,0.996-0.612,1.74c0,1.462,0.757,2.195,2.268,2.195c0.159,0,0.342-0.016,0.549-0.048
c0.359-0.047,0.637-0.071,0.837-0.071c0.485,0,0.729,0.14,0.729,0.419c0,0.312-0.248,0.467-0.742,0.467
c-0.175,0-0.438-0.028-0.789-0.084c-0.264-0.048-0.467-0.071-0.609-0.071c-1.6,0-2.398,0.812-2.398,2.44
c0,0.791,0.212,1.431,0.636,1.919c0.424,0.479,1.017,0.72,1.774,0.72c0.949,0,1.577-0.492,1.888-1.477
c0.16-0.519,0.336-0.879,0.527-1.079c0.201-0.199,0.465-0.3,0.793-0.3c0.271,0,0.514,0.101,0.73,0.3
c0.225,0.192,0.336,0.44,0.336,0.744c0,0.728-0.408,1.331-1.223,1.812c-0.816,0.471-1.802,0.707-2.958,0.707
c-1.27,0-2.401-0.304-3.391-0.911c-0.983-0.608-1.475-1.42-1.475-2.435C11.011,16.887,11.99,15.956,13.948,15.357"/>
<path id="path3778_1_" sodipodi:nodetypes="csss" display="inline" opacity="0.5" fill="#FFFFFF" enable-background="new " d="
M12.954,11.868c-1.483,1.602-1.146-0.264-0.257-0.906c0.921-0.666,1.438-0.649,1.431-0.446
C14.12,10.754,13.421,11.364,12.954,11.868z"/>
<path id="path3807_1_" sodipodi:nodetypes="csss" display="inline" opacity="0.5" fill="#FFFFFF" enable-background="new " d="
M12.456,17.028c-1.485,1.601-1.23,0.119-0.34-0.52c0.92-0.663,1.437-0.646,1.43-0.443C13.538,16.303,12.92,16.527,12.456,17.028z"
/>
<path id="path3809_1_" sodipodi:nodetypes="css" display="inline" opacity="0.5" fill="#FFFFFF" enable-background="new " d="
M18.973,18.817c-1.432,1.598-1.322,0.08-0.402-0.509C19.273,17.859,19.48,18.248,18.973,18.817z"/>
</g>
<g display="none">
<path id="path3002" display="inline" fill="#5C3566" d="M13.948,15.357c-1.573-0.56-2.361-1.408-2.361-2.542
c0-0.896,0.416-1.611,1.246-2.147c0.839-0.535,1.878-0.803,3.116-0.803c1.125,0,2.016,0.188,2.68,0.563
c0.664,0.369,0.996,0.812,0.996,1.332c0,0.271-0.104,0.511-0.312,0.72c-0.207,0.2-0.447,0.3-0.719,0.3
c-0.447,0-0.816-0.312-1.104-0.936c-0.397-0.863-0.995-1.295-1.792-1.295c-0.63,0-1.151,0.208-1.559,0.623
c-0.408,0.416-0.612,0.996-0.612,1.74c0,1.462,0.757,2.195,2.268,2.195c0.159,0,0.342-0.016,0.549-0.048
c0.359-0.047,0.637-0.071,0.837-0.071c0.485,0,0.729,0.14,0.729,0.419c0,0.312-0.248,0.467-0.742,0.467
c-0.175,0-0.438-0.028-0.789-0.084c-0.264-0.048-0.467-0.071-0.609-0.071c-1.6,0-2.398,0.812-2.398,2.44
c0,0.791,0.212,1.431,0.636,1.919c0.424,0.479,1.017,0.72,1.774,0.72c0.949,0,1.577-0.492,1.888-1.477
c0.16-0.519,0.336-0.879,0.527-1.079c0.201-0.199,0.465-0.3,0.793-0.3c0.271,0,0.514,0.101,0.73,0.3
c0.225,0.192,0.336,0.44,0.336,0.744c0,0.728-0.408,1.331-1.223,1.812c-0.816,0.471-1.802,0.707-2.958,0.707
c-1.27,0-2.401-0.304-3.391-0.911c-0.983-0.608-1.475-1.42-1.475-2.435C11.011,16.887,11.99,15.956,13.948,15.357"/>
<path id="path3778" sodipodi:nodetypes="csss" display="inline" opacity="0.5" fill="#FFFFFF" enable-background="new " d="
M12.954,11.868c-1.483,1.602-1.146-0.264-0.257-0.906c0.921-0.666,1.438-0.649,1.431-0.446
C14.12,10.754,13.421,11.364,12.954,11.868z"/>
<path id="path3807" sodipodi:nodetypes="csss" display="inline" opacity="0.5" fill="#FFFFFF" enable-background="new " d="
M12.456,17.028c-1.485,1.601-1.23,0.119-0.34-0.52c0.92-0.663,1.437-0.646,1.43-0.443C13.538,16.303,12.92,16.527,12.456,17.028z"
/>
<path id="path3809" sodipodi:nodetypes="css" display="inline" opacity="0.5" fill="#FFFFFF" enable-background="new " d="
M18.973,18.817c-1.432,1.598-1.322,0.08-0.402-0.509C19.273,17.859,19.48,18.248,18.973,18.817z"/>
</g>
<g>
<path id="path7926" fill="none" stroke="#878984" stroke-linecap="round" stroke-linejoin="round" d="M9.341,8.199v15.156h12.514
V8.199H9.341L9.341,8.199z"/>

<rect id="rect8700" x="9.342" y="8.22" fill="none" stroke="#878984" stroke-linecap="round" stroke-linejoin="round" width="12.511" height="7.559"/>
<g>

<path id="path8729_1_" sodipodi:nodetypes="cc" fill="none" stroke="#555753" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="
M12.325,11.955H18.9"/>
<path id="path8742_1_" sodipodi:nodetypes="cc" fill="none" stroke="#555753" stroke-linecap="round" stroke-linejoin="round" d="
M12.494,19.405h6.577"/>
</g>
</g>
</svg>
@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 15.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0"
id="svg5692" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" inkscape:export-ydpi="90" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" inkscape:export-xdpi="90" inkscape:export-filename="/media/home1/robert/svn/graphics/trunk/toolbar-icons/32x32/table-field-create.png" sodipodi:docname="table-field-add.svg" inkscape:version="0.47 r22583"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="24px" height="24px"
viewBox="4 4 24 24" enable-background="new 4 4 24 24" xml:space="preserve">
<path fill="#939598" stroke="#58595B" stroke-width="1.5" d="M9.664,19.892c0,0.836-0.284,1.193-0.631,0.792l-3.771-4.351
c-0.348-0.401-0.348-1.058,0-1.459l3.771-4.359c0.347-0.402,0.631-0.045,0.631,0.792V19.892z"/>
<path id="path7926_2_" fill="#FFFFFF" d="M9.341,8.199v15.156h12.514V8.199H9.341L9.341,8.199z"/>
<path id="rect8772_1_" sodipodi:nodetypes="ccccccccc" fill="#EDB2B2" stroke="#C40000" stroke-linecap="round" stroke-linejoin="round" d="
M9.341,8.199v9.471v2.525v3.159h12.514v-3.159V17.67V8.199H9.341z"/>
<path id="rect8772" sodipodi:nodetypes="ccccccccc" display="none" fill="#FCF192" stroke="#C4A000" stroke-linecap="round" stroke-linejoin="round" d="
M9.341,8.199v9.471v2.525v3.159h12.514v-3.159V17.67V8.199H9.341z"/>
<g>

<rect id="rect8700_1_" x="9.343" y="8.219" fill="none" stroke="#C40000" stroke-linecap="round" stroke-linejoin="round" width="12.51" height="7.559"/>

<rect id="rect8700_2_" x="9.343" y="8.219" display="none" fill="none" stroke="#C4A000" stroke-linecap="round" stroke-linejoin="round" width="12.51" height="7.559"/>
<g>

<path id="path8729" sodipodi:nodetypes="cc" fill="none" stroke="#58595B" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="
M12.325,11.955H18.9"/>
<path id="path8742" sodipodi:nodetypes="cc" fill="none" stroke="#58595B" stroke-linecap="round" stroke-linejoin="round" d="
M12.494,19.404h6.577"/>
</g>
</g>
<g id="g3841" transform="translate(-3.559082,-3.097165)" display="none">
<g display="inline">
<path id="path3002" fill="#5C3566" d="M17.507,18.455c-1.573-0.56-2.361-1.408-2.361-2.542c0-0.896,0.416-1.611,1.246-2.147
c0.839-0.535,1.878-0.803,3.116-0.803c1.125,0,2.016,0.188,2.68,0.563c0.664,0.369,0.996,0.812,0.996,1.332
c0,0.271-0.104,0.511-0.312,0.72c-0.207,0.2-0.447,0.3-0.719,0.3c-0.447,0-0.816-0.312-1.104-0.936
c-0.397-0.863-0.995-1.295-1.792-1.295c-0.63,0-1.151,0.208-1.559,0.623c-0.408,0.416-0.612,0.996-0.612,1.74
c0,1.462,0.757,2.195,2.268,2.195c0.159,0,0.342-0.016,0.549-0.048c0.359-0.047,0.637-0.071,0.837-0.071
c0.485,0,0.729,0.14,0.729,0.419c0,0.312-0.248,0.467-0.742,0.467c-0.175,0-0.438-0.028-0.789-0.084
c-0.264-0.048-0.467-0.071-0.609-0.071c-1.6,0-2.398,0.812-2.398,2.44c0,0.791,0.212,1.431,0.636,1.919
c0.424,0.479,1.017,0.72,1.774,0.72c0.949,0,1.577-0.492,1.888-1.477c0.16-0.519,0.336-0.879,0.527-1.079
c0.201-0.199,0.465-0.3,0.793-0.3c0.271,0,0.514,0.101,0.73,0.3c0.225,0.192,0.336,0.44,0.336,0.744
c0,0.728-0.408,1.331-1.223,1.812c-0.816,0.471-1.802,0.707-2.958,0.707c-1.27,0-2.401-0.304-3.391-0.911
c-0.983-0.608-1.475-1.42-1.475-2.435C14.57,19.984,15.549,19.053,17.507,18.455"/>
<path id="path3778" sodipodi:nodetypes="csss" opacity="0.5" fill="#FFFFFF" enable-background="new " d="M16.513,14.965
c-1.483,1.602-1.146-0.264-0.257-0.906c0.921-0.666,1.438-0.649,1.431-0.446C17.679,13.852,16.98,14.461,16.513,14.965z"/>
<path id="path3807" sodipodi:nodetypes="csss" opacity="0.5" fill="#FFFFFF" enable-background="new " d="M16.015,20.125
c-1.485,1.601-1.23,0.119-0.34-0.52c0.92-0.663,1.437-0.646,1.43-0.443C17.097,19.4,16.479,19.625,16.015,20.125z"/>
<path id="path3809" sodipodi:nodetypes="css" opacity="0.5" fill="#FFFFFF" enable-background="new " d="M22.532,21.915
c-1.432,1.598-1.322,0.08-0.402-0.509C22.833,20.957,23.04,21.345,22.532,21.915z"/>
</g>
</g>
<g display="none">
<path id="path7926" display="inline" fill="none" stroke="#888A85" stroke-linecap="round" stroke-linejoin="round" d="
M9.341,8.199v15.156h12.514V8.199H9.341L9.341,8.199z"/>

<rect id="rect8700" x="9.342" y="8.22" display="inline" fill="none" stroke="#888A85" stroke-linecap="round" stroke-linejoin="round" width="12.511" height="7.559"/>
<g display="inline">

<path id="path8729_1_" sodipodi:nodetypes="cc" fill="none" stroke="#555753" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="
M12.325,11.955H18.9"/>
<path id="path8742_1_" sodipodi:nodetypes="cc" fill="none" stroke="#555753" stroke-linecap="round" stroke-linejoin="round" d="
M12.494,19.405h6.577"/>
</g>
</g>
</svg>

0 comments on commit 45f374f

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