5

I'm developing a plugin that sets up a working environment for a user: loading layers (from db), applying styles and several custom designed (Qt) UI files etc.

Primary user interaction is in the Attribute editor (Attribute Table) where there's a mix of Autogenerated and custom designed UIs.

Some of the custom UIs contain Qt objects/widgets that I need to interact with e.g., a QPushButton and a QTabWidget with QWidgets.

Since the plugin is only setting up the working environment, letting the user work freely afterwards, how can I react to user actions/events calling python functionality?

From the following posts I get the notion that my plugin needs to act as the widgets launch platform to be able to send signals and listen on slots.

So, in short, I'm trying to interact with custom (Qt) forms external to my plugin.

How can I accomplish this?

1 Answer 1

4

One way would be to access you plugin from the Python Init function file defined under Layer Properties tab Fields that'a controlling your UI. Partly from The PyQGIS Programmers's Guide p. 114:

if 'pinpoint' in qgis.utils.plugins:
  pp = qgis.utils.plugins['pinpoint']
  pp.someMethodFromThePlugin

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.