Button which able to have different visual effects for different state, inner shadow, outer shadow, gradient etc.