@progress/kendo-angular-dropdowns 5.5.1-dev.202111181325 → 6.0.0-dev.202201190829

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/LICENSE.md +1 -1
  2. package/NOTICE.txt +119 -79
  3. package/README.md +1 -1
  4. package/dist/cdn/js/kendo-angular-dropdowns.js +2 -2
  5. package/dist/cdn/main.js +1 -1
  6. package/dist/es/autocomplete/autocomplete.component.js +120 -5
  7. package/dist/es/comboboxes/combobox.component.js +141 -20
  8. package/dist/es/comboboxes/multicolumncombobox.component.js +30 -10
  9. package/dist/es/common/list.component.js +83 -5
  10. package/dist/es/common/models/fillmode.js +4 -0
  11. package/dist/es/common/models/list-type.js +4 -0
  12. package/dist/es/common/models/rounded.js +4 -0
  13. package/dist/es/common/models/size.js +4 -0
  14. package/dist/es/common/searchbar.component.js +1 -1
  15. package/dist/es/common/selection/selectable.directive.js +2 -2
  16. package/dist/es/common/taglist.component.js +58 -5
  17. package/dist/es/common/util.js +37 -0
  18. package/dist/es/dropdownlist/dropdownlist.component.js +338 -46
  19. package/dist/es/dropdowntrees/dropdowntree.component.js +276 -42
  20. package/dist/es/dropdowntrees/multiselecttree.component.js +307 -46
  21. package/dist/es/multiselect/multiselect.component.js +162 -35
  22. package/dist/es/package-metadata.js +1 -1
  23. package/dist/es2015/autocomplete/autocomplete.component.d.ts +42 -0
  24. package/dist/es2015/autocomplete/autocomplete.component.js +109 -7
  25. package/dist/es2015/comboboxes/combobox.component.d.ts +49 -4
  26. package/dist/es2015/comboboxes/combobox.component.js +207 -106
  27. package/dist/es2015/comboboxes/multicolumncombobox.component.d.ts +9 -1
  28. package/dist/es2015/comboboxes/multicolumncombobox.component.js +185 -166
  29. package/dist/es2015/common/list.component.d.ts +22 -1
  30. package/dist/es2015/common/list.component.js +115 -36
  31. package/dist/es2015/common/models/fillmode.d.ts +14 -0
  32. package/dist/es2015/common/models/fillmode.js +4 -0
  33. package/dist/es2015/common/models/list-type.d.ts +8 -0
  34. package/dist/es2015/common/models/list-type.js +4 -0
  35. package/dist/es2015/common/models/rounded.d.ts +15 -0
  36. package/dist/es2015/common/models/rounded.js +4 -0
  37. package/dist/es2015/common/models/size.d.ts +14 -0
  38. package/dist/es2015/common/models/size.js +4 -0
  39. package/dist/es2015/common/searchbar.component.js +1 -1
  40. package/dist/es2015/common/selection/selectable.directive.js +2 -2
  41. package/dist/es2015/common/taglist.component.d.ts +13 -1
  42. package/dist/es2015/common/taglist.component.js +102 -47
  43. package/dist/es2015/common/util.d.ts +17 -0
  44. package/dist/es2015/common/util.js +37 -0
  45. package/dist/es2015/dropdownlist/dropdownlist.component.d.ts +77 -13
  46. package/dist/es2015/dropdownlist/dropdownlist.component.js +390 -159
  47. package/dist/es2015/dropdowntrees/dropdowntree.component.d.ts +71 -13
  48. package/dist/es2015/dropdowntrees/dropdowntree.component.js +287 -99
  49. package/dist/es2015/dropdowntrees/multiselecttree.component.d.ts +72 -12
  50. package/dist/es2015/dropdowntrees/multiselecttree.component.js +319 -117
  51. package/dist/es2015/index.metadata.json +1 -1
  52. package/dist/es2015/multiselect/multiselect.component.d.ts +53 -8
  53. package/dist/es2015/multiselect/multiselect.component.js +183 -70
  54. package/dist/es2015/package-metadata.js +1 -1
  55. package/dist/fesm2015/index.js +1928 -801
  56. package/dist/fesm5/index.js +1569 -231
  57. package/dist/npm/autocomplete/autocomplete.component.js +119 -4
  58. package/dist/npm/comboboxes/combobox.component.js +140 -19
  59. package/dist/npm/comboboxes/multicolumncombobox.component.js +29 -9
  60. package/dist/npm/common/list.component.js +82 -4
  61. package/dist/npm/common/models/fillmode.js +6 -0
  62. package/dist/npm/common/models/list-type.js +6 -0
  63. package/dist/npm/common/models/rounded.js +6 -0
  64. package/dist/npm/common/models/size.js +6 -0
  65. package/dist/npm/common/searchbar.component.js +1 -1
  66. package/dist/npm/common/selection/selectable.directive.js +2 -2
  67. package/dist/npm/common/taglist.component.js +56 -3
  68. package/dist/npm/common/util.js +37 -0
  69. package/dist/npm/dropdownlist/dropdownlist.component.js +336 -44
  70. package/dist/npm/dropdowntrees/dropdowntree.component.js +274 -40
  71. package/dist/npm/dropdowntrees/multiselecttree.component.js +304 -43
  72. package/dist/npm/multiselect/multiselect.component.js +160 -33
  73. package/dist/npm/package-metadata.js +1 -1
  74. package/dist/systemjs/kendo-angular-dropdowns.js +1 -1
  75. package/package.json +21 -17
