'_source/' + // @Packager.RemoveLine\r
'skins/' + skinName + '/' ) );\r
\r
+ /**\r
+ * The name of the skin used by this editor instance. The skin name can\r
+ * be set though the {@link CKEDITOR.config.skin} setting.\r
+ * @name CKEDITOR.editor.prototype.skinName\r
+ * @type String\r
+ * @example\r
+ * alert( editor.skinName ); // "kama" (e.g.)\r
+ */\r
editor.skinName = skinName;\r
+\r
+ /**\r
+ * The full URL of the skin directory.\r
+ * @name CKEDITOR.editor.prototype.skinPath\r
+ * @type String\r
+ * @example\r
+ * alert( editor.skinPath ); // "http://example.com/ckeditor/skins/kama/" (e.g.)\r
+ */\r
editor.skinPath = skinPath;\r
+\r
+ /**\r
+ * The CSS class name used for skin identification purposes.\r
+ * @name CKEDITOR.editor.prototype.skinClass\r
+ * @type String\r
+ * @example\r
+ * alert( editor.skinClass ); // "cke_skin_kama" (e.g.)\r
+ */\r
editor.skinClass = 'cke_skin_' + skinName;\r
\r
+ /**\r
+ * The <a href="http://en.wikipedia.org/wiki/Tabbing_navigation">tabbing\r
+ * navigation</a> order that has been calculated for this editor\r
+ * instance. This can be set by the {@link CKEDITOR.config.tabIndex}\r
+ * setting or taken from the "tabindex" attribute of the\r
+ * {@link #element} associated to the editor.\r
+ * @name CKEDITOR.editor.prototype.tabIndex\r
+ * @type Number\r
+ * @default 0 (zero)\r
+ * @example\r
+ * alert( editor.tabIndex ); // "0" (e.g.)\r
+ */\r
editor.tabIndex = editor.config.tabIndex || editor.element.getAttribute( 'tabindex' ) || 0;\r
\r
// Fire the "configLoaded" event.\r
{\r
CKEDITOR.lang.load( editor.config.language, editor.config.defaultLanguage, function( languageCode, lang )\r
{\r
+ /**\r
+ * The code for the language resources that have been loaded\r
+ * for the user internface elements of this editor instance.\r
+ * @name CKEDITOR.editor.prototype.langCode\r
+ * @type String\r
+ * @example\r
+ * alert( editor.langCode ); // "en" (e.g.)\r
+ */\r
editor.langCode = languageCode;\r
\r
+ /**\r
+ * An object holding all language strings used by the editor\r
+ * interface.\r
+ * @name CKEDITOR.editor.prototype.lang\r
+ * @type CKEDITOR.lang\r
+ * @example\r
+ * alert( editor.lang.bold ); // "Negrito" (e.g. if language is Portuguese)\r
+ */\r
// As we'll be adding plugin specific entries that could come\r
// from different language code files, we need a copy of lang,\r
// not a direct reference to it.\r
// The list of URLs to language files.\r
var languageFiles = [];\r
\r
- // Cache the loaded plugin names.\r
+ /**\r
+ * And object holding references to all plugins used by this\r
+ * editor istance.\r
+ * @name CKEDITOR.editor.prototype.plugins\r
+ * @type Object\r
+ * @example\r
+ * alert( editor.plugins.dialog.path ); // "http://example.com/ckeditor/plugins/dialog/" (e.g.)\r
+ */\r
editor.plugins = plugins;\r
\r
// Loop through all plugins, to build the list of language\r
var theme = editor.config.theme;\r
CKEDITOR.themes.load( theme, function()\r
{\r
+ /**\r
+ * The theme used by this editor instance.\r
+ * @name CKEDITOR.editor.prototype.theme\r
+ * @type CKEDITOR.theme\r
+ * @example\r
+ * alert( editor.theme ); "http://example.com/ckeditor/themes/default/" (e.g.)\r
+ */\r
var editorTheme = editor.theme = CKEDITOR.themes.get( theme );\r
editorTheme.path = CKEDITOR.themes.getPath( theme );\r
editorTheme.build( editor );\r
throw '[CKEDITOR.editor] The instance "' + this.name + '" already exists.';\r
\r
/**\r
+ * A unique random string assigned to each editor instance in the page.\r
+ * @name CKEDITOR.editor.prototype.id\r
+ * @type String\r
+ */\r
+ this.id = CKEDITOR.tools.getNextId();\r
+\r
+ /**\r
* The configurations for this editor instance. It inherits all\r
* settings defined in (@link CKEDITOR.config}, combined with settings\r
* loaded from custom configuration files and those defined inline in\r
return eventData.dataValue;\r
},\r
\r
+ /**\r
+ * Gets the "raw data" currently available in the editor. This is a\r
+ * fast method which return the data as is, without processing, so it's\r
+ * not recommended to use it on resulting pages. It can be used instead\r
+ * combined with the {@link #loadSnapshot} so one can automatic save\r
+ * the editor data from time to time while the user is using the\r
+ * editor, to avoid data loss, without risking performance issues.\r
+ * @example\r
+ * alert( editor.getSnapshot() );\r
+ */\r
getSnapshot : function()\r
{\r
var data = this.fire( 'getSnapshot' );\r
return data;\r
},\r
\r
+ /**\r
+ * Loads "raw data" in the editor. This data is loaded with processing\r
+ * straight to the editing area. It should not be used as a way to load\r
+ * any kind of data, but instead in combination with\r
+ * {@link #getSnapshot} produced data.\r
+ * @example\r
+ * var data = editor.getSnapshot();\r
+ * editor.<b>loadSnapshot( data )</b>;\r
+ */\r
loadSnapshot : function( snapshot )\r
{\r
this.fire( 'loadSnapshot', snapshot );\r
this.fire( 'insertElement', element );\r
},\r
\r
+ /**\r
+ * Checks whether the current editor contents present changes when\r
+ * compared to the contents loaded into the editor at startup, or to\r
+ * the contents available in the editor when {@link #resetDirty} has\r
+ * been called.\r
+ * @returns {Boolean} "true" is the contents present changes.\r
+ * @example\r
+ * function beforeUnload( e )\r
+ * {\r
+ * if ( CKEDITOR.instances.editor1.<b>checkDirty()</b> )\r
+ * return e.returnValue = "You'll loose the changes made in the editor.";\r
+ * }\r
+ *\r
+ * if ( window.addEventListener )\r
+ * window.addEventListener( 'beforeunload', beforeUnload, false );\r
+ * else\r
+ * window.attachEvent( 'onbeforeunload', beforeUnload );\r
+ */\r
checkDirty : function()\r
{\r
return ( this.mayBeDirty && this._.previousValue !== this.getSnapshot() );\r
},\r
\r
+ /**\r
+ * Resets the "dirty state" of the editor so subsequent calls to\r
+ * {@link #checkDirty} will return "false" if the user will not make\r
+ * further changes to the contents.\r
+ * @example\r
+ * alert( editor.checkDirty() ); // "true" (e.g.)\r
+ * editor.<b>resetDirty()</b>;\r
+ * alert( editor.checkDirty() ); // "false"\r
+ */\r
resetDirty : function()\r
{\r
if ( this.mayBeDirty )\r
* Fired when all plugins are loaded and initialized into the editor instance.\r
* @name CKEDITOR#pluginsLoaded\r
* @event\r
+ * @param {CKEDITOR.editor} editor The editor instance that has been destroyed.\r
+ */\r
+\r
+/**\r
+ * Fired before the command execution when {@link #execCommand} is called.\r
+ * @name CKEDITOR.editor#beforeCommandExec\r
+ * @event\r
+ * @param {CKEDITOR.editor} editor This editor instance.\r
+ * @param {String} data.name The command name.\r
+ * @param {Object} data.commandData The data to be sent to the command. This\r
+ * can be manipulated by the event listener.\r
+ * @param {CKEDITOR.command} data.command The command itself.\r
+ */\r
+\r
+/**\r
+ * Fired after the command execution when {@link #execCommand} is called.\r
+ * @name CKEDITOR.editor#afterCommandExec\r
+ * @event\r
+ * @param {CKEDITOR.editor} editor This editor instance.\r
+ * @param {String} data.name The command name.\r
+ * @param {Object} data.commandData The data sent to the command.\r
+ * @param {CKEDITOR.command} data.command The command itself.\r
+ * @param {Object} data.returnValue The value returned by the command execution.\r
+ */\r
+\r
+/**\r
+ * Fired every custom configuration file is loaded, before the final\r
+ * configurations initialization.<br />\r
+ * <br />\r
+ * Custom configuration files can be loaded thorugh the\r
+ * {@link CKEDITOR.config.customConfig} setting. Several files can be loading\r
+ * by chaning this setting.\r
+ * @name CKEDITOR.editor#customConfigLoaded\r
+ * @event\r
+ * @param {CKEDITOR.editor} editor This editor instance.\r
+ * @example\r
+ */\r
+\r
+/**\r
+ * Fired once the editor configuration is ready (loaded and processed).\r
+ * @name CKEDITOR.editor#configLoaded\r
+ * @event\r
+ * @param {CKEDITOR.editor} editor This editor instance.\r
+ * @example\r
+ * if( editor.config.fullPage )\r
+ * alert( 'This is a full page editor' );\r
*/\r