Projects / c++-gtk-utils


c++-gtk-utils is a lightweight library containing a number of classes and functions for programming GTK+ programs using C++ in POSIX environments where the user does not want to use a full-on wrapper such as gtkmm or wxWidgets. It provides classes for managing the lifetimes of GTK+ widgets and windows that will make GTK+ exception safe, functions to make single instance programs where restarting will bring up the existing instance, smart pointer classes for memory management, thread-safe signal/slot classes with automatic disconnection, classes for using std iostreams with files opened with Unix file descriptors, functions for connecting a callback object and a Unix file descriptor to the main loop with provision for automatic disconnection, classes and functions for inter-thread communication, some convenience pthread wrapper classes., a class encapsulating anonymous Unix pipes, a class to reassemble UTF-8 sent over pipes and sockets, and classes for printing Postscript files and plain text using the GTK+ print system.

Operating Systems

Recent releases

  •  01 Jun 2014 14:09

    Release Notes: A new Extension::exec_shared() function has been provided. Other minor improvements have been made.

    •  16 Apr 2014 19:31

      Release Notes: Minor improvements have been made. Breakage of one of the unit tests by GTK+3.12 has been fixed.

      •  28 Jan 2014 12:04

        Release Notes: This release fixes a bug with Extension::exec() which made a scheme script file evaluate to an empty list or throw a guile exception without arguments.

        •  24 Jan 2014 19:18

          Release Notes: An Extension::exec() function has been added to run guile scheme extensions in C++ programs. New Thread::TaskManager methods have been added to run std::packaged_task objects asynchronously. Other minor improvements have been made.

          •  29 Nov 2013 15:13

            Release Notes: This release adds minor improvements.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.