MCPcopy Create free account
hub / github.com/UI5/webcomponents / setSelected

Method setSelected

packages/main/src/TableSelectionMulti.ts:106–128  ·  view source on GitHub ↗
(row: TableRowBase, selected: boolean, fireEvent: boolean = false)

Source from the content-addressed store, hash-verified

104 }
105
106 setSelected(row: TableRowBase, selected: boolean, fireEvent: boolean = false) {
107 if (this._rangeSelection?.isMouse && this._rangeSelection.shiftPressed) {
108 return;
109 }
110
111 const tableRows = row.isHeaderRow() ? this._table!.rows : [row as TableRow];
112 const selectedSet = this.getSelectedAsSet();
113 const selectionChanged = tableRows.reduce((selectedSetChanged, tableRow) => {
114 const rowKey = this.getRowKey(tableRow);
115 if (!rowKey) {
116 return selectedSetChanged;
117 }
118
119 const setSize = selectedSet.size;
120 selectedSet[selected ? "add" : "delete"](rowKey);
121 return selectedSetChanged || setSize !== selectedSet.size;
122 }, false);
123
124 if (selectionChanged) {
125 this.setSelectedAsSet(selectedSet);
126 fireEvent && this.fireDecoratorEvent("change");
127 }
128 }
129
130 /**
131 * Returns an array of the selected rows.

Callers 1

Calls 4

getSelectedAsSetMethod · 0.95
setSelectedAsSetMethod · 0.95
isHeaderRowMethod · 0.80
getRowKeyMethod · 0.80

Tested by

no test coverage detected