code: 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 );
  	}
docs: 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.