@@ -16,7 +16,7 @@ import { DisabledItemsService } from '../common/disabled-items/disabled-items.se
16
16
  import { NavigationService } from '../common/navigation/navigation.service';
17
17
  import { SelectionService } from '../common/selection/selection.service';
18
18
  import { TOUCH_ENABLED } from '../common/constants/touch-enabled';
19
- import { getter, isObject, isPresent, noop } from '../common/util';
19
+ import { getSizeClass, getter, isObject, isPresent, noop } from '../common/util';
20
20
  import { getRowWidthFromColumnsMeta, scrollbarWidth } from './combobox-column/util';
21
21
  import { FilterableComponent } from '../common/filtering/filterable-component';
22
22
  import { MultiColumnComboBoxMessages } from '../common/constants/error-messages';
@@ -24,8 +24,8 @@ import { MultiColumnComboBoxMessages } from '../common/constants/error-messages'
24
24
  * Represents the [Kendo UI MultiColumnComboBox component for Angular]({% slug overview_multicolumncombobox %}).
25
25
  */
26
26
  let MultiColumnComboBoxComponent = MultiColumnComboBoxComponent_1 = class MultiColumnComboBoxComponent extends ComboBoxComponent {
27
- constructor(localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, hostElement, touchEnabled) {
28
- super(localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, hostElement, touchEnabled);
27
+ constructor(localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, wrapper, touchEnabled) {
28
+ super(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, touchEnabled);
29
29
  /**
30
30
  * @hidden
31
31
  */
@@ -36,6 +36,12 @@ let MultiColumnComboBoxComponent = MultiColumnComboBoxComponent_1 = class MultiC
36
36
  // use a smaller virtual page size as columns with multiple cells can cause poor performance
37
37
  this.defaultVirtualPageSize = 30;
38
38
  }
39
+ /**
40
+ * @hidden
41
+ */
42
+ get isDisabled() {
43
+ return this.disabled;
44
+ }
39
45
  /**
40
46
  * @hidden
41
47
  */
@@ -50,18 +56,19 @@ let MultiColumnComboBoxComponent = MultiColumnComboBoxComponent_1 = class MultiC
50
56
  const max = isNaN(width) ? width : `${width}px`;
51
57
  return { min, max };
52
58
  }
59
+ /**
60
+ * @hidden
61
+ */
62
+ get tableSizeClass() {
63
+ return `${this.size ? getSizeClass('table', this.size) : ''}`;
64
+ }
53
65
  /**
54
66
  * @hidden
55
67
  */
56
68
  get listContainerClasses() {
57
69
  return [
58
- 'k-list-container',
59
70
  'k-popup',
60
- 'k-reset',
61
- 'k-group',
62
- 'k-dropdowngrid-popup',
63
- 'k-popup-flush',
64
- 'k-state-border-up'
71
+ 'k-dropdowngrid-popup'
65
72
  ].concat(this.popupSettings.popupClass || []);
66
73
  }
67
74
  ngAfterViewInit() {
@@ -137,6 +144,11 @@ tslib_1.__decorate([
137
144
  HostBinding('class.k-dropdowngrid'),
138
145
  tslib_1.__metadata("design:type", Boolean)
139
146
  ], MultiColumnComboBoxComponent.prototype, "hostClasses", void 0);
147
+ tslib_1.__decorate([
148
+ HostBinding('class.k-disabled'),
149
+ tslib_1.__metadata("design:type", Boolean),
150
+ tslib_1.__metadata("design:paramtypes", [])
151
+ ], MultiColumnComboBoxComponent.prototype, "isDisabled", null);
140
152
  tslib_1.__decorate([
141
153
  ContentChildren(ComboBoxColumnComponent),
142
154
  tslib_1.__metadata("design:type", QueryList)
@@ -184,63 +196,56 @@ MultiColumnComboBoxComponent = MultiColumnComboBoxComponent_1 = tslib_1.__decora
184
196
  clearTitle="clear"
185
197
  >
186
198
  </ng-container>
187
- <span
188
- #wrapper
189
- unselectable="on"
190
- class="k-dropdown-wrap"
191
- [class.k-state-disabled]="disabled"
199
+ <kendo-searchbar
200
+ #searchbar
201
+ [role]="'combobox'"
202
+ [id]="focusableId"
203
+ [listId]="listBoxId"
204
+ [activeDescendant]="activeDescendant"
205
+ [noDataLabel]="noDataLabel"
206
+ [userInput]="text"
207
+ [suggestedText]="getSuggestion()"
208
+ [disabled]="disabled"
209
+ [readonly]="readonly"
210
+ [tabIndex]="tabIndex"
211
+ [popupOpen]="isOpen"
212
+ [placeholder]="placeholder"
213
+ (onNavigate)="handleNavigate($event)"
214
+ (valueChange)="searchBarChange($event)"
215
+ (onBlur)="handleBlur()"
216
+ (onFocus)="handleFocus()"
192
217
  >
193
- <kendo-searchbar
194
- #searchbar
195
- [role]="'combobox'"
196
- [id]="focusableId"
197
- [listId]="listBoxId"
198
- [activeDescendant]="activeDescendant"
199
- [noDataLabel]="noDataLabel"
200
- [userInput]="text"
201
- [suggestedText]="getSuggestion()"
202
- [disabled]="disabled"
203
- [readonly]="readonly"
204
- [tabIndex]="tabIndex"
205
- [popupOpen]="isOpen"
206
- [placeholder]="placeholder"
207
- (onNavigate)="handleNavigate($event)"
208
- (valueChange)="searchBarChange($event)"
209
- (onBlur)="handleBlur()"
210
- (onFocus)="handleFocus()"
211
- >
212
- </kendo-searchbar>
213
-
214
- <span
215
- *ngIf="clearButton && !loading && !disabled && !readonly && text?.length"
216
- class="k-icon k-clear-value k-i-close"
217
- [style.visibility]="clearButtonVisiblity"
218
- aria-hidden="true"
219
- [attr.title]="clearTitle"
220
- (click)="clearValue($event)"
221
- [kendoEventsOutsideAngular]="{
222
- mousedown: preventEventDefault
223
- }"
224
- >
225
- </span>
218
+ </kendo-searchbar>
226
219
 
227
- <span
228
- #select
229
- aria-hidden="true"
230
- unselectable="on"
231
- class="k-select"
232
- [kendoEventsOutsideAngular]="{
233
- mousedown: preventEventDefault
234
- }"
235
- >
236
- <span
237
- class="k-icon"
238
- [ngClass]="buttonClasses"
239
- >
240
- </span>
241
- </span>
220
+ <span
221
+ *ngIf="clearButton && !loading && !disabled && !readonly && text?.length"
222
+ class="k-clear-value"
223
+ [style.visibility]="clearButtonVisiblity"
224
+ aria-hidden="true"
225
+ [attr.title]="clearTitle"
226
+ (click)="clearValue($event)"
227
+ [kendoEventsOutsideAngular]="{
228
+ mousedown: preventEventDefault
229
+ }"
230
+ >
231
+ <span class="k-icon k-i-x"></span>
242
232
  </span>
243
233
 
234
+ <button
235
+ #select
236
+ tabindex="-1"
237
+ aria-hidden="true"
238
+ unselectable="on"
239
+ type="button"
240
+ class="k-input-button k-button k-icon-button"
241
+ [ngClass]="selectButtonClasses"
242
+ [kendoEventsOutsideAngular]="{
243
+ mousedown: preventEventDefault
244
+ }"
245
+ >
246
+ <span class="k-button-icon k-icon" [ngClass]="buttonClasses"></span>
247
+ </button>
248
+
244
249
  <ng-template #popupTemplate>
