@openui5/sap.ui.table 1.119.0 → 1.120.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/THIRDPARTY.txt +6 -6
  2. package/package.json +3 -3
  3. package/src/sap/ui/table/.library +1 -1
  4. package/src/sap/ui/table/AnalyticalColumn.js +26 -15
  5. package/src/sap/ui/table/AnalyticalColumnMenu.js +6 -5
  6. package/src/sap/ui/table/AnalyticalTable.js +25 -38
  7. package/src/sap/ui/table/Column.js +135 -95
  8. package/src/sap/ui/table/ColumnMenu.js +1 -1
  9. package/src/sap/ui/table/CreationRow.js +1 -1
  10. package/src/sap/ui/table/Row.js +1 -1
  11. package/src/sap/ui/table/RowAction.js +1 -1
  12. package/src/sap/ui/table/RowActionItem.js +1 -1
  13. package/src/sap/ui/table/RowSettings.js +1 -1
  14. package/src/sap/ui/table/Table.js +200 -185
  15. package/src/sap/ui/table/TablePersoController.js +1 -1
  16. package/src/sap/ui/table/TableRenderer.js +35 -11
  17. package/src/sap/ui/table/TreeTable.js +1 -1
  18. package/src/sap/ui/table/designtime/Table.designtime.js +21 -2
  19. package/src/sap/ui/table/extensions/Accessibility.js +18 -8
  20. package/src/sap/ui/table/extensions/AccessibilityRender.js +1 -1
  21. package/src/sap/ui/table/extensions/DragAndDrop.js +1 -1
  22. package/src/sap/ui/table/extensions/ExtensionBase.js +1 -1
  23. package/src/sap/ui/table/extensions/Keyboard.js +1 -1
  24. package/src/sap/ui/table/extensions/KeyboardDelegate.js +24 -10
  25. package/src/sap/ui/table/extensions/Pointer.js +1 -1
  26. package/src/sap/ui/table/extensions/Scrolling.js +1 -1
  27. package/src/sap/ui/table/extensions/ScrollingIOS.js +1 -1
  28. package/src/sap/ui/table/extensions/Synchronization.js +1 -1
  29. package/src/sap/ui/table/library.js +25 -16
  30. package/src/sap/ui/table/menus/ColumnHeaderMenuAdapter.js +1 -1
  31. package/src/sap/ui/table/menus/MobileColumnHeaderMenuAdapter.js +23 -13
  32. package/src/sap/ui/table/messagebundle_mk.properties +126 -0
  33. package/src/sap/ui/table/messagebundle_sh.properties +16 -16
  34. package/src/sap/ui/table/plugins/BindingSelection.js +10 -5
  35. package/src/sap/ui/table/plugins/MultiSelectionPlugin.js +9 -3
  36. package/src/sap/ui/table/plugins/ODataV4Selection.js +9 -4
  37. package/src/sap/ui/table/plugins/PluginBase.js +1 -1
  38. package/src/sap/ui/table/plugins/SelectionModelSelection.js +10 -5
  39. package/src/sap/ui/table/plugins/SelectionPlugin.js +17 -3
  40. package/src/sap/ui/table/plugins/V4Aggregation.js +1 -1
  41. package/src/sap/ui/table/rowmodes/Auto.js +5 -5
  42. package/src/sap/ui/table/rowmodes/Fixed.js +5 -5
  43. package/src/sap/ui/table/rowmodes/Interactive.js +1 -1
  44. package/src/sap/ui/table/rowmodes/RowMode.js +11 -1
  45. package/src/sap/ui/table/rowmodes/Variable.js +1 -1
  46. package/src/sap/ui/table/rules/Plugins.support.js +23 -21
  47. package/src/sap/ui/table/rules/Rows.support.js +24 -5
  48. package/src/sap/ui/table/themes/base/Cell.less +1 -1
  49. package/src/sap/ui/table/themes/base/Grouping.less +1 -1
  50. package/src/sap/ui/table/themes/base/Table.less +1 -1
  51. package/src/sap/ui/table/themes/base/library.source.less +0 -3
  52. package/src/sap/ui/table/themes/sap_hcb/library.source.less +0 -3
  53. package/src/sap/ui/table/utils/TableUtils.js +10 -12
  54. package/src/sap/ui/table/utils/_BindingUtils.js +1 -1
  55. package/src/sap/ui/table/utils/_ColumnUtils.js +1 -1
  56. package/src/sap/ui/table/utils/_GroupingUtils.js +1 -1
  57. package/src/sap/ui/table/utils/_HookUtils.js +34 -3
  58. package/src/sap/ui/table/utils/_MenuUtils.js +1 -1
