Permalink
Browse files

Dialog: Support deprecated button options

Fixes #15016
Closes gh-1723
  • Loading branch information...
1 parent f67f929 commit 6c754b4b5b19a2a12eae68058458ef9ff7b72a0a @scottgonzalez scottgonzalez committed Jul 25, 2016
Showing with 41 additions and 1 deletion.
  1. +30 −0 tests/unit/dialog/deprecated.js
  2. +11 −1 ui/widgets/dialog.js
@@ -28,4 +28,34 @@ QUnit.test( "dialogClass", function( assert ) {
element.remove();
} );
+QUnit.test( "buttons - deprecated options", function( assert ) {
+ assert.expect( 7 );
+
+ var buttons,
+ element = $( "<div></div>" ).dialog( {
+ buttons: [
+ {
+ html: "a button",
+ "class": "additional-class",
+ id: "my-button-id",
+ click: function() {
+ assert.equal( this, element[ 0 ], "correct context" );
+ },
+ icons: { primary: "ui-icon-cancel" },
+ text: false
+ }
+ ]
+ } );
+
+ buttons = element.dialog( "widget" ).find( ".ui-dialog-buttonpane button" );
+ assert.equal( buttons.length, 1, "correct number of buttons" );
+ assert.equal( buttons.attr( "id" ), "my-button-id", "correct id" );
+ assert.equal( $.trim( buttons.text() ), "a button", "correct label" );
+ assert.hasClasses( buttons, "additional-class" );
+ assert.deepEqual( buttons.button( "option", "icon" ), "ui-icon-cancel" );
+ assert.equal( buttons.button( "option", "showLabel" ), false );
+ buttons.trigger( "click" );
+
+ element.remove();
+} );
} );
View
@@ -500,14 +500,24 @@ $.widget( "ui.dialog", {
buttonOptions = {
icon: props.icon,
iconPosition: props.iconPosition,
- showLabel: props.showLabel
+ showLabel: props.showLabel,
+
+ // Deprecated options
+ icons: props.icons,
+ text: props.text
};
delete props.click;
delete props.icon;
delete props.iconPosition;
delete props.showLabel;
+ // Deprecated options
+ delete props.icons;
+ if ( typeof props.text === "boolean" ) {
+ delete props.text;
+ }
+
$( "<button></button>", props )
.button( buttonOptions )
.appendTo( that.uiButtonSet )

0 comments on commit 6c754b4

Please sign in to comment.