What I found that Banshee using GTK: VolumeButton which inherit from ScaleButton. ScaleButton has getpopup (GTKWidget type). So maybe it is using gtk window with GTK_WINDOW_POPUP type. I'm not familiar with C language and low level GTK, but documentation says:
"GtkWidget* gtk_window_new (GtkWindowType type);
Creates a new GtkWindow, which is a toplevel window that can contain other widgets. Nearly always, the type of the window should be GTK_WINDOW_TOPLEVEL. If you're implementing something like a popup menu from scratch (which is a bad idea, just use GtkMenu), you might use GTK_WINDOW_POPUP. GTK_WINDOW_POPUP is not for dialogs, though in some other toolkits dialogs are called "popups". In GTK+, GTK_WINDOW_POPUP means a pop-up menu or pop-up tooltip. On X11, popup windows are not controlled by the window manager.
If you simply want an undecorated window (no window borders), use gtk_window_set_decorated(), don't use GTK_WINDOW_POPUP."
Anyway, TPopupWindow could be interesting feature, like in my case for volume button, but also for custom popup menus, tips etc. Especially when similar option exists for QT and windows widgetsets -------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20121217/f89098a8/attachment.html>