@@ -0,0 +1,126 @@
1
+
2
+ TBL_FILTER=\u0424\u0438\u043B\u0442\u0440\u0438\u0440\u0430\u0458
3
+ TBL_FILTER_ITEM=\u0424\u0438\u043B\u0442\u0440\u0438\u0440\u0430\u0458...
4
+ TBL_SORT_ASC=\u041F\u043E\u0434\u0440\u0435\u0434\u0438 \u043F\u043E \u0440\u0430\u0441\u0442\u0435\u0447\u043A\u0438 \u0440\u0435\u0434\u043E\u0441\u043B\u0435\u0434
5
+ TBL_SORT_DESC=\u041F\u043E\u0434\u0440\u0435\u0434\u0438 \u043F\u043E \u043E\u043F\u0430\u0453\u0430\u0447\u043A\u0438 \u0440\u0435\u0434\u043E\u0441\u043B\u0435\u0434
6
+ TBL_GROUP=\u0413\u0440\u0443\u043F\u0438\u0440\u0430\u0458
7
+ TBL_UNGROUP=\u041F\u043E\u043D\u0438\u0448\u0442\u0438 \u0433\u043E \u0433\u0440\u0443\u043F\u0438\u0440\u0430\u045A\u0435\u0442\u043E
8
+ TBL_UNGROUP_ALL=\u041F\u043E\u043D\u0438\u0448\u0442\u0438 \u0433\u043E \u0433\u0440\u0443\u043F\u0438\u0440\u0430\u045A\u0435\u0442\u043E \u0437\u0430 \u0441\u0438\u0442\u0435
9
+ TBL_COLUMNS=\u041A\u043E\u043B\u043E\u043D\u0438
10
+ TBL_FREEZE=\u0417\u0430\u043C\u0440\u0437\u043D\u0438
11
+ TBL_UNFREEZE=\u041E\u0434\u043C\u0440\u0437\u043D\u0438
12
+ TBL_MOVE_UP=\u041F\u0440\u0435\u043C\u0435\u0441\u0442\u0438 \u043D\u0430\u0433\u043E\u0440\u0435
13
+ TBL_MOVE_DOWN=\u041F\u0440\u0435\u043C\u0435\u0441\u0442\u0438 \u043D\u0430\u0434\u043E\u043B\u0443
14
+ TBL_EXPAND_LEVEL=\u041F\u0440\u043E\u0448\u0438\u0440\u0438 \u0433\u043E \u043D\u0438\u0432\u043E\u0442\u043E
15
+ TBL_COLLAPSE_LEVEL=\u0421\u043E\u0431\u0435\u0440\u0438 \u0433\u043E \u043D\u0438\u0432\u043E\u0442\u043E
16
+ TBL_EXPAND_ALL=\u041F\u0440\u043E\u0448\u0438\u0440\u0438 \u0441\u0450
17
+ TBL_COLLAPSE_ALL=\u0421\u043A\u0440\u0438\u0458 \u0441\u0450
18
+ TBL_SHOW_COLUMN=\u041F\u0440\u0438\u043A\u0430\u0436\u0438
19
+ TBL_HIDE_COLUMN=\u0421\u043A\u0440\u0438\u0458
20
+ TBL_COL_VISBILITY_MENUITEM_SHOW=\u041F\u0440\u0438\u043A\u0430\u0436\u0438 \u0458\u0430 \u043A\u043E\u043B\u043E\u043D\u0430\u0442\u0430
21
+ TBL_COL_VISBILITY_MENUITEM_HIDE=\u0421\u043A\u0440\u0438\u0458 \u0458\u0430 \u043A\u043E\u043B\u043E\u043D\u0430\u0442\u0430
22
+
23
+ TBL_ROW_SELECT=\u041A\u043B\u0438\u043A\u043D\u0435\u0442\u0435 \u0437\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u0442\u0435
24
+ TBL_ROW_DESELECT=\u041A\u043B\u0438\u043A\u043D\u0435\u0442\u0435 \u0437\u0430 \u0434\u0430 \u0433\u043E \u043F\u043E\u043D\u0438\u0448\u0442\u0438\u0442\u0435 \u0438\u0437\u0431\u043E\u0440\u043E\u0442
25
+ TBL_ROW_SELECT_MULTI_TOGGLE=\u041A\u043B\u0438\u043A\u043D\u0435\u0442\u0435 \u0437\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0438\u043B\u0438 \u043F\u0440\u0438\u0442\u0438\u0441\u043D\u0435\u0442\u0435 SHIFT \u0438 \u043A\u043B\u0438\u043A\u043D\u0435\u0442\u0435 \u0437\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u043E\u043F\u0441\u0435\u0433
26
+
27
+ TBL_TABLE_SELECTION_MULTI=\u0422\u0430\u0431\u0435\u043B\u0430 \u0441\u043E \u043F\u043E\u0432\u0435\u045C\u0435 \u0438\u0437\u0431\u043E\u0440\u0438
28
+ TBL_TABLE_SELECTION_SINGLE=\u0422\u0430\u0431\u0435\u043B\u0430 \u0441\u043E \u0435\u0434\u0435\u043D \u0438\u0437\u0431\u043E\u0440
29
+
30
+ TBL_TABLE_INVALID=\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u0442\u0430\u0431\u0435\u043B\u0430
31
+
32
+ TBL_DATA_ROWS_COLS=\u0422\u0430\u0431\u0435\u043B\u0430\u0442\u0430 \u0441\u043E\u0434\u0440\u0436\u0438 {0} \u0440\u0435\u0434\u0430 \u0438 {1} \u043A\u043E\u043B\u043E\u043D\u0438
33
+
34
+ TBL_ROW_SELECT_KEY=\ \u0417\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0440\u0435\u0434, \u043F\u0440\u0438\u0442\u0438\u0441\u043D\u0435\u0442\u0435 SPACEBAR
35
+ TBL_ROW_DESELECT_KEY=\ \u0417\u0430 \u0434\u0430 \u0433\u043E \u043F\u043E\u043D\u0438\u0448\u0442\u0438\u0442\u0435 \u0438\u0437\u0431\u043E\u0440\u043E\u0442 \u043D\u0430 \u0440\u0435\u0434, \u043F\u0440\u0438\u0442\u0438\u0441\u043D\u0435\u0442\u0435 SPACEBAR
36
+
37
+ TBL_ANALYTICAL_TABLE_ROLE_DESCRIPTION=\u0410\u043D\u0430\u043B\u0438\u0442\u0438\u0447\u043A\u0430 \u0442\u0430\u0431\u0435\u043B\u0430
38
+
39
+ TBL_NO_COLUMNS=\u041D\u0435\u043C\u0430 \u0432\u0438\u0434\u043B\u0438\u0432\u0438 \u043A\u043E\u043B\u043E\u043D\u0438 \u0432\u043E \u0442\u0430\u0431\u0435\u043B\u0430\u0442\u0430 \u0432\u043E \u043C\u043E\u043C\u0435\u043D\u0442\u043E\u0432. \u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0433\u0438 \u043F\u043E\u0442\u0440\u0435\u0431\u043D\u0438\u0442\u0435 \u043A\u043E\u043B\u043E\u043D\u0438 \u0432\u043E \u043F\u043E\u0441\u0442\u0430\u0432\u043A\u0438\u0442\u0435 \u0437\u0430 \u0442\u0430\u0431\u0435\u043B\u0430\u0442\u0430.
40
+
41
+ TBL_NO_DATA=\u041D\u0435\u043C\u0430 \u043F\u043E\u0434\u0430\u0442\u043E\u0446\u0438
42
+
43
+ TBL_SELECT_ALL=\u0418\u0437\u0431\u0435\u0440\u0438 \u0433\u0438 \u0441\u0438\u0442\u0435
44
+ TBL_DESELECT_ALL=\u041F\u043E\u043D\u0438\u0448\u0442\u0438 \u0433\u043E \u0438\u0437\u0431\u043E\u0440\u043E\u0442 \u043D\u0430 \u0441\u0438\u0442\u0435
45
+
46
+ TBL_TOGGLE_EDIT_KEY=\u041F\u0440\u0438\u0442\u0438\u0441\u043D\u0435\u0442\u0435 F2 \u0437\u0430 \u0434\u0430 \u0432\u043D\u0435\u0441\u0435\u0442\u0435 \u045C\u0435\u043B\u0438\u0458\u0430 \u0432\u043E \u0442\u0430\u0431\u0435\u043B\u0430\u0442\u0430
47
+
48
+ TBL_COLLAPSE_EXPAND=\u041F\u0440\u043E\u0448\u0438\u0440\u0438/\u0441\u043E\u0431\u0435\u0440\u0438 \u0433\u043E \u0458\u0430\u0437\u043E\u043B\u043E\u0442
49
+
50
+ TBL_LEAF=\u0408\u0430\u0437\u043E\u043B
51
+
52
+ TBL_TOTAL=\u0412\u043A\u0443\u043F\u043D\u043E
53
+
54
+ TBL_GRAND_TOTAL_ROW=\u0412\u043A\u0443\u043F\u043D\u043E \u0440\u0435\u0437\u0438\u043C\u0435
55
+
56
+ TBL_GROUP_TOTAL_ROW=\u0420\u0435\u0437\u0438\u043C\u0435 \u043D\u0430 \u0433\u0440\u0443\u043F\u0430\u0442\u0430
57
+
58
+ TBL_FIXED_COLUMN=\u0424\u0438\u043A\u0441\u043D\u0430 \u043A\u043E\u043B\u043E\u043D\u0430
59
+
60
+ TBL_ROW_ROWCOUNT=\u0420\u0435\u0434 {0} \u043E\u0434 {1}
61
+
62
+ TBL_COL_COLCOUNT=\u041A\u043E\u043B\u043E\u043D\u0430 {0} \u043E\u0434 {1}
63
+
64
+ TBL_ROW_GROUP_LABEL=\u0420\u0435\u0434 \u0432\u043E \u0433\u0440\u0443\u043F\u0430\u0442\u0430
65
+
66
+ TBL_ROW_GROUP_TITLE={0}\: {1}
67
+
68
+ TBL_ROW_GROUP_TITLE_FULL={0}\: {1} - {2}
69
+
70
+ TBL_COL_DESC_MENU=\u0414\u043E\u0441\u0442\u0430\u043F\u043D\u043E \u043C\u0435\u043D\u0438
71
+
72
+ TBL_COL_DESC_FILTERED=\u0424\u0438\u043B\u0442\u0440\u0438\u0440\u0430\u043D\u043E
73
+
74
+ TBL_COL_DESC_SORTED_ASC=\u041F\u043E\u0434\u0440\u0435\u0434\u0435\u043D\u0438 \u043F\u043E \u0440\u0430\u0441\u0442\u0435\u0447\u043A\u0438 \u0440\u0435\u0434\u043E\u0441\u043B\u0435\u0434
75
+
76
+ TBL_COL_DESC_SORTED_DES=\u041F\u043E\u0434\u0440\u0435\u0434\u0435\u043D\u0438 \u043F\u043E \u043E\u043F\u0430\u0453\u0430\u0447\u043A\u0438 \u0440\u0435\u0434\u043E\u0441\u043B\u0435\u0434
77
+
78
+ TBL_COL_DESC_SPAN=\u0421\u0435 \u043F\u0440\u043E\u0442\u0435\u0433\u0430 \u043D\u0438\u0437 {0} \u043A\u043E\u043B\u043E\u043D\u0438
79
+
80
+ TBL_COL_REQUIRED=\u0408\u0430 \u0441\u043E\u0434\u0440\u0436\u0438 \u043F\u043E\u0442\u0440\u0435\u0431\u043D\u0430\u0442\u0430 \u0441\u043E\u0434\u0440\u0436\u0438\u043D\u0430
81
+
82
+ TBL_CTRL_STATE_DISABLED=\u041E\u043D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u0435\u043D\u043E
83
+
84
+ TBL_CTRL_STATE_READONLY=\u0421\u0430\u043C\u043E \u0437\u0430 \u0447\u0438\u0442\u0430\u045A\u0435
85
+
86
+ TBL_CTRL_STATE_EMPTY=\u041F\u0440\u0430\u0437\u043D\u043E
87
+
88
+ TBL_CTRL_STATE_REQUIRED=\u0417\u0430\u0434\u043E\u043B\u0436\u0438\u0442\u0435\u043B\u043D\u043E
89
+
90
+ TBL_ROW_SELECTION_COLUMN_LABEL=\u0417\u0430\u0433\u043B\u0430\u0432\u0438\u0435 \u043D\u0430 \u0440\u0435\u0434\u043E\u0442
91
+
92
+ TBL_ROW_ACTION_COLUMN_LABEL=\u0414\u0435\u0458\u0441\u0442\u0432\u0430 \u0437\u0430 \u0440\u0435\u0434\u043E\u0442
93
+
94
+ TBL_ROW_ACTION_NO_ACTION=\u041D\u0435\u043C\u0430 \u0434\u043E\u0441\u0442\u0430\u043F\u043D\u0438 \u0434\u0435\u0458\u0441\u0442\u0432\u0430
95
+
96
+ TBL_ROW_ACTION_SINGLE_ACTION=\u0414\u043E\u0441\u0442\u0430\u043F\u043D\u043E \u0435 1 \u0434\u0435\u0458\u0441\u0442\u0432\u043E
97
+
98
+ TBL_ROW_ACTION_MULTIPLE_ACTION=\u0414\u043E\u0441\u0442\u0430\u043F\u043D\u0438 \u0441\u0435 {0} \u0434\u0435\u0458\u0441\u0442\u0432\u0430
99
+
100
+ TBL_ROW_ACTION_NAVIGATE=\u0414\u0435\u0442\u0430\u043B\u0438
101
+
102
+ TBL_ROW_ACTION_DELETE=\u0418\u0437\u0431\u0440\u0438\u0448\u0438
103
+
104
+ TBL_ROW_ACTION_MORE=\u041F\u043E\u0432\u0435\u045C\u0435
105
+
106
+ TBL_ROW_STATE_INFORMATION=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u0438
107
+
108
+ TBL_ROW_STATE_ERROR=\u0413\u0440\u0435\u0448\u043A\u0430
109
+
110
+ TBL_ROW_STATE_WARNING=\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0434\u0443\u0432\u0430\u045A\u0435
111
+
112
+ TBL_ROW_STATE_SUCCESS=\u0423\u0441\u043F\u0435\u0448\u043D\u043E
113
+
114
+ TBL_ROW_STATE_NAVIGATED=\u041D\u0430\u0432\u0438\u0433\u0438\u0440\u0430\u043D\u043E
115
+
116
+ TBL_ROW_EXPAND_KEY=\u0417\u0430 \u0434\u0430 \u043F\u0440\u043E\u0448\u0438\u0440\u0438\u0442\u0435 \u0440\u0435\u0434, \u043F\u0440\u0438\u0442\u0438\u0441\u043D\u0435\u0442\u0435 \u043D\u0430 spacebar
117
+
118
+ TBL_ROW_COLLAPSE_KEY=\u0417\u0430 \u0434\u0430 \u0441\u043E\u0431\u0435\u0440\u0435\u0442\u0435 \u0440\u0435\u0434, \u043F\u0440\u0438\u0442\u0438\u0441\u043D\u0435\u0442\u0435 \u043D\u0430 spacebar
119
+
120
+ TBL_CREATIONROW_APPLY=\u0414\u043E\u0434\u0430\u0458 \u0440\u0435\u0434
121
+
122
+ TBL_CREATEROW_LABEL=\u0421\u043E\u0437\u0434\u0430\u0458 \u043D\u043E\u0432 \u0432\u043D\u0435\u0441 \u0432\u043E \u0442\u0430\u0431\u0435\u043B\u0430\u0442\u0430
123
+
124
+ TBL_SELECT_LIMIT_TITLE=\u0413\u0440\u0430\u043D\u0438\u0446\u0430 \u043D\u0430 \u0438\u0437\u0431\u0438\u0440\u0430\u045A\u0435
125
+
126
+ TBL_SELECT_LIMIT=\u041D\u0435 \u043C\u043E\u0436\u0435\u0442\u0435 \u0434\u0430 \u0434\u043E\u0434\u0430\u0434\u0435\u0442\u0435 \u043F\u043E\u0432\u0435\u045C\u0435 \u043E\u0434 {0} \u0441\u0442\u0430\u0432\u043A\u0438 \u0432\u043E \u0438\u0437\u0431\u043E\u0440\u043E\u0442 \u043E\u0434\u0435\u0434\u043D\u0430\u0448 \u0432\u043E \u0442\u0430\u0431\u0435\u043B\u0430\u0442\u0430.\n\n\u041C\u043E\u0436\u0435\u0442\u0435 \u0434\u0430 \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u0435 \u0434\u0430 \u0434\u043E\u0434\u0430\u0432\u0430\u0442\u0435 \u0432\u043E \u0438\u0437\u0431\u043E\u0440\u043E\u0442 \u043A\u043E\u043B\u043A\u0443 \u043F\u0430\u0442\u0438 \u0448\u0442\u043E \u0441\u0430\u043A\u0430\u0442\u0435, \u043D\u043E \u043C\u043E\u0436\u0435\u0442\u0435 \u0434\u0430 \u0438\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0441\u0430\u043C\u043E {0} \u0441\u0442\u0430\u0432\u043A\u0438 \u043E\u0434\u0435\u0434\u043D\u0430\u0448.
@@ -1,16 +1,16 @@
1
1
 
