44 lines
1.1 KiB
JavaScript
44 lines
1.1 KiB
JavaScript
|
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
|
||
|
|
||
|
templatePath: dojo.moduleUrl("dijit", "templates/CheckedMenuItem.html"),
|
||
|
|
||
|
// 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.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.attr("checked", !this.checked);
|
||
|
this.onChange(this.checked);
|
||
|
}
|
||
|
this.inherited(arguments);
|
||
|
}
|
||
|
});
|