示例#1
0
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(LighterHelperUI, self).__init__(parent)
		self.setupUi(self)
		#load arnold if it is not loaded
		self.loadArnold()
		self.setObjectName( 'ligther_Helper_WIN' )
		self._makeConnections()
		#self._addAllAovs()
		#create an scriptjob thats update the UI on renderlayer change
		mc.scriptJob( e = ["renderLayerManagerChange", partial( self.updateLighterUI )], p = 'ligther_Helper_WIN' )
		self.updateLighterUI()
		#set icons for toolbar
		self.actionSpot.setIcon(QtGui.QIcon(":/spotlight.png"))
		self.actionDirectional.setIcon(QtGui.QIcon(":/directionallight.png"))
		self.actionPoint.setIcon(QtGui.QIcon(":/pointlight.png"))
		self.actionAmbient.setIcon(QtGui.QIcon(":/ambientlight.png"))
		self.actionArea.setIcon(QtGui.QIcon(":/arealight.png"))
		self.actionVolume.setIcon(QtGui.QIcon(":/volumelight.png"))
		self.actionRenderGlobals.setIcon(QtGui.QIcon(":/renderGlobals.png"))
		self.actionRenderView.setIcon(QtGui.QIcon(":/render.png"))
		self.actionLookThrough.setIcon(QtGui.QIcon(":/fileTextureView.png"))
		#internal variables
		self.isolatedLights = [] #lights that are beign turn off when we want to isolate others!
		self.isolatedObjects = [] #objects that are beign turn off when we one to isolate others!
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#2
0
	def __init__(self, project, pose = None, parent  = uiH.getMayaWindow() ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(PoseThumbnailCreatorUi, self).__init__(parent)
		self.setupUi(self)
		self.project = project
		self.pose = pose
		layout = mui.MQtUtil.fullName(long(shiboken.getCppPointer(self.viewport_lay)[0]))
		self.cam = mn.Node( 'Capture_Pose' )
		if not self.cam.exists:
			self.camShape = mn.createNode( 'camera', ss = True )
			self.camShape.parent.name = 'Capture_Pose'
			mc.viewSet( self.cam.name, p = True )
			self.cam.shape.a.focalLength.v = 100
			self.cam.a.v.v = 0
		self.executer = mc.modelPanel( mbv = False, camera = self.cam.name, p = layout )
		mc.modelEditor(self.executer, e = True, grid = 0, da = "smoothShaded", allObjects = 0, nurbsSurfaces = 1, polymeshes = 1, subdivSurfaces = 1 )
		#self.viewport_lay.addWidget( uiH.toQtObject( self.executer ) )
		self.setObjectName( 'PoseThumbnailCreatorUi' )
		self._makeConnections()
		self.saveCameraPreset = 0 #READ, 1.. WRITE
		self.settings = sti.Settings()
		gen = self.settings.General
		skin = gen[ "skin" ]
		if skin:
			uiH.loadSkin( self, skin )
		if pose:
			self.poseName_le.setText( pose.name )
		self.fillSections()
示例#3
0
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(MultiAttributeUI, self).__init__(parent)
		self.setupUi(self)
		self.fillByTypeCMB()
		self.attribute_le.setFocus()
		self.setObjectName( 'multiAttr_WIN' )
		self.attribute_le.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
		self.attribute_le.customContextMenuRequested.connect(self.showAttributes)
		self.completer = TagsCompleter( self.attribute_le )
		self.completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive)
		self.completer.setWidget( self.attribute_le )
		self.fromCompleter = TagsCompleter( self.fromAttr_le )
		self.fromCompleter.setCaseSensitivity(QtCore.Qt.CaseInsensitive)
		self.fromCompleter.setWidget( self.fromAttr_le )
		self.toCompleter = TagsCompleter( self.toAttr_le )
		self.toCompleter.setCaseSensitivity(QtCore.Qt.CaseInsensitive)
		self.toCompleter.setWidget( self.toAttr_le )
		self._makeConnections()
		self.settings = sti.Settings()
		gen = self.settings.General
		if gen:
			skin = gen[ "skin" ]
			if skin:
				uiH.loadSkin( self, skin )
		#fill list to create CMB
		typs = ['cluster', 'polyCube', 'polySphere','polyCylinder','polyCone',
				'polyPipe','spaceLocator', 'joint']
		self.listToCreate_cmb.addItems(typs)
