-- coding: utf-8 --
import sys
import os
import check_mode
import maya.cmds as cmds
from functools import partial
import maya.OpenMayaUI as apiUI
import maya.OpenMayaUI as omUI
import shiboken,time
import subprocess
from PySide import QtCore, QtGui
from script.ui_pyqt4 import ui_CheckWindows
reload(check_mode)
reload(ui_CheckWindows)
_CheckWindows = ‘checkWindows’
try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
def _fromUtf8(s):
return s
try:
_encoding = QtGui.QApplication.UnicodeUTF8
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig)
得到maya主窗口,转换成pyqt的类
def getMayaWindow():
ptr = omUI.MQtUtil.mainWindow()
return shiboken.wrapInstance(long(ptr), QtGui.QMainWindow)
class CheckWindow(QtGui.QMainWindow,ui_CheckWindows.Ui_checkWindow):
def init(self, parent=getMayaWindow(),*args):
super(CheckWindow, self).init(parent)
self.setupUi(self) #给定所有的窗口部件,相当于重新创建我们在QT设计师里的所有窗体
self.setObjectName(_CheckWindows)
def main():
if cmds.window(_CheckWindows,exists=True):
cmds.deleteUI(_CheckWindows,window=True)
ui = CheckWindow()
ui.show()
if name==‘main’:
main()
class CheckInWindow(object):
def init(self):
self.check = check_mode.check_in()
self.check.error = []
self.textCheck = “”
def checkmod(self,*args):
self.check.cleanup()
self.check.layers()
#self.check.clearShape()
self.check.deleteUnknow()
self.check.deletelights()
self.check.makeIdentityCenterPivot()
self.check.Modify_Shape_Name()
self.check.deleteTurtle()
self.check.deleteWin()
self.check.checkUV()
self.check.checkNormals()
self.check.checkHypershade()
self.check.oneandfour()
self.check.check_the_rename()
self.checkwin()
def checktex(self,*args):
self.check.cleanup()
self.check.check_face_shade()
self.check.layers()
self.check.Map_path_Check()
#self.check.clearShape()
self.check.deleteUnknow()
self.check.deletelights()
self.check.Modify_Shape_Name()
self.check.deleteTurtle()
self.check.deleteWin()
self.check.checkUV()
self.check.checkNormals()
self.check.checkHypershade()
self.check.oneandfour()
self.check.check_the_rename()
self.checkwin()
def checkrig(self,*args):
self.check.layers()
self.check.deleteUnknow()
self.check.deletelights()
self.check.deleteTurtle()
self.check.deleteWin()
self.check.checkHypershade()
self.check.oneandfour()
self.check.check_the_rename()
self.checkwin()
def checkanim(self,*args):
self.check.cameras()
self.check.refereceName()
self.check.deleteUnknow()
try:
self.check.checkFrames()
except:
pass
self.check.deleteTurtle()
self.check.deleteWin()
self.check.checkHypershade()
self.check.oneandfour()
self.checkwin()
def checkwin(self,*args):
if cmds.window(_CheckWindows,exists=True):
cmds.deleteUI(_CheckWindows,window=True)
uicheck = CheckWindow()
for i in self.check.error:
if len(self.textCheck) == 0:
self.textCheck = i
else:
self.textCheck = self.textCheck+","+i
if len(self.textCheck) == 0:
self.textCheck = "没有任何问题,请提交文件"
uicheck.ContentLabel.setText(_translate("checkWindow", self.textCheck, None))
uicheck.show()