diff --git a/invesalius/control.py b/invesalius/control.py index ce3a688..634ccb6 100755 --- a/invesalius/control.py +++ b/invesalius/control.py @@ -16,8 +16,6 @@ # PARTICULAR. Consulte a Licenca Publica Geral GNU para obter mais # detalhes. #-------------------------------------------------------------------------- -from mimetools import temp - import math import os import plistlib @@ -256,8 +254,8 @@ class Controller(): def OnSaveProject(self, pubsub_evt): filename = prj.Project().name - directory = tempfile.mkdtemp(filename) - prj.Project().SavePlistProject(os.path.join(directory,filename)) + dir_ = tempfile.mkdtemp(filename) + prj.Project().SavePlistProject(dir_, filename) diff --git a/invesalius/project.py b/invesalius/project.py index d45fd8b..611a69a 100755 --- a/invesalius/project.py +++ b/invesalius/project.py @@ -130,7 +130,8 @@ class Project(object): preset = plistlib.readPlist(path) ps.Publisher.sendMessage('Set raycasting preset', preset) - def SavePlistProject(self, filename): + def SavePlistProject(self, dir_, filename): + filename = os.path.join(dir_, filename) project = {} for key in self.__dict__: @@ -156,32 +157,8 @@ class Project(object): project['imagedata'] = img_file plistlib.writePlist(project, filename + '.plist') - - def SavePlistProjectOld(self, filename, dict_object=None): - if dict_object is None: - dict_object = self.__dict__ - supported_types = (str, int, float, bool, tuple, list, - plistlib.Data) - project = {} - for key in dict_object: - prop = dict_object[key] - if isinstance(prop, supported_types): - project[str(key)] = prop - elif isinstance(prop, dict): - project[str(key)] = self.SavePlistProject('%s$%s' % (filename, - key), prop) - elif isinstance(prop, vtk.vtkImageData): - img_name = '%s_%s' % (key, filename) - img_file = iu.Export(prop, img_name, bin=True) - project[str(key)] = {'imagedatafile': img_file} - elif isinstance(prop, vtk.vtkPolyData): - pd_name = '%s_%s' % (key, filename) - pd_file = pu.Export(prop, pd_name, bin=True) - project[str(key)] = {'polydatafile': pd_file} - else: - project[str(key)] = {'plistfile': self.SavePlistProject("%s$%s" % (filename, key), prop.__dict__)} - print project - plistlib.writePlist(project, filename) + + Compress(dir_, "teste.inv3")#os.path.join("~/Desktop/","teste.inv3")) def OpenPlistProject(self, filename): project = plistlib.readPlist(filename) @@ -209,4 +186,4 @@ def Extract(filename, folder): tar = tarfile.open(filename, "r:gz") tar.list(verbose=True) tar.extractall(folder) - tar.close() \ No newline at end of file + tar.close() -- libgit2 0.21.2