adding CodeArea interface