55 lines
2.2 KiB
JavaScript
55 lines
2.2 KiB
JavaScript
/*
|
|
Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved.
|
|
Available via Academic Free License >= 2.1 OR the modified BSD license.
|
|
see: http://dojotoolkit.org/license for details
|
|
*/
|
|
|
|
|
|
if(!dojo._hasResource["dijit.CheckedMenuItem"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
|
|
dojo._hasResource["dijit.CheckedMenuItem"] = true;
|
|
dojo.provide("dijit.CheckedMenuItem");
|
|
dojo.require("dijit.MenuItem");
|
|
|
|
|
|
dojo.declare("dijit.CheckedMenuItem",
|
|
dijit.MenuItem,
|
|
{
|
|
// summary:
|
|
// A checkbox-like menu item for toggling on and off
|
|
|
|
templateString: dojo.cache("dijit", "templates/CheckedMenuItem.html", "<tr class=\"dijitReset dijitMenuItem\" dojoAttachPoint=\"focusNode\" role=\"menuitemcheckbox\" tabIndex=\"-1\"\n\t\tdojoAttachEvent=\"onmouseenter:_onHover,onmouseleave:_onUnhover,ondijitclick:_onClick\">\n\t<td class=\"dijitReset dijitMenuItemIconCell\" role=\"presentation\">\n\t\t<img src=\"${_blankGif}\" alt=\"\" class=\"dijitMenuItemIcon dijitCheckedMenuItemIcon\" dojoAttachPoint=\"iconNode\"/>\n\t\t<span class=\"dijitCheckedMenuItemIconChar\">✓</span>\n\t</td>\n\t<td class=\"dijitReset dijitMenuItemLabel\" colspan=\"2\" dojoAttachPoint=\"containerNode,labelNode\"></td>\n\t<td class=\"dijitReset dijitMenuItemAccelKey\" style=\"display: none\" dojoAttachPoint=\"accelKeyNode\"></td>\n\t<td class=\"dijitReset dijitMenuArrowCell\" role=\"presentation\"> </td>\n</tr>\n"),
|
|
|
|
// checked: Boolean
|
|
// Our checked state
|
|
checked: false,
|
|
_setCheckedAttr: function(/*Boolean*/ checked){
|
|
// summary:
|
|
// Hook so attr('checked', bool) works.
|
|
// Sets the class and state for the check box.
|
|
dojo.toggleClass(this.domNode, "dijitCheckedMenuItemChecked", checked);
|
|
dijit.setWaiState(this.domNode, "checked", checked);
|
|
this._set("checked", checked);
|
|
},
|
|
|
|
onChange: function(/*Boolean*/ checked){
|
|
// summary:
|
|
// User defined function to handle check/uncheck events
|
|
// tags:
|
|
// callback
|
|
},
|
|
|
|
_onClick: function(/*Event*/ e){
|
|
// summary:
|
|
// Clicking this item just toggles its state
|
|
// tags:
|
|
// private
|
|
if(!this.disabled){
|
|
this.set("checked", !this.checked);
|
|
this.onChange(this.checked);
|
|
}
|
|
this.inherited(arguments);
|
|
}
|
|
});
|
|
|
|
}
|