245
250
  <!--user-defined header template -->
246
251
  <ng-template
@@ -251,125 +256,139 @@ MultiColumnComboBoxComponent = MultiColumnComboBoxComponent_1 = tslib_1.__decora
251
256
  >
252
257
  </ng-template>
253
258
 
254
- <!--grid header-->
255
- <div
256
- #header
257
- class="k-grid-header"
258
- >
259
- <div class="k-grid-header-wrap">
260
- <table role="presentation">
261
- <colgroup>
262
- <ng-container *ngFor="let column of columns">
263
- <col
264
- *ngIf="!column.hidden && column.matchesMedia"
265
- [style.width.px]="column.width"
266
- />
267
- </ng-container>
268
- </colgroup>
269
- <tbody>
270
- <tr>
259
+ <!--data table-->
260
+ <div class="k-data-table" [ngClass]="tableSizeClass">
261
+
262
+ <!--grid header-->
263
+ <div
264
+ #header
265
+ class="k-table-header"
266
+ >
267
+ <div class="k-table-header-wrap">
268
+ <table class="k-table" role="presentation">
269
+ <colgroup>
271
270
  <ng-container *ngFor="let column of columns">
272
- <th
271
+ <col
273
272
  *ngIf="!column.hidden && column.matchesMedia"
274
- class="k-header"
275
- [ngStyle]="column.headerStyle"
276
- [ngClass]="column.headerClass"
277
- >
278
- <ng-container *ngIf="!column.headerTemplate">
279
- {{ column.title || column.field }}
280
- </ng-container>
281
- <ng-template
282
- *ngIf="column.headerTemplate"
283
- [templateContext]="{
284
- templateRef: column.headerTemplate?.templateRef,
285
- $implicit: column,
286
- column: column
287
- }"
288
- >
289
- </ng-template>
290
- </th>
273
+ [style.width.px]="column.width"
274
+ />
291
275
  </ng-container>
