gtkmm  3.24.1
About: gtkmm is the C++ interface for the popular GUI library Gtk+ and Gnome.
  Fossies Dox: gtkmm-3.24.1.tar.xz  ("inofficial" and yet experimental doxygen-generated source code documentation)  

Some Fossies usage hints in advance:

  1. To see the Doxygen generated documentation please click on one of the items in the "quick index" bar above or use the side panel at the left which displays a hierarchical tree-like index structure and is adjustable in width.
  2. If you want to search for something by keyword rather than browse for it you can use the client side search facility (using Javascript and DHTML) that provides live searching, i.e. the search results are presented and adapted as you type in the Search input field at the top right.
  3. Doxygen doesn't incorporate all member files but just a definable subset (basically the main project source code files that are written in a supported language). So to search and browse all member files you may visit the Fossies gtkmm-3.24.1.tar.xz contents page and use the Fossies standard member browsing features (also with source code highlighting and additionally with optional code folding).
gtkmm Reference Manual


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.

For instance, see Widgets, Dialogs, TreeView and TextView.

See also the Programming with gtkmm book.


  • GTK+’s mature, capable set of Widgets widgets. See the GTK+ website for more information.
  • Use inheritance to derive custom widgets.
  • Type-safe signal handlers (slots), in standard C++, using libsigc++.
  • Polymorphism.
  • Use of the Standard C++ Library, including strings, containers and iterators.
  • Full internationalisation with UTF8.
  • Complete C++ memory management.
    • Member instances or dynamic new and delete.
    • Optional automatic deletion of child widgets.
    • No manual reference-counting.
  • Full use of C++ namespaces.
  • No macros.

Basic Usage

Include the gtkmm header:

#include <gtkmm.h>

(You may include individual headers, such as gtkmm/button.h instead.)

If your source file is, you can compile it with:

g++ -o program `pkg-config --cflags --libs gtkmm-3.0`

Alternatively, if using autoconf, use the following in


Then use the generated GTKMM_CFLAGS and GTKMM_LIBS variables in the project files. For example:

program_LDADD = $(GTKMM_LIBS)