試験運用中なLinux備忘録・旧記事

はてなダイアリーで公開していた2007年5月-2015年3月の記事を保存しています。

Qt 4.5でGTK+ 2のGUIスタイルが使用できることに気付く

Mandriva Linuxのバージョンを2009.1にしてしばらく経過して何気なくQt4のqtconfigを実行したところ、GUIスタイル(外観テーマ)に「GTK+」というものがあるのに気が付いた。
これを選択すると、Qt4上でGTK+のエンジンを利用することができる。GTK+を使用したデスクトップ環境上ではQtアプリケーションの外観が浮いてしまう問題があったが、GTK+のエンジンが利用できることにより、見栄えの統一性が大きく改善されることになる。これは非常にありがたい。

画像ではAuroraエンジンを使用しているが、見栄えにおかしなところもなく、綺麗に表示されている。
調べてみると、この機能は以前のバージョンのQtでも別途インストールすることはできたらしいが、バージョン4.5系からは標準で搭載*1されたため、特に追加のパッケージをインストールする必要はない。
なお、GTK+のバージョンは2.10以上が必要のようだ。

使用されるGTK+ 2テーマに関する補足

(2009/5/28)GNOME/Xfce4/LXDE上ではデスクトップ環境上で選択されているテーマがそのまま使用される。ただし、テーマの切り替えを行うときにQt4アプリケーションが動いていると、すぐには表示が更新されない部分が出ることがある(アプリケーションを再起動すれば正常に表示される)。KDE上では環境変数GTK2_RC_FILESで指定されるファイルの「gtk-theme-name」の値を参照しているようだ。
(2009/11/7)KDE上のファイルについての記述を修正

使用したバージョン:

  • GTK+ 2.16.1
  • Qt 4.5.0
  • Aurora Gtk Engine 1.5
  • GNOME 2.26.1
  • KDE 4.2.2
  • Xfce 4.6.0
  • lxsession-lite 0.3.6
  • lxappearance 0.2

*1:QtGuiというモジュールで、具体的なファイル名は/usr/lib(64)/libQtGui.so.4.x.xに含まれる