J'indique ceci pour faire gagner du temps à ceux que cela peut intéresser.
Le but est de choisir des couleurs codées en dur en utilisant une palette, toujours la même depuis la plus haute antiquité et indépendantes du thème utilisé sur une machine donnée.
Il serai en effet gênant de comparer deux courbes censés être de même couleur sans l'être vraiment.
Avec ma vieille Debian-6, en utilisant gtk_widget_modify_bg(), j'affichais la palette:
mais avec des versions plus récentes, comme Mint-18, j'obtenais ceci:
Après avoir erré dans la doc de GTK sans succès, j'ai finalement trouvé la solution à mon problème ici:
http://wxwidgets.10942.n7.nabble.com...n-td90794.html
Il faut désactiver l'influence du thème sur les boutons avec ceci:
Plus de détails sont donnés sur le lien cité.
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 gtk_rc_parse_string( "style \"our_button\" {\n" // This disables any engines that may be setting button // background images: " engine \"\" {}\n" // This should disable any other theme settings for button // background images: " bg_pixmap[NORMAL] = \"<none>\"\n" " bg_pixmap[ACTIVE] = \"<none>\"\n" " bg_pixmap[PRELIGHT] = \"<none>\"\n" " bg_pixmap[SELECTED] = \"<none>\"\n" " bg_pixmap[INSENSITIVE] = \"<none>\"\n" "}\n" "class \"GtkButton\" style : highest \"our_button\"\n" );
Je pense que ce serai une bonne idée de rajouter cet exemple dans la doc de GTK qui ne traite que de GtkLabel sachant que la méthode préconisée dans ce cas (rajouter une EventBox) ne convient pas pour un bouton: seulement un mince cadre autour du bouton est changé de couleur.
Partager