Browse Source

Fix hidden legend opacity to use css class - #128

pull/153/head
Masayuki Tanaka 11 years ago
parent
commit
b87e6602b3
  1. 3
      c3.css
  2. 18
      c3.js
  3. 4
      c3.min.js

3
c3.css

@ -115,6 +115,9 @@
.c3-legend-item {
font-size: 12px;
}
.c3-legend-item-hidden {
opacity: 0.1;
}
/*-- Tooltip --*/

18
c3.js

@ -3672,14 +3672,16 @@
/*-- Draw Legend --*/
function opacityForLegend(id) {
return d3.select(selectorLegend(id)).classed(CLASS.legendItemHidden) ? 0.5 : 1;
var item = legend.select(selectorLegend(id));
item.style('opacity', null); // MEMO: remove to get opacity by css
return item.classed(CLASS.legendItemHidden) ? item.style('opacity') : 1;
}
function toggleFocusLegend(id, focus) {
var legendItem = legend.selectAll('.' + CLASS.legendItem),
var items = legend.selectAll('.' + CLASS.legendItem).filter(function () { return !d3.select(this).classed(CLASS.legendItemHidden); }),
isTarget = function (d) { return (!id || d === id); },
notTarget = function (d) { return !isTarget(d); };
legendItem.filter(notTarget).transition().duration(100).style('opacity', focus ? 0.3 : opacityForLegend);
legendItem.filter(isTarget).transition().duration(100).style('opacity', focus ? opacityForLegend : 0.3);
items.filter(notTarget).transition().duration(100).style('opacity', focus ? 0.3 : opacityForLegend);
items.filter(isTarget).transition().duration(100).style('opacity', focus ? opacityForLegend : 0.3);
}
function focusLegend(id) {
toggleFocusLegend(id, true);
@ -3943,9 +3945,7 @@
showLegend(targetIds);
} else {
legend.selectAll(selectorLegends(targetIds))
.classed(CLASS.legendItemHidden, false)
.transition()
.style('opacity', 1);
.classed(CLASS.legendItemHidden, false);
}
redraw({withUpdateOrgXDomain: true, withUpdateXDomain: true, withTransitionForHorizontalAxis: false});
@ -3964,9 +3964,7 @@
hideLegend(targetIds);
} else {
legend.selectAll(selectorLegends(targetIds))
.classed(CLASS.legendItemHidden, true)
.transition()
.style('opacity', 0.5);
.classed(CLASS.legendItemHidden, true);
}
redraw({withUpdateOrgXDomain: true, withUpdateXDomain: true, withTransitionForHorizontalAxis: false});

4
c3.min.js vendored

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save