    /**
     * @private
     */
    Ext.define('Ext.slider.Toggle', {
        extend: 'Ext.slider.Slider',

        config: {
            // @inherit
            baseCls: 'x-toggle',

            /**
             * @cfg {String} minValueCls CSS class added to the field when toggled to its minValue
             * @accessor
             */
            minValueCls: 'x-toggle-off',

            /**
             * @cfg {String} maxValueCls CSS class added to the field when toggled to its maxValue
             * @accessor
             */
            maxValueCls: 'x-toggle-on'
        },

        initialize: function() {
            this.callParent();

            this.on({
                change: 'onChange'
            });
        },

        applyMinValue: function() {
            return 0;
        },

        applyMaxValue: function() {
            return 1;
        },

        applyIncrement: function() {
            return 1;
        },

        setValue: function(newValue, oldValue) {
            this.callParent(arguments);
            this.onChange(this, this.getThumbs()[0], newValue, oldValue);
        },

        onChange: function(me, thumb, newValue, oldValue) {
            var isOn = newValue > 0,
                onCls = me.getMaxValueCls(),
                offCls = me.getMinValueCls();

            this.element.addCls(isOn ? onCls : offCls);
            this.element.removeCls(isOn ? offCls : onCls);
        }
    });