Browse Source

Revert legend item hidden style because of flicker

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

3
c3.css

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

18
c3.js

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