Waiting for QGIS 2.2 – Composer Improvements (part 1)

In the spirit of depesz’s “Waiting for Postgresql 9.#” series (and BostonGIS’ follow up Waiting for PostGIS 2.#), here’s the first in a new series of “Waiting for QGIS 2.2″ posts…

As I mentioned in my last post, one of my major goals for QGIS 2.2 is to make the print composer behave more like a professional DTP package. A big part of this is making sure QGIS respects all the expected standard behaviour for graphic design programs. While the print composer made huge advances toward this goal in version 2.0, there’s still further we can go.

So, let’s start with a list of all the new usability features the print composer has already gained for QGIS 2.2:

  • Selections of multiple items can all be moved and resized together (previously only one item in the selection would be altered)
  • Mouse handles are always drawn on the top of the composition – in earlier versions mouse handles could be hidden by items sitting higher in the composition
  • Holding shift while resizing items locks their aspect ratio
  • Holding control while resizing items causes them to resize from their centre
  • Holding shift while moving items locks the movement to the horizontal or vertical
  • Holding control while moving items temporarily disables any grid or guide-based snapping
  • Items can be removed from a selection by shift-clicking them
  • Control-clicking an item causes the next item below it to be selected – this allows you to select items which are hidden behind other items
  • Holding shift while moving items using the cursor keys results in a large item movement
  • There’s a new “Edit” menu in the composer, with options like
    • Select All/Select None and Invert Selection
    • Select Next Item Above and Select Next Item Below
    • Lock Selected Items and Unlock All
The new composer "Edit" menu

The new composer “Edit” menu

Additionally, there’s a bunch of pull requests which haven’t yet been merged to master, but are ready to go, including:

  • Adding a dedicated “pan” tool for dragging around compositions
  • Compositions can be panned at any time by holding the space key or middle mouse button
  • Compositions can be zoomed by using the mouse wheel
Composer pan tool

Composer pan tool

Some of these are simple little changes which don’t sound like much, but it’s not until you’re forced to work without something like shift-resizing to lock the aspect ratio that you realise how often you use it and rely on it!

Tagged , , , ,

11 thoughts on “Waiting for QGIS 2.2 – Composer Improvements (part 1)

  1. Andreas Neumann says:

    Hi Nyall,

    This is all excellent news. I think it is good if the print composer behaves like a standard drawing app (like Inkscape).

    The guidelines also behave non-standard, I have to say. A very short discussion was started here: http://lists.osgeo.org/pipermail/qgis-developer/2013-March/025064.html – maybe something to rediscuss/revisit.

    It should also be possible to position guidelines exactly (with mm) and to select, reposition and remove them.

    Thanks a lot for your work!

    Andreas

  2. Andreas Neumann says:

    Answering to myself.

    Played around more with the guidelines: I get it now that existing guidelines can be moved by dragging them in the ruler. One can remove them by dragging them off the paper sheet.

    So I guess the only thing that it is really missing is the exact positioning of the guidelines, e.g. by right-clicking or double clicking an existing guideline.

    Andreas

    • Nyall Dawson says:

      I’ve been thinking about this too – I’m thinking it would be good to replace the current bar at the bottom of the composer with a proper status bar. This could show the exact position of the mouse cursor and other useful things such as the current size of a selection, current position of a ruler, etc

      This would get us part of the way there. The next part would be to have some kind of “edit guides” dialog, which would allow you to add guidelines by directly entering their position, and numerically adjust the position of existing guidelines too.

      What do you think?

  3. Andreas Neumann says:

    Yes – the status bar would help. And a dialogue to edit the guides as well. It could be in the “Composition” tab above or below the grid setup.

    It could be a list widget where one can see all guides in the composition and their positions. From there one could add, edit or delete guides.

    Alternatively, or in addition to this widget, an in place edit with double or right click on the guide could allow the same directly in the composer.

  4. Dany Laksono says:

    I’ve been using QGIS for quite some time, and I might be missing something, but IMHO, wouldn’t be great if legends in QGIS’s composer can be resized freely (i.e. through the mouse handles) without having to resize the fonts of each components one-by-one.

    Also, it would be nice to have an ‘explode’ function so that users will be able to arrange the items as they will. Just my opinion

  5. Ross says:

    Looking forward to the improvements! The jump from 1.8 to 2.0 was great but I am looking forward to more fine grained control over viewing the map layout. At the moment in 2.0.1-3 the zoom full and zoom-in/out buttons jump in rather large increments. Is there something planned where there is a layout zoom tool as in ArcGIS? The zoom full button also zooms to the exact size of the page. It would be nicer if there was a small buffer around the page so if the map goes to the page edge there is still some space. The pan tool will be nice too.

  6. […] grasser – A QGIS 2.2 preview  Nyalldawson.net - WAITING FOR QGIS 2.2 COMPOSER IMPROVEMENTS (PART 1) Nyalldawson.net - WAITING FOR QGIS 2.2 COMPOSER IMPROVEMENTS (PART 2) Nyalldawson.net - WAITING […]

  7. […] l’interface de mise en page (possible avec un seul auparavant). L’excellent article de nyalldawson.net permettra d’aller plus loin sur ces nouveautés […]

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>