[Python-es] Dudas al usar GTK en Linux y WxPython en Windows para una aplicación

Mario Lacunza mlacunza en gmail.com
Mar Dic 3 18:15:31 CET 2013


Pues si has hecho la prueba y no puedes corregir esos problemas q 
mencionas(de pasada has consultado en la lista en ingles de wxpython al 
respecto?)  yo lo q haria seria hacer dos versiones una para cada os y 
asi evitarme problemas, total lo unico q tendrias q hacer diferente 
seria la capa frontend o ventanas.

Saludos / Best regards

Mario Lacunza
Email:: mlacunza en gmail.com
Personal Website:: http://www.lacunza.biz/
Hosting:: http://mlv-host.com/
Mascotas Perdidas:: http://mascotas-perdidas.com/
Google Talk / Y! messenger / Skype: mlacunzav

El 03/12/13 12:07, manuelcortez escribió:
> Creo que envié una respuesta a una cuenta de correo en vez de la lista,
> pero aquí está:
>
> Hola. Sí, ya he hecho pruebas, y cuento con las opiniones de otros
> usuarios y desarrolladores ciegos, y pese a que WxPython usa GTK para
> Linux, varios de sus controles y el manejo del foco del sistema no los
> hace como deberían, y las aplicaciones que requieren de tecnologías de
> asistencia (AT-SPI) no lo interpretan correctamente. en palabras
> sencillas se podría decir que wxPython es accesible en Windows en un 99%
> y en Linux en algo más de un 65%, mientras que GTK "nativo" en Windows
> es 0% accesible y en Linux es lo más accesible que te vas a encontrar.
> Por eso va inicialmente mi consulta. NO tengo problema por hacer las dos
> interfaces, la cosa es como implementarlas en una aplicación. Saludos.
>
> El 03/12/2013 10:56 a.m., monoBOT escribió:
>> Yo he hecho aplicaciones con WxPython y funcionaban igual para windows
>> y linux. (el aspecto es diferente pero las pantallas tienen lo mismo)
>>
>>
>>
>> El 3 de diciembre de 2013 16:42, Mario Lacunza <mlacunza en gmail.com
>> <mailto:mlacunza en gmail.com>> escribió:
>>
>>      Hola,
>>
>>      la verdad q no entiendo el enrollo q estas planeando.. si te ves
>>      la definicion de wxPython este wrapper para python de wxWidgets lo
>>      q hace (a diferencia de QT) es usar los controles nativos del OS,
>>      es decir en win usara los de win y en Linux GTK, es decir no
>>      necesitas nada salvo empezar a programar.. o de casualidad ya has
>>      hecho pruebas y no funciona como esperas/deberia ser??
>>
>>      Saludos / Best regards
>>
>>      Mario Lacunza
>>      Email:: mlacunza en gmail.com <mailto:mlacunza en gmail.com>
>>      Personal Website:: http://www.lacunza.biz/
>>      Hosting:: http://mlv-host.com/
>>      Mascotas Perdidas:: http://mascotas-perdidas.com/
>>      Google Talk / Y! messenger / Skype: mlacunzav
>>
>>      El 03/12/13 10:13, manuelcortez escribió:
>>>      Hola,
>>>
>>>      Para una aplicación que planeo correr en dos tipos de SO (Win32 y
>>>      GNU/Linux) necesito utilizar diferentes librerías para interfaces
>>>      gráficas. Por cuestiones de Accesibilidad, bajo Linux debería usar GTK+3
>>>      y en Windows WxPython. MI pregunta es si puedo hacer esto con un mismo
>>>      código fuente, es decir, si en el mismo programa podría hacer que se
>>>      tomara una u otra librería sin afectar al rendimiento del mismo.
>>>
>>>      En un principio pensé en hacer algo así:
>>>
>>>      Crear un módulo llamado GUI, que dentro contenga una carpeta por cada
>>>      SO, o sea dos directorios, win32 y linux. Poner el __init__.py en cada
>>>      uno de esos directorios, e importar todo lo que necesito que puedan
>>>      importar otras partes de la aplicación. Luego, fuera de esos
>>>      directorios, en el directorio GUI, hacer el __init__.py, con algo como esto:
>>>
>>>      # -*- coding: utf-8 -*-
>>>      import sys
>>>
>>>      if sys.platform == "win32":
>>>      from win32 import *
>>>      elif sys.platform == "linux2":
>>>      from linux import *
>>>
>>>      Y así ir haciendo con cada SO que necesite.
>>>
>>>      Las preguntas:
>>>
>>>      1. ¿Hay alguna forma mejor de hacer esto? Solo se necesitarían librerías
>>>      gráficas diferentes, todo lo demás funcionará bien en ambas plataformas.
>>>      2. En el archivo que ejecuta la aplicación, se inicializa el MainLoop de
>>>      Wx para Windows o el GTK si se usa en Linux. Uso if's como en los
>>>      módulos para determinar la plataforma. Si el import de wx o GTK está
>>>      dentro del bloque de código del IF, supongo que no se importará si la
>>>      condición no es cierta. ¿Es mejor separar el código y hacer un archivo
>>>      para inicializar la app en Windows y otro para Linux?
>>>      3. En el setup.py, por ahora no he encontrado forma de hacer que como
>>>      dependencia se tenga GTK o WX si se tiene según qué plataforma, debería
>>>      volver a probar con IF? o hay instrucciones en setuptools para usar
>>>      según qué herramientas para diferentes OS.
>>>
>>>      Muchas gracias por la respuesta, saludos!
>>>
>>>
>>>
>>>      _______________________________________________
>>>      Python-es mailing list
>>>      Python-es en python.org <mailto:Python-es en python.org>
>>>      https://mail.python.org/mailman/listinfo/python-es
>>>      FAQ: http://python-es-faq.wikidot.com/
>>
>>      _______________________________________________
>>      Python-es mailing list
>>      Python-es en python.org <mailto:Python-es en python.org>
>>      https://mail.python.org/mailman/listinfo/python-es
>>      FAQ: http://python-es-faq.wikidot.com/
>>
>>
>>
>>
>> -- 
>> *monoBOT*
>> Visite mi sitio(Visit my site): monobotblog.alvarezalonso.es
>> <http://monobotblog.alvarezalonso.es>
>>
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> https://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> https://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20131203/76265a5a/attachment.html>


Más información sobre la lista de distribución Python-es