Cara menyorot tombol di toolbar GTK

9

Saya sudah menulis aplikasi menggunakan Python dan Glade. Aplikasi ini memiliki bilah alat dengan latar belakang gelap, dan setiap tombol bilah alat memiliki gambar khusus (yaitu tidak ada ikon stok yang digunakan).

Saya perhatikan bahwa ketika menggunakan ikon stok alih-alih gambar khusus sebagai ikon, setiap kali mouse melayang di atas tombol tombol disorot, yang tidak terjadi dengan gambar kustom saya.

Thunderbird tampaknya melangkah lebih jauh dan daripada menyorot ikon, itu membalikkan warnanya, yang bekerja cukup baik untuk tema gelap (lihat di bawah):

Tombol tidak disorot, warna normal

masukkan deskripsi gambar di sini

Tombol disorot saat melayang, warna terbalik

masukkan deskripsi gambar di sini

Bagaimana saya bisa mendapatkan gambar ikon kustom saya atau tombol yang akan disorot pada hover?

David Planella
sumber
Bisakah Anda memberikan contoh gagal? Ini mungkin masalah tema, atau lebih besar kemungkinan bug GTK +, jika itu tidak hanya berfungsi, dan Anda tidak hanya menempelkan gambar di bilah alat, daripada tombol.
dobey
Kode ini ada di code.launchpad.net/qreator . Saya telah memeriksa ulang dan bilah alat menggunakan tombol. Satu-satunya hal yang saya lakukan adalah memuat gambar untuk ikon, sejauh yang saya tahu. Juga ini mungkin layak disebutkan: bazaar.launchpad.net/~dpm/qreator/trunk/view/head:/qreator/…
David Planella
Saya pikir Anda harus menghapus kode itu. Sepertinya mungkin sesuatu dengan cepat ditambahkan untuk Gtk2 untuk melakukan hal-hal yang funky toolbar.
dobey
Saya benar-benar menambahkannya setelah membaca askubuntu.com/questions/67362/… - kalian menggunakannya untuk GTK Ubuntu One UI. Apakah Anda melakukannya secara berbeda?
David Planella
Panel kontrol GTK + U1 yang lama adalah Gtk2, dan setiap perubahan warna dilakukan dengan widget khusus yang mengikuti hal-hal tertentu dari tema. Kami tidak menggunakan sedikit kode itu, saya yakin. Bilah alat apa pun di tempat normal di dalam Aplikasi Gtk di Gtk3 seharusnya berfungsi dengan cara yang Anda harapkan.
dobey

Jawaban:

2

Masalahnya adalah masalah dengan tema Suasana. Ada highlight, tetapi warna latar belakang untuk prelight lebih gelap. Jika thunderbird menunjukkan sorotan ringan dan membalikkan warna ikon, maka itu karena menggunakan widget khusus di XUL (yang bukan Gtk +), yang tidak mengikuti GTK + atau ikon tema, untuk semuanya.

dobey
sumber
Saya kira saya harus mengajukan bug terhadap Ambiance, terima kasih @dobey untuk penunjuknya!
David Planella