Skip to content

Commit 3469095

Browse files
authored
Merge branch 'master' into SKrastev/fix-6061-master
2 parents bf739e6 + 192e4c9 commit 3469095

31 files changed

+1703
-198
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ All notable changes for each version of this project will be documented in this
2424
- `NoopFilteringStrategy` is added, which can be used to disable the default filtering of the grid by assigning its instance to the grid's `filterStrategy` input. (Useful for remote filtering.)
2525
- `sortingExpressionsChange` event emitter is added, which is fired whenever a change to the sorting expressions has occurred (prior to performing the actual sorting).
2626
- `filteringExpressionsTreeChange` event emitter is added, which is fired whenever a change to the filtering expressions has occurred (prior to performing the actual filtering).
27+
- `advancedFilteringExpressionsTreeChange` event emitter is added, which is fired whenever a change to the advanced filtering expressions has occurred (prior to performing the actual filtering).
28+
- `IgxGridExcelStyleFilteringComponent` and `IgxAdvancedFilteringDialogComponent` can now be hosted outside of the grid in order to provide the same experience as the built-in filtering UI.
2729
- `IgxOverlayService`:
2830
- `setOffset` method added. It offsets the content along the corresponding axis by the provided amount.
2931
- `IgxToggleDirective`:

projects/igniteui-angular/src/lib/core/i18n/grid-resources.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ export interface IGridResourceStrings {
6666
igx_grid_excel_select_all?: string;
6767
igx_grid_excel_blanks?: string;
6868
igx_grid_excel_hide?: string;
69+
igx_grid_excel_show?: string;
6970
igx_grid_excel_pin?: string;
7071
igx_grid_excel_unpin?: string;
7172
igx_grid_excel_text_filter?: string;
@@ -158,6 +159,7 @@ export const GridResourceStringsEN: IGridResourceStrings = {
158159
igx_grid_excel_select_all: 'Select All',
159160
igx_grid_excel_blanks: '(Blanks)',
160161
igx_grid_excel_hide: 'Hide column',
162+
igx_grid_excel_show: 'Show column',
161163
igx_grid_excel_pin: 'Pin column',
162164
igx_grid_excel_unpin: 'Unpin column',
163165
igx_grid_excel_text_filter: 'Text filter',

projects/igniteui-angular/src/lib/core/styles/components/grid/_advanced-filtering-component.scss

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,10 @@
3434
@include m('compact') {
3535
@extend %advanced-filter--compact !optional;
3636
}
37+
38+
@include m('inline') {
39+
@extend %advanced-filter--inline !optional;
40+
}
3741
}
3842
}
3943

projects/igniteui-angular/src/lib/core/styles/components/grid/_advanced-filtering-theme.scss

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -407,6 +407,23 @@
407407
}
408408
}
409409

410+
%advanced-filter--inline {
411+
display: flex;
412+
flex-direction: column;
413+
width: 100%;
414+
max-width: 100%;
415+
height: inherit;
416+
max-height: inherit;
417+
min-width: 480px;
418+
box-shadow: none;
419+
420+
%advanced-filter__main {
421+
min-height: initial;
422+
max-height: initial;
423+
flex-grow: 1;
424+
}
425+
}
426+
410427
%filter-con-menu--cosy {
411428
> [igxButton] + [igxButton],
412429
igx-buttongroup + [igxButton],

projects/igniteui-angular/src/lib/core/styles/components/grid/_excel-filtering-component.scss

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,5 +131,9 @@
131131
@include e(add-filter) {
132132
@extend %grid-excel-menu__add-filter !optional;
133133
}
134+
135+
@include m(inline) {
136+
@extend %grid-excel-filter--inline !optional;
137+
}
134138
}
135139
}

projects/igniteui-angular/src/lib/core/styles/components/grid/_excel-filtering-theme.scss

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,32 @@
1818
display: block;
1919
}
2020

