Skip to content

Commit 32f2853

Browse files
MKirovaMKirova
authored andcommitted
Add some empty containers with message when there's no dimension/value in the chip area. Add some classes.
1 parent d2ba76a commit 32f2853

File tree

4 files changed

+32
-5
lines changed

4 files changed

+32
-5
lines changed

projects/igniteui-angular/src/lib/grids/headers/grid-header-row.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -184,8 +184,8 @@ export class IgxGridHeaderRowComponent implements DoCheck {
184184
}
185185

186186
constructor(
187-
private ref: ElementRef<HTMLElement>,
188-
private cdr: ChangeDetectorRef
187+
protected ref: ElementRef<HTMLElement>,
188+
protected cdr: ChangeDetectorRef
189189
) { }
190190

191191
/**

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@ export class IgxPivotGridComponent extends IgxGridBaseDirective implements OnIni
204204

205205
public get pivotRowWidths() {
206206
const rowDimCount = this.rowDimensions.length;
207-
return MINIMUM_COLUMN_WIDTH * rowDimCount;
207+
return MINIMUM_COLUMN_WIDTH * rowDimCount || MINIMUM_COLUMN_WIDTH;
208208
}
209209

210210
public get rowDimensions() {

projects/igniteui-angular/src/lib/grids/pivot-grid/pivot-header-row.component.html

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@
2020
(igxDragEnter)="onAreaDragEnter($event, colArea, 1)"
2121
(igxDragLeave)="onAreaDragLeave($event, colArea)"
2222
>
23+
<div *ngIf="grid.columnDimensions.length === 0">
24+
<span class='igx-pivot__emptyChipArea'>Drop Column Fields here.</span>
25+
</div>
2326
<igx-chip *ngFor="let col of grid.columnDimensions" [draggable]="'true'" [id]="col.fieldName"
2427
[removable]="true" (remove)="columnRemoved($event)"
2528
(dragEnter)="onDimDragEnter($event, 1)"
@@ -39,6 +42,9 @@
3942
(igxDragEnter)="onAreaDragEnter($event, valueArea)"
4043
(igxDragLeave)="onAreaDragLeave($event, valueArea)"
4144
>
45+
<div *ngIf="grid.values.length === 0">
46+
<span class='igx-pivot__emptyChipArea'>Drop Value Fields here.</span>
47+
</div>
4248
<igx-chip *ngFor="let value of grid.values" [draggable]="'true'" [id]="value.member" [removable]="true" (remove)="valueRemoved($event)"
4349
(dragEnter)="onDimDragEnter($event)"
4450
(dragLeave)="onDimDragLeave($event)"
@@ -65,6 +71,9 @@
6571
(igxDragEnter)="onAreaDragEnter($event, rowArea, 0)"
6672
(igxDragLeave)="onAreaDragLeave($event, rowArea)"
6773
>
74+
<div *ngIf="grid.rowDimensions.length === 0">
75+
<span class='igx-pivot__emptyChipArea'>Drop Row Fields here.</span>
76+
</div>
6877
<igx-chip *ngFor="let row of grid.rowDimensions" [draggable]="'true'" [id]="row.fieldName"
6978
[removable]="true" (remove)="rowRemoved($event)"
7079
(dragEnter)="onDimDragEnter($event, 0)"

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

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
import {
22
ChangeDetectionStrategy,
3+
ChangeDetectorRef,
34
Component,
4-
Input
5+
ElementRef,
6+
Input,
7+
Renderer2
58
} from '@angular/core';
69
import { IBaseChipEventArgs } from '../../chips/chip.component';
7-
import { IChipsAreaReorderEventArgs } from '../../chips/chips-area.component';
810
import { IgxGridHeaderRowComponent } from '../headers/grid-header-row.component';
911
import { PivotDimensionType } from './pivot-grid.interface';
1012
import { IgxPivotRowComponent } from './pivot-row.component';
@@ -35,6 +37,16 @@ export class IgxPivotHeaderRowComponent extends IgxGridHeaderRowComponent {
3537
@Input()
3638
public row: IgxPivotRowComponent;
3739

40+
private _dropIndicatorClass = 'igx-pivot-grid__drop-indicator';
41+
42+
constructor(
43+
protected ref: ElementRef<HTMLElement>,
44+
protected cdr: ChangeDetectorRef,
45+
protected renderer: Renderer2,
46+
) {
47+
super(ref, cdr);
48+
}
49+
3850
public rowRemoved(event: IBaseChipEventArgs) {
3951
const row = this.grid.pivotConfiguration.rows.find(x => x.fieldName === event.owner.id);
4052
row.enabled = false;
@@ -62,9 +74,12 @@ export class IgxPivotHeaderRowComponent extends IgxGridHeaderRowComponent {
6274
// cannot drag between dimensions and value
6375
return;
6476
}
77+
this.renderer.addClass(event.owner.nativeElement, this._dropIndicatorClass);
78+
// TODO- remove once classes are added.
6579
event.owner.nativeElement.style.borderLeft = '1px solid red';
6680
}
6781
public onDimDragLeave(event) {
82+
this.renderer.removeClass(event.owner.nativeElement, this._dropIndicatorClass);
6883
event.owner.nativeElement.style.borderLeft = '';
6984
}
7085

@@ -80,11 +95,14 @@ export class IgxPivotHeaderRowComponent extends IgxGridHeaderRowComponent {
8095
const targetElem = event.detail.originalEvent.target;
8196
const targetOwner = event.detail.owner.element.nativeElement.parentElement;
8297
if (targetOwner !== lastElem && targetElem.getBoundingClientRect().x >= lastElem.getBoundingClientRect().x) {
98+
this.renderer.addClass(area.chipsList.last.nativeElement, this._dropIndicatorClass);
99+
// TODO- remove once classes are added.
83100
area.chipsList.last.nativeElement.style.borderRight = '1px solid red';
84101
}
85102
}
86103
public onAreaDragLeave(event, area) {
87104
area.chipsList.toArray().forEach(element => {
105+
this.renderer.removeClass(element.nativeElement, this._dropIndicatorClass);
88106
element.nativeElement.style.borderRight = '';
89107
});
90108
}

0 commit comments

Comments
 (0)