Wed, 17 Aug 2016 17:52:52 +0200
Continued cleaning up some code related to the Project class and data structures.
--- a/E5XML/ProjectReader.py Wed Aug 17 12:32:58 2016 +0200 +++ b/E5XML/ProjectReader.py Wed Aug 17 17:52:52 2016 +0200 @@ -70,23 +70,22 @@ self.project.pdata["PROJECTTYPE"] = [ self.readElementText()] elif self.name() == "Description": - self.project.pdata["DESCRIPTION"] = [ - self.readElementText()] + self.project.pdata["DESCRIPTION"] = self.readElementText() elif self.name() == "Version": - self.project.pdata["VERSION"] = [self.readElementText()] + self.project.pdata["VERSION"] = self.readElementText() elif self.name() == "Author": self.project.pdata["AUTHOR"] = [self.readElementText()] elif self.name() == "Email": self.project.pdata["EMAIL"] = [self.readElementText()] elif self.name() == "TranslationPattern": self.project.pdata["TRANSLATIONPATTERN"] = \ - [Utilities.toNativeSeparators(self.readElementText())] + Utilities.toNativeSeparators(self.readElementText()) elif self.name() == "TranslationsBinPath": self.project.pdata["TRANSLATIONSBINPATH"] = \ - [Utilities.toNativeSeparators(self.readElementText())] + Utilities.toNativeSeparators(self.readElementText()) elif self.name() == "Eol": - self.project.pdata["EOL"] = [ - int(self.attribute("index", "0"))] + self.project.pdata["EOL"] = \ + int(self.attribute("index", "0")) elif self.name() == "Sources": self.__readFiles("Sources", "Source", "SOURCES") elif self.name() == "Forms": @@ -106,7 +105,7 @@ self.__readFiles("Others", "Other", "OTHERS") elif self.name() == "MainScript": self.project.pdata["MAINSCRIPT"] = \ - [Utilities.toNativeSeparators(self.readElementText())] + Utilities.toNativeSeparators(self.readElementText()) elif self.name() == "Vcs": self.__readVcs() elif self.name() == "FiletypeAssociations": @@ -185,11 +184,11 @@ if self.isStartElement(): if self.name() == "VcsType": - self.project.pdata["VCS"] = [self.readElementText()] + self.project.pdata["VCS"] = self.readElementText() elif self.name() == "VcsOptions": - self.project.pdata["VCSOPTIONS"] = [self._readBasics()] + self.project.pdata["VCSOPTIONS"] = self._readBasics() elif self.name() == "VcsOtherData": - self.project.pdata["VCSOTHERDATA"] = [self._readBasics()] + self.project.pdata["VCSOTHERDATA"] = self._readBasics() else: self.raiseUnexpectedStartTag(self.name())
--- a/E5XML/ProjectWriter.py Wed Aug 17 12:32:58 2016 +0200 +++ b/E5XML/ProjectWriter.py Wed Aug 17 17:52:52 2016 +0200 @@ -85,10 +85,10 @@ # do description if self.pdata["DESCRIPTION"]: - self.writeTextElement("Description", self.pdata["DESCRIPTION"][0]) + self.writeTextElement("Description", self.pdata["DESCRIPTION"]) # do version, author and email - self.writeTextElement("Version", self.pdata["VERSION"][0]) + self.writeTextElement("Version", self.pdata["VERSION"]) self.writeTextElement("Author", self.pdata["AUTHOR"][0]) self.writeTextElement("Email", self.pdata["EMAIL"][0]) @@ -97,19 +97,19 @@ self.writeTextElement( "TranslationPattern", Utilities.fromNativeSeparators( - self.pdata["TRANSLATIONPATTERN"][0])) + self.pdata["TRANSLATIONPATTERN"])) # do the binary translations path if self.pdata["TRANSLATIONSBINPATH"]: self.writeTextElement( "TranslationsBinPath", Utilities.fromNativeSeparators( - self.pdata["TRANSLATIONSBINPATH"][0])) + self.pdata["TRANSLATIONSBINPATH"])) # do the eol setting - if self.pdata["EOL"] and self.pdata["EOL"][0]: + if self.pdata["EOL"] >= 0: self.writeEmptyElement("Eol") - self.writeAttribute("index", str(int(self.pdata["EOL"][0]))) + self.writeAttribute("index", str(int(self.pdata["EOL"]))) # do the sources self.writeStartElement("Sources") @@ -165,16 +165,16 @@ if self.pdata["MAINSCRIPT"]: self.writeTextElement( "MainScript", - Utilities.fromNativeSeparators(self.pdata["MAINSCRIPT"][0])) + Utilities.fromNativeSeparators(self.pdata["MAINSCRIPT"])) # do the vcs stuff self.writeStartElement("Vcs") if self.pdata["VCS"]: - self.writeTextElement("VcsType", self.pdata["VCS"][0]) + self.writeTextElement("VcsType", self.pdata["VCS"]) if self.pdata["VCSOPTIONS"]: - self.writeBasics("VcsOptions", self.pdata["VCSOPTIONS"][0]) + self.writeBasics("VcsOptions", self.pdata["VCSOPTIONS"]) if self.pdata["VCSOTHERDATA"]: - self.writeBasics("VcsOtherData", self.pdata["VCSOTHERDATA"][0]) + self.writeBasics("VcsOtherData", self.pdata["VCSOTHERDATA"]) self.writeEndElement() # do the filetype associations
--- a/Plugins/VcsPlugins/vcsPySvn/subversion.py Wed Aug 17 12:32:58 2016 +0200 +++ b/Plugins/VcsPlugins/vcsPySvn/subversion.py Wed Aug 17 17:52:52 2016 +0200 @@ -238,7 +238,7 @@ cwdIsPpath = False shutil.rmtree(project.ppath, True) os.rename(tmpProjectDir, project.ppath) - project.pdata["VCS"] = ['None'] + project.pdata["VCS"] = 'None' project.vcs = None project.setDirty(True) project.saveProject()
--- a/Plugins/VcsPlugins/vcsSubversion/subversion.py Wed Aug 17 12:32:58 2016 +0200 +++ b/Plugins/VcsPlugins/vcsSubversion/subversion.py Wed Aug 17 17:52:52 2016 +0200 @@ -251,7 +251,7 @@ cwdIsPpath = False shutil.rmtree(project.ppath, True) os.rename(tmpProjectDir, project.ppath) - project.pdata["VCS"] = ['None'] + project.pdata["VCS"] = 'None' project.vcs = None project.setDirty(True) project.saveProject()
--- a/Project/Project.py Wed Aug 17 12:32:58 2016 +0200 +++ b/Project/Project.py Wed Aug 17 17:52:52 2016 +0200 @@ -406,22 +406,22 @@ self.dbgAutoContinue = True self.pdata = { - # TODO: change these to use lists only where neccessary - "DESCRIPTION": [], - "VERSION": [], + "DESCRIPTION": "", + "VERSION": "", "SOURCES": [], "FORMS": [], "RESOURCES": [], "INTERFACES": [], "OTHERS": [], "TRANSLATIONS": [], - "TRANSLATIONPATTERN": [], - "TRANSLATIONSBINPATH": [], "TRANSLATIONEXCEPTIONS": [], - "MAINSCRIPT": [], - "VCS": [], - "VCSOPTIONS": [], - "VCSOTHERDATA": [], + "TRANSLATIONPATTERN": "", + "TRANSLATIONSBINPATH": "", + "MAINSCRIPT": "", + "VCS": "None", + "VCSOPTIONS": {}, + "VCSOTHERDATA": {}, + # TODO: change these to use lists only where neccessary "AUTHOR": [''], "EMAIL": [''], "HASH": [''], @@ -439,7 +439,7 @@ "PACKAGERSPARMS": {}, "DOCUMENTATIONPARMS": {}, "OTHERTOOLSPARMS": {}, - "EOL": [-1], + "EOL": -1, } self.__initDebugProperties() @@ -708,12 +708,12 @@ self.__syncRecent() if res: - if len(self.pdata["TRANSLATIONPATTERN"]) == 1: + if self.pdata["TRANSLATIONPATTERN"]: self.translationsRoot = \ - self.pdata["TRANSLATIONPATTERN"][0].split("%language%")[0] - elif len(self.pdata["MAINSCRIPT"]) == 1: + self.pdata["TRANSLATIONPATTERN"].split("%language%")[0] + elif self.pdata["MAINSCRIPT"]: self.translationsRoot = os.path.splitext( - self.pdata["MAINSCRIPT"][0])[0] + self.pdata["MAINSCRIPT"])[0] if os.path.isdir(os.path.join(self.ppath, self.translationsRoot)): dn = self.translationsRoot else: @@ -771,10 +771,10 @@ @return flag indicating success """ if self.vcs is not None: - self.pdata["VCSOPTIONS"] = [ - copy.deepcopy(self.vcs.vcsGetOptions())] - self.pdata["VCSOTHERDATA"] = [ - copy.deepcopy(self.vcs.vcsGetOtherData())] + self.pdata["VCSOPTIONS"] = \ + copy.deepcopy(self.vcs.vcsGetOptions()) + self.pdata["VCSOTHERDATA"] = \ + copy.deepcopy(self.vcs.vcsGetOtherData()) if not self.pdata["HASH"][0]: hash = str(QCryptographicHash.hash( @@ -1239,10 +1239,7 @@ @return translation pattern (string) """ - if self.pdata["TRANSLATIONPATTERN"]: - return self.pdata["TRANSLATIONPATTERN"][0] - else: - return "" + return self.pdata["TRANSLATIONPATTERN"] def setTranslationPattern(self, pattern): """ @@ -1251,17 +1248,13 @@ @param pattern translation pattern @type str """ - if pattern: - self.pdata["TRANSLATIONPATTERN"] = [pattern] - else: - self.pdata["TRANSLATIONPATTERN"] = [] + self.pdata["TRANSLATIONPATTERN"] = pattern def addLanguage(self): """ Public slot used to add a language to the project. """ - if len(self.pdata["TRANSLATIONPATTERN"]) == 0 or \ - self.pdata["TRANSLATIONPATTERN"][0] == '': + if not self.pdata["TRANSLATIONPATTERN"]: E5MessageBox.critical( self.ui, self.tr("Add Language"), @@ -1276,7 +1269,7 @@ if self.pdata["PROJECTTYPE"][0] in \ ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E6Plugin", "PySide", "PySideC"]: - langFile = self.pdata["TRANSLATIONPATTERN"][0]\ + langFile = self.pdata["TRANSLATIONPATTERN"]\ .replace("%language%", lang) self.appendFile(langFile) self.projectLanguageAddedByCode.emit(lang) @@ -1305,8 +1298,7 @@ """ Public slot to check the language files after a release process. """ - tbPath = self.pdata["TRANSLATIONSBINPATH"] and \ - self.pdata["TRANSLATIONSBINPATH"][0] or "" + tbPath = self.pdata["TRANSLATIONSBINPATH"] for langFile in self.pdata["TRANSLATIONS"][:]: qmFile = self.__binaryTranslationFile(langFile) if qmFile: @@ -1335,7 +1327,7 @@ try: if self.pdata["TRANSLATIONSBINPATH"]: qmFile = self.getRelativePath( - os.path.join(self.pdata["TRANSLATIONSBINPATH"][0], + os.path.join(self.pdata["TRANSLATIONSBINPATH"], os.path.basename(qmFile))) self.pdata["TRANSLATIONS"].remove(qmFile) self.__model.removeItem(qmFile) @@ -1377,7 +1369,7 @@ try: if self.pdata["TRANSLATIONSBINPATH"]: qmFile = self.getRelativePath( - os.path.join(self.pdata["TRANSLATIONSBINPATH"][0], + os.path.join(self.pdata["TRANSLATIONSBINPATH"], os.path.basename(qmFile))) fn = os.path.join(self.ppath, qmFile) if os.path.exists(fn): @@ -1767,11 +1759,11 @@ """ if self.pdata["MAINSCRIPT"]: ofn = self.getRelativePath(oldfn) - if ofn != self.pdata["MAINSCRIPT"][0]: + if ofn != self.pdata["MAINSCRIPT"]: return fn = self.getRelativePath(newfn) - self.pdata["MAINSCRIPT"] = [fn] + self.pdata["MAINSCRIPT"] = fn self.setDirty(True) def renameFile(self, oldfn, newfn=None): @@ -2118,7 +2110,7 @@ if dlg.exec_() == QDialog.Accepted: self.closeProject() dlg.storeData() - self.pdata["VCS"] = ['None'] + self.pdata["VCS"] = 'None' self.opened = True if not self.pdata["FILETYPES"]: self.initFileTypes() @@ -2142,8 +2134,7 @@ self.pluginGrp.setEnabled( self.pdata["PROJECTTYPE"][0] in ["E6Plugin"]) self.addLanguageAct.setEnabled( - len(self.pdata["TRANSLATIONPATTERN"]) > 0 and - self.pdata["TRANSLATIONPATTERN"][0] != '') + bool(self.pdata["TRANSLATIONPATTERN"])) self.projectAboutToBeCreated.emit() @@ -2176,13 +2167,12 @@ f.close() self.appendFile(fn, True) # create an empty main script file, if a name was given - if len(self.pdata["MAINSCRIPT"]) and \ - self.pdata["MAINSCRIPT"][0]: - if not os.path.isabs(self.pdata["MAINSCRIPT"][0]): + if self.pdata["MAINSCRIPT"]: + if not os.path.isabs(self.pdata["MAINSCRIPT"]): ms = os.path.join( - self.ppath, self.pdata["MAINSCRIPT"][0]) + self.ppath, self.pdata["MAINSCRIPT"]) else: - ms = self.pdata["MAINSCRIPT"][0] + ms = self.pdata["MAINSCRIPT"] f = open(ms, "w") f.close() self.appendFile(ms, True) @@ -2193,7 +2183,7 @@ os.makedirs(tpd) if self.pdata["TRANSLATIONSBINPATH"]: tpd = os.path.join( - self.ppath, self.pdata["TRANSLATIONSBINPATH"][0]) + self.ppath, self.pdata["TRANSLATIONSBINPATH"]) if not os.path.isdir(tpd): os.makedirs(tpd) @@ -2216,7 +2206,7 @@ return try: - ms = os.path.join(self.ppath, self.pdata["MAINSCRIPT"][0]) + ms = os.path.join(self.ppath, self.pdata["MAINSCRIPT"]) if not os.path.exists(ms): try: f = open(ms, "w") @@ -2279,7 +2269,7 @@ vcsSystem = "None" else: vcsSystem = vcsData[0][1] - self.pdata["VCS"] = [vcsSystem] + self.pdata["VCS"] = vcsSystem self.vcs = self.initVCS() self.setDirty(True) if self.vcs is not None: @@ -2312,7 +2302,7 @@ self.saveProject() self.vcs.vcsAdd(self.pfile) else: - self.pdata["VCS"] = ['None'] + self.pdata["VCS"] = 'None' self.saveProject() break @@ -2338,16 +2328,16 @@ break else: vcsSystem = "None" - self.pdata["VCS"] = [vcsSystem] + self.pdata["VCS"] = vcsSystem else: - self.pdata["VCS"] = ['None'] + self.pdata["VCS"] = 'None' self.vcs = self.initVCS() if self.vcs is not None: vcsdlg = self.vcs.vcsOptionsDialog(self, self.name) if vcsdlg.exec_() == QDialog.Accepted: vcsDataDict = vcsdlg.getData() else: - self.pdata["VCS"] = ['None'] + self.pdata["VCS"] = 'None' self.vcs = self.initVCS() self.setDirty(True) if self.vcs is not None: @@ -2408,11 +2398,11 @@ tpd = self.ppath tslist = [] if self.pdata["TRANSLATIONPATTERN"]: - pattern = os.path.basename(self.pdata["TRANSLATIONPATTERN"][0]) + pattern = os.path.basename(self.pdata["TRANSLATIONPATTERN"]) if "%language%" in pattern: pattern = pattern.replace("%language%", "*") else: - tpd = self.pdata["TRANSLATIONPATTERN"][0].split( + tpd = self.pdata["TRANSLATIONPATTERN"].split( "%language%")[0] else: pattern = "*.ts" @@ -2426,10 +2416,10 @@ mainscriptname = os.path.splitext(mainscript)[0] or \ os.path.basename(tslist[0]).split('_')[0] self.pdata["TRANSLATIONPATTERN"] = \ - [os.path.join(os.path.dirname(tslist[0]), + os.path.join(os.path.dirname(tslist[0]), "{0}_%language%{1}".format( os.path.basename(tslist[0]).split('_')[0], - os.path.splitext(tslist[0])[1]))] + os.path.splitext(tslist[0])[1])) else: pattern, ok = QInputDialog.getText( None, @@ -2440,11 +2430,11 @@ QLineEdit.Normal, tslist[0]) if pattern: - self.pdata["TRANSLATIONPATTERN"] = [pattern] + self.pdata["TRANSLATIONPATTERN"] = pattern if self.pdata["TRANSLATIONPATTERN"]: - self.pdata["TRANSLATIONPATTERN"][0] = \ - self.getRelativePath(self.pdata["TRANSLATIONPATTERN"][0]) - pattern = self.pdata["TRANSLATIONPATTERN"][0]\ + self.pdata["TRANSLATIONPATTERN"] = \ + self.getRelativePath(self.pdata["TRANSLATIONPATTERN"]) + pattern = self.pdata["TRANSLATIONPATTERN"]\ .replace("%language%", "*") for ts in tslist: if fnmatch.fnmatch(ts, pattern): @@ -2452,24 +2442,21 @@ self.projectLanguageAdded.emit(ts) if self.pdata["TRANSLATIONSBINPATH"]: tpd = os.path.join(self.ppath, - self.pdata["TRANSLATIONSBINPATH"][0]) + self.pdata["TRANSLATIONSBINPATH"]) pattern = os.path.basename( - self.pdata["TRANSLATIONPATTERN"][0])\ + self.pdata["TRANSLATIONPATTERN"])\ .replace("%language%", "*") pattern = self.__binaryTranslationFile(pattern) qmlist = Utilities.direntries(tpd, True, pattern) for qm in qmlist: self.pdata["TRANSLATIONS"].append(qm) self.projectLanguageAdded.emit(qm) - if len(self.pdata["MAINSCRIPT"]) == 0 or \ - len(self.pdata["MAINSCRIPT"][0]) == 0: + if not self.pdata["MAINSCRIPT"]: if self.pdata["PROGLANGUAGE"][0] in \ ["Python", "Python2", "Python3"]: - self.pdata["MAINSCRIPT"] = [ - '{0}.py'.format(mainscriptname)] + self.pdata["MAINSCRIPT"] = '{0}.py'.format(mainscriptname) elif self.pdata["PROGLANGUAGE"][0] == "Ruby": - self.pdata["MAINSCRIPT"] = [ - '{0}.rb'.format(mainscriptname)] + self.pdata["MAINSCRIPT"] = '{0}.rb'.format(mainscriptname) self.setDirty(True) QApplication.restoreOverrideCursor() @@ -2484,7 +2471,7 @@ dlg.storeData() self.setDirty(True) try: - ms = os.path.join(self.ppath, self.pdata["MAINSCRIPT"][0]) + ms = os.path.join(self.ppath, self.pdata["MAINSCRIPT"]) if os.path.exists(ms): self.appendFile(ms) except IndexError: @@ -2507,7 +2494,7 @@ if self.pdata["TRANSLATIONSBINPATH"]: tp = os.path.join( - self.ppath, self.pdata["TRANSLATIONSBINPATH"][0]) + self.ppath, self.pdata["TRANSLATIONSBINPATH"]) if not os.path.isdir(tp): os.makedirs(tp) if tp != self.ppath and tp not in self.subdirs: @@ -2526,7 +2513,7 @@ """ Private slot to display the user specific properties dialog. """ - vcsSystem = self.pdata["VCS"] and self.pdata["VCS"][0] or None + vcsSystem = self.pdata["VCS"] or None vcsSystemOverride = self.pudata["VCSOVERRIDE"] or None from .UserPropertiesDialog import UserPropertiesDialog @@ -2535,7 +2522,7 @@ dlg.storeData() if (self.pdata["VCS"] and - self.pdata["VCS"][0] != vcsSystem) or \ + self.pdata["VCS"] != vcsSystem) or \ (self.pudata["VCSOVERRIDE"] and self.pudata["VCSOVERRIDE"] != vcsSystemOverride) or \ (vcsSystemOverride is not None and @@ -2706,13 +2693,13 @@ vcsSystem = "None" else: vcsSystem = vcsData[0][0] - self.pdata["VCS"] = [vcsSystem] + self.pdata["VCS"] = vcsSystem self.vcs = self.initVCS() self.setDirty(True) if self.vcs is not None and \ (self.vcs.vcsRegisteredState(self.ppath) != self.vcs.canBeCommitted): - self.pdata["VCS"] = ['None'] + self.pdata["VCS"] = 'None' self.vcs = self.initVCS() self.closeAct.setEnabled(True) self.saveasAct.setEnabled(True) @@ -2734,8 +2721,7 @@ self.pdata["PROJECTTYPE"][0] in [ "E6Plugin"]) self.addLanguageAct.setEnabled( - len(self.pdata["TRANSLATIONPATTERN"]) > 0 and - self.pdata["TRANSLATIONPATTERN"][0] != '') + bool(self.pdata["TRANSLATIONPATTERN"])) self.__model.projectOpened() self.projectOpenedHooks.emit() @@ -2752,10 +2738,10 @@ if restoreSession: # open the main script - if len(self.pdata["MAINSCRIPT"]) == 1: + if self.pdata["MAINSCRIPT"]: self.sourceFile.emit( os.path.join( - self.ppath, self.pdata["MAINSCRIPT"][0])) + self.ppath, self.pdata["MAINSCRIPT"])) # open a project session file being quiet about errors if reopen: @@ -3051,11 +3037,11 @@ (boolean) @return filename of the projects main script (string) """ - if len(self.pdata["MAINSCRIPT"]): + if self.pdata["MAINSCRIPT"]: if normalized: - return os.path.join(self.ppath, self.pdata["MAINSCRIPT"][0]) + return os.path.join(self.ppath, self.pdata["MAINSCRIPT"]) else: - return self.pdata["MAINSCRIPT"][0] + return self.pdata["MAINSCRIPT"] else: return None @@ -3314,8 +3300,8 @@ @return eol string (string) """ - if self.pdata["EOL"][0] >= 0: - return self.eols[self.pdata["EOL"][0]] + if self.pdata["EOL"] >= 0: + return self.eols[self.pdata["EOL"]] else: eolMode = Preferences.getEditor("EOLMode") if eolMode == QsciScintilla.EolWindows: @@ -3334,7 +3320,7 @@ @return flag indicating the usage of system eol (boolean) """ - return self.pdata["EOL"][0] == 0 + return self.pdata["EOL"] == 0 def isProjectFile(self, fn): """ @@ -4145,7 +4131,7 @@ except OSError: newSources = [] if self.pdata["TRANSLATIONPATTERN"]: - pattern = self.pdata["TRANSLATIONPATTERN"][0]\ + pattern = self.pdata["TRANSLATIONPATTERN"]\ .replace("%language%", "*") else: pattern = "*.ts" @@ -4320,13 +4306,12 @@ override = False if vcsSystem is None: - if len(self.pdata["VCS"]): - if self.pdata["VCS"][0] != 'None': - vcsSystem = self.pdata["VCS"][0] + if self.pdata["VCS"] and self.pdata["VCS"] != 'None': + vcsSystem = self.pdata["VCS"] else: forProject = False - if self.pdata["VCS"] and self.pdata["VCS"][0] != 'None': + if self.pdata["VCS"] and self.pdata["VCS"] != 'None': if self.pudata["VCSOVERRIDE"] and \ not nooverride: vcsSystem = self.pudata["VCSOVERRIDE"] @@ -4368,7 +4353,7 @@ "<p>{1}</p>").format(vcsSystem, msg)) vcs = None if forProject: - self.pdata["VCS"][0] = 'None' + self.pdata["VCS"] = 'None' self.setDirty(True) else: vcs.vcsInitConfig(self) @@ -4377,13 +4362,13 @@ # set the vcs options if vcs.vcsSupportCommandOptions(): try: - vcsopt = copy.deepcopy(self.pdata["VCSOPTIONS"][0]) + vcsopt = copy.deepcopy(self.pdata["VCSOPTIONS"]) vcs.vcsSetOptions(vcsopt) except LookupError: pass # set vcs specific data try: - vcsother = copy.deepcopy(self.pdata["VCSOTHERDATA"][0]) + vcsother = copy.deepcopy(self.pdata["VCSOTHERDATA"]) vcs.vcsSetOtherData(vcsother) except LookupError: pass @@ -4789,8 +4774,7 @@ """Aborting...</p>""")) return - if len(self.pdata["MAINSCRIPT"]) == 0 or \ - len(self.pdata["MAINSCRIPT"][0]) == 0: + if not self.pdata["MAINSCRIPT"]: E5MessageBox.critical( self.ui, self.tr("Create Plugin Archive"), @@ -4814,7 +4798,7 @@ return archive = os.path.join( - self.ppath, self.pdata["MAINSCRIPT"][0].replace(".py", ".zip")) + self.ppath, self.pdata["MAINSCRIPT"].replace(".py", ".zip")) try: archiveFile = zipfile.ZipFile(archive, "w") except IOError as why: @@ -4832,17 +4816,17 @@ try: self.__createZipDirEntries( os.path.split(name)[0], archiveFile) - if snapshot and name == self.pdata["MAINSCRIPT"][0]: + if snapshot and name == self.pdata["MAINSCRIPT"]: snapshotSource, version = self.__createSnapshotSource( os.path.join(self.ppath, - self.pdata["MAINSCRIPT"][0])) + self.pdata["MAINSCRIPT"])) archiveFile.writestr(name, snapshotSource) else: archiveFile.write(os.path.join(self.ppath, name), name) - if name == self.pdata["MAINSCRIPT"][0]: + if name == self.pdata["MAINSCRIPT"]: version = self.__pluginExtractVersion( os.path.join(self.ppath, - self.pdata["MAINSCRIPT"][0])) + self.pdata["MAINSCRIPT"])) except OSError as why: E5MessageBox.critical( self.ui,
--- a/Project/ProjectTranslationsBrowser.py Wed Aug 17 12:32:58 2016 +0200 +++ b/Project/ProjectTranslationsBrowser.py Wed Aug 17 17:52:52 2016 +0200 @@ -775,7 +775,7 @@ for lang in langs if lang.fileName().endswith('.ts')] else: try: - pattern = self.project.pdata["TRANSLATIONPATTERN"][0]\ + pattern = self.project.pdata["TRANSLATIONPATTERN"]\ .replace("%language%", "*") langs = [lang for lang in self.project.pdata["TRANSLATIONS"] if fnmatch.fnmatch(lang, pattern)] @@ -1149,11 +1149,10 @@ self.tr("Translation file release"), self.tr("The release of the translation files (*.qm)" " was successful.")) - if self.project.pdata["TRANSLATIONSBINPATH"] and \ - self.project.pdata["TRANSLATIONSBINPATH"][0]: + if self.project.pdata["TRANSLATIONSBINPATH"]: target = os.path.join( self.project.ppath, - self.project.pdata["TRANSLATIONSBINPATH"][0]) + self.project.pdata["TRANSLATIONSBINPATH"]) for langFile in self.project.pdata["TRANSLATIONS"][:]: if langFile.endswith('.ts'): qmFile = os.path.join(self.project.ppath,
--- a/Project/PropertiesDialog.py Wed Aug 17 12:32:58 2016 +0200 +++ b/Project/PropertiesDialog.py Wed Aug 17 17:52:52 2016 +0200 @@ -87,12 +87,12 @@ self.projectTypeComboBox.setCurrentIndex(curIndex) self.dirPicker.setText(self.project.ppath) try: - self.versionEdit.setText(self.project.pdata["VERSION"][0]) + self.versionEdit.setText(self.project.pdata["VERSION"]) except IndexError: pass try: self.mainscriptPicker.setText( - self.project.pdata["MAINSCRIPT"][0]) + self.project.pdata["MAINSCRIPT"]) except IndexError: pass try: @@ -105,11 +105,11 @@ pass try: self.descriptionEdit.setPlainText( - self.project.pdata["DESCRIPTION"][0]) + self.project.pdata["DESCRIPTION"]) except LookupError: pass try: - self.eolComboBox.setCurrentIndex(self.project.pdata["EOL"][0]) + self.eolComboBox.setCurrentIndex(self.project.pdata["EOL"]) except IndexError: pass self.vcsLabel.show() @@ -118,7 +118,7 @@ .getPluginDisplayStrings("version_control") try: vcsSystemDisplay = \ - vcsSystemsDict[self.project.pdata["VCS"][0]] + vcsSystemsDict[self.project.pdata["VCS"]] except KeyError: vcsSystemDisplay = "None" self.vcsLabel.setText( @@ -277,19 +277,18 @@ self.project.pfile = os.path.join(self.project.ppath, fn) else: self.project.pfile = "" - self.project.pdata["VERSION"] = [self.versionEdit.text()] + self.project.pdata["VERSION"] = self.versionEdit.text() fn = self.mainscriptPicker.text() if fn: fn = self.project.getRelativePath(fn) - self.project.pdata["MAINSCRIPT"] = [fn] + self.project.pdata["MAINSCRIPT"] = fn self.project.translationsRoot = os.path.splitext(fn)[0] else: - self.project.pdata["MAINSCRIPT"] = [] + self.project.pdata["MAINSCRIPT"] = "" self.project.translationsRoot = "" self.project.pdata["AUTHOR"] = [self.authorEdit.text()] self.project.pdata["EMAIL"] = [self.emailEdit.text()] - self.project.pdata["DESCRIPTION"] = \ - [self.descriptionEdit.toPlainText()] + self.project.pdata["DESCRIPTION"] = self.descriptionEdit.toPlainText() self.project.pdata["PROGLANGUAGE"] = \ [self.languageComboBox.currentText()] self.project.pdata["MIXEDLANGUAGE"] = \ @@ -297,7 +296,7 @@ projectType = self.getProjectType() if projectType is not None: self.project.pdata["PROJECTTYPE"] = [projectType] - self.project.pdata["EOL"] = [self.eolComboBox.currentIndex()] + self.project.pdata["EOL"] = self.eolComboBox.currentIndex() self.project.vcsRequested = self.vcsCheckBox.isChecked()
--- a/Project/TranslationPropertiesDialog.py Wed Aug 17 12:32:58 2016 +0200 +++ b/Project/TranslationPropertiesDialog.py Wed Aug 17 17:52:52 2016 +0200 @@ -74,16 +74,10 @@ Public method to initialize the dialogs data. """ self.buttonBox.button(QDialogButtonBox.Ok).setEnabled(False) - try: - self.transPatternPicker.setText( - self.project.pdata["TRANSLATIONPATTERN"][0]) - except IndexError: - pass - try: - self.transBinPathPicker.setText( - self.project.pdata["TRANSLATIONSBINPATH"][0]) - except IndexError: - pass + self.transPatternPicker.setText( + self.project.pdata["TRANSLATIONPATTERN"]) + self.transBinPathPicker.setText( + self.project.pdata["TRANSLATIONSBINPATH"]) self.exceptionsList.clear() for texcept in self.project.pdata["TRANSLATIONEXCEPTIONS"]: if texcept: @@ -201,16 +195,16 @@ tp = self.transPatternPicker.text() if tp: tp = self.project.getRelativePath(tp) - self.project.pdata["TRANSLATIONPATTERN"] = [tp] + self.project.pdata["TRANSLATIONPATTERN"] = tp self.project.translationsRoot = tp.split("%language%")[0] else: - self.project.pdata["TRANSLATIONPATTERN"] = [] + self.project.pdata["TRANSLATIONPATTERN"] = "" tp = self.transBinPathPicker.text() if tp: tp = self.project.getRelativePath(tp) - self.project.pdata["TRANSLATIONSBINPATH"] = [tp] + self.project.pdata["TRANSLATIONSBINPATH"] = tp else: - self.project.pdata["TRANSLATIONSBINPATH"] = [] + self.project.pdata["TRANSLATIONSBINPATH"] = "" exceptList = [] for i in range(self.exceptionsList.count()): exceptList.append(self.exceptionsList.item(i).text())
--- a/Project/UserPropertiesDialog.py Wed Aug 17 12:32:58 2016 +0200 +++ b/Project/UserPropertiesDialog.py Wed Aug 17 17:52:52 2016 +0200 @@ -51,7 +51,7 @@ e5App().getObject("PluginManager")\ .getVcsSystemIndicators().items(): for vcsSystem, vcsSystemDisplay in vcsData: - if vcsSystem == self.project.pdata["VCS"][0]: + if vcsSystem == self.project.pdata["VCS"]: found = True break @@ -67,7 +67,7 @@ if self.project.pudata["VCSOVERRIDE"]: vcsSystem = self.project.pudata["VCSOVERRIDE"] else: - vcsSystem = self.project.pdata["VCS"][0] + vcsSystem = self.project.pdata["VCS"] index = self.vcsInterfaceCombo.findData(vcsSystem) if index == -1: index = 0 @@ -92,12 +92,12 @@ vcsSystem = self.vcsInterfaceCombo\ .itemData(self.vcsInterfaceCombo.currentIndex()) if self.vcsInterfaceDefaultCheckBox.isChecked(): - if vcsSystem != self.project.pdata["VCS"][0]: - self.project.pdata["VCS"] = [vcsSystem] + if vcsSystem != self.project.pdata["VCS"]: + self.project.pdata["VCS"] = vcsSystem self.project.pudata["VCSOVERRIDE"] = "" self.project.setDirty(True) else: - if vcsSystem != self.project.pdata["VCS"][0]: + if vcsSystem != self.project.pdata["VCS"]: self.project.pudata["VCSOVERRIDE"] = vcsSystem else: self.project.pudata["VCSOVERRIDE"] = ""
--- a/VCS/ProjectHelper.py Wed Aug 17 12:32:58 2016 +0200 +++ b/VCS/ProjectHelper.py Wed Aug 17 17:52:52 2016 +0200 @@ -203,13 +203,13 @@ if not self.project.closeProject(): return - self.project.pdata["VCS"] = [vcsSystem] + self.project.pdata["VCS"] = vcsSystem self.project.vcs = self.project.initVCS(vcsSystem) if self.project.vcs is not None: vcsdlg = self.project.vcs.vcsNewProjectOptionsDialog() if vcsdlg.exec_() == QDialog.Accepted: projectdir, vcsDataDict = vcsdlg.getData() - self.project.pdata["VCS"] = [vcsSystem] + self.project.pdata["VCS"] = vcsSystem self.project.vcs = self.project.initVCS(vcsSystem) # edit VCS command options if self.project.vcs.vcsSupportCommandOptions(): @@ -238,7 +238,7 @@ self.tr( "<p>The project directory <b>{0}</b> could not" " be created.</p>").format(projectdir)) - self.project.pdata["VCS"] = ['None'] + self.project.pdata["VCS"] = 'None' self.project.vcs = self.project.initVCS() return @@ -271,7 +271,7 @@ QFileInfo(d, pfilename).absoluteFilePath()) self.project.newProject.emit() if export: - self.project.pdata["VCS"] = ['None'] + self.project.pdata["VCS"] = 'None' self.project.vcs = self.project.initVCS() self.project.setDirty(True) self.project.saveProject() @@ -298,7 +298,7 @@ try: ms = os.path.join( self.project.ppath, - self.project.pdata["MAINSCRIPT"][0]) + self.project.pdata["MAINSCRIPT"]) if os.path.exists(ms): self.project.appendFile(ms) except IndexError: @@ -326,10 +326,10 @@ self.tr( """The project could not be retrieved from""" """ the repository.""")) - self.project.pdata["VCS"] = ['None'] + self.project.pdata["VCS"] = 'None' self.project.vcs = self.project.initVCS() else: - self.project.pdata["VCS"] = ['None'] + self.project.pdata["VCS"] = 'None' self.project.vcs = self.project.initVCS() def _vcsExport(self): @@ -351,7 +351,7 @@ """ Local function to revert the changes made to the project object. """ - self.project.pdata["VCS"] = pdata_vcs[:] + self.project.pdata["VCS"] = pdata_vcs self.project.pdata["VCSOPTIONS"] = copy.deepcopy(pdata_vcsoptions) self.project.pdata["VCSOTHERDATA"] = copy.deepcopy(pdata_vcsother) self.project.vcs = vcs @@ -361,7 +361,7 @@ self.project.setDirty(True) self.project.saveProject() - pdata_vcs = self.project.pdata["VCS"][:] + pdata_vcs = self.project.pdata["VCS"] pdata_vcsoptions = copy.deepcopy(self.project.pdata["VCSOPTIONS"]) pdata_vcsother = copy.deepcopy(self.project.pdata["VCSOTHERDATA"]) vcs = self.project.vcs @@ -388,7 +388,7 @@ if vcsSystemDisplay == vcsSelected: break - self.project.pdata["VCS"] = [vcsSystem] + self.project.pdata["VCS"] = vcsSystem self.project.vcs = self.project.initVCS(vcsSystem) if self.project.vcs is not None: vcsdlg = self.project.vcs.vcsOptionsDialog(self.project,