@dp_unity/dpu-gis-viewer
Version:
DPU GIS Viewer version Beta
90 lines (89 loc) • 2.83 kB
TypeScript
import { DialogGeneral } from "../utils/Dialog/dialog";
import "../styles/treeTileModel.css";
import { TileModel } from "src/class/tileModel";
import { SceneManager } from "./sceneManager";
export declare class TreeTileModel {
viewer: any;
containerId: string;
IdGenneral: string;
modal: any;
treeViews: TileModel[];
_childrenTreeMap: Map<string, TileModel[]>;
_itemTreeMap: Map<string, TileModel>;
private _sceneManager;
dialog: DialogGeneral | undefined;
callBackSaveHiddenTreeViews?: (data: any) => void | undefined;
private onClosedCallback;
constructor(containerId: string, viewer: any, treeViews: TileModel[], _sceneManager: SceneManager);
setClosedCallback(callback: (status: boolean) => void): void;
notifyCallBack(status: boolean): void;
triggerChange: (data: any) => void;
/**
* Hàm khởi tạo popup modal
*/
createModalTreeFolder: () => void;
private _isCalFooter;
showHideModalTreeFolder: (show: boolean) => void;
private handleCloseModal;
private containerUl;
private _idTreeView;
renderTreeView: () => HTMLElement;
private containerFooter;
renderFooter: () => HTMLElement;
handleOpenFormMoveModel: () => void;
private clearContainer;
private selectedItems;
private lastSelectedItem;
private selectedRow?;
private createTreeItem;
/**
* Xử lý sự kiện chọn mục
*/
private handleItemSelection;
private _reverseTree;
handleItemDBSelection(event: MouseEvent, li: HTMLElement, currentItem: any): void;
/**
* Chọn hoặc bỏ chọn mục (Ctrl)
*/
private toggleSelectItem;
/**
* Chọn một dải mục (Shift)
*/
private selectRange;
/**
* Chọn một mục duy nhất
*/
private selectSingleItem;
private initKeyboardEvents;
/**
* Xử lý Ctrl+A để chọn tất cả
*/
private handleSelectAll;
/**
* Tạo span chứa caret và màu
*/
private createCaretSpan;
/**
* Tạo container cho mục con
*/
private createNestedContainer;
/**
* Tạo container cho các nút chức năng (ví dụ: tìm kiếm, xóa, chỉnh sửa)
*/
private createButtonContainer;
private _handleZoomTo;
private _handleToggleVisible;
private _updateChildButtons;
private _updateVisibilityFromParentID;
getItemsTreeByParentId: (data: any, parentId: string) => any[];
private _setParentShow;
private _reverseTreeShow;
private _filterHiddenExcludeFolderChildren;
private hasValidInputObjs;
private _syncInputObjsFromParent;
private _setDefaultModel;
private _updateLoadDefaultDot;
clearAllLoadDefaultDot(): void;
getTreeView: () => any;
private _showDialog;
}