[ruby-gnome2-doc-cvs] [Hiki] create - astuces_gconf

Back to archive index

ruby-****@sourc***** ruby-****@sourc*****
2003年 9月 11日 (木) 18:36:54 JST


-------------------------
REMOTE_ADDR = 195.0.122.200
REMOTE_HOST = 
        URL = http://ruby-gnome2.sourceforge.jp/fr?astuces_gconf
-------------------------
= Comment utiliser Ruby/GConf2

GConf est une m馗anisme de stockage de donn馥s.  C'est un des moyens les plus faciles pour enregistrer des donn馥s relatives la configuration d'une application.  Ses fonctionnalit駸 sont aussi bien 駘馮antes qu'amusantes.  Si vous devez rajouter des fonctions de personnalisation dans votre application, GConf est fait pour vous!

Vous pouvez 馮alement consulter ((<Introduction to the GConf library|URL:http://developer.gnome.org/feature/archive/gconf/gconf.html>)) (en anglais), qui introduit 馮alement GConf.

== Premi鑽e 騁ape
Voici un exemple facile mais complet.

 require 'gconf2'
 client = GConf::Client.new
 
 # Lecture de donn馥s
 p client["/apps/hoge/stage"]
 p client["/apps/hoge/name"] 
 
 # Ecriture de donn馥s
 client["/apps/hoge/stage"] = 1
 client["/apps/hoge/name"] = ARGV[0]

Sauvegardez cet exemple comme "test.rb" et ex馗utez-le deux fois.

 $ruby test.rb "hoge"
 $ruby test.rb "fuga"

Lors de la premi鑽e ex馗ution, il affichera deux valeurs "nil" car aucune donn馥 n'est encore stock馥.

Mais lors de la seconde ex馗ution, il affichera 1 et "hoge".

(('#')) Si vous d駑arrez une troisi鑪e fois le programme, vous obtiendrez 1 et "fuga".

C'est tout!
Il n'y a rien de plus savoir.  Vous pouvez s駻ialiser des donn馥s, et les lire/馗rire n'importe quel moment!

=== Ou sont les donn馥s?
Les donn馥s sont ger馥s par gconfd, qui est un d駑on instancipour chaque utilisateur.  Elles sont sauvegard馥s de fa輟n asynchrone dans $HOME/.gconf/apps/hoge/%gconf.xml.  Dans notre exemple, "/apps/hoge/stage" et "/apps/hoge/name" sont des clefs.  Leurs valeurs peuvent-黎re des cha〓es de caract鑽es, des nombres, ou des valeurs bool馥nnes.
== Notification lors d'un changement
GConf::Client utilise le syst鑪e de signaux GTK.  A la place d'utiliser les fonctions de rappel personnalis馥s de GConf, vous pouvez simplement vous connecter sur le signal "value_changed".
D駑arrez l'exemple suivant dans un terminal, ensuite red駑arrez le tout premier exemple dans une seconde session.

 require 'gconf2'
 require 'gtk2'
 
 client = GConf::Client.new
 client.add_dir("/apps/hoge")
 client.notify_add("/apps/hoge/name") do |client, entry|
   p entry.value
 end
 
 Gtk.main

== Modifications
:2003-09-11 ((<Masao|URL:../hiki.cgi?Masao>))
 Traduction en anglais.

:2003-06-19 ((<Masao|URL:../hiki.cgi?Masao>))
 Premi鑽e version (Japonais).

Traduction de la page anglaise par Laurent Sansonetti.





ruby-gnome2-cvs メーリングリストの案内
Back to archive index