Précédent   Forum des professionnels en informatique > Général Développement > Programmation système > Linux > GTK > GTK+
GTK+ Forum d'entraide sur le développement avec GTK+. Avant de poster -> FAQ GTK+
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/02/2012, 20h32   #1
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Par défaut Menu coloriés ?

Bonjour

J'aimerais bien générer de tels menu avec gtk3 :
Le but étant de différencier certains item par la couleur. Est-ce possible ?
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/02/2012, 17h26   #2
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
A priori je dirais non. Du moins pas de manière simple.

Une idée qui me vient serait de créer une image que tu pourrais ensuite intégrer comme un GtkImageMenuItem. Mais bon, c'est peut être un peut tiré par les cheveux...
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/02/2012, 17h33   #3
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Il faudrait que je calcule la hauteur de chaque entrée ?
Pas génial !
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/02/2012, 17h40   #4
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
Je peux toujours essayer de construire une petite fonction adéquate pour voir si c'est faisable de manière relativement simple.
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/02/2012, 20h36   #5
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
A force de chercher il y a peut être un début de solution avec la fonction gtk_widget_override_background_color();.
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/02/2012, 21h19   #6
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Le widget ? C'est quoi ? Un élément du menu ou tout le menu ?
Je ne pense pas qu'un élément du menu puisse être considéré comme un widget. Si ?
Dans ce cas favorable, comment l'atteindre ?
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2012, 15h39   #7
Membre Expert
 
Homme
Développeur informatique
Inscription : juin 2009
Messages : 840
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : juin 2009
Messages : 840
Points : 1 168
Points : 1 168
Citation:
Envoyé par troumad Voir le message
Je ne pense pas qu'un élément du menu puisse être considéré comme un widget. Si ?
Un GtkMenuItem est bien un widget...
liberforce est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2012, 16h14   #8
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
Apparemment si l'entrée du menu est un GtkRadioMenuItem* seul le bouton sera affecté par la fonction gtk_widget_override_background_color();. Le label aura toujours le fond gris (ou de la couleur du gestionnaire de fenêtre choisi).
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2012, 16h48   #9
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
Ca y est. Je le tiens .

Il faut ajouter une fonction callback associée au signal "draw" pour chaque GtkMenuItem*. Je te la fournis :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
gboolean
callback_background_color_menuitem (GtkWidget *widget, cairo_t *cr, gpointer user_data)
{
  GdkRGBA *color  = (GdkRGBA*) user_data;
  GtkAllocation allocation;
 
  /* Récupération de la taille du widget */
  gtk_widget_get_allocation (widget, &allocation);
 
  /* Affectation de la couleur de fond */
  cairo_set_source_rgba (cr, color->red, color->green, color->blue, color->alpha);
 
  /* Remplissage de la surface du widget */
  cairo_rectangle (cr, 0, 0, allocation.width, allocation.height);
  cairo_fill(cr);
 
  return FALSE;
}
Il faut transmettre à cette fonction un pointeur sur un GdkRGBA* qui contiendra la couleur de fond que tu veux associer au GtkMenuItem*.
Par exemple on pourrait écrire:
Code :
1
2
3
4
5
GdkRGBA color;
  color.red = 1.0;
  color.green = 1.0;
  color.blue = 51.0/255;
  color.alpha=1.0;
Il nous suffira de passer le pointeur de cette variable au callback associé:
Code :
1
2
 radioitem = gtk_radio_menu_item_new_with_label  (group, name);
      g_signal_connect (G_OBJECT(radioitem), "draw", G_CALLBACK(callback_background_color_menuitem), &color);
Il est important de bien penser à ce que la variable color soit toujours "vivante" le temps de l'exécution du code. C'est pour cela que je pense qu'elle doit être initialisée dans la fonction main(); et propagée au callback à partir de là.

Histoire de te montrer ce que ca donne j'ai modifié ton code perso. Les menus interactifs construits à partir du contenu des répertoires ont maintenant un fond jaune .
Images attachées
Type de fichier : png fondjaune.png (36,3 Ko, 4 affichages)
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 07/02/2012, 21h39   #10
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Je ne pense pas avoir le temps de tester avant Jeudi après midi. Mais, là, c'est pour les barres de menus uniquement...
Je me suis mal exprimé peut-être !
Ma copie d'écran représentait une ComboBox... Et c'est une ComboBox que je voudrais colorier !
Ceci-dit, je vais sûrement profiter de cet exemple pour tester avec les menus
Et peut-être rajouter quelques lignes dans mon articles sur les menus avec gtk
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2012, 10h22   #11
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
Bon, ben, je te fais ca pour les combobox alors .
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 14h48   #12
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Je suis arrivé à faire marcher ton système avec mes menu