示例#4
0
文件: newTask.py 项目: skarone/PipeL
	def __init__(self,projectName, user = '', parent  = uiH.getMayaWindow() ):
		if INMAYA:
			if uiH.USEPYQT:
				super(base, self).__init__(parent)
			else:
				super(NewTaskUi, self).__init__(parent)
		else:
			if uiH.USEPYQT:
				super(base, self).__init__(parent)
			else:
				super(NewTaskUi, self).__init__(parent)
		self.setupUi(self)
		self._user = user
		self.setObjectName( 'NewTaskUi' )
		self._makeConnections()
		self.settings = sti.Settings()
		self.projectName = projectName
		self.fillProjects()
		self.dataBase = db.ProjectDataBase( self.projectName )
		self.taskName_le.setVisible( False )
		self.fillUsers()
		self.fillTasks()
		self.fillStatus()
		self.settings = sti.Settings()
		skin = self.settings.General[ "skin" ]
		if skin:
			uiH.loadSkin( self, skin )
示例#5
0
	def __init__(self, parent = None):
		if INMAYA:
			if uiH.USEPYQT:
				super(base, self).__init__(uiH.getMayaWindow())
			else:
				super(Thomdo, self).__init__(uiH.getMayaWindow())
		else:
			if uiH.USEPYQT:
				super(base, self).__init__(parent)
			else:
				super(Thomdo, self).__init__(parent)
		self.setupUi(self)
		self.setObjectName( 'Thomdo' )
		self.entryField.returnPressed.connect(self.return_pressed)
		self.clearButton.clicked.connect(self.clear)
		#self.saveButton.clicked.connect(self.save)
		#self.loadButton.clicked.connect(self.load)
		self.taskList.itemClicked.connect(self.itemClicked)
		self.taskList.itemChanged.connect( self.save )
		self.load()
		self.settings = sti.Settings()
		gen = self.settings.General
		if gen:
			skin = gen[ "skin" ]
			if skin:
				uiH.loadSkin( self, skin )
示例#6
0
	def loadProjectsPath(self):
		"""docstring for loadProjectsPath"""
		gen = self.settings.General
		if gen:
			basePath = gen[ "basepath" ]
			if basePath:
				if basePath.endswith( '\\' ):
					basePath = basePath[:-1]
				prj.BASE_PATH = basePath.replace( '\\', '/' )
			serverPath = gen[ "serverpath" ]
			if serverPath:
				self.serverPath = serverPath
			useMayaSubFolder = gen[ "usemayasubfolder" ]
			if useMayaSubFolder == 'True':
				prj.USE_MAYA_SUBFOLDER = True
			else:
				prj.USE_MAYA_SUBFOLDER = False
			changeInternalPaths = gen[ "changeinternalpaths" ]
			if useMayaSubFolder == 'True':
				self.changeInternalPaths = True
			if gen.has_key( 'automaketx' ):
				autoMakeTx = gen[ "automaketx" ]
				if autoMakeTx == 'True':
					self.autoMakeTx = True
			skin = gen[ "skin" ]
			if skin:
				uiH.loadSkin( self, skin )
