Jak wyróżnić przyciski na pasku narzędzi GTK

9

Napisałem aplikację przy użyciu Pythona i Glade. Aplikacja ma pasek narzędzi z ciemnym tłem, a każdy przycisk paska narzędzi ma niestandardowy obraz (tzn. Nie są używane standardowe ikony).

Zauważyłem, że kiedy używam zwykłych ikon zamiast niestandardowych obrazów jako ikon, za każdym razem, gdy wskaźnik myszy znajdzie się nad przyciskiem, przycisk jest podświetlony, co nie dzieje się w przypadku moich niestandardowych obrazów.

Thunderbird wydaje się iść o krok dalej i zamiast wyróżniać ikony, odwraca ich kolor, co działa całkiem dobrze w przypadku ciemnego motywu (patrz poniżej):

Przycisk niepodświetlony, normalny kolor

wprowadź opis zdjęcia tutaj

Przycisk podświetlony po najechaniu myszą, kolor odwrócony

wprowadź opis zdjęcia tutaj

Jak mogę uzyskać niestandardowe obrazy ikon lub przyciski, które zostaną wyróżnione po najechaniu myszą?

David Planella
źródło
Czy możesz podać przykład, w którym zawodzi? Prawdopodobnie jest to problem z motywem, a raczej błąd GTK +, jeśli to nie tylko działa, a nie tylko przyklejasz obrazy na pasku narzędzi, a nie przyciski.
dobey
Kod znajduje się na code.launchpad.net/qreator . Sprawdziłem dwukrotnie, a pasek narzędzi używa przycisków. O ile mi wiadomo, jedyne, co robię, to ładowanie obrazów ikon. Warto również wspomnieć o tym: bazaar.launchpad.net/~dpm/qreator/trunk/view/head:/qreator/…
David Planella
Myślę, że powinieneś usunąć ten kod. Wygląda na to, że Gtk2 może szybko dodać coś do funky paska narzędzi.
dobey,
Właściwie dodałem go po przeczytaniu askubuntu.com/questions/67362/... - korzystaliście z niego w interfejsie GTK Ubuntu One. Czy robiłeś to inaczej?
David Planella
Starym panelem kontrolnym GTK + U1 był Gtk2, a wszelkie zmiany kolorów dokonywano za pomocą niestandardowych widżetów, które były zgodne z niektórymi elementami motywu. Jestem pewien, że nie używaliśmy tego fragmentu kodu. Każdy pasek narzędzi w normalnym miejscu wewnątrz GtkApplication w Gtk3 powinien działać w oczekiwany sposób.
dobey,

Odpowiedzi:

2

Problemem jest problem z motywem Ambiance. Jest podświetlony, ale kolor tła dla podświetlenia jest ciemniejszy. Jeśli thunderbird pokazuje jasne podświetlenie i odwraca kolory ikon, oznacza to, że używa niestandardowych widżetów w XUL (które nie są Gtk +), które nie podążają za GTK + lub ikonami do wszystkiego.

dobey
źródło
Chyba będę musiał zgłosić błąd przeciwko Ambiance, dzięki @dobey za wskaźnik!
David Planella