diff options
author | flavio <fdanesse@gmail.com> | 2013-08-16 01:49:28 (GMT) |
---|---|---|
committer | flavio <fdanesse@gmail.com> | 2013-08-16 01:49:28 (GMT) |
commit | 01ad70c149ec0feb79c184358befa9534d7914c3 (patch) | |
tree | dad57ec84c59c2339416e48a1be44905e22868f8 /CeibalEncuesta | |
parent | 4c154eb7b3e3a702731e8dad62003a61a8fa2dbf (diff) |
issue 4426 - Improvements in performance 2
Diffstat (limited to 'CeibalEncuesta')
-rw-r--r-- | CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py | 66 | ||||
-rw-r--r-- | CeibalEncuesta/gtk2/CeibalEncuesta/Widgets.py | 3 |
2 files changed, 19 insertions, 50 deletions
diff --git a/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py b/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py index e12803a..96fad25 100644 --- a/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py +++ b/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py @@ -55,8 +55,8 @@ if not os.path.exists(WORKPATH): #if not os.path.exists(BACKUP_PATH): # BACKUP_PATH = WORKPATH -archivo = open(TEMPPATH, "w") -archivo.close() +if os.path.exists(TEMPPATH): + os.remove(TEMPPATH) gobject.threads_init() gdk.threads_init() @@ -304,11 +304,9 @@ class CeibalEncuesta(gtk.Window): self.out_dict[encuestado][indice_grupo]["fields"][indice_pregunta] = dict_pregunta - # self.__save_json(path = self.path) - def save_text(self): - self.__save_json(path = self.path) + self.__save_json() def __change(self, widget, encuestado, indice_grupo, grupo_name, @@ -340,7 +338,7 @@ class CeibalEncuesta(gtk.Window): self.out_dict[encuestado][indice_grupo]["fields"][indice_pregunta] = dict_pregunta - self.__save_json(path = self.path) + self.__save_json() def __new_selection(self, widget, encuestado): """ @@ -592,9 +590,12 @@ class CeibalEncuesta(gtk.Window): if os.path.exists(TEMPPATH): os.remove(TEMPPATH) - - #self.path = archivo - + + self.path = os.path.join(os.path.dirname(TEMPPATH), os.path.basename(archivo)) + + import shutil + shutil.copyfile(archivo, self.path) + extension = os.path.splitext(os.path.split(archivo)[1])[1] if "encuesta" in extension: @@ -621,9 +622,9 @@ class CeibalEncuesta(gtk.Window): #self.backup_path = self.backup_path + "/%s.encuesta" % poll_id self.infowidget.set_info(dict) - + self.panel.load_encuestados(enc["encuestados"]) - + self.__check_sensitive() def __load_encuestados(self, widget, archivo): @@ -632,14 +633,9 @@ class CeibalEncuesta(gtk.Window): y la manda cargar en la aplicaciĆ³n. """ - if os.path.exists(TEMPPATH): - os.remove(TEMPPATH) - - self.path = TEMPPATH - self.out_dict = {} - self.__save_json(path = self.path) + self.__save_json() encuestados = G.cargar_encuestados(os.path.join(archivo)) @@ -653,11 +649,6 @@ class CeibalEncuesta(gtk.Window): un archivo json o shelve. """ - if os.path.exists(TEMPPATH): - os.remove(TEMPPATH) - - self.path = TEMPPATH - # Mantiene la lista de encuestados cargada actualmente. encuestados = self.out_dict.keys() @@ -688,23 +679,6 @@ class CeibalEncuesta(gtk.Window): pollster_id = enc["pollster_id"] pollster_username = enc["pollster_username"] - elif "slv" in extension: - import shelve - - archivo = shelve.open(archivo) - - enc = archivo["groups"] - - poll_name = archivo["poll_name"] - poll_id = archivo["poll_id"] - pollster_id = archivo["pollster_id"] - pollster_username = archivo["pollster_username"] - - for key in enc.keys(): - encuesta[key] = enc[key] - - archivo.close() - self.poll_id = poll_id ''' bck_path = self.backup_path + "/%s.encuesta" % self.poll_id @@ -737,7 +711,7 @@ class CeibalEncuesta(gtk.Window): while gtk.events_pending(): gtk.main_iteration() - self.__save_json(path = self.path) + self.__save_json() self.__check_sensitive() @@ -751,12 +725,10 @@ class CeibalEncuesta(gtk.Window): else: self.exportar.set_sensitive(False) - def __save_json(self, path = TEMPPATH): + def __save_json(self): """ Guarda encuesta en formato json. """ - - #self.path = path encuestados = [] encuesta = {} @@ -784,16 +756,14 @@ class CeibalEncuesta(gtk.Window): "poll_id": poll_id, "pollster_id": pollster_id, "pollster_username": pollster_username} - + + self.path = os.path.join(os.path.dirname(self.path), "%s.encuesta" % self.poll_id) + import json archivo = open(self.path, "w") archivo.write(json.dumps(salida)) archivo.close() - if os.path.exists(TEMPPATH): - if TEMPPATH != path: - os.remove(TEMPPATH) - def copy_to_Documents(self): path = os.path.join(HOME, "Documentos") diff --git a/CeibalEncuesta/gtk2/CeibalEncuesta/Widgets.py b/CeibalEncuesta/gtk2/CeibalEncuesta/Widgets.py index 79d128e..a451e3c 100644 --- a/CeibalEncuesta/gtk2/CeibalEncuesta/Widgets.py +++ b/CeibalEncuesta/gtk2/CeibalEncuesta/Widgets.py @@ -272,8 +272,7 @@ class Panel(gtk.Paned): if encuestado in ceibal_encuesta.out_dict.keys(): ceibal_encuesta.out_dict[encuestado].update( {"finalizada": True}) - ceibal_encuesta._CeibalEncuesta__save_json( - path=ceibal_encuesta.path) + self.toolbar_encuesta.siguiente.hide() self.toolbar_encuesta.anterior.show() return |