@sapui5/sap.zen.crosstab 1.107.0 → 1.108.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/sap/zen/crosstab/.library +1 -1
- package/src/sap/zen/crosstab/BaseArea.js +32 -36
- package/src/sap/zen/crosstab/CrosstabRenderer.js +102 -145
- package/src/sap/zen/crosstab/DataCell.js +61 -61
- package/src/sap/zen/crosstab/DataCellRenderer.js +24 -30
- package/src/sap/zen/crosstab/HeaderCell.js +171 -167
- package/src/sap/zen/crosstab/HeaderCellRenderer.js +115 -135
- package/src/sap/zen/crosstab/library.js +1 -1
- package/src/sap/zen/crosstab/themes/base/Chart.less +4 -0
- package/src/sap/zen/crosstab/utils/Utils.js +28 -29
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<name>sap.zen.crosstab</name>
|
|
4
4
|
<vendor>SAP SE</vendor>
|
|
5
5
|
<copyright>(c) Copyright 2010-2019 SAP SE or an SAP affiliate company.</copyright>
|
|
6
|
-
<version>1.
|
|
6
|
+
<version>1.108.0</version>
|
|
7
7
|
<documentation>Design Studio Crosstab library. NOT INTENDED FOR STANDALONE USAGE.</documentation>
|
|
8
8
|
<appData>
|
|
9
9
|
<jsdoc xmlns="http://www.sap.com/ui5/buildext/jsdoc" >
|
|
@@ -822,68 +822,64 @@ sap.ui.define(
|
|
|
822
822
|
return this.iLoadingPageCnt;
|
|
823
823
|
};
|
|
824
824
|
sap.zen.crosstab.BaseArea.prototype.openContainerCell = function (oRm, sClass) {
|
|
825
|
-
oRm.
|
|
826
|
-
oRm.
|
|
827
|
-
oRm.
|
|
828
|
-
oRm.
|
|
829
|
-
oRm.
|
|
830
|
-
oRm.writeStyles();
|
|
825
|
+
oRm.openStart("td");
|
|
826
|
+
oRm.style("border-spacing", "0px");
|
|
827
|
+
oRm.style("padding", "0px");
|
|
828
|
+
oRm.style("border-width", "0px");
|
|
829
|
+
oRm.style("margin", "0px");
|
|
831
830
|
if (sClass) {
|
|
832
|
-
oRm.
|
|
831
|
+
oRm.attr("class", sClass);
|
|
833
832
|
}
|
|
834
|
-
oRm.
|
|
833
|
+
oRm.openEnd();
|
|
835
834
|
};
|
|
836
835
|
sap.zen.crosstab.BaseArea.prototype.closeContainerCell = function (oRm) {
|
|
837
|
-
oRm.
|
|
836
|
+
oRm.close("td");
|
|
838
837
|
};
|
|
839
838
|
sap.zen.crosstab.BaseArea.prototype.openContainerTable = function (oRm) {
|
|
840
|
-
oRm.
|
|
841
|
-
oRm.
|
|
842
|
-
oRm.
|
|
843
|
-
oRm.
|
|
844
|
-
oRm.
|
|
845
|
-
oRm.
|
|
846
|
-
oRm.
|
|
847
|
-
oRm.writeStyles();
|
|
848
|
-
oRm.write(">");
|
|
839
|
+
oRm.openStart("table", this.sId + "_container");
|
|
840
|
+
oRm.style("border-collapse", "collapse");
|
|
841
|
+
oRm.style("border-spacing", "0px");
|
|
842
|
+
oRm.style("padding", "0px");
|
|
843
|
+
oRm.style("border-width", "0px");
|
|
844
|
+
oRm.style("margin", "0px");
|
|
845
|
+
oRm.openEnd();
|
|
849
846
|
};
|
|
850
847
|
sap.zen.crosstab.BaseArea.prototype.closeContainerTable = function (oRm) {
|
|
851
|
-
oRm.
|
|
848
|
+
oRm.close("table");
|
|
852
849
|
};
|
|
853
850
|
sap.zen.crosstab.BaseArea.prototype.renderContainerStructure = function (oRm, sStyle, bVCutOff, bHCutOff) {
|
|
854
851
|
this.openContainerTable(oRm);
|
|
855
852
|
// first row
|
|
856
|
-
oRm.
|
|
853
|
+
oRm.openStart("tr").openEnd();
|
|
857
854
|
this.openContainerCell(oRm);
|
|
858
|
-
oRm.
|
|
859
|
-
oRm.
|
|
860
|
-
oRm.
|
|
861
|
-
oRm.
|
|
862
|
-
oRm.write("</table>");
|
|
855
|
+
oRm.openStart("table", this.sId);
|
|
856
|
+
oRm.attr("class", sStyle);
|
|
857
|
+
oRm.openEnd();
|
|
858
|
+
oRm.close("table");
|
|
863
859
|
this.closeContainerCell(oRm);
|
|
864
860
|
if (bHCutOff) {
|
|
865
861
|
this.openContainerCell(oRm, "sapzencrosstab-HorizontalCutOff-" + this.getAreaType());
|
|
866
|
-
oRm.
|
|
867
|
-
oRm.
|
|
868
|
-
oRm.
|
|
869
|
-
oRm.
|
|
862
|
+
oRm.openStart("div");
|
|
863
|
+
oRm.class("sapzencrosstab-HorizontalCutOffSpacer");
|
|
864
|
+
oRm.openEnd();
|
|
865
|
+
oRm.close("div");
|
|
870
866
|
this.closeContainerCell(oRm);
|
|
871
867
|
}
|
|
872
|
-
oRm.
|
|
868
|
+
oRm.close("tr");
|
|
873
869
|
if (bVCutOff) {
|
|
874
870
|
// second row
|
|
875
|
-
oRm.
|
|
871
|
+
oRm.openStart("tr").openEnd();
|
|
876
872
|
this.openContainerCell(oRm, "sapzencrosstab-VerticalCutOff-" + this.getAreaType());
|
|
877
|
-
oRm.
|
|
878
|
-
oRm.
|
|
879
|
-
oRm.
|
|
880
|
-
oRm.
|
|
873
|
+
oRm.openStart("div");
|
|
874
|
+
oRm.class("sapzencrosstab-VerticalCutOffSpacer");
|
|
875
|
+
oRm.openEnd();
|
|
876
|
+
oRm.close("div");
|
|
881
877
|
this.closeContainerCell(oRm);
|
|
882
878
|
if (bHCutOff) {
|
|
883
879
|
this.openContainerCell(oRm, "sapzencrosstab-CutOffCorner");
|
|
884
880
|
this.closeContainerCell(oRm);
|
|
885
881
|
}
|
|
886
|
-
oRm.
|
|
882
|
+
oRm.close("tr");
|
|
887
883
|
}
|
|
888
884
|
this.closeContainerTable(oRm);
|
|
889
885
|
};
|
|
@@ -24,15 +24,9 @@ sap.ui.define(
|
|
|
24
24
|
* @param {sap.ui.core.Control}
|
|
25
25
|
* oControl an object representation of the control that should be rendered
|
|
26
26
|
*/
|
|
27
|
-
sap.zen.crosstab.CrosstabRenderer.render = function (
|
|
28
|
-
"use strict";
|
|
29
|
-
|
|
27
|
+
sap.zen.crosstab.CrosstabRenderer.render = function (rm, oControl) {
|
|
30
28
|
oControl.prepareContainer();
|
|
31
29
|
|
|
32
|
-
// convenience variable
|
|
33
|
-
var rm = oRenderManager;
|
|
34
|
-
var sClasses = "";
|
|
35
|
-
|
|
36
30
|
var sCrosstabWidth = oControl.getWidth();
|
|
37
31
|
if (sCrosstabWidth === "auto") {
|
|
38
32
|
sCrosstabWidth = "100%";
|
|
@@ -43,60 +37,46 @@ sap.ui.define(
|
|
|
43
37
|
}
|
|
44
38
|
|
|
45
39
|
// write the HTML into the render manager
|
|
46
|
-
rm.
|
|
47
|
-
rm.
|
|
48
|
-
rm.addStyle("overflow", "hidden");
|
|
40
|
+
rm.openStart("div", oControl);
|
|
41
|
+
rm.style("overflow", "hidden");
|
|
49
42
|
if (sCrosstabWidth) {
|
|
50
|
-
rm.
|
|
43
|
+
rm.style("width", sCrosstabWidth);
|
|
51
44
|
}
|
|
52
45
|
if (sCrosstabHeight) {
|
|
53
|
-
rm.
|
|
46
|
+
rm.style("height", sCrosstabHeight);
|
|
54
47
|
}
|
|
55
48
|
if (Utils.isMainMode()) {
|
|
56
|
-
|
|
49
|
+
rm.class("sapzencrosstab-FontSize-MainMode");
|
|
57
50
|
}
|
|
58
|
-
|
|
51
|
+
rm.class("sapzencrosstab-CrosstabComponent");
|
|
59
52
|
if(oControl.getTransferDataCommand() && oControl.getTransferDataCommand().length > 0){
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
if (oControl.aCustomStyleClasses && oControl.aCustomStyleClasses.length > 0) {
|
|
63
|
-
var i = 0;
|
|
64
|
-
for (i = 0; i < oControl.aCustomStyleClasses.length; i++) {
|
|
65
|
-
sClasses = sClasses + oControl.aCustomStyleClasses[i] + " ";
|
|
66
|
-
}
|
|
53
|
+
rm.class("sapzencrosstab-InputEnabled");
|
|
67
54
|
}
|
|
68
55
|
|
|
69
56
|
if (oControl.getRenderMode() === RenderingConstants.RENDERMODE_FILL) {
|
|
70
|
-
rm.
|
|
71
|
-
|
|
57
|
+
rm.style("visibility", "hidden");
|
|
58
|
+
rm.class("sapzencrosstab-TableDiv").class("sapzencrosstab-TableDivBackground");
|
|
72
59
|
}
|
|
73
|
-
rm.
|
|
74
|
-
rm.writeStyles();
|
|
75
|
-
rm.write(">");
|
|
60
|
+
rm.openEnd();
|
|
76
61
|
if (oControl.getRenderMode() === RenderingConstants.RENDERMODE_COMPACT) {
|
|
77
|
-
rm.
|
|
78
|
-
rm.
|
|
79
|
-
rm.
|
|
80
|
-
rm.
|
|
81
|
-
rm.
|
|
82
|
-
rm.
|
|
83
|
-
rm.writeStyles();
|
|
84
|
-
rm.write(">");
|
|
62
|
+
rm.openStart("div", oControl.getId() + "_altRenderModeTableDiv");
|
|
63
|
+
rm.style("visibility", "hidden");
|
|
64
|
+
rm.style("width", "100%");
|
|
65
|
+
rm.style("height", "100%");
|
|
66
|
+
rm.class("sapzencrosstab-TableDiv").class("sapzencrosstab-TableDivBackground");
|
|
67
|
+
rm.openEnd();
|
|
85
68
|
}
|
|
86
|
-
rm.
|
|
87
|
-
rm.
|
|
88
|
-
rm.
|
|
89
|
-
rm.write(">");
|
|
69
|
+
rm.openStart("div", oControl.getId() + "_renderSizeDiv");
|
|
70
|
+
rm.class("sapzencrosstab-RenderSizeDiv");
|
|
71
|
+
rm.openEnd();
|
|
90
72
|
|
|
91
|
-
rm.
|
|
92
|
-
rm.
|
|
93
|
-
rm.
|
|
94
|
-
rm.write(">"); // table element
|
|
73
|
+
rm.openStart("table", oControl.getId() + "_table");
|
|
74
|
+
rm.class("sapzencrosstab-Crosstab");
|
|
75
|
+
rm.openEnd(); // table element
|
|
95
76
|
|
|
96
77
|
// first row
|
|
97
|
-
rm.
|
|
98
|
-
rm.
|
|
99
|
-
rm.write(">");
|
|
78
|
+
rm.openStart("tr", oControl.getId() + "_upperSection");
|
|
79
|
+
rm.openEnd();
|
|
100
80
|
|
|
101
81
|
sap.zen.crosstab.CrosstabRenderer.writeCell(
|
|
102
82
|
rm, oControl.getId() + "_upperLeft", oControl.getDimensionHeaderArea(),
|
|
@@ -107,12 +87,11 @@ sap.ui.define(
|
|
|
107
87
|
oControl
|
|
108
88
|
);
|
|
109
89
|
|
|
110
|
-
rm.
|
|
90
|
+
rm.close("tr");
|
|
111
91
|
|
|
112
92
|
// second row
|
|
113
|
-
rm.
|
|
114
|
-
rm.
|
|
115
|
-
rm.write(">");
|
|
93
|
+
rm.openStart("tr", oControl.getId() + "_lowerSection");
|
|
94
|
+
rm.openEnd();
|
|
116
95
|
|
|
117
96
|
sap.zen.crosstab.CrosstabRenderer.writeCell(
|
|
118
97
|
rm, oControl.getId() + "_lowerLeft", oControl.getRowHeaderArea(),
|
|
@@ -120,137 +99,115 @@ sap.ui.define(
|
|
|
120
99
|
);
|
|
121
100
|
sap.zen.crosstab.CrosstabRenderer.writeCell(rm, oControl.getId() + "_lowerRight", oControl.getDataArea(), oControl);
|
|
122
101
|
|
|
123
|
-
rm.
|
|
102
|
+
rm.close("tr");
|
|
124
103
|
|
|
125
|
-
rm.
|
|
126
|
-
rm.
|
|
104
|
+
rm.close("table");
|
|
105
|
+
rm.close("div");
|
|
127
106
|
|
|
128
107
|
// Toolbar
|
|
129
108
|
if (oControl.getPropertyBag().hasToolbar()) {
|
|
130
|
-
rm.
|
|
131
|
-
rm.
|
|
132
|
-
rm.
|
|
133
|
-
rm.
|
|
134
|
-
rm.
|
|
135
|
-
rm.
|
|
136
|
-
rm.write(">");
|
|
137
|
-
rm.write("</div>");
|
|
109
|
+
rm.openStart("div", oControl.getId() + "_toolbar");
|
|
110
|
+
rm.class("sapzencrosstab-ToolbarDiv");
|
|
111
|
+
rm.style("position", "absolute");
|
|
112
|
+
rm.style("bottom", "0px");
|
|
113
|
+
rm.openEnd();
|
|
114
|
+
rm.close("div");
|
|
138
115
|
}
|
|
139
116
|
|
|
140
|
-
rm.
|
|
141
|
-
rm.
|
|
142
|
-
rm.
|
|
143
|
-
rm.
|
|
144
|
-
rm.writeStyles();
|
|
145
|
-
rm.write(">");
|
|
117
|
+
rm.openStart("div", oControl.getId() + "_loadingAnimationDiv");
|
|
118
|
+
rm.class("sapzencrosstab-loadingAnimationDiv");
|
|
119
|
+
rm.style("visibility", "hidden");
|
|
120
|
+
rm.openEnd();
|
|
146
121
|
|
|
147
|
-
rm.
|
|
148
|
-
rm.
|
|
149
|
-
rm.
|
|
150
|
-
rm.
|
|
122
|
+
rm.openStart("div");
|
|
123
|
+
rm.class("sapzencrosstab-loadingAnimation");
|
|
124
|
+
rm.openEnd();
|
|
125
|
+
rm.close("div");
|
|
151
126
|
|
|
152
|
-
rm.
|
|
127
|
+
rm.close("div");
|
|
153
128
|
|
|
154
129
|
// measure div to determine hierarchy width/height
|
|
155
|
-
rm.
|
|
156
|
-
rm.
|
|
157
|
-
rm.
|
|
158
|
-
rm.
|
|
159
|
-
rm.
|
|
160
|
-
rm.write(">");
|
|
161
|
-
rm.write("</div>");
|
|
130
|
+
rm.openStart("div", oControl.getId() + "_measureDiv");
|
|
131
|
+
rm.class(oControl.getPropertyBag().isCozyMode() ? "sapzencrosstab-HierarchyIndentCozy" : "sapzencrosstab-HierarchyIndent");
|
|
132
|
+
rm.style("visibility", "none");
|
|
133
|
+
rm.openEnd();
|
|
134
|
+
rm.close("div");
|
|
162
135
|
|
|
163
136
|
// exception measure div to determine symbol width
|
|
164
|
-
rm.
|
|
165
|
-
rm.
|
|
166
|
-
rm.
|
|
167
|
-
rm.
|
|
168
|
-
rm.
|
|
169
|
-
rm.write(">");
|
|
170
|
-
rm.write("</div>");
|
|
137
|
+
rm.openStart("div", oControl.getId() + "_exceptionMeasureDiv");
|
|
138
|
+
rm.class("sapzencrosstab-SymbolAlertDimensions");
|
|
139
|
+
rm.style("visibility", "none");
|
|
140
|
+
rm.openEnd();
|
|
141
|
+
rm.close("div");
|
|
171
142
|
|
|
172
143
|
// Resize div for moveable header resizer if the header can be resized by the user
|
|
173
144
|
if (oControl.isUserHeaderResizeAllowed() && (oControl.hasDataArea() || oControl.hasColHeaderArea()) && (oControl.hasDimensionHeaderArea() || oControl.hasRowHeaderArea())) {
|
|
174
|
-
rm.
|
|
175
|
-
rm.
|
|
176
|
-
rm.
|
|
177
|
-
rm.
|
|
178
|
-
rm.
|
|
179
|
-
rm.
|
|
180
|
-
rm.
|
|
181
|
-
rm.write(">");
|
|
182
|
-
rm.write("</div>");
|
|
145
|
+
rm.openStart("div", oControl.getId() + "_headerResizeHandle");
|
|
146
|
+
rm.class("sapzencrosstab-headerResizeHandleWidth");
|
|
147
|
+
rm.style("position", "absolute");
|
|
148
|
+
rm.style("top", "0px");
|
|
149
|
+
rm.style("height", "100%");
|
|
150
|
+
rm.openEnd();
|
|
151
|
+
rm.close("div");
|
|
183
152
|
}
|
|
184
153
|
|
|
185
154
|
// Column resize ruler
|
|
186
155
|
if (oControl.getPropertyBag().isEnableColResize()) {
|
|
187
|
-
rm.
|
|
188
|
-
rm.
|
|
189
|
-
rm.
|
|
190
|
-
rm.
|
|
191
|
-
rm.
|
|
192
|
-
rm.write(">");
|
|
193
|
-
rm.write("</div>");
|
|
156
|
+
rm.openStart("div", oControl.getId() + "_colResizeRuler");
|
|
157
|
+
rm.class("sapzencrosstab-colResizeRuler");
|
|
158
|
+
rm.style("visibility", "hidden");
|
|
159
|
+
rm.openEnd();
|
|
160
|
+
rm.close("div");
|
|
194
161
|
}
|
|
195
162
|
|
|
196
163
|
if (oControl.getRenderMode() === RenderingConstants.RENDERMODE_COMPACT) {
|
|
197
|
-
rm.
|
|
164
|
+
rm.close("div");
|
|
198
165
|
}
|
|
199
166
|
|
|
200
|
-
rm.
|
|
201
|
-
rm.
|
|
202
|
-
rm.
|
|
203
|
-
rm.
|
|
204
|
-
rm.
|
|
205
|
-
rm.
|
|
206
|
-
rm.
|
|
207
|
-
|
|
208
|
-
rm.
|
|
209
|
-
|
|
210
|
-
rm.
|
|
211
|
-
rm.
|
|
212
|
-
rm.
|
|
213
|
-
rm.
|
|
214
|
-
rm.
|
|
215
|
-
rm.addStyle("visibility", "hidden");
|
|
216
|
-
rm.writeStyles();
|
|
217
|
-
rm.write(">");
|
|
218
|
-
rm.write("</div>");
|
|
167
|
+
rm.openStart("div", oControl.getId() + "_resizeFrame");
|
|
168
|
+
rm.class("sapzencrosstab-TableDiv");
|
|
169
|
+
rm.style("visibility", "hidden");
|
|
170
|
+
rm.style("width", sCrosstabWidth);
|
|
171
|
+
rm.style("height", sCrosstabHeight);
|
|
172
|
+
rm.openEnd();
|
|
173
|
+
rm.close("div");
|
|
174
|
+
|
|
175
|
+
rm.openStart("div", oControl.getId() + "_resizeDiv");
|
|
176
|
+
rm.class("sapzencrosstab-ResizeDiv");
|
|
177
|
+
rm.style("width", "100%");
|
|
178
|
+
rm.style("height", "100%");
|
|
179
|
+
rm.style("visibility", "hidden");
|
|
180
|
+
rm.openEnd();
|
|
181
|
+
rm.close("div");
|
|
219
182
|
|
|
220
183
|
if (oControl.getGlassPane().length === 0) {
|
|
221
|
-
rm.
|
|
222
|
-
rm.
|
|
223
|
-
rm.
|
|
224
|
-
rm.addStyle("top", "0px");
|
|
184
|
+
rm.openStart("div", oControl.getId() + "_glassPane");
|
|
185
|
+
rm.style("position", "absolute");
|
|
186
|
+
rm.style("top", "0px");
|
|
225
187
|
if (oControl.getPropertyBag().isRtl()) {
|
|
226
|
-
rm.
|
|
188
|
+
rm.style("right", "0px");
|
|
227
189
|
} else {
|
|
228
|
-
rm.
|
|
190
|
+
rm.style("left", "0px");
|
|
229
191
|
}
|
|
230
|
-
rm.
|
|
231
|
-
rm.
|
|
232
|
-
rm.
|
|
233
|
-
rm.
|
|
234
|
-
rm.write("</div>");
|
|
192
|
+
rm.style("width", "100%");
|
|
193
|
+
rm.style("height", "100%");
|
|
194
|
+
rm.openEnd();
|
|
195
|
+
rm.close("div");
|
|
235
196
|
}
|
|
236
197
|
|
|
237
|
-
rm.
|
|
198
|
+
rm.close("div");
|
|
238
199
|
};
|
|
239
200
|
|
|
240
201
|
sap.zen.crosstab.CrosstabRenderer.writeCell = function (rm, sId, oArea, oControl) {
|
|
241
|
-
rm.
|
|
242
|
-
rm.
|
|
243
|
-
rm.
|
|
244
|
-
rm.
|
|
245
|
-
rm.
|
|
246
|
-
rm.
|
|
247
|
-
rm.writeAttribute("id", sId + "_scrollDiv");
|
|
248
|
-
rm.addStyle("overflow", "hidden");
|
|
249
|
-
rm.writeStyles();
|
|
250
|
-
rm.write(">");
|
|
202
|
+
rm.openStart("td", sId);
|
|
203
|
+
rm.style("padding", "0px");
|
|
204
|
+
rm.openEnd();
|
|
205
|
+
rm.openStart("div", sId + "_scrollDiv");
|
|
206
|
+
rm.style("overflow", "hidden");
|
|
207
|
+
rm.openEnd();
|
|
251
208
|
oArea.renderArea(rm, oControl);
|
|
252
|
-
rm.
|
|
253
|
-
rm.
|
|
209
|
+
rm.close("div");
|
|
210
|
+
rm.close("td");
|
|
254
211
|
};
|
|
255
212
|
return sap.zen.crosstab.CrosstabRenderer;
|
|
256
213
|
}
|