Constructor.
75 sizeValidator->setMandatory(
true);
78 anyNumberValidator->setMandatory(
true);
81 angleValidator->setMandatory(
true);
86 addEntry(orientation,
"Vertical");
87 addEntry(orientation,
"Horizontal");
90 addEntry(legendLocation,
"Outside");
91 addEntry(legendLocation,
"Inside");
94 addEntry(legendSide,
"Top");
95 addEntry(legendSide,
"Right");
96 addEntry(legendSide,
"Bottom");
97 addEntry(legendSide,
"Left");
100 addEntry(legendAlignment,
"AlignLeft");
101 addEntry(legendAlignment,
"AlignCenter");
102 addEntry(legendAlignment,
"AlignRight");
103 addEntry(legendAlignment,
"AlignTop");
104 addEntry(legendAlignment,
"AlignMiddle");
105 addEntry(legendAlignment,
"AlignBottom");
108 chartConfig->
setMargin(WLength::Auto, Left | Right);
134 chartConfig->
elementAt(row, 0)->addWidget(
new WText(
"Orientation:"));
140 chartConfig->
elementAt(row, 0)->addWidget(
new WText(
"Legend location:"));
146 chartConfig->
elementAt(row, 0)->addWidget(
new WText(
"Legend side:"));
153 chartConfig->
elementAt(row, 0)->addWidget(
new WText(
"Legend alignment:"));
160 for (
int i = 0; i < chartConfig->
rowCount(); ++i) {
166 p->
setMargin(WLength::Auto, Left | Right);
167 p->
resize(880, WLength::Auto);
176 addEntry(types,
"Points");
177 addEntry(types,
"Line");
178 addEntry(types,
"Curve");
179 addEntry(types,
"Bar");
180 addEntry(types,
"Line Area");
181 addEntry(types,
"Curve Area");
182 addEntry(types,
"Stacked Bar");
183 addEntry(types,
"Stacked Line Area");
184 addEntry(types,
"Stacked Curve Area");
187 addEntry(markers,
"None");
188 addEntry(markers,
"Square");
189 addEntry(markers,
"Circle");
190 addEntry(markers,
"Cross");
191 addEntry(markers,
"X cross");
192 addEntry(markers,
"Triangle");
193 addEntry(markers,
"Diamond");
196 addEntry(axes,
"1st Y axis");
197 addEntry(axes,
"2nd Y axis");
200 addEntry(labels,
"None");
201 addEntry(labels,
"X");
202 addEntry(labels,
"Y");
203 addEntry(labels,
"X: Y");
206 seriesConfig->
setMargin(WLength::Auto, Left | Right);
208 ::addHeader(seriesConfig,
"Name");
209 ::addHeader(seriesConfig,
"Enabled");
210 ::addHeader(seriesConfig,
"Type");
211 ::addHeader(seriesConfig,
"Marker");
212 ::addHeader(seriesConfig,
"Y axis");
213 ::addHeader(seriesConfig,
"Legend");
214 ::addHeader(seriesConfig,
"Shadow");
215 ::addHeader(seriesConfig,
"Value labels");
250 int si = seriesIndexOf(chart, j);
253 sc.enabledEdit->setChecked();
257 sc.typeEdit->setCurrentIndex(0);
break;
265 sc.typeEdit->setCurrentIndex(s.
isStacked() ? 6 : 3);
268 sc.markerEdit->setCurrentIndex((
int)s.
marker());
278 p = list->
addWidget(
"Series properties", seriesConfig);
280 p->
setMargin(WLength::Auto, Left | Right);
281 p->
resize(880, WLength::Auto);
287 addEntry(yScales,
"Linear scale");
288 addEntry(yScales,
"Log scale");
291 addEntry(xScales,
"Categories");
292 addEntry(xScales,
"Linear scale");
293 addEntry(xScales,
"Log scale");
294 addEntry(xScales,
"Date scale");
297 axisConfig->
setMargin(WLength::Auto, Left | Right);
299 ::addHeader(axisConfig,
"Axis");
300 ::addHeader(axisConfig,
"Visible");
301 ::addHeader(axisConfig,
"Scale");
302 ::addHeader(axisConfig,
"Automatic");
303 ::addHeader(axisConfig,
"Minimum");
304 ::addHeader(axisConfig,
"Maximum");
305 ::addHeader(axisConfig,
"Gridlines");
306 ::addHeader(axisConfig,
"Label angle");
310 for (
int i = 0; i < 3; ++i) {
311 const char *axisName[] = {
"X axis",
"1st Y axis",
"2nd Y axis" };
325 sc.scaleEdit->
addItem(
"Category scale");
328 sc.scaleEdit->setModel(xScales);
329 sc.scaleEdit->setCurrentIndex(axis.
scale());
331 sc.scaleEdit->setModel(yScales);
332 sc.scaleEdit->setCurrentIndex(axis.
scale() - 1);
340 sc.minimumEdit->setText(WLocale::currentLocale()
342 sc.minimumEdit->setValidator(anyNumberValidator);
343 sc.minimumEdit->setEnabled(!autoValues);
347 sc.maximumEdit->setText(WLocale::currentLocale()
349 sc.maximumEdit->setValidator(anyNumberValidator);
350 sc.maximumEdit->setEnabled(!autoValues);
356 sc.autoEdit->checked().connect(sc.maximumEdit, &WLineEdit::disable);
357 sc.autoEdit->unChecked().connect(sc.maximumEdit, &WLineEdit::enable);
358 sc.autoEdit->checked().connect(sc.minimumEdit, &WLineEdit::disable);
359 sc.autoEdit->unChecked().connect(sc.minimumEdit, &WLineEdit::enable);
365 sc.labelAngleEdit->setText(
"0");
366 sc.labelAngleEdit->setValidator(angleValidator);
374 p = list->
addWidget(
"Axis properties", axisConfig);
375 p->
setMargin(WLength::Auto, Left | Right);
376 p->
resize(880, WLength::Auto);
383 if (!WApplication::instance()->environment().javaScript()) {
387 b->
setMargin(WLength::Auto, Left | Right);