From 47bb2ebeb231a853717f16d754743f4ded8c67c1 Mon Sep 17 00:00:00 2001 From: highslide-software Date: Wed, 25 Aug 2010 11:54:37 +0200 Subject: [PATCH] Fixed data labels for pie points not getting hidden when hiding point. Closes #72. --- js/highcharts.src.js | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/js/highcharts.src.js b/js/highcharts.src.js index f249aceb3b9..1e351beb393 100644 --- a/js/highcharts.src.js +++ b/js/highcharts.src.js @@ -7355,7 +7355,10 @@ Series.prototype = { options.rotation, align ) - .attr({ zIndex: 1 }) + .attr({ + zIndex: 1, + visibility: point.visible === false ? HIDDEN : VISIBLE // for pies + }) .add(dataLabelsGroup); // pies have point.group } @@ -8416,25 +8419,22 @@ var PiePoint = extendClass(Point, { setVisible: function(vis) { var point = this, - chart = point.series.chart; + chart = point.series.chart, + method; // if called without an argument, toggle visibility point.visible = vis = vis === UNDEFINED ? !point.visible : vis; + method = vis ? 'show' : 'hide'; - if (vis) { - //layer.show(); - point.group.show(); - point.tracker.show(); - - - } else { - //layer.hide(); - point.group.hide(); - point.tracker.hide(); - + point.group[method](); + if (point.tracker) { + point.tracker[method](); } - + if (point.dataLabel) { + point.dataLabel[method](); + } + if (point.legendItem) { chart.legend.colorizeItem(point, vis); }