diff options
author | Rogelio Mita <rogeliomita@activitycentral.com> | 2013-06-13 04:16:58 (GMT) |
---|---|---|
committer | Rogelio Mita <rogeliomita@activitycentral.com> | 2013-06-13 04:16:58 (GMT) |
commit | d9857caa499ddde64b268852053561cb4a7e7820 (patch) | |
tree | d6dc5673f5fad96ca3b4822775f2f105dcab3b43 | |
parent | b84cb63dc7947b17018712dd16cf237f0a5a6660 (diff) |
Save temporal file automatically into Documents or CeibalEncuesta's home.
-rw-r--r-- | CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py | 58 | ||||
-rwxr-xr-x | CeibalEncuesta/gtk3/CeibalEncuesta/CeibalEncuesta.py | 58 |
2 files changed, 36 insertions, 80 deletions
diff --git a/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py b/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py index d623677..2fa3027 100644 --- a/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py +++ b/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py @@ -42,11 +42,16 @@ PATH = os.path.dirname(__file__) HOME = os.environ["HOME"] WORKPATH = os.path.join(HOME, "CeibalEncuesta") TEMPPATH = os.path.join(WORKPATH, "temp.encuesta") +BACKUP_PATH = os.path.join(HOME, "Documentos") if not os.path.exists(WORKPATH): os.mkdir(WORKPATH) os.chmod(WORKPATH, 0755) + +if not os.path.exists(BACKUP_PATH): + BACKUP_PATH = WORKPATH + archivo = open(TEMPPATH, "w") archivo.close() @@ -60,6 +65,7 @@ class CeibalEncuesta(gtk.Window): } def __init__(self): + global BACKUP_PATH gtk.Window.__init__(self) @@ -86,7 +92,6 @@ class CeibalEncuesta(gtk.Window): self.panel = Panel() # menuitems - self.guardar = None self.exportar = None box.pack_start(self.__get_menu(), False, False, 5) @@ -111,6 +116,11 @@ class CeibalEncuesta(gtk.Window): self.__init() + if getattr(self, "poll_id", None): + BACKUP_PATH = BACKUP_PATH + "/%s.encuesta" % self.poll_id + if not os.path.exists(BACKUP_PATH): + self.__save_json(path=BACKUP_PATH) + self.fullscreen() def __init(self, widget = None): @@ -331,22 +341,17 @@ class CeibalEncuesta(gtk.Window): file_menu.append(abrir) abrir.connect_object("activate", self.__init, "") - self.guardar = gtk.MenuItem("Guardar Encuesta . . .") self.exportar = gtk.MenuItem("Exportar Encuesta . . .") salir = gtk.MenuItem("Salir") - self.guardar.set_tooltip_text( - "Guardar la Encuesta Actual.") self.exportar.set_tooltip_text( "Exportar Encuesta a Formato csv") salir.set_tooltip_text( "Salir de la AplicaciĆ³n.") - file_menu.append(self.guardar) file_menu.append(self.exportar) file_menu.append(salir) - self.guardar.connect_object("activate", self.__guardar_encuesta, "") self.exportar.connect_object("activate", self.__exportar_encuesta, "") salir.connect_object("activate", self.__salir, "") @@ -358,7 +363,6 @@ class CeibalEncuesta(gtk.Window): file_item.set_submenu(file_menu) self.menu_bar.append(file_item) - self.guardar.set_sensitive(False) self.exportar.set_sensitive(False) return self.menu_bar @@ -476,43 +480,15 @@ class CeibalEncuesta(gtk.Window): dialog.destroy() - def __guardar_encuesta(self, widget = None, senial = None): - """ - Abre Filechooser para guardar la - encuesta respondida o parcialmente respondida. - """ - - filechooser = My_FileChooser( - parent_window = self, - action_type = gtk.FILE_CHOOSER_ACTION_SAVE, - filter_type = "text/encuesta", - title = "Guardar Encuesta") - - filechooser.connect("load", self.__save_encuesta) - - def __save_encuesta(self, widget, archivo): - """ - Guarda encuesta en formato json. - """ - - name, ext = os.path.splitext(archivo) - - if ext: - if ext != "encuesta": - ext = ".encuesta" - - else: - ext = ".encuesta" - - archivo = "%s%s" % (name, ext) - - self.__save_json(path = os.path.join(archivo)) + if os.path.exists(BACKUP_PATH): + os.remove(BACKUP_PATH) def __load_encuesta_respondida(self, widget, archivo): """ Carga una encuesta parcial o totalmente respondida, desde un archivo json. """ + global BACKUP_PATH if os.path.exists(TEMPPATH): os.remove(TEMPPATH) @@ -542,6 +518,8 @@ class CeibalEncuesta(gtk.Window): "pollster_id": pollster_id, "pollster_username": pollster_username} + BACKUP_PATH = BACKUP_PATH + "/%s.encuesta" % poll_id + self.infowidget.set_info(dict) self.panel.load_encuestados(enc["encuestados"]) @@ -633,6 +611,8 @@ class CeibalEncuesta(gtk.Window): archivo.close() + self.poll_id = poll_id + self.panel.load_encuesta(encuesta) dict = { @@ -653,11 +633,9 @@ class CeibalEncuesta(gtk.Window): def __check_sensitive(self): if self.panel.encuesta and self.panel.lista: - self.guardar.set_sensitive(True) self.exportar.set_sensitive(True) else: - self.guardar.set_sensitive(False) self.exportar.set_sensitive(False) def __save_json(self, path = TEMPPATH): diff --git a/CeibalEncuesta/gtk3/CeibalEncuesta/CeibalEncuesta.py b/CeibalEncuesta/gtk3/CeibalEncuesta/CeibalEncuesta.py index a86e0a8..0ee1760 100755 --- a/CeibalEncuesta/gtk3/CeibalEncuesta/CeibalEncuesta.py +++ b/CeibalEncuesta/gtk3/CeibalEncuesta/CeibalEncuesta.py @@ -43,11 +43,16 @@ PATH = os.path.dirname(__file__) HOME = os.environ["HOME"] WORKPATH = os.path.join(HOME, "CeibalEncuesta") TEMPPATH = os.path.join(WORKPATH, "temp.encuesta") +BACKUP_PATH = os.path.join(HOME, "Documentos") if not os.path.exists(WORKPATH): os.mkdir(WORKPATH) os.chmod(WORKPATH, 0755) + +if not os.path.exists(BACKUP_PATH): + BACKUP_PATH = WORKPATH + archivo = open(TEMPPATH, "w") archivo.close() @@ -68,6 +73,7 @@ Gdk.threads_init() class CeibalEncuesta(Gtk.Window): def __init__(self): + global BACKUP_PATH Gtk.Window.__init__(self) @@ -93,7 +99,6 @@ class CeibalEncuesta(Gtk.Window): self.panel = Panel() # menuitems - self.guardar = None self.exportar = None box.pack_start(self.__get_menu(), False, False, 5) @@ -117,6 +122,11 @@ class CeibalEncuesta(Gtk.Window): self.__init() + if getattr(self, "poll_id", None): + BACKUP_PATH = BACKUP_PATH + "/%s.encuesta" % self.poll_id + if not os.path.exists(BACKUP_PATH): + self.__save_json(path=BACKUP_PATH) + self.fullscreen() def __init(self, widget = None): @@ -328,22 +338,17 @@ class CeibalEncuesta(Gtk.Window): file_menu.append(abrir) abrir.connect_object("activate", self.__init, "") - self.guardar = Gtk.MenuItem("Guardar Encuesta . . .") self.exportar = Gtk.MenuItem("Exportar Encuesta . . .") salir = Gtk.MenuItem("Salir") - self.guardar.set_tooltip_text( - "Guardar la Encuesta Actual.") self.exportar.set_tooltip_text( "Exportar Encuesta a Formato csv") salir.set_tooltip_text( "Salir de la AplicaciĆ³n.") - file_menu.append(self.guardar) file_menu.append(self.exportar) file_menu.append(salir) - self.guardar.connect_object("activate", self.__guardar_encuesta, "") self.exportar.connect_object("activate", self.__exportar_encuesta, "") salir.connect_object("activate", self.__salir, "") @@ -355,7 +360,6 @@ class CeibalEncuesta(Gtk.Window): file_item.set_submenu(file_menu) self.menu_bar.append(file_item) - self.guardar.set_sensitive(False) self.exportar.set_sensitive(False) return self.menu_bar @@ -473,43 +477,15 @@ class CeibalEncuesta(Gtk.Window): dialog.destroy() - def __guardar_encuesta(self, widget = None, senial = None): - """ - Abre Filechooser para guardar la - encuesta respondida o parcialmente respondida. - """ - - filechooser = My_FileChooser( - parent_window = self, - action_type = Gtk.FileChooserAction.SAVE, - filter_type = "text/encuesta", - title = "Guardar Encuesta") - - filechooser.connect("load", self.__save_encuesta) - - def __save_encuesta(self, widget, archivo): - """ - Guarda encuesta en formato json. - """ - - name, ext = os.path.splitext(archivo) - - if ext: - if ext != "encuesta": - ext = ".encuesta" - - else: - ext = ".encuesta" - - archivo = "%s%s" % (name, ext) - - self.__save_json(path = os.path.join(archivo)) + if os.path.exists(BACKUP_PATH): + os.remove(BACKUP_PATH) def __load_encuesta_respondida(self, widget, archivo): """ Carga una encuesta parcial o totalmente respondida, desde un archivo json. """ + global BACKUP_PATH if os.path.exists(TEMPPATH): os.remove(TEMPPATH) @@ -539,6 +515,8 @@ class CeibalEncuesta(Gtk.Window): "pollster_id": pollster_id, "pollster_username": pollster_username} + BACKUP_PATH = BACKUP_PATH + "/%s.encuesta" % poll_id + self.infowidget.set_info(dict) self.panel.load_encuestados(enc["encuestados"]) @@ -630,6 +608,8 @@ class CeibalEncuesta(Gtk.Window): archivo.close() + self.poll_id = poll_id + self.panel.load_encuesta(encuesta) dict = { @@ -650,11 +630,9 @@ class CeibalEncuesta(Gtk.Window): def __check_sensitive(self): if self.panel.encuesta and self.panel.lista: - self.guardar.set_sensitive(True) self.exportar.set_sensitive(True) else: - self.guardar.set_sensitive(False) self.exportar.set_sensitive(False) def __save_json(self, path = TEMPPATH): |