25
25
} ( function ( $ ) {
26
26
27
27
var lastActive ,
28
- baseClasses = "ui-button ui-widget ui-state-default ui-corner-all" ,
28
+ baseClasses = " ui-state-default ui-corner-all" ,
29
29
typeClasses = "ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only" ,
30
30
formResetHandler = function ( ) {
31
31
var form = $ ( this ) ;
@@ -55,6 +55,16 @@ $.widget( "ui.button", {
55
55
version : "@VERSION" ,
56
56
defaultElement : "<button>" ,
57
57
options : {
58
+ classes : {
59
+ "ui-button" : "ui-corner-all" ,
60
+ "ui-button-text" : null ,
61
+ "ui-button-icons-only" : null ,
62
+ "ui-button-icon-only" : null ,
63
+ "ui-button-text-icons" : null ,
64
+ "ui-button-text-icon-primary" : null ,
65
+ "ui-button-text-icon-secondary" : null ,
66
+ "ui-button-text-only" : null
67
+ } ,
58
68
disabled : null ,
59
69
text : true ,
60
70
label : null ,
@@ -89,7 +99,7 @@ $.widget( "ui.button", {
89
99
this . _hoverable ( this . buttonElement ) ;
90
100
91
101
this . buttonElement
92
- . addClass ( baseClasses )
102
+ . addClass ( this . _classes ( "ui-button" ) + baseClasses )
93
103
. attr ( "role" , "button" )
94
104
. bind ( "mouseenter" + this . eventNamespace , function ( ) {
95
105
if ( options . disabled ) {
@@ -244,10 +254,10 @@ $.widget( "ui.button", {
244
254
this . element
245
255
. removeClass ( "ui-helper-hidden-accessible" ) ;
246
256
this . buttonElement
247
- . removeClass ( baseClasses + " ui-state-active " + typeClasses )
257
+ . removeClass ( this . _classes ( "ui-button " + typeClasses ) + baseClasses + " ui-state-active" )
248
258
. removeAttr ( "role" )
249
259
. removeAttr ( "aria-pressed" )
250
- . html ( this . buttonElement . find ( ".ui-button-text" ) . html ( ) ) ;
260
+ . html ( this . buttonElement . find ( ".ui-button-text" ) . html ( ) ) ;
251
261
252
262
if ( ! this . hasTitle ) {
253
263
this . buttonElement . removeAttr ( "title" ) ;
@@ -312,7 +322,7 @@ $.widget( "ui.button", {
312
322
}
313
323
var buttonElement = this . buttonElement . removeClass ( typeClasses ) ,
314
324
buttonText = $ ( "<span></span>" , this . document [ 0 ] )
315
- . addClass ( "ui-button-text" )
325
+ . addClass ( this . _classes ( "ui-button-text" ) )
316
326
. html ( this . options . label )
317
327
. appendTo ( buttonElement . empty ( ) )
318
328
. text ( ) ,
@@ -326,11 +336,11 @@ $.widget( "ui.button", {
326
336
}
327
337
328
338
if ( icons . primary ) {
329
- buttonElement . prepend ( "<span class='ui-button-icon-primary ui-icon " + icons . primary + "'></span>" ) ;
339
+ buttonElement . prepend ( "<span class='" + this . _classes ( " ui-button-icon-primary" ) + " ui-icon " + icons . primary + "'></span>" ) ;
330
340
}
331
341
332
342
if ( icons . secondary ) {
333
- buttonElement . append ( "<span class='ui-button-icon-secondary ui-icon " + icons . secondary + "'></span>" ) ;
343
+ buttonElement . append ( "<span class='" + this . _classes ( " ui-button-icon-secondary" ) + " ui-icon " + icons . secondary + "'></span>" ) ;
334
344
}
335
345
336
346
if ( ! this . options . text ) {
@@ -343,18 +353,21 @@ $.widget( "ui.button", {
343
353
} else {
344
354
buttonClasses . push ( "ui-button-text-only" ) ;
345
355
}
346
- buttonElement . addClass ( buttonClasses . join ( " " ) ) ;
356
+ buttonElement . addClass ( this . _classes ( buttonClasses . join ( " " ) ) ) ;
347
357
}
348
358
} ) ;
349
359
350
360
$ . widget ( "ui.buttonset" , {
351
361
version : "@VERSION" ,
352
362
options : {
363
+ classes : {
364
+ "ui-buttonset" : null
365
+ } ,
353
366
items : "button, input[type=button], input[type=submit], input[type=reset], input[type=checkbox], input[type=radio], a, :data(ui-button)"
354
367
} ,
355
368
356
369
_create : function ( ) {
357
- this . element . addClass ( "ui-buttonset" ) ;
370
+ this . element . addClass ( this . _classes ( "ui-buttonset" ) ) ;
358
371
} ,
359
372
360
373
_init : function ( ) {
@@ -384,6 +397,7 @@ $.widget( "ui.buttonset", {
384
397
. map ( function ( ) {
385
398
return $ ( this ) . button ( "widget" ) [ 0 ] ;
386
399
} )
400
+ // TODO: need to figure out how to use _classes here
387
401
. removeClass ( "ui-corner-all ui-corner-left ui-corner-right" )
388
402
. filter ( ":first" )
389
403
. addClass ( rtl ? "ui-corner-right" : "ui-corner-left" )
0 commit comments