BaH.libnotify (Linux)

BlitzMax Forums/Brucey's Modules/BaH.libnotify (Linux)

Brucey(Posted 2009) [#1]
Thought I'd have another "Create a module in an evening" session :-)

BaH.libnotify is a Linux notification library which allows your application to post messages which appear as a popup on the screen.
Something like this :



Apps such as emailers, instant messaging, and music players might post a notification when something happens.

This module is very similar to Bah.Growl, the Mac notification library. In theory you could implement both APIs to add cross-platform notifications (Mac and Linux) to your application.

The module is currently available from the maxmods SVN repository.
It is Linux only.
It requires libnotify-dev installed when building your application. (to enable it to link correctly).

It doesn't include direct (pixmap) support for images yet, but I'm looking into it. Check out the two examples to see what it can do.

:o)


plash(Posted 2009) [#2]
Cool!
I always liked the integration with applications and the GNOME environment in Ubuntu 9.04.


Htbaa(Posted 2009) [#3]
Is there also something like this for Windows?


Brucey(Posted 2009) [#4]
I wouldn't have thought so.

The Windows platform is so much more fragmented that it's less likely to come up with standard APIs like this amongst its developers - unless it is something driven by Microsoft.


Brucey(Posted 2009) [#5]
Released :-)

Available for download here :

http://code.google.com/p/maxmods/downloads/list?q=notifications+linux

I've padded out the documentation a bit from the notification spec, which should help with a basic understanding of some of the optional functionality.

Have fun with Linux!

:o)


Brucey(Posted 2009) [#6]
When running in Compiz on Ubuntu, notifications look a bit nicer.

This is the Linux version of RadioBaH notifying a track change :



(Slightly off topic... in this shot you can also see the RadioBaH icon in the "system tray", just like on Windows and Mac versions. This is one of the nice features of wxMax - the great cross-platform support!)

Groovy baby, Yeah! :-)