Skip to content

Commit 5dbfd4e

Browse files
committed
feat(pivot-grid): Update pivot resizing to latest changes and add autosize on double click.
1 parent 72dbf38 commit 5dbfd4e

File tree

6 files changed

+24
-13
lines changed

6 files changed

+24
-13
lines changed

projects/igniteui-angular/src/lib/grids/pivot-grid/pivot-grid.interface.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,9 @@ export interface IPivotDimensionData {
122122
}
123123

124124
export interface PivotRowHeaderGroupType {
125-
intRow: IgxRowDirective;
125+
rowIndex: number;
126+
parent: any;
126127
header: any;
128+
headerID: string;
129+
grid: any;
127130
}

projects/igniteui-angular/src/lib/grids/pivot-grid/pivot-row-dimension-content.component.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,11 @@ export class IgxPivotRowDimensionContentComponent extends IgxGridHeaderRowCompon
7575
) {
7676
super(ref, cdr);
7777
}
78-
protected rowDimensionData: IPivotDimensionData;
78+
79+
/**
80+
* @hidden @internal
81+
*/
82+
public rowDimensionData: IPivotDimensionData;
7983

8084
public get rowDimensionColumn() {
8185
return this.rowDimensionData?.column;
@@ -182,6 +186,7 @@ export class IgxPivotRowDimensionContentComponent extends IgxGridHeaderRowCompon
182186
ref.instance.field = field;
183187
ref.instance.header = header;
184188
ref.instance.width = this.grid.resolveRowDimensionWidth(this.dimension) + 'px';
189+
ref.instance.resizable = this.grid.rowDimensionResizing;
185190
(ref as any).instance._vIndex = this.grid.columns.length + this.rowIndex + this.rowIndex * this.grid.pivotConfiguration.rows.length;
186191
if (dim.childLevel && lvl >= PivotUtil.getTotalLvl(this.rowData, this.grid.pivotKeys)) {
187192
ref.instance.headerTemplate = this.headerTemplate;

projects/igniteui-angular/src/lib/grids/pivot-grid/pivot-row-dimension-header-group.component.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,6 @@ export class IgxPivotRowDimensionHeaderGroupComponent extends IgxGridHeaderGroup
2525
@HostBinding('style.user-select')
2626
public userSelect = 'none';
2727

28-
/**
29-
* @hidden
30-
*/
31-
@ViewChild(IgxPivotRowDimensionHeaderComponent)
32-
public header: IgxPivotRowDimensionHeaderComponent;
33-
3428
constructor(private cdRef: ChangeDetectorRef,
3529
@Inject(IGX_GRID_BASE) public grid: PivotGridType,
3630
private elementRef: ElementRef<HTMLElement>,

projects/igniteui-angular/src/lib/grids/resizing/pivot-grid/pivot-resize-handle.directive.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import {
22
Directive,
33
ElementRef,
4+
HostListener,
45
Input,
56
NgZone
67
} from '@angular/core';
@@ -40,6 +41,15 @@ export class IgxPivotResizeHandleDirective extends IgxResizeHandleDirective {
4041
super(zone, element, colResizingService);
4142
}
4243

44+
/**
45+
* @hidden
46+
*/
47+
public onDoubleClick() {
48+
this._dblClick = true;
49+
this.initResizeService();
50+
this.rowHeaderGroup.grid.autoSizeRowDimension(this.rowHeaderGroup.parent.dimension);
51+
}
52+
4353
/**
4454
* @hidden
4555
*/

projects/igniteui-angular/src/lib/grids/resizing/pivot-grid/pivot-resizing.service.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,7 @@ export class IgxPivotColumnResizingService extends IgxColumnResizingService {
2323
}
2424

2525
protected _handlePixelResize(diff: number, column: ColumnType) {
26-
const pivotRow = this.rowHeaderGroup.intRow as any;
27-
const rowDimIndex = pivotRow.rowDimensionData.findIndex(x => x.column === this.column);
28-
const rowDim = pivotRow.grid.pivotConfiguration.rows[rowDimIndex];
26+
const rowDim = this.rowHeaderGroup.parent.dimension;
2927
if (!rowDim) return;
3028

3129
const currentColWidth = parseFloat(column.width);
@@ -40,7 +38,8 @@ export class IgxPivotColumnResizingService extends IgxColumnResizingService {
4038
}
4139

4240
// Notify the grid to reflow, to update if horizontal scrollbar needs to be rendered/removed.
43-
this.column.grid.notifyChanges(true);
41+
this.rowHeaderGroup.grid.pipeTrigger++;
42+
this.rowHeaderGroup.grid.notifyChanges(true);
4443
}
4544

4645
protected _handlePercentageResize(diff: number, column: ColumnType) { }

projects/igniteui-angular/src/lib/grids/resizing/resize-handle.directive.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ export class IgxResizeHandleDirective implements AfterViewInit, OnDestroy {
3131
/**
3232
* @hidden
3333
*/
34-
private _dblClick = false;
34+
protected _dblClick = false;
3535

3636
/**
3737
* @hidden

0 commit comments

Comments
 (0)