示例#7
0
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(SkinTestUI, self).__init__(parent)
		self.setupUi(self)
		self.setObjectName( 'SkinTestUI' )
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#8
0
文件: hairUi.py 项目: Rotomator/PipeL
 def __init__(self, parent=uiH.getMayaWindow(), *args):
     if uiH.USEPYQT:
         super(base, self).__init__(parent)
     else:
         super(hairUi, self).__init__(parent)
     self.setupUi(self)
     self._makeConnections()
     self.setObjectName('hairUi')
     uiH.loadSkin(self, 'QTDarkGreen')
示例#9
0
	def __init__(self):
		if uiH.USEPYQT:
			super(base, self).__init__(uiH.getMayaWindow())
		else:
			super(TransferSkinWeightsUi, self).__init__(uiH.getMayaWindow())
		self.setupUi(self)
		self._makeConnections()
		self.setObjectName( 'TransferSkinWeightsUi' )
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#10
0
 def __init__(self, parent=uiH.getMayaWindow(), *args):
     if uiH.USEPYQT:
         super(base, self).__init__(parent)
     else:
         super(spiderWebCreatorUi, self).__init__(parent)
     self.setupUi(self)
     self._makeConnections()
     self.setObjectName("spiderWebCreatorUi_WIN")
     uiH.loadSkin(self, "QTDarkGreen")
示例#11
0
文件: hairUi.py 项目: skarone/PipeL
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(hairUi, self).__init__(parent)
		self.setupUi(self)
		self._makeConnections()
		self.setObjectName( 'hairUi' )
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#12
0
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(MirrorCurveUi, self).__init__(parent)
		self.setupUi(self)
		self.setObjectName( 'MirrorCurveUi' )
		self.connect(self.mirror_btn, QtCore.SIGNAL("clicked()"), self.mirror)
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#13
0
	def __init__(self, renderLayerNode ):
		if uiH.USEPYQT:
			super(baseLay, self).__init__()
		else:
			super(RenderLayerUI, self).__init__()
		self.setupUi(self)
		self._layer = renderLayerNode
		self._makeConnections()
		self._updateUi()
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#14
0
文件: check.py 项目: skarone/PipeL
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(checkModelSceneUi, self).__init__(parent)
		self.setupUi(self)
		self._makeConnections()
		self.checkScene()
		self.setObjectName( 'modelSceneCheck_WIN' )
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#15
0
	def loadSettings(self):
		"""docstring for loadSettings"""
		gen = self.settings.General
		self.serverPath = ''
		serverPath = gen[ "serverpath" ]
		if serverPath:
			self.serverPath = serverPath
		skin = gen[ "skin" ]
		if skin:
			uiH.loadSkin( self, skin )
示例#16
0
	def loadSettings(self):
		"""docstring for loadSettings"""
		skin = self.gen[ "skin" ]
		if skin:
			uiH.loadSkin( self, skin )
		basePath = self.gen[ "basepath" ]
		if basePath:
			if basePath.endswith( '\\' ):
				basePath = basePath[:-1]
			prj.BASE_PATH = basePath.replace( '\\', '/' )
示例#17
0
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(RenderManagerUI, self).__init__(parent)
		self.setupUi(self)
		self._makeConnections()
		self.setObjectName( 'RenderManagerUI' )
		self._fillUi()
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#18
0
 def loadSettings(self):
     """docstring for loadSettings"""
     gen = self.settings.General
     self.serverPath = ''
     serverPath = gen["serverpath"]
     if serverPath:
         self.serverPath = serverPath
     skin = gen["skin"]
     if skin:
         uiH.loadSkin(self, skin)
