mediawiki-extensions-Visual.../modules/ve-mw/ui/tools/ve.ui.MWMetaDialogTool.js

207 lines
7.1 KiB
JavaScript
Raw Normal View History

/*!
* VisualEditor MediaWiki UserInterface meta tool classes.
*
* @copyright 2011-2018 VisualEditor Team and others; see AUTHORS.txt
* @license The MIT License (MIT); see LICENSE.txt
*/
/**
* MediaWiki UserInterface VE only dialog tool.
*
* @class
* @abstract
* @extends ve.ui.WindowTool
* @constructor
*/
ve.ui.MWVeOnlyDialogTool = function VeUiMWMetaDialogTool() {
ve.ui.MWVeOnlyDialogTool.super.apply( this, arguments );
};
OO.inheritClass( ve.ui.MWVeOnlyDialogTool, ve.ui.WindowTool );
ve.ui.MWVeOnlyDialogTool.prototype.onUpdateState = function () {
// Parent method
ve.ui.MWVeOnlyDialogTool.super.prototype.onUpdateState.apply( this, arguments );
// Meta tools are not supported in source mode (yet?)
this.setDisabled( !this.toolbar.getSurface() || this.toolbar.getSurface().getMode() === 'source' );
};
/**
* MediaWiki UserInterface meta dialog tool.
*
* @class
* @extends ve.ui.WindowTool
* @constructor
* @param {OO.ui.Toolbar} toolbar
* @param {Object} [config] Configuration options
*/
ve.ui.MWMetaDialogTool = function VeUiMWMetaDialogTool() {
ve.ui.MWMetaDialogTool.super.apply( this, arguments );
};
OO.inheritClass( ve.ui.MWMetaDialogTool, ve.ui.WindowTool );
ve.ui.MWMetaDialogTool.static.name = 'meta';
ve.ui.MWMetaDialogTool.static.group = 'utility';
ve.ui.MWMetaDialogTool.static.icon = 'window';
ve.ui.MWMetaDialogTool.static.title =
OO.ui.deferMsg( 'visualeditor-meta-tool' );
ve.ui.MWMetaDialogTool.static.commandName = 'meta';
ve.ui.MWMetaDialogTool.static.autoAddToCatchall = false;
ve.ui.MWMetaDialogTool.static.autoAddToGroup = false;
ve.ui.toolFactory.register( ve.ui.MWMetaDialogTool );
ve.ui.commandRegistry.register(
new ve.ui.Command(
'meta', 'window', 'open',
{ args: [ 'meta' ] }
)
);
/**
* MediaWiki UserInterface page settings tool.
*
* @class
* @extends ve.ui.MWVeOnlyDialogTool
* @constructor
* @param {OO.ui.Toolbar} toolbar
* @param {Object} [config] Configuration options
*/
ve.ui.MWPageSettingsDialogTool = function VeUiMWPageSettingsDialogTool() {
ve.ui.MWPageSettingsDialogTool.super.apply( this, arguments );
};
OO.inheritClass( ve.ui.MWPageSettingsDialogTool, ve.ui.MWVeOnlyDialogTool );
ve.ui.MWPageSettingsDialogTool.static.name = 'settings';
ve.ui.MWPageSettingsDialogTool.static.group = 'utility';
ve.ui.MWPageSettingsDialogTool.static.icon = 'settings';
ve.ui.MWPageSettingsDialogTool.static.title =
OO.ui.deferMsg( 'visualeditor-settings-tool' );
ve.ui.MWPageSettingsDialogTool.static.commandName = 'meta/settings';
ve.ui.MWPageSettingsDialogTool.static.autoAddToCatchall = false;
ve.ui.MWPageSettingsDialogTool.static.autoAddToGroup = false;
ve.ui.toolFactory.register( ve.ui.MWPageSettingsDialogTool );
ve.ui.commandRegistry.register(
new ve.ui.Command(
'meta/settings', 'window', 'open',
{ args: [ 'meta', { page: 'settings' } ] }
)
);
/**
* MediaWiki UserInterface advanced page settings tool.
*
* @class
* @extends ve.ui.MWVeOnlyDialogTool
* @constructor
* @param {OO.ui.Toolbar} toolbar
* @param {Object} [config] Configuration options
*/
ve.ui.MWAdvancedPageSettingsDialogTool = function VeUiMWAdvancedPageSettingsDialogTool() {
ve.ui.MWAdvancedPageSettingsDialogTool.super.apply( this, arguments );
};
OO.inheritClass( ve.ui.MWAdvancedPageSettingsDialogTool, ve.ui.MWVeOnlyDialogTool );
ve.ui.MWAdvancedPageSettingsDialogTool.static.name = 'advancedSettings';
ve.ui.MWAdvancedPageSettingsDialogTool.static.group = 'utility';
ve.ui.MWAdvancedPageSettingsDialogTool.static.icon = 'advanced';
ve.ui.MWAdvancedPageSettingsDialogTool.static.title =
OO.ui.deferMsg( 'visualeditor-advancedsettings-tool' );
ve.ui.MWAdvancedPageSettingsDialogTool.static.commandName = 'meta/advanced';
ve.ui.MWAdvancedPageSettingsDialogTool.static.autoAddToCatchall = false;
ve.ui.MWAdvancedPageSettingsDialogTool.static.autoAddToGroup = false;
ve.ui.toolFactory.register( ve.ui.MWAdvancedPageSettingsDialogTool );
ve.ui.commandRegistry.register(
new ve.ui.Command(
'meta/advanced', 'window', 'open',
{ args: [ 'meta', { page: 'advancedSettings' } ] }
)
);
/**
* MediaWiki UserInterface categories tool.
*
* @class
* @extends ve.ui.MWVeOnlyDialogTool
* @constructor
* @param {OO.ui.Toolbar} toolbar
* @param {Object} [config] Configuration options
*/
ve.ui.MWCategoriesDialogTool = function VeUiMWCategoriesDialogTool() {
ve.ui.MWCategoriesDialogTool.super.apply( this, arguments );
};
OO.inheritClass( ve.ui.MWCategoriesDialogTool, ve.ui.MWVeOnlyDialogTool );
ve.ui.MWCategoriesDialogTool.static.name = 'categories';
ve.ui.MWCategoriesDialogTool.static.group = 'utility';
ve.ui.MWCategoriesDialogTool.static.icon = 'tag';
ve.ui.MWCategoriesDialogTool.static.title =
OO.ui.deferMsg( 'visualeditor-categories-tool' );
ve.ui.MWCategoriesDialogTool.static.commandName = 'meta/categories';
ve.ui.MWCategoriesDialogTool.static.autoAddToCatchall = false;
ve.ui.MWCategoriesDialogTool.static.autoAddToGroup = false;
ve.ui.toolFactory.register( ve.ui.MWCategoriesDialogTool );
ve.ui.commandRegistry.register(
new ve.ui.Command(
'meta/categories', 'window', 'open',
{ args: [ 'meta', { page: 'categories' } ] }
)
);
/**
* MediaWiki UserInterface languages tool.
*
* @class
* @extends ve.ui.MWVeOnlyDialogTool
* @constructor
* @param {OO.ui.Toolbar} toolbar
* @param {Object} [config] Configuration options
*/
ve.ui.MWLanguagesDialogTool = function VeUiMWLanguagesDialogTool() {
ve.ui.MWLanguagesDialogTool.super.apply( this, arguments );
};
OO.inheritClass( ve.ui.MWLanguagesDialogTool, ve.ui.MWVeOnlyDialogTool );
ve.ui.MWLanguagesDialogTool.static.name = 'languages';
ve.ui.MWLanguagesDialogTool.static.group = 'utility';
ve.ui.MWLanguagesDialogTool.static.icon = 'textLanguage';
ve.ui.MWLanguagesDialogTool.static.title =
OO.ui.deferMsg( 'visualeditor-languages-tool' );
ve.ui.MWLanguagesDialogTool.static.commandName = 'meta/languages';
ve.ui.MWLanguagesDialogTool.static.autoAddToCatchall = false;
ve.ui.MWLanguagesDialogTool.static.autoAddToGroup = false;
ve.ui.toolFactory.register( ve.ui.MWLanguagesDialogTool );
ve.ui.commandRegistry.register(
new ve.ui.Command(
'meta/languages', 'window', 'open',
{ args: [ 'meta', { page: 'languages' } ] }
)
);
/**
* MediaWiki UserInterface TemplatesUsed tool.
*
* @class
* @extends ve.ui.WindowTool
* @constructor
* @param {OO.ui.Toolbar} toolbar
* @param {Object} [config] Configuration options
*/
ve.ui.MWTemplatesUsedDialogTool = function VeUiMWTemplatesUsedDialogTool() {
ve.ui.MWTemplatesUsedDialogTool.super.apply( this, arguments );
};
OO.inheritClass( ve.ui.MWTemplatesUsedDialogTool, ve.ui.WindowTool );
ve.ui.MWTemplatesUsedDialogTool.static.name = 'templatesUsed';
ve.ui.MWTemplatesUsedDialogTool.static.group = 'utility';
ve.ui.MWTemplatesUsedDialogTool.static.icon = 'puzzle';
ve.ui.MWTemplatesUsedDialogTool.static.title =
OO.ui.deferMsg( 'visualeditor-templatesused-tool' );
ve.ui.MWTemplatesUsedDialogTool.static.commandName = 'meta/templatesUsed';
ve.ui.MWTemplatesUsedDialogTool.static.autoAddToCatchall = false;
ve.ui.MWTemplatesUsedDialogTool.static.autoAddToGroup = false;
ve.ui.toolFactory.register( ve.ui.MWTemplatesUsedDialogTool );
ve.ui.commandRegistry.register(
new ve.ui.Command(
'meta/templatesUsed', 'window', 'open',
{ args: [ 'meta', { page: 'templatesUsed' } ] }
)
);