"Normally" you would set up a button input as follows -
This is a button ftom pin to Vdd, if you want button to pull low then
change Drive to Pull Up, button connected from pin to Vss.
If you are doing read m,odify writes to a port then you must use shadow
http://www.cypress.com/?rID=2900 AN2094 - PSoC® 1 - Getting Started with GPIO
https://www.youtube.com/watch?v=tei6q5M3C0g Shadow Registers
http://www.cypress.com/?rID=39497 Shadow Registers
Also for buttons do not forget to debounce them -