function(item) {
        if (!item) {
            return;
        }
        
        var me = this,
            sprite = item.sprite,
            opts = Ext.merge({}, me.highlightCfg, me.highlight),
            surface = me.chart.surface,
            animate = me.chart.animate,
            p, from, to, pi;

        if (!me.highlight || !sprite || sprite._highlighted) {
            return;
        }
        if (sprite._anim) {
            sprite._anim.paused = true;
        }
        sprite._highlighted = true;
        if (!sprite._defaults) {
            sprite._defaults = Ext.apply({}, sprite.attr);
            from = {};
            to = {};
            // TODO: Clean up code below.
            for (p in opts) {
                if (! (p in sprite._defaults)) {
                    sprite._defaults[p] = surface.availableAttrs[p];
                }
                from[p] = sprite._defaults[p];
                to[p] = opts[p];
                if (Ext.isObject(opts[p])) {
                    from[p] = {};
                    to[p] = {};
                    Ext.apply(sprite._defaults[p], sprite.attr[p]);
                    Ext.apply(from[p], sprite._defaults[p]);
                    for (pi in sprite._defaults[p]) {
                        if (! (pi in opts[p])) {
                            to[p][pi] = from[p][pi];
                        } else {
                            to[p][pi] = opts[p][pi];
                        }
                    }
                    for (pi in opts[p]) {
                        if (! (pi in to[p])) {
                            to[p][pi] = opts[p][pi];
                        }
                    }
                }
            }
            sprite._from = from;
            sprite._to = to;
            sprite._endStyle = to;
        }
        if (animate) {
            sprite._anim = new Ext.fx.Anim({
                target: sprite,
                from: sprite._from,
                to: sprite._to,
                duration: 150
            });
        } else {
            sprite.setAttributes(sprite._to, true);
        }
    }
function(item) {
        if (!item) {
            return;
        }
        
        var me = this,
            sprite = item.sprite,
            opts = Ext.merge({}, me.highlightCfg, me.highlight),
            surface = me.chart.surface,
            animate = me.chart.animate,
            p, from, to, pi;

        if (!me.highlight || !sprite || sprite._highlighted) {
            return;
        }
        if (sprite._anim) {
            sprite._anim.paused = true;
        }
        sprite._highlighted = true;
        if (!sprite._defaults) {
            sprite._defaults = Ext.apply({}, sprite.attr);
            from = {};
            to = {};
            
            for (p in opts) {
                if (! (p in sprite._defaults)) {
                    sprite._defaults[p] = surface.availableAttrs[p];
                }
                from[p] = sprite._defaults[p];
                to[p] = opts[p];
                if (Ext.isObject(opts[p])) {
                    from[p] = {};
                    to[p] = {};
                    Ext.apply(sprite._defaults[p], sprite.attr[p]);
                    Ext.apply(from[p], sprite._defaults[p]);
                    for (pi in sprite._defaults[p]) {
                        if (! (pi in opts[p])) {
                            to[p][pi] = from[p][pi];
                        } else {
                            to[p][pi] = opts[p][pi];
                        }
                    }
                    for (pi in opts[p]) {
                        if (! (pi in to[p])) {
                            to[p][pi] = opts[p][pi];
                        }
                    }
                }
            }
            sprite._from = from;
            sprite._to = to;
            sprite._endStyle = to;
        }
        if (animate) {
            sprite._anim = new Ext.fx.Anim({
                target: sprite,
                from: sprite._from,
                to: sprite._to,
                duration: 150
            });
        } else {
            sprite.setAttributes(sprite._to, true);
        }
    }
function ( item ) { if ( ! item ) { return ; } var me = this , sprite = item . sprite , opts = Ext . merge ( { } , me . highlightCfg , me . highlight ) , surface = me . chart . surface , animate = me . chart . animate , p , from , to , pi ; if ( ! me . highlight || ! sprite || sprite . _highlighted ) { return ; } if ( sprite . _anim ) { sprite . _anim . paused = true ; } sprite . _highlighted = true ; if ( ! sprite . _defaults ) { sprite . _defaults = Ext . apply ( { } , sprite . attr ) ; from = { } ; to = { } ; // TODO: Clean up code below. for ( p in opts ) { if ( ! ( p in sprite . _defaults ) ) { sprite . _defaults [ p ] = surface . availableAttrs [ p ] ; } from [ p ] = sprite . _defaults [ p ] ; to [ p ] = opts [ p ] ; if ( Ext . isObject ( opts [ p ] ) ) { from [ p ] = { } ; to [ p ] = { } ; Ext . apply ( sprite . _defaults [ p ] , sprite . attr [ p ] ) ; Ext . apply ( from [ p ] , sprite . _defaults [ p ] ) ; for ( pi in sprite . _defaults [ p ] ) { if ( ! ( pi in opts [ p ] ) ) { to [ p ] [ pi ] = from [ p ] [ pi ] ; } else { to [ p ] [ pi ] = opts [ p ] [ pi ] ; } } for ( pi in opts [ p ] ) { if ( ! ( pi in to [ p ] ) ) { to [ p ] [ pi ] = opts [ p ] [ pi ] ; } } } } sprite . _from = from ; sprite . _to = to ; sprite . _endStyle = to ; } if ( animate ) { sprite . _anim = new Ext . fx . Anim ( { target : sprite , from : sprite . _from , to : sprite . _to , duration : 150 } ) ; } else { sprite . setAttributes ( sprite . _to , true ) ; } }
Highlight the given series item.
@param {Object} item Info about the item; same format as returned by #getItemForPoint.
Highlight the given series item .