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 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 SaveDocument(self, document, use_dialog=SAVE_MODE): filename = document.meta.fullpathname native_format = document.meta.native_format compressed_file = document.meta.compressed_file compressed = document.meta.compressed if use_dialog or not filename or not native_format: directory = document.meta.directory if not directory: if use_dialog == SAVE_AS_MODE or use_dialog == SAVE_MODE: directory = config.preferences.dir_for_save filename = document.meta.filename if use_dialog == EXPORT_MODE: directory = config.preferences.dir_for_vector_export if directory == "~": directory = fs.gethome() if not os.path.isdir(directory): directory = fs.gethome() if use_dialog == SAVE_MODE: extension = os.path.splitext(filename)[1].lower() if not extension == ".sk1": if extension == "": filename += ".sk1" else: filename = filename[: -1 * len(extension)] + ".sk1" filename, sysfilename = dialogman.getSaveFilename(initialdir=directory, initialfile=filename) if use_dialog == SAVE_AS_MODE: extension = os.path.splitext(filename)[1].lower() if not extension == ".sk1": if extension == "": filename += ".sk1" else: filename = filename[: -1 * len(extension)] + ".sk1" filename, sysfilename = dialogman.getSaveAsFilename(initialdir=directory, initialfile=filename) if use_dialog == EXPORT_MODE: filename, sysfilename = dialogman.getExportFilename(initialdir=directory, initialfile=filename) if not filename: return extension = os.path.splitext(filename)[1].lower() fileformat = filters.guess_export_plugin(extension) if not fileformat: fileformat = filters.NativeFormat compressed_file = "" # guess compression from filename compressed = "" else: fileformat = filters.NativeFormat if use_dialog == SAVE_AS_MODE: config.preferences.dir_for_save = os.path.dirname(filename) if use_dialog == EXPORT_MODE: config.preferences.dir_for_vector_export = os.path.dirname(filename) ############ ---> dlg = ProgressDialog(self.mw.root, "File saving") dlg.RunDialog(self.save_callback, document, filename, fileformat, compressed, compressed_file)
def __init__(self, master=None, base_dir="~", cnf={}, **kw): self.name = "sK1" self.sk_command = "sk1" self.version = "0.9.3" self.sk_dir = base_dir self.sk1_dir = os.path.join(self.sk_dir, "sk1") self.sk1sdk_dir = os.path.join(self.sk_dir, "sk1sdk") self.sk_share_dir = os.path.join(self.sk1_dir, "share") self.sk_palettes = os.path.join(self.sk_share_dir, "palettes") self.sk_ps = os.path.join(self.sk_share_dir, "ps_templates") self.user_home_dir = gethome() ucd = "%s-tk-%s" % (self.sk_command, self.version) self.user_config_dir = os.path.join(self.user_home_dir, ".config", ucd) ucd = self.user_config_dir self.user_palettes = os.path.join(ucd, "palettes") self.user_themes = os.path.join(ucd, "themes") self.user_icc = os.path.join(ucd, "icc") self.user_fonts = os.path.join(ucd, "fonts") self.user_plugins = os.path.join(ucd, "plugins") self.user_color_themes = os.path.join(ucd, "color_themes") self.user_icons = os.path.join(ucd, "icons") # Directories where sK1 searches for plugins. # The expanded plugin_dir is appended to this self.plugin_path = [] self.user_preferences_file = os.path.join(ucd, "preferences.xml") # ============USER CONFIG===================' self.check_user_config() if os.path.isfile(self.user_preferences_file): prefs = Preferences() prefs.load(self.user_preferences_file) if prefs.sk1_version == self.version: self.preferences = prefs else: self.preferences = Preferences() self.preferences.sk1_version = self.version else: self.preferences = Preferences() self.preferences.sk1_version = self.version # ===============DEPRECATED VARIABLES=============== self.std_res_dir = os.path.join(self.sk1_dir, "share/resources") # Subdirectory for the pixmaps. On startup it is expanded # to an absolute pathname. self.pixmap_dir = os.path.join(self.sk1_dir, "share/resources") # PostScript Prolog file self.postscript_prolog = os.path.join(self.sk_ps, "sk1-proc.ps")
def __init__(self, master=None, base_dir='~', cnf={}, **kw): self.name = 'sK1' self.sk_command = 'sk1' self.version = '0.9.3' self.sk_dir = base_dir self.sk1_dir = os.path.join(self.sk_dir, 'sk1') self.sk1sdk_dir = os.path.join(self.sk_dir, 'sk1sdk') self.sk_share_dir = os.path.join(self.sk1_dir, 'share') self.sk_palettes = os.path.join(self.sk_share_dir, 'palettes') self.sk_ps = os.path.join(self.sk_share_dir, 'ps_templates') self.user_home_dir = gethome() ucd = '%s-tk-%s' % (self.sk_command, self.version) self.user_config_dir = os.path.join(self.user_home_dir, '.config', ucd) ucd = self.user_config_dir self.user_palettes = os.path.join(ucd, 'palettes') self.user_themes = os.path.join(ucd, 'themes') self.user_icc = os.path.join(ucd, 'icc') self.user_fonts = os.path.join(ucd, 'fonts') self.user_plugins = os.path.join(ucd, 'plugins') self.user_color_themes = os.path.join(ucd, 'color_themes') self.user_icons = os.path.join(ucd, 'icons') # Directories where sK1 searches for plugins. # The expanded plugin_dir is appended to this self.plugin_path = [] self.user_preferences_file = os.path.join(ucd, 'preferences.xml') #============USER CONFIG===================' self.check_user_config() if os.path.isfile(self.user_preferences_file): prefs = Preferences() prefs.load(self.user_preferences_file) if prefs.sk1_version == self.version: self.preferences = prefs else: self.preferences = Preferences() self.preferences.sk1_version = self.version else: self.preferences = Preferences() self.preferences.sk1_version = self.version #===============DEPRECATED VARIABLES=============== self.std_res_dir = os.path.join(self.sk1_dir, 'share/resources') # Subdirectory for the pixmaps. On startup it is expanded # to an absolute pathname. self.pixmap_dir = os.path.join(self.sk1_dir, 'share/resources') # PostScript Prolog file self.postscript_prolog = os.path.join(self.sk_ps, 'sk1-proc.ps')
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 LoadPalette(self, filename=None): if not filename: directory = config.preferences.dir_for_palettes if not directory: directory = fs.gethome() from sk1.managers.dialogmanager import palette_types title = _("Load Palette") filename, sysfilename = dialogman.getGenericOpenFilename(title, palette_types, initialdir=directory, initialfile=filename) if not filename: return pal = palette.load_palette(filename) if not pal: msg = _("\nCannot load palette %(filename)s!\n") self.application.MessageBox(title=_("Load Palette"), message=msg % {'filename': filename}) else: self.palette.SetPalette(pal) config.preferences.palette = filename config.preferences.dir_for_palettes = os.path.dirname(filename)
def SaveDocument(self, document, use_dialog=SAVE_MODE): filename = document.meta.fullpathname native_format = document.meta.native_format compressed_file = document.meta.compressed_file compressed = document.meta.compressed if use_dialog or not filename or not native_format: directory = document.meta.directory if not directory: if use_dialog == SAVE_AS_MODE or use_dialog == SAVE_MODE: directory = config.preferences.dir_for_save filename = document.meta.filename if use_dialog == EXPORT_MODE: directory = config.preferences.dir_for_vector_export if directory == '~': directory = fs.gethome() if not os.path.isdir(directory): directory = fs.gethome() if use_dialog == SAVE_MODE: extension = os.path.splitext(filename)[1].lower() if not extension == '.sk1': if extension == "": filename += '.sk1' else: filename = filename[:-1 * len(extension)] + '.sk1' filename, sysfilename = dialogman.getSaveFilename( initialdir=directory, initialfile=filename) if use_dialog == SAVE_AS_MODE: extension = os.path.splitext(filename)[1].lower() if not extension == '.sk1': if extension == "": filename += '.sk1' else: filename = filename[:-1 * len(extension)] + '.sk1' filename, sysfilename = dialogman.getSaveAsFilename( initialdir=directory, initialfile=filename) if use_dialog == EXPORT_MODE: filename, sysfilename = dialogman.getExportFilename( initialdir=directory, initialfile=filename) if not filename: return extension = os.path.splitext(filename)[1].lower() fileformat = filters.guess_export_plugin(extension) if not fileformat: fileformat = filters.NativeFormat compressed_file = '' # guess compression from filename compressed = '' else: fileformat = filters.NativeFormat if use_dialog == SAVE_AS_MODE: config.preferences.dir_for_save = os.path.dirname(filename) if use_dialog == EXPORT_MODE: config.preferences.dir_for_vector_export = os.path.dirname( filename) ############ ---> dlg = ProgressDialog(self.mw.root, 'File saving') dlg.RunDialog(self.save_callback, document, filename, fileformat, compressed, compressed_file)