def PrintDocument(self, document, tofile=0): bbox = document.BoundingRect(visible=0, printable=1) if bbox is None: msgDialog( self.mw.root, title=_("Printing"), message=_( "The document doesn't have \n any printable layers!\n")) return ############ ---> if tofile: directory = config.preferences.dir_for_vector_export filename = document.meta.filename[:-4] + '.pdf' filename, pdffile = dialogman.getGenericSaveFilename( _("Print into PDF file"), pdf_types, initialdir=directory, initialfile=filename) if filename == '': return dlg = ProgressDialog(self.mw.root, 'PDF generation') dlg.RunDialog(self.print_tofile_callback, document, pdffile) else: dlg = ProgressDialog(self.mw.root, 'PDF generation') command, pdffile = dlg.RunDialog(self.print_callback, document) os.system(command)
def ImportVector(self, filename=None): was_exception = False if not filename: directory = config.preferences.dir_for_vector_import if directory == '~': directory = fs.gethome() if not os.path.isdir(directory): directory = fs.gethome() filename, sysfilename = dialogman.getImportFilename( initialdir=directory, initialfile=filename) if not filename: return try: if not os.path.isabs(filename): filename = os.path.join(os.getcwd(), filename) ############---> dlg = ProgressDialog(self.mw.root, 'File importing') doc = dlg.RunDialog(self.import_callback, filename) ############ <--- doc = load.load_drawing(filename) except SketchError, value: dlg.close_dlg() group = None msgDialog(self.mw.root, title=_("Import vector"), message=_("An error occurred:") + " " + str(value)) self.mw.remove_mru_file(filename) was_exception = True
def OpenDocument(self, filename=None, directory=None): self.mw.root.update() if type(filename) == type(0): filename = config.preferences.mru_files[filename] if not filename: if not directory: directory = self.mw.document.meta.directory if not directory: directory = config.preferences.dir_for_open if directory == "~": directory = fs.gethome() if not os.path.isdir(directory): directory = fs.gethome() filename, sysfilename = dialogman.getOpenFilename(initialdir=directory, initialfile=filename) if filename == "": return try: if not os.path.isabs(filename): filename = os.path.join(os.getcwd(), filename) config.preferences.dir_for_open = os.path.dirname(filename) ############---> dlg = ProgressDialog(self.mw.root, "File opening") doc = dlg.RunDialog(self.open_callback, filename) ############ <--- doc.meta.view = None self.SetActiveDocument(doc) self.mw.add_mru_file(filename) self.mw.canvas.ForceRedraw() if self.tabspanel: self.tabspanel.addNewTab(self.activedoc) except Exception, value: dlg.CloseDialog() msgDialog(self.mw.root, title=_("Open"), message=_("\nAn error occurred:\n\n") + str(value) + "\n") self.mw.remove_mru_file(filename)
def ImportVector(self, filename=None): was_exception = False if not filename: directory = config.preferences.dir_for_vector_import if directory == "~": directory = fs.gethome() if not os.path.isdir(directory): directory = fs.gethome() filename, sysfilename = dialogman.getImportFilename(initialdir=directory, initialfile=filename) if not filename: return try: if not os.path.isabs(filename): filename = os.path.join(os.getcwd(), filename) ############---> dlg = ProgressDialog(self.mw.root, "File importing") doc = dlg.RunDialog(self.import_callback, filename) ############ <--- doc = load.load_drawing(filename) except SketchError, value: dlg.close_dlg() group = None msgDialog(self.mw.root, title=_("Import vector"), message=_("An error occurred:") + " " + str(value)) self.mw.remove_mru_file(filename) was_exception = True
def save_doc_if_edited(self, document, title=_("sK1 - Save Document...")): if document is not None and document.WasEdited(): message = _("\nFile: <%s> has been changed ! \n\nDo you want to save it?\n") % document.meta.filename result = msgDialog(self.mw.root, title=title, message=message, buttons=msgdialog.SaveDontSaveCancel) self.mw.root.deiconify() if result == msgdialog.Save: self.SaveDocument(document) return result return msgdialog.No
def PrintDocument(self, document, tofile=0): bbox = document.BoundingRect(visible=0, printable=1) if bbox is None: msgDialog( self.mw.root, title=_("Printing"), message=_("The document doesn't have \n any printable layers!\n") ) return ############ ---> if tofile: directory = config.preferences.dir_for_vector_export filename = document.meta.filename[:-4] + ".pdf" filename, pdffile = dialogman.getGenericSaveFilename( _("Print into PDF file"), pdf_types, initialdir=directory, initialfile=filename ) if filename == "": return dlg = ProgressDialog(self.mw.root, "PDF generation") dlg.RunDialog(self.print_tofile_callback, document, pdffile) else: dlg = ProgressDialog(self.mw.root, "PDF generation") command, pdffile = dlg.RunDialog(self.print_callback, document) os.system(command)
def OpenDocument(self, filename=None, directory=None): self.mw.root.update() if type(filename) == type(0): filename = config.preferences.mru_files[filename] if not filename: if not directory: directory = self.mw.document.meta.directory if not directory: directory = config.preferences.dir_for_open if directory == '~': directory = fs.gethome() if not os.path.isdir(directory): directory = fs.gethome() filename, sysfilename = dialogman.getOpenFilename( initialdir=directory, initialfile=filename) if filename == '': return try: if not os.path.isabs(filename): filename = os.path.join(os.getcwd(), filename) config.preferences.dir_for_open = os.path.dirname(filename) ############---> dlg = ProgressDialog(self.mw.root, 'File opening') doc = dlg.RunDialog(self.open_callback, filename) ############ <--- doc.meta.view = None self.SetActiveDocument(doc) self.mw.add_mru_file(filename) self.mw.canvas.ForceRedraw() if self.tabspanel: self.tabspanel.addNewTab(self.activedoc) except Exception, value: dlg.CloseDialog() msgDialog(self.mw.root, title=_("Open"), message=_("\nAn error occurred:\n\n") + str(value) + "\n") self.mw.remove_mru_file(filename)
def save_doc_if_edited(self, document, title=_("sK1 - Save Document...")): if document is not None and document.WasEdited(): message = _( "\nFile: <%s> has been changed ! \n\nDo you want to save it?\n" ) % document.meta.filename result = msgDialog(self.mw.root, title=title, message=message, buttons=msgdialog.SaveDontSaveCancel) self.mw.root.deiconify() if result == msgdialog.Save: self.SaveDocument(document) return result return msgdialog.No
def SaveToFile(self, document, filename, fileformat=None, compressed='', compressed_file=''): sysname = filename try: if not document.meta.backup_created: try: if compressed_file: fs.make_backup(compressed_file) else: fs.make_backup(sysname) except fs.BackupError, value: backupfile = value.filename strerror = value.strerror msg = (_("\nCannot create backup file %(filename)s:\n" "%(message)s\n\n" "Choose `continue' to try saving anyway,\n" "or `cancel' to cancel saving.") % { 'filename': ` backupfile `, 'message': strerror }) cancel = _("Cancel") result = msgDialog(self.mw.root, title=_("Save To File"), message=msg, buttons=(_("Continue"), cancel)) if result == cancel: return document.meta.backup_created = 1 if fileformat is None: fileformat = filters.NativeFormat try: saver = filters.find_export_plugin(fileformat) if compressed: # XXX there should be a plugin interface for this kind # of post-processing if compressed == "gzip": cmd = 'gzip -c -9 > ' + utils.sh_quote(compressed_file) elif compressed == "bzip2": cmd = 'bzip2 > ' + utils.sh_quote(compressed_file) file = os.popen(cmd, 'w') saver(document, filename, file=file) else: saver(document, sysname) finally: saver.UnloadPlugin()
def SaveToFile(self, document, filename, fileformat=None, compressed="", compressed_file=""): sysname = filename try: if not document.meta.backup_created: try: if compressed_file: fs.make_backup(compressed_file) else: fs.make_backup(sysname) except fs.BackupError, value: backupfile = value.filename strerror = value.strerror msg = _( "\nCannot create backup file %(filename)s:\n" "%(message)s\n\n" "Choose `continue' to try saving anyway,\n" "or `cancel' to cancel saving." ) % {"filename": ` backupfile `, "message": strerror} cancel = _("Cancel") result = msgDialog( self.mw.root, title=_("Save To File"), message=msg, buttons=(_("Continue"), cancel) ) if result == cancel: return document.meta.backup_created = 1 if fileformat is None: fileformat = filters.NativeFormat try: saver = filters.find_export_plugin(fileformat) if compressed: # XXX there should be a plugin interface for this kind # of post-processing if compressed == "gzip": cmd = "gzip -c -9 > " + utils.sh_quote(compressed_file) elif compressed == "bzip2": cmd = "bzip2 > " + utils.sh_quote(compressed_file) file = os.popen(cmd, "w") saver(document, filename, file=file) else: saver(document, sysname) finally: saver.UnloadPlugin()
self.mw.add_mru_file(filename) self.mw.canvas.ForceRedraw() if self.tabspanel: self.tabspanel.addNewTab(self.activedoc) except Exception, value: dlg.CloseDialog() msgDialog(self.mw.root, title=_("Open"), message=_("\nAn error occurred:\n\n") + str(value) + "\n") self.mw.remove_mru_file(filename) else: messages = doc.meta.load_messages if messages: msgDialog(self.mw.root, title=_("Open"), message=_("\nWarnings from the import filter:\n\n") + messages + "\n") doc.meta.load_messages = '' def open_callback(self, arg): app.updateInfo(inf1=_('Document parsing'), inf2=_('Start document processing'), inf3=3) filename = arg[0] doc = load.load_drawing(filename) app.updateInfo(inf1=_('Document parsing'), inf2=_('Document has been loaded'), inf3=100) time.sleep(.1) return doc
############ <--- doc.meta.view = None self.SetActiveDocument(doc) self.mw.add_mru_file(filename) self.mw.canvas.ForceRedraw() if self.tabspanel: self.tabspanel.addNewTab(self.activedoc) except Exception, value: dlg.CloseDialog() msgDialog(self.mw.root, title=_("Open"), message=_("\nAn error occurred:\n\n") + str(value) + "\n") self.mw.remove_mru_file(filename) else: messages = doc.meta.load_messages if messages: msgDialog( self.mw.root, title=_("Open"), message=_("\nWarnings from the import filter:\n\n") + messages + "\n" ) doc.meta.load_messages = "" def open_callback(self, arg): app.updateInfo(inf1=_("Document parsing"), inf2=_("Start document processing"), inf3=3) filename = arg[0] doc = load.load_drawing(filename) app.updateInfo(inf1=_("Document parsing"), inf2=_("Document has been loaded"), inf3=100) time.sleep(0.1) return doc def SaveDocument(self, document, use_dialog=SAVE_MODE): filename = document.meta.fullpathname native_format = document.meta.native_format compressed_file = document.meta.compressed_file