       view.$("a[name$='#{label}']").addClass('active')
       view.currentValue.push label
 
+  setDisabled:(disable = yes)->
+    @_disabled = disable
+
   setValue:(label, wCallback = yes)->
     {multiple} = do @getOptions
 

  #     state

  constructor:(options = {}, data)->

    options.size         or= "small"             # a String tiny/small/big
    options.labels       or= ["ON", "OFF"]       # supports multiple labels as string
    options.multiple     ?= no

        do @switchStateChanged

  switchStateChanged:->
    return  if @_disabled

    @getCallback().call @, @getValue() if @getCallback()?

  fallBackToOldState:->
