@openui5/sap.ui.mdc 1.95.0 → 1.96.3

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 (213) hide show
  1. package/.reuse/dep5 +10 -5
  2. package/THIRDPARTY.txt +17 -8
  3. package/package.json +4 -4
  4. package/src/sap/ui/mdc/.library +1 -1
  5. package/src/sap/ui/mdc/ActionToolbar.js +236 -334
  6. package/src/sap/ui/mdc/Chart.js +140 -20
  7. package/src/sap/ui/mdc/ChartDelegateNew.js +15 -0
  8. package/src/sap/ui/mdc/ChartNew.js +83 -56
  9. package/src/sap/ui/mdc/Control.js +4 -3
  10. package/src/sap/ui/mdc/Element.js +4 -3
  11. package/src/sap/ui/mdc/Field.js +2 -2
  12. package/src/sap/ui/mdc/FilterBar.js +1 -10
  13. package/src/sap/ui/mdc/FilterField.js +2 -2
  14. package/src/sap/ui/mdc/Link.js +2 -2
  15. package/src/sap/ui/mdc/MultiValueField.js +1 -1
  16. package/src/sap/ui/mdc/Table.js +81 -25
  17. package/src/sap/ui/mdc/ValueHelp.js +29 -14
  18. package/src/sap/ui/mdc/ValueHelpDelegate.js +110 -4
  19. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +49 -104
  20. package/src/sap/ui/mdc/chart/DimensionItem.js +3 -3
  21. package/src/sap/ui/mdc/chart/Item.js +2 -3
  22. package/src/sap/ui/mdc/chart/MeasureItem.js +2 -2
  23. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +21 -2
  24. package/src/sap/ui/mdc/chart/ToolbarHandler.js +5 -3
  25. package/src/sap/ui/mdc/chartNew/ChartSelectionDetailsNew.js +1 -1
  26. package/src/sap/ui/mdc/chartNew/ChartToolbarNew.js +14 -10
  27. package/src/sap/ui/mdc/chartNew/DrillStackHandlerNew.js +11 -9
  28. package/src/sap/ui/mdc/chartNew/ItemNew.js +0 -1
  29. package/src/sap/ui/mdc/chartNew/PropertyHelperNew.js +1 -1
  30. package/src/sap/ui/mdc/condition/Condition.js +2 -2
  31. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  32. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  33. package/src/sap/ui/mdc/condition/FilterConverter.js +1 -1
  34. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +1 -1
  35. package/src/sap/ui/mdc/condition/Operator.js +1 -1
  36. package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
  37. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +43 -0
  38. package/src/sap/ui/mdc/designtime/chart/ChartNew.designtime.js +91 -0
  39. package/src/sap/ui/mdc/designtime/filterbar/FilterBar.designtime.js +19 -0
  40. package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +31 -0
  41. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +5 -0
  42. package/src/sap/ui/mdc/enum/ContentMode.js +25 -4
  43. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  44. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  45. package/src/sap/ui/mdc/field/ConditionType.js +1 -1
  46. package/src/sap/ui/mdc/field/ConditionsType.js +5 -4
  47. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
  48. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  49. package/src/sap/ui/mdc/field/DefineConditionPanel.js +1 -1
  50. package/src/sap/ui/mdc/field/FieldBase.js +16 -9
  51. package/src/sap/ui/mdc/field/FieldHelpBase.js +1 -1
  52. package/src/sap/ui/mdc/field/FieldInfoBase.js +9 -1
  53. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  54. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  55. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  56. package/src/sap/ui/mdc/field/FieldValueHelp.js +1 -1
  57. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  58. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +1 -1
  59. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +1 -1
  60. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +1 -1
  61. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +1 -1
  62. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  63. package/src/sap/ui/mdc/field/ListFieldHelp.js +1 -1
  64. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  65. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  66. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  67. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
  68. package/src/sap/ui/mdc/field/content/BooleanContent.js +15 -3
  69. package/src/sap/ui/mdc/field/content/ContentFactory.js +16 -8
  70. package/src/sap/ui/mdc/field/content/DefaultContent.js +64 -23
  71. package/src/sap/ui/mdc/field/content/LinkContent.js +6 -0
  72. package/src/sap/ui/mdc/field/content/SearchContent.js +21 -3
  73. package/src/sap/ui/mdc/field/content/UnitContent.js +2 -2
  74. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +5 -2
  75. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +1 -1
  76. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +1 -1
  77. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +1 -1
  78. package/src/sap/ui/mdc/flexibility/ActionToolbar.flexibility.js +22 -0
  79. package/src/sap/ui/mdc/flexibility/ActionToolbarAction.flexibility.js +19 -0
  80. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  81. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  82. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  83. package/src/sap/ui/mdc/library.js +17 -7
  84. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  85. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  86. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  87. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  88. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  89. package/src/sap/ui/mdc/link/Factory.js +1 -1
  90. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  91. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  92. package/src/sap/ui/mdc/link/Panel.js +1 -1
  93. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  94. package/src/sap/ui/mdc/link/PanelListItem.js +1 -1
  95. package/src/sap/ui/mdc/link/SelectionDialog.js +2 -2
  96. package/src/sap/ui/mdc/link/SelectionDialogItem.js +1 -1
  97. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  98. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  99. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  100. package/src/sap/ui/mdc/messagebundle.properties +22 -4
  101. package/src/sap/ui/mdc/messagebundle_ar.properties +10 -2
  102. package/src/sap/ui/mdc/messagebundle_bg.properties +10 -2
  103. package/src/sap/ui/mdc/messagebundle_ca.properties +10 -2
  104. package/src/sap/ui/mdc/messagebundle_cs.properties +21 -13
  105. package/src/sap/ui/mdc/messagebundle_cy.properties +10 -2
  106. package/src/sap/ui/mdc/messagebundle_da.properties +10 -2
  107. package/src/sap/ui/mdc/messagebundle_de.properties +10 -2
  108. package/src/sap/ui/mdc/messagebundle_el.properties +10 -2
  109. package/src/sap/ui/mdc/messagebundle_en.properties +8 -0
  110. package/src/sap/ui/mdc/messagebundle_en_GB.properties +8 -0
  111. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +2 -0
  112. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +19 -3
  113. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +2 -0
  114. package/src/sap/ui/mdc/messagebundle_es.properties +10 -2
  115. package/src/sap/ui/mdc/messagebundle_es_MX.properties +10 -2
  116. package/src/sap/ui/mdc/messagebundle_et.properties +10 -2
  117. package/src/sap/ui/mdc/messagebundle_fi.properties +10 -2
  118. package/src/sap/ui/mdc/messagebundle_fr.properties +12 -4
  119. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +9 -1
  120. package/src/sap/ui/mdc/messagebundle_hi.properties +11 -3
  121. package/src/sap/ui/mdc/messagebundle_hr.properties +10 -2
  122. package/src/sap/ui/mdc/messagebundle_hu.properties +10 -2
  123. package/src/sap/ui/mdc/messagebundle_id.properties +10 -2
  124. package/src/sap/ui/mdc/messagebundle_it.properties +10 -2
  125. package/src/sap/ui/mdc/messagebundle_iw.properties +10 -2
  126. package/src/sap/ui/mdc/messagebundle_ja.properties +18 -10
  127. package/src/sap/ui/mdc/messagebundle_kk.properties +10 -2
  128. package/src/sap/ui/mdc/messagebundle_ko.properties +10 -2
  129. package/src/sap/ui/mdc/messagebundle_lt.properties +10 -2
  130. package/src/sap/ui/mdc/messagebundle_lv.properties +10 -2
  131. package/src/sap/ui/mdc/messagebundle_ms.properties +10 -2
  132. package/src/sap/ui/mdc/messagebundle_nl.properties +11 -3
  133. package/src/sap/ui/mdc/messagebundle_no.properties +10 -2
  134. package/src/sap/ui/mdc/messagebundle_pl.properties +10 -2
  135. package/src/sap/ui/mdc/messagebundle_pt.properties +11 -3
  136. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +10 -2
  137. package/src/sap/ui/mdc/messagebundle_ro.properties +10 -2
  138. package/src/sap/ui/mdc/messagebundle_ru.properties +10 -2
  139. package/src/sap/ui/mdc/messagebundle_sh.properties +10 -2
  140. package/src/sap/ui/mdc/messagebundle_sk.properties +10 -2
  141. package/src/sap/ui/mdc/messagebundle_sl.properties +10 -2
  142. package/src/sap/ui/mdc/messagebundle_sv.properties +10 -2
  143. package/src/sap/ui/mdc/messagebundle_th.properties +10 -2
  144. package/src/sap/ui/mdc/messagebundle_tr.properties +10 -2
  145. package/src/sap/ui/mdc/messagebundle_uk.properties +10 -2
  146. package/src/sap/ui/mdc/messagebundle_vi.properties +10 -2
  147. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +12 -4
  148. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +11 -3
  149. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  150. package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -1
  151. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -1
  152. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  153. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelperNew.js +1 -1
  154. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +2 -2
  155. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegateNew.js +212 -32
  156. package/src/sap/ui/mdc/p13n/DefaultProviderRegistry.js +1 -1
  157. package/src/sap/ui/mdc/p13n/Engine.js +3 -2
  158. package/src/sap/ui/mdc/p13n/P13nBuilder.js +1 -1
  159. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  160. package/src/sap/ui/mdc/p13n/UIManager.js +1 -1
  161. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +59 -0
  162. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +1 -2
  163. package/src/sap/ui/mdc/p13n/panels/BasePanel.js +6 -6
  164. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +1 -2
  165. package/src/sap/ui/mdc/p13n/panels/ChartItemPanelNew.js +1171 -0
  166. package/src/sap/ui/mdc/p13n/panels/GroupPanel.js +1 -1
  167. package/src/sap/ui/mdc/p13n/panels/GroupView.js +1 -2
  168. package/src/sap/ui/mdc/p13n/panels/ListView.js +5 -3
  169. package/src/sap/ui/mdc/p13n/panels/QueryPanel.js +1 -1
  170. package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +0 -1
  171. package/src/sap/ui/mdc/p13n/panels/SortPanel.js +0 -1
  172. package/src/sap/ui/mdc/p13n/panels/SortQueryPanel.js +1 -1
  173. package/src/sap/ui/mdc/p13n/panels/Wrapper.js +1 -1
  174. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +89 -0
  175. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +9 -6
  176. package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +33 -4
  177. package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +9 -15
  178. package/src/sap/ui/mdc/p13n/subcontroller/GroupController.js +5 -12
  179. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +19 -21
  180. package/src/sap/ui/mdc/table/Column.js +14 -5
  181. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  182. package/src/sap/ui/mdc/table/GridTableType.js +0 -1
  183. package/src/sap/ui/mdc/table/PropertyHelper.js +17 -86
  184. package/src/sap/ui/mdc/table/ResponsiveTableType.js +12 -2
  185. package/src/sap/ui/mdc/table/RowSettings.js +1 -1
  186. package/src/sap/ui/mdc/table/TableTypeBase.js +0 -1
  187. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +1 -1
  188. package/src/sap/ui/mdc/ui/Container.js +2 -2
  189. package/src/sap/ui/mdc/ui/ContainerItem.js +2 -2
  190. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  191. package/src/sap/ui/mdc/util/PropertyHelper.js +1 -1
  192. package/src/sap/ui/mdc/valuehelp/Dialog.js +49 -26
  193. package/src/sap/ui/mdc/valuehelp/Popover.js +35 -19
  194. package/src/sap/ui/mdc/valuehelp/base/Container.js +221 -19
  195. package/src/sap/ui/mdc/valuehelp/base/Content.js +219 -33
  196. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +50 -7
  197. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +47 -27
  198. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +38 -10
  199. package/src/sap/ui/mdc/valuehelp/content/Bool.js +135 -49
  200. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +64 -38
  201. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +55 -27
  202. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +25 -6
  203. package/src/sap/ui/mdc/valuehelp/content/MTable.js +120 -85
  204. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +2 -1
  205. package/test/sap/ui/mdc/testutils/opa/actions/OpenContextMenu.js +48 -0
  206. package/test/sap/ui/mdc/testutils/opa/chartNew/ActionsBase.js +310 -0
  207. package/test/sap/ui/mdc/testutils/opa/chartNew/ActionsViz.js +39 -0
  208. package/test/sap/ui/mdc/testutils/opa/chartNew/AssertionsBase.js +118 -0
  209. package/test/sap/ui/mdc/testutils/opa/chartNew/AssertionsViz.js +137 -0
  210. package/test/sap/ui/mdc/testutils/opa/chartNew/ChartNew.js +24 -0
  211. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +289 -0
  212. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +163 -17
  213. package/test/sap/ui/mdc/testutils/opa/p13n/Util.js +2 -0