292
- </tr>
293
- </tbody>
294
- </table>
276
+ </colgroup>
277
+ <thead class="k-table-thead">
278
+ <tr class="k-table-row">
279
+ <ng-container *ngFor="let column of columns">
280
+ <th
281
+ *ngIf="!column.hidden && column.matchesMedia"
282
+ class="k-table-th"
283
+ [ngStyle]="column.headerStyle"
284
+ [ngClass]="column.headerClass"
285
+ >
286
+ <ng-container *ngIf="!column.headerTemplate">
287
+ {{ column.title || column.field }}
288
+ </ng-container>
289
+ <ng-template
290
+ *ngIf="column.headerTemplate"
291
+ [templateContext]="{
292
+ templateRef: column.headerTemplate?.templateRef,
293
+ $implicit: column,
294
+ column: column
295
+ }"
296
+ >
297
+ </ng-template>
298
+ </th>
299
+ </ng-container>
300
+ </tr>
301
+ </thead>
302
+ </table>
303
+ </div>
295
304
  </div>
296
- </div>
297
305
 
298
- <!-- item template -->
299
- <ng-template #rowTemplate let-dataItem>
300
- <ng-container *ngFor="let column of columns">
301
- <span
302
- *ngIf="!column.hidden && column.matchesMedia"
303
- class="k-cell"
304
- [ngClass]="column.class"
305
- [style.width.px]="column.width"
306
- [ngStyle]="column.style"
307
- >
308
- <ng-container *ngIf="!column.cellTemplate">
309
- {{ textFrom(dataItem, column.field) }}
310
- </ng-container>
311
- <ng-template
312
- *ngIf="column.cellTemplate"
313
- [templateContext]="{
314
- templateRef: column.cellTemplate?.templateRef,
315
- $implicit: dataItem,
316
- dataItem: dataItem,
317
- column: column
318
- }"
306
+ <!-- item template -->
307
+ <ng-template #rowTemplate let-dataItem>
308
+ <ng-container *ngFor="let column of columns">
309
+ <span
310
+ *ngIf="!column.hidden && column.matchesMedia"
311
+ class="k-table-td"
312
+ [ngClass]="column.class"
313
+ [style.width.px]="column.width"
314
+ [ngStyle]="column.style"
319
315
  >
