Cette page n'a pas encore d'étiquettes.
Apportez votre aide…

Ceci est une ancienne révision du document !


Liquid

Liquid est un module KDED qui permet de lister les points de montage disponibles sur un ordinateur et d'être averti lors de tout ajout ou suppression de l'un d'entre eux.

Vous pouvez utiliser le dépôt de Spomky afin de faciliter l'installation du logiciel et ses dépendances.

Le code source est disponible sous Launchpad et peut être téléchargé avec Bazaar.

Liquid est disponible sous forme de paquets binaires x86 et x86_64 pour Lucid Lynx.

Installez simplement le paquet apt://liquid. Pour développer en utilisant Liquid, installez le paquet apt://liquid-dev.

Vous devrez quitter votre session KDE puis revenir pour que Liquid soit pris en compte.

Liquid est un module KDED ; il s'exécutera en tâche de fond dès l'ouverture d'une session.

Si vous souhaitez arrêter Liquid ou désactiver le lancement automatique, rendez-vous dans le panneau "Configuration du système" de KDE, choisissez l'onglet "Avancé" puis sélectionnez "Gestionnaire de services".

Recherchez ensuite "Service Liquid" dans la partie "Services au démarrage" et activez-le comme il vous plaira.

Liquid peut être configuré via le panneau "Configuration du système" de KDE. Rendez-vous à l'onglet "Avancé" puis choisissez "Ponts de montage".
Vous changements sont pris en compte dès que vous les aurez validés.

Liquid utilise KNotify pour avertir les utilisateurs dès qu'un point de montage est ajouté ou supprimé. Dans l'onglet "Général", choisissez "Notifications" puis cherchez "Service Liquid".
Sélectionnez ensuite les méthodes de notifications selon votre convenance.

Liquid met à votre disposition une interface DBus proposant les méthodes et signaux suivants :

  • Signal : Added
  • Signal : Removed
  • Méthode : List
  • Méthode : updateSettings

Les signaux envoient une liste de chaînes de caractères. Ces chaînes de caractères représentent les points de montage.
La méthode List envoie une liste de chaînes de caractères représentant les points de montage disponibles actuellement.
updateSettings permet à Liquid de relire sa configuration. Cette méthode n'est utilie que si les paramètres ont été modifiés manuellement ou via un logiciel tiers.

L'API Liquid met à disposition des classes objet .

Seuls les classes objet C++ sont disponibles

notifier

notifier averti lorsqu'un point de montage est ajouté ou supprimé.

Pour utiliser notifier, ajoutez l'en-tête correspondant :

#include <Liquid/notifier.h>

Connexion des signaux

La partie de code suivante connecte les signaux de notifier aux slots correspondant au signal.

	connect(Liquid::Notifier::instance(), SIGNAL( mountpointAdded( Liquid::Mountpoint& ) ), this, SLOT( newMountPointAdded( Liquid::Mountpoint& ) ) );
	connect(Liquid::Notifier::instance(), SIGNAL( mountpointRemoved( Liquid::Mountpoint& ) ), this, SLOT( newMountPointDeleted( Liquid::Mountpoint& ) ) );

État de Liquid

Pour savoir si Liquid est fonctionnel -c'est à dire correctement connecté à l'interface DBus-, exécutez simplement la fonction isReady :

if( Liquid::Notifier::instance()->isReady() ) ...

Elle renvoie true si tout est bon ; sinon false.

mountpoint

mountpoint permet d'obtenir la liste des points de montage en cours et les informations sur ceux-ci.

Pour utiliser mountpoint, ajoutez l'en-tête correspondant :

#include <Liquid/mountpoint.h>

Obtenir la liste des points de montage

QList<Liquid::Mountpoint> result = Liquid::Mountpoint::allMountpoints();

Obtenir des informations sur un point de montage

L'objet Liquid::Mountpoint dispose de nombreuses fonctions :

  • Vérifier si l'objet est valide : bool isValid( void ) const;
  • Nom du système de fichiers : QString getFilesystemName( void ) const;
  • Type du système de fichierse : QString getFilesystemType( void ) const;
  • Chemin du système de fichiers : QString getFilesystemPath( void ) const;
  • Nom du périphérique (si disponible) : QString getRealDeviceName( void ) const;
  • Options passées à la fonction mount : QStringList getOptions( void) const;
  • Taille totale : QString getSize( const SizeType type = Liquid::Mountpoint::Decimal ) const;
  • Taille libre : QString getSizeFree( const SizeType type = Liquid::Mountpoint::Decimal ) const;
  • Taille disponible : QString getSizeAvailable( const SizeType type = Liquid::Mountpoint::Decimal ) const;
  • Nombre total de blocs : qlonglong getBlocks( void ) const;
  • Taille d'un bloc : qlonglong getBlocksSize( void ) const;
  • Nombre de blocs libres : qlonglong getBlocksFree( void ) const;
  • Nombre de blocs disponibles : qlonglong getBlocksAvailable( void ) const;
  • Nombre de fichiers : qlonglong getFiles( void ) const;
  • Nombre de fichiers libres : qlonglong getFilesFree( void ) const;
  • Taille maximale des noms de fichiers : qlonglong getFilenameMaxLength( void ) const;
  • Identifiant du propriétaire : uid_t getOwnerUID( void ) const;
  • Groupe du propriétaire : gid_t getOwnerGID( void ) const;
  • Login du propriétaire : QString getOwnerLogin( void ) const;
  • Nom complet du propriétaire : QString getOwnerFullName( void ) const;

Exemple

QList<Liquid::Mountpoint> result = Liquid::Mountpoint::allMountpoints();
QList<Liquid::Mountpoint>::const_iterator i;

for( i = result.constBegin(); i != result.constEnd(); i ++ )
{
	qDebug() << "Le point de montage " << i->getFilesystemPath() << " est de type " << i->getFilesystemType();
}

Supprimez le paquet apt://liquid ou apt://liquid-dev.
Vous devez quitter la session en cours et vous reconnecter pour que la désinstallation soit complète.

  • liquid.1281717500.txt.gz
  • Dernière modification: Le 13/08/2010, 18:38
  • par spomky