I want to change language in a select list and whole site changes to selected language(All content) I want to have four languages Catalan, Spanish , French and English. English language will be default.If i change language to be spanish,i want the whole site to change to spanish or if i change to french the whole site should changed to french.

Example site. I want to know how this would have been done ?

Any help really appreciated :)
I don't believe you need Internationalization module, core's Locale module will already do the job. It makes content translatable, so yes you need to translate it manually. When you enable Locale and edit a node, the option to enter a translation will appear.