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 21:47:14 (GMT)
committer Cristian Garcia <cristian99garcia@gmail.com>2013-06-10 21:47:14 (GMT)
commit5337555ab6920a9982f7bdd8b01731ece305c17d (patch)
tree426ef5987f8ff1a39268121b63242b5fe61eb1e9
parent30694f1e936d4fee320f1d15e12e9051f708a430 (diff)
Arreglando el dialogo reemplazar
-rw-r--r--CristianEdit/CristianEdit.py27
-rw-r--r--CristianEdit/objetos.py57
-rw-r--r--CristianEdit/objetos.pycbin41766 -> 41971 bytes
3 files changed, 49 insertions, 35 deletions
diff --git a/CristianEdit/CristianEdit.py b/CristianEdit/CristianEdit.py
index 70b80c8..cc22c38 100644
--- a/CristianEdit/CristianEdit.py
+++ b/CristianEdit/CristianEdit.py
@@ -36,6 +36,7 @@ from objetos import Navegador
from objetos import BarraInferior
from objetos import DialogoCerrar
from objetos import DialogoEstado
+from objetos import DialogoReemplazar
from objetos import SelectordeFuente
from objetos import Configuraciones
from objetos import Teclado
@@ -65,7 +66,6 @@ class CristianEdit(Gtk.Plug):
self.barras_de_abajo = []
self.configuraciones = {}
- self.recientes = []
self.vbox = None
self.menu = None
@@ -101,8 +101,7 @@ class CristianEdit(Gtk.Plug):
self.notebook.set_show_tabs(False)
self.pagina_nueva()
- self.menu.actualizar_recientes(self.recientes)
- print self.recientes
+ self.menu.actualizar_recientes(self.configuraciones['recientes'])
numero = 0
@@ -256,7 +255,7 @@ class CristianEdit(Gtk.Plug):
escritura = self.get_escritura(lugar)
self.agregar_a_recientes(lugar)
- self.menu.actualizar_recientes(self.recientes)
+ self.menu.actualizar_recientes(self.configuraciones['recientes'])
buffer.set_text(texto)
buffer.set_modified(False)
@@ -296,7 +295,7 @@ class CristianEdit(Gtk.Plug):
escritura = self.get_escritura(direccion)
self.agregar_a_recientes(direccion)
- self.menu.actualizar_recientes(self.recientes)
+ self.menu.actualizar_recientes(self.configuraciones['recientes'])
buffer.set_text(texto)
buffer.set_modified(False)
@@ -363,7 +362,11 @@ class CristianEdit(Gtk.Plug):
self.agregar_a_recientes(direccion)
else:
- objetos.dialogo_reemplazar(direccion, buffer, self)
+ DialogoReemplazar(
+ direccion,
+ buffer,
+ self.get_toplevel(),
+ self.get_texto())
self.navegador.destroy()
@@ -480,8 +483,12 @@ class CristianEdit(Gtk.Plug):
"""Agrega una dirección a archivos recientes"""
if os.path.exists(path):
- self.recientes.append(path)
- self.menu.actualizar_recientes(self.recientes)
+ self.configuraciones['recientes'].insert(0, path)
+ self.menu.actualizar_recientes(self.configuraciones['recientes'])
+
+ if len(self.configuraciones['recientes']) > 10:
+ for x in self.configuraciones['recientes'][10:]:
+ self.configuraciones['recientes'].remove(x)
def deshacer(self, widget=None):
"""Deshacer cambios"""
@@ -648,7 +655,7 @@ class CristianEdit(Gtk.Plug):
cfg.set('datos', 'insertar_espacios', self.configuraciones['insertar_espacios'])
cfg.set('datos', 'sangria', self.configuraciones['sangria'])
cfg.set('datos', 'tema', self.configuraciones['tema'])
- cfg.set('datos', 'recientes', str(self.recientes))
+ cfg.set('datos', 'recientes', str(self.configuraciones['recientes']))
f = open(G.configuracion, 'w')
cfg.write(f)
@@ -694,7 +701,7 @@ class CristianEdit(Gtk.Plug):
'sangria': False,
'tema': 'classic',
'fuente': 'Monospace',
- 'recientes': '',
+ 'recientes': [],
'abrir_archivo': False}
self.guardar_configuracion()
diff --git a/CristianEdit/objetos.py b/CristianEdit/objetos.py
index 37cab82..87ece9e 100644
--- a/CristianEdit/objetos.py
+++ b/CristianEdit/objetos.py
@@ -32,31 +32,6 @@ from gi.repository import GLib
import Globales as G
-def dialogo_reemplazar(direccion, buffer, cristianedit):
- """Preguntar si reemplazar o no, cuando la dirección ya existe"""
-
- dialog = Gtk.MessageDialog(type=Gtk.MessageType(2))
-
- dialog.add_buttons(Gtk.STOCK_NO, 0, Gtk.STOCK_YES, 1)
- dialog.set_markup('<b>%s</b>' % 'La dirección especificada ya existe...')
- dialog.format_secondary_text(
- 'Sí sobrescribe el archivo, se reemplazará su contenido.')
-
- respuesta = dialog.run()
- dialog.destroy()
-
- if respuesta == 1:
- escritura = open(direccion, 'w')
-
- escritura.write(cristianedit.get_texto())
- buffer.set_modified(False)
-
- escritura.close()
-
- else:
- dialog.destroy()
-
-
class Menu(Gtk.MenuBar):
"""Barra de Menú"""
@@ -671,6 +646,38 @@ class ComboLenguajes(Gtk.ComboBoxText):
return self.lenguaje_manager
+class DialogoReemplazar(Gtk.MessageDialog):
+
+ def __init__(self, direccion, buffer, padre, texto):
+
+ Gtk.MessageDialog.__init__(
+ self,
+ parent=padre,
+ type=Gtk.MessageType.QUESTION)
+
+ self.set_transient_for(padre)
+ self.set_modal(True)
+ self.set_markup('<b>%s</b>' % 'La dirección especificada ya existe...')
+
+ self.format_secondary_text(
+ 'Sí sobrescribe el archivo, se reemplazará su contenido.')
+
+ self.add_buttons(
+ Gtk.STOCK_NO, Gtk.ResponseType.CANCEL,
+ Gtk.STOCK_YES, Gtk.ResponseType.ACCEPT)
+
+ respuesta = self.run()
+ self.destroy()
+
+ if respuesta == Gtk.ResponseType.ACCEPT:
+ escritura = open(direccion, 'w')
+
+ escritura.write(texto)
+ buffer.set_modified(False)
+
+ escritura.close()
+
+
class DialogoCerrar(Gtk.Dialog):
"""El díalogo que le pregunta al usuario sí en
realidad quiere borrar la página del GtkNotebook()"""
diff --git a/CristianEdit/objetos.pyc b/CristianEdit/objetos.pyc
index 4263b90..6f464c9 100644
--- a/CristianEdit/objetos.pyc
+++ b/CristianEdit/objetos.pyc
Binary files differ