|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
module.exports = function ( graph ){ |
|
|
|
|
|
var pauseMenu = {}, |
|
|
pauseButton; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
pauseMenu.setup = function (){ |
|
|
var menuEntry = d3.select("#pauseOption"); |
|
|
menuEntry.on("mouseover", function (){ |
|
|
var searchMenu = graph.options().searchMenu(); |
|
|
searchMenu.hideSearchEntries(); |
|
|
}); |
|
|
pauseButton = d3.select("#pause-button") |
|
|
.datum({ paused: false }) |
|
|
.on("click", function ( d ){ |
|
|
graph.paused(!d.paused); |
|
|
d.paused = !d.paused; |
|
|
updatePauseButton(); |
|
|
pauseButton.classed("highlighted", d.paused); |
|
|
}); |
|
|
|
|
|
updatePauseButton(); |
|
|
}; |
|
|
|
|
|
pauseMenu.setPauseValue = function ( value ){ |
|
|
pauseButton.datum().paused = value; |
|
|
graph.paused(value); |
|
|
pauseButton.classed("highlighted", value); |
|
|
updatePauseButton(); |
|
|
}; |
|
|
|
|
|
function updatePauseButton(){ |
|
|
updatePauseButtonClass(); |
|
|
updatePauseButtonText(); |
|
|
} |
|
|
|
|
|
function updatePauseButtonClass(){ |
|
|
pauseButton.classed("paused", function ( d ){ |
|
|
return d.paused; |
|
|
}); |
|
|
} |
|
|
|
|
|
function updatePauseButtonText(){ |
|
|
if ( pauseButton.datum().paused ) { |
|
|
pauseButton.text("Resume"); |
|
|
} else { |
|
|
pauseButton.text("Pause"); |
|
|
} |
|
|
} |
|
|
|
|
|
pauseMenu.reset = function (){ |
|
|
|
|
|
pauseMenu.setPauseValue(false); |
|
|
}; |
|
|
|
|
|
|
|
|
return pauseMenu; |
|
|
}; |
|
|
|