Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCristian Garcia <cristian99garcia@gmail.com>2013-06-10 22:44:16 (GMT)
committer Cristian Garcia <cristian99garcia@gmail.com>2013-06-10 22:44:16 (GMT)
commit414489ed120dabdfff88ee0c77e228fdd5f3909d (patch)
treeb37071d9e5d9db427daf66c715bbd19bc0b0594a
parent54eb8bb91bc7a22de1929a1e0b5a2a30abb8a076 (diff)
Agregando para poder 'cancelar' el cerrado de la aplicacion ;)
-rw-r--r--CristianEdit.py32
-rw-r--r--CristianEdit/objetos.py5
-rw-r--r--CristianEdit/objetos.pycbin41989 -> 42019 bytes
3 files changed, 21 insertions, 16 deletions
diff --git a/CristianEdit.py b/CristianEdit.py
index 2872907..dc64d0b 100644
--- a/CristianEdit.py
+++ b/CristianEdit.py
@@ -76,8 +76,7 @@ class Ventana(Gtk.Window):
en ese caso le pasa Gtk.main_quit(), de lo
contrario consulta al usuario sí guardar o no
antes de cerrar"""
-
- """
+
notebook = self.cristianedit.get_objeto('self.notebook')
buffers = self.cristianedit.get_objeto('self.buffers')
views = self.cristianedit.get_objeto('self.views')
@@ -87,6 +86,12 @@ class Ventana(Gtk.Window):
self.cristianedit.guardar_configuracion()
for buffer in buffers:
+ if buffers.index(buffer) == buffers.index(buffers[-1]):
+ if_cerrar = True
+
+ else:
+ if_cerrar = False
+
if buffer.get_modified():
numero = buffers.index(buffer)
@@ -101,28 +106,25 @@ class Ventana(Gtk.Window):
labels,
self)
- dialog.add_label('El archivo:\n%s\ntiene cambios sin guardar.')
+ dialog.add_label('El archivo:\n%s\ntiene cambios sin guardar.' % direccion)
dialog.add_label('¿Desea guardar antes de cerrar?')
respuesta = dialog.run()
- dialog.show_all()
dialog.destroy()
- if accion == Gtk.ResponseType.YES:
+ print respuesta, if_cerrar
+ if respuesta == Gtk.ResponseType.YES:
dialog.guardar(lugares[numero])
- return True
- elif accion == Gtk.ResponseType.CANCEL:
- return False
+ if if_cerrar:
+ Gtk.main_quit()
- else:
- if buffers.index(buffer) == -1:
- print buffer
+ elif respuesta == Gtk.ResponseType.CANCEL:
+ return True
- """
- self.cristianedit.guardar_configuracion()
- Gtk.main_quit()
- return False
+ else:
+ if if_cerrar:
+ Gtk.main_quit()
if __name__ == '__main__':
if len(sys.argv) >= 2:
diff --git a/CristianEdit/objetos.py b/CristianEdit/objetos.py
index 61a0c3a..a2f560b 100644
--- a/CristianEdit/objetos.py
+++ b/CristianEdit/objetos.py
@@ -742,7 +742,10 @@ class DialogoCerrar(Gtk.Dialog):
def add_label(self, string):
"""Crea un label con el texto y se le agrega"""
- self.vbox.add(Gtk.Label(string))
+ label = Gtk.Label(string)
+
+ self.vbox.add(label)
+ label.show()
class DialogoEstado(Gtk.Dialog):
diff --git a/CristianEdit/objetos.pyc b/CristianEdit/objetos.pyc
index 05751fd..ea19bdd 100644
--- a/CristianEdit/objetos.pyc
+++ b/CristianEdit/objetos.pyc
Binary files differ