La interfaz de usuario portátil IUP es un kit de desarrollo de software que proporciona un conjunto de herramientas portátil y programable para crear interfaces gráficas de usuario (GUI) utilizando los lenguajes de programación C , Perl , Lua , Nim y Zig , entre otros. [ 1 ] Esto permite la creación rápida de prototipos y el perfeccionamiento, sin necesidad de compilación, de aplicaciones GUI implementables.
El propósito de IUP es permitir que la interfaz de usuario de los programas se ejecute en diferentes sistemas sin modificaciones. [ 2 ]
Proporciona esta capacidad mediante la vinculación de Lua con su código C/ C++ o simplemente escribiendo código C en la interfaz de programación de aplicaciones (API). Gestiona los elementos de la interfaz de usuario mediante controles nativos proporcionados por API nativas, como la API de Windows en Windows , GTK+ en Linux y Motif - LessTif en sistemas Unice más antiguos. También proporciona algunos controles desarrollados a medida mediante API gráficas como CD - Canvas Draw u OpenGL .
Características
Las características distintivas de IUP incluyen:
- ANSI C API, uno de los pocos conjuntos de herramientas compatibles con C estándar,
- API única para Windows o Linux ,
- Soporte integrado para scripts Lua que llaman a funciones IUP (controladas por el script Lua),
- Eliminación de la restricción de tipos de objetos de clase/instancia , pero manteniendo la jerarquía de herencia al estilo Lua basada en prototipos .
- Un modelo de diseño abstracto , en el que los tamaños y las posiciones se calculan a partir de contenedores horizontales y verticales, en lugar de coordenadas X e Y explícitas. También se admite el diseño basado en coordenadas con un tercer tipo de contenedor.
- API pequeña, del orden de unas 100 funciones .
- Uso de un bucle de eventos : mecanismo de devolución de llamada . Este bucle principal puede ser llamado desde Lua.
- Los elementos de la interfaz se crean antes de asignarlos a los elementos nativos. Esto es lo contrario de lo habitual al ensamblar elementos de la interfaz gráfica de usuario (GUI).
- Disponible como código fuente o como bibliotecas estáticas o dinámicas precompiladas para una amplia variedad de compiladores, incluyendo ejemplos de código fuente listos para usar.
La programación en Lua se realiza mediante la vinculación de Lua e IUPLua en (al menos) un pequeño programa en C llamado aplicación host. Este programa crea un estado de Lua, lo pasa a IUPLua para su inicialización y, a continuación, abre y ejecuta un script de Lua sobre dicho estado. Alternativamente, todo el estado de IUP se puede cargar dinámicamente mediante Lua requireo package.loadlibIUPLua.
Posteriormente, si es necesario, el/los script(s) se pueden compilar con el compilador de Lua.
La compatibilidad con UTF-8 se agregó al destino de Windows en noviembre de 2013 con el lanzamiento de la versión 3.9. [ 3 ]
Licencia, derechos de autor
IUP está licenciado de forma permisiva para su uso, modificación, venta y redistribución gratuitos bajo la licencia MIT . [ 4 ]
IUP ha estado en desarrollo al menos desde la versión 1.8 publicada en 1998. Se inició en colaboración con Petrobras .
Referencias
- ↑ "IUP para Zig" . Noticias de Zig . 19 de septiembre de 2021. Consultado el 16 de mayo de 2023 .
- ↑ "IUP - Interfaz de Usuario Portátil" . www.tecgraf.puc-rio.br . Consultado el 24 de septiembre de 2016 .
- ↑ "Historia 3.x" . www.tecgraf.puc-rio.br . Consultado el 16 de mayo de 2023 .
- ↑ "Licencia de la biblioteca Tecgraf" . www.tecgraf.puc-rio.br . Consultado el 3 de diciembre de 2015 .
Enlaces externos
- Sitio web oficial
- Software programado en Lua
- Kits de herramientas de widgets
- Interfaces de programación de aplicaciones
- Bibliotecas informáticas gratuitas
- Software libre multiplataforma
- Software que utiliza la licencia MIT.
- Kits de desarrollo de software