mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor
synced 2024-11-29 08:34:54 +00:00
59c67e1e94
demos/ve/demo.css, demos/ve/index.php * Style changes for utilities and dump output * Initially disable the log range button, activate when there's a range to log * Make range inputs read-only * Rename some widget variables * Add extra structure and classes to dump output ve.ui.Widget.css * Remove left/right margin for buttons * Simplify opaque white color * Modify selector for disabled buttons - see changes in ve.ui.Widget.js * Added styles for text input widget's readonly and disabled states ve.ui.Widget.js * Added disabled state ve.ui.ButtonWidget.js * Moved click event handler to method ve.ui.InputLabelWidget.js * Moved click event handler to method ve.ui.InputWidget.js * Moved input change event handler to method * Added readOnly state ve.ui.LinkTargetInputWidget.js * Corrected documentation ve.ui.MenuWidget.js * Blocked interaction while widget is disabled ve.ui.MWLinkTargetInputWidget.js * Corrected documentation * Blocked interaction while widget is disabled ve.ui.TextInputMenuWidget.js * Blocked interaction while widget is disabled Change-Id: I7ea89873b50a98d058d1dd1e309e3e8b7c8e7b2e
63 lines
1.3 KiB
JavaScript
63 lines
1.3 KiB
JavaScript
/*!
|
|
* VisualEditor user interface Widget class.
|
|
*
|
|
* @copyright 2011-2013 VisualEditor Team and others; see AUTHORS.txt
|
|
* @license The MIT License (MIT); see LICENSE.txt
|
|
*/
|
|
|
|
/**
|
|
* Creates an ve.ui.Widget object.
|
|
*
|
|
* @class
|
|
* @abstract
|
|
* @extends ve.EventEmitter
|
|
* @constructor
|
|
* @param {Function} $$ jQuery for the frame the widget is in
|
|
* @param {jQuery} [$element] Widget element
|
|
*/
|
|
ve.ui.Widget = function VeUiWidget( $$, $element ) {
|
|
// Parent constructor
|
|
ve.EventEmitter.call( this );
|
|
|
|
// Properties
|
|
this.$$ = $$;
|
|
this.$ = $element || this.$$( '<div>' );
|
|
this.disabled = false;
|
|
|
|
// Initialization
|
|
this.$.addClass( 've-ui-widget' );
|
|
};
|
|
|
|
/* Inheritance */
|
|
|
|
ve.inheritClass( ve.ui.Widget, ve.EventEmitter );
|
|
|
|
/* Methods */
|
|
|
|
/**
|
|
* Check if the widget is disabled.
|
|
*
|
|
* @method
|
|
* @param {boolean} Button is disabled
|
|
*/
|
|
ve.ui.Widget.prototype.isDisabled = function () {
|
|
return this.disabled;
|
|
};
|
|
|
|
/**
|
|
* Set the disabled state of the widget.
|
|
*
|
|
* This should probably change the widgets's appearance and prevent it from being used.
|
|
*
|
|
* @method
|
|
* @param {boolean} state Disable button
|
|
*/
|
|
ve.ui.Widget.prototype.setDisabled = function ( state ) {
|
|
this.disabled = !!state;
|
|
if ( this.disabled ) {
|
|
this.$.addClass( 've-ui-widget-disabled' );
|
|
} else {
|
|
this.$.removeClass( 've-ui-widget-disabled' );
|
|
}
|
|
};
|