summaryrefslogtreecommitdiff
path: root/core/ui.js
diff options
context:
space:
mode:
Diffstat (limited to 'core/ui.js')
-rw-r--r--core/ui.js168
1 files changed, 0 insertions, 168 deletions
diff --git a/core/ui.js b/core/ui.js
deleted file mode 100644
index 77e645a..0000000
--- a/core/ui.js
+++ /dev/null
@@ -1,168 +0,0 @@
-/**
- * @license Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
- * For licensing, see LICENSE.html or http://ckeditor.com/license
- */
-
-/**
- * Contains UI features related to an editor instance.
- *
- * @class
- * @mixins CKEDITOR.event
- * @constructor Creates an ui class instance.
- * @param {CKEDITOR.editor} editor The editor instance.
- */
-CKEDITOR.ui = function( editor ) {
- if ( editor.ui )
- return editor.ui;
-
- this.items = {};
- this.instances = {};
- this.editor = editor;
-
- /**
- * Object used to hold private stuff.
- *
- * @private
- */
- this._ = {
- handlers: {}
- };
-
- return this;
-};
-
-// PACKAGER_RENAME( CKEDITOR.ui )
-
-CKEDITOR.ui.prototype = {
- /**
- * Adds a UI item to the items collection. These items can be later used in
- * the interface.
- *
- * // Add a new button named 'MyBold'.
- * editorInstance.ui.add( 'MyBold', CKEDITOR.UI_BUTTON, {
- * label: 'My Bold',
- * command: 'bold'
- * } );
- *
- * @param {String} name The UI item name.
- * @param {Object} type The item type.
- * @param {Object} definition The item definition. The properties of this
- * object depend on the item type.
- */
- add: function( name, type, definition ) {
- // Compensate the unique name of this ui item to definition.
- definition.name = name.toLowerCase();
-
- var item = this.items[ name ] = {
- type: type,
- // The name of {@link CKEDITOR.command} which associate with this UI.
- command: definition.command || null,
- args: Array.prototype.slice.call( arguments, 2 )
- };
-
- CKEDITOR.tools.extend( item, definition );
- },
-
- /**
- * Retrieve the created ui objects by name.
- *
- * @param {String} name The name of the UI definition.
- */
- get: function( name ) {
- return this.instances[ name ];
- },
-
- /**
- * Gets a UI object.
- *
- * @param {String} name The UI item hame.
- * @returns {Object} The UI element.
- */
- create: function( name ) {
- var item = this.items[ name ],
- handler = item && this._.handlers[ item.type ],
- command = item && item.command && this.editor.getCommand( item.command );
-
- var result = handler && handler.create.apply( this, item.args );
-
- this.instances[ name ] = result;
-
- // Add reference inside command object.
- if ( command )
- command.uiItems.push( result );
-
- if ( result && !result.type )
- result.type = item.type;
-
- return result;
- },
-
- /**
- * Adds a handler for a UI item type. The handler is responsible for
- * transforming UI item definitions in UI objects.
- *
- * @param {Object} type The item type.
- * @param {Object} handler The handler definition.
- */
- addHandler: function( type, handler ) {
- this._.handlers[ type ] = handler;
- },
-
- /**
- * Returns the unique DOM element that represents one editor's UI part, as
- * the editor UI is made completely decoupled from DOM (no DOM reference hold),
- * this method is mainly used to retrieve the rendered DOM part by name.
- *
- * // Hide the bottom space in the UI.
- * var bottom = editor.ui.getSpace( 'bottom' );
- * bottom.setStyle( 'display', 'none' );
- *
- * @param {String} name The space name.
- * @returns {CKEDITOR.dom.element} The element that represents the space.
- */
- space: function( name ) {
- return CKEDITOR.document.getById( this.spaceId( name ) );
- },
-
- /**
- * Generate the HTML ID from a specific UI space name.
- *
- * @param name
- * @todo param and return types?
- */
- spaceId: function( name ) {
- return this.editor.id + '_' + name;
- }
-};
-
-CKEDITOR.event.implementOn( CKEDITOR.ui );
-
-/**
- * Internal event fired when a new UI element is ready.
- *
- * @event ready
- * @param {Object} data The new element.
- */
-
-/**
- * Virtual class which just illustrates the features of handler objects to be
- * passed to the {@link CKEDITOR.ui#addHandler} function.
- * This class is not really part of the API, so don't call its constructor.
- *
- * @class CKEDITOR.ui.handlerDefinition
- */
-
-/**
- * Transforms an item definition into an UI item object.
- *
- * editorInstance.ui.addHandler( CKEDITOR.UI_BUTTON, {
- * create: function( definition ) {
- * return new CKEDITOR.ui.button( definition );
- * }
- * } );
- *
- * @method create
- * @param {Object} definition The item definition.
- * @returns {Object} The UI element.
- * @todo We lack the "UI element" abstract super class.
- */