320
- </ng-template>
321
- </span>
322
- </ng-container>
323
- </ng-template>
324
-
325
- <!--list-->
326
- <kendo-list
327
- #optionsList
328
- [id]="listBoxId"
329
- [optionPrefix]="optionPrefix"
330
- [data]="data"
331
- [textField]="textField"
332
- [valueField]="valueField"
333
- [template]="{ templateRef: rowTemplate }"
334
- [groupTemplate]="groupTemplate"
335
- [fixedGroupTemplate]="fixedGroupTemplate"
336
- [height]="listHeight"
337
- [show]="isOpen"
338
- [virtual]="virtual"
339
- [listClass]="'k-reset k-grid-list'"
340
- (pageChange)="pageChange($event)"
341
- (listResize)="updateHeaderPadding(header)"
342
- >
343
- </kendo-list>
316
+ <ng-container *ngIf="!column.cellTemplate">
317
+ {{ textFrom(dataItem, column.field) }}
318
+ </ng-container>
319
+ <ng-template
320
+ *ngIf="column.cellTemplate"
321
+ [templateContext]="{
322
+ templateRef: column.cellTemplate?.templateRef,
323
+ $implicit: dataItem,
324
+ dataItem: dataItem,
325
+ column: column
326
+ }"
327
+ >
328
+ </ng-template>
329
+ </span>
330
+ </ng-container>
331
+ </ng-template>
344
332
 
345
- <!--no-data template-->
346
- <div
347
- class="k-nodata"
348
- *ngIf="data.length === 0"
349
- >
350
- <ng-template
351
- [ngIf]="noDataTemplate"
352
- [templateContext]="{
353
- templateRef: noDataTemplate?.templateRef
354
- }"
333
+ <!--list-->
334
+ <kendo-list
335
+ #optionsList
336
+ [id]="listBoxId"
337
+ [optionPrefix]="optionPrefix"
338
+ [data]="data"
339
+ [textField]="textField"
340
+ [valueField]="valueField"
341
+ [template]="{ templateRef: rowTemplate }"
342
+ [groupTemplate]="groupTemplate"
343
+ [fixedGroupTemplate]="fixedGroupTemplate"
344
+ [height]="listHeight"
345
+ [show]="isOpen"
346
+ [virtual]="virtual"
347
+ [type]="'dropdowngrid'"
348
+ (pageChange)="pageChange($event)"
349
+ (listResize)="updateHeaderPadding(header)"
355
350
  >
356
- </ng-template>
357
- <ng-template [ngIf]="!noDataTemplate">
358
- <div>{{ noDataText }}</div>
359
- </ng-template>
360
- </div>
351
+ </kendo-list>
361
352
 
362
- <!--user-defined footer template-->
363
- <ng-container *ngIf="footerTemplate">
364
- <div class="k-footer">
353
+ <!--no-data template-->
354
+ <div
355
+ class="k-no-data"
356
+ *ngIf="data.length === 0"
357
+ >
365
358
  <ng-template
359
+ [ngIf]="noDataTemplate"
366
360
  [templateContext]="{
367
- templateRef: footerTemplate.templateRef
361
+ templateRef: noDataTemplate?.templateRef
368
362
  }"
369
363
  >
370
364
  </ng-template>
365
+ <ng-template [ngIf]="!noDataTemplate">
366
+ <div>{{ noDataText }}</div>
367
+ </ng-template>
371
368
  </div>