示例#19
0
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(ExporterUI, self).__init__(parent)
		self.setupUi(self)
		self._projectData()
		self._fillData()
		self._makeConnections()
		self.exporter = ''
		self.setObjectName( 'exporter_WIN' )
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#20
0
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(CurveScatterUI, self).__init__(parent)
		self.setupUi(self)
		self.connect(self.curveIn_btn, QtCore.SIGNAL("clicked()"), self.fillCurveLE)
		self.connect(self.addObject_btn, QtCore.SIGNAL("clicked()"), self.addObject)
		self.connect(self.removeObject_btn, QtCore.SIGNAL("clicked()"), self.removeObject)
		self.connect(self.cleanList_btn, QtCore.SIGNAL("clicked()"), self.cleanList)
		self.connect(self.createScatter_btn, QtCore.SIGNAL("clicked()"), self.createScatter)
		self.setObjectName( 'curveScatter_WIN' )
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#21
0
	def __init__(self, parent  = uiH.getMayaWindow(), *args):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(BlendShapeUI, self).__init__(parent)
		self.setupUi(self)
		self.setObjectName( 'BlendShapeUI' )
		self.settings = sti.Settings()
		gen = self.settings.General
		self.makeConnections()
		if gen:
			skin = gen[ "skin" ]
			if skin:
				uiH.loadSkin( self, skin )
示例#22
0
	def __init__(self, parent = None):
		if uiH.USEPYQT:
			super(base, self).__init__(uiH.getMayaWindow())
		else:
			super(ControlsUi, self).__init__(uiH.getMayaWindow())
		self.setupUi(self)
		self.setObjectName( 'ControlsUi' )
		self.settings = sti.Settings()
		gen = self.settings.General
		if gen:
			skin = gen[ "skin" ]
			if skin:
				uiH.loadSkin( self, skin )
		self.create_btn.clicked.connect(self.create)
示例#23
0
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(CurveBasedUI, self).__init__(parent)
		self.setupUi(self)
		self.connect(self.sysIn_btn, QtCore.SIGNAL("clicked()"), self.fillSystemLE)
		self.connect(self.curveIn_btn, QtCore.SIGNAL("clicked()"), self.fillCurveLE)
		self.connect(self.meshIn_btn, QtCore.SIGNAL("clicked()"), self.fillMeshLE)
		self.connect(self.skinIn_btn, QtCore.SIGNAL("clicked()"), self.fillSkinLE)
		self.connect(self.createSofts_btn, QtCore.SIGNAL("clicked()"), self.createSofts)
		self.connect(self.softToJoint_btn, QtCore.SIGNAL("clicked()"), self.createJointsOnSofts)
		self.connect(self.deleteSoft_btn, QtCore.SIGNAL("clicked()"), self.deleteSofts)
		self.connect(self.transWOnSel_btn, QtCore.SIGNAL("clicked()"), self.transferWeightToSel)
		self.setObjectName( 'cuveBasedRig_WIN' )
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#24
0
	def __init__(self, parent  = uiH.getMayaWindow(), *args):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(ManagerUI, self).__init__(parent)
		self.setupUi(self)
		self._makeConnections()
		self.manager = tm.Manager()
		self.fillTextures()
		self.setObjectName( 'textureManager_WIN' )
		self.settings = sti.Settings()
		gen = self.settings.General
		
		if gen:
			skin = gen[ "skin" ]
			if skin:
				uiH.loadSkin( self, skin )
示例#25
0
 def __init__(self, parent=uiH.getMayaWindow(), *args):
     if uiH.USEPYQT:
         super(base, self).__init__(parent)
     else:
         super(CurveScatterUI, self).__init__(parent)
     self.setupUi(self)
     self.connect(self.curveIn_btn, QtCore.SIGNAL("clicked()"),
                  self.fillCurveLE)
     self.connect(self.addObject_btn, QtCore.SIGNAL("clicked()"),
                  self.addObject)
     self.connect(self.removeObject_btn, QtCore.SIGNAL("clicked()"),
                  self.removeObject)
     self.connect(self.cleanList_btn, QtCore.SIGNAL("clicked()"),
                  self.cleanList)
     self.connect(self.createScatter_btn, QtCore.SIGNAL("clicked()"),
                  self.createScatter)
     self.setObjectName('curveScatter_WIN')
     uiH.loadSkin(self, 'QTDarkGreen')
