void WTextEdit::init() { WApplication *app = WApplication::instance(); setInline(false); initTinyMCE(); version_ = getTinyMCEVersion(); setJavaScriptMember(" WTextEdit", "new " WT_CLASS ".WTextEdit(" + app->javaScriptClass() + "," + jsRef() + ");"); setJavaScriptMember (WT_RESIZE_JS, "function(e, w, h) { var obj = $('#" + id() + "').data('obj'); " "obj.wtResize(e, w, h); };"); std::string direction = app->layoutDirection() == LayoutDirection::LeftToRight ? "ltr" : "rtl"; setConfigurationSetting("directionality", direction); std::string toolbar; if (version_ < 4) toolbar = "fontselect,|,bold,italic,underline,|,fontsizeselect,|" ",forecolor,backcolor,|" ",justifyleft,justifycenter,justifyright,justifyfull,|,anchor,|" ",numlist,bullist"; else toolbar = "undo redo | styleselect | bold italic | link"; setToolBar(0, toolbar); for (int i = 1; i <= 3; i++) setToolBar(i, std::string()); setConfigurationSetting("doctype", wApp->docType()); setConfigurationSetting("relative_urls", true); if (version_ < 4) { //this setting is no longer mentioned in the tinymce documenation though... setConfigurationSetting("button_tile_map", true); setConfigurationSetting("theme", std::string("advanced")); setConfigurationSetting("theme_advanced_toolbar_location", std::string("top")); setConfigurationSetting("theme_advanced_toolbar_align", std::string("left")); } onChange_.connect(this, &WTextEdit::propagateOnChange); }