@openui5/sap.ui.table 1.122.0 → 1.123.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.
- package/package.json +3 -3
- package/src/sap/ui/table/.library +1 -1
- package/src/sap/ui/table/AnalyticalColumn.js +1 -1
- package/src/sap/ui/table/AnalyticalColumnMenu.js +2 -2
- package/src/sap/ui/table/AnalyticalTable.js +9 -9
- package/src/sap/ui/table/Column.js +4 -10
- package/src/sap/ui/table/ColumnMenu.js +1 -3
- package/src/sap/ui/table/CreationRow.js +1 -1
- package/src/sap/ui/table/Row.js +1 -1
- package/src/sap/ui/table/RowAction.js +1 -1
- package/src/sap/ui/table/RowActionItem.js +1 -1
- package/src/sap/ui/table/RowSettings.js +1 -1
- package/src/sap/ui/table/Table.js +20 -20
- package/src/sap/ui/table/TablePersoController.js +1 -1
- package/src/sap/ui/table/TreeTable.js +7 -7
- package/src/sap/ui/table/extensions/Accessibility.js +1 -1
- package/src/sap/ui/table/extensions/AccessibilityRender.js +1 -1
- package/src/sap/ui/table/extensions/DragAndDrop.js +1 -1
- package/src/sap/ui/table/extensions/ExtensionBase.js +1 -1
- package/src/sap/ui/table/extensions/Keyboard.js +1 -1
- package/src/sap/ui/table/extensions/KeyboardDelegate.js +1 -1
- package/src/sap/ui/table/extensions/Pointer.js +1 -1
- package/src/sap/ui/table/extensions/Scrolling.js +1 -1
- package/src/sap/ui/table/extensions/ScrollingIOS.js +1 -1
- package/src/sap/ui/table/extensions/Synchronization.js +1 -1
- package/src/sap/ui/table/library.js +24 -24
- package/src/sap/ui/table/menus/ColumnHeaderMenuAdapter.js +1 -1
- package/src/sap/ui/table/menus/MobileColumnHeaderMenuAdapter.js +1 -1
- package/src/sap/ui/table/plugins/BindingSelection.js +1 -1
- package/src/sap/ui/table/plugins/MultiSelectionPlugin.js +6 -12
- package/src/sap/ui/table/plugins/ODataV4Selection.js +6 -12
- package/src/sap/ui/table/plugins/PluginBase.js +1 -1
- package/src/sap/ui/table/plugins/SelectionModelSelection.js +1 -1
- package/src/sap/ui/table/plugins/SelectionPlugin.js +4 -3
- package/src/sap/ui/table/plugins/V4Aggregation.js +1 -1
- package/src/sap/ui/table/rowmodes/Auto.js +1 -1
- package/src/sap/ui/table/rowmodes/Fixed.js +1 -1
- package/src/sap/ui/table/rowmodes/Interactive.js +6 -6
- package/src/sap/ui/table/rowmodes/RowMode.js +1 -1
- package/src/sap/ui/table/rowmodes/Variable.js +1 -1
- package/src/sap/ui/table/utils/TableUtils.js +1 -1
- package/src/sap/ui/table/utils/_BindingUtils.js +1 -1
- package/src/sap/ui/table/utils/_ColumnUtils.js +1 -1
- package/src/sap/ui/table/utils/_GroupingUtils.js +1 -1
- package/src/sap/ui/table/utils/_HookUtils.js +8 -62
- package/src/sap/ui/table/utils/_MenuUtils.js +3 -25
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openui5/sap.ui.table",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.123.0",
|
|
4
4
|
"description": "OpenUI5 UI Library sap.ui.table",
|
|
5
5
|
"author": "SAP SE (https://www.sap.com)",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"url": "https://github.com/SAP/openui5.git"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@openui5/sap.ui.core": "1.
|
|
18
|
-
"@openui5/sap.ui.unified": "1.
|
|
17
|
+
"@openui5/sap.ui.core": "1.123.0",
|
|
18
|
+
"@openui5/sap.ui.unified": "1.123.0"
|
|
19
19
|
}
|
|
20
20
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<copyright>OpenUI5
|
|
7
7
|
* (c) Copyright 2009-2024 SAP SE or an SAP affiliate company.
|
|
8
8
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
|
|
9
|
-
<version>1.
|
|
9
|
+
<version>1.123.0</version>
|
|
10
10
|
|
|
11
11
|
<documentation>Table-like controls, mainly for desktop scenarios.</documentation>
|
|
12
12
|
|
|
@@ -20,14 +20,14 @@ sap.ui.define(['./ColumnMenu', "sap/ui/unified/MenuRenderer", './utils/TableUtil
|
|
|
20
20
|
* @extends sap.ui.table.ColumnMenu
|
|
21
21
|
*
|
|
22
22
|
* @author SAP SE
|
|
23
|
-
* @version 1.
|
|
23
|
+
* @version 1.123.0
|
|
24
24
|
*
|
|
25
25
|
* @constructor
|
|
26
26
|
* @public
|
|
27
27
|
* @experimental Since version 1.21.
|
|
28
28
|
* @alias sap.ui.table.AnalyticalColumnMenu
|
|
29
29
|
*
|
|
30
|
-
* @deprecated As of version 1.117
|
|
30
|
+
* @deprecated As of version 1.117, replaced by the <code>headerMenu</code> association of <code>sap.ui.table.Column</code>.
|
|
31
31
|
*/
|
|
32
32
|
var AnalyticalColumnMenu = ColumnMenu.extend("sap.ui.table.AnalyticalColumnMenu", /** @lends sap.ui.table.AnalyticalColumnMenu.prototype */ {
|
|
33
33
|
metadata: {
|
|
@@ -55,7 +55,7 @@ sap.ui.define([
|
|
|
55
55
|
* @see https://github.com/SAP/odata-vocabularies/blob/main/docs/v2-annotations.md
|
|
56
56
|
*
|
|
57
57
|
* @extends sap.ui.table.Table
|
|
58
|
-
* @version 1.
|
|
58
|
+
* @version 1.123.0
|
|
59
59
|
*
|
|
60
60
|
* @constructor
|
|
61
61
|
* @public
|
|
@@ -132,7 +132,7 @@ sap.ui.define([
|
|
|
132
132
|
/**
|
|
133
133
|
* Functions which is used to sort the column visibility menu entries e.g.: function(ColumnA, ColumnB) { return 0 = equals, <0 lower, >0
|
|
134
134
|
* greater }; Other values than functions will be ignored.
|
|
135
|
-
* @deprecated As of Version 1.117
|
|
135
|
+
* @deprecated As of Version 1.117, see the <code>showColumnVisibilityMenu</code> property of <code>sap.ui.table.Table</code> for details.
|
|
136
136
|
*/
|
|
137
137
|
columnVisibilityMenuSorter: {type: "any", group: "Appearance", defaultValue: null},
|
|
138
138
|
|
|
@@ -226,7 +226,7 @@ sap.ui.define([
|
|
|
226
226
|
|
|
227
227
|
TableUtils.Grouping.setToDefaultGroupMode(this);
|
|
228
228
|
TableUtils.Hook.register(this, TableUtils.Hook.Keys.Row.UpdateState, updateRowState, this);
|
|
229
|
-
TableUtils.Hook.register(this, TableUtils.Hook.Keys.Table.
|
|
229
|
+
TableUtils.Hook.register(this, TableUtils.Hook.Keys.Table.OpenContextMenu, onOpenTableContextMenu, this);
|
|
230
230
|
TableUtils.Hook.register(this, TableUtils.Hook.Keys.Row.Expand, expandRow, this);
|
|
231
231
|
TableUtils.Hook.register(this, TableUtils.Hook.Keys.Row.Collapse, collapseRow, this);
|
|
232
232
|
|
|
@@ -264,9 +264,9 @@ sap.ui.define([
|
|
|
264
264
|
};
|
|
265
265
|
|
|
266
266
|
/**
|
|
267
|
-
* The
|
|
267
|
+
* The <code>enableGrouping</code> property is not supported by the <code>AnalyticalTable</code> control.
|
|
268
268
|
*
|
|
269
|
-
* @deprecated
|
|
269
|
+
* @deprecated As of version 1.28, the <code>enableGrouping</code> property is not supported by the <code>AnalyticalTable</code> control.
|
|
270
270
|
* @public
|
|
271
271
|
* @returns {boolean}
|
|
272
272
|
* @name sap.ui.table.AnalyticalTable#getEnableGrouping
|
|
@@ -274,9 +274,9 @@ sap.ui.define([
|
|
|
274
274
|
*/
|
|
275
275
|
|
|
276
276
|
/**
|
|
277
|
-
* The
|
|
277
|
+
* The <code>enableGrouping</code> property is not supported by the <code>AnalyticalTable</code> control.
|
|
278
278
|
*
|
|
279
|
-
* @deprecated
|
|
279
|
+
* @deprecated As of version 1.28, the <code>enableGrouping</code> property is not supported by the <code>AnalyticalTable</code> control.
|
|
280
280
|
* @param {boolean} bValue
|
|
281
281
|
* @returns {this} Reference to <code>this</code> in order to allow method chaining
|
|
282
282
|
* @public
|
|
@@ -289,7 +289,7 @@ sap.ui.define([
|
|
|
289
289
|
/**
|
|
290
290
|
* The <code>groupBy</code> association is not supported by the <code>AnalyticalTable</code> control.
|
|
291
291
|
*
|
|
292
|
-
* @deprecated
|
|
292
|
+
* @deprecated As of version 1.28, the <code>groupBy</code> association is not supported by the <code>AnalyticalTable</code> control.
|
|
293
293
|
* @returns {sap.ui.core.ID}
|
|
294
294
|
* @public
|
|
295
295
|
* @name sap.ui.table.AnalyticalTable#getGroupBy
|
|
@@ -299,7 +299,7 @@ sap.ui.define([
|
|
|
299
299
|
/**
|
|
300
300
|
* The <code>groupBy</code> association is not supported by the <code>AnalyticalTable</code> control.
|
|
301
301
|
*
|
|
302
|
-
* @deprecated
|
|
302
|
+
* @deprecated As of version 1.28, the <code>groupBy</code> association is not supported by the <code>AnalyticalTable</code> control.
|
|
303
303
|
* @param {sap.ui.core.ID|sap.ui.table.Column} oGroupBy
|
|
304
304
|
* @returns {this} Reference to <code>this</code> in order to allow method chaining
|
|
305
305
|
* @public
|
|
@@ -63,7 +63,7 @@ sap.ui.define([
|
|
|
63
63
|
* @class
|
|
64
64
|
* The column allows you to define column specific properties that will be applied when rendering the table.
|
|
65
65
|
* @extends sap.ui.core.Element
|
|
66
|
-
* @version 1.
|
|
66
|
+
* @version 1.123.0
|
|
67
67
|
*
|
|
68
68
|
* @constructor
|
|
69
69
|
* @public
|
|
@@ -218,7 +218,7 @@ sap.ui.define([
|
|
|
218
218
|
|
|
219
219
|
/**
|
|
220
220
|
* Indicates if the column is grouped.
|
|
221
|
-
* @deprecated As of version 1.118.
|
|
221
|
+
* @deprecated As of version 1.118, see the <code>enableGrouping</code> property of <code>sap.ui.table.Table</code> for details.
|
|
222
222
|
*/
|
|
223
223
|
grouped: {type: "boolean", group: "Appearance", defaultValue: false, deprecated: true},
|
|
224
224
|
|
|
@@ -344,7 +344,7 @@ sap.ui.define([
|
|
|
344
344
|
* Fires before the column menu is opened.
|
|
345
345
|
* @since 1.33.0
|
|
346
346
|
*
|
|
347
|
-
* @deprecated As of version 1.117.
|
|
347
|
+
* @deprecated As of version 1.117, see the <code>headerMenu</code> aggregation for details.
|
|
348
348
|
*/
|
|
349
349
|
columnMenuOpen: {
|
|
350
350
|
allowPreventDefault: true,
|
|
@@ -585,13 +585,7 @@ sap.ui.define([
|
|
|
585
585
|
|| this.isFilterableByMenu()
|
|
586
586
|
|| this.isGroupableByMenu();
|
|
587
587
|
|
|
588
|
-
|
|
589
|
-
return true;
|
|
590
|
-
}
|
|
591
|
-
|
|
592
|
-
return TableUtils.Hook.call(oTable, TableUtils.Hook.Keys.Column.MenuItemNotification, this).some(function(bValue) {
|
|
593
|
-
return bValue;
|
|
594
|
-
});
|
|
588
|
+
return bHasOwnItems;
|
|
595
589
|
};
|
|
596
590
|
|
|
597
591
|
/**
|
|
@@ -40,7 +40,7 @@ sap.ui.define([
|
|
|
40
40
|
* @class
|
|
41
41
|
* The column menu provides all common actions that can be performed on a column.
|
|
42
42
|
* @extends sap.ui.unified.Menu
|
|
43
|
-
* @version 1.
|
|
43
|
+
* @version 1.123.0
|
|
44
44
|
*
|
|
45
45
|
* @constructor
|
|
46
46
|
* @public
|
|
@@ -157,8 +157,6 @@ sap.ui.define([
|
|
|
157
157
|
this._addMenuItems();
|
|
158
158
|
}
|
|
159
159
|
|
|
160
|
-
TableUtils.Hook.call(this._getTable(), TableUtils.Hook.Keys.Table.OpenMenu, TableUtils.getCellInfo(arguments[4]), this);
|
|
161
|
-
|
|
162
160
|
if (this.getItems().length > 0) {
|
|
163
161
|
this._lastFocusedDomRef = arguments[4];
|
|
164
162
|
Menu.prototype.open.apply(this, arguments);
|
package/src/sap/ui/table/Row.js
CHANGED
|
@@ -35,7 +35,7 @@ sap.ui.define([
|
|
|
35
35
|
* If more action items are available as the available space allows to display an overflow mechanism is provided.
|
|
36
36
|
* This control must only be used in the context of the <code>sap.ui.table.Table</code> control to define row actions.
|
|
37
37
|
* @extends sap.ui.core.Control
|
|
38
|
-
* @version 1.
|
|
38
|
+
* @version 1.123.0
|
|
39
39
|
*
|
|
40
40
|
* @constructor
|
|
41
41
|
* @public
|
|
@@ -24,7 +24,7 @@ sap.ui.define([
|
|
|
24
24
|
* The <code>RowSettings</code> control allows you to configure a row.
|
|
25
25
|
* You can only use this control in the context of the <code>sap.ui.table.Table</code> control to define row settings.
|
|
26
26
|
* @extends sap.ui.core.Element
|
|
27
|
-
* @version 1.
|
|
27
|
+
* @version 1.123.0
|
|
28
28
|
*
|
|
29
29
|
* @constructor
|
|
30
30
|
* @public
|
|
@@ -100,7 +100,7 @@ sap.ui.define([
|
|
|
100
100
|
* the data model and binding being used.
|
|
101
101
|
* </p>
|
|
102
102
|
* @extends sap.ui.core.Control
|
|
103
|
-
* @version 1.
|
|
103
|
+
* @version 1.123.0
|
|
104
104
|
*
|
|
105
105
|
* @constructor
|
|
106
106
|
* @public
|
|
@@ -204,14 +204,14 @@ sap.ui.define([
|
|
|
204
204
|
/**
|
|
205
205
|
* Flag whether the controls of the Table are editable or not (currently this only controls the background color in certain themes!)
|
|
206
206
|
*
|
|
207
|
-
* @deprecated As of version 1.115
|
|
207
|
+
* @deprecated As of version 1.115, the concept has been discarded.
|
|
208
208
|
*/
|
|
209
209
|
editable: {type: "boolean", group: "Behavior", defaultValue: true, deprecated: true},
|
|
210
210
|
|
|
211
211
|
/**
|
|
212
212
|
* This property has been deprecated and must not be used anymore, since <code>Scrollbar</code> is the only supported option.
|
|
213
213
|
*
|
|
214
|
-
* @deprecated As of version 1.38
|
|
214
|
+
* @deprecated As of version 1.38, the concept has been discarded.
|
|
215
215
|
*/
|
|
216
216
|
navigationMode: {type: "sap.ui.table.NavigationMode", group: "Behavior", defaultValue: "Scrollbar", deprecated: true},
|
|
217
217
|
|
|
@@ -236,18 +236,18 @@ sap.ui.define([
|
|
|
236
236
|
*
|
|
237
237
|
* The following restrictions apply:
|
|
238
238
|
* <ul>
|
|
239
|
-
*
|
|
240
|
-
*
|
|
241
|
-
*
|
|
242
|
-
*
|
|
243
|
-
*
|
|
244
|
-
*
|
|
245
|
-
*
|
|
246
|
-
*
|
|
239
|
+
* <li>Only client models are supported (e.g. {@link sap.ui.model.json.JSONModel}). Grouping does not work with OData models.</li>
|
|
240
|
+
* <li>The table can only be grouped by <b>one</b> column at a time. Grouping by another column will remove the current grouping.</li>
|
|
241
|
+
* <li>For the grouping to work correctly, {@link sap.ui.table.Column#getSortProperty sortProperty} must be set for the grouped
|
|
242
|
+
* column.</li>
|
|
243
|
+
* <li>If grouping has been done, sorting and filtering is not possible. Any existing sorting and filtering rules do no longer apply.
|
|
244
|
+
* The UI is not updated accordingly (e.g. menu items, sort and filter icons).</li>
|
|
245
|
+
* <li>The column, by which the table is grouped, is not visible. It will become visible again only if the table is grouped by another
|
|
246
|
+
* column or grouping is disabled.</li>
|
|
247
247
|
* </ul>
|
|
248
248
|
*
|
|
249
249
|
* @see sap.ui.table.Table#setGroupBy
|
|
250
|
-
* @deprecated As of version 1.110,
|
|
250
|
+
* @deprecated As of version 1.110, the concept has been discarded.
|
|
251
251
|
*/
|
|
252
252
|
enableGrouping: {type: "boolean", group: "Behavior", defaultValue: false, deprecated: true},
|
|
253
253
|
|
|
@@ -301,9 +301,9 @@ sap.ui.define([
|
|
|
301
301
|
*
|
|
302
302
|
* <b>Note</b>
|
|
303
303
|
* <ul>
|
|
304
|
-
*
|
|
305
|
-
*
|
|
306
|
-
*
|
|
304
|
+
* <li>Fixed columns need a defined width for the feature to work.</li>
|
|
305
|
+
* <li>The aggregated width of all fixed columns must not exceed the table width. Otherwise the table ignores the value of the
|
|
306
|
+
* property and adapts the behavior in an appropriate way to ensure that the user is still able to scroll horizontally.</li>
|
|
307
307
|
* </ul>
|
|
308
308
|
*/
|
|
309
309
|
fixedColumnCount: {type: "int", group: "Appearance", defaultValue: 0},
|
|
@@ -544,7 +544,7 @@ sap.ui.define([
|
|
|
544
544
|
*
|
|
545
545
|
* @experimental Since 1.28. This feature has a limited functionality.
|
|
546
546
|
* @see sap.ui.table.Table#setEnableGrouping
|
|
547
|
-
* @deprecated As of version 1.110.
|
|
547
|
+
* @deprecated As of version 1.110, see the <code>enableGrouping</code> property for details.
|
|
548
548
|
*/
|
|
549
549
|
groupBy: {type: "sap.ui.table.Column", multiple: false, deprecated: true},
|
|
550
550
|
|
|
@@ -599,7 +599,7 @@ sap.ui.define([
|
|
|
599
599
|
|
|
600
600
|
/**
|
|
601
601
|
* fired when a column of the table has been selected
|
|
602
|
-
* @deprecated As of version 1.117
|
|
602
|
+
* @deprecated As of version 1.117, see the <code>headerMenu</code> aggregation of <code>sap.ui.table.Column</code> for details.
|
|
603
603
|
*/
|
|
604
604
|
columnSelect: {
|
|
605
605
|
allowPreventDefault: true,
|
|
@@ -706,7 +706,7 @@ sap.ui.define([
|
|
|
706
706
|
|
|
707
707
|
/**
|
|
708
708
|
* fired when the table is grouped (experimental!).
|
|
709
|
-
* @deprecated As of version 1.118.
|
|
709
|
+
* @deprecated As of version 1.118, see the <code>enableGrouping</code> property for details.
|
|
710
710
|
*/
|
|
711
711
|
group: {
|
|
712
712
|
allowPreventDefault: true,
|
|
@@ -721,7 +721,7 @@ sap.ui.define([
|
|
|
721
721
|
|
|
722
722
|
/**
|
|
723
723
|
* fired when the visibility of a table column is changed.
|
|
724
|
-
* @deprecated As of Version 1.117
|
|
724
|
+
* @deprecated As of Version 1.117, see the <code>showColumnVisibilityMenu</code> property of <code>sap.ui.table.Table</code> for details.
|
|
725
725
|
*/
|
|
726
726
|
columnVisibility: {
|
|
727
727
|
allowPreventDefault: true,
|
|
@@ -1137,7 +1137,7 @@ sap.ui.define([
|
|
|
1137
1137
|
Table.prototype.onpaste = function(oEvent) {
|
|
1138
1138
|
|
|
1139
1139
|
// Check whether the paste event is already handled by input enabled control and avoid pasting into this input-enabled control when focus is in there.
|
|
1140
|
-
if (oEvent.isMarked() || /^(input|textarea)$/i.test(
|
|
1140
|
+
if (oEvent.isMarked() || /^(input|textarea)$/i.test(document.activeElement.tagName) /*see DINC0096526*/ || !this.getDomRef("sapUiTableCnt").contains(oEvent.target)) {
|
|
1141
1141
|
return;
|
|
1142
1142
|
}
|
|
1143
1143
|
|
|
@@ -42,7 +42,7 @@ sap.ui.define([
|
|
|
42
42
|
* @class
|
|
43
43
|
* The TreeTable control provides a comprehensive set of features to display hierarchical data.
|
|
44
44
|
* @extends sap.ui.table.Table
|
|
45
|
-
* @version 1.
|
|
45
|
+
* @version 1.123.0
|
|
46
46
|
*
|
|
47
47
|
* @constructor
|
|
48
48
|
* @public
|
|
@@ -501,9 +501,9 @@ sap.ui.define([
|
|
|
501
501
|
};
|
|
502
502
|
|
|
503
503
|
/**
|
|
504
|
-
* The
|
|
504
|
+
* The <code>enableGrouping</code> property is not supported by the <code>TreeTable</code> control.
|
|
505
505
|
*
|
|
506
|
-
* @deprecated
|
|
506
|
+
* @deprecated As of version 1.28, the <code>enableGrouping</code> property is not supported by the <code>TreeTable</code> control.
|
|
507
507
|
* @returns {boolean}
|
|
508
508
|
* @public
|
|
509
509
|
* @name sap.ui.table.TreeTable#getEnableGrouping
|
|
@@ -511,9 +511,9 @@ sap.ui.define([
|
|
|
511
511
|
*/
|
|
512
512
|
|
|
513
513
|
/**
|
|
514
|
-
* The
|
|
514
|
+
* The <code>enableGrouping</code> property is not supported by the <code>TreeTable</code> control.
|
|
515
515
|
*
|
|
516
|
-
* @deprecated
|
|
516
|
+
* @deprecated As of version 1.28, the <code>enableGrouping</code> property is not supported by the <code>TreeTable</code> control.
|
|
517
517
|
* To get a group-like visualization the <code>useGroupMode</code> property can be used.
|
|
518
518
|
* @param {boolean} bValue
|
|
519
519
|
* @returns {this} Reference to <code>this</code> in order to allow method chaining
|
|
@@ -528,7 +528,7 @@ sap.ui.define([
|
|
|
528
528
|
/**
|
|
529
529
|
* The <code>groupBy</code> association is not supported by the <code>TreeTable</code> control.
|
|
530
530
|
*
|
|
531
|
-
* @deprecated
|
|
531
|
+
* @deprecated As of version 1.28, the <code>groupBy</code> association is not supported by the <code>TreeTable</code> control.
|
|
532
532
|
* @returns {sap.ui.core.ID}
|
|
533
533
|
* @public
|
|
534
534
|
* @name sap.ui.table.TreeTable#getGroupBy
|
|
@@ -538,7 +538,7 @@ sap.ui.define([
|
|
|
538
538
|
/**
|
|
539
539
|
* The <code>groupBy</code> association is not supported by the <code>TreeTable</code> control.
|
|
540
540
|
*
|
|
541
|
-
* @deprecated
|
|
541
|
+
* @deprecated As of version 1.28, the <code>groupBy</code> association is not supported by the <code>TreeTable</code> control.
|
|
542
542
|
* @param {sap.ui.table.Column|sap.ui.core.ID} oColumn
|
|
543
543
|
* @returns {this} Reference to <code>this</code> in order to allow method chaining
|
|
544
544
|
* @public
|
|
@@ -965,7 +965,7 @@ sap.ui.define([
|
|
|
965
965
|
* @class Extension for sap.ui.table.Table which handles ACC related things.
|
|
966
966
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
967
967
|
* @author SAP SE
|
|
968
|
-
* @version 1.
|
|
968
|
+
* @version 1.123.0
|
|
969
969
|
* @constructor
|
|
970
970
|
* @private
|
|
971
971
|
* @alias sap.ui.table.extensions.Accessibility
|
|
@@ -44,7 +44,7 @@ sap.ui.define([
|
|
|
44
44
|
* @class Extension for sap.ui.table.TableRenderer which handles ACC related things.
|
|
45
45
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
46
46
|
* @author SAP SE
|
|
47
|
-
* @version 1.
|
|
47
|
+
* @version 1.123.0
|
|
48
48
|
* @constructor
|
|
49
49
|
* @private
|
|
50
50
|
* @alias sap.ui.table.extensions.AccessibilityRender
|
|
@@ -267,7 +267,7 @@ sap.ui.define([
|
|
|
267
267
|
* @class Extension for sap.ui.table.Table which handles keyboard related things.
|
|
268
268
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
269
269
|
* @author SAP SE
|
|
270
|
-
* @version 1.
|
|
270
|
+
* @version 1.123.0
|
|
271
271
|
* @constructor
|
|
272
272
|
* @private
|
|
273
273
|
* @alias sap.ui.table.extensions.Keyboard
|
|
@@ -766,7 +766,7 @@ sap.ui.define([
|
|
|
766
766
|
* @class Extension for sap.ui.table.Table which handles mouse and touch related things.
|
|
767
767
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
768
768
|
* @author SAP SE
|
|
769
|
-
* @version 1.
|
|
769
|
+
* @version 1.123.0
|
|
770
770
|
* @constructor
|
|
771
771
|
* @private
|
|
772
772
|
* @alias sap.ui.table.extensions.Pointer
|
|
@@ -2264,7 +2264,7 @@ sap.ui.define([
|
|
|
2264
2264
|
* @class Extension for sap.ui.table.Table which handles scrolling.
|
|
2265
2265
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
2266
2266
|
* @author SAP SE
|
|
2267
|
-
* @version 1.
|
|
2267
|
+
* @version 1.123.0
|
|
2268
2268
|
* @constructor
|
|
2269
2269
|
* @private
|
|
2270
2270
|
* @alias sap.ui.table.extensions.Scrolling
|
|
@@ -27,7 +27,7 @@ sap.ui.define([
|
|
|
27
27
|
* @class Extension for sap.ui.table.Table which handles the scrollbar on iOS.
|
|
28
28
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
29
29
|
* @author SAP SE
|
|
30
|
-
* @version 1.
|
|
30
|
+
* @version 1.123.0
|
|
31
31
|
* @constructor
|
|
32
32
|
* @private
|
|
33
33
|
* @alias sap.ui.table.extensions.ScrollingIOS
|
|
@@ -185,7 +185,7 @@ sap.ui.define([
|
|
|
185
185
|
* @class Extension for sap.ui.table.Table that allows synchronization with a table.
|
|
186
186
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
187
187
|
* @author SAP SE
|
|
188
|
-
* @version 1.
|
|
188
|
+
* @version 1.123.0
|
|
189
189
|
* @constructor
|
|
190
190
|
* @private
|
|
191
191
|
* @alias sap.ui.table.extensions.Synchronization
|
|
@@ -27,27 +27,27 @@ sap.ui.define([
|
|
|
27
27
|
* @namespace
|
|
28
28
|
* @alias sap.ui.table
|
|
29
29
|
* @author SAP SE
|
|
30
|
-
* @version 1.
|
|
30
|
+
* @version 1.123.0
|
|
31
31
|
* @since 0.8
|
|
32
32
|
* @public
|
|
33
33
|
*/
|
|
34
34
|
var thisLib = Library.init({
|
|
35
35
|
name: "sap.ui.table",
|
|
36
36
|
apiVersion: 2,
|
|
37
|
-
version: "1.
|
|
37
|
+
version: "1.123.0",
|
|
38
38
|
dependencies: ["sap.ui.core", "sap.ui.unified"],
|
|
39
39
|
designtime: "sap/ui/table/designtime/library.designtime",
|
|
40
40
|
types: [
|
|
41
|
-
/** @deprecated As of version 1.38 */
|
|
41
|
+
/** @deprecated As of version 1.38, the concept has been discarded. */
|
|
42
42
|
"sap.ui.table.NavigationMode",
|
|
43
43
|
"sap.ui.table.RowActionType",
|
|
44
44
|
"sap.ui.table.SelectionBehavior",
|
|
45
45
|
"sap.ui.table.SelectionMode",
|
|
46
|
-
/** @deprecated As of version 1.120 */
|
|
46
|
+
/** @deprecated As of version 1.120, replaced by <code>sap.ui.core.SortOrder</code> */
|
|
47
47
|
"sap.ui.table.SortOrder",
|
|
48
|
-
/** @deprecated As of version 1.119 */
|
|
48
|
+
/** @deprecated As of version 1.119, see the <code>rowMode</code> aggregation of <code>sap.ui.table.Table</code> for more details. */
|
|
49
49
|
"sap.ui.table.VisibleRowCountMode",
|
|
50
|
-
/** @deprecated As of version 1.120 */
|
|
50
|
+
/** @deprecated As of version 1.120, replaced by <code>sap.ui.model.TreeAutoExpandMode</code> */
|
|
51
51
|
"sap.ui.table.TreeAutoExpandMode", /*Note: Only added here to ensure that a corresponding module is created automatically. Cannot be used as type for properties!*/
|
|
52
52
|
"sap.ui.table.plugins.SelectionMode"
|
|
53
53
|
],
|
|
@@ -96,9 +96,9 @@ sap.ui.define([
|
|
|
96
96
|
/**
|
|
97
97
|
* Navigation mode of the table
|
|
98
98
|
*
|
|
99
|
-
* @version 1.
|
|
99
|
+
* @version 1.123.0
|
|
100
100
|
* @enum {string}
|
|
101
|
-
* @deprecated As of version 1.38
|
|
101
|
+
* @deprecated As of version 1.38, the concept has been discarded.
|
|
102
102
|
* @public
|
|
103
103
|
*/
|
|
104
104
|
thisLib.NavigationMode = {
|
|
@@ -127,7 +127,7 @@ sap.ui.define([
|
|
|
127
127
|
/**
|
|
128
128
|
* Row Action types.
|
|
129
129
|
*
|
|
130
|
-
* @version 1.
|
|
130
|
+
* @version 1.123.0
|
|
131
131
|
* @enum {string}
|
|
132
132
|
* @public
|
|
133
133
|
*/
|
|
@@ -158,7 +158,7 @@ sap.ui.define([
|
|
|
158
158
|
/**
|
|
159
159
|
* Selection behavior of the table
|
|
160
160
|
*
|
|
161
|
-
* @version 1.
|
|
161
|
+
* @version 1.123.0
|
|
162
162
|
* @enum {string}
|
|
163
163
|
* @public
|
|
164
164
|
*/
|
|
@@ -189,7 +189,7 @@ sap.ui.define([
|
|
|
189
189
|
/**
|
|
190
190
|
* Selection mode of the table
|
|
191
191
|
*
|
|
192
|
-
* @version 1.
|
|
192
|
+
* @version 1.123.0
|
|
193
193
|
* @enum {string}
|
|
194
194
|
* @public
|
|
195
195
|
*/
|
|
@@ -227,7 +227,7 @@ sap.ui.define([
|
|
|
227
227
|
/**
|
|
228
228
|
* Sort order of a column
|
|
229
229
|
*
|
|
230
|
-
* @version 1.
|
|
230
|
+
* @version 1.123.0
|
|
231
231
|
* @enum {string}
|
|
232
232
|
* @public
|
|
233
233
|
* @deprecated As of version 1.120, replaced with <code>sap.ui.core.SortOrder</code>
|
|
@@ -254,9 +254,9 @@ sap.ui.define([
|
|
|
254
254
|
/**
|
|
255
255
|
* VisibleRowCountMode of the table
|
|
256
256
|
*
|
|
257
|
-
* @version 1.
|
|
257
|
+
* @version 1.123.0
|
|
258
258
|
* @enum {string}
|
|
259
|
-
* @deprecated As of version 1.119
|
|
259
|
+
* @deprecated As of version 1.119, see the <code>rowMode</code> aggregation of <code>sap.ui.table.Table</code> for more details.
|
|
260
260
|
* @public
|
|
261
261
|
*/
|
|
262
262
|
thisLib.VisibleRowCountMode = {
|
|
@@ -272,11 +272,11 @@ sap.ui.define([
|
|
|
272
272
|
*
|
|
273
273
|
* The following restrictions apply:
|
|
274
274
|
* <ul>
|
|
275
|
-
*
|
|
276
|
-
*
|
|
277
|
-
*
|
|
278
|
-
*
|
|
279
|
-
*
|
|
275
|
+
* <li>The functionality targets only the mouse interaction (drag and drop). There is no keyboard alternative available.
|
|
276
|
+
* An accessible alternative must be provided by applications, for example, by giving the user the possibility to enter
|
|
277
|
+
* the number of required rows in an input field.</li>
|
|
278
|
+
* <li>The resize interaction is not optimized for touch devices from a design and interaction perspective.
|
|
279
|
+
* We do not recommend to use this mode in such scenarios.</li>
|
|
280
280
|
* </ul>
|
|
281
281
|
*
|
|
282
282
|
* @public
|
|
@@ -299,7 +299,7 @@ sap.ui.define([
|
|
|
299
299
|
*
|
|
300
300
|
* Contains IDs of shared DOM references, which should be accessible to inheriting controls via getDomRef() function.
|
|
301
301
|
*
|
|
302
|
-
* @version 1.
|
|
302
|
+
* @version 1.123.0
|
|
303
303
|
* @enum {string}
|
|
304
304
|
* @public
|
|
305
305
|
*/
|
|
@@ -366,7 +366,7 @@ sap.ui.define([
|
|
|
366
366
|
* Enumeration of the <code>ResetAllMode</code> that can be used in a <code>TablePersoController</code>.
|
|
367
367
|
* @enum {string}
|
|
368
368
|
* @public
|
|
369
|
-
* @deprecated As of version 1.115
|
|
369
|
+
* @deprecated As of version 1.115, replaced by {@link sap.m.p13n.Engine}
|
|
370
370
|
*/
|
|
371
371
|
thisLib.ResetAllMode = {
|
|
372
372
|
|
|
@@ -400,10 +400,10 @@ sap.ui.define([
|
|
|
400
400
|
*
|
|
401
401
|
* This is an alias for {@link sap.ui.model.TreeAutoExpandMode} and kept for compatibility reasons.
|
|
402
402
|
*
|
|
403
|
-
* @version 1.
|
|
403
|
+
* @version 1.123.0
|
|
404
404
|
* @typedef {sap.ui.model.TreeAutoExpandMode}
|
|
405
405
|
* @public
|
|
406
|
-
* @deprecated As of version 1.120
|
|
406
|
+
* @deprecated As of version 1.120, replaced by <code>sap.ui.model.TreeAutoExpandMode</code>
|
|
407
407
|
*/
|
|
408
408
|
thisLib.TreeAutoExpandMode = TreeAutoExpandMode;
|
|
409
409
|
|
|
@@ -414,7 +414,7 @@ sap.ui.define([
|
|
|
414
414
|
/**
|
|
415
415
|
* Mode of a selection plugin
|
|
416
416
|
*
|
|
417
|
-
* @version 1.
|
|
417
|
+
* @version 1.123.0
|
|
418
418
|
* @enum {string}
|
|
419
419
|
* @private
|
|
420
420
|
*/
|
|
@@ -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.
|
|
24
|
+
* @version 1.123.0
|
|
25
25
|
* @constructor
|
|
26
26
|
* @private
|
|
27
27
|
* @alias sap.ui.table.plugins.BindingSelection
|
|
@@ -86,6 +86,9 @@ sap.ui.define([
|
|
|
86
86
|
*/
|
|
87
87
|
selectionMode: {type: "sap.ui.table.SelectionMode", group: "Behavior", defaultValue: SelectionMode.MultiToggle}
|
|
88
88
|
},
|
|
89
|
+
aggregations: {
|
|
90
|
+
icon: {type: "sap.ui.core.Icon", multiple: false, visibility: "hidden"}
|
|
91
|
+
},
|
|
89
92
|
events: {
|
|
90
93
|
/**
|
|
91
94
|
* This event is fired when the selection is changed.
|
|
@@ -119,20 +122,11 @@ sap.ui.define([
|
|
|
119
122
|
|
|
120
123
|
var oIcon = new Icon({src: IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon), useIconTooltip: false});
|
|
121
124
|
oIcon.addStyleClass("sapUiTableSelectClear");
|
|
125
|
+
this.setAggregation("icon", oIcon, true);
|
|
122
126
|
|
|
123
127
|
this._bLimitReached = false;
|
|
124
128
|
this._bLimitDisabled = this.getLimit() === 0;
|
|
125
129
|
this.oInnerSelectionPlugin = null;
|
|
126
|
-
this.oDeselectAllIcon = oIcon;
|
|
127
|
-
};
|
|
128
|
-
|
|
129
|
-
MultiSelectionPlugin.prototype.exit = function() {
|
|
130
|
-
SelectionPlugin.prototype.exit.apply(this, arguments);
|
|
131
|
-
|
|
132
|
-
if (this.oDeselectAllIcon) {
|
|
133
|
-
this.oDeselectAllIcon.destroy();
|
|
134
|
-
this.oDeselectAllIcon = null;
|
|
135
|
-
}
|
|
136
130
|
};
|
|
137
131
|
|
|
138
132
|
/**
|
|
@@ -189,7 +183,7 @@ sap.ui.define([
|
|
|
189
183
|
return {
|
|
190
184
|
headerSelector: {
|
|
191
185
|
type: this._bLimitDisabled ? "toggle" : "clear",
|
|
192
|
-
icon: this.
|
|
186
|
+
icon: this.getAggregation("icon"),
|
|
193
187
|
visible: this.getSelectionMode() === SelectionMode.MultiToggle && this.getShowHeaderSelector(),
|
|
194
188
|
enabled: this._bLimitDisabled || this.getSelectedCount() > 0,
|
|
195
189
|
selected: this.getSelectableCount() > 0 && this.getSelectableCount() === this.getSelectedCount()
|
|
@@ -616,7 +610,7 @@ sap.ui.define([
|
|
|
616
610
|
};
|
|
617
611
|
|
|
618
612
|
MultiSelectionPlugin.prototype.onThemeChanged = function() {
|
|
619
|
-
this.
|
|
613
|
+
this.getAggregation("icon").setSrc(IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon));
|
|
620
614
|
};
|
|
621
615
|
|
|
622
616
|
return MultiSelectionPlugin;
|
|
@@ -77,6 +77,9 @@ sap.ui.define([
|
|
|
77
77
|
*/
|
|
78
78
|
hideHeaderSelector: {type: "boolean", group: "Appearance", defaultValue: false}
|
|
79
79
|
},
|
|
80
|
+
aggregations: {
|
|
81
|
+
icon: {type: "sap.ui.core.Icon", multiple: false, visibility: "hidden"}
|
|
82
|
+
},
|
|
80
83
|
events: {
|
|
81
84
|
selectionChange: {}
|
|
82
85
|
}
|
|
@@ -90,21 +93,12 @@ sap.ui.define([
|
|
|
90
93
|
|
|
91
94
|
var oIcon = new Icon({src: IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon), useIconTooltip: false});
|
|
92
95
|
oIcon.addStyleClass("sapUiTableSelectClear");
|
|
96
|
+
this.setAggregation("icon", oIcon, true);
|
|
93
97
|
|
|
94
98
|
this._bLimitReached = false;
|
|
95
|
-
this.oDeselectAllIcon = oIcon;
|
|
96
99
|
this._oRangeSelectionStartContext = null;
|
|
97
100
|
};
|
|
98
101
|
|
|
99
|
-
ODataV4Selection.prototype.exit = function() {
|
|
100
|
-
SelectionPlugin.prototype.exit.apply(this, arguments);
|
|
101
|
-
|
|
102
|
-
if (this.oDeselectAllIcon) {
|
|
103
|
-
this.oDeselectAllIcon.destroy();
|
|
104
|
-
this.oDeselectAllIcon = null;
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
|
|
108
102
|
ODataV4Selection.prototype.onActivate = function(oTable) {
|
|
109
103
|
SelectionPlugin.prototype.onActivate.apply(this, arguments);
|
|
110
104
|
oTable.setProperty("selectionMode", this.getSelectionMode());
|
|
@@ -176,7 +170,7 @@ sap.ui.define([
|
|
|
176
170
|
return {
|
|
177
171
|
headerSelector: {
|
|
178
172
|
type: this._isLimitDisabled() ? "toggle" : "clear",
|
|
179
|
-
icon: this.
|
|
173
|
+
icon: this.getAggregation("icon"),
|
|
180
174
|
visible: this.getSelectionMode() === SelectionMode.MultiToggle && !this.getHideHeaderSelector(),
|
|
181
175
|
enabled: this._isLimitDisabled() || this.getSelectedCount() > 0,
|
|
182
176
|
selected: areAllRowsSelected(this)
|
|
@@ -384,7 +378,7 @@ sap.ui.define([
|
|
|
384
378
|
};
|
|
385
379
|
|
|
386
380
|
ODataV4Selection.prototype.onThemeChanged = function() {
|
|
387
|
-
this.
|
|
381
|
+
this.getAggregation("icon").setSrc(IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon));
|
|
388
382
|
};
|
|
389
383
|
|
|
390
384
|
return ODataV4Selection;
|
|
@@ -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.
|
|
26
|
+
* @version 1.123.0
|
|
27
27
|
* @constructor
|
|
28
28
|
* @private
|
|
29
29
|
* @alias sap.ui.table.plugins.SelectionModelSelection
|
|
@@ -18,15 +18,16 @@ sap.ui.define([
|
|
|
18
18
|
*
|
|
19
19
|
* The following restrictions apply:
|
|
20
20
|
* <ul>
|
|
21
|
-
*
|
|
22
|
-
*
|
|
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
|
|
23
|
+
* be used on a regular basis.</li>
|
|
23
24
|
* </ul>
|
|
24
25
|
*
|
|
25
26
|
* @abstract
|
|
26
27
|
* @class Implements the selection methods for a table.
|
|
27
28
|
* @extends sap.ui.core.Element
|
|
28
29
|
* @author SAP SE
|
|
29
|
-
* @version 1.
|
|
30
|
+
* @version 1.123.0
|
|
30
31
|
* @public
|
|
31
32
|
* @since 1.64
|
|
32
33
|
* @experimental As of version 1.64
|
|
@@ -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.
|
|
35
|
+
* @version 1.123.0
|
|
36
36
|
* @private
|
|
37
37
|
* @since 1.76
|
|
38
38
|
* @ui5-restricted sap.ui.mdc
|
|
@@ -25,11 +25,11 @@ sap.ui.define([
|
|
|
25
25
|
*
|
|
26
26
|
* The following restrictions apply:
|
|
27
27
|
* <ul>
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
28
|
+
* <li>The functionality targets only the mouse interaction (drag and drop). There is no keyboard alternative available.
|
|
29
|
+
* An accessible alternative must be provided by applications, for example, by giving the user the possibility to enter
|
|
30
|
+
* the number of required rows in an input field.</li>
|
|
31
|
+
* <li>The resize interaction is not optimized for touch devices from a design and interaction perspective.
|
|
32
|
+
* We do not recommend to use this mode in such scenarios.</li>
|
|
33
33
|
* </ul>
|
|
34
34
|
*
|
|
35
35
|
* @extends sap.ui.table.rowmodes.RowMode
|
|
@@ -39,7 +39,7 @@ sap.ui.define([
|
|
|
39
39
|
* @public
|
|
40
40
|
*
|
|
41
41
|
* @author SAP SE
|
|
42
|
-
* @version 1.
|
|
42
|
+
* @version 1.123.0
|
|
43
43
|
*/
|
|
44
44
|
var InteractiveRowMode = RowMode.extend("sap.ui.table.rowmodes.Interactive", /** @lends sap.ui.table.rowmodes.Interactive.prototype */ {
|
|
45
45
|
metadata: {
|
|
@@ -14,7 +14,7 @@ sap.ui.define([], function() {
|
|
|
14
14
|
* Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Binding...</code>
|
|
15
15
|
*
|
|
16
16
|
* @author SAP SE
|
|
17
|
-
* @version 1.
|
|
17
|
+
* @version 1.123.0
|
|
18
18
|
* @namespace
|
|
19
19
|
* @alias sap.ui.table.utils._BindingUtils
|
|
20
20
|
* @private
|
|
@@ -18,7 +18,7 @@ sap.ui.define([
|
|
|
18
18
|
* Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Column...</code>
|
|
19
19
|
*
|
|
20
20
|
* @author SAP SE
|
|
21
|
-
* @version 1.
|
|
21
|
+
* @version 1.123.0
|
|
22
22
|
* @namespace
|
|
23
23
|
* @alias sap.ui.table.utils._ColumnUtils
|
|
24
24
|
* @private
|
|
@@ -24,7 +24,7 @@ sap.ui.define([
|
|
|
24
24
|
* Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Grouping...</code>
|
|
25
25
|
*
|
|
26
26
|
* @author SAP SE
|
|
27
|
-
* @version 1.
|
|
27
|
+
* @version 1.123.0
|
|
28
28
|
* @namespace
|
|
29
29
|
* @alias sap.ui.table.utils._GroupingUtils
|
|
30
30
|
* @private
|
|
@@ -22,7 +22,7 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
|
|
|
22
22
|
* - There is no concept for public or protected hooks. Never expose a hook directly, only indirectly as can be seen in the examples.
|
|
23
23
|
*
|
|
24
24
|
* @author SAP SE
|
|
25
|
-
* @version 1.
|
|
25
|
+
* @version 1.123.0
|
|
26
26
|
* @namespace
|
|
27
27
|
* @alias sap.ui.table.utils._HookUtils
|
|
28
28
|
*
|
|
@@ -106,13 +106,6 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
|
|
|
106
106
|
* For example for internal types like sap.ui.table.Row.State. It is also possible to use sap.ui.base.DataType#createType to create
|
|
107
107
|
* a type that can be used here. But this is not done to avoid polluting the type registry just for this util.
|
|
108
108
|
*
|
|
109
|
-
* - "returnValue" (optional) - Type of the return value.
|
|
110
|
-
* Examples: "boolean", "Promise"
|
|
111
|
-
*
|
|
112
|
-
* If a type for the return value is defined, an array of valid return values is returned to the caller. Invalid values that do not match
|
|
113
|
-
* the type are discarded.
|
|
114
|
-
* Any type that can be used in "arguments" can also be used here, plus "Promise".
|
|
115
|
-
*
|
|
116
109
|
* Forbidden types: "function"
|
|
117
110
|
*/
|
|
118
111
|
|
|
@@ -158,7 +151,7 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
|
|
|
158
151
|
{type: validateRowsUpdateReason}
|
|
159
152
|
]
|
|
160
153
|
},
|
|
161
|
-
|
|
154
|
+
OpenContextMenu: {
|
|
162
155
|
arguments: [
|
|
163
156
|
{type: validateCellInfo},
|
|
164
157
|
{type: "class:sap.ui.unified.Menu"}
|
|
@@ -221,14 +214,6 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
|
|
|
221
214
|
}
|
|
222
215
|
},
|
|
223
216
|
Column: {
|
|
224
|
-
// Called when the table needs to know whether menu items will be added on the Table.OpenMenu hook. Returning "true" indicates that
|
|
225
|
-
// the consumer will add menu items on Table.OpenMenu.
|
|
226
|
-
MenuItemNotification: {
|
|
227
|
-
arguments: [
|
|
228
|
-
{type: "class:sap.ui.table.Column"}
|
|
229
|
-
],
|
|
230
|
-
returnValue: "boolean"
|
|
231
|
-
},
|
|
232
217
|
/**
|
|
233
218
|
* @deprecated As of Version 1.117
|
|
234
219
|
*/
|
|
@@ -264,22 +249,18 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
|
|
|
264
249
|
*
|
|
265
250
|
* @param {sap.ui.table.Table} oScope The table whose hook is called.
|
|
266
251
|
* @param {string} sKey The hook to call.
|
|
267
|
-
* @returns {any[] | undefined} The return values, or <code>undefined</code> if the hook does not allow return values.
|
|
268
252
|
*/
|
|
269
253
|
HookUtils.call = function(oScope, sKey) {
|
|
270
254
|
var aHooks = Hooks.get(oScope);
|
|
271
255
|
|
|
272
256
|
if (!isValidScope(oScope) || !isValidKey(sKey)) {
|
|
273
|
-
return
|
|
257
|
+
return;
|
|
274
258
|
}
|
|
275
259
|
|
|
276
260
|
var mHookMetadata = getHookMetadataByKey(sKey);
|
|
277
261
|
|
|
278
262
|
if (aHooks == null) {
|
|
279
|
-
|
|
280
|
-
return [];
|
|
281
|
-
}
|
|
282
|
-
return undefined;
|
|
263
|
+
return;
|
|
283
264
|
}
|
|
284
265
|
|
|
285
266
|
var aArguments = sanitizeArguments(Array.prototype.slice.call(arguments, 2));
|
|
@@ -289,22 +270,17 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
|
|
|
289
270
|
throw new Error("Hook with key " + sKey + " was not called. Invalid arguments passed\n" + oScope);
|
|
290
271
|
}
|
|
291
272
|
|
|
292
|
-
|
|
273
|
+
aHooks.map((oHook) => {
|
|
293
274
|
if (oHook.key === MASTER_HOOK_KEY) {
|
|
294
275
|
var oCall = {};
|
|
295
276
|
var oHandlerContext = oHook.handlerContext == null ? oHook.target : oHook.handlerContext;
|
|
296
277
|
|
|
297
278
|
oCall[sKey] = aArguments;
|
|
298
|
-
|
|
299
|
-
|
|
279
|
+
HookUtils.TableUtils.dynamicCall(oHook.target, oCall, oHandlerContext);
|
|
300
280
|
} else if (oHook.key === sKey) {
|
|
301
|
-
|
|
281
|
+
oHook.handler.apply(oHook.handlerContext, aArguments);
|
|
302
282
|
}
|
|
303
283
|
});
|
|
304
|
-
|
|
305
|
-
aReturnValues = getValidReturnValues(mHookMetadata, aReturnValues);
|
|
306
|
-
|
|
307
|
-
return aReturnValues;
|
|
308
284
|
};
|
|
309
285
|
|
|
310
286
|
/**
|
|
@@ -444,7 +420,7 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
|
|
|
444
420
|
|
|
445
421
|
if ("arguments" in mCurrent[sProperty]) {
|
|
446
422
|
aForbiddenTypes.forEach(function(sForbiddenType) {
|
|
447
|
-
if (mCurrent[sProperty].arguments.
|
|
423
|
+
if (mCurrent[sProperty].arguments.includes(sForbiddenType)) {
|
|
448
424
|
throw new Error("Forbidden type found in metadata of hook " + sCurrentKey + ": " + sForbiddenType);
|
|
449
425
|
}
|
|
450
426
|
});
|
|
@@ -482,14 +458,6 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
|
|
|
482
458
|
}
|
|
483
459
|
}
|
|
484
460
|
|
|
485
|
-
aArguments.map(function(vArgument) {
|
|
486
|
-
if (vArgument === null) {
|
|
487
|
-
return undefined;
|
|
488
|
-
} else {
|
|
489
|
-
return vArgument;
|
|
490
|
-
}
|
|
491
|
-
});
|
|
492
|
-
|
|
493
461
|
return aArguments;
|
|
494
462
|
}
|
|
495
463
|
|
|
@@ -506,28 +474,6 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
|
|
|
506
474
|
});
|
|
507
475
|
}
|
|
508
476
|
|
|
509
|
-
function getValidReturnValues(mHookMetadata, aValues) {
|
|
510
|
-
if (!mHookMetadata.returnValue) {
|
|
511
|
-
return undefined;
|
|
512
|
-
}
|
|
513
|
-
|
|
514
|
-
var vType = mHookMetadata.returnValue;
|
|
515
|
-
|
|
516
|
-
return aValues.filter(function(vValue) {
|
|
517
|
-
if (vValue == null) {
|
|
518
|
-
return false;
|
|
519
|
-
} else if (typeof vType === "function") {
|
|
520
|
-
return vType(vValue);
|
|
521
|
-
} else if (vType === "Promise") {
|
|
522
|
-
return vValue instanceof Promise;
|
|
523
|
-
} else if (vType.startsWith("class:")) {
|
|
524
|
-
return HookUtils.TableUtils.isA(vValue, vType.substring(6));
|
|
525
|
-
} else {
|
|
526
|
-
return DataType.getType(vType).isValid(vValue);
|
|
527
|
-
}
|
|
528
|
-
});
|
|
529
|
-
}
|
|
530
|
-
|
|
531
477
|
function validateChangeReason(sReason) {
|
|
532
478
|
return typeof sReason === "string" && Object.values(ChangeReason).includes(sReason);
|
|
533
479
|
}
|
|
@@ -42,7 +42,7 @@ sap.ui.define([
|
|
|
42
42
|
* Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Menu...</code>
|
|
43
43
|
*
|
|
44
44
|
* @author SAP SE
|
|
45
|
-
* @version 1.
|
|
45
|
+
* @version 1.123.0
|
|
46
46
|
* @namespace
|
|
47
47
|
* @alias sap.ui.table.utils._MenuUtils
|
|
48
48
|
* @private
|
|
@@ -172,7 +172,7 @@ sap.ui.define([
|
|
|
172
172
|
var sCellFilterMenuItemId = oTable._oCellContextMenu.getId() + "-cellfilter";
|
|
173
173
|
var oCellFilterMenuItem = Element.getElementById(sCellFilterMenuItemId);
|
|
174
174
|
|
|
175
|
-
if (oTable.getEnableCellFilter() && oColumn &&
|
|
175
|
+
if (oTable.getEnableCellFilter() && oColumn?.isFilterableByMenu() && !oRow.isGroupHeader() && !oRow.isSummary()) {
|
|
176
176
|
if (!oCellFilterMenuItem) {
|
|
177
177
|
oCellFilterMenuItem = new MenuItem({
|
|
178
178
|
id: sCellFilterMenuItemId,
|
|
@@ -193,7 +193,7 @@ sap.ui.define([
|
|
|
193
193
|
oTable._oCellContextMenu.removeItem(oCellFilterMenuItem);
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
-
MenuUtils.TableUtils.Hook.call(oTable, MenuUtils.TableUtils.Hook.Keys.Table.
|
|
196
|
+
MenuUtils.TableUtils.Hook.call(oTable, MenuUtils.TableUtils.Hook.Keys.Table.OpenContextMenu, oCellInfo, oTable._oCellContextMenu);
|
|
197
197
|
|
|
198
198
|
if (oTable._oCellContextMenu.getItems().length === 0) {
|
|
199
199
|
return;
|
|
@@ -208,31 +208,9 @@ sap.ui.define([
|
|
|
208
208
|
*
|
|
209
209
|
* @param {sap.ui.table.Table} oTable Instance of the table.
|
|
210
210
|
* @private
|
|
211
|
-
* @see _closeCustomContentCellContextMenu
|
|
212
|
-
* @see _closeDefaultContentCellContextMenu
|
|
213
211
|
*/
|
|
214
212
|
closeContentCellContextMenu: function(oTable) {
|
|
215
|
-
MenuUtils._closeCustomContentCellContextMenu(oTable);
|
|
216
|
-
MenuUtils._closeDefaultContentCellContextMenu(oTable);
|
|
217
|
-
},
|
|
218
|
-
|
|
219
|
-
/**
|
|
220
|
-
* Closes the currently open custom content cell context menu.
|
|
221
|
-
*
|
|
222
|
-
* @param {sap.ui.table.Table} oTable Instance of the table.
|
|
223
|
-
* @private
|
|
224
|
-
*/
|
|
225
|
-
_closeCustomContentCellContextMenu: function(oTable) {
|
|
226
213
|
oTable.getContextMenu()?.close?.(); // sap.ui.core.IContextMenu does not contain "close".
|
|
227
|
-
},
|
|
228
|
-
|
|
229
|
-
/**
|
|
230
|
-
* Closes the currently open default content cell context menu.
|
|
231
|
-
*
|
|
232
|
-
* @param {sap.ui.table.Table} oTable Instance of the table.
|
|
233
|
-
* @private
|
|
234
|
-
*/
|
|
235
|
-
_closeDefaultContentCellContextMenu: function(oTable) {
|
|
236
214
|
oTable._oCellContextMenu?.close();
|
|
237
215
|
},
|
|
238
216
|
|