def __showProjectProperties(self): """ Private method to show the data of a project entry. """ itm = self.currentItem() if itm is not None: filename = unicode(itm.data(Qt.UserRole).toString()) if filename: project = self.multiProject.getProject(filename) if project is not None: dlg = AddProjectDialog(self, project = project) if dlg.exec_() == QDialog.Accepted: name, filename, isMaster, description = dlg.getData() project = { 'name' : name, 'file' : filename, 'master' : isMaster, 'description' : description, } self.multiProject.changeProjectProperties(project)
def addProject(self, startdir = None): """ Public slot used to add files to the project. @param startdir start directory for the selection dialog """ if startdir is None: startdir = self.ppath dlg = AddProjectDialog(self.ui, startdir=startdir) if dlg.exec_() == QDialog.Accepted: name, filename, isMaster, description = dlg.getData() # step 1: check, if project was already added for project in self.projects: if project['file'] == filename: return # step 2: check, if master should be changed if isMaster: for project in self.projects: if project['master']: project['master'] = False self.emit(SIGNAL("projectDataChanged"), project) self.setDirty(True) break # step 3: add the project entry project = { 'name' : name, 'file' : filename, 'master' : isMaster, 'description' : description, } self.projects.append(project) self.emit(SIGNAL("projectAdded"), project) self.setDirty(True)