You could do it in Qt (create a widget covering the whole screen, make it translucent and paint your stuff) but the problem will be handling input events (your widget would steal all the mouse events from the screen if you don't explicitly forward them back to the desktop manager) so I think it's easier to do it by calling the native API directly.