Libfm

De LXDE.org
Aller à : navigation, rechercher

Introduction

libfm est une bibliothèque basée sur glib/gio (en anglais) fournissant des outils de gestion de fichiers et les widgets correspondant manquant dans GTK+ et glib. C'est le cœur de PCManFM.

La bibliothèque est indépendante des bureaux (i.e. elle n'est pas spécifique à LXDE) et possède une interface de programmation propre. Elle peut être utilisée pour développer d'autres applications nécessitant des fonctionnalités de gestion de fichiers. Par exemple, on peut créer son propre gestionnaire de fichiers avec les possibilités offertes par libfm.

Fonctionnalités

Comment l'utiliser

Voici une exemple simple de programme GTK+ montrant comment afficher le contenu de son répertoire personnel avec libfm :

#include <gtk/gtk.h>
#include <libfm/fm.h> /* fichier d'en-tête de libfm */

int main(int argc, char** argv)
{
    FmFolder* folder;
    FmFolderModel* model;
    FmFolderView* view;
    GtkWidget* window, *scroll;

    gtk_init(&argc, &argv);

    window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    scroll = gtk_scrolled_window_new(NULL, NULL);
    gtk_container_add(GTK_CONTAINER(window), scroll);

    folder = fm_folder_get(fm_path_get_home());
    model = fm_folder_model_new(folder, FALSE);
    view = fm_folder_view_new(FM_FV_LIST_VIEW);
    gtk_container_add(GTK_CONTAINER(scroll), view);
    fm_folder_view_set_model(view, model);
    g_object_unref(model);
    g_object_unref(folder);

    gtk_widget_show_all(window); /* affiche la fenêtre principale */
    gtk_main();
    return 0;
}

Compiler la bibliothèque depuis la source

À compléter.