On 2/16/2014 2:14 PM, Joe Weidenbach wrote:
I updated the topic since it's off the original at this point.That's on a "one of these days" list for me. My tool is for my Master's Thesis, and part of the original specification was that it would run on any version of Maya that supports Python. I got an adjustment to allow for PyQt, but if I moved to PySide I'd at the very least have to set up dual compatibility for older versions of Maya. Although, I'd really like to get this functional for 2014, has anyone had any luck getting PyQt to compile for it? I've never been able to get Qt to finish compiling without erroring out when following the Autodesk instructions, so I've never been able to build PyQt natively (and had to rely on pre-built versions).On 2/16/2014 2:06 PM, Justin Israel wrote:Also if you use PySide (which is now distributed with Maya 2014), their API is more like SIP v2, where they don't have the QVariants at all, as well as no QStrings.On Mon, Feb 17, 2014 at 10:58 AM, Joe Weidenbach <[email protected] <mailto:[email protected]>> wrote:The biggest thing for me has been to embrace the widget model. I had a lot of struggles trying to convert existing Maya interfaces over, which led to a lot of "how do I get x interface element in PyQt" questions (The framelayout was a particular headache for me, but I learned a lot about the internals of the layout system trying to rebuild it). The thing is, PyQt gives you the base widgets to build just about anything you want, where maya gives you a lot of prebuilt interfaces so you can build very rapidly (while losing some flexibility in the process). So for me, the key was to redesign my interfaces from the ground up--not thinking about "how can I recreate this existing interface?", and instead thinking about "How do I want the user to experience this tool?" It was a bit painful with all of the existing work I'd put in before I hit the limits of Maya's interface functionality, but once I started redesigning I realized that a lot of the choices I'd made before were to work within the limitations of the old system, and I was wasting a lot of time trying to recreate something that wasn't really necessary. From there, it was just "which element will accomplish what I'm looking for," and then diving into the documentation and forums to figure out how to do it. Working with the Qt Model/View/Delegate system has also been challenging, but no more so than it was with WPF for me. The biggest challenge there is in working with the QVariants that Qt uses internally. I also just discovered that you can put a definition in your imports to remove QVariants entirely for sip, but at this point my codebase has gotten rather large again so I just deal with them. On 2/16/2014 1:48 AM, Mark Serena wrote:Cheers Joe. Any other things helped you get a grasp of it? Always good to find some golden egg hidden on the inter-web/warren On Sun, Feb 16, 2014 at 5:06 PM, Joe Weidenbach <[email protected] <mailto:[email protected]>> wrote: Hey Mark, Just wanted to throw this out to you, I switched to PyQt about 8 months ago, and am finally getting the hang of it (of course I'm working on it part time between school, my day job (Where I use C# with WPF), my second job, and running an indie game development team, so that could contribute to how long it's taken me to pick it up :P). It does take time to get used to the PyQt thought process, but it will come. Of all the resources I've used, I keep coming back to Justin's, so you're on the right track with that one. Best of luck, Joe On 2/15/2014 5:39 PM, Mark Serena wrote:Cool, well there's a lot of new territory for me to cover, I'm currently watching your cmiVFX vid on PyQt and also got the one off CGSociety, so hopefully I'll feel less lost soon. Thanks again Justin. On Sun, Feb 16, 2014 at 12:35 PM, Justin Israel <[email protected] <mailto:[email protected]>> wrote: Hah, ya no worries. This wasn't the type of question I had posted about. It was based on my existing previous example, and more theoretical about how much could be done with the render view panel. I was interested in testing it. Technically mostly everything in the Maya UI can be hijacked to some extent. The render view button calls a runtime command that you could probably swap out to launch yours. If you made your app a scripted plugin, then you could have it hijack that functionality on plugin load, and restore it on unload maybe. On Feb 16, 2014 2:26 PM, "Mark Serena" <[email protected] <mailto:[email protected]>> wrote: Ooooo that's perfect!!! Thank you very much for looking into that Justin, I remember your post about people asking questions and expecting the answer laid out for them, I wasn't trying to coax you into writing anything, but thank you for the example! It's possible to make the default render button launch my new UI right? I'm sure the Charcoal Script Editor that Chris Zubrigg does this. I might look into that and that should stop the focus being stolen? Thanks again!-- You received this message because you are subscribed to theGoogle Groups "Python Programming for Autodesk Maya" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected] <mailto:[email protected]>. To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CACfkVJc1bK3gtw-qi43-uG-fnhfT8Y5xhbe4eLLvyTv59wuU8A%40mail.gmail.com. For more options, visit https://groups.google.com/groups/opt_out.-- You received this message because you are subscribed to atopic in the Google Groups "Python Programming for Autodesk Maya" group. To unsubscribe from this topic, visit https://groups.google.com/d/topic/python_inside_maya/pTUd6aYeQCg/unsubscribe. To unsubscribe from this group and all its topics, send an email to [email protected] <mailto:python_inside_maya%[email protected]>. To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/53005571.3090308%40gmail.com. For more options, visit https://groups.google.com/groups/opt_out.-- You received this message because you are subscribed to theGoogle Groups "Python Programming for Autodesk Maya" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected] <mailto:[email protected]>. To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CACfkVJeifenCBy-sY6DUU8_e571SBUFBgu78N3tPnHXvraZgVw%40mail.gmail.com. For more options, visit https://groups.google.com/groups/opt_out.-- You received this message because you are subscribed to theGoogle Groups "Python Programming for Autodesk Maya" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected] <mailto:python_inside_maya%[email protected]>. To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/53013486.2000502%40gmail.com. For more options, visit https://groups.google.com/groups/opt_out. --You received this message because you are subscribed to the Google Groups "Python Programming for Autodesk Maya" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAPGFgA3HTLNhMaiiHgsm5scE1r%2B%3DH8QJb6jVbenm2XwwgoBSmA%40mail.gmail.com.For more options, visit https://groups.google.com/groups/opt_out.
-- You received this message because you are subscribed to the Google Groups "Python Programming for Autodesk Maya" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/53013907.9090107%40gmail.com. For more options, visit https://groups.google.com/groups/opt_out.
