Est-il possible d'assigner un raccourci clavier à un script (personnalisé ou non ...) de la boîte à outils de traitement dans QGIS?
Je n'ai trouvé aucune information à ce sujet.
Est-il possible d'assigner un raccourci clavier à un script (personnalisé ou non ...) de la boîte à outils de traitement dans QGIS?
Je n'ai trouvé aucune information à ce sujet.
Réponses:
Voici un exemple de la façon d'ouvrir l'algorithme de traitement des «attributs de jointure» en appuyant sur Ctrl+ 1(vous pouvez le copier et le coller dans la console QGIS Python):
# Function to open the "Join attributes" algorithm's UI
# See http://gis.stackexchange.com/questions/156633/how-to-launch-processing-tool-user-interface-using-pyqgis
from processing.core.Processing import Processing
from processing.gui.CommanderWindow import CommanderWindow
cw = CommanderWindow(iface.mainWindow(), iface.mapCanvas())
def openAlgorithm():
alg = Processing.getAlgorithm("qgis:joinattributestable")
if alg is not None:
cw.runAlgorithm(alg)
# Assign "Ctrl+1" to openAlgorithm()
from PyQt4.QtGui import QShortcut, QKeySequence
from PyQt4.QtCore import Qt
shortcut = QShortcut(QKeySequence(Qt.ControlModifier + Qt.Key_1), iface.mainWindow())
shortcut.setContext(Qt.ApplicationShortcut)
shortcut.activated.connect(openAlgorithm)
C'est ça! Si vous appuyez sur Ctrl+, 1l'interface utilisateur Join Attributes s'ouvrira:
Remarque 1: Vous pouvez obtenir les noms des algorithmes disponibles en entrant ces lignes dans la console QGIS Python:
import processing
processing.alglist()
Remarque 2: Voir la documentation Qt4 pour une liste complète des clés.
Remarque 3: vous pouvez appeler shortcut.activated.disconnect(openAlgorithm)
pour terminer l'association entre le raccourci et l'interface utilisateur de votre algorithme.