'Labour could be in power for a generation' says Tory MP