1 line
3.8 KiB
JavaScript
1 line
3.8 KiB
JavaScript
Type.registerNamespace("Sys.Extended.UI.HtmlEditor"),Sys.Extended.UI.HtmlEditor.Editor=function(e){Sys.Extended.UI.HtmlEditor.Editor.initializeBase(this,[e]),this._editPanel=null,this._changingToolbar=null,(Sys.Extended.UI.HtmlEditor.isIE&&8==Sys.Browser.version&&"BackCompat"!=document.compatMode||Sys.Extended.UI.HtmlEditor.isOpera)&&(this._onresize$delegate=Function.createDelegate(this,this._onresize))},Sys.Extended.UI.HtmlEditor.Editor.prototype={get_autofocus:function(){return this._editPanel.get_autofocus()},set_autofocus:function(e){this._editPanel.set_autofocus(e)},get_content:function(){return this._editPanel.get_content()},set_content:function(e){this._editPanel.set_content(e)},get_activeMode:function(){return this._editPanel.get_activeMode()},set_activeMode:function(e){this._editPanel.set_activeMode(e)},get_editPanel:function(){return this._editPanel},set_editPanel:function(e){this._editPanel=e},get_changingToolbar:function(){return this._changingToolbar},set_changingToolbar:function(e){this._changingToolbar=e},add_propertyChanged:function(e){this._editPanel.add_propertyChanged(e)},remove_propertyChanged:function(e){this._editPanel.remove_propertyChanged(e)},initialize:function(){Sys.Extended.UI.HtmlEditor.Editor.callBaseMethod(this,"initialize");var e=this.get_element(),t=e.className;if(Sys.UI.DomElement.removeCssClass(e,t),Sys.UI.DomElement.addCssClass(e,"ajax__htmleditor_editor_base"),Sys.UI.DomElement.addCssClass(e,t),Sys.Extended.UI.HtmlEditor.isIE||"BackCompat"==document.compatMode||(this.get_element().style.height="100%"),Sys.Extended.UI.HtmlEditor.isIE&&8==Sys.Browser.version&&"BackCompat"!=document.compatMode||Sys.Extended.UI.HtmlEditor.isOpera){$addHandlers(e,{resize:this._onresize$delegate});var i=this.get_editPanel();this._saved_setActive=i._setActive,i._setActive=Function.createDelegate(this,this._setActive);var s=this;Sys.Extended.UI.HtmlEditor.isOpera?setTimeout(function(){s._ensureVisibleResize()},0):s._ensureVisibleResize()}},_setActive:function(e){var t=this;Function.createDelegate(this.get_editPanel(),this._saved_setActive)(e),Sys.Extended.UI.HtmlEditor.isReallyVisible(this.get_element())?t._ensureVisibleResize():setTimeout(function(){t._ensureVisibleResize()},0)},_ensureVisibleResize:function(){var e,t=!1;Sys.Extended.UI.HtmlEditor.isReallyVisible(this.get_element())||(t=!0,e=Sys.Extended.UI.HtmlEditor.setElementVisibility(this.get_element())),this._onresize(),t&&(Sys.Extended.UI.HtmlEditor.restoreElementVisibility(e),delete e)},dispose:function(){(Sys.Extended.UI.HtmlEditor.isIE&&8==Sys.Browser.version&&"BackCompat"!=document.compatMode||Sys.Extended.UI.HtmlEditor.isOpera)&&($common.removeHandlers(this.get_element(),{resize:this._onresize$delegate}),this.get_editPanel()._setActive=this._saved_setActive),Sys.Extended.UI.HtmlEditor.Editor.callBaseMethod(this,"dispose")},_onresize:function(e){try{var t=this.get_editPanel().get_element().parentNode;"undefined"!=typeof e&&null!=e||(t.style.height="");var i=Sys.Extended.UI.HtmlEditor.Editor.MidleCellHeightForIE(t.parentNode.parentNode.parentNode,t.parentNode);t.style.height=i,"undefined"!=typeof this.get_editPanel().get_activePanel()._onresize&&this.get_editPanel().get_activePanel()._onresize()}catch(e){}return!0}},Sys.Extended.UI.HtmlEditor.Editor.registerClass("Sys.Extended.UI.HtmlEditor.Editor",Sys.UI.Control),Sys.Extended.UI.HtmlEditor.Editor.MidleCellHeightForIE=function(e,t){var i="100%";if(Sys.Extended.UI.HtmlEditor.isIE&&"BackCompat"!=document.compatMode||Sys.Extended.UI.HtmlEditor.isOpera)try{for(var s=2,n=0;n<e.rows.length;n++)e.rows[n]!=t&&(s+=e.rows[n].offsetHeight+1);var o=e.clientHeight;if(8==Sys.Browser.version||Sys.Extended.UI.HtmlEditor.isOpera){var d=e.style.height,r=e.parentNode.style.height;d.indexOf("px")>0?o=parseInt(d):"100%"==d&&r.indexOf("px")>0&&(o=parseInt(r))}i=100*(o-s)/(1*o)+"%"}catch(e){i=""}return i}; |