truly-ui
Version:
Web Components for Desktop Applications.
66 lines (65 loc) • 2.32 kB
TypeScript
import { AfterContentInit, ChangeDetectorRef, ElementRef, Renderer2 } from '@angular/core';
import { TlDatatable } from '../../datatable';
import { TlDatatableDataSource } from '../../datatable-datasource.service';
export declare class TlDatatableScrollableMode implements AfterContentInit {
private datatable;
dataSourceService: TlDatatableDataSource;
private renderer;
private cd;
listComponent: ElementRef;
listBody: ElementRef;
private bodyHeight;
private quantityVisibleRows;
private quantityInVisibleRows;
private lastRowViewport;
private firstRowViewport;
private cursorViewPortPosition;
private scrollTop;
private lastScrollTop;
private scrollDirection;
private skip;
private scrollLockAt;
private lastRecordProcessed;
private mouseClicked;
private activeElement;
private elementTR;
private elementTD;
constructor(datatable: TlDatatable, dataSourceService: TlDatatableDataSource, renderer: Renderer2, cd: ChangeDetectorRef);
ngAfterContentInit(): void;
onMouseDown(): void;
onMouseUp(): void;
onClick(event: any): void;
onKeydown($event: any): void;
private setProprertiesFromTable();
private addListenerToDataSource();
private addListenerToScroll();
private firstRender();
private handleKeyPageUp();
private handleKeyPageDown();
private handleKeyEnd(event);
private handleKeyHome(event);
private handleScrollDown();
private handleScrollUp();
private handleScrollFast();
private renderPageData(skip, take);
private renderList(lastRow, dataSource);
private createElementTR(row, lastRow);
private createElementsTD(row, dataSource);
private removeChilds();
private setlastRowViewport();
private setScrollTop();
private setLastScrollTop();
private setScrollDirection();
private isScrollDown();
private addEventClickToListElement(row);
private handleClickItem(item, index);
private getCursorViewPortPosition();
private handleKeyArrowDown();
private handleKeyArrowUp();
private setFocusInPreviousElement();
private setFocusInNextElement();
private setActiveElement();
private setFocusWhenChangeData();
private getFocusElementOnChangeData();
private setFocus(htmlElement);
}