SynonymsBot
Synonyms for gtkmm or Related words with gtkmm
wxwidgets
pyqt
wxpython
fltk
winrt
pygobject
pygtk
webmin
pygame
pyside
gnustep
gnomevfs
dosbox
haxe
ironpython
litestep
gobject
xcode
textmate
kparts
commandline
ncurses
cmake
amigaos
hypercard
firemonkey
remobjects
ppapi
mediawiki
fpgui
glibc
openjdk
cygwin
freedos
mingw
xulrunner
omegat
icedtea
xamarin
beanshell
jchempaint
libxslt
xbmc
xunit
systemd
topstyle
xpcom
crunchbang
ispell
busybox
Examples of "gtkmm"
gtkmm
(formerly known as gtk-- or gtk minus minus) is the official C++ interface for the popular GUI library GTK+.
gtkmm
is free software distributed under the GNU Lesser General Public License (LGPL).
Because
gtkmm
is the official C++ interface of the GUI library GTK+, C++ programmers can use the common OOP techniques such as inheritance, and C++-specific facilities such as STL (In fact, many of the
gtkmm
interfaces, especially those for widget containers, are designed to be similar to the Standard Template Library (STL)).
Nemiver is written in C++, and heavily relies on many components of the GNOME platform, such as
Gtkmm
.
gtkmm
allows the creation of user interfaces either in code or with the Glade Interface Designer, using the Gtk::Builder class. Other features include typesafe callbacks, a comprehensive set of graphical control elements, and the extensibility of widgets via inheritance.
GParted is written in C++ and uses
gtkmm
to interface with GTK+. The general approach is to keep the GUI as simple as possible and in conformity with the GNOME Human Interface Guidelines.
Following the fork, Inkscape's developers changed it greatly: they changed the programming language from C to C++; adopted the GTK+ (formerly GIMP Toolkit) toolkit C++ bindings (
gtkmm
); redesigned its user interface, and added a number of new features. Notably, Inkscape's implementation of the SVG standard, although incomplete, has shown gradual improvement.
K-3D is a free 3D modelling and animation software. It features a plug-in-oriented procedural engine for all of its content. K-3D supports polygonal modelling, and it includes basic tools for NURBS, patches, curves and animation. Despite its name it is not a KDE application; it uses the GTK+ toolkit via
gtkmm
.
Openismus was a small company with limited liability, based in Berlin and Munich, with a focus on Open Source technologies. It is known for contributions to the GNOME project (through
gtkmm
, GTK+ and Glade) and to the Maemo and MeeGo platforms, as well as co-founding the GNOME Mobile & Embedded Initiative. The company closed down in March 2014.
Perhaps the most profound difference is GObject’s emphasis on signals (called events in other languages). This emphasis derives from the fact that GObject was specifically designed to meet the needs of a GUI toolkit. Whilst there are signal libraries for most object-oriented languages out there, in the case of GObject it is built into the object system. Because of this, a typical GObject application will tend to use signals to a much larger extent than a non-GObject application would, making GObject components much more encapsulated and reusable than the ones using plain C++ or Java. If using glibmm/
gtkmm
, the official C++ wrappers to Glib/GTK+ respectively, the sibling project libsigc++ allows easy use of underlying GObject signals using standard C++. Of course, other implementations of signals are available on almost all platforms, although sometimes an extra library is needed, such as Boost.Signals2 for C++.
'libsigc++' implements a callback system for use in abstract interfaces and general programming. Libsigc++ is one of the earliest implementations of the signals and slots concept implemented using C++ template metaprogramming. It was created as an alternative to the use of a meta compiler such as found in the signals and slots implementation in Qt. Libsigc++ originated as part of the
gtkmm
project in 1997 and later was rewritten to be a standalone library. Each signal has a particular function profile which designates the number of arguments and argument type associated with the callback. Functions and methods are then wrapped using template calls to produce function objects (functors) which can be bound to a signal. Each signal can be connected to multiple functors thus creating an observer pattern through which a message can be distributed to multiple anonymous listener objects. Reference counting based object lifespan tracking was used to disconnect the functors from signals as objects are deleted. The use of templates allowed for compile time typesafe verification of connections. The addition of this strict compile time checking required the addition of template typecasting adapters which convert the functor callback profile to match the required signal pattern.