21+
%grid-excel-filter--inline {
22+
width: 100%;
23+
flex-grow: 1;
24+
overflow: auto;
25+
26+
%grid-excel-menu {
27+
display: flex;
28+
flex-direction: column;
29+
width: 100%;
30+
height: 100%;
31+
box-shadow: none;
32+
33+
%grid-excel-main {
34+
display: flex;
35+
flex-direction: column;
36+
flex-grow: 1;
37+
overflow: hidden;
38+
}
39+
40+
%grid-excel-main igx-list {
41+
flex-grow: 1;
42+
overflow: hidden;
43+
}
44+
}
45+
}
46+
2147
%igx-excel-filter__loading {
2248
display: flex;
2349
justify-content: center;

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

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,22 @@
11
import { FilterMode } from './enums';
2+
import { DisplayDensity } from '../../core/displayDensity';
3+
import { EventEmitter } from '@angular/core';
4+
import { IFilteringExpressionsTree } from '../../data-operations/filtering-expressions-tree';
5+
import { IGridResourceStrings } from '../../core/i18n/grid-resources';
6+
import { ISortingExpression } from '../../data-operations/sorting-expression.interface';
27

38
export interface IGridDataBindable {
49
data: any[];
510
filteredData: any[];
611
}
712

813
/**
9-
* @hidden
10-
* @internal
14+
* An interface describing a Grid type
1115
*/
1216
export interface GridType extends IGridDataBindable {
17+
displayDensity: DisplayDensity | string;
18+
locale: string;
19+
resourceStrings: IGridResourceStrings;
1320
nativeElement: HTMLElement;
1421
rowEditable: boolean;
1522
rootSummariesEnabled: boolean;
@@ -22,6 +29,7 @@ export interface GridType extends IGridDataBindable {
2229
selectionService: any;
2330
navigation: any;
2431
filteringService: any;
32+
outletDirective: any;
2533

2634
calcHeight: number;
2735

@@ -31,6 +39,7 @@ export interface GridType extends IGridDataBindable {
3139
dataRowList: any;
3240
rowList: any;
3341
columnList: any;
42+
columns: any;
3443
unpinnedColumns: any;
3544
pinnedColumns: any;
3645
summariesRowList: any;
@@ -43,5 +52,14 @@ export interface GridType extends IGridDataBindable {
4352
firstEditableColumnIndex: number;
4453
lastEditableColumnIndex: number;
4554

55+
sortingExpressions: ISortingExpression[];
56+
sortingExpressionsChange: EventEmitter<ISortingExpression[]>;
57+
advancedFilteringExpressionsTree: IFilteringExpressionsTree;
58+
advancedFilteringExpressionsTreeChange: EventEmitter<IFilteringExpressionsTree>;
59+
4660
endEdit(commit: boolean, event?: Event): void;
61+
getColumnByName(name: string): any;
62+
sort(expression: ISortingExpression | Array<ISortingExpression>): void;
63+
clearSort(name?: string): void;
64+
isColumnGrouped(fieldName: string): boolean;
4765
}

projects/igniteui-angular/src/lib/grids/filtering/advanced-filtering/advanced-filtering-dialog.component.html

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
<article
2+
*ngIf="grid"
23
class="igx-advanced-filter"
34
igxDrag
45
[ghost]="false"
@@ -8,7 +9,8 @@
89
(keydown)="onKeyDown($event)"
910
[ngClass]="{
1011
'igx-advanced-filter--cosy': grid.displayDensity === 'cosy',
11-
'igx-advanced-filter--compact': grid.displayDensity === 'compact'
12+
'igx-advanced-filter--compact': grid.displayDensity === 'compact',
13+
'igx-advanced-filter--inline': inline
1214
}"
1315
>
1416
<header class="igx-advanced-filter__header" igxDragHandle>
@@ -266,6 +268,7 @@ <h6 class="igx-filter-empty__title">
266268
<div igxToggle
267269
class="igx-filter-contextual-menu"
268270
(keydown)="onKeyDown($event)"
271+
(onClosed)="contextMenuClosed()"
269272
[ngClass]="{
270273
'igx-filter-contextual-menu--cosy': displayDensity === 'cosy',
271274
'igx-filter-contextual-menu--compact': displayDensity === 'compact'
@@ -336,7 +339,7 @@ <h6 class="igx-filter-empty__title">
336339
<button igxButton [displayDensity]="displayDensity" (click)="onClearButtonClick()">{{ grid.resourceStrings.igx_grid_excel_custom_dialog_clear }}</button>
337340

338341
<div>
339-
<button igxButton [displayDensity]="displayDensity" (click)="closeDialog()">{{ grid.resourceStrings.igx_grid_excel_cancel }}</button>
342+
<button igxButton [displayDensity]="displayDensity" (click)="cancelChanges()">{{ grid.resourceStrings.igx_grid_excel_cancel }}</button>
340343
<button igxButton="raised" [displayDensity]="displayDensity" (click)="onApplyButtonClick()">
341344
{{ grid.resourceStrings.igx_grid_excel_apply }}
342345
</button>

0 commit comments

Comments
 (0)