Both sides previous revisionPrevious revisionNext revision | Previous revision |
api_documentation [2021/01/26 05:38] – [Garcon] kevinbowen | api_documentation [2021/01/26 10:01] (current) – kevinbowen |
---|
* **[[#Core Xfce Libraries|Core Xfce Libraries]]** | * **[[#Core Xfce Libraries|Core Xfce Libraries]]** |
* **[[#GTK+/Glib Libraries|GTK+/Glib Libraries]]** | * **[[#GTK+/Glib Libraries|GTK+/Glib Libraries]]** |
* **[[https://docs.xfce.org/contribute/dev/start|How to contribute]]** | * **[[https://docs.xfce.org/contribute/dev/start|How to contribute to Xfce development]]** |
* **[[#Developer Tutorials|Developer Tutorials]]** | * **[[#Xfce Developer Tutorials|Xfce Developer Tutorials]]** |
| * **[[https://docs.xfce.org/contribute/start#bug_reporting_and_testing|Bug Reporting and Testing]]** |
| |
| [[https://developer.xfce.org/|Main Xfce API Documentation Page]] |
| |
| The Xfce library documentation may often be installed by distributions in ''/usr/share/gtk-doc/html/''. |
| |
| ---- |
| |
===== Core Xfce Libraries ===== | ===== Core Xfce Libraries ===== |
[[https://www.os-cillation.de/en/opensourceprojekte/libexo/|os-cillation]]. It has some helper applications that are used throughout the entire Xfce desktop to manage preferred applications and edit ''.desktop'' files. | [[https://www.os-cillation.de/en/opensourceprojekte/libexo/|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. | |
| |
* [[https://developer.xfce.org/exo/index.html|Exo API documentation]] | * [[https://developer.xfce.org/exo/index.html|Exo API documentation]] |
* [[https://docs.xfce.org/xfce/exo/start#latest_release|Release notes and link to latest release]] | |
* [[https://docs.xfce.org/xfce/exo/bugs|Bug Reporting for exo]] | |
| |
---- | ---- |
| |
* [[https://developer.xfce.org/garcon/index.html|Garcon API documentation]] | * [[https://developer.xfce.org/garcon/index.html|Garcon API documentation]] |
* [[http://archive.xfce.org/src/xfce/garcon|Release notes and link to latest release]] | |
* [[https://docs.xfce.org/xfce/garcon/bugs|Bug Reporting for garcon]] | |
| |
---- | ---- |
| |
* [[https://developer.xfce.org/libxfce4ui/index.html|libxfce4ui API documentation]] | * [[https://developer.xfce.org/libxfce4ui/index.html|libxfce4ui API documentation]] |
* [[http://archive.xfce.org/src/xfce/libxfce4ui|Release notes and link to latest release]] | |
| |
---- | ---- |
| |
* [[https://developer.xfce.org/libxfce4util/index.html|libxfce4util API documentation]] | * [[https://developer.xfce.org/libxfce4util/index.html|libxfce4util API documentation]] |
* [[http://archive.xfce.org/src/xfce/libxfce4util|Release notes and link to latest release]] | |
* [[https://docs.xfce.org/xfce/libxfce4util/start#reporting_bugs|Bug report for libxfce4util]] | |
| |
---- | ---- |
| |
* [[https://developer.xfce.org/thunar/index.html|thunar API documentation]] | * [[https://developer.xfce.org/thunar/index.html|thunar API documentation]] |
* [[http://archive.xfce.org/src/xfce/thunar|Release notes and link to latest release]] | |
* [[https://docs.xfce.org/xfce/thunar/start#reporting_bugs|Bug reporting for thunar]] | |
| |
---- | ---- |
| |
* [[https://developer.xfce.org/xfce4-panel/index.html|xfce4-panel API documentation]] | * [[https://developer.xfce.org/xfce4-panel/index.html|xfce4-panel API documentation]] |
* [[https://docs.xfce.org/xfce/xfce4-panel/start#latest_release|Release notes and link to latest release]] | |
* [[https://docs.xfce.org/xfce/xfconf/bugs|Bug reporting for xfce4-panel]] | |
| |
---- | ---- |
| |
* [[https://developer.xfce.org/xfconf/index.html|xfconf API documentation]] | * [[https://developer.xfce.org/xfconf/index.html|xfconf API documentation]] |
* [[https://docs.xfce.org/xfce/xfconf/start#latest_release|Release notes and link to latest release]] | |
* [[https://docs.xfce.org/xfce/xfconf/bugs|Bug reporting for xfconf]] | |
These libraries are often also installed by distributions in ''/usr/share/gtk-doc/html/''. | |
| |
| |
| [[|Back to Top]] |
---- | ---- |
| |
===== GTK+/Glib Libraries ===== | ===== GTK+/Glib Libraries ===== |
Additionally, Xfce uses the GTK+/Glib family of libraries which can be found at the following: | In addition to the above mentioned built-in libraries, Xfce also uses the GTK+/Glib family of libraries. |
| |
| ==== GLib ==== |
| |
| GLib provides the core application building blocks for libraries and applications written in C. It provides the core object system used in GNOME, the main loop implementation, and a large set of utility functions for strings and common data structures. |
| |
| * [[https://developer.gnome.org/glib/stable/|GLib documentation - Stable release]] |
| |
| ==== GIO ==== |
| |
| GIO provides a modern and easy-to-use VFS API. It provides a file system abstraction which allows applications to access local and remote files with a single consistent API. |
| |
* [[https://developer.gnome.org/glib/stable/|GLib]] | |
* [[https://developer.gnome.org/gio/stable/|GIO]] | * [[https://developer.gnome.org/gio/stable/|GIO]] |
| |
| ==== GDK ==== |
| |
| GDK is an intermediate layer which isolates GTK+ from the details of the windowing system. |
| |
* [[https://developer.gnome.org/gdk3/stable/|GDK]] | * [[https://developer.gnome.org/gdk3/stable/|GDK]] |
| |
| ==== GTK+ ==== |
| |
| GTK+ is the primary library used to construct user interfaces in GNOME applications. It provides user interface controls and signal callbacks to control user interfaces. |
| |
* [[https://developer.gnome.org/gtk3/stable/|GTK+]] | * [[https://developer.gnome.org/gtk3/stable/|GTK+]] |
| |
| [[|Back to Top]] |
---- | ---- |
| |
===== Developer Tutorials ===== | ===== Xfce Developer Tutorials ===== |
| |
| ==== General Xfce Development Information ==== |
| |
| For a general overview on getting involved with Xfce development, see [[https://andreldm.com/2018/12/03/xfce-contributor-guide.html|The Ultimate Contributor's Guide to Xfce]]. This article provides some basic guidelines for Xfce development, fixing bugs, and becoming familiar with the Xfce community. |
| |
| |
| ==== GTK+ Development Information ==== |
| |
Tutorials for getting started with GTK+ are available at: | Tutorials for getting started with GTK+ are available at: |
| |
* [[https://developer.gnome.org/gtk3/stable/gtk-getting-started.html|GTK+ 3 Tutorial (Official)]] | * [[https://developer.gnome.org/gtk3/stable/gtk-getting-started.html|GTK+ 3 Tutorial (Official)]] |
| |
| |
| ==== Xfce plugin Development Information ==== |
| |
If you're looking to write a panel plugin, the [[https://gitlab.xfce.org/panel-plugins/xfce4-sample-plugin|xfce4-sample-plugin]] provides a base to get started. | If you're looking to write a panel plugin, the [[https://gitlab.xfce.org/panel-plugins/xfce4-sample-plugin|xfce4-sample-plugin]] provides a base to get started. |
| |
| [[|Back to Top]] |
| ---- |
| |
| [[https://docs.xfce.org/contribute/dev/start|Back to main Xfce Development Information page]] |