From f30a6c634aedea68963ff4d6f49092deda4aa58b Mon Sep 17 00:00:00 2001 From: wmayer Date: Fri, 24 Mar 2023 20:12:06 +0100 Subject: [PATCH] Gui: fix some lint warnings --- src/Ext/freecad/project_utility.py | 52 +++++++++++++++++------------- src/Gui/DlgProjectUtility.cpp | 3 +- 2 files changed, 31 insertions(+), 24 deletions(-) diff --git a/src/Ext/freecad/project_utility.py b/src/Ext/freecad/project_utility.py index 56336bd3e9..34f2379bf0 100644 --- a/src/Ext/freecad/project_utility.py +++ b/src/Ext/freecad/project_utility.py @@ -6,7 +6,7 @@ __url__ = "http://www.freecadweb.org" __doc__ = "Tools for extracting or creating project files" -import os,sys,string +import os import xml.sax import xml.sax.handler import xml.sax.xmlreader @@ -14,58 +14,64 @@ import zipfile # SAX handler to parse the Document.xml class DocumentHandler(xml.sax.handler.ContentHandler): + """ Parse content of Document.xml or GuiDocument.xml """ def __init__(self, dirname): + """ Init parser """ + super().__init__() self.files = [] self.dirname = dirname - def startElement(self, name, attributes): - item=attributes.get("file") - if item != None: - self.files.append(os.path.join(self.dirname,str(item))) + def startElement(self, name, attrs): + item = attrs.get("file") + if item is not None: + self.files.append(os.path.join(self.dirname, str(item))) - def characters(self, data): + def characters(self, content): return def endElement(self, name): return def extractDocument(filename, outpath): - zfile=zipfile.ZipFile(filename) - files=zfile.namelist() + """ Extract files from project archive """ + zfile = zipfile.ZipFile(filename) + files = zfile.namelist() for i in files: - data=zfile.read(i) - dirs=i.split("/") + data = zfile.read(i) + dirs = i.split("/") if len(dirs) > 1: dirs.pop() - curpath=outpath + curpath = outpath for j in dirs: - curpath=curpath+"/"+j + curpath = curpath + "/" + j os.mkdir(curpath) - output=open(outpath+"/"+i,'wb') + output = open(outpath + "/"+i, 'wb') output.write(data) output.close() def createDocument(filename, outpath): - files=getFilesList(filename) - dirname=os.path.dirname(filename) - guixml=os.path.join(dirname,"GuiDocument.xml") + """ Create project archive """ + files = getFilesList(filename) + dirname = os.path.dirname(filename) + guixml = os.path.join(dirname, "GuiDocument.xml") if os.path.exists(guixml): files.extend(getFilesList(guixml)) - compress=zipfile.ZipFile(outpath,'w',zipfile.ZIP_DEFLATED) + compress = zipfile.ZipFile(outpath, 'w', zipfile.ZIP_DEFLATED) for i in files: - dirs=os.path.split(i) - compress.write(i,dirs[-1],zipfile.ZIP_DEFLATED) + dirs = os.path.split(i) + compress.write(i, dirs[-1], zipfile.ZIP_DEFLATED) compress.close() def getFilesList(filename): - dirname=os.path.dirname(filename) - handler=DocumentHandler(dirname) - parser=xml.sax.make_parser() + """ Determine list of files referenced in a Document.xml or GuiDocument.xml """ + dirname = os.path.dirname(filename) + handler = DocumentHandler(dirname) + parser = xml.sax.make_parser() parser.setContentHandler(handler) parser.parse(filename) - files=[] + files = [] files.append(filename) files.extend(iter(handler.files)) return files diff --git a/src/Gui/DlgProjectUtility.cpp b/src/Gui/DlgProjectUtility.cpp index 911c5716ae..15a6759ef8 100644 --- a/src/Gui/DlgProjectUtility.cpp +++ b/src/Gui/DlgProjectUtility.cpp @@ -115,8 +115,9 @@ void DlgProjectUtility::tryCreateArchive(const QString& source, const QString& t str << "project_utility.createDocument(\"" << (const char*)source.toUtf8() << "\", \"" << (const char*)target.toUtf8() << "\")"; Gui::Command::runCommand(Gui::Command::App, str.str().c_str()); - if (openFile) + if (openFile) { Application::Instance->open((const char*)target.toUtf8(),"FreeCAD"); + } } catch (const Base::Exception& e) { QMessageBox::critical(this, tr("Failed to create project"), QString::fromLatin1(e.what()));