Qtとlibnotify

2015年3月30日 0 投稿者: khws4v1

Qtで通知を出すのはQSystemTrayicon::showMessageでいいわけですが、見た目が非常にかっこ悪いです

引用元: http://doc.qt.io/qt-5/qsystemtrayicon.html

引用元: http://doc.qt.io/qt-5/qsystemtrayicon.html

画像はWindows XP上で動作させているものですが、Linuxでもこのバルーン通知を使います。

本当に格好が悪いのでlibnotifyで通知を出すことにしました。

 

NOTE

  • 当たり前ですが、libnotifyの開発パッケージがないとなにもできません。
  • libglibmmも無いとlibnotifyをC++上で使えません。
  • libnotifyを使えるようにqmakeに↓を書いておく必要があります。

  • signalsをundefしないとlibnotifyを使えません

  • コールバック関数は↓みたいな感じにするだけの簡単な作業です。

  • コールバック関数に渡すデータはgpointerにキャストしてからコールバック関数の中で元の型にキャストして戻します。
    キャストにはreinterpret_castを使う必要があります。
    複数のデータを渡すときは構造体で渡します。

  • アイコンはアイコンの名前またはアイコンの画像のパスを指定します。
    画像のバイナリを突っ込まないこと。