1/* 2 * FCKeditor - The text editor for Internet - http://www.fckeditor.net 3 * Copyright (C) 2003-2007 Frederico Caldeira Knabben 4 * 5 * == BEGIN LICENSE == 6 * 7 * Licensed under the terms of any of the following licenses at your 8 * choice: 9 * 10 * - GNU General Public License Version 2 or later (the "GPL") 11 * http://www.gnu.org/licenses/gpl.html 12 * 13 * - GNU Lesser General Public License Version 2.1 or later (the "LGPL") 14 * http://www.gnu.org/licenses/lgpl.html 15 * 16 * - Mozilla Public License Version 1.1 or later (the "MPL") 17 * http://www.mozilla.org/MPL/MPL-1.1.html 18 * 19 * == END LICENSE == 20 * 21 * FCKStyleCommand Class: represents the "Spell Check" command. 22 * (IE specific implementation) 23 */ 24 25var FCKSpellCheckCommand = function() 26{ 27 this.Name = 'SpellCheck' ; 28 this.IsEnabled = ( FCKConfig.SpellChecker == 'ieSpell' || FCKConfig.SpellChecker == 'SpellerPages' ) ; 29} 30 31FCKSpellCheckCommand.prototype.Execute = function() 32{ 33 switch ( FCKConfig.SpellChecker ) 34 { 35 case 'ieSpell' : 36 this._RunIeSpell() ; 37 break ; 38 39 case 'SpellerPages' : 40 FCKDialog.OpenDialog( 'FCKDialog_SpellCheck', 'Spell Check', 'dialog/fck_spellerpages.html', 440, 480 ) ; 41 break ; 42 } 43} 44 45FCKSpellCheckCommand.prototype._RunIeSpell = function() 46{ 47 try 48 { 49 var oIeSpell = new ActiveXObject( "ieSpell.ieSpellExtension" ) ; 50 oIeSpell.CheckAllLinkedDocuments( FCK.EditorDocument ) ; 51 } 52 catch( e ) 53 { 54 if( e.number == -2146827859 ) 55 { 56 if ( confirm( FCKLang.IeSpellDownload ) ) 57 window.open( FCKConfig.IeSpellDownloadUrl , 'IeSpellDownload' ) ; 58 } 59 else 60 alert( 'Error Loading ieSpell: ' + e.message + ' (' + e.number + ')' ) ; 61 } 62} 63 64FCKSpellCheckCommand.prototype.GetState = function() 65{ 66 return this.IsEnabled ? FCK_TRISTATE_OFF : FCK_TRISTATE_DISABLED ; 67}