def mouseDoubleClickEvent(self, event): if ( self.childreceiver != None ): # this means this class already knows that the mouse event is in the child # that is being displayed self.childreceiver.mouseDoubleClickEvent(event) self.childreceiver = None return l=self.mouseinwin(event.x(),self.parent.height()-event.y()) cw=self.qwidget.childAt(l[0],l[1]) if cw == None: return gp=self.qwidget.mapToGlobal(QtCore.QPoint(l[0],l[1])) lp=cw.mapFromGlobal(gp) if (isinstance(cw,QtGui.QComboBox)): print "it's a combo" else: qme=QtGui.mouseDoubleClickEvent(event.type(),lp,event.button(),event.buttons(),event.modifiers()) self.qwidget.setVisible(True) QtCore.QCoreApplication.sendEvent(cw,qme) self.qwidget.setVisible(False) self.gen_texture = True self.updateTexture()