2
2
  TBL_FILTER=Filter
3
- TBL_FILTER_ITEM=Filtriraj...
3
+ TBL_FILTER_ITEM=Filtriranje...
4
4
  TBL_SORT_ASC=Pore\u0111aj po rastu\u0107em redosledu
5
5
  TBL_SORT_DESC=Pore\u0111aj po opadaju\u0107em redosledu
6
6
  TBL_GROUP=Grupi\u0161i
7
- TBL_UNGROUP=Razgrupi\u0161i
8
- TBL_UNGROUP_ALL=Razgrupi\u0161i sve
7
+ TBL_UNGROUP=Poni\u0161ti grupisanje
8
+ TBL_UNGROUP_ALL=Poni\u0161ti grupisanje svega
9
9
  TBL_COLUMNS=Kolone
10
10
  TBL_FREEZE=Zamrzni
11
11
  TBL_UNFREEZE=Odmrzni
12
- TBL_MOVE_UP=Pomeri gore
13
- TBL_MOVE_DOWN=Pomeri dole
12
+ TBL_MOVE_UP=Pomeri nagore
13
+ TBL_MOVE_DOWN=Pomeri nadole
14
14
  TBL_EXPAND_LEVEL=Pro\u0161iri nivo
15
15
  TBL_COLLAPSE_LEVEL=Sa\u017Emi nivo
