Upgrade to ExtJS 4.0.7 - Released 10/19/2011
[extjs.git] / src / menu / CheckItem.js
index 871ae4f..00bab09 100644 (file)
@@ -1,35 +1,40 @@
+/*
+
+This file is part of Ext JS 4
+
+Copyright (c) 2011 Sencha Inc
+
+Contact:  http://www.sencha.com/contact
+
+GNU General Public License Usage
+This file may be used under the terms of the GNU General Public License version 3.0 as published by the Free Software Foundation and appearing in the file LICENSE included in the packaging of this file.  Please review the following information to ensure the GNU General Public License version 3.0 requirements will be met: http://www.gnu.org/copyleft/gpl.html.
+
+If you are unsure which license is appropriate for your use, please contact the sales department at http://www.sencha.com/contact.
+
+*/
 /**
- * @class Ext.menu.CheckItem
- * @extends Ext.menu.Item
-
-A menu item that contains a togglable checkbox by default, but that can also be a part of a radio group.
-{@img Ext.menu.CheckItem/Ext.menu.CheckItem.png Ext.menu.CheckItem component}
-__Example Usage__    
-    Ext.create('Ext.menu.Menu', {
-               width: 100,
-               height: 110,
-               floating: false,  // usually you want this set to True (default)
-               renderTo: Ext.getBody(),  // usually rendered by it's containing component
-               items: [{
-                   xtype: 'menucheckitem',
-                   text: 'select all'
-               },{
-                   xtype: 'menucheckitem',
-                       text: 'select specific',
-               },{
-            iconCls: 'add16',
-                   text: 'icon item' 
-               },{
-                   text: 'regular item'
-               }]
-       }); 
-       
- * @xtype menucheckitem
- * @markdown
- * @constructor
- * @param {Object} config The config object
+ * A menu item that contains a togglable checkbox by default, but that can also be a part of a radio group.
+ *
+ *     @example
+ *     Ext.create('Ext.menu.Menu', {
+ *         width: 100,
+ *         height: 110,
+ *         floating: false,  // usually you want this set to True (default)
+ *         renderTo: Ext.getBody(),  // usually rendered by it's containing component
+ *         items: [{
+ *             xtype: 'menucheckitem',
+ *             text: 'select all'
+ *         },{
+ *             xtype: 'menucheckitem',
+ *             text: 'select specific',
+ *         },{
+ *             iconCls: 'add16',
+ *             text: 'icon item'
+ *         },{
+ *             text: 'regular item'
+ *         }]
+ *     });
  */
-
 Ext.define('Ext.menu.CheckItem', {
     extend: 'Ext.menu.Item',
     alias: 'widget.menucheckitem',
@@ -38,14 +43,12 @@ Ext.define('Ext.menu.CheckItem', {
      * @cfg {String} checkedCls
      * The CSS class used by {@link #cls} to show the checked state.
      * Defaults to `Ext.baseCSSPrefix + 'menu-item-checked'`.
-     * @markdown
      */
     checkedCls: Ext.baseCSSPrefix + 'menu-item-checked',
     /**
      * @cfg {String} uncheckedCls
      * The CSS class used by {@link #cls} to show the unchecked state.
      * Defaults to `Ext.baseCSSPrefix + 'menu-item-unchecked'`.
-     * @markdown
      */
     uncheckedCls: Ext.baseCSSPrefix + 'menu-item-unchecked',
     /**
@@ -53,7 +56,6 @@ Ext.define('Ext.menu.CheckItem', {
      * The CSS class applied to this item's icon image to denote being a part of a radio group.
      * Defaults to `Ext.baseCSSClass + 'menu-group-icon'`.
      * Any specified {@link #iconCls} overrides this.
-     * @markdown
      */
     groupCls: Ext.baseCSSPrefix + 'menu-group-icon',
 
@@ -61,7 +63,6 @@ Ext.define('Ext.menu.CheckItem', {
      * @cfg {Boolean} hideOnClick
      * Whether to not to hide the owning menu when this item is clicked.
      * Defaults to `false` for checkbox items, and to `true` for radio group items.
-     * @markdown
      */
     hideOnClick: false,
 
@@ -113,7 +114,9 @@ Ext.define('Ext.menu.CheckItem', {
     disableCheckChange: function() {
         var me = this;
 
-        me.iconEl.addCls(me.disabledCls);
+        if (me.iconEl) {
+            me.iconEl.addCls(me.disabledCls);
+        }
         me.checkChangeDisabled = true;
     },
 
@@ -144,7 +147,6 @@ Ext.define('Ext.menu.CheckItem', {
      * Sets the checked state of the item
      * @param {Boolean} checked True to check, false to uncheck
      * @param {Boolean} suppressEvents (optional) True to prevent firing the checkchange events. Defaults to `false`.
-     * @markdown
      */
     setChecked: function(checked, suppressEvents) {
         var me = this;
@@ -161,3 +163,4 @@ Ext.define('Ext.menu.CheckItem', {
         }
     }
 });
+