@@ -18,7 +18,23 @@ sap.ui.define([
18
18
  Common
19
19
  ) {
20
20
  "use strict";
21
- var Conditions = Content.extend(
21
+ /**
22
+ * Constructor for a new <code>Conditions</code> content.
23
+ *
24
+ * @param {string} [sId] ID for the new control, generated automatically if no ID is given
25
+ * @param {object} [mSettings] Initial settings for the new control
26
+ * @class Content for the <code>sap.ui.mdc.valuehelp.base.Container</code> element showing a condition panel.
27
+ * @extends sap.ui.mdc.valuehelp.base.Content
28
+ * @version 1.96.3
29
+ * @constructor
30
+ * @abstract
31
+ * @private
32
+ * @ui5-restricted sap.ui.mdc
33
+ * @since 1.95.0
34
+ * @alias sap.ui.mdc.valuehelp.content.Conditions
35
+ * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
36
+ */
37
+ var Conditions = Content.extend(
22
38
  "sap.ui.mdc.valuehelp.content.Conditions" /** @lends sap.ui.mdc.valuehelp.content.Conditions.prototype */,
23
39
  {
24
40
  metadata: {
@@ -37,6 +53,9 @@ sap.ui.define([
37
53
  // defaultValue: true,
38
54
  // visibility: "hidden"
39
55
  // }
56
+ /**
57
+ * Label shown on condition panel.
58
+ */
40
59
  label: {
41
60
  type: "string"
42
61
  }
@@ -87,9 +106,9 @@ sap.ui.define([
87
106
  this.getId() + "-DCP",
88
107
  {
89
108
  label: "{$help>/label}",
90
- conditions: "{$help>/_conditions}",
109
+ conditions: "{$help>/conditions}",
91
110
  inputOK: "{$valueHelp>/_valid}",
92
- formatOptions: {path: "$help>/_config", formatter: _convertConfig}, // TODO: change DefineConditionPanel to use Config
111
+ formatOptions: {path: "$help>/config", formatter: _convertConfig}, // TODO: change DefineConditionPanel to use Config
93
112
  conditionProcessed: _handleConditionProcessed.bind(this)
94
113
  }
95
114
  ).setModel(this._oManagedObjectModel, "$help");
@@ -110,36 +129,15 @@ sap.ui.define([
110
129
  }
111
130
  return aContent;
112
131
  };
113
- this.setAggregation("_displayContent", this._oScrollContainer);
132
+ this.setAggregation("displayContent", this._oScrollContainer);
114
133
  return this._oScrollContainer;
115
134
  }.bind(this));
116
135
  }.bind(this));
117
136
  };
118
137
 
119
- Conditions.prototype.getFooterContent = function () {
120
- return this._retrievePromise("footerContent", function () {
121
- return loadModules(["sap/m/library", "sap/m/Button"]).then(function (aModules) {
122
- var oMLibrary = aModules[0];
123
- var ButtonType = oMLibrary.ButtonType;
124
- var Button = aModules[1];
125
- var oButtonOK = new Button(this.getId() + "-ok", {
126
- text: this._oResourceBundle.getText("valuehelp.OK"),
127
- enabled: "{$valueHelp>/_valid}",
128
- type: ButtonType.Emphasized,
129
- press: _handleOK.bind(this)
130
- });
131
- var oButtonCancel = new Button(this.getId() + "-cancel", {
132
- text: this._oResourceBundle.getText("valuehelp.CANCEL"),
133
- press: this.fireCancel.bind(this)
134
- });
135
- return [oButtonOK, oButtonCancel];
136
- }.bind(this));
137
- }.bind(this));
138
- };
139
-
140
138
  Conditions.prototype.getCount = function (aConditions) {
141
139
  var iCount = 0;
142
- // var aConditions = arguments[0] || this.get_conditions();
140
+
143
141
  for (var i = 0; i < aConditions.length; i++) {
144
142
  var oCondition = aConditions[i];
145
143
  if (oCondition.isEmpty !== true && oCondition.validated === ConditionValidated.NotValidated) {
@@ -159,6 +157,12 @@ sap.ui.define([
159
157
 
160
158
  };
161
159
 
160
+ Conditions.prototype.isFocusInHelp = function() {
161
+
162
+ return true;
163
+
164
+ };
165
+
162
166
  Conditions.prototype.getRequiresTokenizer = function() {
163
167
  // when only the conditions content is on the dialog the tokenizer should be hidden.
164
168
  return false;
@@ -172,12 +176,12 @@ sap.ui.define([
172
176
  return sTitle;
173
177
  };
174
178
 
175
- Conditions.prototype.getFormattedSubTitle = function() {
176
- var sSubTitle = this.getSubTitle();
177
- if (!sSubTitle) {
178
- sSubTitle = this._oResourceBundle.getText("valuehelp.DEFINECONDITIONS.Subtitle");
179
+ Conditions.prototype.getFormattedShortTitle = function() {
180
+ var sShortTitle = this.getShortTitle();
181
+ if (!sShortTitle) {
182
+ sShortTitle = this._oResourceBundle.getText("valuehelp.DEFINECONDITIONS.Shorttitle");
179
183
  }
180
- return sSubTitle;
184
+ return sShortTitle;
181
185
  };
182
186
 
183
187
  Conditions.prototype.getAriaAttributes = function(iMaxConditions) {
@@ -190,16 +194,38 @@ sap.ui.define([
190
194
 
191
195
  };
192
196
 
193
- //Part of IPopover?
194
- Conditions.prototype.getPopoverConfiguration = function () {
197
+ Conditions.prototype.getContainerConfig = function () {
195
198
  return {
196
- showArrow: true,
197
- showHeader: true
199
+ 'sap.ui.mdc.valuehelp.Popover': {
200
+ showArrow: true,
201
+ showHeader: true,
202
+ getContentWidth: function () { return "500px"; },
203
+ getFooter: function () {
204
+ return this._retrievePromise("footer", function () {
205
+ return loadModules(["sap/m/library", "sap/m/Button"]).then(function (aModules) {
206
+ var oMLibrary = aModules[0];
207
+ var ButtonType = oMLibrary.ButtonType;
208
+ var Button = aModules[1];
209
+ var oButtonOK = new Button(this.getId() + "-ok", {
210
+ text: this._oResourceBundle.getText("valuehelp.OK"),
211
+ enabled: "{$valueHelp>/_valid}",
212
+ type: ButtonType.Emphasized,
213
+ press: _handleOK.bind(this)
214
+ });
215
+ var oButtonCancel = new Button(this.getId() + "-cancel", {
216
+ text: this._oResourceBundle.getText("valuehelp.CANCEL"),
217
+ press: this.fireCancel.bind(this)
218
+ });
219
+ return [oButtonOK, oButtonCancel];
220
+ }.bind(this));
221
+ }.bind(this));
222
+ }.bind(this)
223
+ }
198
224
  };
199
225
  };
200
226
 
201
227
  function _handleOK(oEvent) {
202
- // var aConditions = this.get_conditions();
228
+ // var aConditions = this.getConditions();
203
229
  //
204
230
  // // remove empty conditions
205
231
  // aConditions = Condition._removeEmptyConditions(aConditions);
@@ -211,7 +237,7 @@ sap.ui.define([
211
237
  }
212
238
 
213
239
  function _handleConditionProcessed(oEvent) {
214
- var aNextConditions = this.get_conditions();
240
+ var aNextConditions = this.getConditions();
215
241
 
216
242
  if (this._getMaxConditions() === 1) { // TODO: Better treatment of conditions? DefineConditionPanel currently hijacks conditions
217
243
  aNextConditions = aNextConditions.filter(function(oCondition){
@@ -237,7 +263,7 @@ sap.ui.define([
237
263
  oFormatOptions.maxConditions = oConfig.maxConditions;
238
264
  oFormatOptions.delegate = oConfig.delegate;
239
265
  oFormatOptions.delegateName = oConfig.delegateName;
240
- oFormatOptions.payload = oConfig.paylod;
266
+ oFormatOptions.payload = oConfig.payload;
241
267
  oFormatOptions.operators = oConfig.operators;
242
268
  oFormatOptions.display = oConfig.display;
243
269
  }
@@ -8,19 +8,33 @@ sap.ui.define([
8
8
  "sap/ui/mdc/valuehelp/base/ListContent",
9
9
  "sap/ui/mdc/util/loadModules",
10
10
  "sap/ui/mdc/enum/ConditionValidated",
11
- "sap/ui/model/FormatException",
12
11
  "sap/ui/model/ParseException",
13
- 'sap/ui/mdc/enum/SelectType'
12
+ "sap/ui/mdc/enum/SelectType"
14
13
  ], function(
15
14
  ListContent,
16
15
  loadModules,
17
16
  ConditionValidated,
18
- FormatException,
19
17
  ParseException,
20
18
  SelectType
21
19
  ) {
22
20
  "use strict";
23
21
 
22
+ /**
23
+ * Constructor for a new <code>FixedList</code> content.
24
+ *
25
+ * @param {string} [sId] ID for the new control, generated automatically if no ID is given
26
+ * @param {object} [mSettings] Initial settings for the new control
27
+ * @class Content for the <code>sap.ui.mdc.valuehelp.base.Container</code> element showing a list with fix values.
28
+ * @extends sap.ui.mdc.valuehelp.base.Content
29
+ * @version 1.96.3
30
+ * @constructor
31
+ * @abstract
32
+ * @private
33
+ * @ui5-restricted sap.ui.mdc
34
+ * @since 1.95.0
35
+ * @alias sap.ui.mdc.valuehelp.content.FixedList
36
+ * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
37
+ */
24
38
  var FixedList = ListContent.extend("sap.ui.mdc.valuehelp.content.FixedList", /** @lends sap.ui.mdc.valuehelp.content.FixedList.prototype */
25
39
  {
26
40
  metadata: {
@@ -30,7 +44,10 @@ sap.ui.define([
30
44
  "sap.ui.mdc.valuehelp.IDialogContent"
31
45
  ],
32
46
  properties: {
33
- groupable: {
47
+ /**
48
+ * If set, the items of the list can be grouped
49
+ */
50
+ groupable: {
34
51
  type: "boolean",
35
52
  group: "Appearance",
36
53
  defaultValue : false
@@ -118,7 +135,7 @@ sap.ui.define([
118
135
  valueTextDirection: "{$help>textDirection}"
119
136
  }).addStyleClass("sapMComboBoxNonInteractiveItem"); // to add focus outline to selected items
120
137
 
121
- var oFilter = new Filter("text", _suggestFilter.bind(this));
138
+ var oFilter = new Filter({path: "text", test: _suggestFilter.bind(this), caseSensitive: true}); // caseSensitive at it is checked in filter-function
122
139
 
123
140
  // add sorter only if supported
124
141
  var oSorter;
@@ -137,7 +154,7 @@ sap.ui.define([
137
154
 
138
155
  oList.setModel(this._oManagedObjectModel, "$help");
139
156
  // oList.bindElement({ path: "/", model: "$help" });
140
- this.setAggregation("_displayContent", oList, true); // to have in control tree
157
+ this.setAggregation("displayContent", oList, true); // to have in control tree
141
158
 
142
159
  return oList;
143
160
  }.bind(this));
@@ -146,7 +163,7 @@ sap.ui.define([
146
163
 
147
164
  function _getList() {
148
165
 
149
- return this.getAggregation("_displayContent");
166
+ return this.getAggregation("displayContent");
150
167
 
151
168
  }
152
169
 
@@ -158,10 +175,10 @@ sap.ui.define([
158
175
  if (bSelected) {
159
176
  var oOriginalItem = _getOriginalItem.call(this, oItem);
160
177
  var vKey = _getKey.call(this, oOriginalItem);
161
- // this.fireRemoveConditions({conditions: this.get_conditions()});
178
+ // this.fireRemoveConditions({conditions: this.getConditions()});
162
179
  _setConditions.call(this, vKey, oItem.getLabel());
163
- // this.fireAddConditions({conditions: this.get_conditions()});
164
- this.fireSelect({type: SelectType.Set, conditions: this.get_conditions()});
180
+ // this.fireAddConditions({conditions: this.getConditions()});
181
+ this.fireSelect({type: SelectType.Set, conditions: this.getConditions()});
165
182
  this.fireConfirm();
166
183
  }
167
184
 
@@ -170,7 +187,7 @@ sap.ui.define([
170
187
  function _setConditions(vKey, sValue) {
171
188
 
172
189
  var oCondition = this._createCondition(vKey, sValue);
173
- this.setProperty("_conditions", [oCondition], true);
190
+ this.setProperty("conditions", [oCondition], true);
174
191
 
175
192
  return oCondition;
176
193
 
@@ -180,7 +197,7 @@ sap.ui.define([
180
197
 
181
198
  var bFilterList = this.getFilterList();
182
199
 
183
- return !bFilterList || _filterText.call(this, sText, this.get_filterValue());
200
+ return !bFilterList || _filterText.call(this, sText, this.getFilterValue());
184
201
 
185
202
  }
186
203
 
@@ -215,9 +232,9 @@ sap.ui.define([
215
232
 
216
233
  var oList = _getList.call(this);
217
234
  if (oList) {
218
- var aConditions = this.get_conditions();
235
+ var aConditions = this.getConditions();
219
236
  var vSelectedKey;
220
- var sFilterValue = this.get_filterValue();
237
+ var sFilterValue = this.getFilterValue();
221
238
  var bUseFirstMatch = this.getUseFirstMatch();
222
239
  var bFistFilterItemSelected = false;
223
240
  // var oOperator = this._getOperator();
@@ -311,11 +328,9 @@ sap.ui.define([
311
328
  }
312
329
 
313
330
  var sError = this._oResourceBundle.getText("valuehelp.VALUE_NOT_EXIST", [oConfig.value]);
314
- if (oConfig.checkKey && !oConfig.checkDescription) {
315
- throw new FormatException(sError);
316
- } else {
317
- throw new ParseException(sError);
318
- }
331
+ var Exception = oConfig.exception || ParseException;
332
+ throw new Exception(sError);
333
+
319
334
  }.bind(this));
320
335
 
321
336
  };
@@ -356,7 +371,7 @@ sap.ui.define([
356
371
  var iItems = aItems.length;
357
372
  var iSelectedIndex = 0;
358
373
  var bFilterList = this.getFilterList();
359
- var sFilterValue = this.get_filterValue();
374
+ var sFilterValue = this.getFilterValue();
360
375
  var bLeaveFocus = false;
361
376
 
362
377
  if (!bFilterList && !oSelectedItem) {
@@ -364,14 +379,14 @@ sap.ui.define([
364
379
  var i = 0;
365
380
  if (iStep >= 0) {
366
381
  for (i = 0; i < aItems.length; i++) {
367
- if (_filterText.call(this, aItems[i].getLabel(), sFilterValue)) {
382
+ if (!aItems[i].isA("sap.m.GroupHeaderListItem") && _filterText.call(this, aItems[i].getLabel(), sFilterValue)) {
368
383
  iSelectedIndex = i;
369
384
  break;
370
385
  }
371
386
  }
372
387
  } else {
373
388
  for (i = aItems.length - 1; i >= 0; i--) {
374
- if (_filterText.call(this, aItems[i].getLabel(), sFilterValue)) {
389
+ if (!aItems[i].isA("sap.m.GroupHeaderListItem") && _filterText.call(this, aItems[i].getLabel(), sFilterValue)) {
375
390
  iSelectedIndex = i;
376
391
  break;
377
392
  }
@@ -386,25 +401,38 @@ sap.ui.define([
386
401
  iSelectedIndex = iItems + iStep;
387
402
  }
388
403
 
389
- var bSeachForNext;
404
+ var bSearchForNext;
390
405
  if (iSelectedIndex < 0) {
391
406
  iSelectedIndex = 0;
392
- bSeachForNext = true;
407
+ bSearchForNext = true;
393
408
  bLeaveFocus = true;
394
409
  } else if (iSelectedIndex >= iItems - 1) {
395
410
  iSelectedIndex = iItems - 1;
396
- bSeachForNext = false;
411
+ bSearchForNext = false;
397
412
  } else {
398
- bSeachForNext = iStep >= 0;
413
+ bSearchForNext = iStep >= 0;
399
414
  }
400
415
 
401
416
  while (aItems[iSelectedIndex] && aItems[iSelectedIndex].isA("sap.m.GroupHeaderListItem")) { // ignore group headers
402
- if (bSeachForNext) {
417
+ if (bSearchForNext) {
403
418
  iSelectedIndex++;
404
419
  } else {
405
420
  iSelectedIndex--;
406
421
  }
407
422
  }
423
+ if (iSelectedIndex < 0 || iSelectedIndex > iItems - 1) {
424
+ // find last not groupable item
425
+ bSearchForNext = !bSearchForNext;
426
+ bLeaveFocus = iSelectedIndex < 0;
427
+ iSelectedIndex = iSelectedIndex < 0 ? 0 : iItems - 1;
428
+ while (aItems[iSelectedIndex] && aItems[iSelectedIndex].isA("sap.m.GroupHeaderListItem")) { // ignore group headers
429
+ if (bSearchForNext) {
430
+ iSelectedIndex++;
431
+ } else {
432
+ iSelectedIndex--;
433
+ }
434
+ }
435
+ }
408
436
 
409
437
  var oItem = aItems[iSelectedIndex];
410
438
  if (oItem) {
@@ -174,7 +174,7 @@ sap.ui.define([
174
174
  });
175
175
  var aAddConditions = [], aRemoveConditions = [];
176
176
  var aSelectedRows = MDCTableHelperConfig["Table"].getSelectedItems();
177
- var aCurrentConditions = this.get_conditions();
177
+ var aCurrentConditions = this.getConditions();
178
178
  aRows.forEach(function (oRow, i) {
179
179
  var bIsInSelectedConditions = this._isItemSelected(oRow, aCurrentConditions);
180
180
  var bIsRowSelected = aSelectedRows.indexOf(oRow) !== -1;
@@ -241,7 +241,7 @@ sap.ui.define([
241
241
  if (this._oTableHelper) {
242
242
  this._bSelectionIsUpdating = true;
243
243
  var aItems = this._oTableHelper.getItems();
244
- var aConditions = this.get_conditions();
244
+ var aConditions = this.getConditions();
245
245
  var aModifications = [];
246
246
  for (var iId in aItems) {
247
247
  var oItem = aItems[iId];
@@ -254,6 +254,22 @@ sap.ui.define([
254
254
  }
255
255
  }
256
256
 
257
+ // TODO: @ui5-restricted sap.ui.mdc
258
+ /**
259
+ * Constructor for a new <code>MDCTable</code> content.
260
+ *
261
+ * @param {string} [sId] ID for the new control, generated automatically if no ID is given
262
+ * @param {object} [mSettings] Initial settings for the new control
263
+ * @class Content for the <code>sap.ui.mdc.valuehelp.base.Container</code> element using a sap.ui.mdc.Table.
264
+ * @extends sap.ui.mdc.valuehelp.base.FilterableListContent
265
+ * @version 1.96.3
266
+ * @constructor
267
+ * @abstract
268
+ * @private
269
+ * @since 1.95.0
270
+ * @alias sap.ui.mdc.valuehelp.content.MDCTable
271
+ * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
272
+ */
257
273
  var MDCTable = FilterableListContent.extend("sap.ui.mdc.valuehelp.content.MDCTable", /** @lends sap.ui.mdc.valuehelp.content.MDCTable.prototype */
258
274
  {
259
275
  metadata: {
@@ -264,6 +280,9 @@ sap.ui.define([
264
280
  properties: {
265
281
  },
266
282
  aggregations: {
283
+ /**
284
+ * Table to be used in value help
285
+ */
267
286
  table: {
268
287
  type: "sap.ui.mdc.Table",
269
288
  multiple: false
@@ -368,7 +387,7 @@ sap.ui.define([
368
387
  };
369
388
 
370
389
  var _handleSearch = function () {
371
- return this.applyFilters(this.get_filterValue());
390
+ return this.applyFilters(this.getFilterValue());
372
391
  };
373
392
 
374
393
  MDCTable.prototype._observeChanges = function (oChanges) {
@@ -389,7 +408,7 @@ sap.ui.define([
389
408
 
390
409
  if (oChanges.name === "filterBar") {
391
410
  oFilterBar = oChanges.child;
392
- oDefaultFilterBar = this.get_defaultFilterBar();
411
+ oDefaultFilterBar = this.getAggregation("_defaultFilterBar");
393
412
  if (oChanges.mutation === "insert") {
394
413
  if (oDefaultFilterBar) {
395
414
  oDefaultFilterBar.detachSearch(_handleSearch, this);
@@ -441,7 +460,7 @@ sap.ui.define([
441
460
  return;
442
461
  }
443
462
 
444
- if (oChanges.name === "_config") {
463
+ if (oChanges.name === "config") {
445
464
  _adjustTable.call(this);
446
465
  }
447
466
 
@@ -524,7 +543,7 @@ sap.ui.define([
524
543
  };
525
544
  }
526
545
 
527
- this.setAggregation("_displayContent", this._oContentLayout);
546
+ this.setAggregation("displayContent", this._oContentLayout);
528
547
 
529
548
  if (!this._getPriorityFilterBar()) {
530
549
  return this._createDefaultFilterBar().then(function () {