Articulo de referencia

IUP (software)

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 usua...

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 ]

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

  1. "IUP para Zig" . Noticias de Zig . 19 de septiembre de 2021. Consultado el 16 de mayo de 2023 .
  2. "IUP - Interfaz de Usuario Portátil" . www.tecgraf.puc-rio.br . Consultado el 24 de septiembre de 2016 .
  3. "Historia 3.x" . www.tecgraf.puc-rio.br . Consultado el 16 de mayo de 2023 .
  4. "Licencia de la biblioteca Tecgraf" . www.tecgraf.puc-rio.br . Consultado el 3 de diciembre de 2015 .
  • Sitio web oficial