Skip to content

Commit 48dac71

Browse files
authored
Merge pull request #3122 from IgniteUI/kdragieva/finjs-chart-issue
fix(FinJSDemoComponent): Finjs category chart
2 parents 3436835 + 2c0213f commit 48dac71

3 files changed

Lines changed: 30 additions & 19 deletions

File tree

projects/app-lob/src/app/grid-finjs/main.component.html

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,22 +12,23 @@
1212
</app-finjs-grid>
1313
</div>
1414

15-
<igx-dialog #dialog [closeOnOutsideSelect]="true" (closing)="onCloseHandler()">
16-
<div (keydown)="closeDialog()" class="chart-container">
17-
<igx-dialog-title> Chart </igx-dialog-title>
15+
<div igxOverlayOutlet #outlet="overlay-outlet">
16+
<igx-dialog #dialog [closeOnOutsideSelect]="true" (closing)="onCloseHandler()">
17+
<div (keydown)="closeDialog()" class="chart-container">
18+
<igx-dialog-title> Chart </igx-dialog-title>
1819

19-
<div>
20-
<igx-category-chart #chart1 [dataSource]="chartData" width="100%" chartType="column" xAxisInterval="20"
21-
xAxisLabelAngle="90" [includedProperties]="properties" height="400px" [tooltipTemplate]="seriesTooltip">
22-
</igx-category-chart>
23-
</div>
20+
<div>
21+
<igx-category-chart #chart1 [dataSource]="chartData" width="100%" chartType="column" xAxisInterval="20"
22+
xAxisLabelAngle="90" [includedProperties]="properties" height="400px" [tooltipTemplate]="seriesTooltip">
23+
</igx-category-chart>
24+
</div>
2425

25-
<div igxDialogActions>
26-
<button igxButton (click)="closeDialog()" [igxFocus]="dialog.isOpen">ОК</button>
26+
<div igxDialogActions>
27+
<button igxButton (click)="closeDialog()" [igxFocus]="dialog.isOpen">ОК</button>
28+
</div>
2729
</div>
28-
</div>
29-
</igx-dialog>
30-
30+
</igx-dialog>
31+
</div>
3132
<ng-template let-series="series" let-item="item" #seriesTooltip>
3233
<div class="tooltipTable">
3334
<div class="tooltipRow">

projects/app-lob/src/app/grid-finjs/main.component.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
}
1010

1111
.chart-container {
12-
1312
width: 50vw;
1413
}
1514

projects/app-lob/src/app/grid-finjs/main.component.ts

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { Component, HostBinding, OnDestroy, ViewChild } from '@angular/core';
2-
import { IgxDialogComponent } from 'igniteui-angular';
1+
import { AfterViewInit, Component, HostBinding, OnDestroy, ViewChild } from '@angular/core';
2+
import { IgxDialogComponent, IgxOverlayOutletDirective, OverlaySettings } from 'igniteui-angular';
33
import { IgxCategoryChartComponent } from 'igniteui-angular-charts';
44
import { Stock } from '../data/financialData';
55
import { ControllerComponent } from './controllers.component';
@@ -10,11 +10,17 @@ import { GridFinJSComponent } from './grid-finjs.component';
1010
styleUrls: ['./main.component.scss'],
1111
templateUrl: './main.component.html'
1212
})
13-
export class FinJSDemoComponent implements OnDestroy {
13+
export class FinJSDemoComponent implements OnDestroy, AfterViewInit {
1414
@ViewChild('finGrid', { static: true }) public finGrid: GridFinJSComponent;
1515
@ViewChild('controllers', { static: true }) public controller: ControllerComponent;
1616
@ViewChild('dialog', { static: true }) public dialog: IgxDialogComponent;
1717
@ViewChild('chart1', { static: true }) public chart: IgxCategoryChartComponent;
18+
@ViewChild(IgxOverlayOutletDirective, { static: true }) public outlet: IgxOverlayOutletDirective;
19+
20+
public overlaySettings: OverlaySettings = {
21+
modal: false,
22+
closeOnOutsideClick: true
23+
};
1824

1925
@HostBinding('class.dark-theme')
2026
public darkTheme = false;
@@ -43,6 +49,10 @@ export class FinJSDemoComponent implements OnDestroy {
4349
}
4450
}
4551

52+
public ngAfterViewInit(): void {
53+
this.overlaySettings.outlet = this.outlet;
54+
}
55+
4656
public onVolumeChanged(volume: number): void {
4757
this.volume = volume;
4858
this.finGrid.dataService.hasRemoteConnection ? this.finGrid.dataService
@@ -71,7 +81,7 @@ export class FinJSDemoComponent implements OnDestroy {
7181
case 'chart': {
7282
if (this.finGrid.grid.selectedRows.length !== 0) {
7383
this.setChartData(this.finGrid.grid.selectedRows);
74-
this.dialog.open();
84+
this.dialog.open(this.overlaySettings);
7585
} else {
7686
this.controller.toast.open('Please select some rows first!');
7787
};
@@ -85,7 +95,8 @@ export class FinJSDemoComponent implements OnDestroy {
8595

8696
public setChartData(args: Stock[]): void {
8797
this.chartData = [];
88-
args.forEach(row => {
98+
args.forEach(rowKey => {
99+
const row: Stock = this.finGrid.grid.getRowByKey(rowKey).data;
89100
this.chartData.push(row);
90101
this.chart.notifyInsertItem(this.chartData, this.chartData.length - 1, row);
91102
});

0 commit comments

Comments
 (0)