gtkmm est l'interface C++ officielle pour la bibliothèque graphique populaire GTK+. Ses points forts comprennent le typage fort des fonctions de rappel et un ensemble exhaustif d'éléments graphiques facilement extensibles via l'héritage. Vous pouvez créer des interfaces utilisateur soit par du code, soit avec le concepteur d'interfaces graphiques Glade en utilisant Gtk::Builder. Une documentation étendue incluant références d'API et tutoriel est disponible.

gtkmm est un logiciel libre distribué sous la licence publique générale pour les bibliothèques GNU (LGPL).

gtkmm follows the official GNOME Platform Bindings release schedule. This guarantees API/ABI-stability and new releases on a predictable schedule, delivering C++ API for the underlying GTK+ and GNOME APIs as soon as possible.

Fonctionnalités

  • Utilisation de l'héritage pour créer des éléments graphiques personnalisés.
  • Typage fort des gestionnaires de signaux, en C++ standard.
  • Polymorphisme.
  • Utilisation des bibliothèques C++ standard, y compris pour les chaînes, conteneurs et itérateurs.
  • Internationalisation complète avec UTF8.
  • Complete C++ memory management
    • Object composition
    • Automatic deallocation of dynamically allocated widgets.
  • Utilisation complète des espaces de noms C++.
  • Pas de macro.
  • Multi-plateformes : Linux (gcc), FreeBSD (gcc), NetBSD (gcc), Solaris (gcc, Forte), Win32 (gcc, MSVC++ .Net 2003, 2005, 2008), MacOS X (gcc), autres
  • Logiciel libre et gratuit pour les développements open source et propriétaires.
  • Discuté, conçu et implémenté publiquement.

Autres bibliothèques liées à gtkmm

gnomemm

gtkmm est une boîte à outils graphique, rien de plus. Il s'efforce d'être la meilleure boîte à outils graphique C++. Cet objectif ne couvre pas les structures de données génériques C++, le parcours des fichiers XML ou l'accès à la base de données. Même notre système signal/emplacements (slots) fait partie d'une bibliothèque séparée (libsigc++). Cependant, gtkmm est conçu pour fonctionner correctement avec toutes les autres bibliothèques C++.

Les bibliothèques gnomemm remplissent certaines de ces autres tâches, mais elles sont optionnelles.

libsigc++

Pensez également à jeter un œil à nos bibliothèques complémentaires, glibmm (chaînes UTF8, utilisation des threads, etc.) et libsigc++ (signaux/emplacements).

Autres

Assurez-vous de jeter un œil à Bakery, un cadre de travail pour la construction d'applications gtkmm/gnomemm. Il permet l'utilisation de l'architecture Document/Vue.