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 Glade User Interface designer, using Gtk::Builder. There's extensive documentation, including API reference and a tutorial.

gtkmm is free software distributed under the GNU Library General Public License (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.

Funkciók

  • Öröklés használata az egyéni ablakelemek létrehozásához.
  • Típusbiztos szignálkezelők, szabványos C++-ban.
  • Polimorfizmus.
  • A szabványos C++ könyvtár használata, köztük karakterláncok, konténerek és iterátorok.
  • Teljes nemzetköziesítés UTF8-al.
  • Teljes C++ memóriakezelés
    • Objektum kompozíció
    • A dinamikus allokált ablakelemek automatikus deallokációja.
  • C++ névterek teljes használata.
  • Nincsenek makrók.
  • Cross-platform: Linux (gcc), FreeBSD (gcc), NetBSD (gcc), Solaris (gcc, Forte), Win32 (gcc, MSVC 2013 or later (gtkmm3), MSVC 2017 or later (gtkmm4)), MacOS X (gcc), others
  • Szabad szoftver, költségek nélkül használható nyílt és zárt forráskódú fejlesztéshez egyaránt.
  • Nyilvánosan megvitatott, tervezett és megvalósított.

Más gtkmm-hez kapcsolódó könyvtárak

gnomemm

gtkmm is a GUI toolkit and nothing more, and it strives to be the best C++ GUI toolkit. That mandate does not cover generic C++ data structures, an XML parser, or database access. Even our signal/slots system is part of a separate (libsigc++) library. However, gtkmm is designed to work well with all other C++ libraries.

A gnomemm könyvtárak lefednek néhány ilyen feladatot, de választhatóak.

libsigc++

Also, be sure to check out our companion libraries, glibmm (UTF8 strings, threading, etc) and libsigc++ (signal/slots).

Egyebek

Nézze meg a Bakery-t is, ami egy gtkmm/gnomemm alkalmazások létrehozásához készült keretrendszer. Segítségével használhatja a Dokumentum/Nézet architektúrát.