Skip to content

Commit

Permalink
New Easter eggs which might actually be useful... (#7714)
Browse files Browse the repository at this point in the history
Three new easter eggs:

world : Add a world map to your canvas - it is the same world map as used by the CRS chooser

contributors : Adds the contributors json (used to be in docs, now moved to resources/data)to the map canvas so you can quickly see the locations of QGIS developers in QGIS

hackfests : Adds qgis_hackfests.json (in resources/data) to the canvas so you can quickly see the locations of all historical QGIS hackfests. Note the attribute table has other interesting data too.
  • Loading branch information
timlinux committed Aug 27, 2018
1 parent 0ad341a commit 9710c18
Show file tree
Hide file tree
Showing 6 changed files with 799 additions and 1 deletion.
File renamed without changes.
345 changes: 345 additions & 0 deletions resources/data/contributors.qml
@@ -0,0 +1,345 @@
<!DOCTYPE qgis PUBLIC 'http://mrcc.com/qgis.dtd' 'SYSTEM'>
<qgis minScale="1e+8" readOnly="0" version="3.3.0-Master" simplifyDrawingTol="1" simplifyDrawingHints="0" simplifyLocal="1" simplifyMaxScale="1" maxScale="0" labelsEnabled="0" hasScaleBasedVisibilityFlag="0" simplifyAlgorithm="0">
<renderer-v2 type="singleSymbol" forceraster="0" symbollevels="0" enableorderby="0">
<symbols>
<symbol clip_to_extent="1" name="0" type="marker" alpha="1">
<layer pass="0" locked="0" class="SimpleMarker" enabled="1">
<prop v="0" k="angle"/>
<prop v="55,126,184,255" k="color"/>
<prop v="1" k="horizontal_anchor_point"/>
<prop v="bevel" k="joinstyle"/>
<prop v="circle" k="name"/>
<prop v="0,0" k="offset"/>
<prop v="3x:0,0,0,0,0,0" k="offset_map_unit_scale"/>
<prop v="MM" k="offset_unit"/>
<prop v="35,35,35,255" k="outline_color"/>
<prop v="no" k="outline_style"/>
<prop v="0" k="outline_width"/>
<prop v="3x:0,0,0,0,0,0" k="outline_width_map_unit_scale"/>
<prop v="MM" k="outline_width_unit"/>
<prop v="diameter" k="scale_method"/>
<prop v="10" k="size"/>
<prop v="3x:0,0,0,0,0,0" k="size_map_unit_scale"/>
<prop v="MM" k="size_unit"/>
<prop v="1" k="vertical_anchor_point"/>
<data_defined_properties>
<Option type="Map">
<Option name="name" type="QString" value=""/>
<Option name="properties" type="Map">
<Option name="size" type="Map">
<Option name="active" type="bool" value="false"/>
<Option name="type" type="int" value="1"/>
<Option name="val" type="QString" value=""/>
</Option>
</Option>
<Option name="type" type="QString" value="collection"/>
</Option>
</data_defined_properties>
</layer>
<layer pass="0" locked="0" class="SimpleMarker" enabled="1">
<prop v="0" k="angle"/>
<prop v="255,149,0,255" k="color"/>
<prop v="1" k="horizontal_anchor_point"/>
<prop v="bevel" k="joinstyle"/>
<prop v="circle" k="name"/>
<prop v="0,0" k="offset"/>
<prop v="3x:0,0,0,0,0,0" k="offset_map_unit_scale"/>
<prop v="MM" k="offset_unit"/>
<prop v="35,35,35,255" k="outline_color"/>
<prop v="no" k="outline_style"/>
<prop v="0" k="outline_width"/>
<prop v="3x:0,0,0,0,0,0" k="outline_width_map_unit_scale"/>
<prop v="MM" k="outline_width_unit"/>
<prop v="diameter" k="scale_method"/>
<prop v="8" k="size"/>
<prop v="3x:0,0,0,0,0,0" k="size_map_unit_scale"/>
<prop v="MM" k="size_unit"/>
<prop v="1" k="vertical_anchor_point"/>
<data_defined_properties>
<Option type="Map">
<Option name="name" type="QString" value=""/>
<Option name="properties" type="Map">
<Option name="fillColor" type="Map">
<Option name="active" type="bool" value="true"/>
<Option name="expression" type="QString" value="ramp_color('Viridis', 60 / second(now()))"/>
<Option name="type" type="int" value="3"/>
</Option>
<Option name="size" type="Map">
<Option name="active" type="bool" value="false"/>
<Option name="type" type="int" value="1"/>
<Option name="val" type="QString" value=""/>
</Option>
</Option>
<Option name="type" type="QString" value="collection"/>
</Option>
</data_defined_properties>
</layer>
<layer pass="0" locked="0" class="SimpleMarker" enabled="1">
<prop v="0" k="angle"/>
<prop v="255,0,0,255" k="color"/>
<prop v="1" k="horizontal_anchor_point"/>
<prop v="bevel" k="joinstyle"/>
<prop v="cross" k="name"/>
<prop v="0,0" k="offset"/>
<prop v="3x:0,0,0,0,0,0" k="offset_map_unit_scale"/>
<prop v="MM" k="offset_unit"/>
<prop v="55,126,184,255" k="outline_color"/>
<prop v="solid" k="outline_style"/>
<prop v="2" k="outline_width"/>
<prop v="3x:0,0,0,0,0,0" k="outline_width_map_unit_scale"/>
<prop v="MM" k="outline_width_unit"/>
<prop v="diameter" k="scale_method"/>
<prop v="5" k="size"/>
<prop v="3x:0,0,0,0,0,0" k="size_map_unit_scale"/>
<prop v="MM" k="size_unit"/>
<prop v="1" k="vertical_anchor_point"/>
<data_defined_properties>
<Option type="Map">
<Option name="name" type="QString" value=""/>
<Option name="properties" type="Map">
<Option name="angle" type="Map">
<Option name="active" type="bool" value="true"/>
<Option name="expression" type="QString" value="second(now()) * 6"/>
<Option name="type" type="int" value="3"/>
</Option>
</Option>
<Option name="type" type="QString" value="collection"/>
</Option>
</data_defined_properties>
</layer>
</symbol>
</symbols>
<rotation/>
<sizescale/>
<effect type="effectStack" enabled="1">
<effect type="dropShadow">
<prop v="13" k="blend_mode"/>
<prop v="3" k="blur_level"/>
<prop v="124,124,124,255" k="color"/>
<prop v="2" k="draw_mode"/>
<prop v="1" k="enabled"/>
<prop v="135" k="offset_angle"/>
<prop v="2" k="offset_distance"/>
<prop v="MM" k="offset_unit"/>
<prop v="3x:0,0,0,0,0,0" k="offset_unit_scale"/>
<prop v="1" k="opacity"/>
</effect>
<effect type="outerGlow">
<prop v="0" k="blend_mode"/>
<prop v="3" k="blur_level"/>
<prop v="0,0,255,255" k="color1"/>
<prop v="0,255,0,255" k="color2"/>
<prop v="0" k="color_type"/>
<prop v="0" k="discrete"/>
<prop v="2" k="draw_mode"/>
<prop v="0" k="enabled"/>
<prop v="0.5" k="opacity"/>
<prop v="gradient" k="rampType"/>
<prop v="255,255,255,255" k="single_color"/>
<prop v="2" k="spread"/>
<prop v="MM" k="spread_unit"/>
<prop v="3x:0,0,0,0,0,0" k="spread_unit_scale"/>
</effect>
<effect type="drawSource">
<prop v="0" k="blend_mode"/>
<prop v="2" k="draw_mode"/>
<prop v="1" k="enabled"/>
<prop v="1" k="opacity"/>
</effect>
<effect type="innerShadow">
<prop v="13" k="blend_mode"/>
<prop v="10" k="blur_level"/>
<prop v="0,0,0,255" k="color"/>
<prop v="2" k="draw_mode"/>
<prop v="0" k="enabled"/>
<prop v="135" k="offset_angle"/>
<prop v="2" k="offset_distance"/>
<prop v="MM" k="offset_unit"/>
<prop v="3x:0,0,0,0,0,0" k="offset_unit_scale"/>
<prop v="1" k="opacity"/>
</effect>
<effect type="innerGlow">
<prop v="0" k="blend_mode"/>
<prop v="3" k="blur_level"/>
<prop v="0,0,255,255" k="color1"/>
<prop v="0,255,0,255" k="color2"/>
<prop v="0" k="color_type"/>
<prop v="0" k="discrete"/>
<prop v="2" k="draw_mode"/>
<prop v="0" k="enabled"/>
<prop v="0.5" k="opacity"/>
<prop v="gradient" k="rampType"/>
<prop v="255,255,255,255" k="single_color"/>
<prop v="2" k="spread"/>
<prop v="MM" k="spread_unit"/>
<prop v="3x:0,0,0,0,0,0" k="spread_unit_scale"/>
</effect>
</effect>
</renderer-v2>
<customproperties>
<property key="embeddedWidgets/count" value="0"/>
<property key="variableNames"/>
<property key="variableValues"/>
</customproperties>
<blendMode>0</blendMode>
<featureBlendMode>0</featureBlendMode>
<layerOpacity>1</layerOpacity>
<SingleCategoryDiagramRenderer diagramType="Histogram" attributeLegend="1">
<DiagramCategory rotationOffset="270" lineSizeType="MM" diagramOrientation="Up" penAlpha="255" sizeScale="3x:0,0,0,0,0,0" lineSizeScale="3x:0,0,0,0,0,0" scaleDependency="Area" maxScaleDenominator="1e+8" penWidth="0" width="15" backgroundAlpha="255" enabled="0" scaleBasedVisibility="0" sizeType="MM" minScaleDenominator="0" labelPlacementMethod="XHeight" barWidth="5" minimumSize="0" height="15" penColor="#000000" opacity="1" backgroundColor="#ffffff">
<fontProperties description=".SF NS Text,13,-1,5,50,0,0,0,0,0" style=""/>
<attribute color="#000000" label="" field=""/>
</DiagramCategory>
</SingleCategoryDiagramRenderer>
<DiagramLayerSettings zIndex="0" dist="0" showAll="1" linePlacementFlags="18" placement="0" obstacle="0" priority="0">
<properties>
<Option type="Map">
<Option name="name" type="QString" value=""/>
<Option name="properties"/>
<Option name="type" type="QString" value="collection"/>
</Option>
</properties>
</DiagramLayerSettings>
<fieldConfiguration>
<field name="Name">
<editWidget type="TextEdit">
<config>
<Option/>
</config>
</editWidget>
</field>
<field name="Committer">
<editWidget type="TextEdit">
<config>
<Option/>
</config>
</editWidget>
</field>
<field name="First Commit Message">
<editWidget type="TextEdit">
<config>
<Option/>
</config>
</editWidget>
</field>
<field name="First Commit Date">
<editWidget type="TextEdit">
<config>
<Option/>
</config>
</editWidget>
</field>
<field name="GIT Nickname">
<editWidget type="TextEdit">
<config>
<Option/>
</config>
</editWidget>
</field>
</fieldConfiguration>
<geometryOptions geometryPrecision="0" removeDuplicateNodes="0"/>
<aliases>
<alias name="" field="Name" index="0"/>
<alias name="" field="Committer" index="1"/>
<alias name="" field="First Commit Message" index="2"/>
<alias name="" field="First Commit Date" index="3"/>
<alias name="" field="GIT Nickname" index="4"/>
</aliases>
<excludeAttributesWMS/>
<excludeAttributesWFS/>
<defaults>
<default expression="" field="Name" applyOnUpdate="0"/>
<default expression="" field="Committer" applyOnUpdate="0"/>
<default expression="" field="First Commit Message" applyOnUpdate="0"/>
<default expression="" field="First Commit Date" applyOnUpdate="0"/>
<default expression="" field="GIT Nickname" applyOnUpdate="0"/>
</defaults>
<constraints>
<constraint notnull_strength="0" field="Name" unique_strength="0" constraints="0" exp_strength="0"/>
<constraint notnull_strength="0" field="Committer" unique_strength="0" constraints="0" exp_strength="0"/>
<constraint notnull_strength="0" field="First Commit Message" unique_strength="0" constraints="0" exp_strength="0"/>
<constraint notnull_strength="0" field="First Commit Date" unique_strength="0" constraints="0" exp_strength="0"/>
<constraint notnull_strength="0" field="GIT Nickname" unique_strength="0" constraints="0" exp_strength="0"/>
</constraints>
<constraintExpressions>
<constraint field="Name" desc="" exp=""/>
<constraint field="Committer" desc="" exp=""/>
<constraint field="First Commit Message" desc="" exp=""/>
<constraint field="First Commit Date" desc="" exp=""/>
<constraint field="GIT Nickname" desc="" exp=""/>
</constraintExpressions>
<attributeactions>
<defaultAction key="Canvas" value="{00000000-0000-0000-0000-000000000000}"/>
</attributeactions>
<attributetableconfig sortExpression="" sortOrder="0" actionWidgetStyle="dropDown">
<columns>
<column type="actions" width="-1" hidden="1"/>
<column name="Name" type="field" width="-1" hidden="0"/>
<column name="Committer" type="field" width="-1" hidden="0"/>
<column name="First Commit Message" type="field" width="-1" hidden="0"/>
<column name="First Commit Date" type="field" width="-1" hidden="0"/>
<column name="GIT Nickname" type="field" width="-1" hidden="0"/>
</columns>
</attributetableconfig>
<editform tolerant="1"></editform>
<editforminit/>
<editforminitcodesource>0</editforminitcodesource>
<editforminitfilepath></editforminitfilepath>
<editforminitcode><![CDATA[# -*- coding: utf-8 -*-
"""
QGIS forms can have a Python function that is called when the form is
opened.
Use this function to add extra logic to your forms.
Enter the name of the function in the "Python Init function"
field.
An example follows:
"""
from qgis.PyQt.QtWidgets import QWidget

def my_form_open(dialog, layer, feature):
geom = feature.geometry()
control = dialog.findChild(QWidget, "MyLineEdit")
]]></editforminitcode>
<featformsuppress>0</featformsuppress>
<editorlayout>generatedlayout</editorlayout>
<editable>
<field editable="1" name="Committer"/>
<field editable="1" name="First Commit Date"/>
<field editable="1" name="First Commit Message"/>
<field editable="1" name="GIT Nickname"/>
<field editable="1" name="Name"/>
<field editable="1" name="date_nice"/>
<field editable="1" name="day_int"/>
<field editable="1" name="hackfest_number"/>
<field editable="1" name="month"/>
<field editable="1" name="month_int"/>
<field editable="1" name="notes"/>
<field editable="1" name="place"/>
<field editable="1" name="year"/>
</editable>
<labelOnTop>
<field labelOnTop="0" name="Committer"/>
<field labelOnTop="0" name="First Commit Date"/>
<field labelOnTop="0" name="First Commit Message"/>
<field labelOnTop="0" name="GIT Nickname"/>
<field labelOnTop="0" name="Name"/>
<field labelOnTop="0" name="date_nice"/>
<field labelOnTop="0" name="day_int"/>
<field labelOnTop="0" name="hackfest_number"/>
<field labelOnTop="0" name="month"/>
<field labelOnTop="0" name="month_int"/>
<field labelOnTop="0" name="notes"/>
<field labelOnTop="0" name="place"/>
<field labelOnTop="0" name="year"/>
</labelOnTop>
<widgets/>
<conditionalstyles>
<rowstyles/>
<fieldstyles/>
</conditionalstyles>
<expressionfields/>
<previewExpression>year</previewExpression>
<mapTip></mapTip>
<layerGeometryType>0</layerGeometryType>
</qgis>

0 comments on commit 9710c18

Please sign in to comment.