diff --git a/modules/ve-mw/ui/widgets/ve.ui.MWTemplateOutlineParameterCheckboxLayout.js b/modules/ve-mw/ui/widgets/ve.ui.MWTemplateOutlineParameterCheckboxLayout.js index 2a47701346..995471ce50 100644 --- a/modules/ve-mw/ui/widgets/ve.ui.MWTemplateOutlineParameterCheckboxLayout.js +++ b/modules/ve-mw/ui/widgets/ve.ui.MWTemplateOutlineParameterCheckboxLayout.js @@ -45,11 +45,34 @@ ve.ui.MWTemplateOutlineParameterCheckboxLayout = function VeUiMWTemplateOutlineP OO.inheritClass( ve.ui.MWTemplateOutlineParameterCheckboxLayout, OO.ui.FieldLayout ); +/* Events */ + +/** + * @event change + * @param {string} name Parameter name + * @param {boolean} checked New checkbox state + */ + +/** + * @event select + * @param {string} name Parameter name + */ + /* Methods */ + +/** + * Handles a checkbox input widget change event {@see OO.ui.CheckboxInputWidget}. + * + * @param {boolean} value + * @fires change + */ ve.ui.MWTemplateOutlineParameterCheckboxLayout.prototype.onEdit = function ( value ) { this.emit( 'change', this.getData(), value ); }; +/** + * @fires select + */ ve.ui.MWTemplateOutlineParameterCheckboxLayout.prototype.onLabelClick = function () { if ( !this.fieldWidget.isSelected() ) { this.fieldWidget.setSelected( true ); diff --git a/modules/ve-mw/ui/widgets/ve.ui.MWTemplateOutlineTemplateWidget.js b/modules/ve-mw/ui/widgets/ve.ui.MWTemplateOutlineTemplateWidget.js index 6f407edde4..6eede171ce 100644 --- a/modules/ve-mw/ui/widgets/ve.ui.MWTemplateOutlineTemplateWidget.js +++ b/modules/ve-mw/ui/widgets/ve.ui.MWTemplateOutlineTemplateWidget.js @@ -68,6 +68,10 @@ ve.ui.MWTemplateOutlineTemplateWidget = function VeUiMWTemplateOutlineTemplateWi OO.inheritClass( ve.ui.MWTemplateOutlineTemplateWidget, OO.ui.Widget ); +/** + * @param {string|ve.dm.MWParameterModel} parameter + * @returns {ve.ui.MWTemplateOutlineParameterCheckboxLayout} + */ ve.ui.MWTemplateOutlineTemplateWidget.prototype.createCheckbox = function ( parameter ) { var parameterModel = ( parameter instanceof ve.dm.MWParameterModel ) ? parameter : this.templateModel.getParameter( parameter ), @@ -87,6 +91,12 @@ ve.ui.MWTemplateOutlineTemplateWidget.prototype.createCheckbox = function ( para } ); }; +/** + * Handles a template model add event {@see ve.dm.MWTemplateModel}. + * Triggered when a parameter is added to the template model. + * + * @param {ve.dm.MWParameterModel} parameter + */ ve.ui.MWTemplateOutlineTemplateWidget.prototype.onAddParameter = function ( parameter ) { var paramCheckbox = this.parameters.findItemFromData( parameter.getName() ); @@ -100,6 +110,12 @@ ve.ui.MWTemplateOutlineTemplateWidget.prototype.onAddParameter = function ( para } }; +/** + * Handles a template model remove event {@see ve.dm.MWTemplateModel}. + * Triggered when a parameter is removed from the template model. + * + * @param {ve.dm.MWParameterModel} parameter + */ ve.ui.MWTemplateOutlineTemplateWidget.prototype.onRemoveParameter = function ( parameter ) { var paramCheckbox = this.parameters.findItemFromData( parameter.getName() ); @@ -113,6 +129,12 @@ ve.ui.MWTemplateOutlineTemplateWidget.prototype.onRemoveParameter = function ( p } }; +/** + * Handles a parameter checkbox change event {@see ve.ui.MWTemplateOutlineParameterCheckboxLayout} + * + * @param {string} data Parameter name + * @param {boolean} checked New checkbox state + */ ve.ui.MWTemplateOutlineTemplateWidget.prototype.onCheckboxChange = function ( data, checked ) { var parameter = this.templateModel.getParameter( data );