A gtkmm a hivatalos C++ interfész a népszerű GTK GUI programkönyvtárhoz. A kiemelendő tulajdonságai a típusbiztos visszahívások és egy teljes felületi elem készlet, amelyek örökléssel könnyen bővíthetőek. A felhasználói felületek létrehozhatóak kódból és a Glade felhasználóifelület-tervezővel, a Gtk::Builder használatával. Kiterjedt dokumentáció érhető el, API-hivatkozással és oktatóanyagokkal.

A gtkmm szabad szoftver, amely a GNU Lesser General Public License (LGPL) szerint kerül terjesztésre.

Funkciók

  • Öröklés használata az egyéni felületi elemek származtatásához.
  • Típusbiztos szignálkezelők szabványos C++-ban.
  • Polimorfizmus.
  • A szabványos C++ programkönyvtár használata, beleértve a karakterláncokat, a konténereket és az iterátorokat.
  • Teljes nemzetköziesítés UTF-8 használatával.
  • Teljes C++ memóriakezelés
    • Objektum kompozíció
    • A dinamikusan allokált felületi elemek automatikus deallokációja.
  • C++ névterek teljes használata.
  • Nincsenek makrók.
  • Keresztplatformos: Linux (gcc), FreeBSD (gcc), NetBSD (gcc), Solaris (gcc, Forte), Win32 (gcc, MSVC 2013 vagy későbbi (gtkmm3), MSVC 2017 vagy későbbi (gtkmm4)), MacOS X (gcc), egyebek
  • 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.

Egyéb gtkmm-hez kapcsolódó programkönyvtárak

gnomemm

A gtkmm egy GUI eszközkészlet és semmi több. A célja, hogy a legjobb C++ GUI eszközkészlet legyen. Ez a cél nem fedi le az általános C++ adatszerkezeteket, XML-feldolgozókat vagy az adatbázis-elérést. Még a saját szignál/foglalat rendszerünk is egy másik könyvtár (libsigc++) része. Azonban a gtkmm úgy lett tervezve, hogy jól együttműködjön minden más C++ programkönyvtárral.

A gnomemm programkönyvtárak lefednek néhány ilyen egyéb feladatot is, de használatuk nem kötelező.

libsigc++

Tekintse meg a többi társprogramkönyvtárunkat is, a glibmm-et (UTF-8 karakterláncok, szálkezelés stb.) és a libsigc++-t (szignál/foglalat).

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.