* import static text & fields:
VALUE, SERIESNAME, COLUMNNAME
* text is formatted
* DataPointCustomLabelField with field type
(DataPointCustomLabelFieldType) was introduced.
* text can have many portions & multiple lines
* unit tests for import data labels with formatting
Not implemented: CELLREF field support which needs
importing some additional data from extLst
Shows custom text as a label for data points.
Change-Id: Iba8fd508eb16356b05586b93d7b8da32240d2b91
Reviewed-on: https://gerrit.libreoffice.org/48243
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
auto-rewrite with <https://gerrit.libreoffice.org/#/c/47798/> "Enable
loplugin:cstylecast for some more cases" plus
solenv/clang-format/reformat-formatted-files
Change-Id: I745557506326b2b0ce66d0058ebf85e5ed2a0952
During export chart into .xlsx file,
the information about size of legend was not saved.
Example of proper size:
<c:w val="0.41459448854442293"/>
<c:h val="0.23161616722845749"/>
another issue was hardcoded "layoutTarget" which
was always "inner":
<c:layoutTarget val="inner"/>
also properties regarding default text style was not preserved:
<c:txPr>
<a:bodyPr/>
<a:lstStyle/>
<a:p>
<a:pPr>
<a:defRPr sz="900" b="0" i="0" u="none" strike="noStrike" kern="1200" baseline="0">
<a:solidFill>
<a:schemeClr val="tx1">
<a:lumMod val="65000"/>
<a:lumOff val="35000"/>
</a:schemeClr>
</a:solidFill>
</a:defRPr>
</a:pPr>
<a:endParaRPr lang="pl-PL"/>
</a:p>
</c:txPr>
With this patch all these issues was resolved, and in case
of layoutTarget "outer", the field is not availble at all,
according to specification.
Change-Id: I2c9b7a112bdd911542b5273e660222d7fefa2d88
Reviewed-on: https://gerrit.libreoffice.org/47358
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
with series label placement setting if available while
importing xlsx chart.
Adds unit test in chart2import.cxx that asserts one of
the point label setting in the bugzilla xlsx document.
Change-Id: I8bc04fd569f94a19633666ffdc51b61ac719e8a9
Reviewed-on: https://gerrit.libreoffice.org/40860
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Dennis Francis <dennis.francis@collabora.co.uk>
Import/Export filter respectively for axis numbers. For ods and
xlsx this was already getting set/handled correctly.
Also add unit test to assert LinkNumberFormatToSource property
and number format for import and export-import roundtrip.
Change-Id: Id029ac7d0233ca490a6a00609e9cea8fdafee70f
Reviewed-on: https://gerrit.libreoffice.org/40577
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
with global label placement setting if available while
importing xls chart.
Added unit test in chart2import.cxx that asserts one of
the point label setting in the bugzilla xls document.
Change-Id: Id331f56c05873554b22920e02805909c50fb8619
Reviewed-on: https://gerrit.libreoffice.org/40402
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
for "values-size" role too, after parsing in
InternalDataProvider::createDataSequenceFromArray().
Without this, embedded bubble charts in documents(MSO) other
than spreadsheets will be empty when imported.
Also adds docx import chart2-unit-test in chart2import.cxx
Change-Id: I63168074b30090a8b7cf977eb5af443f6b9ac240
Reviewed-on: https://gerrit.libreoffice.org/40258
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Also changed the fill color of "Data" button to a lighter shade
to distiguish it from other buttons, for both row and column fields.
Added matching testcase in chart2dump.cxx
Change-Id: I2ae5da6c3552372f606da41055f1e0663b6f0802
Reviewed-on: https://gerrit.libreoffice.org/39687
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
results are in the range of first_iterator to last_iterator.
If one of those is nullptr the algorithm would fail anyway.
This removes some impossible checks in
sw/source/core/unocore/unochart.cxx:
SwChartDataProvider::detectArguments.
A sorted range still holds the same values and has
the same length as the original range.
Replacing raw pointers eases reading this code.
Change-Id: If96bd11e9167488346a57e9e08507ac42338d3cd
Reviewed-on: https://gerrit.libreoffice.org/39683
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Use display string for generating chart labels in
PivotTableDataProvider::collectPivotTableData as chart2
does not seem to use number format for labels although it
does for the data.
Added unit test PivotChartTest::testPivotChartWithDateRowField()
for this fix.
Change-Id: I668d4c9d7cf8bbb7e4213cce7a6e7cd4d7d07cbe
Reviewed-on: https://gerrit.libreoffice.org/39548
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
When gathering the labels and categories for the pivot chart,
ignore subtotals and grandtotals so they don't end up in the
chart.
Change-Id: I45e80a59531d6a048a22016132e9bef280bb325c
Reviewed-on: https://gerrit.libreoffice.org/36868
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
This changes tests so that we fill example data and create a new
pivot table from scratch, and create a new pivot chart using that
pivot table.
This enables that we test different cases without an example
document which creates a pivot table for us.
In addition add two test cases:
- pivot table with one column field and one data field
- pivot table with one row field and one data field (disabled, as
it currently crashes)
Change-Id: I8397a598857953e0b2d7da8dd91d7709a3495b71
Reviewed-on: https://gerrit.libreoffice.org/36625
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
This is a squashed commit of the pivot chart implementation.
Some of the changes:
- Add pivot chart specific (pivot table) data provider which
provides the data from a pivot table to the associated chart.
- When inserting a chart and the cursor is in a pivot table,
in that case insert a pivot chart
- Modify the pivot chart when the pivot table changes
- Collect and set the number format for the values
- isDataFromSpreadsheet check for the creation wizard
- In ChartView (and VLegend) check if the data provider is a
pivot chart data provider and get the pivot table field names
to create the buttons on the UI.
- Adds the functionallity to show a filter pop-up (from calc)
when clicking on row / column / page field buttons.
- Remove (X)PopupRequest as we won't need it.
- Add ODF import/export for pivot charts:
+ Added loext:data-pilot-source attribute on chart:chart
which is the internal name of the pivot table with which the
pivot chart is associated with. If the element is present, then
the it means the chart is a pivot chart, else it is a normal
chart
+ Added service to create pivot chart data provider through UNO
+ Add new methods to XPivotChartDataProvider to create value and
label data sequences separately from the data source, which is
needed for pivot chart import
+ When importing defer setting the data provider until a later
time when we know if we are creating a chart od a pivot chart
- Pivot chart ODF round-trip test
- Add table pivot chart supplier API:
This adds the XTablePivotChartSupplier and related interfaces so
we can access, create, delete pivot charts from UNO in a sheet
document. With this we now distinguish between normal charts
and pivot charts. This was mainly needed because we can't extend
the "published" interfaces of TableChartSupplier.
- Added an extensive test, which uses the API to create a new
pivot chart when there was none, and checks that the pivot chart
updates when the pivot table updates.
Change-Id: Ia9ed96fd6b1d342e61c2f7f9fa33a5e03dda21af
Reviewed-on: https://gerrit.libreoffice.org/36023
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
On linux it was not a problem. On Windows there were some
random failures, but that might be fixed by using
Liberation Mono font.
Change-Id: Iae2684b302b3380c3a63b1fa80b1d0585454ed56
Reviewed-on: https://gerrit.libreoffice.org/35241
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
Make sure the default is for kerning to be enable, and honor the setting
to disable it.
This also updates the expectations for chart2_xshape tests for file that
had kerning disabled and was previously ignored.
Change-Id: Icf6bb75e71cae43868fba323ca3c61e4a3e81523
Reviewed-on: https://gerrit.libreoffice.org/34169
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Same code which was added to the method
DrawingFragment::onEndElement() in
d178d7bef1
A shape's size and position inside a chart object
are primarily defined by <cdr:from> and <cdr:to> tags in
drawing.xml, but in the same file we also have
an <a:xfrm> tag which is used for the same thing
(defining size and postion) in general. Testing with
MSO it seems it ignores what values are set to <a:xfrm> and
uses only the <cdr:from> and <cdr:to> values.
The test document showing this problem must be created
an earlier version of MSO, becuase <a:xfrm> is set to some
random values. Editing the chart and saving it with MSO
2013 the <a:xfrm> values are set consistently with
<cdr:from> and <cdr:to> pair.
Change-Id: Icbaff78e5a6fcea36678c3b3755c97f57976b626
Reviewed-on: https://gerrit.libreoffice.org/35069
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>