/tags/pyragua-0.2.5/pyragua/Utils.py – Pyragua

root/tags/pyragua-0.2.5/pyragua/Utils.py

Revision 390, 2.4 KB (checked in by ark, 2 years ago)

directorio faltante

Line 
1#! -*- coding: iso8859-1 -*-
2"""
3Este archivo es parte de Pyragua
4
5Pyragua es software libre; lo puedes redistribuir y/o modificar
6bajo los terminos de la Licencia Publica General (GNU GPL) como fue
7publicada por la Free Software Foundation; cualquier versión 2 de la
8Licencia.
9
10Este programa es distribuido con la esperanza de que será útil,
11pero SIN GARANTIA ALGUNA; ni con la garantía explícita de
12MERCABILIDAD o de que SERVIRA PARA UN PROPOSITO EN PARTICULAR.
13Mire la Licencia Pública General de la GNU para más detalles.
14
15Debió recibir una copia de la Licencia Pública General de la GNU junto con
16este programa; sino, escriba a la Free Software Foundation,
17Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
18"""
19
20# Archivo de utilidades
21# Pyragua
22
23import wx
24# Para i18n
25import gettext
26gettext.install("pyragua",unicode=1)
27_ = gettext.gettext
28
29
30def MostrarError(padre,msg):
31    """Muestra un error al usuario"""
32    dlg=wx.MessageDialog(padre,msg,_("Error"),style=wx.ICON_ERROR)
33    dlg.ShowModal()
34    dlg.Destroy()
35   
36def MostrarAviso(padre,msg):
37    """Muestra un aviso al usuario"""
38    dlg=wx.MessageDialog(padre,msg,_("Aviso"),style=wx.ICON_INFORMATION | wx.YES_NO)
39    if dlg.ShowModal() == wx.ID_YES:
40        dlg.Destroy()
41        return True       
42    else:
43        dlg.Destroy()
44        return False
45   
46def EliminarEOLS(cad):
47    """Recibe una cadena  y la retorna sin saltos de línea"""
48    tmp=""
49    for c in cad:
50        if c not in ['\n','\r']:
51            tmp+=c
52    return tmp
53   
54def EliminaTab(TabWidth, Path,Codificacion):   
55    """Recibe el tamano del tab(En espacios), el path del archivo y su codificacion
56    Este metodo cambia las tabulaciones por espacios y coloca el fin de linea
57    dependiendo la arquitectura"""
58    text=''
59    arch=open(Path)
60    #Busco la arquitectura en la cual esta corriendo
61    if wx.Platform == '__WXMSW__':
62        FinLinea='\r\n'
63    elif wx.Platform == '__WXMAC__':
64        FinLinea='\r'
65    else:
66        FinLinea='\n'
67    for linea in arch.readlines():
68        for palabra in linea:
69            if palabra in ['\n','\r']:
70                text+=FinLinea
71                break
72            if palabra=='\t':
73                for i in range(TabWidth):
74                    text+=' '
75                    continue
76            else:
77                text+=palabra
78                continue
79    arch.close()
80    text=text.decode(Codificacion)
81    return text
Note: See TracBrowser for help on using the browser.