示例#26
0
文件: faceUi.py 项目: skarone/PipeL
	def __init__(self, parent  = uiH.getMayaWindow(), *args ):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(faceRigUi, self).__init__(parent)
		self.setupUi(self)
		self.setObjectName( 'faceRigUi' )
		self.connect(self.impRig_btn, QtCore.SIGNAL("clicked()"), self.importRig)
		self.connect(self.addAttrToCurve_btn, QtCore.SIGNAL("clicked()"), self.addAttrToCurve)
		self.connect(self.create_btn, QtCore.SIGNAL("clicked()"), self.create)
		self.connect(self.fillMeshToDeform_btn, QtCore.SIGNAL("clicked()"), self.fillMeshToDeform)
		self.connect(self.fillVertecesToIgnore_btn, QtCore.SIGNAL("clicked()"), self.fillVertecesToIgnore)
		self.connect(self.fillMeshToSkin_btn, QtCore.SIGNAL("clicked()"), self.fillMeshToSkin)
		self.connect(self.fillSkin_btn, QtCore.SIGNAL("clicked()"), self.fillSkin)
		self.connect(self.createSofts_btn, QtCore.SIGNAL("clicked()"), self.createSofts)
		self.connect(self.mirrorSoftRtoL_btn, QtCore.SIGNAL("clicked()"), lambda val = 'r' : self.mirrorSofts( val ))
		self.connect(self.mirrorSoftLtoR_btn, QtCore.SIGNAL("clicked()"), lambda val = 'l' : self.mirrorSofts(val))
		uiH.loadSkin( self, 'QTDarkGreen' )
示例#27
0
	def __init__(self, parent = None):
		if INMAYA:
			if uiH.USEPYQT:
				super(base, self).__init__(uiH.getMayaWindow())
			else:
				super(CacheManagerUI, self).__init__(uiH.getMayaWindow())
		else:
			if uiH.USEPYQT:
				super(base, self).__init__(parent)
			else:
				super(CacheManagerUI, self).__init__(parent)
		self.setupUi(self)
		if not INHOU:
			self.connectToGlobalScale_chb.setVisible( False )
		self._makeConnections()
		self.settings = sti.Settings()
		gen = self.settings.General
		self.serverPath = ''
		if gen:
			basePath = gen[ "basepath" ]
			if basePath:
				prj.BASE_PATH = basePath.replace( '\\', '/' )
			useMayaSubFolder = gen[ "usemayasubfolder" ]
			if useMayaSubFolder == 'True':
				prj.USE_MAYA_SUBFOLDER = True
			else:
				prj.USE_MAYA_SUBFOLDER = False
			self.serverPath = gen[ "serverpath" ]
			self.sendMail = gen[ "sendmail" ]
			self.mailServer = gen[ "mailserver" ]
			self.mailPort = gen[ "mailport" ]
			self.mailsPath = gen[ "departmentspath" ]
		self._fillUi()
		self._loadConfig()
		self.setObjectName( 'cacheManager_WIN' )
		cfl.USE_EXOCORTEX = self.useExocortex_chb.isChecked()
		if gen:
			skin = gen[ "skin" ]
			if skin:
				uiH.loadSkin( self, skin )