16
16
  TBL_EXPAND_ALL=Pro\u0161iri sve
@@ -20,19 +20,19 @@ TBL_HIDE_COLUMN=Sakrij
20
20
  TBL_COL_VISBILITY_MENUITEM_SHOW=Prika\u017Ei kolonu
21
21
  TBL_COL_VISBILITY_MENUITEM_HIDE=Sakrij kolonu
22
22
 
23
- TBL_ROW_SELECT=Kliknite da odaberete
23
+ TBL_ROW_SELECT=Kliknite odaberete
24
24
  TBL_ROW_DESELECT=Kliknite da poni\u0161tite odabir
25
- TBL_ROW_SELECT_MULTI_TOGGLE=Kliknite za odabir ili pritisnite SHIFT i kliknite za odabir raspona
25
+ TBL_ROW_SELECT_MULTI_TOGGLE=Kliknite da odaberete ili pritisnite SHIFT i kliknite da odaberete raspon
26
26
 
27
- TBL_TABLE_SELECTION_MULTI=Tabela sa aktiviranim vi\u0161estrukim odabirom
28
- TBL_TABLE_SELECTION_SINGLE=Tabela sa aktiviranim pojedina\u010Dnim odabirom
27
+ TBL_TABLE_SELECTION_MULTI=Tabela s vi\u0161estrukim odabirom
28
+ TBL_TABLE_SELECTION_SINGLE=Tabela s pojedina\u010Dnim odabirom
29
29
 
