2 Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3 For licensing, see LICENSE.html or http://ckeditor.com/license
7 * @fileOverview Defines the "virtual" {@link CKEDITOR.pluginDefinition} class, which
8 * contains the defintion of a plugin. This file is for documentation
13 * (Virtual Class) Do not call this constructor. This class is not really part
14 * of the API. It just illustrates the features of plugin objects to be
15 * passed to the {@link CKEDITOR.plugins.add} function.
16 * @name CKEDITOR.pluginDefinition
22 * A list of plugins that are required by this plugin. Note that this property
23 * doesn't guarantee the loading order of the plugins.
24 * @name CKEDITOR.pluginDefinition.prototype.requires
27 * CKEDITOR.plugins.add( 'sample',
29 * requires : [ 'button', 'selection' ]
34 * A list of language files available for this plugin. These files are stored inside
35 * the "lang" directory, which is inside the plugin directory, follow the name
36 * pattern of "langCode.js", and contain a language definition created with {@link CKEDITOR.pluginDefinition#setLang}.
37 * While the plugin is being loaded, the editor checks this list to see if
38 * a language file of the current editor language ({@link CKEDITOR.editor#langCode})
39 * is available, and if so, loads it. Otherwise, the file represented by the first list item
40 * in the list is loaded.
41 * @name CKEDITOR.pluginDefinition.prototype.lang
44 * CKEDITOR.plugins.add( 'sample',
46 * lang : [ 'en', 'fr' ]
51 * Function called on initialization of every editor instance created in the
52 * page before the init() call task. The beforeInit function will be called for
53 * all plugins, after that the init function is called for all of them. This
54 * feature makes it possible to initialize things that could be used in the
55 * init function of other plugins.
56 * @name CKEDITOR.pluginDefinition.prototype.beforeInit
58 * @param {CKEDITOR.editor} editor The editor instance being initialized.
60 * CKEDITOR.plugins.add( 'sample',
62 * beforeInit : function( editor )
64 * alert( 'Editor "' + editor.name + '" is to be initialized!' );
70 * Function called on initialization of every editor instance created in the
72 * @name CKEDITOR.pluginDefinition.prototype.init
74 * @param {CKEDITOR.editor} editor The editor instance being initialized.
76 * CKEDITOR.plugins.add( 'sample',
78 * init : function( editor )
80 * alert( 'Editor "' + editor.name + '" is being initialized!' );