Designs like MVP and MVC typically try to abstract as much logic out of the actual GUI as possible. One very popular article about this is “The Humble Dialog Box” by Michael Feathers. Personally I’ve had mixed experiences with trying to move logic out of the UI – sometimes it’s worked very well, and at other times it’s been more trouble than it’s worth. It’s somewhat outside my area of expertise though.