in Windows, a programmer can use Windows API to write a Windows application. Windows API can be used with C (not necessarily C++). In Windows API you have a message loop and you have to program responses to different messages (eg a right click on client area).
Is there any ubuntu API?
I don't mean Qt or GTK. I'm looking for a raw (C/C++) API so that everything must be (re)designed.
libc
, standard libraries or "standard" libraries like Xorg? The Windows world and its Win32 API is not a pattern to apply to all other OSs. Linux is not designed like that.