372
- </ng-container>
369
+
370
+ <!--user-defined footer template-->
371
+ <ng-container *ngIf="footerTemplate">
372
+ <div class="k-table-footer">
373
+ <table class="k-table">
374
+ <tfoot class="k-table-tfoot">
375
+ <tr class="k-table-row">
376
+ <td class="k-table-td">
377
+ <ng-template
378
+ [templateContext]="{
379
+ templateRef: footerTemplate.templateRef
380
+ }"
381
+ >
382
+ </ng-template>
383
+ </td>
384
+ </tr>
385
+ </tfoot>
386
+ </table>
387
+ </div>
388
+ </ng-container>
389
+
390
+ </div>
391
+
373
392
  </ng-template>
374
393
 
375
394
  <kendo-resize-sensor
@@ -14,6 +14,9 @@ import { DataService } from './data.service';
14
14
  import { VirtualizationSettings } from './models/virtualization-settings';
15
15
  import { PageChangeEvent } from './models/page-change-event';
16
16
  import { MultiSelectCheckableSettings } from './models/checkboxes-settings';
17
+ import { DropDownSize } from './models/size';
18
+ import { DropDownRounded } from './models/rounded';
19
+ import { ListType } from './models/list-type';
17
20
  /**
18
21
  * @hidden
19
22
  */
@@ -38,9 +41,11 @@ export declare class ListComponent implements OnChanges, OnDestroy, AfterViewIni
38
41
  optionPrefix: string;
39
42
  multipleSelection: boolean;
40
43
  virtual: VirtualizationSettings;
41
- listClass: string;
44
+ type: ListType;
42
45
  checkboxes: MultiSelectCheckableSettings;
43
46
  data: any[];
47
+ size: DropDownSize;
48
+ rounded: DropDownRounded;
44
49
  onClick: EventEmitter<any>;
45
50
  pageChange: EventEmitter<PageChangeEvent>;
46
51
  listResize: EventEmitter<boolean>;
@@ -52,13 +57,26 @@ export declare class ListComponent implements OnChanges, OnDestroy, AfterViewIni
52
57
  startFrom: number;
53
58
  lastLoaded: number;
54
59
  lastScrollTop: number;
60
+ listContentClass: string;
61
+ listClass: string;
62
+ listItemClass: string;
63
+ listVirtualClass: string;
64
+ listGroupStickyHeaderClass: string;
65
+ listGroupStickyHeaderTextClass: string;
66
+ listGroupItemClass: string;
67
+ listGroupItemTextClass: string;
55
68
  private scrollToFocused;
56
69
  private _data;
57
70
  private scrollSubscription;
58
71
  private selectSubscription;
72
+ private _size;
59
73
  readonly pageSize: number;
60
74
  readonly scrollHeight: number;
61
75
  readonly overflowY: string;
76
+ /**
77
+ * @hidden
78
+ */
79
+ readonly checkboxClasses: any;
62
80
  constructor(dataService: DataService, wrapper: ElementRef<HTMLElement>, selectionService: SelectionService, disabledItemsService: DisabledItemsService, cdr: ChangeDetectorRef, zone: NgZone, renderer: Renderer2);
63
81
  ngOnChanges(changes: {
64
82
  [propertyName: string]: SimpleChange;
@@ -67,6 +85,7 @@ export declare class ListComponent implements OnChanges, OnDestroy, AfterViewIni
67
85
  ngAfterViewChecked(): void;
68
86
  ngOnDestroy(): void;
69
87
  onCheckedChange(e: Event, index: number): void;
88
+ prepareClasses(): void;
70
89
  isChecked(index: number): boolean;
71
90
  firstVisibleItem(): any;
72
91
  findCurrentGroup(): void;
@@ -76,6 +95,7 @@ export declare class ListComponent implements OnChanges, OnDestroy, AfterViewIni
76
95
  getText(dataItem: any): any;
77
96
  getValue(dataItem: any): any;
78
97
  isDisabled(index: number): boolean;
98
+ isAltRow(index: number): boolean;
79
99
  scrollToItem(index: number): void;
80
100
  scrollToIndex(index: number): void;
81
101
  scroll(item: ElementRef<HTMLElement>): void;
@@ -96,4 +116,5 @@ export declare class ListComponent implements OnChanges, OnDestroy, AfterViewIni
96
116
  * Indicates whether the first group header from the data set is in the targeted virtual page.
97
117
  */
98
118
  private firstGroupHeaderInTargetedPage;
119
+ private setComponentClasses;
99
120
  }