30
30
  TBL_TABLE_INVALID=Neva\u017Ee\u0107a tabela
31
31
 
32
32
  TBL_DATA_ROWS_COLS=Tabela sadr\u017Ei {0} redova i {1} kolona
33
33
 
34
- TBL_ROW_SELECT_KEY=Za odabir reda pritisnite RAZMAK
35
- TBL_ROW_DESELECT_KEY=Za poni\u0161tenje odabira reda pritisnite RAZMAK
34
+ TBL_ROW_SELECT_KEY=Da biste odabrali red, pritisnite razmak
35
+ TBL_ROW_DESELECT_KEY=Da biste poni\u0161tili odabir reda, pritisnite razmak
36
36
 
37
37
  TBL_ANALYTICAL_TABLE_ROLE_DESCRIPTION=Analiti\u010Dka tabela
38
38
 
@@ -43,7 +43,7 @@ TBL_NO_DATA=Nema podataka
43
43
  TBL_SELECT_ALL=Odaberi sve
44
44
  TBL_DESELECT_ALL=Poni\u0161ti sve odabire
45
45
 
46
- TBL_TOGGLE_EDIT_KEY=Za unos \u0107elije tabele pritisnite F2
46
+ TBL_TOGGLE_EDIT_KEY=Da biste pre\u0161li na \u0107eliju tabele, pritisnite F2
47
47
 
48
48
  TBL_COLLAPSE_EXPAND=Pro\u0161iri/sa\u017Emi \u010Dvor
49
49
 
@@ -113,14 +113,14 @@ TBL_ROW_STATE_SUCCESS=Uspeh
113
113
 
114
114
  TBL_ROW_STATE_NAVIGATED=Usmereno
115
115
 
116
- TBL_ROW_EXPAND_KEY=Za pro\u0161irenje reda pritisnite razmak
116
+ TBL_ROW_EXPAND_KEY=Da biste pro\u0161irili red, pritisnite razmak
117
117
 
118
- TBL_ROW_COLLAPSE_KEY=Za sa\u017Eimanje reda pritisnite razmak
118
+ TBL_ROW_COLLAPSE_KEY=Da biste sa\u017Eeli red, pritisnite razmak
119
119
 
120
120
  TBL_CREATIONROW_APPLY=Dodaj red
121
121
 
122
122
  TBL_CREATEROW_LABEL=Kreiraj novi unos u tabelu
123
123
 
124
- TBL_SELECT_LIMIT_TITLE=Ograni\u0107enje odabira
124
+ TBL_SELECT_LIMIT_TITLE=Ograni\u010Denje odabira
125
125
 
126
- TBL_SELECT_LIMIT=U ovoj tabeli ne mo\u017Eete dodavati vi\u0161e od {0} stavki istovremenu u odabir.\n\nMo\u017Eete da nastavite da dodajete u odabir koliko \u017Eelite, ali samo {0} stavki mo\u017Ee biti odabrano istovremeno.
126
+ TBL_SELECT_LIMIT=U ovoj tabeli ne mo\u017Eete dodavati vi\u0161e od {0} stavki istovremeno u odabir.\n\nMo\u017Eete nastaviti da dodajete u odabir koliko god \u010Desto \u017Eelite, ali istovremeno mo\u017Ee biti odabrano samo {0} stavki.
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  *
22
22
  * @class Implements the selection methods for TreeTable and AnalyticalTable
23
23
  * @extends sap.ui.table.plugins.SelectionPlugin
24
- * @version 1.119.0
24
+ * @version 1.120.0
25
25
  * @constructor
26
26
  * @private
27
27
  * @alias sap.ui.table.plugins.BindingSelection
