@openui5/sap.ui.layout 1.91.0 → 1.93.2
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/.reuse/dep5 +46 -0
- package/THIRDPARTY.txt +59 -1
- package/package.json +2 -2
- package/src/sap/ui/layout/.library +1 -1
- package/src/sap/ui/layout/AlignedFlowLayout.js +1 -1
- package/src/sap/ui/layout/AssociativeSplitter.js +1 -1
- package/src/sap/ui/layout/BlockLayout.js +1 -1
- package/src/sap/ui/layout/BlockLayoutCell.js +1 -1
- package/src/sap/ui/layout/BlockLayoutCellData.js +1 -1
- package/src/sap/ui/layout/BlockLayoutRow.js +2 -2
- package/src/sap/ui/layout/DynamicSideContent.js +4 -4
- package/src/sap/ui/layout/FixFlex.js +1 -1
- package/src/sap/ui/layout/Grid.js +1 -1
- package/src/sap/ui/layout/GridData.js +1 -1
- package/src/sap/ui/layout/GridRenderer.js +1 -1
- package/src/sap/ui/layout/HorizontalLayout.js +1 -1
- package/src/sap/ui/layout/PaneContainer.js +40 -2
- package/src/sap/ui/layout/ResponsiveFlowLayout.js +1 -1
- package/src/sap/ui/layout/ResponsiveFlowLayoutData.js +1 -1
- package/src/sap/ui/layout/ResponsiveSplitter.js +1 -1
- package/src/sap/ui/layout/ResponsiveSplitterPage.js +1 -1
- package/src/sap/ui/layout/SplitPane.js +13 -4
- package/src/sap/ui/layout/Splitter.js +2 -2
- package/src/sap/ui/layout/SplitterLayoutData.js +6 -2
- package/src/sap/ui/layout/VerticalLayout.js +1 -1
- package/src/sap/ui/layout/changeHandler/AddFormContainer.js +49 -22
- package/src/sap/ui/layout/changeHandler/AddFormField.js +40 -30
- package/src/sap/ui/layout/changeHandler/AddSimpleFormField.js +42 -27
- package/src/sap/ui/layout/changeHandler/AddSimpleFormGroup.js +76 -60
- package/src/sap/ui/layout/changeHandler/HideSimpleForm.js +166 -92
- package/src/sap/ui/layout/changeHandler/MoveSimpleForm.js +185 -141
- package/src/sap/ui/layout/changeHandler/RenameFormContainer.js +45 -35
- package/src/sap/ui/layout/changeHandler/RenameSimpleForm.js +13 -9
- package/src/sap/ui/layout/changeHandler/UnhideSimpleForm.js +64 -49
- package/src/sap/ui/layout/cssgrid/CSSGrid.js +1 -1
- package/src/sap/ui/layout/cssgrid/GridBasicLayout.js +1 -1
- package/src/sap/ui/layout/cssgrid/GridBoxLayout.js +1 -1
- package/src/sap/ui/layout/cssgrid/GridBoxLayoutStyleHelper.js +1 -1
- package/src/sap/ui/layout/cssgrid/GridItemLayoutData.js +1 -1
- package/src/sap/ui/layout/cssgrid/GridLayoutBase.js +1 -1
- package/src/sap/ui/layout/cssgrid/GridLayoutDelegate.js +1 -1
- package/src/sap/ui/layout/cssgrid/GridResponsiveLayout.js +1 -1
- package/src/sap/ui/layout/cssgrid/GridSettings.js +1 -1
- package/src/sap/ui/layout/cssgrid/ResponsiveColumnItemLayoutData.js +1 -1
- package/src/sap/ui/layout/cssgrid/ResponsiveColumnLayout.js +1 -1
- package/src/sap/ui/layout/designtime/form/SimpleForm.designtime.js +7 -2
- package/src/sap/ui/layout/form/ColumnContainerData.js +1 -1
- package/src/sap/ui/layout/form/ColumnElementData.js +1 -1
- package/src/sap/ui/layout/form/ColumnLayout.js +8 -5
- package/src/sap/ui/layout/form/ColumnLayoutRenderer.js +4 -5
- package/src/sap/ui/layout/form/Form.js +3 -3
- package/src/sap/ui/layout/form/FormContainer.js +3 -3
- package/src/sap/ui/layout/form/FormElement.js +2 -4
- package/src/sap/ui/layout/form/FormLayout.js +61 -5
- package/src/sap/ui/layout/form/FormLayoutRenderer.js +30 -19
- package/src/sap/ui/layout/form/GridContainerData.js +1 -1
- package/src/sap/ui/layout/form/GridElementData.js +1 -1
- package/src/sap/ui/layout/form/GridLayout.js +1 -1
- package/src/sap/ui/layout/form/GridLayoutRenderer.js +5 -9
- package/src/sap/ui/layout/form/ResponsiveGridLayout.js +8 -10
- package/src/sap/ui/layout/form/ResponsiveLayout.js +9 -4
- package/src/sap/ui/layout/form/SemanticFormElement.js +53 -36
- package/src/sap/ui/layout/form/SimpleForm.js +12 -10
- package/src/sap/ui/layout/library.js +4 -2
- package/src/sap/ui/layout/themes/base/GridLayout.less +0 -17
- package/src/sap/ui/layout/themes/base/ResponsiveLayout.less +0 -10
- package/src/sap/ui/layout/themes/base/ResponsiveSplitter.less +4 -2
- package/src/sap/ui/layout/themes/base/Splitter.less +1 -9
|
@@ -6,10 +6,9 @@
|
|
|
6
6
|
|
|
7
7
|
sap.ui.define([
|
|
8
8
|
'sap/ui/core/library',
|
|
9
|
-
'sap/ui/core/theming/Parameters',
|
|
10
9
|
'sap/ui/layout/library',
|
|
11
10
|
'sap/ui/layout/form/Form'
|
|
12
|
-
], function(coreLibrary,
|
|
11
|
+
], function(coreLibrary, library, Form) {
|
|
13
12
|
"use strict";
|
|
14
13
|
|
|
15
14
|
// shortcut for sap.ui.core.TitleLevel
|
|
@@ -60,11 +59,7 @@ sap.ui.define([
|
|
|
60
59
|
rm.openEnd();
|
|
61
60
|
|
|
62
61
|
// Form header
|
|
63
|
-
|
|
64
|
-
if (!oToolbar) {
|
|
65
|
-
sSize = themingParameters.get('sap.ui.layout.FormLayout:_sap_ui_layout_FormLayout_FormTitleSize');
|
|
66
|
-
}
|
|
67
|
-
this.renderHeader(rm, oToolbar, oForm.getTitle(), undefined, false, sSize, oForm.getId());
|
|
62
|
+
this.renderHeader(rm, oToolbar, oForm.getTitle(), undefined, false, oLayout._sFormTitleSize, oForm.getId());
|
|
68
63
|
|
|
69
64
|
this.renderContainers(rm, oLayout, oForm);
|
|
70
65
|
|
|
@@ -117,7 +112,7 @@ sap.ui.define([
|
|
|
117
112
|
|
|
118
113
|
rm.openEnd();
|
|
119
114
|
|
|
120
|
-
this.renderHeader(rm, oToolbar, oTitle, oContainer._oExpandButton, bExpandable,
|
|
115
|
+
this.renderHeader(rm, oToolbar, oTitle, oContainer._oExpandButton, bExpandable, oLayout._sFormSubTitleSize, oContainer.getId());
|
|
121
116
|
|
|
122
117
|
if (bExpandable) {
|
|
123
118
|
rm.openStart("div", oContainer.getId() + "-content");
|
|
@@ -166,21 +161,28 @@ sap.ui.define([
|
|
|
166
161
|
|
|
167
162
|
};
|
|
168
163
|
|
|
169
|
-
|
|
170
|
-
* Renders the title for a Form or a FormContainer
|
|
164
|
+
/**
|
|
165
|
+
* Renders the title for a <code>Form</code> or a <code>FormContainer</code>
|
|
166
|
+
*
|
|
171
167
|
* If this function is overwritten in a Layout please use the right IDs to be sure aria-describedby works fine
|
|
168
|
+
*
|
|
169
|
+
* @param {sap.ui.core.RenderManager} rm the RenderManager that can be used for writing to the Render-Output-Buffer
|
|
170
|
+
* @param {string|sap.ui.core.Title} oTitle Title text or <code>Title</code> element
|
|
171
|
+
* @param {sap.ui.core.Control} [oExpandButton] Button control for expander
|
|
172
|
+
* @param {boolean} [bExpander] If <code>true</code> an expander is rendered
|
|
173
|
+
* @param {string} sLevel Level of the title. If not set <code>H5</code> is used as default
|
|
174
|
+
* @param {string} sContentId ID of the header element (<code>Form</code> or <code>FormContainer</code>)
|
|
172
175
|
*/
|
|
173
|
-
FormLayoutRenderer.renderTitle = function(rm, oTitle, oExpandButton, bExpander,
|
|
176
|
+
FormLayoutRenderer.renderTitle = function(rm, oTitle, oExpandButton, bExpander, sLevel, sContentId){
|
|
174
177
|
|
|
175
178
|
if (oTitle) {
|
|
176
|
-
//determine title level -> if not set use H4 as default
|
|
177
|
-
var sLevel = themingParameters.get('sap.ui.layout.FormLayout:_sap_ui_layout_FormLayout_FormSubTitleSize');
|
|
178
|
-
if (sLevelDefault) {
|
|
179
|
-
sLevel = sLevelDefault;
|
|
180
|
-
}
|
|
181
179
|
if (typeof oTitle !== "string" && oTitle.getLevel() != TitleLevel.Auto) {
|
|
182
180
|
sLevel = oTitle.getLevel();
|
|
183
181
|
}
|
|
182
|
+
if (!sLevel) {
|
|
183
|
+
// use H5 as fallback -> but it should be set from outside
|
|
184
|
+
sLevel = "H5";
|
|
185
|
+
}
|
|
184
186
|
|
|
185
187
|
// just reuse TextView class because there font size & co. is already defined
|
|
186
188
|
if ( typeof oTitle !== "string" ) {
|
|
@@ -238,16 +240,25 @@ sap.ui.define([
|
|
|
238
240
|
|
|
239
241
|
};
|
|
240
242
|
|
|
241
|
-
|
|
243
|
+
/**
|
|
242
244
|
* Renders the header, containing Toolbar or Title, for a Form or a FormContainer
|
|
245
|
+
*
|
|
243
246
|
* If this function is overwritten in a Layout please use the right IDs to be sure aria-describedby works fine
|
|
247
|
+
*
|
|
248
|
+
* @param {sap.ui.core.RenderManager} rm the RenderManager that can be used for writing to the Render-Output-Buffer
|
|
249
|
+
* @param {sap.ui.core.Toolbar} [oToolbar] <code>Toolbar</code> control
|
|
250
|
+
* @param {string|sap.ui.core.Title} [oTitle] Title text or <code>Title</code> element
|
|
251
|
+
* @param {sap.ui.core.Control} [oExpandButton] Button control for expander
|
|
252
|
+
* @param {boolean} [bExpander] If <code>true</code> an expander is rendered
|
|
253
|
+
* @param {string} sLevel Level of the title.
|
|
254
|
+
* @param {string} sContentId ID of the header element (<code>Form</code> or <code>FormContainer</code>)
|
|
244
255
|
*/
|
|
245
|
-
FormLayoutRenderer.renderHeader = function(rm, oToolbar, oTitle, oExpandButton, bExpander,
|
|
256
|
+
FormLayoutRenderer.renderHeader = function(rm, oToolbar, oTitle, oExpandButton, bExpander, sLevel, sContentId){
|
|
246
257
|
|
|
247
258
|
if (oToolbar) {
|
|
248
259
|
rm.renderControl(oToolbar);
|
|
249
260
|
} else {
|
|
250
|
-
this.renderTitle(rm, oTitle, oExpandButton, bExpander,
|
|
261
|
+
this.renderTitle(rm, oTitle, oExpandButton, bExpander, sLevel, sContentId);
|
|
251
262
|
}
|
|
252
263
|
|
|
253
264
|
};
|
|
@@ -92,11 +92,7 @@ sap.ui.define([
|
|
|
92
92
|
rm.openStart("tr").class("sapUiGridTitle").openEnd();
|
|
93
93
|
rm.openStart("th").attr("colspan", iTitleCells).openEnd();
|
|
94
94
|
|
|
95
|
-
|
|
96
|
-
if (!oToolbar) {
|
|
97
|
-
sSize = themingParameters.get('sap.ui.layout.FormLayout:_sap_ui_layout_FormLayout_FormTitleSize');
|
|
98
|
-
}
|
|
99
|
-
this.renderHeader(rm, oToolbar, oTitle, undefined, false, sSize, oForm.getId());
|
|
95
|
+
this.renderHeader(rm, oToolbar, oTitle, undefined, false, oLayout._sFormTitleSize, oForm.getId());
|
|
100
96
|
rm.close("th");
|
|
101
97
|
rm.close("tr");
|
|
102
98
|
}
|
|
@@ -167,7 +163,7 @@ sap.ui.define([
|
|
|
167
163
|
}
|
|
168
164
|
|
|
169
165
|
rm.openEnd();
|
|
170
|
-
this.renderHeader(rm, oToolbar, oContainer.getTitle(), oContainer._oExpandButton, bExpandable,
|
|
166
|
+
this.renderHeader(rm, oToolbar, oContainer.getTitle(), oContainer._oExpandButton, bExpandable, oLayout._sFormSubTitleSize, oContainer.getId());
|
|
171
167
|
rm.close("td");
|
|
172
168
|
rm.close("tr");
|
|
173
169
|
}
|
|
@@ -273,7 +269,7 @@ sap.ui.define([
|
|
|
273
269
|
}
|
|
274
270
|
rm.openEnd();
|
|
275
271
|
if (oContainer1) {
|
|
276
|
-
this.renderHeader(rm, oToolbar1, oTitle1, oContainer1._oExpandButton, bExpandable1,
|
|
272
|
+
this.renderHeader(rm, oToolbar1, oTitle1, oContainer1._oExpandButton, bExpandable1, oLayout._sFormSubTitleSize, oContainer1.getId());
|
|
277
273
|
}
|
|
278
274
|
rm.close("td");
|
|
279
275
|
rm.openStart("td").openEnd().close("td");
|
|
@@ -289,7 +285,7 @@ sap.ui.define([
|
|
|
289
285
|
}
|
|
290
286
|
rm.openEnd();
|
|
291
287
|
if (oContainer2) {
|
|
292
|
-
this.renderHeader(rm, oToolbar2, oTitle2, oContainer2._oExpandButton, bExpandable2,
|
|
288
|
+
this.renderHeader(rm, oToolbar2, oTitle2, oContainer2._oExpandButton, bExpandable2, oLayout._sFormSubTitleSize, oContainer2.getId());
|
|
293
289
|
}
|
|
294
290
|
rm.close("td");
|
|
295
291
|
rm.close("tr");
|
|
@@ -565,7 +561,7 @@ sap.ui.define([
|
|
|
565
561
|
|
|
566
562
|
if (aFields.length == 1 && this.getElementData(oLayout, aFields[0]) && this.getElementData(oLayout, aFields[0]).getHCells() == "full") {
|
|
567
563
|
return true;
|
|
568
|
-
}else
|
|
564
|
+
} else {
|
|
569
565
|
return false;
|
|
570
566
|
}
|
|
571
567
|
|
|
@@ -53,7 +53,7 @@ sap.ui.define([
|
|
|
53
53
|
*
|
|
54
54
|
* This control cannot be used stand-alone, it just renders a <code>Form</code>, so it must be assigned to a <code>Form</code> using the <code>layout</code> aggregation.
|
|
55
55
|
* @extends sap.ui.layout.form.FormLayout
|
|
56
|
-
* @version 1.
|
|
56
|
+
* @version 1.93.2
|
|
57
57
|
*
|
|
58
58
|
* @constructor
|
|
59
59
|
* @public
|
|
@@ -289,7 +289,7 @@ sap.ui.define([
|
|
|
289
289
|
oRm.openEnd();
|
|
290
290
|
|
|
291
291
|
// container header
|
|
292
|
-
oLayout.getRenderer().renderHeader(oRm, oToolbar, oTitle, oContainer._oExpandButton, bExpandable,
|
|
292
|
+
oLayout.getRenderer().renderHeader(oRm, oToolbar, oTitle, oContainer._oExpandButton, bExpandable, oLayout._sFormSubTitleSize, oContainer.getId());
|
|
293
293
|
|
|
294
294
|
if (oContent) {
|
|
295
295
|
oRm.openStart("div");
|
|
@@ -309,6 +309,8 @@ sap.ui.define([
|
|
|
309
309
|
|
|
310
310
|
ResponsiveGridLayout.prototype.init = function(){
|
|
311
311
|
|
|
312
|
+
FormLayout.prototype.init.apply(this, arguments);
|
|
313
|
+
|
|
312
314
|
this.mContainers = {}; //association of container to panel and Grid
|
|
313
315
|
this.oDummyLayoutData = new GridData(this.getId() + "--Dummy");
|
|
314
316
|
};
|
|
@@ -333,6 +335,8 @@ sap.ui.define([
|
|
|
333
335
|
|
|
334
336
|
ResponsiveGridLayout.prototype.onBeforeRendering = function( oEvent ){
|
|
335
337
|
|
|
338
|
+
FormLayout.prototype.onBeforeRendering.apply(this, arguments);
|
|
339
|
+
|
|
336
340
|
var oForm = this.getParent();
|
|
337
341
|
if (!oForm || !(oForm instanceof Form)) {
|
|
338
342
|
// layout not assigned to form - nothing to do
|
|
@@ -422,7 +426,7 @@ sap.ui.define([
|
|
|
422
426
|
if (this.mContainers[sContainerId][0]) {
|
|
423
427
|
var oPanel = this.mContainers[sContainerId][0];
|
|
424
428
|
return oPanel.getDomRef();
|
|
425
|
-
}else if (this.mContainers[sContainerId][1]){
|
|
429
|
+
} else if (this.mContainers[sContainerId][1]){
|
|
426
430
|
// no panel used -> return Grid
|
|
427
431
|
var oGrid = this.mContainers[sContainerId][1];
|
|
428
432
|
return oGrid.getDomRef();
|
|
@@ -904,7 +908,6 @@ sap.ui.define([
|
|
|
904
908
|
return oLayout.oDummyLayoutData;
|
|
905
909
|
}
|
|
906
910
|
|
|
907
|
-
return oLD;
|
|
908
911
|
}
|
|
909
912
|
};
|
|
910
913
|
|
|
@@ -925,12 +928,7 @@ sap.ui.define([
|
|
|
925
928
|
var oLayout = this.__myParentLayout;
|
|
926
929
|
if (!oLayout._mainGrid || !oLayout._mainGrid.__bIsUsed ) {
|
|
927
930
|
// no main grid used -> only 1 container
|
|
928
|
-
var
|
|
929
|
-
var oFirstContainer;
|
|
930
|
-
for (var i = 0; i < aContainers.length; i++) {
|
|
931
|
-
oFirstContainer = aContainers[i];
|
|
932
|
-
break;
|
|
933
|
-
}
|
|
931
|
+
var oFirstContainer = oLayout.getParent().getVisibleFormContainers()[0];
|
|
934
932
|
if (!oFirstContainer || !oLayout.mContainers[oFirstContainer.getId()] || oFirstContainer.getId() != this.__myParentContainerId) {
|
|
935
933
|
// Form seems to be invalidated (container changed) but rerendering still not done
|
|
936
934
|
// -> ignore resize, it will be rerendered soon
|
|
@@ -50,11 +50,12 @@ sap.ui.define([
|
|
|
50
50
|
* @extends sap.ui.layout.form.FormLayout
|
|
51
51
|
*
|
|
52
52
|
* @author SAP SE
|
|
53
|
-
* @version 1.
|
|
53
|
+
* @version 1.93.2
|
|
54
54
|
*
|
|
55
55
|
* @constructor
|
|
56
56
|
* @public
|
|
57
57
|
* @since 1.16.0
|
|
58
|
+
* @deprecated As of version 1.93, replaced by {@link sap.ui.layout.form.ColumnLayout ColumnLayout}
|
|
58
59
|
* @alias sap.ui.layout.form.ResponsiveLayout
|
|
59
60
|
* @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
|
|
60
61
|
*/
|
|
@@ -185,7 +186,7 @@ sap.ui.define([
|
|
|
185
186
|
oRm.openEnd();
|
|
186
187
|
|
|
187
188
|
// container header
|
|
188
|
-
oLayout.getRenderer().renderHeader(oRm, oToolbar, oTitle, oContainer._oExpandButton, bExpandable,
|
|
189
|
+
oLayout.getRenderer().renderHeader(oRm, oToolbar, oTitle, oContainer._oExpandButton, bExpandable, oLayout._sFormSubTitleSize, oContainer.getId());
|
|
189
190
|
|
|
190
191
|
if (oContent) {
|
|
191
192
|
oRm.openStart("div");
|
|
@@ -205,6 +206,8 @@ sap.ui.define([
|
|
|
205
206
|
|
|
206
207
|
ResponsiveLayout.prototype.init = function(){
|
|
207
208
|
|
|
209
|
+
FormLayout.prototype.init.apply(this, arguments);
|
|
210
|
+
|
|
208
211
|
this.mContainers = {}; //association of container to panel and ResponsiveFlowLayout
|
|
209
212
|
this._defaultLayoutData = new ResponsiveFlowLayoutData({margin: false});
|
|
210
213
|
|
|
@@ -230,6 +233,8 @@ sap.ui.define([
|
|
|
230
233
|
|
|
231
234
|
ResponsiveLayout.prototype.onBeforeRendering = function( oEvent ){
|
|
232
235
|
|
|
236
|
+
FormLayout.prototype.onBeforeRendering.apply(this, arguments);
|
|
237
|
+
|
|
233
238
|
var oForm = this.getParent();
|
|
234
239
|
if (!oForm || !(oForm instanceof Form)) {
|
|
235
240
|
// layout not assigned to form - nothing to do
|
|
@@ -318,7 +323,7 @@ sap.ui.define([
|
|
|
318
323
|
if (this.mContainers[sContainerId][0]) {
|
|
319
324
|
var oPanel = this.mContainers[sContainerId][0];
|
|
320
325
|
return oPanel.getDomRef();
|
|
321
|
-
}else if (this.mContainers[sContainerId][1]){
|
|
326
|
+
} else if (this.mContainers[sContainerId][1]){
|
|
322
327
|
// no panel used -> return RFLayout
|
|
323
328
|
var oRFLayout = this.mContainers[sContainerId][1];
|
|
324
329
|
return oRFLayout.getDomRef();
|
|
@@ -624,7 +629,7 @@ sap.ui.define([
|
|
|
624
629
|
}
|
|
625
630
|
};
|
|
626
631
|
}
|
|
627
|
-
}else if (oContainer) {
|
|
632
|
+
} else if (oContainer) {
|
|
628
633
|
oRFLayout._getAccessibleRole = function() {
|
|
629
634
|
|
|
630
635
|
var oContainer = sap.ui.getCore().byId(this.__myParentContainerId);
|
|
@@ -30,7 +30,7 @@ sap.ui.define([
|
|
|
30
30
|
* @extends sap.ui.layout.form.FormElement
|
|
31
31
|
*
|
|
32
32
|
* @author SAP SE
|
|
33
|
-
* @version 1.
|
|
33
|
+
* @version 1.93.2
|
|
34
34
|
*
|
|
35
35
|
* @constructor
|
|
36
36
|
* @public
|
|
@@ -143,7 +143,7 @@ sap.ui.define([
|
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
145
|
|
|
146
|
-
|
|
146
|
+
FormElement.prototype.enhanceAccessibilityState.apply(this, arguments);
|
|
147
147
|
|
|
148
148
|
};
|
|
149
149
|
|
|
@@ -186,9 +186,11 @@ sap.ui.define([
|
|
|
186
186
|
var aDelemiters = this.getAggregation("_delimiters", []);
|
|
187
187
|
for (var i = 0; i < aFields.length; i++) {
|
|
188
188
|
var oField = aFields[i];
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
189
|
+
if (oField.getVisible()) {
|
|
190
|
+
if (aFieldsForRendering.length > 0 && aDelemiters[i - 1]) {
|
|
191
|
+
aFieldsForRendering.push(aDelemiters[i - 1]);
|
|
192
|
+
}
|
|
193
|
+
aFieldsForRendering.push(oField);
|
|
192
194
|
}
|
|
193
195
|
}
|
|
194
196
|
} else {
|
|
@@ -214,11 +216,11 @@ sap.ui.define([
|
|
|
214
216
|
// it's the FormElement
|
|
215
217
|
if (oChanges.name === "fields") {
|
|
216
218
|
_fieldChanged.call(this, oChanges.child, oChanges.mutation);
|
|
217
|
-
}else if (oChanges.name === "_editable") {
|
|
219
|
+
} else if (oChanges.name === "_editable") {
|
|
218
220
|
_editableChanged.call(this, oChanges.current);
|
|
219
|
-
}else if (oChanges.name === "delimiter") {
|
|
221
|
+
} else if (oChanges.name === "delimiter") {
|
|
220
222
|
_delimiterChanged.call(this, oChanges.current);
|
|
221
|
-
}else if (oChanges.name === "fieldLabels") {
|
|
223
|
+
} else if (oChanges.name === "fieldLabels") {
|
|
222
224
|
_fieldLabelsChanged.call(this, oChanges.mutation, oChanges.child);
|
|
223
225
|
}
|
|
224
226
|
} else {
|
|
@@ -252,19 +254,17 @@ sap.ui.define([
|
|
|
252
254
|
if (!oField.isA("sap.ui.core.IFormContent") || !oField.isA("sap.ui.core.ISemanticFormContent")) {
|
|
253
255
|
throw new Error(oField + " is not valid Form content. " + this); // only support allowed Fields
|
|
254
256
|
}
|
|
257
|
+
var aProperties = ["visible"];
|
|
255
258
|
if (oField.getFormValueProperty) {
|
|
256
|
-
|
|
257
|
-
properties: [oField.getFormValueProperty()]
|
|
258
|
-
});
|
|
259
|
+
aProperties.push(oField.getFormValueProperty());
|
|
259
260
|
} else if (oField.getMetadata().getProperty("value")) {
|
|
260
|
-
|
|
261
|
-
properties: ["value"]
|
|
262
|
-
});
|
|
261
|
+
aProperties.push("value");
|
|
263
262
|
} else if (oField.getMetadata().getProperty("text")) {
|
|
264
|
-
|
|
265
|
-
properties: ["text"]
|
|
266
|
-
});
|
|
263
|
+
aProperties.push("text");
|
|
267
264
|
}
|
|
265
|
+
this._oObserver.observe(oField, {
|
|
266
|
+
properties: aProperties
|
|
267
|
+
});
|
|
268
268
|
} else {
|
|
269
269
|
// unobserve is done in FormElement
|
|
270
270
|
var oLayoutData = oField.getLayoutData();
|
|
@@ -280,6 +280,8 @@ sap.ui.define([
|
|
|
280
280
|
_updateControlsForDisplay.call(this, true);
|
|
281
281
|
}
|
|
282
282
|
|
|
283
|
+
_updateLabelText.call(this); // to hide labels of invisible Field
|
|
284
|
+
|
|
283
285
|
}
|
|
284
286
|
|
|
285
287
|
function _delimiterChanged(sDelimiter) {
|
|
@@ -319,6 +321,14 @@ sap.ui.define([
|
|
|
319
321
|
if (!this.getProperty("_editable")) {
|
|
320
322
|
_updateDisplayText.call(this, false);
|
|
321
323
|
}
|
|
324
|
+
} else if (oChanges.name === "visible") {
|
|
325
|
+
if (this.getProperty("_editable")) {
|
|
326
|
+
_updateControlsForEdit.call(this);
|
|
327
|
+
} else {
|
|
328
|
+
_updateControlsForDisplay.call(this, true);
|
|
329
|
+
}
|
|
330
|
+
_updateLabelText.call(this); // to hide labels of invisible Field
|
|
331
|
+
this.invalidate(); // to force rerendering
|
|
322
332
|
}
|
|
323
333
|
|
|
324
334
|
}
|
|
@@ -397,21 +407,23 @@ sap.ui.define([
|
|
|
397
407
|
|
|
398
408
|
for (var i = 0; i < aFields.length; i++) {
|
|
399
409
|
var oField = aFields[i];
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
410
|
+
if (oField.getVisible()) {
|
|
411
|
+
var sProperyName = oField.getFormValueProperty ? oField.getFormValueProperty() : null;
|
|
412
|
+
var vText;
|
|
413
|
+
if (oField.getFormFormattedValue) {
|
|
414
|
+
vText = oField.getFormFormattedValue();
|
|
415
|
+
if (vText instanceof Promise) {
|
|
416
|
+
bAsync = true;
|
|
417
|
+
}
|
|
418
|
+
} else if (sProperyName) {
|
|
419
|
+
vText = oField.getProperty(sProperyName);
|
|
420
|
+
} else if (oField.getMetadata().getProperty("value")) {
|
|
421
|
+
vText = oField.getValue();
|
|
422
|
+
} else if (oField.getMetadata().getProperty("text")) {
|
|
423
|
+
vText = oField.getText();
|
|
406
424
|
}
|
|
407
|
-
|
|
408
|
-
vText = oField.getProperty(sProperyName);
|
|
409
|
-
} else if (oField.getMetadata().getProperty("value")) {
|
|
410
|
-
vText = oField.getValue();
|
|
411
|
-
} else if (oField.getMetadata().getProperty("text")) {
|
|
412
|
-
vText = oField.getText();
|
|
425
|
+
aTexts.push(vText);
|
|
413
426
|
}
|
|
414
|
-
aTexts.push(vText);
|
|
415
427
|
}
|
|
416
428
|
|
|
417
429
|
oDisplay._bNoForceUpdate = true; // prevent double update, as setText might trigger re-rendering
|
|
@@ -451,13 +463,16 @@ sap.ui.define([
|
|
|
451
463
|
if (!this.getLabel()) {
|
|
452
464
|
// only use if no Label is set on FormElement level
|
|
453
465
|
var aFieldLabels = this.getFieldLabels();
|
|
466
|
+
var aFields = this.getFields();
|
|
454
467
|
var aTexts = [];
|
|
455
468
|
for (var i = 0; i < aFieldLabels.length; i++) {
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
469
|
+
if (aFields[i] && aFields[i].getVisible()) { // if Field not already assigned update if assigned
|
|
470
|
+
var oFieldLabel = aFieldLabels[i];
|
|
471
|
+
if (typeof oFieldLabel === "string") {
|
|
472
|
+
aTexts.push(oFieldLabel);
|
|
473
|
+
} else {
|
|
474
|
+
aTexts.push(oFieldLabel.getText());
|
|
475
|
+
}
|
|
461
476
|
}
|
|
462
477
|
}
|
|
463
478
|
|
|
@@ -471,7 +486,9 @@ sap.ui.define([
|
|
|
471
486
|
// the used Layout can be unknown. But latest on rendering it is known, so there the LayoutData can be set latest.
|
|
472
487
|
function _updateLayoutData() {
|
|
473
488
|
|
|
474
|
-
var aFields = this.getFields()
|
|
489
|
+
var aFields = this.getFields().filter(function(oField) {
|
|
490
|
+
return oField.getVisible();
|
|
491
|
+
});
|
|
475
492
|
var aDelemiters = this.getAggregation("_delimiters", []);
|
|
476
493
|
var oFormContainer = this.getParent();
|
|
477
494
|
var oForm = oFormContainer && oFormContainer.getParent();
|
|
@@ -67,7 +67,7 @@ sap.ui.define([
|
|
|
67
67
|
* <b>Note:</b> If a more complex form is needed, use the <code>{@link sap.ui.layout.form.Form Form}</code> control instead.
|
|
68
68
|
*
|
|
69
69
|
* @extends sap.ui.core.Control
|
|
70
|
-
* @version 1.
|
|
70
|
+
* @version 1.93.2
|
|
71
71
|
*
|
|
72
72
|
* @constructor
|
|
73
73
|
* @public
|
|
@@ -135,6 +135,8 @@ sap.ui.define([
|
|
|
135
135
|
* as its responsiveness uses the space available in the best way possible.
|
|
136
136
|
*
|
|
137
137
|
* <b>Note</b> If possible, set the <code>layout</code> before adding content to prevent calculations for the default layout.
|
|
138
|
+
*
|
|
139
|
+
* <b>Note</b> The <code>ResponsiveLayout</code> has been deprecated and must no longer be used. For compatibility reasons the default could not be changed.
|
|
138
140
|
*/
|
|
139
141
|
layout : {type : "sap.ui.layout.form.SimpleFormLayout", group : "Misc", defaultValue : SimpleFormLayout.ResponsiveLayout},
|
|
140
142
|
|
|
@@ -309,19 +311,19 @@ sap.ui.define([
|
|
|
309
311
|
* <li>Add a <code>Label</code> control to start a new row (<code>{@link sap.ui.layout.form.FormElement FormElement}</code>).</li>
|
|
310
312
|
* <li>Add controls as input fields, text fields or other as needed.</li>
|
|
311
313
|
* <li>Use <code>LayoutData</code> to influence the layout for special cases in the single controls.
|
|
312
|
-
* For example, if a <code>
|
|
313
|
-
* the form content is weighted using
|
|
314
|
-
*
|
|
315
|
-
* If your input controls should influence their width, you can add <code>sap.ui.layout.
|
|
314
|
+
* For example, if a <code>ColumnLayout</code> is used as a layout,
|
|
315
|
+
* the form content is weighted using 4 cells for the labels and 8 cells for the field part, for large size.
|
|
316
|
+
* If there is only little space, the labels are above the fields and each field uses 12 cells.
|
|
317
|
+
* If your input controls should influence their width, you can add <code>sap.ui.layout.ColumnElementData</code>
|
|
316
318
|
* to them via <code>setLayoutData</code> method.
|
|
317
|
-
* Ensure that the sum of the weights in the <code>
|
|
319
|
+
* Ensure that the sum of the weights in the <code>ColumnElementData</code> is not more than 12,
|
|
318
320
|
* as this is the total width of the input control part of each form row.</li>
|
|
319
321
|
* </ul>
|
|
320
|
-
* Example for a row where the <code>Input</code>
|
|
322
|
+
* Example for a row where the <code>Input</code> uses 6 cells and the second <code>Input</code> uses 2 cells (using <code>ColumnElementData</code>):
|
|
321
323
|
* <pre>
|
|
322
324
|
* new sap.m.Label({text:"Label"});
|
|
323
|
-
* new sap.m.Input({value:"
|
|
324
|
-
* new sap.m.Input({value:"
|
|
325
|
+
* new sap.m.Input({value:"6 cells", layoutData: new sap.ui.layout.ColumnElementData({cellsLarge: 6, cellsSmall: 8})}),
|
|
326
|
+
* new sap.m.Input({value:"2 cells", layoutData: new sap.ui.layout.ColumnElementData({cellsLarge: 2, cellsSmall: 4})}),
|
|
325
327
|
* </pre>
|
|
326
328
|
*
|
|
327
329
|
* For example, if a <code>ResponsiveGridLayout</code> is used as a layout, there are 12 cells in one row.
|
|
@@ -410,7 +412,7 @@ sap.ui.define([
|
|
|
410
412
|
var oSimpleForm = this.getParent();
|
|
411
413
|
if (oSimpleForm) {
|
|
412
414
|
return oSimpleForm.getAriaLabelledBy();
|
|
413
|
-
}else
|
|
415
|
+
} else {
|
|
414
416
|
return null;
|
|
415
417
|
}
|
|
416
418
|
};
|
|
@@ -20,14 +20,15 @@ sap.ui.define([
|
|
|
20
20
|
* @namespace
|
|
21
21
|
* @name sap.ui.layout
|
|
22
22
|
* @author SAP SE
|
|
23
|
-
* @version 1.
|
|
23
|
+
* @version 1.93.2
|
|
24
|
+
* @since 1.15
|
|
24
25
|
* @public
|
|
25
26
|
*/
|
|
26
27
|
|
|
27
28
|
// delegate further initialization of this library to the Core
|
|
28
29
|
sap.ui.getCore().initLibrary({
|
|
29
30
|
name : "sap.ui.layout",
|
|
30
|
-
version: "1.
|
|
31
|
+
version: "1.93.2",
|
|
31
32
|
dependencies: ["sap.ui.core"],
|
|
32
33
|
designtime: "sap/ui/layout/designtime/library.designtime",
|
|
33
34
|
types: [
|
|
@@ -543,6 +544,7 @@ sap.ui.define([
|
|
|
543
544
|
/**
|
|
544
545
|
* Uses the <code>ResponsiveLayout</code> layout to render the <code>SimpleForm</code> control
|
|
545
546
|
* @public
|
|
547
|
+
* @deprecated As of version 1.93, replaced by {@link sap.ui.layout.form.SimpleFormLayout.ColumnLayout ColumnLayout}
|
|
546
548
|
*/
|
|
547
549
|
ResponsiveLayout : "ResponsiveLayout",
|
|
548
550
|
|
|
@@ -22,23 +22,6 @@
|
|
|
22
22
|
position: relative;
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
/* Internet Explorer / Edge does not support "text-align: start"!
|
|
26
|
-
Therefore the title needs to be positioned separately for RTL and LTR mode */
|
|
27
|
-
/* TODO remove after the end of support for Internet Explorer */
|
|
28
|
-
html[data-sap-ui-browser^=ie] .sapUiGrid th > .sapUiFormTitle,
|
|
29
|
-
html[data-sap-ui-browser^=ie] .sapUiGrid td > .sapUiFormTitle,
|
|
30
|
-
html[data-sap-ui-browser^=ed] .sapUiGrid th > .sapUiFormTitle,
|
|
31
|
-
html[data-sap-ui-browser^=ed] .sapUiGrid td > .sapUiFormTitle {
|
|
32
|
-
text-align: left;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
html[dir=rtl][data-sap-ui-browser^=ie] .sapUiGrid th > .sapUiFormTitle,
|
|
36
|
-
html[dir=rtl][data-sap-ui-browser^=ie] .sapUiGrid td > .sapUiFormTitle,
|
|
37
|
-
html[dir=rtl][data-sap-ui-browser^=ed] .sapUiGrid th > .sapUiFormTitle,
|
|
38
|
-
html[dir=rtl][data-sap-ui-browser^=ed] .sapUiGrid td > .sapUiFormTitle {
|
|
39
|
-
text-align: right;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
25
|
.sapUiGridHeader.sapUiFormContainerTitle > .sapUiFormTitle.sapUiFormTitleExpandable{
|
|
43
26
|
padding-left: 2.25rem;
|
|
44
27
|
}
|
|
@@ -19,16 +19,6 @@
|
|
|
19
19
|
text-align: end;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
html[data-sap-ui-browser^=ie] .sapUiRLElementWithLabel > .sapUiRFLRow:first-child > .sapUiRFLContainer:first-child:not(.sapUiRFLFullLength) > div,
|
|
23
|
-
html[data-sap-ui-browser^=ed] .sapUiRLElementWithLabel > .sapUiRFLRow:first-child > .sapUiRFLContainer:first-child:not(.sapUiRFLFullLength) > div {
|
|
24
|
-
text-align: right;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
html[dir=rtl][data-sap-ui-browser^=ie] .sapUiRLElementWithLabel > .sapUiRFLRow:first-child > .sapUiRFLContainer:first-child:not(.sapUiRFLFullLength) > div,
|
|
28
|
-
html[dir=rtl][data-sap-ui-browser^=ed] .sapUiRLElementWithLabel > .sapUiRFLRow:first-child > .sapUiRFLContainer:first-child:not(.sapUiRFLFullLength) > div {
|
|
29
|
-
text-align: left;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
22
|
.sapUiFormResLayout > div {
|
|
33
23
|
padding: 1rem;
|
|
34
24
|
box-sizing: border-box;
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
@_sap_ui_layout_ResponsiveSplitter_PaginatorHeight: 2.5rem;
|
|
7
7
|
@_sap_ui_layout_ResponsiveSplitter_PaginatorButtonWidth: 2.5rem;
|
|
8
8
|
@_sap_ui_layout_ResponsiveSplitter_PaginatorButtonHeight: 2.375rem;
|
|
9
|
+
@_sap_ui_layout_ResponsiveSplitter_PaginatorButtonFocusBorderRadius: unset;
|
|
9
10
|
|
|
10
11
|
.sapUiResponsiveSplitter {
|
|
11
12
|
width: 100%;
|
|
@@ -52,7 +53,7 @@
|
|
|
52
53
|
height: @_sap_ui_layout_ResponsiveSplitter_PaginatorButtonHeight;
|
|
53
54
|
cursor: pointer;
|
|
54
55
|
background-color: transparent;
|
|
55
|
-
border-radius:
|
|
56
|
+
border-radius: @sapUiButtonBorderCornerRadius;
|
|
56
57
|
position: relative;
|
|
57
58
|
|
|
58
59
|
&::after {
|
|
@@ -77,7 +78,8 @@
|
|
|
77
78
|
bottom: 0;
|
|
78
79
|
right: 0;
|
|
79
80
|
left: 0;
|
|
80
|
-
border:
|
|
81
|
+
border: @sapUiContentFocusWidth @sapUiContentFocusStyle @sapUiContentFocusColor;
|
|
82
|
+
border-radius: @_sap_ui_layout_ResponsiveSplitter_PaginatorButtonFocusBorderRadius;
|
|
81
83
|
}
|
|
82
84
|
|
|
83
85
|
&:hover {
|
|
@@ -42,7 +42,6 @@
|
|
|
42
42
|
-webkit-touch-callout: none;
|
|
43
43
|
-webkit-user-select: none;
|
|
44
44
|
-moz-user-select: none;
|
|
45
|
-
-ms-user-select: none;
|
|
46
45
|
user-select: none;
|
|
47
46
|
background-color: @sapUiShellBackground;
|
|
48
47
|
box-sizing: border-box;
|
|
@@ -274,13 +273,6 @@
|
|
|
274
273
|
right: 0;
|
|
275
274
|
bottom: 0;
|
|
276
275
|
left: 0;
|
|
277
|
-
border:
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
html[data-sap-ui-browser^="ie"].sap-desktop, // TODO remove after the end of support for Internet Explorer
|
|
282
|
-
html[data-sap-ui-browser^="ed"].sap-desktop {
|
|
283
|
-
.sapUiLoSplitter > .sapUiLoSplitterBar:focus::after {
|
|
284
|
-
border-style: dashed;
|
|
276
|
+
border: @sapUiContentFocusWidth @sapUiContentFocusStyle @sapUiContentFocusColor;
|
|
285
277
|
}
|
|
286
278
|
}
|