diff options
author | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-05-01 15:30:02 -0400 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-05-01 15:30:02 -0400 |
commit | 1de335ad3f395ca6861085393ba366a9e3fb4a0d (patch) | |
tree | f1fdd326034e05177596851be6a7127615d81498 /vendor/oojs/oojs-ui/src/themes/mediawiki/MediaWikiTheme.js | |
parent | 9c75fa8ff6d4d38ef552c00fef5969fb154765e8 (diff) | |
parent | f6d65e533c62f6deb21342d4901ece24497b433e (diff) |
Merge commit 'f6d65'
# Conflicts:
# skins/ArchLinux/ArchLinux.php
Diffstat (limited to 'vendor/oojs/oojs-ui/src/themes/mediawiki/MediaWikiTheme.js')
-rw-r--r-- | vendor/oojs/oojs-ui/src/themes/mediawiki/MediaWikiTheme.js | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/vendor/oojs/oojs-ui/src/themes/mediawiki/MediaWikiTheme.js b/vendor/oojs/oojs-ui/src/themes/mediawiki/MediaWikiTheme.js new file mode 100644 index 00000000..be2371bd --- /dev/null +++ b/vendor/oojs/oojs-ui/src/themes/mediawiki/MediaWikiTheme.js @@ -0,0 +1,56 @@ +/** + * @class + * @extends OO.ui.Theme + * + * @constructor + */ +OO.ui.MediaWikiTheme = function OoUiMediaWikiTheme() { + // Parent constructor + OO.ui.MediaWikiTheme.super.call( this ); +}; + +/* Setup */ + +OO.inheritClass( OO.ui.MediaWikiTheme, OO.ui.Theme ); + +/* Methods */ + +/** + * @inheritdoc + */ +OO.ui.MediaWikiTheme.prototype.getElementClasses = function ( element ) { + // Parent method + var variant, + variants = { + warning: false, + invert: false, + progressive: false, + constructive: false, + destructive: false + }, + // Parent method + classes = OO.ui.MediaWikiTheme.super.prototype.getElementClasses.call( this, element ), + isFramed; + + if ( element.supports( [ 'hasFlag' ] ) ) { + isFramed = element.supports( [ 'isFramed' ] ) && element.isFramed(); + if ( isFramed && ( element.isDisabled() || element.hasFlag( 'primary' ) ) ) { + variants.invert = true; + } else { + variants.progressive = element.hasFlag( 'progressive' ); + variants.constructive = element.hasFlag( 'constructive' ); + variants.destructive = element.hasFlag( 'destructive' ); + variants.warning = element.hasFlag( 'warning' ); + } + } + + for ( variant in variants ) { + classes[ variants[ variant ] ? 'on' : 'off' ].push( 'oo-ui-image-' + variant ); + } + + return classes; +}; + +/* Instantiation */ + +OO.ui.theme = new OO.ui.MediaWikiTheme(); |