var lsPanelClass = new Class({ initialize: function(){ }, putText: function(obj,text) { obj=$(obj); var scrollLeft=obj.scrollLeft; var scrollTop=obj.scrollTop; if (Browser.Engine.trident && document.selection) { obj.focus(); sel=document.selection.createRange(); sel.text=text; } else { obj.insertAtCursor(text); } obj.scrollLeft=scrollLeft; obj.scrollTop=scrollTop; }, putTag: function(obj,tag) { this.putText(obj,'<'+tag+'/>'); }, putTextAround: function(obj,textStart,textEnd) { obj=$(obj); var scrollLeft=obj.scrollLeft; var scrollTop=obj.scrollTop; if (Browser.Engine.trident && document.selection) { obj.focus(); sel=document.selection.createRange(); sel.text = textStart+sel.text+textEnd; } else { obj.insertAroundCursor({ before: textStart, defaultMiddle: '', after: textEnd }); } obj.scrollLeft=scrollLeft; obj.scrollTop=scrollTop; }, putTagAround: function(obj,tagStart,tagEnd) { if (!tagEnd) { tagEnd=tagStart; } this.putTextAround(obj,'<'+tagStart+'>',''); }, putTagUrl: function(obj,sPromt) { obj=$(obj); if (url=prompt(sPromt,'http://')) { var sel=obj.getSelectedText(); this.putText(obj,''+sel+''); } }, putQuote: function(obj) { obj=$(obj); if (selText=this.getSelectedText()) { this.putText(obj,'
'+selText+'
'); } else { this.putTagAround(obj,'blockquote'); } }, getSelectedText: function(){ if (Browser.Engine.trident) return document.selection.createRange().text; //if (window.khtml) return window.getSelection(); return document.getSelection(); } }); var lsPanel; window.addEvent('domready', function() { lsPanel = new lsPanelClass();