gtkmm is the official C++ interface for the popular GUI library GTK. Highlights include typesafe callbacks, and a comprehensive set of widgets that are easily extensible via inheritance. You can create user interfaces either in code or with the Cambalache User Interface designer, using Gtk::Builder. There's extensive documentation, including API reference and a tutorial.

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

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 2013 o posterior (gtkmm3), MSVC 2017 o posterior (gtkmm4)), MacOS X (gcc), otras
  • 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

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

Be sure to check out our companion libraries, glibmm (UTF8 strings, etc), pangomm (font layout), libsigc++ (signal/slots) and libxml++ (XML parser).