def testNonCppWrapperClassDelete(self): """Would segfault when shiboken.delete called on obj not created from Python """ obj = sample.ObjectType() child = obj.createChild(None) shiboken.delete(child) assert not shiboken.isValid(child)
def __init__(self, parent=maya_window): super(BasicDialog, self).__init__(parent) object_name = "License" exist = parent.findChild(QtGui.QDialog, object_name) if exist: shiboken.delete(exist) scripts = cmds.internalVar(utd=True) folder = "lws_creds.py" fileName = scripts + folder currentDate = (time.strftime("%d/%m/%Y")) if os.path.isfile(fileName): data = open(fileName, 'r') creds = data.read() creds = creds.split(',', 3) date = creds[2] if date != currentDate: emailAddressSaved = creds[0] licenseSaved = '' creds = emailAddressSaved + ',' + '' + ',' + date fileWrite = open(fileName, 'w') fileWrite.write(creds) fileWrite.close() else: emailAddressSaved = creds[0] licenseSaved = creds[1] else: emailAddressSaved = '' licenseSaved = '' date = 0 self.setWindowTitle("Long Winter License ") self.setObjectName(object_name) self.setAttribute(QtCore.Qt.WA_DeleteOnClose) main_layout = QtGui.QVBoxLayout(self) layout_labels = QtGui.QVBoxLayout(self) layout_button = QtGui.QHBoxLayout(self) layout_check = QtGui.QVBoxLayout(self) labelEmail = QtGui.QLabel(self) labelLic = QtGui.QLabel(self) self.email = QtGui.QLineEdit() self.license = QtGui.QLineEdit() self.email.setText(emailAddressSaved) self.license.setText(licenseSaved) labelEmail.setText("Enter Email:") labelLic.setText("Enter License Key:") self.check = QtGui.QCheckBox('Save Credentials') self.check.setChecked(True) ok_button = QtGui.QPushButton("OK") launch_button = QtGui.QPushButton("View Account") map(layout_button.addWidget, (ok_button, launch_button)) map(layout_labels.addWidget, (labelEmail, self.email, labelLic, self.license, self.check)) map(main_layout.addLayout, [layout_labels, layout_button, layout_check]) self.email.returnPressed.connect(self.enterCreds) self.license.returnPressed.connect(self.enterCreds) ok_button.clicked.connect(self.enterCreds) launch_button.clicked.connect(self.launch) self.closeWindow = 'new'
def testDelete(self): obj = ObjectType() child = ObjectType(obj) self.assertTrue(shiboken.isValid(obj)) self.assertTrue(shiboken.isValid(child)) # Note: this test doesn't assure that the object dtor was really called shiboken.delete(obj) self.assertFalse(shiboken.isValid(obj)) self.assertFalse(shiboken.isValid(child))
def closeTool(toolName, dock=False): mayaWindow = getMayaWindow() tool = mayaWindow.findChild(QtGui.QDialog, toolName) if tool: if (not dock): shiboken.delete(tool) else: tool.close() tool = None
def testClassDecref(self): # Bug was that class PyTypeObject wasn't decrefed when instance died before = sys.getrefcount(ObjectType) for i in range(1000): obj = ObjectType() shiboken.delete(obj) after = sys.getrefcount(ObjectType) self.assertLess(abs(before - after), 5)
def closeEvent(self, event=''): if self.closeWindow == 'success': parent = maya_window object_name = "License" exist = parent.findChild(QtGui.QDialog, object_name) if exist: shiboken.delete(exist) elif self.closeWindow == 'failure': try: event.ignore() except: pass elif self.closeWindow == 'new': cmds.file(new=True, force=True) self.closeWindow = 'success' self.lockPopup() self.closeEvent(self) cmds.warning( 'Open canceled. We\'ve closed your file to prevent damage. Please visit LongWinterMembers.com to manage your account or sign up! ' )