@@ -97,19 +97,22 @@ sap.ui.define([
97
97
  };
98
98
 
99
99
  function toggleSelectAll(oPlugin) {
100
- var oTable = oPlugin.getTable();
100
+ var oTable = oPlugin.getTable(), bSelectAll;
101
101
 
102
102
  // in order to fire the rowSelectionChanged event, the SourceRowIndex mus be set to -1
103
103
  // to indicate that the selection was changed by user interaction
104
104
  if (oPlugin.getSelectableCount() > oPlugin.getSelectedCount()) {
105
105
  oTable._iSourceRowIndex = 0;
106
106
  oPlugin.selectAll();
107
+ bSelectAll = true;
107
108
  } else {
108
109
  oTable._iSourceRowIndex = -1;
109
110
  oPlugin.clearSelection();
111
+ bSelectAll = false;
110
112
  }
111
113
 
112
114
  oTable._iSourceRowIndex = undefined;
115
+ return bSelectAll;
113
116
  }
114
117
 
115
118
  /**
@@ -127,13 +130,15 @@ sap.ui.define([
127
130
  * This hook is called by the table when the "select all" keyboard shortcut is pressed.
128
131
  *
129
132
  * @param {string} sType Type of the keyboard shortcut.
133
+ * @param {sap.ui.base.Event} oEvent The emitted event.
130
134
  * @private
131
135
  */
132
- BindingSelection.prototype.onKeyboardShortcut = function(sType) {
133
- if (sType === "toggle") {
134
- toggleSelectAll(this);
136
+ BindingSelection.prototype.onKeyboardShortcut = function(sType, oEvent) {
137
+ if (sType === "toggle" && toggleSelectAll(this) === false) {
138
+ oEvent?.setMarked("sapUiTableClearAll");
135
139
  } else if (sType === "clear") {
136
140
  this.clearSelection();
141
+ oEvent?.setMarked("sapUiTableClearAll");
137
142
  }
138
143
  };
139
144
 
@@ -122,6 +122,8 @@ sap.ui.define([
122
122
  };
123
123
 
124
124
  MultiSelectionPlugin.prototype.exit = function() {
125
+ SelectionPlugin.prototype.exit.apply(this, arguments);
126
+
125
127
  if (this.oDeselectAllIcon) {
126
128
  this.oDeselectAllIcon.destroy();
127
129
  this.oDeselectAllIcon = null;
@@ -204,13 +206,14 @@ sap.ui.define([
204
206
  }
205
207
  };
206
208
 
207
- MultiSelectionPlugin.prototype.onKeyboardShortcut = function(sType) {
209
+ MultiSelectionPlugin.prototype.onKeyboardShortcut = function(sType, oEvent) {
208
210
  if (sType === "toggle") {
209
- if (this._bLimitDisabled) {
210
- toggleSelection(this);
211
+ if (this._bLimitDisabled && toggleSelection(this) === false) {
212
+ oEvent?.setMarked("sapUiTableClearAll");
211
213
  }
212
214
  } else if (sType === "clear") {
213
215
  this.clearSelection();
216
+ oEvent?.setMarked("sapUiTableClearAll");
214
217
  }
215
218
  };
216
219
 
@@ -218,12 +221,15 @@ sap.ui.define([
218
221
  * If not all indices are selected, all indices are selected, otherwise the selection is removed.
219
222
  *
220
223
  * @param {sap.ui.table.plugins.MultiSelectionPlugin} oPlugin The plugin to toggle the selection on.
224
+ * @returns {boolean} The selection state. true - all selected, false - all cleared
221
225
  */
222
226
  function toggleSelection(oPlugin) {
223
227
  if (oPlugin.getSelectableCount() > oPlugin.getSelectedCount()) {
224
228
  oPlugin.selectAll();
229
+ return true;
225
230
  } else {
226
231
  oPlugin.clearSelection();
232
+ return false;
227
233
  }
228
234
  }
229
235
 
@@ -192,16 +192,20 @@ sap.ui.define([
192
192
  * Selects all rows if not all are already selected, otherwise the selection is cleared.
193
193
  *
194
194
  * @param {sap.ui.table.plugins.ODataV4Selection} oPlugin The selection plugin.
195
+ * @returns {boolean} The state of selection. true - all selected, false - all cleared, undefined - no action
195
196
  */
196
197
  function toggleSelectAll(oPlugin) {
197
198
  if (areAllRowsSelected(oPlugin)) {
198
199
  oPlugin.clearSelection();
200
+ return false;
199
201
  } else if (oPlugin._isLimitDisabled()) {
200
202
  var oBinding = oPlugin.getTableBinding();
201
203
  if (oBinding && oBinding.getLength()) {
202
204
  select(oPlugin, 0, oBinding.getLength() - 1);
205
+ return true;
203
206
  }
204
207
  }
208
+ return undefined;
205
209
  }
206
210
 
207
211
  /**
@@ -243,13 +247,14 @@ sap.ui.define([
243
247
  }
244
248
  };
245
249
 
246
- ODataV4Selection.prototype.onKeyboardShortcut = function(sType) {
250
+ ODataV4Selection.prototype.onKeyboardShortcut = function(sType, oEvent) {
247
251
  if (sType === "toggle") {
248
- if (this._isLimitDisabled()) {
249
- toggleSelectAll(this);
252
+ if (this._isLimitDisabled() && toggleSelectAll(this) === false) {
253
+ oEvent?.setMarked("sapUiTableClearAll");
250
254
  }
251
255
  } else if (sType === "clear") {
252
256
  this.clearSelection();
257
+ oEvent?.setMarked("sapUiTableClearAll");
253
258
  }
254
259
  };
255
260
 
@@ -355,7 +360,7 @@ sap.ui.define([
355
360
 
356
361
  function isContextSelectable(oContext) {
357
362
  var bIsTree = "hierarchyQualifier" in (oContext.getBinding().getAggregation() || {});
358
- return (bIsTree || oContext.getProperty("@$ui5.node.isExpanded") === undefined) && !oContext.getProperty("@$ui5.node.isTotal");
363
+ return bIsTree || (oContext.getProperty("@$ui5.node.isExpanded") === undefined && !oContext.getProperty("@$ui5.node.isTotal"));
359
364
  }
360
365
 
361
366
  ODataV4Selection.prototype.clearSelection = function() {
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.core.Element
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.119.0
31
+ * @version 1.120.0
32
32
  *
33
33
  * @private
34
34
  * @experimental Since 1.75
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  *
24
24
  * @class Implements the selection methods for a Table
25
25
  * @extends sap.ui.table.plugins.SelectionPlugin
26
- * @version 1.119.0
26
+ * @version 1.120.0
27
27
  * @constructor
28
28
  * @private
29
29
  * @alias sap.ui.table.plugins.SelectionModelSelection
@@ -132,19 +132,22 @@ sap.ui.define([
132
132
  };
133
133
 
134
134
  function toggleSelectAll(oPlugin) {
135
- var oTable = oPlugin.getTable();
135
+ var oTable = oPlugin.getTable(), bSelectAll;
136
136
 
137
137
  // in order to fire the rowSelectionChanged event, the SourceRowIndex mus be set to -1
138
138
  // to indicate that the selection was changed by user interaction
139
139
  if (oPlugin.getSelectableCount() > oPlugin.getSelectedCount()) {
140
140
  oTable._iSourceRowIndex = 0;
141
141
  oPlugin.selectAll();
142
+ bSelectAll = true;
142
143
  } else {
143
144
  oTable._iSourceRowIndex = -1;
144
145
  oPlugin.clearSelection();
146
+ bSelectAll = false;
145
147
  }
146
148
 
147
149
  oTable._iSourceRowIndex = undefined;
150
+ return bSelectAll;
148
151
  }
149
152
 
150
153
  /**
@@ -162,13 +165,15 @@ sap.ui.define([
162
165
  * This hook is called by the table when the "select all" keyboard shortcut is pressed.
163
166
  *
164
167
  * @param {string} sType Type of the keyboard shortcut.
168
+ * @param {sap.ui.base.Event} oEvent The emitted event.
165
169
  * @private
166
170
  */
167
- SelectionModelSelection.prototype.onKeyboardShortcut = function(sType) {
168
- if (sType === "toggle") {
169
- toggleSelectAll(this);
171
+ SelectionModelSelection.prototype.onKeyboardShortcut = function(sType, oEvent) {
172
+ if (sType === "toggle" && toggleSelectAll(this) === false) {
173
+ oEvent?.setMarked("sapUiTableClearAll");
170
174
  } else if (sType === "clear") {
171
175
  this.clearSelection();
176
+ oEvent?.setMarked("sapUiTableClearAll");
172
177
  }
173
178
  };
174
179
 
@@ -18,14 +18,15 @@ sap.ui.define([
18
18
  *
19
19
  * The following restrictions apply:
20
20
  * <ul>
21
- * <li>Do not create subclasses of the SelectionPlugin. The API is subject to change.</li>
21
+ * <li>Do not create subclasses of the <code>SelectionPlugin</code>. The API is subject to change.
22
+ * <b>Note:</b> Subclasses provided by the UI5 framework that are not explicitly marked as experimental or restricted in any other way can be used on a regular basis.</li>
22
23
  * </ul>
23
24
  *
24
25
  * @abstract
25
26
  * @class Implements the selection methods for a table.
26
27
  * @extends sap.ui.core.Element
27
28
  * @author SAP SE
28
- * @version 1.119.0
29
+ * @version 1.120.0
29
30
  * @public
30
31
  * @since 1.64
31
32
  * @experimental As of version 1.64
@@ -58,6 +59,18 @@ sap.ui.define([
58
59
  }
59
60
  }
60
61
 
62
+ SelectionPlugin.prototype.setParent = function(oParent) {
63
+ var oTable = this.getTable();
64
+
65
+ PluginBase.prototype.setParent.apply(this, arguments);
66
+ (oParent || oTable)._initSelectionPlugin();
67
+ };
68
+
69
+ SelectionPlugin.prototype.exit = function() {
70
+ PluginBase.prototype.exit.apply(this, arguments);
71
+ this.getTable()?._initSelectionPlugin();
72
+ };
73
+
61
74
  SelectionPlugin.prototype.setEnabled = function(bEnabled) {
62
75
  this.setProperty("enabled", bEnabled, true);
63
76
 
@@ -98,9 +111,10 @@ sap.ui.define([
98
111
  * TODO: Also provide the event object?
99
112
  *
100
113
  * @param {string} sType Type of the keyboard shortcut.
114
+ * @param {sap.ui.base.Event} oEvent The emitted event.
101
115
  * @private
102
116
  */
103
- SelectionPlugin.prototype.onKeyboardShortcut = function(sType) {};
117
+ SelectionPlugin.prototype.onKeyboardShortcut = function(sType, oEvent) {};
104
118
 
105
119
  /**
106
120
  * Changes the selection state of a row.
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @class TODO (don't forget to document fixed row count restrictions because fixed rows are set by this plugin)
33
33
  * @extends sap.ui.table.plugins.PluginBase
34
34
  * @author SAP SE
35
- * @version 1.119.0
35
+ * @version 1.120.0
36
36
  * @private
37
37
  * @since 1.76
38
38
  * @experimental
@@ -38,7 +38,7 @@ sap.ui.define([
38
38
  * @public
39
39
  *
40
40
  * @author SAP SE
41
- * @version 1.119.0
41
+ * @version 1.120.0
42
42
  */
43
43
  var AutoRowMode = RowMode.extend("sap.ui.table.rowmodes.Auto", /** @lends sap.ui.table.rowmodes.Auto.prototype */ {
44
44
  metadata: {
@@ -274,16 +274,16 @@ sap.ui.define([
274
274
  return iRequestLength;
275
275
  };
276
276
 
277
- AutoRowMode.prototype.updateTableRows = function() {
277
+ AutoRowMode.prototype.updateTable = function() {
278
278
  if (this.getHideEmptyRows() && this.getComputedRowCounts().count === 0) {
279
279
  var iConfiguredRowCount = this.getConfiguredRowCount();
280
280
 
281
281
  if (iConfiguredRowCount > 0) {
282
- return this.getRowContexts(iConfiguredRowCount).length > 0;
282
+ this.getRowContexts(iConfiguredRowCount);
283
283
  }
284
- } else {
285
- return RowMode.prototype.updateTableRows.call(this);
286
284
  }
285
+
286
+ return RowMode.prototype.updateTable.apply(this, arguments);
287
287
  };
288
288
 
289
289
  AutoRowMode.prototype.getComputedRowCounts = function() {
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @public
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.119.0
30
+ * @version 1.120.0
31
31
  */
32
32
  var FixedRowMode = RowMode.extend("sap.ui.table.rowmodes.Fixed", /** @lends sap.ui.table.rowmodes.Fixed.prototype */ {
33
33
  metadata: {
@@ -165,16 +165,16 @@ sap.ui.define([
165
165
  return Math.max(0, this.getRowCount());
166
166
  };
167
167
 
168
- FixedRowMode.prototype.updateTableRows = function() {
168
+ FixedRowMode.prototype.updateTable = function() {
169
169
  if (this.getHideEmptyRows() && this.getComputedRowCounts().count === 0) {
170
170
  var iRowCount = this.getRowCount();
171
171
 
172
172
  if (iRowCount > 0) {
173
- return this.getRowContexts(iRowCount).length > 0;
173
+ this.getRowContexts(iRowCount);
174
174
  }
175
- } else {
176
- return RowMode.prototype.updateTableRows.call(this);
177
175
  }
176
+
177
+ return RowMode.prototype.updateTable.apply(this, arguments);
178
178
  };
179
179
 
180
180
  FixedRowMode.prototype.getComputedRowCounts = function() {
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @public
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.119.0
32
+ * @version 1.120.0
33
33
  */
34
34
  var InteractiveRowMode = RowMode.extend("sap.ui.table.rowmodes.Interactive", /** @lends sap.ui.table.rowmodes.Interactive.prototype */ {
35
35
  metadata: {
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @public
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.119.0
38
+ * @version 1.120.0
39
39
  */
40
40
  var RowMode = Element.extend("sap.ui.table.rowmodes.RowMode", /** @lends sap.ui.table.rowmodes.RowMode.prototype */ {
41
41
  metadata: {
@@ -139,6 +139,11 @@ sap.ui.define([
139
139
 
140
140
  TableUtils.Hook.register(oTable, Hook.Table.RowsUnbound, this._onTableRowsUnbound, this);
141
141
  TableUtils.Hook.register(oTable, Hook.Table.UpdateRows, this._onTableUpdateRows, this);
142
+ TableUtils.Hook.register(oTable, Hook.TableRenderer.RenderTableStyles, this.applyTableStyles, this);
143
+ TableUtils.Hook.register(oTable, Hook.TableRenderer.RenderInTableBottomArea, this.renderInTableBottomArea, this);
144
+ TableUtils.Hook.register(oTable, Hook.TableRenderer.RenderRowContainerStyles, this.applyRowContainerStyles, this);
145
+ TableUtils.Hook.register(oTable, Hook.TableRenderer.RenderRowStyles, this.renderRowStyles, this);
146
+ TableUtils.Hook.register(oTable, Hook.TableRenderer.RenderCellContentStyles, this.renderCellContentStyles, this);
142
147
  };
143
148
 
144
149
  /**
@@ -152,6 +157,11 @@ sap.ui.define([
152
157
 
153
158
  TableUtils.Hook.deregister(oTable, Hook.Table.RowsUnbound, this._onTableRowsUnbound, this);
154
159
  TableUtils.Hook.deregister(oTable, Hook.Table.UpdateRows, this._onTableUpdateRows, this);
160
+ TableUtils.Hook.deregister(oTable, Hook.TableRenderer.RenderTableStyles, this.applyTableStyles, this);
161
+ TableUtils.Hook.deregister(oTable, Hook.TableRenderer.RenderInTableBottomArea, this.renderInTableBottomArea, this);
162
+ TableUtils.Hook.deregister(oTable, Hook.TableRenderer.RenderRowContainerStyles, this.applyRowContainerStyles, this);
163
+ TableUtils.Hook.deregister(oTable, Hook.TableRenderer.RenderRowStyles, this.renderRowStyles, this);
164
+ TableUtils.Hook.deregister(oTable, Hook.TableRenderer.RenderCellContentStyles, this.renderCellContentStyles, this);
155
165
  };
156
166
 
157
167
  /**
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.ui.table.rowmodes.RowMode
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.119.0
26
+ * @version 1.120.0
27
27
  *
28
28
  * @constructor
29
29
  * @private
@@ -5,46 +5,48 @@
5
5
  */
6
6
  sap.ui.define([
7
7
  "./TableHelper.support",
8
- "sap/ui/support/library"
9
- ], function(SupportHelper, SupportLibrary) {
8
+ "sap/ui/support/library",
9
+ "sap/m/plugins/PluginBase"
10
+ ], function(SupportHelper, SupportLibrary, PluginBase) {
10
11
  "use strict";
11
12
 
12
13
  var Categories = SupportLibrary.Categories;
13
14
  var Severity = SupportLibrary.Severity;
14
15
 
15
- /*
16
+ /**
16
17
  * Checks the number and type of plugins which are applied to the table.
17
18
  */
18
- var oPlugins = SupportHelper.normalizeRule({
19
+ var oSelectionPlugins = SupportHelper.normalizeRule({
19
20
  id: "Plugins",
20
21
  minversion: "1.64",
21
22
  categories: [Categories.Usage],
22
- title: "Plugins validation",
23
- description: "Checks the number and type of plugins which are applied to the table. Only one selection plugin can be applied. "
24
- + "No other plugins are allowed.",
25
- resolution: "Check if multiple selection plugins are applied, or a plugin of another type is applied to the table.",
23
+ title: "Single selection plugin",
24
+ description: "Only one selection plugin should be applied to avoid potential conflicts.",
25
+ resolution: "Only apply a single selection plugin.",
26
26
  check: function(oIssueManager, oCoreFacade, oScope) {
27
27
  var aTables = SupportHelper.find(oScope, true, "sap.ui.table.Table");
28
28
 
29
29
  for (var i = 0; i < aTables.length; i++) {
30
30
  var oTable = aTables[i];
31
- var aPlugins = oTable.getPlugins();
32
- if (aPlugins.length > 1) {
33
- SupportHelper.reportIssue(oIssueManager,
34
- "Only one plugin can be applied to the table",
35
- Severity.High, oTable.getId());
36
- } else if (aPlugins.length == 1) {
37
- var oPlugin = aPlugins[0];
38
- if (!oPlugin.isA("sap.ui.table.plugins.SelectionPlugin")) {
39
- SupportHelper.reportIssue(oIssueManager,
40
- "Only a selection plugin can be applied to the table",
41
- Severity.High, oTable.getId());
42
- }
31
+ var aSelectionPlugins = oTable.getDependents().filter((oPlugin) => oPlugin.isA("sap.ui.table.plugins.SelectionPlugin"));
32
+
33
+ /**
34
+ * @deprecated As of version 1.120
35
+ */
36
+ aSelectionPlugins.concat(oTable.getPlugins());
37
+
38
+ if (aSelectionPlugins.length > 1) {
39
+ SupportHelper.reportIssue(
40
+ oIssueManager,
41
+ "Only one selection plugin should be applied to the table",
42
+ Severity.High,
43
+ oTable.getId()
44
+ );
43
45
  }
44
46
  }
45
47
  }
46
48
  });
47
49
 
48
- return [oPlugins];
50
+ return [oSelectionPlugins];
49
51
 
50
52
  }, true);