示例#28
0
 def __init__(self, project, pose=None, parent=uiH.getMayaWindow()):
     if uiH.USEPYQT:
         super(base, self).__init__(parent)
     else:
         super(PoseThumbnailCreatorUi, self).__init__(parent)
     self.setupUi(self)
     self.project = project
     self.pose = pose
     layout = mui.MQtUtil.fullName(
         long(shiboken.getCppPointer(self.viewport_lay)[0]))
     self.cam = mn.Node('Capture_Pose')
     if not self.cam.exists:
         self.camShape = mn.createNode('camera', ss=True)
         self.camShape.parent.name = 'Capture_Pose'
         mc.viewSet(self.cam.name, p=True)
         self.cam.shape.a.focalLength.v = 100
         self.cam.a.v.v = 0
     self.executer = mc.modelPanel(mbv=False,
                                   camera=self.cam.name,
                                   p=layout)
     mc.modelEditor(self.executer,
                    e=True,
                    grid=0,
                    da="smoothShaded",
                    allObjects=0,
                    nurbsSurfaces=1,
                    polymeshes=1,
                    subdivSurfaces=1)
     #self.viewport_lay.addWidget( uiH.toQtObject( self.executer ) )
     self.setObjectName('PoseThumbnailCreatorUi')
     self._makeConnections()
     self.saveCameraPreset = 0  #READ, 1.. WRITE
     self.settings = sti.Settings()
     gen = self.settings.General
     skin = gen["skin"]
     if skin:
         uiH.loadSkin(self, skin)
     if pose:
         self.poseName_le.setText(pose.name)
     self.fillSections()
示例#29
0
	def __init__(self, fil,parent=uiH.getMayaWindow(), inMaya = True):
		if uiH.USEPYQT:
			super(base, self).__init__(parent)
		else:
			super(MayaFilePropertiesUi, self).__init__(parent)

		self.inMaya = inMaya
		self.setupUi(self)
		self._file = fil
		if fil.exists:
			self.filepath_la.setText( str(fil.path) )
			self.setWindowTitle( str( fil.basename + ' Properties' ) )
			self.filedate_la.setText( str(fil.date))
		self.manager = tm.Manager()
		if inMaya:
			pass
		else:
			tim = fil.time
			self.time_startbase_la.setText( str(tim['ast']) )
			self.time_start_la.setText( str(tim['min']) )
			self.time_end_la.setText( str(tim['max']) )
			self.time_endbase_la.setText( str(tim['aet']) )
		self.updateUi()
		QtCore.QObject.connect( self.searchPath_le, QtCore.SIGNAL( "textEdited (const QString&)" ), self.search )
		QtCore.QObject.connect( self.textures_tw, QtCore.SIGNAL( "itemClicked (QTableWidgetItem *)" ), self.selectNode )
		self.connect(self.moveToFolder_btn, QtCore.SIGNAL("clicked()"), self.moveToFolder)
		self.connect(self.replacePath_btn, QtCore.SIGNAL("clicked()"), self.replacePath)
		self.connect(self.toTx_btn, QtCore.SIGNAL("clicked()"), self.toTx)
		self.connect(self.createVersions_btn, QtCore.SIGNAL("clicked()"), self.createVersions)
		self.connect(self.toPng_btn, QtCore.SIGNAL("clicked()"), self.toPng)
		self.connect(self.renameTexture_btn, QtCore.SIGNAL("clicked()"), self.renameTextures)
		self.connect(self.createTx_btn, QtCore.SIGNAL("clicked()"), self.createTx)
		self.setObjectName( 'MayaFilePropertiesUi' )
		self.settings = sti.Settings()
		gen = self.settings.General
		if gen:
			skin = gen[ "skin" ]
			if skin:
				uiH.loadSkin( self, skin )
示例#30
0
文件: taskUi.py 项目: skarone/PipeL
	def __init__(self,projectName, parent  = uiH.getMayaWindow() ):
		if INMAYA:
			if uiH.USEPYQT:
				super(base, self).__init__(parent)
			else:
				super(TasksUi, self).__init__(parent)
		else:
			if uiH.USEPYQT:
				super(base, self).__init__()
			else:
				super(TasksUi, self).__init__()
		self.setupUi(self)
		self.setObjectName( 'TasksUi' )
		self.baseProject = projectName
		self.project = projectName
		self.settings = sti.Settings()
		self._makeConnections()
		self.currentTask = None
		self.tasks_tw.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
		self.tasks_tw.customContextMenuRequested.connect(self.showMenu)
		skin = self.settings.General[ "skin" ]
		if skin:
			uiH.loadSkin( self, skin )