@sapui5/sap.gantt 1.119.0 → 1.120.1
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 +1 -1
- package/src/sap/gantt/.library +1 -1
- package/src/sap/gantt/AdhocLine.js +1 -1
- package/src/sap/gantt/GanttChart.js +1 -1
- package/src/sap/gantt/GanttChartBase.js +1 -1
- package/src/sap/gantt/GanttChartContainer.js +1 -1
- package/src/sap/gantt/GanttChartWithTable.js +6 -2
- package/src/sap/gantt/axistime/AxisTimeStrategyBase.js +6 -6
- package/src/sap/gantt/axistime/FullScreenStrategy.js +1 -1
- package/src/sap/gantt/axistime/ProportionZoomStrategy.js +1 -1
- package/src/sap/gantt/axistime/StepwiseTimeLineOptions.js +5 -4
- package/src/sap/gantt/axistime/StepwiseZoomStrategy.js +1 -1
- package/src/sap/gantt/changeHandlers/simple/AdhocLine.js +1 -1
- package/src/sap/gantt/changeHandlers/simple/DeltaLine.js +1 -1
- package/src/sap/gantt/changeHandlers/simple/GanttChartContainer.js +6 -4
- package/src/sap/gantt/changeHandlers/simple/GanttChartWithTable.js +6 -4
- package/src/sap/gantt/config/BirdEyeGroup.js +1 -1
- package/src/sap/gantt/config/ChartScheme.js +1 -1
- package/src/sap/gantt/config/ColumnAttribute.js +1 -1
- package/src/sap/gantt/config/ContainerLayout.js +1 -1
- package/src/sap/gantt/config/ExpandChart.js +1 -1
- package/src/sap/gantt/config/ExpandChartGroup.js +1 -1
- package/src/sap/gantt/config/GanttChartLayout.js +1 -1
- package/src/sap/gantt/config/Hierarchy.js +1 -1
- package/src/sap/gantt/config/HierarchyColumn.js +1 -1
- package/src/sap/gantt/config/LayoutGroup.js +1 -1
- package/src/sap/gantt/config/Locale.js +1 -1
- package/src/sap/gantt/config/Mode.js +1 -1
- package/src/sap/gantt/config/ModeGroup.js +1 -1
- package/src/sap/gantt/config/ObjectType.js +1 -1
- package/src/sap/gantt/config/SettingGroup.js +1 -1
- package/src/sap/gantt/config/SettingItem.js +4 -4
- package/src/sap/gantt/config/Shape.js +1 -1
- package/src/sap/gantt/config/TimeAxis.js +1 -1
- package/src/sap/gantt/config/TimeHorizon.js +1 -1
- package/src/sap/gantt/config/TimeZoomGroup.js +1 -1
- package/src/sap/gantt/config/ToolbarGroup.js +1 -1
- package/src/sap/gantt/config/ToolbarScheme.js +1 -1
- package/src/sap/gantt/control/AssociateContainer.js +1 -3
- package/src/sap/gantt/control/AssociateContainerRenderer.js +9 -12
- package/src/sap/gantt/control/Cell.js +1 -1
- package/src/sap/gantt/def/DefBase.js +1 -1
- package/src/sap/gantt/def/SvgDefs.js +1 -1
- package/src/sap/gantt/def/cal/Calendar.js +1 -1
- package/src/sap/gantt/def/cal/CalendarDefs.js +1 -1
- package/src/sap/gantt/def/cal/TimeInterval.js +1 -1
- package/src/sap/gantt/def/filter/MorphologyFilter.js +1 -1
- package/src/sap/gantt/def/gradient/LinearGradient.js +1 -1
- package/src/sap/gantt/def/gradient/RadialGradient.js +1 -1
- package/src/sap/gantt/def/gradient/Stop.js +1 -1
- package/src/sap/gantt/def/pattern/BackSlashPattern.js +1 -1
- package/src/sap/gantt/def/pattern/PatternBase.js +1 -1
- package/src/sap/gantt/def/pattern/SlashPattern.js +1 -1
- package/src/sap/gantt/drawer/Drawer.js +1 -1
- package/src/sap/gantt/drawer/SelectionPanel.js +1 -1
- package/src/sap/gantt/drawer/ShapeInRow.js +4 -4
- package/src/sap/gantt/eventHandler/AutoScrollHandler.js +1 -1
- package/src/sap/gantt/eventHandler/BirdEyeHandler.js +1 -1
- package/src/sap/gantt/eventHandler/MouseWheelHandler.js +2 -1
- package/src/sap/gantt/eventHandler/ShapeHoverHandler.js +1 -1
- package/src/sap/gantt/eventHandler/ShapeResizeHandler.js +1 -1
- package/src/sap/gantt/eventHandler/TimePeriodZoomHandler.js +1 -1
- package/src/sap/gantt/eventHandler/TimePopoverHandler.js +3 -3
- package/src/sap/gantt/legend/DimensionLegend.js +1 -1
- package/src/sap/gantt/legend/LegendBase.js +1 -1
- package/src/sap/gantt/legend/LegendContainer.js +1 -1
- package/src/sap/gantt/legend/ListLegend.js +1 -1
- package/src/sap/gantt/library.js +53 -12
- package/src/sap/gantt/messagebundle.properties +24 -0
- package/src/sap/gantt/messagebundle_ar.properties +1 -1
- package/src/sap/gantt/messagebundle_bg.properties +3 -3
- package/src/sap/gantt/messagebundle_ca.properties +35 -19
- package/src/sap/gantt/messagebundle_cnr.properties +427 -0
- package/src/sap/gantt/messagebundle_cs.properties +1 -1
- package/src/sap/gantt/messagebundle_el.properties +4 -4
- package/src/sap/gantt/messagebundle_en.properties +295 -19
- package/src/sap/gantt/messagebundle_en_US_saprigi.properties +212 -196
- package/src/sap/gantt/messagebundle_es.properties +7 -7
- package/src/sap/gantt/messagebundle_et.properties +2 -2
- package/src/sap/gantt/messagebundle_fr.properties +1 -1
- package/src/sap/gantt/messagebundle_hi.properties +2 -2
- package/src/sap/gantt/messagebundle_hr.properties +3 -3
- package/src/sap/gantt/messagebundle_ja.properties +2 -2
- package/src/sap/gantt/messagebundle_kk.properties +1 -1
- package/src/sap/gantt/messagebundle_lt.properties +2 -2
- package/src/sap/gantt/messagebundle_mk.properties +411 -0
- package/src/sap/gantt/messagebundle_ms.properties +1 -1
- package/src/sap/gantt/messagebundle_nl.properties +2 -2
- package/src/sap/gantt/messagebundle_no.properties +2 -2
- package/src/sap/gantt/messagebundle_pt.properties +2 -2
- package/src/sap/gantt/messagebundle_ro.properties +10 -10
- package/src/sap/gantt/messagebundle_ru.properties +1 -1
- package/src/sap/gantt/messagebundle_sk.properties +4 -4
- package/src/sap/gantt/messagebundle_th.properties +8 -8
- package/src/sap/gantt/messagebundle_uk.properties +3 -3
- package/src/sap/gantt/misc/AxisTime.js +65 -38
- package/src/sap/gantt/misc/Format.js +0 -22
- package/src/sap/gantt/misc/Memoizer.js +1 -1
- package/src/sap/gantt/misc/RelativeTimeFormatter.js +1 -1
- package/src/sap/gantt/misc/ShapeManager.js +5 -4
- package/src/sap/gantt/misc/ShapeSelectionModel.js +3 -3
- package/src/sap/gantt/overlays/GanttRowOverlay.js +88 -0
- package/src/sap/gantt/overlays/Overlay.js +73 -0
- package/src/sap/gantt/shape/Circle.js +1 -1
- package/src/sap/gantt/shape/ClipPath.js +1 -1
- package/src/sap/gantt/shape/Definitions.js +1 -1
- package/src/sap/gantt/shape/Group.js +1 -1
- package/src/sap/gantt/shape/Image.js +1 -1
- package/src/sap/gantt/shape/Line.js +1 -1
- package/src/sap/gantt/shape/Path.js +1 -1
- package/src/sap/gantt/shape/Polygon.js +1 -1
- package/src/sap/gantt/shape/Polyline.js +1 -1
- package/src/sap/gantt/shape/Rectangle.js +1 -1
- package/src/sap/gantt/shape/ResizeShadowShape.js +1 -1
- package/src/sap/gantt/shape/SelectedShape.js +1 -1
- package/src/sap/gantt/shape/Shape.js +1 -1
- package/src/sap/gantt/shape/Text.js +1 -1
- package/src/sap/gantt/shape/cal/Calendar.js +1 -1
- package/src/sap/gantt/shape/ext/Chevron.js +1 -1
- package/src/sap/gantt/shape/ext/Cursor.js +1 -1
- package/src/sap/gantt/shape/ext/Diamond.js +1 -1
- package/src/sap/gantt/shape/ext/Iconfont.js +1 -1
- package/src/sap/gantt/shape/ext/Pentangle.js +1 -1
- package/src/sap/gantt/shape/ext/TextRepeat.js +1 -1
- package/src/sap/gantt/shape/ext/Triangle.js +1 -1
- package/src/sap/gantt/shape/ext/rls/Relationship.js +1 -1
- package/src/sap/gantt/shape/ext/rls/SelectedRelationship.js +1 -1
- package/src/sap/gantt/shape/ext/ubc/UbcBorderPath.js +1 -1
- package/src/sap/gantt/shape/ext/ubc/UbcOverCapacityZonePolygon.js +1 -1
- package/src/sap/gantt/shape/ext/ubc/UbcPolygon.js +1 -1
- package/src/sap/gantt/shape/ext/ubc/UbcShortageCapacityPolygon.js +1 -1
- package/src/sap/gantt/shape/ext/ubc/UbcTooltipRectangle.js +1 -1
- package/src/sap/gantt/shape/ext/ubc/UbcUnderCapacityZonePolygon.js +1 -1
- package/src/sap/gantt/shape/ext/ubc/UbcUsedPolygon.js +1 -1
- package/src/sap/gantt/shape/ext/ubc/UtilizationBarChart.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UlcBorderPath.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UlcClipPath.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UlcClipingPath.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UlcDimension.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UlcMiddleLine.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UlcOverCapacityZoneRectangle.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UlcOverClipRectangle.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UlcRectangle.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UlcTooltipRectangle.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UlcUnderClipRectangle.js +1 -1
- package/src/sap/gantt/shape/ext/ulc/UtilizationLineChart.js +1 -1
- package/src/sap/gantt/simple/AdhocDiamond.js +1 -1
- package/src/sap/gantt/simple/AdhocLine.js +1 -1
- package/src/sap/gantt/simple/AggregationUtils.js +92 -0
- package/src/sap/gantt/simple/BaseCalendar.js +1 -1
- package/src/sap/gantt/simple/BaseChevron.js +1 -1
- package/src/sap/gantt/simple/BaseConditionalShape.js +1 -1
- package/src/sap/gantt/simple/BaseCursor.js +1 -1
- package/src/sap/gantt/simple/BaseDeltaRectangle.js +1 -1
- package/src/sap/gantt/simple/BaseDiamond.js +1 -1
- package/src/sap/gantt/simple/BaseGroup.js +1 -1
- package/src/sap/gantt/simple/BaseImage.js +1 -1
- package/src/sap/gantt/simple/BaseLine.js +1 -1
- package/src/sap/gantt/simple/BasePath.js +1 -1
- package/src/sap/gantt/simple/BasePseudoShape.js +118 -92
- package/src/sap/gantt/simple/BaseRectangle.js +1 -1
- package/src/sap/gantt/simple/BaseShape.js +8 -2
- package/src/sap/gantt/simple/BaseText.js +1 -1
- package/src/sap/gantt/simple/BaseTriangle.js +1 -1
- package/src/sap/gantt/simple/ContainerToolbar.js +9 -7
- package/src/sap/gantt/simple/ContainerToolbarPlaceholder.js +1 -1
- package/src/sap/gantt/simple/CoordinateUtils.js +1 -1
- package/src/sap/gantt/simple/CustomVariantHandler.js +1 -1
- package/src/sap/gantt/simple/DeltaLine.js +1 -1
- package/src/sap/gantt/simple/DeltaLineRenderer.js +4 -2
- package/src/sap/gantt/simple/ExpandModel.js +12 -5
- package/src/sap/gantt/simple/FindAndSelectUtils.js +7 -1
- package/src/sap/gantt/simple/GanttAdaptationData.js +1 -1
- package/src/sap/gantt/simple/GanttChartContainer.js +2 -2
- package/src/sap/gantt/simple/GanttChartWithTable.js +136 -64
- package/src/sap/gantt/simple/GanttDragDropExtension.js +22 -9
- package/src/sap/gantt/simple/GanttExtension.js +1 -1
- package/src/sap/gantt/simple/GanttHeader.js +2 -2
- package/src/sap/gantt/simple/GanttPointerExtension.js +1 -1
- package/src/sap/gantt/simple/GanttPopoverExtension.js +1 -1
- package/src/sap/gantt/simple/GanttPrinting.js +67 -47
- package/src/sap/gantt/simple/GanttResizeExtension.js +5 -12
- package/src/sap/gantt/simple/GanttRowAction.js +1 -1
- package/src/sap/gantt/simple/GanttRowSettings.js +55 -3
- package/src/sap/gantt/simple/GanttSearchSidePanel.js +7 -4
- package/src/sap/gantt/simple/GanttUtils.js +46 -10
- package/src/sap/gantt/simple/GanttZoomExtension.js +12 -2
- package/src/sap/gantt/simple/InnerGanttChart.js +17 -7
- package/src/sap/gantt/simple/InnerGanttChartRenderer.js +2 -26
- package/src/sap/gantt/simple/LegendContainer.js +1 -1
- package/src/sap/gantt/simple/LegendShapeGroup.js +1 -1
- package/src/sap/gantt/simple/MultiActivityGroup.js +1 -1
- package/src/sap/gantt/simple/MultiActivityRowSettings.js +2 -14
- package/src/sap/gantt/simple/Relationship.js +6 -6
- package/src/sap/gantt/simple/RenderUtils.js +23 -11
- package/src/sap/gantt/simple/SelectionModel.js +4 -3
- package/src/sap/gantt/simple/ShapeScheme.js +1 -1
- package/src/sap/gantt/simple/StockChart.js +1 -1
- package/src/sap/gantt/simple/StockChartDimension.js +1 -1
- package/src/sap/gantt/simple/StockChartPeriod.js +1 -1
- package/src/sap/gantt/simple/UtilizationBarChart.js +1 -1
- package/src/sap/gantt/simple/UtilizationChart.js +1 -1
- package/src/sap/gantt/simple/UtilizationDimension.js +1 -1
- package/src/sap/gantt/simple/UtilizationLineChart.js +1 -1
- package/src/sap/gantt/simple/UtilizationPeriod.js +1 -1
- package/src/sap/gantt/simple/shapes/Shape.js +10 -11
- package/src/sap/gantt/simple/shapes/Task.js +1 -1
- package/src/sap/gantt/utils/GanttCustomisationUtils.js +5 -3
|
@@ -29,7 +29,7 @@ sap.ui.define([
|
|
|
29
29
|
* @extends sap.gantt.simple.MultiActivityGroup
|
|
30
30
|
*
|
|
31
31
|
* @author SAP SE
|
|
32
|
-
* @version 1.
|
|
32
|
+
* @version 1.120.1
|
|
33
33
|
* @since 1.109
|
|
34
34
|
*
|
|
35
35
|
* @constructor
|
|
@@ -130,16 +130,23 @@ sap.ui.define([
|
|
|
130
130
|
|
|
131
131
|
if (bIsExpandRequired) {
|
|
132
132
|
var sModelName = oTable.getBindingInfo("rows").model;
|
|
133
|
-
var oTaskBindingInfo = oRowSettingsTemplate.getBindingInfo("tasks");
|
|
134
133
|
var oSettings = oRow.getAggregation("_settings");
|
|
135
|
-
var iCloneIndex = oSettings.getAggregation("tasks").length;
|
|
136
134
|
oGantt.oOverlapShapeIds[oRow.getIndex()] = [];
|
|
135
|
+
var aPossibleShapes = oGantt._getPossibleShapesInGantt();
|
|
136
|
+
var aBindingInfos = [];
|
|
137
|
+
aPossibleShapes.forEach(function(shape){
|
|
138
|
+
var oBindingInfo = oRowSettingsTemplate.getBindingInfo(shape);
|
|
139
|
+
aBindingInfos.push(oBindingInfo);
|
|
140
|
+
});
|
|
137
141
|
this.aShapeContexts.forEach(function (oContext) {
|
|
138
|
-
var
|
|
139
|
-
oClone.
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
142
|
+
var sAggrType = aPossibleShapes.indexOf(oContext.aggrType);
|
|
143
|
+
var oClone = aBindingInfos[sAggrType] && aBindingInfos[sAggrType].template.clone();
|
|
144
|
+
if (oClone){
|
|
145
|
+
oClone.setBindingContext(oContext, sModelName);
|
|
146
|
+
oSettings.addAggregation(oContext.aggrType, oClone, true);
|
|
147
|
+
oGantt.oOverlapShapeIds[iIndex].push(oSettings.getAggregation(oContext.aggrType)[oSettings.getAggregation(oContext.aggrType).length - 1].getShapeId());
|
|
148
|
+
// iCloneIndex++;
|
|
149
|
+
}
|
|
143
150
|
});
|
|
144
151
|
|
|
145
152
|
oGantt._expand(sScheme, iIndex, true);
|
|
@@ -149,17 +156,15 @@ sap.ui.define([
|
|
|
149
156
|
* Formats the time of a shape given according to the formatter provided through template of binding.
|
|
150
157
|
* @private
|
|
151
158
|
*/
|
|
152
|
-
BasePseudoShape.prototype._timeFormatter = function (
|
|
153
|
-
var
|
|
154
|
-
var
|
|
155
|
-
var oTime =
|
|
156
|
-
oEndTime =
|
|
157
|
-
|
|
159
|
+
BasePseudoShape.prototype._timeFormatter = function (oContext, oShapePropertyPath) {
|
|
160
|
+
var startTime = oContext.getProperty(oShapePropertyPath.startTime);
|
|
161
|
+
var endTime = oContext.getProperty(oShapePropertyPath.endTime);
|
|
162
|
+
var oTime = oContext.timeFormatter ? oContext.timeFormatter(startTime) : startTime,
|
|
163
|
+
oEndTime = oContext.endTimeFormatter ? oContext.endTimeFormatter(endTime) : endTime;
|
|
158
164
|
if (Format._getEnableDateTimezoneFormatter()) {
|
|
159
165
|
oTime = GanttUtils.getFormatedDateByTimeZone(oTime);
|
|
160
166
|
oEndTime = GanttUtils.getFormatedDateByTimeZone(oEndTime);
|
|
161
167
|
}
|
|
162
|
-
|
|
163
168
|
return {
|
|
164
169
|
time: oTime,
|
|
165
170
|
endTime: oEndTime
|
|
@@ -169,7 +174,7 @@ sap.ui.define([
|
|
|
169
174
|
* Creates a pseudo shape for the provided binding information
|
|
170
175
|
* @private
|
|
171
176
|
*/
|
|
172
|
-
BasePseudoShape.prototype._createPseudoShape = function (oShapeGroup,
|
|
177
|
+
BasePseudoShape.prototype._createPseudoShape = function (oShapeGroup, oRow, oGantt, expanded) {
|
|
173
178
|
var horizontalTextAlignment = sap.gantt.simple.horizontalTextAlignment,
|
|
174
179
|
oPseudoShapeIcon;
|
|
175
180
|
var obasePseudo = new BasePseudoShape();
|
|
@@ -184,10 +189,9 @@ sap.ui.define([
|
|
|
184
189
|
endTime: oTask.getEndTime()
|
|
185
190
|
});
|
|
186
191
|
};
|
|
187
|
-
var oFormatedTime = this._timeFormatter(oTaskBindingInfo, obasePseudo, oShapeGroup, oGantt);
|
|
188
192
|
obasePseudo.setAggregation("task", new BaseRectangle({
|
|
189
|
-
time:
|
|
190
|
-
endTime:
|
|
193
|
+
time: oShapeGroup.startTime,
|
|
194
|
+
endTime: oShapeGroup.endTime,
|
|
191
195
|
horizontalTextAlignment: horizontalTextAlignment.Start,
|
|
192
196
|
fontSize: parseFloat(Parameters.get("sapUiChartAxisTitleFontSize"), 100) * 16,
|
|
193
197
|
fontWeight: Parameters.get("sapUiChartTitleFontWeight")
|
|
@@ -197,14 +201,13 @@ sap.ui.define([
|
|
|
197
201
|
if (obasePseudo.getTypeOfOverlapIndicator() != "Gradient") {
|
|
198
202
|
oTask._iBaseRowHeight = oGantt._oExpandModel.getBaseRowHeight() ? oGantt._oExpandModel.getBaseRowHeight() : oTask._iBaseRowHeight;
|
|
199
203
|
var iShapeHeight = oTask.getHeight();
|
|
200
|
-
var oFormatedTime = this._timeFormatter(oTaskBindingInfo, obasePseudo, overlap, oGantt);
|
|
201
204
|
obasePseudo.addAggregation("indicators", new BaseRectangle({
|
|
202
|
-
time:
|
|
203
|
-
endTime:
|
|
205
|
+
time: overlap.startTime,
|
|
206
|
+
endTime: overlap.endTime,
|
|
204
207
|
yBias: iShapeHeight + 2
|
|
205
208
|
}).addStyleClass("sapGanttPseudoShapeOverlapIndicatorStyle"));
|
|
206
209
|
}
|
|
207
|
-
}
|
|
210
|
+
});
|
|
208
211
|
if (expanded && oGantt.oOverlapShapeIds && oGantt.oOverlapShapeIds[oRow.getIndex()] && oShapeGroup.aShapeIds && oShapeGroup.aShapeIds.some(function (shapeId) {
|
|
209
212
|
return oGantt.oOverlapShapeIds[oRow.getIndex()].includes(shapeId);
|
|
210
213
|
})) {
|
|
@@ -257,20 +260,27 @@ sap.ui.define([
|
|
|
257
260
|
* Create shapes for the provided binding information from the context
|
|
258
261
|
* @private
|
|
259
262
|
*/
|
|
260
|
-
BasePseudoShape.prototype._createShapesFromContext = function(aContext, oRow,
|
|
263
|
+
BasePseudoShape.prototype._createShapesFromContext = function(aContext, oRow, aBindingInfos, oGantt, expanded, index, needGradientCalculations){
|
|
261
264
|
var oSettings = oRow.getAggregation("_settings");
|
|
262
|
-
var oAxisTime = oGantt.getAxisTime();
|
|
263
|
-
var oPseudoShapeTemplate = oSettings.getPseudoShapeTemplate();
|
|
265
|
+
var oAxisTime = oGantt.getAxisTime(), oShapePropertyPaths = {};
|
|
266
|
+
var oPseudoShapeTemplate = oSettings.getPseudoShapeTemplate && oSettings.getPseudoShapeTemplate();
|
|
264
267
|
var sModelName = oGantt.getTable().getBindingInfo("rows").model;
|
|
268
|
+
var aPossibleShapes = oGantt._getPossibleShapesInGantt();
|
|
265
269
|
// Getting start and end time and indicator binding.
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
270
|
+
aBindingInfos.forEach(function(oBindingInfo, index){
|
|
271
|
+
if (oBindingInfo){
|
|
272
|
+
var aShapes = oBindingInfo.template.getAggregation("shapes");
|
|
273
|
+
var oStartTimeBindingInfo = oBindingInfo.template.getBindingInfo("time") || aShapes && aShapes[0] && aShapes[0].getBindingInfo("time"),
|
|
274
|
+
oEndTimeBindingIndo = oBindingInfo.template.getBindingInfo("endTime") || aShapes && aShapes[0] && aShapes[0].getBindingInfo("endTime"),
|
|
275
|
+
oShapeIdBinding = oBindingInfo.template.getBindingInfo("shapeId");
|
|
276
|
+
oShapePropertyPaths[index] = {
|
|
277
|
+
endTime: oEndTimeBindingIndo.parts[0].path || oEndTimeBindingIndo.path,
|
|
278
|
+
startTime: oStartTimeBindingInfo.parts[0].path || oStartTimeBindingInfo.path,
|
|
279
|
+
shapeId: oShapeIdBinding.parts[0].path || oShapeIdBinding.path
|
|
280
|
+
};
|
|
281
|
+
}
|
|
282
|
+
});
|
|
283
|
+
|
|
274
284
|
var getIcon = function(sIconSrc, oTask){
|
|
275
285
|
return new BaseImage( {
|
|
276
286
|
height:parseFloat(Parameters.get("sapUiChartAxisTitleFontSize"), 100) * 16,
|
|
@@ -282,8 +292,17 @@ sap.ui.define([
|
|
|
282
292
|
endTime: oTask.getEndTime()
|
|
283
293
|
});
|
|
284
294
|
};
|
|
285
|
-
aContext.sort(function(oContext1, oContext2){
|
|
286
|
-
|
|
295
|
+
aContext.sort(function(oContext1, oContext2){
|
|
296
|
+
var oContext1StartTimeformatter = oContext1.timeFormatter;
|
|
297
|
+
var oContext2StartTimeformatter = oContext2.timeFormatter;
|
|
298
|
+
var oContext1StartTime = oContext1.getProperty(oShapePropertyPaths[aPossibleShapes.indexOf(oContext1.aggrType)].startTime);
|
|
299
|
+
var oContext2StartTime = oContext2.getProperty(oShapePropertyPaths[aPossibleShapes.indexOf(oContext2.aggrType)].startTime);
|
|
300
|
+
var oTime1 = oContext1StartTimeformatter ? oContext1StartTimeformatter(oContext1StartTime) : oContext1StartTime,
|
|
301
|
+
oTime2 = oContext2StartTimeformatter ? oContext2StartTimeformatter(oContext2StartTime) : oContext2StartTime;
|
|
302
|
+
|
|
303
|
+
return oTime1 - oTime2;
|
|
304
|
+
});
|
|
305
|
+
var aFinalShapeGroupArray = this._findPseudoShapeContextArray(aContext, oShapePropertyPaths ,oRow, oGantt, aBindingInfos);
|
|
287
306
|
var title, oTask, oPseudoShapeIcon;
|
|
288
307
|
oRow.aFinalShapeGroupArray = aFinalShapeGroupArray;
|
|
289
308
|
aFinalShapeGroupArray.forEach(function(oShapeGroup) {
|
|
@@ -294,9 +313,8 @@ sap.ui.define([
|
|
|
294
313
|
oShapeClone = oPseudoShapeTemplate.clone();
|
|
295
314
|
oTask = oShapeClone.getTask();
|
|
296
315
|
oShapeGroup.shapeFill = oTask.getFill() ? oTask.getFill() : oShapeClone.getFill();
|
|
297
|
-
|
|
298
|
-
oTask.
|
|
299
|
-
oTask.setEndTime(oFormatedTime.endTime);
|
|
316
|
+
oTask.setTime(oShapeGroup.startTime);
|
|
317
|
+
oTask.setEndTime(oShapeGroup.endTime);
|
|
300
318
|
oTask.setSelectable(true);
|
|
301
319
|
if (expanded && oGantt.oOverlapShapeIds && oGantt.oOverlapShapeIds[oRow.getIndex()] && oShapeGroup.aShapeIds && oShapeGroup.aShapeIds.some(function(shapeId){return oGantt.oOverlapShapeIds[oRow.getIndex()].includes(shapeId);})){
|
|
302
320
|
oPseudoShapeIcon = getIcon("sap-icon://collapse", oTask);
|
|
@@ -311,16 +329,15 @@ sap.ui.define([
|
|
|
311
329
|
indicator.addStyleClass("sapGanttPseudoShapeOverlapIndicatorStyle");
|
|
312
330
|
oShapeGroup.overlapIndicatorFill = indicator.getFill() ? indicator.getFill() : oShapeClone.getOverlapFill();
|
|
313
331
|
if (oShapeClone.getTypeOfOverlapIndicator() != "Gradient"){
|
|
314
|
-
|
|
315
|
-
indicator.
|
|
316
|
-
indicator.setEndTime(oFormatedTime.endTime);
|
|
332
|
+
indicator.setTime(overlap.startTime);
|
|
333
|
+
indicator.setEndTime(overlap.endTime);
|
|
317
334
|
oShapeClone.addAggregation("indicators",indicator);
|
|
318
335
|
}
|
|
319
|
-
}
|
|
336
|
+
});
|
|
320
337
|
oPseudoShapeIcon.aCustomStyleClasses = ["pseudoShapeIcon"];
|
|
321
338
|
oShapeClone.addAggregation("button",oPseudoShapeIcon);
|
|
322
339
|
} else {
|
|
323
|
-
oShapeClone = this._createPseudoShape(oShapeGroup,
|
|
340
|
+
oShapeClone = this._createPseudoShape(oShapeGroup,oRow,oGantt,expanded);
|
|
324
341
|
oTask = oShapeClone.getTask();
|
|
325
342
|
}
|
|
326
343
|
oShapeClone.isPseudoShape = true;
|
|
@@ -330,8 +347,8 @@ sap.ui.define([
|
|
|
330
347
|
if (oShapeClone.getTypeOfOverlapIndicator() != "Indicator"){
|
|
331
348
|
oShapeClone.getTask().setFill('url(#' + oShapeGroup.id + ')');
|
|
332
349
|
}
|
|
333
|
-
oSettings.addAggregation("
|
|
334
|
-
oShapeClone._birdEye(
|
|
350
|
+
oSettings.addAggregation("pseudoShapes", oShapeClone, true);
|
|
351
|
+
oShapeClone._birdEye(aBindingInfos,oGantt,oShapeClone,oRow,index > -1 ? oGantt._aExpandedIndices.indexOf(oRow.getIndex()) == -1 : true, oShapePropertyPaths);
|
|
335
352
|
if (needGradientCalculations){
|
|
336
353
|
var pseudoShapeStartTime = oShapeGroup.startTime,
|
|
337
354
|
pseudoShapeEndTime = oShapeGroup.endTime;
|
|
@@ -370,13 +387,14 @@ sap.ui.define([
|
|
|
370
387
|
} else {
|
|
371
388
|
//if there are no overlaps, create original shape
|
|
372
389
|
if (oShapeGroup.iShapeCount === 1) {
|
|
373
|
-
var
|
|
390
|
+
var sAggrType = oShapeGroup.aShapeContexts[0].aggrType;
|
|
391
|
+
var oClone = aBindingInfos[aPossibleShapes.indexOf(sAggrType)].template.clone();
|
|
374
392
|
oClone.setBindingContext(oShapeGroup.aShapeContexts[0], sModelName);
|
|
375
393
|
// add back to the rows aggregation
|
|
376
|
-
oSettings.addAggregation(
|
|
377
|
-
var cloneIndex = oSettings.getAggregation(
|
|
394
|
+
oSettings.addAggregation(sAggrType, oClone, true);
|
|
395
|
+
var cloneIndex = oSettings.getAggregation(sAggrType).length - 1;
|
|
378
396
|
var iIndex = oRow.getIndex();
|
|
379
|
-
var overlapIndex = oGantt.oOverlapShapeIds && oGantt.oOverlapShapeIds[iIndex] && oGantt.oOverlapShapeIds[iIndex].indexOf(oSettings.getAggregation(
|
|
397
|
+
var overlapIndex = oGantt.oOverlapShapeIds && oGantt.oOverlapShapeIds[iIndex] && oGantt.oOverlapShapeIds[iIndex].indexOf(oSettings.getAggregation(sAggrType)[cloneIndex].getShapeId());
|
|
380
398
|
if (overlapIndex > -1){
|
|
381
399
|
if (oGantt.oOverlapShapeIds[iIndex].length > 1){
|
|
382
400
|
oGantt.oOverlapShapeIds[iIndex].splice(overlapIndex,1);
|
|
@@ -395,26 +413,29 @@ sap.ui.define([
|
|
|
395
413
|
* Creates shape groups for the provided binding information from the context
|
|
396
414
|
* @private
|
|
397
415
|
*/
|
|
398
|
-
BasePseudoShape.prototype._findPseudoShapeContextArray = function(aContext, oShapePropertyPaths
|
|
399
|
-
var aShapeGroups = [], iGroupIndex = 0, iOverlapIndex = 0, oGanttId = oGantt.getId();
|
|
416
|
+
BasePseudoShape.prototype._findPseudoShapeContextArray = function(aContext, oShapePropertyPaths, oRow, oGantt) {
|
|
417
|
+
var aShapeGroups = [], sAggrType, iGroupIndex = 0, iOverlapIndex = 0, oGanttId = oGantt.getId();
|
|
400
418
|
// Verified that operations are sorted in ascending order of their start time. If not, we need to sort it that way.
|
|
419
|
+
var aPossibleShapes = oGantt._getPossibleShapesInGantt();
|
|
401
420
|
if (aContext[0]){
|
|
421
|
+
sAggrType = aPossibleShapes.indexOf(aContext[0].aggrType);
|
|
402
422
|
aShapeGroups.push({
|
|
403
423
|
id: oGanttId + "_row-" + oRow.getIndex() + "group-" + iGroupIndex,
|
|
404
424
|
iShapeCount: 1, //number of overlapping shapes
|
|
405
|
-
startTime: aContext[0]
|
|
406
|
-
endTime: aContext[0]
|
|
425
|
+
startTime: this._timeFormatter(aContext[0], oShapePropertyPaths[sAggrType], oGantt).time,//start time of pseudo shape
|
|
426
|
+
endTime: this._timeFormatter(aContext[0], oShapePropertyPaths[sAggrType], oGantt).endTime, //end time of pseudo shape
|
|
407
427
|
overlaps: [], //array of overlap start and end time objects
|
|
408
428
|
aShapeContexts: [aContext[0]], //mostly not needed in original implementation, adding so you get all necessary info here
|
|
409
|
-
aShapeIds: [aContext[0].getProperty(oShapePropertyPaths.shapeId)]
|
|
429
|
+
aShapeIds: [aContext[0].getProperty(oShapePropertyPaths[sAggrType].shapeId)]
|
|
410
430
|
});
|
|
411
431
|
}
|
|
412
432
|
for (var i = 1; i < aContext.length; i++) {
|
|
413
433
|
var oOperation = aContext[i];
|
|
414
434
|
//check for complete overlaps
|
|
415
435
|
//incoming shape's start and end time
|
|
416
|
-
|
|
417
|
-
|
|
436
|
+
sAggrType = aPossibleShapes.indexOf(oOperation.aggrType);
|
|
437
|
+
var dShapeStartTime = this._timeFormatter(oOperation, oShapePropertyPaths[sAggrType], oGantt).time,
|
|
438
|
+
dShapeEndTime = this._timeFormatter(oOperation, oShapePropertyPaths[sAggrType], oGantt).endTime,
|
|
418
439
|
//Pseudo shape's start and end time
|
|
419
440
|
oShapeGroup = aShapeGroups[iGroupIndex],
|
|
420
441
|
dExistingShapeStartTime = oShapeGroup.startTime,
|
|
@@ -426,7 +447,7 @@ sap.ui.define([
|
|
|
426
447
|
//fully coinciding do nothing to pseudo shape's start and end time
|
|
427
448
|
oShapeGroup.aShapeContexts.push(oOperation);
|
|
428
449
|
oShapeGroup.iShapeCount ++;
|
|
429
|
-
oShapeGroup.aShapeIds.push(oOperation.getProperty(oShapePropertyPaths.shapeId));
|
|
450
|
+
oShapeGroup.aShapeIds.push(oOperation.getProperty(oShapePropertyPaths[aPossibleShapes.indexOf(oOperation.aggrType)].shapeId));
|
|
430
451
|
//if overlap are not there yet, add first overlap
|
|
431
452
|
//start time of overlap -> start time of incoming shape, end time of overlap -> end time of incoming shape
|
|
432
453
|
if (oShapeGroup.overlaps.length === 0) {
|
|
@@ -456,7 +477,7 @@ sap.ui.define([
|
|
|
456
477
|
//when incoming shape partially coincides with pseudo shape
|
|
457
478
|
oShapeGroup.aShapeContexts.push(oOperation);
|
|
458
479
|
oShapeGroup.iShapeCount++;
|
|
459
|
-
oShapeGroup.aShapeIds.push(oOperation.getProperty(oShapePropertyPaths.shapeId));
|
|
480
|
+
oShapeGroup.aShapeIds.push(oOperation.getProperty(oShapePropertyPaths[aPossibleShapes.indexOf(oOperation.aggrType)].shapeId));
|
|
460
481
|
//indicator endtime update
|
|
461
482
|
if (oShapeGroup.overlaps.length === 0) {
|
|
462
483
|
//if overlap are not there yet, add first overlap
|
|
@@ -499,7 +520,7 @@ sap.ui.define([
|
|
|
499
520
|
endTime: dShapeEndTime,
|
|
500
521
|
overlaps: [],
|
|
501
522
|
aShapeContexts: [oOperation],
|
|
502
|
-
aShapeIds: [oOperation.getProperty(oShapePropertyPaths.shapeId)]
|
|
523
|
+
aShapeIds: [oOperation.getProperty(oShapePropertyPaths[aPossibleShapes.indexOf(oOperation.aggrType)].shapeId)]
|
|
503
524
|
});
|
|
504
525
|
}
|
|
505
526
|
}
|
|
@@ -510,30 +531,27 @@ sap.ui.define([
|
|
|
510
531
|
*Calculates bird eye ranges
|
|
511
532
|
* @private
|
|
512
533
|
*/
|
|
513
|
-
BasePseudoShape.prototype._birdEye = function (
|
|
534
|
+
BasePseudoShape.prototype._birdEye = function (aBindingInfos, oGantt, oShapeClone, oRow, expanded, oShapePropertyPaths) {
|
|
514
535
|
var iRowIndex = oRow.getIndex(),
|
|
515
536
|
oSettings = oRow.getAggregation("_settings");
|
|
516
|
-
var
|
|
517
|
-
|
|
518
|
-
if (countInBirdEyeBindingInfo) {
|
|
519
|
-
countInBirdEyeVal = countInBirdEyeBindingInfo.parts[0].path || countInBirdEyeBindingInfo.path;
|
|
520
|
-
} else {
|
|
521
|
-
countInBirdEyeVal = oTaskBindingInfo.template.getCountInBirdEye();
|
|
522
|
-
}
|
|
523
|
-
if (typeof (countInBirdEyeVal) == "boolean") {
|
|
524
|
-
oShapeClone.setCountInBirdEye(countInBirdEyeVal);
|
|
525
|
-
oShapeClone.groupBirdEyeRangeStartTime = oShapeClone.getAggregation("task").getTime();
|
|
526
|
-
oShapeClone.groupBirdEyeRangeEndTime = oShapeClone.getAggregation("task").getEndTime();
|
|
527
|
-
}
|
|
528
|
-
var calculateBirdEyeRange = function () {
|
|
537
|
+
var aPossibleShapes = oGantt._getPossibleShapesInGantt();
|
|
538
|
+
var calculateBirdEyeRange = function (oShapePropertyPaths, oPseudoShape) {
|
|
529
539
|
var pseudoCountInBirdEye = false,
|
|
530
540
|
startTime, endTime;
|
|
531
541
|
for (var i = 0; i < oShapeClone.aShapeContexts.length; i++) {
|
|
532
542
|
var oShape = oShapeClone.aShapeContexts[i];
|
|
533
|
-
|
|
543
|
+
var sAggrType = aPossibleShapes.indexOf(oShape.aggrType);
|
|
544
|
+
var oShapeBindingInfo = aBindingInfos[sAggrType];
|
|
545
|
+
var countInBirdEyeBindingInfo = oShapeBindingInfo.template.getBindingInfo("countInBirdEye"), countInBirdEyeVal;
|
|
546
|
+
if (countInBirdEyeBindingInfo) {
|
|
547
|
+
countInBirdEyeVal = countInBirdEyeBindingInfo.parts[0].path || countInBirdEyeBindingInfo.path;
|
|
548
|
+
} else {
|
|
549
|
+
countInBirdEyeVal = oShapeBindingInfo.template.getCountInBirdEye();
|
|
550
|
+
}
|
|
551
|
+
if (typeof (countInBirdEyeVal) != "boolean" && oShape.getProperty(countInBirdEyeVal) || countInBirdEyeVal == true) {
|
|
534
552
|
pseudoCountInBirdEye = true;
|
|
535
|
-
var oCurrentStartTime =
|
|
536
|
-
var oCurrentEndTime =
|
|
553
|
+
var oCurrentStartTime = oPseudoShape._timeFormatter(oShape, oShapePropertyPaths[sAggrType], oGantt).time;
|
|
554
|
+
var oCurrentEndTime = oPseudoShape._timeFormatter(oShape, oShapePropertyPaths[sAggrType], oGantt).endTime;
|
|
537
555
|
if (!startTime || oCurrentStartTime < startTime) {
|
|
538
556
|
startTime = oCurrentStartTime;
|
|
539
557
|
}
|
|
@@ -553,16 +571,22 @@ sap.ui.define([
|
|
|
553
571
|
return oGantt.oOverlapShapeIds[iRowIndex].includes(shapeId);
|
|
554
572
|
}) && expanded) {
|
|
555
573
|
var sModelName = oGantt.getTable().getBindingInfo("rows").model;
|
|
556
|
-
var aTasks = oSettings.getAggregation("tasks");
|
|
557
|
-
var cloneIndex = aTasks ? aTasks.length : 0;
|
|
558
574
|
var pseudoCountInBirdEye = false,
|
|
559
575
|
startTime, endTime;
|
|
560
|
-
|
|
576
|
+
oShapeClone.aShapeContexts.forEach(function (oContext) {
|
|
577
|
+
var sAggrType = aPossibleShapes.indexOf(oContext.aggrType);
|
|
578
|
+
var oShapeBindingInfo = aBindingInfos[sAggrType];
|
|
579
|
+
var countInBirdEyeBindingInfo = oShapeBindingInfo.template.getBindingInfo("countInBirdEye"), countInBirdEyeVal;
|
|
580
|
+
if (countInBirdEyeBindingInfo) {
|
|
581
|
+
countInBirdEyeVal = countInBirdEyeBindingInfo.parts[0].path || countInBirdEyeBindingInfo.path;
|
|
582
|
+
} else {
|
|
583
|
+
countInBirdEyeVal = oShapeBindingInfo.template.getCountInBirdEye();
|
|
584
|
+
}
|
|
561
585
|
if (typeof (countInBirdEyeVal) != "boolean") {
|
|
562
586
|
if (oContext.getProperty(countInBirdEyeVal)) {
|
|
563
587
|
pseudoCountInBirdEye = true;
|
|
564
|
-
var oCurrentStartTime =
|
|
565
|
-
var oCurrentEndTime =
|
|
588
|
+
var oCurrentStartTime = this._timeFormatter(oContext, oShapePropertyPaths[sAggrType], oGantt).time;
|
|
589
|
+
var oCurrentEndTime = this._timeFormatter(oContext, oShapePropertyPaths[sAggrType], oGantt).endTime;
|
|
566
590
|
if (!startTime || oCurrentStartTime < startTime) {
|
|
567
591
|
startTime = oCurrentStartTime;
|
|
568
592
|
}
|
|
@@ -571,23 +595,25 @@ sap.ui.define([
|
|
|
571
595
|
}
|
|
572
596
|
}
|
|
573
597
|
}
|
|
574
|
-
var oClone
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
598
|
+
var oClone;
|
|
599
|
+
var oBindingInfo = aBindingInfos[sAggrType];
|
|
600
|
+
if (oBindingInfo){
|
|
601
|
+
oClone = oBindingInfo.template.clone();
|
|
602
|
+
oClone.setBindingContext(oContext, sModelName);
|
|
603
|
+
// add back to the rows aggregation
|
|
604
|
+
oSettings.addAggregation(oContext.aggrType, oClone, true);
|
|
605
|
+
}
|
|
606
|
+
oSettings.getAggregation(oContext.aggrType)[oSettings.getAggregation(oContext.aggrType).length - 1].isPartOfExpandedPseudoShape = true;
|
|
580
607
|
var index = index > -1 ? index : iRowIndex;
|
|
581
608
|
oGantt.oOverlapShapeIds[index] = oShapeClone.aShapeIds;
|
|
582
|
-
|
|
583
|
-
});
|
|
609
|
+
}.bind(this));
|
|
584
610
|
if (typeof (countInBirdEyeVal) != "boolean") {
|
|
585
611
|
oShapeClone.groupBirdEyeRangeStartTime = startTime;
|
|
586
612
|
oShapeClone.groupBirdEyeRangeEndTime = endTime;
|
|
587
613
|
oShapeClone.setCountInBirdEye(pseudoCountInBirdEye);
|
|
588
614
|
}
|
|
589
|
-
} else
|
|
590
|
-
var oBirdEyeCalculationInfo = calculateBirdEyeRange();
|
|
615
|
+
} else {
|
|
616
|
+
var oBirdEyeCalculationInfo = calculateBirdEyeRange(oShapePropertyPaths, this);
|
|
591
617
|
oShapeClone.groupBirdEyeRangeStartTime = oBirdEyeCalculationInfo.startTime;
|
|
592
618
|
oShapeClone.groupBirdEyeRangeEndTime = oBirdEyeCalculationInfo.endTime;
|
|
593
619
|
oShapeClone.setCountInBirdEye(oBirdEyeCalculationInfo.pseudoCountInBirdEye);
|
|
@@ -53,7 +53,7 @@ sap.ui.define([
|
|
|
53
53
|
* @extends sap.ui.core.Element
|
|
54
54
|
*
|
|
55
55
|
* @author SAP SE
|
|
56
|
-
* @version 1.
|
|
56
|
+
* @version 1.120.1
|
|
57
57
|
*
|
|
58
58
|
* @abstract
|
|
59
59
|
* @constructor
|
|
@@ -650,7 +650,13 @@ sap.ui.define([
|
|
|
650
650
|
BaseShape.prototype._shallWriteElementData = function(oShape) {
|
|
651
651
|
var bShallWrite = !oShape.getParent();
|
|
652
652
|
if (bShallWrite === false) {
|
|
653
|
-
|
|
653
|
+
//since the overlay shape is nested inside GanttRowOverlay and overlay control, move up two level for rowsettings.
|
|
654
|
+
var oGanttRowOverlay = oShape.getParent().getParent();
|
|
655
|
+
if (oGanttRowOverlay && oGanttRowOverlay.isA("sap.gantt.overlays.GanttRowOverlay")){
|
|
656
|
+
bShallWrite = AggregationUtils.isParentRowSetting(oGanttRowOverlay);
|
|
657
|
+
} else {
|
|
658
|
+
bShallWrite = AggregationUtils.isParentRowSetting( oShape);
|
|
659
|
+
}
|
|
654
660
|
}
|
|
655
661
|
if (bShallWrite === false){
|
|
656
662
|
bShallWrite = AggregationUtils.isAdhocLine(oShape);
|
|
@@ -77,7 +77,7 @@ sap.ui.define([
|
|
|
77
77
|
* @extends sap.m.OverflowToolbar
|
|
78
78
|
*
|
|
79
79
|
* @author SAP SE
|
|
80
|
-
* @version 1.
|
|
80
|
+
* @version 1.120.1
|
|
81
81
|
*
|
|
82
82
|
* @constructor
|
|
83
83
|
* @public
|
|
@@ -519,10 +519,12 @@ sap.ui.define([
|
|
|
519
519
|
press: function () {
|
|
520
520
|
if (this.getParent().getShowSearchSidePanel()) {
|
|
521
521
|
var oInputField = this.getParent().getSearchSidePanel()._oSearchSidePanel.getItems()[1].getContent()[0];
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
522
|
+
if (oInputField.getDomRef()){
|
|
523
|
+
var iInputLength = oInputField.getValue().length;
|
|
524
|
+
var oSearchTextDom = oInputField.getDomRef().getElementsByTagName("input")[0];
|
|
525
|
+
oInputField.focus();
|
|
526
|
+
oSearchTextDom.setSelectionRange(0, iInputLength);
|
|
527
|
+
}
|
|
526
528
|
} else {
|
|
527
529
|
this.fireFindButtonPress();
|
|
528
530
|
var findMode = library.config.FindMode;
|
|
@@ -1137,8 +1139,8 @@ sap.ui.define([
|
|
|
1137
1139
|
ContainerToolbar.prototype.updateSettingItems = function(mChanges) {
|
|
1138
1140
|
var aSettingItems = this._oSettingsBox.getItems();
|
|
1139
1141
|
Object.keys(mChanges).forEach(function(property){
|
|
1140
|
-
var oSettingItem = aSettingItems.filter(function(
|
|
1141
|
-
return
|
|
1142
|
+
var oSettingItem = aSettingItems.filter(function(oCheckBox){
|
|
1143
|
+
return oCheckBox.getName().endsWith(property);
|
|
1142
1144
|
})[0];
|
|
1143
1145
|
|
|
1144
1146
|
if (oSettingItem) {
|
|
@@ -17,7 +17,7 @@ sap.ui.define(['sap/ui/thirdparty/jquery', "sap/ui/Device"], function(jQuery, De
|
|
|
17
17
|
* @class Utility functionality to work with SVG coordination, e.g. find x position of cursor
|
|
18
18
|
*
|
|
19
19
|
* @author SAP SE
|
|
20
|
-
* @version 1.
|
|
20
|
+
* @version 1.120.1
|
|
21
21
|
*
|
|
22
22
|
* @private
|
|
23
23
|
* @static
|
|
@@ -372,6 +372,8 @@ sap.ui.define(
|
|
|
372
372
|
}
|
|
373
373
|
// Rendering the Chart Delta Area between the lines
|
|
374
374
|
var oChartDeltaArea = oDeltaLine._getChartDeltaArea();
|
|
375
|
+
var iDiff = Math.abs(iX2 - iX1);
|
|
376
|
+
var iWidth = iDiff - (oDeltaLine.getVisibleDeltaStartEndLines() && iDiff >= 2 ? 2 : 0);
|
|
375
377
|
if (oGantt.getDeltaAreaHighlightColor() === "") {
|
|
376
378
|
oGantt.setDeltaAreaHighlightColor("@sapUiListSelectionBackgroundColor");
|
|
377
379
|
}
|
|
@@ -380,14 +382,14 @@ sap.ui.define(
|
|
|
380
382
|
x: iX1 + 1,
|
|
381
383
|
y: 0,
|
|
382
384
|
height: "100%",
|
|
383
|
-
width:
|
|
385
|
+
width: iWidth,
|
|
384
386
|
fill: oGantt.getDeltaAreaHighlightColor(),
|
|
385
387
|
opacity: opacity
|
|
386
388
|
});
|
|
387
389
|
oDeltaLine._setChartDeltaArea(oChartDeltaArea);
|
|
388
390
|
} else {
|
|
389
391
|
oChartDeltaArea.setProperty("x", iX1 + 1, true);
|
|
390
|
-
oChartDeltaArea.setProperty("width",
|
|
392
|
+
oChartDeltaArea.setProperty("width", iWidth, true);
|
|
391
393
|
oChartDeltaArea.setProperty("opacity", opacity, true);
|
|
392
394
|
}
|
|
393
395
|
oChartDeltaArea.renderElement(oRm, oChartDeltaArea);
|
|
@@ -26,7 +26,7 @@ sap.ui.define([
|
|
|
26
26
|
* @extends sap.gantt.simple.ExpandModel
|
|
27
27
|
*
|
|
28
28
|
* @author SAP SE
|
|
29
|
-
* @version 1.
|
|
29
|
+
* @version 1.120.1
|
|
30
30
|
*
|
|
31
31
|
* @constructor
|
|
32
32
|
* @private
|
|
@@ -59,15 +59,21 @@ sap.ui.define([
|
|
|
59
59
|
var bExpandToggled = false;
|
|
60
60
|
this.rowMaxLevelMap = {};
|
|
61
61
|
var aShapeSchemeKeys = [];
|
|
62
|
+
var oGantt = oTable.getParent();
|
|
62
63
|
Array.isArray(aExpandSchemes) && aExpandSchemes.forEach(function(scheme){
|
|
63
64
|
aShapeSchemeKeys.push(scheme.getKey());
|
|
64
65
|
});
|
|
65
66
|
for (var iIndex = 0; iIndex < aSelectedIndices.length; iIndex++) {
|
|
66
67
|
var iSelectedIndex = aSelectedIndices[iIndex];
|
|
67
68
|
|
|
68
|
-
var oRowSettings = GanttUtils.getSelectedTableRowSettings(oTable, iSelectedIndex);
|
|
69
|
-
|
|
70
|
-
|
|
69
|
+
var oRowSettings = GanttUtils.getSelectedTableRowSettings(oTable, iSelectedIndex),overlayAggList;
|
|
70
|
+
if (oRowSettings){
|
|
71
|
+
//add expand or staticOverlay aggreagtion shapes
|
|
72
|
+
AggregationUtils._addExpandStaticOverlay(oRowSettings,bExpanded,oGantt);
|
|
73
|
+
//fetch overlay aggreagtion shapes
|
|
74
|
+
overlayAggList = AggregationUtils._fetchOverlayAggregation(oRowSettings,false);
|
|
75
|
+
}
|
|
76
|
+
var bUseParentShapesOnExpand = oGantt.getUseParentShapeOnExpand();
|
|
71
77
|
if (!oGantt._bExpandRows && (oRowSettings == null)) {
|
|
72
78
|
// possible that the Control haven't been placed At anywhere
|
|
73
79
|
break;
|
|
@@ -87,7 +93,7 @@ sap.ui.define([
|
|
|
87
93
|
aExpandableShapes.forEach(function(oMainshape){ // eslint-disable-line
|
|
88
94
|
if (bUseParentShapesOnExpand) {
|
|
89
95
|
//experimental code
|
|
90
|
-
var aNonMultiActivityShapes = (aShapeSchemeKeys.indexOf(oMainshape.getScheme()) > -1) ? [oMainshape] : [];
|
|
96
|
+
var aNonMultiActivityShapes = (aShapeSchemeKeys.indexOf(oMainshape.getScheme()) > -1 || aShapeSchemeKeys.length == 0) ? [oMainshape] : [];
|
|
91
97
|
aChild = oMainshape instanceof sap.gantt.simple.MultiActivityGroup ? AggregationUtils.getNonLazyElementsByScheme(oMainshape, aShapeSchemeKeys) : aNonMultiActivityShapes;
|
|
92
98
|
childArraay = GanttUtils._getExpandedChildArray(aChild, oGantt, aShapeSchemeKeys, childArraay);
|
|
93
99
|
if (childArraayLength != childArraay.length){
|
|
@@ -125,6 +131,7 @@ sap.ui.define([
|
|
|
125
131
|
aLength.push(aChildWithLevels.maxLevel);
|
|
126
132
|
var iMaxLength = Math.max.apply(null, aLength);
|
|
127
133
|
if (iMaxLength > 0) {
|
|
134
|
+
iMaxLength = AggregationUtils._addLevelAndUpdateMaxLength(overlayAggList,iMaxLength,oRowSettings);
|
|
128
135
|
this.toggle(bExpanded, oRowSettings, oPrimaryScheme, aExpandSchemes, iMaxLength, bUseParentShapesOnExpand);
|
|
129
136
|
this.rowMaxLevelMap["row" + iSelectedIndex] = iMaxLength;
|
|
130
137
|
bExpandToggled = true;
|
|
@@ -66,7 +66,7 @@ sap.ui.define([
|
|
|
66
66
|
function _findShapeInRow () {
|
|
67
67
|
that._oFoundShape = null;
|
|
68
68
|
that._bExpandPseudoShape = false;
|
|
69
|
-
var oRowSetting =
|
|
69
|
+
var oRowSetting = Core.byId(oRowDomRef.parentElement.id);
|
|
70
70
|
if (oRowSetting) {
|
|
71
71
|
var mAggregations = AggregationUtils.getAllNonLazyAggregations(oRowSetting);
|
|
72
72
|
var aShapesInRow = Object.keys(mAggregations).filter(function(sName){
|
|
@@ -96,6 +96,12 @@ sap.ui.define([
|
|
|
96
96
|
oRowDetails = Utility.parseUid(oShape.getShapeUid());
|
|
97
97
|
if (that.rowIndex !== parseInt(oRowDetails.rowIndex, 10)) {
|
|
98
98
|
that.rowIndex = parseInt(oRowDetails.rowIndex, 10);
|
|
99
|
+
if (oGantt){
|
|
100
|
+
if (!oGantt.pseudoShapeSpecificData){
|
|
101
|
+
oGantt.pseudoShapeSpecificData = {};
|
|
102
|
+
}
|
|
103
|
+
oGantt.pseudoShapeSpecificData.needUpdateForTasksInAggr = true;
|
|
104
|
+
}
|
|
99
105
|
oGantt.getTable().setFirstVisibleRow(that.rowIndex);
|
|
100
106
|
}
|
|
101
107
|
}
|