angular-google-chart
Version:
Google Chart Tools AngularJS Directive Module
27 lines (26 loc) • 1.19 kB
JavaScript
/* global angular */
(function(){
angular.module('googlechart')
.directive('agcOnSelect', onSelectDirective);
function onSelectDirective(){
return {
restrict: 'A',
scope: false,
require: 'googleChart',
link: function(scope, element, attrs, googleChartController){
callback.$inject = ['chartWrapper', 'chart'];
function callback(chartWrapper, chart){
var selectEventRetParams = { selectedItems: chart.getSelection() };
// This is for backwards compatibility for people using 'selectedItem' that only wanted the first selection.
selectEventRetParams.selectedItem = selectEventRetParams.selectedItems[0];
selectEventRetParams.chartWrapper = chartWrapper;
selectEventRetParams.chart = chart;
scope.$apply(function () {
scope.$eval(attrs.agcOnSelect, selectEventRetParams);
});
}
googleChartController.registerWrapperListener('select', callback, this);
}
};
}
})();