QGIS - Legend Refactoring

Crowdfunding Time Remaining

Crowdfunding Status: Completed

Update: The features were added in QGIS 2.6 and 2.8. For details see our blog posts.

The Legend Refactoring project will provide a new and improved legend in QGIS. The new legend will give finer control of how the legend displays symbols for vector layers and will allow the user to better manage how layer groups are used in the legend and print composer.

Computing

Project Specification

The replacement QGIS legend widget will be based on model/view architecture and will:

  • become a part of QGIS GUI library
  • be easily extensible
  • be easily embeddable

The new implementation should provide the same set of functionality as the existing implementation.

Second part of the project is the introduction of the following features:

  • toggling of symbol visibility in legend
  • management of named sets of layers and their usage in legend and print composer

Requirements

The new implementation of the legend refactoring will:

  • be based on Qt model/view architecture
  • completely replace the current implementation
  • be included in GUI library and available in PyQGIS
  • not be directly tied to map layer registry and map canvas
  • allow customisation without QgsLegendInterface (which will be still supported)
  • retain features from the current implementation

For the new features:

  • it will be possible to turn on/off visibility of a particular symbol for vector layers with categorized, graduated and rule-based renderer
  • API and GUI for management (addition and removal) of named sets of layers (unordered sets of layers) will be added
  • support for layer sets in legend will be added (only layers from selected set will be set as visible)
  • support for layer sets in composer will be added (only layers from selected set will be rendered)

Further information

If you have any technical question or would like to know more details of the development, please contact Martin, our lead developer.

Project Start Date* September 2014
Project Duration* 5 weeks
Crowdfunding Started April 2014
Crowdfunding Deadline August 2014 (4 months)
Crowdfunding Goal (ex. VAT) £11,000
Minimum donation (ex. VAT) £250

* Project start date and duration are indicative.

Support this Project

This project cannot go ahead without your support! We use crowdfunding to raise funds for projects like this one which benefit a wide community of users. The project will only go ahead if sufficient funding can be raised before the project crowdfunding deadline. Please see our main crowdfunding page for more information about our crowdfunding initiative and how it works.

Pledging funds is safe and easy. Simply use the form below to state how much you want to pledge - pledges only become binding if the funding target is reached before he deadline and funds only become payable after the project has been completed. Download a pledge form to get started.