2
2
< div class ="controls-holder ">
3
3
< div class ="control-item ">
4
4
< ul >
5
- < li > Navigate away to visit the < a [routerLink] ="['../grid-about'] "> < strong > ABOUT</ strong > </ a > page and then return to see the igxGrid restored its state.</ li >
6
- < li > Use the switch buttons to clear currently stored state and stop saving state for the corresponding feature.</ li >
7
- < li > Use the < strong > delete</ strong > and < strong > reload</ strong > buttons to clear the localStorage content and reload the page with clear state.</ li >
5
+ < li > Leave the page by navigating to the < a [routerLink] ="['../grid-about'] "> < strong > ABOUT</ strong > </ a > page or hitting the Save button, the current grid state will be stored in the localStorage object.</ li >
6
+ < li > Use the switch buttons to stop saving state for the corresponding feature.</ li >
8
7
</ ul >
9
8
</ div >
10
9
< div class ="switches ">
10
+ <!-- <div class="control-item">
11
+ <igx-switch [(ngModel)]="options.rowSelection" (change)="onChange($event, 'rowSelection')">Row Selection</igx-switch>
12
+ </div> -->
11
13
< div class ="control-item ">
12
- < igx-switch [(ngModel)] ="state.selection " (change) ="onChange($event, 'selection ') "> Row Selection</ igx-switch >
14
+ < igx-switch [(ngModel)] ="options.cellSelection " (change) ="onChange($event, 'cellSelection ') "> Cell Selection</ igx-switch >
13
15
</ div >
14
16
< div class ="control-item ">
15
- < igx-switch [(ngModel)] ="state .filtering " (change) ="onChange($event, 'filtering') "> Filtering</ igx-switch >
17
+ < igx-switch [(ngModel)] ="options .filtering " (change) ="onChange($event, 'filtering') "> Filtering</ igx-switch >
16
18
</ div >
17
19
< div class ="control-item ">
18
- < igx-switch [(ngModel)] ="state .advancedFiltering " (change) ="onChange($event, 'advancedFiltering') "> Advanced Filtering</ igx-switch >
20
+ < igx-switch [(ngModel)] ="options .advancedFiltering " (change) ="onChange($event, 'advancedFiltering') "> Advanced Filtering</ igx-switch >
19
21
</ div >
20
22
< div class ="control-item ">
21
- < igx-switch [(ngModel)] ="state .paging " (change) ="onChange($event, 'paging') "> Paging</ igx-switch >
23
+ < igx-switch [(ngModel)] ="options .paging " (change) ="onChange($event, 'paging') "> Paging</ igx-switch >
22
24
</ div >
23
25
< div class ="control-item ">
24
- < igx-switch [(ngModel)] ="state .sorting " (change) ="onChange($event, 'sorting') "> Sorting</ igx-switch >
26
+ < igx-switch [(ngModel)] ="options .sorting " (change) ="onChange($event, 'sorting') "> Sorting</ igx-switch >
25
27
</ div >
26
28
< div class ="control-item ">
27
- < igx-switch [(ngModel)] ="state.columns " (change) ="onChange($event, 'columns ') "> Columns </ igx-switch >
29
+ < igx-switch [(ngModel)] ="options.groupBy " (change) ="onChange($event, 'groupBy ') "> Grouping </ igx-switch >
28
30
</ div >
29
31
< div class ="control-item ">
30
- < span class ="clear-button " (click) ="clearStorage(toast) " #target ="tooltipTarget " [igxTooltipTarget] ="clear "> < igx-icon > delete</ igx-icon > </ span >
32
+ < igx-switch [(ngModel)] ="options.columns " (change) ="onChange($event, 'columns') "> Columns</ igx-switch >
33
+ </ div >
34
+ < div class ="control-item ">
35
+ < igx-switch [(ngModel)] ="serialize "> Serialize</ igx-switch >
36
+ </ div >
37
+ </ div >
38
+ < div class ="switches " style ="min-width: inherit ">
39
+ < div class ="control-item ">
40
+ < button igxButton ="raised " (click) ="saveGridState() "> Save</ button >
41
+ </ div >
42
+ < div class ="control-item ">
43
+ < button igxButton ="raised " (click) ="restoreGridState() "> Restore All</ button >
44
+ </ div >
45
+ < div class ="control-item ">
46
+ < button igxButton ="raised " (click) ="restoreColumns() "> Columns</ button >
47
+ </ div >
48
+ < div class ="control-item ">
49
+ < button igxButton ="raised " (click) ="restoreFiltering() "> Filtering</ button >
50
+ </ div >
51
+ < div class ="control-item ">
52
+ < button igxButton ="raised " (click) ="restoreAdvancedFiltering() "> Adv Filtering</ button >
53
+ </ div >
54
+ < div class ="control-item ">
55
+ < button igxButton ="raised " (click) ="restoreSorting() "> Sorting</ button >
56
+ </ div >
57
+ < div class ="control-item ">
58
+ < button igxButton ="raised " (click) ="restoreGroupby() "> GroupBy</ button >
59
+ </ div >
60
+ <!-- <div class="control-item">
61
+ <button igxButton="raised" (click)="restoreRowSelection()">Row Selection</button>
62
+ </div> -->
63
+ < div class ="control-item ">
64
+ < button igxButton ="raised " (click) ="restoreCellSelection() "> Cell Selection</ button >
65
+ </ div >
66
+ < div class ="control-item ">
67
+ < button igxButton ="raised " (click) ="restorePaging() "> Paging</ button >
68
+ </ div >
69
+ < div class ="control-item ">
70
+ < button igxButton ="raised " (click) ="resetGridState() "> Reset</ button >
71
+ </ div >
72
+ < div class ="control-item ">
73
+ < span class ="clear-button " (click) ="clearStorage() " #target ="tooltipTarget " [igxTooltipTarget] ="clear "> < igx-icon > delete</ igx-icon > </ span >
31
74
</ div >
32
75
< div class ="control-item ">
33
76
< span class ="clear-button " (click) ="reloadPage() " #target ="tooltipTarget " [igxTooltipTarget] ="reload "> < igx-icon > refresh</ igx-icon > </ span >
34
77
</ div >
35
78
</ div >
36
79
</ div >
37
80
38
- < igx-grid [id] ="gridId " #grid1 igxState [data] ="localData " [primaryKey] ="'EmployeeID' " width ="950px " height ="550px "
39
- [rowEditable] ="true " [allowFiltering] ="true " [allowAdvancedFiltering] ="true " [rowSelectable] ="true "
40
- [paging] ="true " [showToolbar] ="true " [columnPinning] ="true " [columnHiding] ="true "
41
- [filterMode] ="'excelStyleFilter' " [displayDensity] ="'cosy' ">
42
- < igx-column *ngFor ="let c of columns " [sortable] ="true " [movable] ="true " [filterable] ="true "
43
- [field] ="c.field " [header] ="c.header " [dataType] ="c.dataType " [pinned] ="c.pinned " [hidden] ="c.hidden "> </ igx-column >
44
- </ igx-grid >
81
+ < igx-grid [id] ="gridId " #grid1 [igxGridState] ="options "
82
+ width ="1150px " height ="550px " [autoGenerate] ="false "
83
+ [data] ="localData "
84
+ [primaryKey] ="'EmployeeID' "
85
+ [rowEditable] ="false "
86
+ [allowFiltering] ="true " [allowAdvancedFiltering] ="true " [filterMode] ="'excelStyleFilter' "
87
+ [paging] ="true "
88
+ [showToolbar] ="true "
89
+ [columnPinning] ="true "
90
+ [columnHiding] ="true "
91
+ [displayDensity] ="'cosy' "
92
+ [cellSelection] ="'multiple' "
93
+ [rowSelection] ="'none' ">
94
+ < igx-column *ngFor ="let c of columns "
95
+ [sortable] ="c.sortable "
96
+ [movable] ="c.movable "
97
+ [editable] ="true "
98
+ [hasSummary] ="c.hasSummary "
99
+ [filterable] ="c.filterable "
100
+ [groupable] ="c.groupable "
101
+ [field] ="c.field "
102
+ [header] ="c.header "
103
+ [dataType] ="c.dataType "
104
+ [pinned] ="c.pinned "
105
+ [hidden] ="c.hidden ">
106
+ </ igx-column >
107
+ </ igx-grid >
45
108
46
109
< div #clear ="tooltip " igxTooltip > Clear the state from localStorage.</ div >
47
110
< div #reload ="tooltip " igxTooltip > Reload the page.</ div >
48
-
49
- < igx-toast #toast message ="Grid state data has been cleared from localStorage. "> </ igx-toast >
50
111
</ div >
0 commit comments