You actually don't need to name the window for it to work. Maya will use a 
default name.

from PyQt4 import QtCore, QtGui
import maya.OpenMayaUI as mui
import sip

def getMayaWindow():
    ptr = mui.MQtUtil.mainWindow()
    return sip.wrapinstance(long(ptr), QtCore.QObject)
        
class Window(QtGui.QMainWindow):    
    def __init__(self, parent=None):
        p = parent or getMayaWindow()
        super(Window, self).__init__(parent=p)
                        
        name = mui.MQtUtil.fullName(long(sip.unwrapinstance(self)))            
        print "Window name", name
        
    def closeEvent(self, e):
        print "TEST"


On Apr 20, 2012, at 8:16 PM, John Patrick wrote:

> You need to set the object name to be able to find it in Maya:  
> http://pastebin.com/T4tJ4GjE
> 
> On Fri, Apr 20, 2012 at 5:56 PM, Christopher Evans <chris.ev...@gmail.com> 
> wrote:
> class skinWrangler(QtGui.QMainWindow):
>    def __init__(self):
>                QtGui.QMainWindow.__init__(self)
> 
> Looks like I am creating the window differently than you guys.
> 
> I was going to give this skinning tool away free anyways, here's that
> few surrounding chunks of code: http://pastebin.com/5tJfvSB7
> 
> Thanks,
> 
> CE
> 
> On Sat, Apr 21, 2012 at 2:06 AM, Justin Israel <justinisr...@gmail.com> wrote:
> > I hit send to fast. Ignore that silly line at the end of my last message :-)
> >
> >
> > On Fri, Apr 20, 2012 at 5:05 PM, Justin Israel <justinisr...@gmail.com>
> > wrote:
> >>
> >> On Fri, Apr 20, 2012 at 4:25 PM, Christopher Evans <chris.ev...@gmail.com>
> >> wrote:
> >>>
> >>> First lemme start with: Is it possible to use closeEvent() in Maya? I
> >>> cannot get that to work.
> >>
> >>
> >> Can you be more specific about what is giving you trouble?
> >> This works just fine:
> >>
> >> class Window(QtGui.QMainWindow):
> >>     def closeEvent(self, e):
> >>         print "HIT"
> >>
> >>>
> >>>
> >>> Can someone tell me how to feed a custom pyqt mainWindow tool into the
> >>> parent flag of a scriptjob?
> >>>
> >>>
> >>> I have been looking all over teh internets, I think it involves SIP
> >>> somehow.. all examples I have seen show QDialog, or mel/python
> >>> commands UIs.
> >>
> >>
> >> The part about getting the maya UI name from a pyqt widget has been asked
> >> before.
> >> It goes like this:
> >>
> >> import sip
> >> import maya.OpenMayaUI as mui
> >>
> >> win = # some PyQt widget
> >> mayaName = mui.MQtUtil.fullName(long(sip.unwrapinstance(win)))
> >>
> >> You can also check out
> >>>
> >>>
> >>> Thanks,
> >>>
> >>> --
> >>> CE
> >>>
> >>> --
> >>> view archives: http://groups.google.com/group/python_inside_maya
> >>> change your subscription settings:
> >>> http://groups.google.com/group/python_inside_maya/subscribe
> >>
> >>
> >
> > --
> > view archives: http://groups.google.com/group/python_inside_maya
> > change your subscription settings:
> > http://groups.google.com/group/python_inside_maya/subscribe
> 
> 
> 
> --
> CE
> 
> --
> view archives: http://groups.google.com/group/python_inside_maya
> change your subscription settings: 
> http://groups.google.com/group/python_inside_maya/subscribe
> 
> 
> 
> -- 
> John Patrick
> 404-242-2675
> jspatr...@gmail.com
> http://www.canyourigit.com
> 
> -- 
> view archives: http://groups.google.com/group/python_inside_maya
> change your subscription settings: 
> http://groups.google.com/group/python_inside_maya/subscribe

-- 
view archives: http://groups.google.com/group/python_inside_maya
change your subscription settings: 
http://groups.google.com/group/python_inside_maya/subscribe

Reply via email to