Cómo añadir un plugín a los Menús de QGIS

En un post pasado se señaló cómo añadir un plugín a la Tool Bar principal de Plugins en QGIS y en este se va a considerar la adición a los menús. Los menús posibles se pueden averiguar filtrando por ‘addPlugin’ con ‘Get Pattern’; tal como se presenta en la imagen siguiente:

menu1

Aprovechando el plugin de pruebas del post pasado, ‘My Plugin’, vamos a decidir colocarlo en el menú ‘Vector’, con una imagen identificadora de 24 x 24 (versión miniatura de parabolic1.png) y cuyo slot, para verificar que funciona la conexión, imprima a través de la Python Console una suma arbitraria.

Antes vamos a modificar el resources.qrc como:

<RCC>
    <qresource prefix="/plugins/MyPlugin" >
        <file>icon.png</file>
	    <file>parabolic2.png</file>
    </qresource>
</RCC>

y posteriormente compilarlo con ‘make’.

El código a incluir en el plugin, en el método ‘initGui’ y en el slot, es el siguiente:

.
.
.
    def initGui(self):
        """Create the menu entries and toolbar icons inside the QGIS GUI."""
.
.
.
        self.my_action = QAction(QIcon(":/plugins/MyPlugin/parabolic2.png"),
                                 'My Action', 
                                 self.iface.mainWindow())

        QObject.connect(self.my_action, SIGNAL("activated()"), self.slot_my_action)
        self.iface.addPluginToVectorMenu('My Plugin', self.my_action)

.
.
.
    def slot_my_action(self):
        
        a = 5
        b = 7

        print u"sum of {:d} + {:d} is = {:d}".format(a, b, a+b)

    def run(self):
.
.
.

Después de recargado con ‘Reload Plugin’ y ejecutado, el resultado puede visualizarse en la imagen siguiente:

action1

Esta entrada fue publicada en Plugin, PyQGIS, QGIS, Software Libre. Guarda el enlace permanente.

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s