Call pyblish_qml actions


#1

Hey,

I’m looking for the best way to call pyblish_qml’s window actions, like publish, validate, etc
In pylish_lite, i would simply do:

window = pyblish_maya.show()
window.publish() #after validation...

My goal is to start the publishing sequence immediately after a successful validation. (I will call it from the callback fired after validation)

Sorry if that’s trivial, my brain is still recovering from getting it to run at all :slight_smile:


#2

It’s currently not supported, but you are welcome to implement it.

What you would need to do is:

  1. Emit a signal from Maya to Pyblish QML, such as publish()
  2. Listen for publish() from Pyblish QML

You can accomplish (1) here by adding another method, such as publish() and (2) here by handling the incoming event, e.g. "publish".

There are a number of other events you can use to guide you, such as show().

I also fixed that bug you were experiencing earlier today, so you can update to the latest version if you’d like, and implement the feature in that version.

$ pip install -U pyblish-qml

#3

Thanks for the hints.
I will take a moment to get familiar with the code and will do that!


#4

Iv’e implemented publish() and validate() that can be called from pyblish_qml.host, similar to show(), works great - Thanks for the hints!

I would submit a PR, but I had to work from 64d4249 (1.3.1) https://github.com/pyblish/pyblish-qml/commit/64d4249c3278de23ce6fe0d1100099b742c4c26d

With the latest and everything ahed from 64d4249 i got this:


#5

That should work, but it looks like the latest release of pyblish-qml has a few more quirks to work out.

For the time being, are you able to update to the latest pyblish-base? I’ll take a look at the qml problem asap.

$ pip install pyblish-base --update