Actions et propriétés des actions

Depuis QGIS il est possible d'exécuter divers programmes pour consulter des données associées ou exécuter des programmes pour en rapatrier les résultats. Plusieurs types d'actions existent. Elles peuvent être exécutées soit à partir de la valeur d'un attribut d'une couche (« résultats identifiés » par une requête), soit par simple clic sur un élément de la couche active.

Les actions présentées ci-dessous ne sont que des exemples pour illustrer les possibilités. Il s'agit pour l'essentiel des actions disponibles par défaut qui ont été adaptées pour les besoins de cette formation.

Définir les propriétés des actions

La première étape consiste à définir les propriétés des actions associées à chaque fois à une couche.

  • Cliquer sur les propriétés de la couche souhaitée et cliquer sur l'onglet « Actions ».

Liste des actions

Il est possible d'ajouter des actions avec le bouton . Celles-ci peuvent être de plusieurs sortes :

  • Générique

  • Python

  • Mac

  • Windows

  • Unix

  • Ouvrir

Le choix entre les différents types d'actions dépend pour partie du système d'exploitation sur lequel fonctionne QGIS (Windows, Mac, Linux) et si l'on fait appel ou pas à du langage Python. Les actions définies pour un système d'exploitation ne seront pas visibles sur les autres.

Le bouton «Créer les actions par défaut », ajoute plusieurs types d'actions pré-enregistrées avec leur type, leur nom, la syntaxe de leur action.

La case « Capture » cochée ou décochée indique si l'action est active dans l'interface utilisateur.

A partir des « actions par défaut », les actions présentées ci-dessous ne sont données qu'à titre d'exemple pour en illustrer les principes et possibilités. On peut trouver bien d'autres exemples d'actions dès lors qu'on se penche un peu sur les différentes syntaxes .

Voici les actions proposées pour la formation :

Type

Nom

Action par défaut proposée par QGIS

Exemple

Générique

Lancer une application

ogr2ogr -f "ESRI Shapefile" "[% "OUTPUT_PATH" %]" "[% "INPUT_FILE" %]"

Lancer l'application PhotoFiltre :

"C:/Program Files/PhotoFiltre/PhotoFiltre.exe"

Python

Valeur du champ sélectionné (Outil d'identification des entités)

QtGui.QMessageBox.information(None, "Current field's value", "[% $currentfield %]")

Affiche la valeur du champ "NOM" de l'entité pointée dans la couche COMMUNE (BD TOPO) :

QtGui.QMessageBox.information(None, "NOM", "[% "NOM" %]")

Python

Coordonnées du clic (outil d'exécution d'action sur entité)

QtGui.QMessageBox.information(None, "Clicked coords", "layer: [% $layerid %]\ncoords: ([% $clickx %],[% $clickx %])")

QtGui.QMessageBox.information(None, "Coordonnees", "Coord. X et Y:([% $clickx %],[% $clicky %])")

Ouvrir

Recherche web basée sur la valeur de l'attribut

http://www.google.fr/?q=[% "ATTRIBUTE" %]

Recherche web basée sur la valeur du champ NOM_COMM :

http://www.google.fr/search?q=[% "NOM_COMM" %]

RemarqueSauvegarde des actions

Les actions doivent être sauvegardées :

  • soit dans le fichier projet QGS en cours ;

  • soit dans le style de la couche en lançant la commande "Enregistrer le style" située en bas de la fenêtre de définition des actions.

Rappel : Le fichier de style au format qml associé à la couche peut contenir la définition des actions, mais également le style de représentation de la couche, tout comme on l'a vu précédemment le paramétrage des outils d'édition des données attributaires. S'il possède le même nom que la couche, il est chargé automatiquement en même temps qu'elle.

Lancer les actions

Pour exécuter les actions, il faut retourner dans la fenêtre cartographique de QGIS et afficher le bouton des actions « Exécuter l'action de l'entité». Ce bouton se trouve dans la barre d'outils "Attributs" de QGIS.

Exécuter les actions d'une entité

Le bouton liste toutes les actions dont la case « Rendu de capture » a été cochée.

On peut également lancer une action depuis la table d'attribut avec le bouton

Complément

On peut également lancer les actions associées à une couche en passant par l'outil "Identifier les entités" lorsque cette couche est sélectionnée, et en choisissant la section "Actions" de la fenêtre "Identifier les résultats".

Pour que cette section apparaisse, il faut s'assurer que l'option "Ouvrir le formulaire automatiquement" n'est pas cochée dans la fenêtre d'identification. Si c'est le cas et que le formulaire s'ouvre, il est possible d’utiliser l'outil d'identification avec un clic droit et de choisir identifier tout, puis de décocher la case.

Fenêtre Identifier les résultats