Create a getBarAtEvent function that returns the single bar that was clicked on

This commit is contained in:
Evert Timberg 2015-04-18 09:48:21 -04:00
parent b5692c8534
commit e67d198e69

View File

@ -175,6 +175,27 @@
return barsArray;
},
// Get the single bar that was clicked on
// @return : An object containing the dataset index and bar index of the matching bar. Also contains the rectangle that was drawn
getBarAtEvent : function(e) {
var bar;
var eventPosition = helpers.getRelativePosition(e);
for (var datasetIndex = 0; datasetIndex < this.datasets.length; ++datasetIndex) {
for (var barIndex = 0; barIndex < this.datasets[datasetIndex].bars.length; ++barIndex) {
if (this.datasets[datasetIndex].bars[barIndex].inRange(eventPosition.x, eventPosition.y)) {
bar = {
rectangle : this.datasets[datasetIndex].bars[barIndex],
datasetIndex : datasetIndex,
barIndex : barIndex,
};
return bar;
}
}
}
return bar;
},
buildScale : function(labels){
var self = this;