static Map<JTable, VF1<JTable>> setTableModel_after = weakHashMap(); static Map<JTable, VF2<JTable, RowSorter>> setTableModel_fixSorter = weakHashMap(); static void setTableModel(final JTable table, final TableModel model) { swing { Map<S, Int> widths = tableColumnWidthsByName(table); int[] i = table.getSelectedRows(); TableRowSorter sorter = model.getColumnCount() == tableColumnCount(table) ? (TableRowSorter) table.getRowSorter() : null; L<? extends RowSorter.SortKey> sortKeys = sorter == null ? null : sorter.getSortKeys(); table.setModel(model); int n = model.getRowCount(); ListSelectionModel sel = table.getSelectionModel(); for (int j = 0; j < i.length; j++) if (i[j] < n) sel.addSelectionInterval(i[j], i[j]); tableSetColumnPreferredWidths(table, widths); if (sorter != null) { sorter.setModel(model); callF(setTableModel_fixSorter.get(table), table, sorter); //print("Keeping sorter: " + sorter + " Sort keys: " + sortKeys); if (sortKeys != null) sorter.setSortKeys(sortKeys); } table.setRowSorter(sorter); callF(setTableModel_after.get(table), table); } }
download show line numbers debug dex old transpilations
Travelled to 14 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, irmadwmeruwu, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1001537 |
| Snippet name: | setTableModel - tries to preserve selection & column widths |
| Eternal ID of this version: | #1001537/22 |
| Text MD5: | b95f2e417a7e7ab38e85985887446523 |
| Author: | stefan |
| Category: | |
| Type: | JavaX fragment (include) |
| Public (visible to everyone): | Yes |
| Archived (hidden from active list): | No |
| Created/modified: | 2018-11-07 01:29:38 |
| Source code size: | 1191 bytes / 26 lines |
| Pitched / IR pitched: | No / No |
| Views / Downloads: | 1069 / 1519 |
| Version history: | 21 change(s) |
| Referenced in: | [show references] |