IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ avec C & C++ Discussion :

GTK3-GSettings et certains Widgets


Sujet :

GTK+ avec C & C++

  1. #1
    Membre confirmé
    Homme Profil pro
    Lycéen
    Inscrit en
    Février 2010
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2010
    Messages : 83
    Par défaut GTK3-GSettings et certains Widgets
    Bonjour,
    Je fais une interface GTK3 pour la configuration d'un logiciel (libre bien sûr), passant par GSettings.
    Pour les bindings des GtkSpinButtons et des GtkSwitches pas de problème.
    En revanche pour les GtkColorButtons et GtkFileChooserButtons, je ne trouve pas la propriété à lier à GSettings :
    g_settings_bind (settings, key, ctl, ICI_LA_PROPRIETE, G_SETTINGS_BIND_DEFAULT);

    Y en a-t-il une et si oui laquelle, ou dois-je changer les valeurs dans GSettings via une fonction callback ? Dans le cas d'un callback, comment assurer la synchronisation du widget avec GSettings ?

    Merci pour votre aide.

  2. #2
    Membre confirmé
    Homme Profil pro
    Lycéen
    Inscrit en
    Février 2010
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2010
    Messages : 83
    Par défaut
    Pour les GtkFileChooserButtons j'ai triché avec un GtkEntry et ça marche. Pour ceux qui ça interesserait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    #define DO_FILE(key, label, tooltip)																	\
    	DO_TMPBOX(label, tooltip)																		\
    	ctl = gtk_entry_new ();																			\
    	/* Disallow entry edition */																	\
    		g_object_set (ctl, "editable", FALSE, NULL);												\
    	/* Call filechooser when clicked */																\
    		g_signal_connect (ctl, "button-press-event", G_CALLBACK (filechooser), NULL);				\
    	g_settings_bind (settings, key, ctl, "text", G_SETTINGS_BIND_DEFAULT);							\
        gtk_box_pack_end (GTK_BOX(tmpBox), ctl, TRUE, TRUE, 0);
     
    void
    filechooser (GtkEntry *w, gpointer *p)
    {
    	static short running = 0;
     
    	/* If a file selector is already running, we won't open another one */
    	if (!running)
    	{
    		GtkWidget *dialog;
    		char *filename;
    		(void) p;
     
    		running = 1;
     
    		dialog = gtk_file_chooser_dialog_new (NULL, NULL, GTK_FILE_CHOOSER_ACTION_OPEN,
    											  GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
    											  GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
    											  NULL);
     
    		if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT)
    		{
    			filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER(dialog));
    			if(filename)
    				gtk_entry_set_text (w, filename);
    		}
     
    		gtk_widget_destroy (dialog);
    		g_free(filename);
     
    		running = 0;
    	}
    }
    Plus qu'à faire l'option permettant de passer les filtres au FileChooser.

    Par contre les GtkColorButtons je ne sait pas du tout comment faire...

  3. #3
    Membre confirmé
    Homme Profil pro
    Lycéen
    Inscrit en
    Février 2010
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Février 2010
    Messages : 83
    Par défaut
    J'ai finalement trouvé (gnome-terminal ayant quelque chose de similaire je m'en suis inspiré).
    Les réponses à ce problème se trouvent dans ce diff : http://bazaar.launchpad.net/~aurelie...ers/revision/4

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/01/2013, 12h16
  2. [VB6]Ouvril excel a une certaine feuille a partir de VB
    Par tomrou59 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 28/07/2003, 12h17
  3. Ne prendre que les infos avant une certaine date??
    Par mythtvtalk.com dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 08/07/2003, 10h20
  4. Bloquer le téléchargement de certains types de fichiers
    Par Nikos dans le forum Développement
    Réponses: 4
    Dernier message: 23/12/2002, 20h54
  5. Réponses: 2
    Dernier message: 23/12/2002, 20h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo