pop! pop them up!

When I log into my IM accounts such as MSN and ICQ, kopete tries to inform me about all the online accounts and creates tons of KPassivePopups. The problem with this method is each created popup covers the one which is previously created. Which means if you popup message "Foo", "Bar", "John" consecutively you'll only end up seeing "John".

That was irritating, especially when two or more contacts goes online at the same time. But I could live with it.

But when I started coding another project which needs to inform the user time to time, I just felt like coding up a popup manager which will put popups on the screen in an intelligent manner.

It's quite simple, you enqueue QWidgets in it, and it pops them up and moves them to their smart positions with a linearly decreasing accelaration. It looks quite fancy.

See it yourselves! movie1 (6.3M) movie2 (5.8M)

In the movie, you'll see popups are adjusting themselves according to kicker's position.

Unfortunetely the code is not sanitized yet, but the code can be reached via websvn, related files: popup*