1 votos

El plugin de recarga hace un nuevo elemento en el menú

Estoy escribiendo un conjunto de plugins que hacen funciones complementarias. Quiero que todos los plugins estén en el mismo submenú bajo Vector. Esto funciona bien, pero cuando estoy recargando el plugin durante el desarrollo, no eliminará el antiguo elemento de menú, sólo añadirá uno nuevo, de modo que termino con un montón de elementos de menú para la misma función, aunque sólo el último está funcionando.

Screenshot

Así que cuando vuelvo a cargar el plugin haciendo la parte de "Cargar datos espectrales", no quiero hacer nada en el menú para la corrección de la altitud. (Que por cierto muestra exactamente lo mismo cuando ese es el que estoy trabajando)

Las partes relevantes de mi plugin:

metadata.txt:category=Vector

DataLoader.py (__init__) : self.menu = self.tr(u'&Spectral data')

DataLoader.py (initgui):
    self.add_action(
        icon_path,
        text=self.tr(u'Load spectral data'),
        callback=self.run,
        parent=self.iface.mainWindow())

DataLoader.py (unload):
    for action in self.actions:
        self.iface.removePluginVectorMenu(
            self.tr(u'Load spectral data'),
            action)

¿Qué debo añadir para decirle que elimine "Cargar datos espectrales" en el submenú "Datos espectrales"?

1voto

Rebecca Puntos 51

Lo encontré yo mismo...

Necesitaba especificar el submenú en la descarga, por lo que se convierte:

DataLoader.py (unload):
for action in self.actions:
    self.iface.removePluginVectorMenu(
        self.tr(u'&Spectral data'),
        action)

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X