Converting world to window coords and vice versa

I am trying to write a GUI for my 3d engine. I need to know how to convert the world XY coordinates into a left-handed screen position. Does anyone know how to do this or if there is a better way to know if the mouse cursor is over a button? Thanks,

-Corillian

gluUnProject/gluProject
Another way is using selection buffer.