From fa2a6a291506e0f040fbfacc42e5c03d3639970c Mon Sep 17 00:00:00 2001 From: pk Date: Wed, 30 Jul 2025 16:14:24 +0200 Subject: [PATCH] Add methods for managing selected items. --- package.json | 2 +- tp-table.js | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 2c07c8c..3975a23 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@tp/tp-table", - "version": "1.3.4", + "version": "1.4.0", "description": "", "main": "tp-table.js", "scripts": { diff --git a/tp-table.js b/tp-table.js index e684429..c904855 100644 --- a/tp-table.js +++ b/tp-table.js @@ -327,6 +327,22 @@ export class TpTable extends DomQuery(LitElement) { } } + get scrollLeft() { + return this.$.virtualList.scrollLeft; + } + + set scrollLeft(val) { + this.$.virtualList.scrollLeft = val; + } + + get scrollTop() { + return this.$.virtualList.scrollTop; + } + + set scrollTop(val) { + this.$.virtualList.scrollTop = val; + } + _onScroll(e) { this.$.tableHeader.style.paddingRight = (this.$.virtualList.offsetWidth - this.$.virtualList.clientWidth) + 'px'; this.$.tableHeader.scrollLeft = this.$.virtualList.scrollLeft; @@ -506,6 +522,14 @@ export class TpTable extends DomQuery(LitElement) { this._selectionChanged(); } + selectAll() { + this._selectAll(); + } + + clearSelection() { + this._selectNone(); + } + _selectAll() { this._selItems = new Map(); this.items.forEach(item => {