“MediaWiki:Gadget-SettingsDialog.js”的版本间差异

无编辑摘要
// 需要同时添加数据和HTML
SettingsDialog.prototype.addTab = function(params) {
// 必要时才开始加载
const panel = new OO.ui.TabPanelLayout( params.name, {label: mw.msg( params.label )} ),
$('#ca-settingsDialog').one('click', function() {
$element = panel.$element,
const panel = new OO.ui.TabPanelLayout( params.name, {label: mw.msg( params.label )} ),
dialog = this;
$element = panel.$element,
this.gadgets.push( params );
dialog = this;
this.content.addTabPanels( [panel] );
this.gadgets.push( params );
(params.items || []).forEach(function(ele) {
this.content.addTabPanels( [panel] );
ele.widget = new OO.ui[ele.type + 'InputWidget']( ele.config );
(params.items || []).forEach(function(ele) {
$element.append( new OO.ui.FieldLayout(ele.widget, {label: mw.msg( ele.label ), help: ele.help,
helpInline:ele.widget true,= align:new OO.ui[ele.type ==+ 'TextInputWidget']( ? 'left' : 'inline'})ele.$elementconfig );
$element.append( new OO.ui.FieldLayout(ele.widget, {label: mw.msg( ele.label ), help: ele.help,
helpInline: true}).$element );
}) );
(params.fields || []).forEach(function(ele) {
ele.field = new OO.ui.FieldsetLayout({label: mw.msg( ele.label ), help: ele.help, helpInline: true});
ele.field.addItems( (ele.items || []).map(function(e) {
ele e.widget = new OO.ui[elee.type + 'InputWidget']( elee.config );
return new OO.ui.FieldLayout(e.widget, {label: mw.msg( ele.label ), help: e.help, helpInline: true,})
align: e.type == 'Text' ? 'left' : 'inline'}).$element;
}) );
$element.append( ele.field.$element );
});
$('<div>', {class: 'panel-btns', html: [
new OO.ui.ButtonWidget({label: mw.msg('gadget-sd-back'), flags: 'destructive'}).on('click', function() {
dialog.clearOptions( params.name );
}), new OO.ui.ButtonWidget({label: mw.msg('gadget-sd-save'), flags: 'progressive'}).on('click', function() {
dialog.saveOptions( params.name );
})].map(function(ele) { return ele.$element; })}).appendTo( $element );
});
(params.fields || []).forEach(function(ele) {
ele.field = new OO.ui.FieldsetLayout({label: mw.msg( ele.label ), help: ele.help, helpInline: true});
ele.field.addItems( (ele.items || []).map(function(e) {
e.widget = new OO.ui[e.type + 'InputWidget']( e.config );
return new OO.ui.FieldLayout(e.widget, {label: mw.msg( ele.label ), help: e.help, helpInline: true,
align: e.type == 'Text' ? 'left' : 'inline'}).$element;
}) );
$element.append( ele.field.$element );
});
$('<div>', {class: 'panel-btns', html: [
new OO.ui.ButtonWidget({label: mw.msg('gadget-sd-back'), flags: 'destructive'}).on('click', function() {
dialog.clearOptions( params.name );
}), new OO.ui.ButtonWidget({label: mw.msg('gadget-sd-save'), flags: 'progressive'}).on('click', function() {
dialog.saveOptions( params.name );
})].map(function(ele) { return ele.$element; })}).appendTo( $element );
};
SettingsDialog.prototype.getIndex = function(arg) {
16,874

个编辑