@@ -356,6 +356,8 @@ class FusionChartsComponent implements OnInit, OnChanges, DoCheck, AfterViewInit
356356 }
357357 }
358358
359+ /*
360+ // Removed as some events will be fired
359361 attachChartEventListener(chartObj: any, eventName: string){
360362 chartObj.addEventListener(eventName, (eventObj:any, dataObj:any) => {
361363 let fEventObj:FusionChartsEvent = { eventObj:{}, dataObj:{} };
@@ -370,6 +372,20 @@ class FusionChartsComponent implements OnInit, OnChanges, DoCheck, AfterViewInit
370372 this.attachChartEventListener(chartObj, eventName);
371373 });
372374 }
375+ */
376+
377+ generateEventsCallback ( eventList :Array < string > ) {
378+ let events = { } ;
379+ eventList . forEach ( eventName => {
380+ events [ eventName ] = ( eventObj :any , dataObj :any ) => {
381+ let fEventObj :FusionChartsEvent = { eventObj :{ } , dataObj :{ } } ;
382+ if ( eventObj ) fEventObj . eventObj = eventObj ;
383+ if ( dataObj ) fEventObj . dataObj = dataObj ;
384+ this [ eventName ] . emit ( fEventObj ) ;
385+ }
386+ } ) ;
387+ return events ;
388+ }
373389
374390 ngAfterViewInit ( ) {
375391 const _this = this ,
@@ -392,15 +408,14 @@ class FusionChartsComponent implements OnInit, OnChanges, DoCheck, AfterViewInit
392408 }
393409
394410 if ( configObj [ 'type' ] ) {
395-
411+ configObj [ 'events' ] = _this . generateEventsCallback ( _this . eventList ) ;
396412 _this . chartObj = FusionChartsConstructor ( _this . fusionchartsService , configObj ) ;
397413 this . initialized . emit ( { chart : _this . chartObj } ) ;
398414 // configObj['renderAt'] = 'container-' + _this.chartObj.id;
399415 // _this.containerId = _this.chartObj.id;
400416
401417 this . zone . runOutsideAngular ( ( ) => {
402418 setTimeout ( ( ) => {
403- _this . attachAllChartEvents ( _this . chartObj , _this . eventList ) ;
404419 _this . chartObj . render ( _this . element . nativeElement . querySelector ( 'div' ) ) ;
405420 } , 1 ) ;
406421 } )
0 commit comments