This is an old revision of the document!
Xfce API Documentation
Core Xfce Libraries
Library references can be found in the releases:
Exo
Exo is an extension library used in the Xfce desktop, originally developed by
os-cillation. It has some helper applications that are used throughout the entire Xfce desktop to manage preferred applications and edit .desktop
files.
exo is targeted at application development and is considered ready for production use. You no longer need to define the EXO_API_SUBJECT_TO_CHANGE preprocessor symbol.
Garcon
Garcon is an implementation of the freedesktop.org compliant menu specification. It is based on GLib/GIO and aims at covering the entire specification except for legacy menus. It was started as a complete rewrite of the former Xfce menu library called libxfce4menu, which, in contrast to garcon, was lacking menu merging features essential for loading menus modified with menu editors.
libxfce4ui
The libxfce4ui library is used to share commonly used Xfce widgets among the Xfce applications.
libxfce4util
thunar
xfce4-panel
xfconf
These libraries are often also installed by distributions in /usr/share/gtk-doc/html/
.
GTK+/Glib Libraries
Additionally, Xfce uses the GTK+/Glib family of libraries which can be found at the following:
Developer Tutorials
Tutorials for getting started with GTK+ are available at:
If you're looking to write a panel plugin, the xfce4-sample-plugin provides a base to get started.