*
* @constructor
* @param {mw.rcfilters.Controller} controller RCFilters controller
- * @param {mw.rcfilters.dm.FilterItem} model Filter item model
+ * @param {mw.rcfilters.dm.FiltersViewModel} filtersViewModel
+ * @param {mw.rcfilters.dm.FilterItem} invertModel
+ * @param {mw.rcfilters.dm.FilterItem} itemModel Filter item model
* @param {Object} config Configuration object
*/
- mw.rcfilters.ui.FilterMenuOptionWidget = function MwRcfiltersUiFilterMenuOptionWidget( controller, model, config ) {
+ mw.rcfilters.ui.FilterMenuOptionWidget = function MwRcfiltersUiFilterMenuOptionWidget(
+ controller, filtersViewModel, invertModel, itemModel, config
+ ) {
config = config || {};
this.controller = controller;
- this.model = model;
+ this.invertModel = invertModel;
+ this.model = itemModel;
// Parent
- mw.rcfilters.ui.FilterMenuOptionWidget.parent.call( this, controller, model, config );
+ mw.rcfilters.ui.FilterMenuOptionWidget.parent.call( this, controller, filtersViewModel, this.invertModel, itemModel, config );
// Event
this.model.getGroupModel().connect( this, { update: 'onGroupModelUpdate' } );
/**
* @inheritdoc
*/
- mw.rcfilters.ui.FilterMenuOptionWidget.prototype.onModelUpdate = function () {
+ mw.rcfilters.ui.FilterMenuOptionWidget.prototype.updateUiBasedOnState = function () {
// Parent
- mw.rcfilters.ui.FilterMenuOptionWidget.parent.prototype.onModelUpdate.call( this );
+ mw.rcfilters.ui.FilterMenuOptionWidget.parent.prototype.updateUiBasedOnState.call( this );
this.setCurrentMuteState();
};
mw.rcfilters.ui.FilterMenuOptionWidget.prototype.setCurrentMuteState = function () {
if (
this.model.getGroupModel().getView() === 'namespaces' &&
- this.model.isInverted()
+ this.invertModel.isSelected()
) {
// This is an inverted behavior than the other rules, specifically
// for inverted namespaces