summaryrefslogtreecommitdiff
path: root/vendor/oojs/oojs-ui/src/elements/TitledElement.js
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/oojs/oojs-ui/src/elements/TitledElement.js')
-rw-r--r--vendor/oojs/oojs-ui/src/elements/TitledElement.js106
1 files changed, 0 insertions, 106 deletions
diff --git a/vendor/oojs/oojs-ui/src/elements/TitledElement.js b/vendor/oojs/oojs-ui/src/elements/TitledElement.js
deleted file mode 100644
index 905ec019..00000000
--- a/vendor/oojs/oojs-ui/src/elements/TitledElement.js
+++ /dev/null
@@ -1,106 +0,0 @@
-/**
- * TitledElement is mixed into other classes to provide a `title` attribute.
- * Titles are rendered by the browser and are made visible when the user moves
- * the mouse over the element. Titles are not visible on touch devices.
- *
- * @example
- * // TitledElement provides a 'title' attribute to the
- * // ButtonWidget class
- * var button = new OO.ui.ButtonWidget( {
- * label: 'Button with Title',
- * title: 'I am a button'
- * } );
- * $( 'body' ).append( button.$element );
- *
- * @abstract
- * @class
- *
- * @constructor
- * @param {Object} [config] Configuration options
- * @cfg {jQuery} [$titled] The element to which the `title` attribute is applied.
- * If this config is omitted, the title functionality is applied to $element, the
- * element created by the class.
- * @cfg {string|Function} [title] The title text or a function that returns text. If
- * this config is omitted, the value of the {@link #static-title static title} property is used.
- */
-OO.ui.TitledElement = function OoUiTitledElement( config ) {
- // Configuration initialization
- config = config || {};
-
- // Properties
- this.$titled = null;
- this.title = null;
-
- // Initialization
- this.setTitle( config.title || this.constructor.static.title );
- this.setTitledElement( config.$titled || this.$element );
-};
-
-/* Setup */
-
-OO.initClass( OO.ui.TitledElement );
-
-/* Static Properties */
-
-/**
- * The title text, a function that returns text, or `null` for no title. The value of the static property
- * is overridden if the #title config option is used.
- *
- * @static
- * @inheritable
- * @property {string|Function|null}
- */
-OO.ui.TitledElement.static.title = null;
-
-/* Methods */
-
-/**
- * Set the titled element.
- *
- * This method is used to retarget a titledElement mixin so that its functionality applies to the specified element.
- * If an element is already set, the mixin’s effect on that element is removed before the new element is set up.
- *
- * @param {jQuery} $titled Element that should use the 'titled' functionality
- */
-OO.ui.TitledElement.prototype.setTitledElement = function ( $titled ) {
- if ( this.$titled ) {
- this.$titled.removeAttr( 'title' );
- }
-
- this.$titled = $titled;
- if ( this.title ) {
- this.$titled.attr( 'title', this.title );
- }
-};
-
-/**
- * Set title.
- *
- * @param {string|Function|null} title Title text, a function that returns text, or `null` for no title
- * @chainable
- */
-OO.ui.TitledElement.prototype.setTitle = function ( title ) {
- title = typeof title === 'string' ? OO.ui.resolveMsg( title ) : null;
-
- if ( this.title !== title ) {
- if ( this.$titled ) {
- if ( title !== null ) {
- this.$titled.attr( 'title', title );
- } else {
- this.$titled.removeAttr( 'title' );
- }
- }
- this.title = title;
- }
-
- return this;
-};
-
-/**
- * Get title.
- *
- * @return {string} Title string
- */
-OO.ui.TitledElement.prototype.getTitle = function () {
- return this.title;
-};