gtkmm es la interfaz C++ oficial para la popular biblioteca de interfaz gráfica GTK+. Destacan las callbacks de tipo seguro, y un exhaustivo conjunto de widgets que son fácilmente extensibles a través herencia. Puede crear interfaces de usuario ya sea con código o con el diseñador de interfaces gráficas Glade, usando Gtk::Builder. Existe una extensa documentación, incluyendo referencias de la API y un tutorial.

gtkmm es software libre distribuido bajo la Licencia Pública General Reducida de GNU (LGPL).

gtkmm sigue el calendario de liberación oficial de bindings de la plataforma GNOME. Esto garantiza la estabilidad de la API/ABI y nuevas versiones en un calendario predecible, entregando API C++ para las API GTK+ y GNOME lo más pronto posible.

Características

  • Usar herencia para derivar widgets personalizados.
  • Manejadores de señales de tipo seguro, en C++ estandar.
  • Polimorfismo.
  • Uso de la biblioteca estándar C++, incluyendo cadenas, contenedores e iteradores.
  • Internacionalización completa con UTF8.
  • Manejo de memoria C++ completo
    • Composición de objetos.
    • Desasignación automática de widgets asignados dinámicamente.
  • Uso completo de los espacios de nombres de C++.
  • Sin macros.
  • Multi-plataforma: Linux (gcc), FreeBSD (gcc), NetBSD (gcc), Solaris (gcc, Forte), Win32 (gcc, MSVC++ .Net 2003, 2005, 2008), MacOS X (gcc), otros.
  • Software Libre, sin coste para desarrollos tanto propietarios como de código abierto.
  • Discutido, diseñado e implementado en público.

Otras bibliotecas relacionadas con gtkmm

gnomemm

gtkmm es un kit de herramientas para interfaces gráficas y nada más, y su meta es ser el mejor kit de herramientas de la IGU para C++. Dicha meta no cubre estructuras de datos genéricas de C++, y analizadores de XML, o acceso a base de datos. Incluso nuestro sistema señal/ranura es parte de una biblioteca separada (libsigc++). Sin embargo, gtkmm está diseñado para trabajar bien con otras bibliotecas de C++.

Las bibliotecas de gnomemm cubren algunas de estas tareas, pero son opcionales.

libsigc++

También, asegúrese de revisar nuestras bibliotecas compañeras, glibmm (cadenas UTF8, hilos, etc) y libsigc++ (señal/ranuras).

Otros

Asegúrese de revisar Bakery, un entorno de trabajo para la construcción de aplicaciones gtkmm/gnomemm. Permite el uso de la arquitectura documento/vista.