- FLTK
-
FLTK
FLTK www.fltk.org Información general Última versión estable 1.1.9
27 de abril de 2008Género Biblioteca de desarrollo Escrito en C++ Sistema operativo Unix/Linux/BSD (X11), Mac OS X, Windows Licencia GLPL La "Fast, Light Toolkit" (se pronuncia "felteck") en una biblioteca de IGU multiplataforma, desarrollada inicialmente por Bill Spitzak y luego mantenida por un grupo de desarrolladores alrededor del mundo. La biblioteca fue desarrollada teniendo en cuenta programación de gráficos 3D en mente, para esto tiene un interfaz a OpenGL, pero es aún apropiada para desarrollar aplicaciones IGU de propósito general.
Utilizando sus propios widgets, trazado de gráficos 2D y sistema de eventos (aunque FLTK2 ha ganado experimental suporte para usar opcionalmente la biblioteca gráfica cairo) desarrollados sobre el abstracto código dependiente del sistema, lo cual permite escribir programas que lucen idénticos cuando son compilados en cualquiera de los sistemas operativos soportados.
FLTK es software libre, licenciado bajo LGPL con la clausula adicional que permite enlazado estático por aplicaciones con licencias incompatibles. Además incluye FLUID (del Inglés, FLTK User Interface Designer), una interfaz de diseño gráfico de FLTK que genera los archivo de cabecera y código para una IGU desarrollada.
En contraste a otras bibliotecas como Qt y wxWidgets, FLTK aplica una estricta regla de eficiencia antes de apariencia, lo que le cuesta restricciones a su apariencia y funcionalidad, pero por otro lado, hace de FLTK una biblioteca que consume muy bajos recursos y muy pequeña en tamaño. Esto se refleja en el pequeño tamaño de los programas (el programa "Hola, Mundo!" en FLTK solo ocupa alrededor de 100 KiB), y permite que sea usualmente estáticamente enlazada, aunque el enlace dinámico también esta disponible. Lo que previene el uso de complicados macros y preprocesamiento de código separado, además no hace uso de avanzadas características de C++ como: plantillas, excepciones, RTTI. Las versiones FLTK 1.1.x no usan namespace. Por lo anterior y combinado con el modesto tamaño del paquete, requiere de una corta curva de aprendizaje para los nuevos usuarios.
Pero estas ventajas como se comento anteriormente vienen con sus correspondiente desventajas. FLTK ofrece menos widgets o menos efectos que otras que más grandes bibliotecas gráficas, además por usar widgets no nativos, no luce como las aplicaciones nativas que lucen y se siente igual que la plataforma gráfica del sistema.
Contenido
Que significa "FLTK"?
FLTK fue originalmente diseñada para ser compatible con la biblioteca Forms desarrollada para sistemas SGI (un derivado de esta biblioteca se conoce como "XForms" que aun es frecuentemente utilizada). En esa biblioteca todas las funciones y estructuras inician con "fl_". Este estilo fue extendido a todos los nuevos métodos y widgets en la bibliotecas C++, y el prefijo "FL" fue tomado como nombre de la biblioteca. Después que FL fue liberada como código abierto, fue descubierto que fue imposible buscar por "FL" en Internet, debido al hecho que es la abreviación usada para Florida. Después de muchos debates y buscado por un nuevo nombre para la biblioteca, la cual fue para entonces utilizada por muchos desarrolladores y usuarios, Su creador Bill Spitzak tuvo la idea de usar "FLTK", con la explicación que significaba la abreviación para la frase en inglés"Fast Light Tool Kit", que traduce "Herramientas de Software Rápidas y Livianas".
Desarrollando aplicaciones con FLTK
FLTK fue principalmente diseñada para, y escrita en, el lenguaje de programación C++. Sin embargo, diferentes interfaces existen para otros lenguajes de programación orientada a objetos, por ejemplo Python[1] and Ruby.[2]
El siguiente ejemplo para FLTK 1.x crea una ventana con el texto "Hola, Mundo!" en un botón:
# include <FL/Fl.H> # include <FL/Fl_Window.H> # include <FL/Fl_Button.H> int main(int argc, char *argv[]) { Fl_Window* w = new Fl_Window(330, 190); new Fl_Button(110, 130, 100, 35, "Hola, Mundo!"); w->end(); w->show(argc, argv); return Fl::run(); }
Software desarrollado sobre FLTK
- El progama de retoque fotográfico CinePaint actualmente migrando de GTK+ a FLTK.
- flwm, un Gestor de ventanas X window
- Nuke, un software de producción digital (inglés)
- Progama para la impresión de posters PosteRazor (Windows, Mac OS X, Linux).
- El BVH editor Avimator para la creación y edición de avatares 3D
- Dillo es un pequeño navegador web
- Gmsh, un generador de mallas para calculos de Elementos finitos (inglés)
- EDE - Entorno del escritorio Equinox (inglés)
- Open Movie Editor Entorno abierto de edición de películas (inglés)
Véase también
- Portal:Software libre Contenido relacionado con Software libre.
- wxWidgets
- GTK+
- Qt
Referencias
Enlaces externos
- Sitio oficial de FLTK
- Tutor para principiantes en FLTK
- Tutor para principiantes (inglés)
- Página con códigos FLTK de Erco (inglés)
Categorías: X Window System | Interfaz gráfica de usuario | Widgets | Bibliotecas de C++ | Bibliotecas gráficas | Software libre
Wikimedia foundation. 2010.