ColorMenu.js
资源名称:ext-3.1.0.zip [点击查看]
上传用户:dawnssy
上传日期:2022-08-06
资源大小:9345k
文件大小:3k
源码类别:
JavaScript
开发平台:
JavaScript
- /*! * Ext JS Library 3.1.0 * Copyright(c) 2006-2009 Ext JS, LLC * licensing@extjs.com * http://www.extjs.com/license */ /**
- * @class Ext.menu.ColorMenu
- * @extends Ext.menu.Menu
- * <p>A menu containing a {@link Ext.ColorPalette} Component.</p>
- * <p>Notes:</p><div class="mdetail-params"><ul>
- * <li>Although not listed here, the <b>constructor</b> for this class
- * accepts all of the configuration options of <b>{@link Ext.ColorPalette}</b>.</li>
- * <li>If subclassing ColorMenu, any configuration options for the ColorPalette must be
- * applied to the <tt><b>initialConfig</b></tt> property of the ColorMenu.
- * Applying {@link Ext.ColorPalette ColorPalette} configuration settings to
- * <b><tt>this</tt></b> will <b>not</b> affect the ColorPalette's configuration.</li>
- * </ul></div> *
- * @xtype colormenu
- */
- Ext.menu.ColorMenu = Ext.extend(Ext.menu.Menu, {
- /**
- * @cfg {Boolean} enableScrolling
- * @hide
- */
- enableScrolling : false,
- /**
- * @cfg {Function} handler
- * Optional. A function that will handle the select event of this menu.
- * The handler is passed the following parameters:<div class="mdetail-params"><ul>
- * <li><code>palette</code> : ColorPalette<div class="sub-desc">The {@link #palette Ext.ColorPalette}.</div></li>
- * <li><code>color</code> : String<div class="sub-desc">The 6-digit color hex code (without the # symbol).</div></li>
- * </ul></div>
- */
- /**
- * @cfg {Object} scope
- * The scope (<tt><b>this</b></tt> reference) in which the <code>{@link #handler}</code>
- * function will be called. Defaults to this ColorMenu instance.
- */
- /**
- * @cfg {Boolean} hideOnClick
- * False to continue showing the menu after a color is selected, defaults to true.
- */
- hideOnClick : true,
- cls : 'x-color-menu',
- /**
- * @cfg {String} paletteId
- * An id to assign to the underlying color palette. Defaults to <tt>null</tt>.
- */
- paletteId : null,
- /**
- * @cfg {Number} maxHeight
- * @hide
- */
- /**
- * @cfg {Number} scrollIncrement
- * @hide
- */
- /**
- * @property palette
- * @type ColorPalette
- * The {@link Ext.ColorPalette} instance for this ColorMenu
- */
- /**
- * @event click
- * @hide
- */
- /**
- * @event itemclick
- * @hide
- */
- initComponent : function(){
- Ext.apply(this, {
- plain: true,
- showSeparator: false,
- items: this.palette = new Ext.ColorPalette(Ext.applyIf({
- id: this.paletteId
- }, this.initialConfig))
- });
- this.palette.purgeListeners();
- Ext.menu.ColorMenu.superclass.initComponent.call(this);
- /**
- * @event select
- * Fires when a color is selected from the {@link #palette Ext.ColorPalette}
- * @param {Ext.ColorPalette} palette The {@link #palette Ext.ColorPalette}
- * @param {String} color The 6-digit color hex code (without the # symbol)
- */
- this.relayEvents(this.palette, ['select']);
- this.on('select', this.menuHide, this);
- if(this.handler){
- this.on('select', this.handler, this.scope || this);
- }
- },
- menuHide : function(){
- if(this.hideOnClick){
- this.hide(true);
- }
- }
- });
- Ext.reg('colormenu', Ext.menu.ColorMenu);