implements WYSIWYG editor