Maya 2012 and QtWebKit

Hey guys,

I’ve been trying to get the PySide bindings to work with QtWebKit. When I try and run:

from PySide.QtWebKit import *

I get the error:

Error: ImportError: DLL load failed: The specified procedure could not be found.

I also tried PyQt and I get the same failure. The other modules appear to import fine. Anyone run into this and found a work around? I’d love to start playing with using Web technologies to do UI work and I figured WebKit would be the best way to accomplish this by running a custom browser within Maya.

Thanks!!

Tony

It also appears that you are unable to import QtDeclarative. It fails with the same error…

import PySide.QtDeclarative as QtDeclarative

Error: ImportError: DLL load failed: The specified procedure could not be found.

The pattern appears to be basically anything that involves qml, Maya is having a hard time with.

It seems that the QtDeclarative error is due to PySide. If I import PyQt4.QtDeclarative first then import PySide.QtDeclarative it works fine. But if in a fresh maya I import PySide.QtDeclarative first I get the ImportError.

The same is true for PySide.QtHelp as well.

QtWebKit will still not import in either PyQt4 nor PySide

Tony

I’ve run into this problem as well (though I think it was outside of Maya? Can’t remember if it was a standalone, or in mobu)… I don’t remember the cause or solution, if there was one.

Basically I’m trying to do web driven UI that works with our different software (Maya, Softimage). Do you have an alternative or an idea of the best way to host a browser inside of them? Do you think it’s best to leave the browser as it’s own window rather than connecting the two together?

If it is the later the issue I’ve always found with artists is that when we leave the browser as a second window confusion comes up as to which application the browser is currently communicating with. If anyone has done this sort of thing before, do you have any tips on a clean way to get everything talking and having the artists know to which application the service is currently talking too?

Thanks so much!

Tony

How will you communicate with the app from the browser, though? Isn’t it going to need to go through an intermediary anyway?

Yea it will go through an intermediary. Typically you would run a client service in the app itself correct? Something written in Python most likely since that is supported in most applications these days. Then the browser can just throw JSON at the app service and the app service can throw JSON back.

From a UI standpoint though, it would be nice if the web application could run inside of a window that is actually attached to the application instance’s interface. That’s what I was hoping to do with QtWebKit.

Trying to figure out the cleanest way to set all of this up from UI to how best to get the communication going.

Tony