public RichTextArea create(Element e) {
   String v = null;
   RichTextArea richArea = null;
   TextAreaElement textElement = null;
   if ($(e).widget(0) != null && $(e).widget(0) instanceof RichTextArea) {
     richArea = $(e).widget(0);
     v = richArea.getHTML();
   } else if ("textarea".equalsIgnoreCase(e.getTagName())) {
     v = $(e).val();
     textElement = TextAreaElement.as(e);
   } else if (WidgetsUtils.matchesTags(e, "div", "span")) {
     v = $(e).html();
   }
   if (v != null) {
     final RichTextWithToolbar richWidget = new RichTextWithToolbar(richArea, textElement);
     richArea = richWidget.area;
     richArea.setHTML(v);
     if (textElement != null) {
       WidgetsUtils.hideAndAfter(textElement, richWidget);
     } else {
       WidgetsUtils.replaceOrAppend(e, richWidget);
     }
     return richArea;
   }
   return null;
 }