Cependant, je tombe sur un bug de code::blocks... J'aurais voulu étudier le paramètre widget de ta fonction, je mets un stoppeur à la ligne 171 du fichier callback_menu (dans ta fonction), lorsque le mode pas à pas arrive sur cette fonction, je n'ai plus que la souris qui marche dans l'interface graphique !
C'est la seconde fois que j'arrive sur un tel problème ! Voir : http://www.mageialinux-online.org/fo...t=&idm=&quote=

En plus, bien avant d'arriver sur ta fonction, j'ai plein de warning qui arrivent en ligne de commande :
Code :
Gtk-WARNING **: Theme parsing error: gtk.css:132:30: Not using units is deprecated. Assuming 'px'.
Peut-être une histoire de mise à jour inachevées...
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 15h08   #13
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
Un petit problème lié au thème de ton bureau peut être
Code :
...Theme parsing error: gtk.css
Pour ce qui est de colorier un GtkCombox je suis toujours dessus. Je suis en train de me casser les dents dessus . Je n'arrive toujours pas à accéder au popup qui s'ouvre lorsque tu cliques sur le bouton du GtkCombox. Je continue mes recherches...
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 15h17   #14
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Citation:
Envoyé par gerald3d Voir le message
Par exemple on pourrait écrire:
Code :
1
2
3
4
5
GdkRGBA color;
  color.red = 1;
  color.green = 1;
  color.blue = 51/255;
  color.alpha=1;
Attention, ce code cache un peu la ralité des choses...
Il faut des float et on ne voit que des entiers

Tu peux mettre à la limite :
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 16h30   #15
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Mon but étant de colorier l'entrée du menu en fonction de sa configuration, j'ai besoin de savoir quelle est l'entrée : ce qu'elle affiche ou son rang dans les entrées. Est-ce possible à partir de l'entrée widget ?

J'ai un autre problème, pour certaines entrées, c'est bon, et pas pur d'autres. Dans certains cas, toute la case est coloriée, même ce qui est affiché !
En enlevant la ligne qui colorie c'est bon :Tu peux voir ceci aux lignes 296 et 184 de mon fichier callback_menu.c de mon projet http://troumad.org/Mes_regles/perso3.zip
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 16h45   #16
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
Citation:
Envoyé par troumad Voir le message
Mon but étant de colorier l'entrée du menu en fonction de sa configuration, j'ai besoin de savoir quelle est l'entrée : ce qu'elle affiche ou son rang dans les entrées. Est-ce possible à partir de l'entrée widget ?
Je ne comprends pas. Quelle entrée du menu? Du GtkComboBox? Quelle configuration? Désolée, là je suis perdu!
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 16h49   #17
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
Citation:
Envoyé par troumad Voir le message
...
Tu peux voir ceci aux lignes 296 et 184 de mon fichier callback_menu.c de mon projet http://troumad.Mes_regles/perso3.zip
Heuuu marche pas ton lien!
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 17h24   #18
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Oups... J'ai encore bouffé une partie du lien... Je corige...
Voici le menu que je voudrais colorier et le version colorié à côté :

Celui qui marche est créé avec gtk_menu_item_new_with_mnemonic, ceux qui ne marchent pas sont créés avec gtk_check_menu_item_new_with_mnemonic ou gtk_radio_menu_item_new_with_mnemonic
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 17h54   #19
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
À partir de quelle fonction appelles-tu callback_background_color_menu_classe();. Je ne trouve pas...
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 18h06   #20
Membre Expert
 
Avatar de gerald3d
 
Homme Gérald
Conducteur de train
Inscription : février 2008
Messages : 1 287
Détails du profil
Informations personnelles :
Nom : Homme Gérald
Âge : 42
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Conducteur de train
Secteur : Transports

Informations forums :
Inscription : février 2008
Messages : 1 287
Points : 2 223
Points : 2 223
Bon, même si je n'ai pas trouvé l'origine de l'appel ce n'est pas grave.

La fonction que je t'ai donné est un Callback éxécuté sur l'appel du signal "draw". Donc le prototype de ce callback doit être respecté.

Si tu veux que tes menus soient affichés correctement il faut ces prototypes :
Code :
1
2
gboolean callback_background_color_menu_race (GtkWidget *widget, cairo_t *cr, gpointer param);
gboolean callback_background_color_menu_classe (GtkWidget *widget, cairo_t *cr, gpointer param);
Et dans chacune de ces fonctions il faut finir par un return FALSE; sous peine d'interdire la propagation du signal "draw" au reste de la construction du menu. Ce pour quoi actuellement tu n'as aucun texte.
__________________
Système d'exploitation : Debian Amd64 Testing / Slackware 13.37 32 bits

Site perso : http://gerald3d.developpez.com (article Glade3 et Gtk+)

Site perso : http://linechec.sourceforge.net (jeu d'echec) v0.4-1
Site perso : http://m3dlib.tuxfamily.org/ (moteur 3d. Rendu dans un GtkDrawingArea avec utilisation de Cairo.) v0.24

contact jabber : gerald3d@jabber.tuxfamily.org
gerald3d est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h57.


 
 
 
 
Partenaires

Hébergement Web