Commit Graph
807 Commits
Author SHA1 Message Date
Miklos Vajna cf5bbe3fce sw content controls: add ODT export
Wrap the text portions inside the content control in a
<loext:content-control> XML element. Also map the (so far) single UNO
property of it to <loext:content-control
loext:showing-place-holder="...">.

This is just initial export for inline text content controls, more
properties are to be added in follow-up commits.

Change-Id: I5d928255b925ed7e08fb635ba39f546e9a4879de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132717
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2022-04-08 12:51:09 +02:00
Tomaž Vajngerl bd992ae122 sc: sparkline import/export for ODF
Change-Id: I0d8293cdd35cc8c7afab98efac0a28a3613d122b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132505
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2022-04-04 16:22:11 +02:00
Caolán McNamara 78f7bd90b9 Resolves: tdf#117162 ImportDocumentHandler expects data provider to exist
already in its ctor

which changed since...

commit 9009663deb
Date:   Sun Feb 26 22:48:06 2017 +0100

    tdf#83257 [API-CHANGE] Pivot chart implementation

which defers it, take a probably safely backportable approach here to
fix it.

Change-Id: I1863791af7ae737f337993833a9cf1429a3a8028
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132286
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-03-30 09:39:22 +02:00
Miklos Vajna 1868dea877 sd theme: add ODP import/export for shape fill color
Refer to the 12 pre-defined colors by name + don't write the attribute
for the case when there is no theme.

Change-Id: I37c984b3371ec878a0d733977f5c937dce27c440
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131717
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2022-03-18 08:07:02 +01:00
Miklos Vajna 07c2b73d16 sw clearing breaks: add ODF export
Write the clearing break as:

	<text:line-break loext:clear="..."/>

Change-Id: Ieb517b825f2ee162bb70a453a3756ec870fa8aac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131346
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2022-03-11 14:04:50 +01:00
Noel Grandin 7002caa97e new loplugin:trivialdestructor
look for potentially trivial destructors that can then be elided

Change-Id: I435c251bd4291b5864c20d68f88676faac7c43fb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131318
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-03-11 09:06:06 +01:00
Miklos Vajna 1127c63470 ODT import: fix MSO-style <text:list text:continue-numbering="true">
The ODF spec says that text:continue-numbering="true" should only
continue the numbering in case the styles of the previous and the
current list match.

In contrast, Word continues the numbering even in case there is e.g.
numbering, then bullets, then numbering again, in case the list styles of
the two numberings are the same.

Work this around at import time when the generator confirms that the
document is coming from Word. At least Office 2019 and the latest
renderer at office.com is affected.

(I've mailed dochelp@microsoft, no answer yet.)

Change-Id: Ib63e14322e5501a6220f798abd9365d7913dab4c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130503
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2022-02-24 17:37:59 +01:00
Regina Henschel c893c0e359 tdf#147580 use valid values for extrusion-specularity
The fix for tdf#145700 has changed the internal handling so, that
values larger than 100% from MS binary import are now kept und correctly
used. But ODF 1.2 and 1.3 have the range restricted to
zeroToHundredPercent.

The patch writes values larger than 100% in extended namespace for our
'ODF 1.3 extended'. It writes draw:extrusion-specularity in any case, so
that older versions get a meaninful value, but clamps it to [0,100] if
necessary to get valid files.

Change-Id: I98298d5c3e3367ffe4a45cdc051be23679308119
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130306
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2022-02-24 11:43:51 +01:00
Regina Henschel 157b027c4c tdf#145700 Improve lighting in extruded custom shapes
The fix tries to make rendering similar to MS Office.

The ODF standard follows closely the extrusion in RTF and MS binary
format. Rendering uses the 3D scene engine.

The main problem was, that the z-component of the direction was
interpreted with opposite sign. As result the maximum of a light was at
false position. Especially a direction from the observer to the object
has produced a light behind the shape and so looks as if light was off.

The wrong z-direction has produced lighting, which was less intensive
than in MS Office. To compensate that, a third light source was added
as workaround. That part is removed.

Second problem was wrong use of 3D-scene D3DMaterialSpecularIntensity
and D3DMaterialSpecular (= UI Specular color). That was not only wrong
in OOo but in my previous patch too.
D3DMaterialSpecularIntensity corresponds to MS property 'c3DShininess'.
Relationship is Intensity = 2^c3DShininess.
D3DMaterialSpecular is calculated from MS property c3DSpecularAmt and
and c3DKeyIntensity. The light source was missing, but needs to be
included, because c3DSpecularAmt is 'the ratio of incident to specular
light that is reflected on a shape'.
The old unit tests are adapted to this change.

MS gives no information how it softens a light in case of harsh=false.
ODF specifies it as 'implementation-defined'. The patch uses four
additional lights, which have directions in 60° angle to the original
light. The light intensity is distributed. That comes near to rendering
in MS Office. Changing our 3D engine to provide 'soft' lights was not
doable for me.

The way MS Office renders a 'metal' surface is different from ODF
specification. To distinguish the kinds, I have introduced a new
property MetalType. I have discussed it with the ODF TC (see minutes
from 2022-02-07) and got the advise to use namespaced values.
Therefore the datatype is not boolean.

The 'Surface' drop-down in the extrusion bar is changed to make the two
kinds of rendering 'Metal' available to the user.

If a user sets surface 'Metal' in the UI of MS Office, it sets not only
fc3DMetallic but reduces the value of c3DDiffuseAmt in addition. Our
3D-scene engine has the corresponding ODF attribute dr3d:diffuse-color
not implemented. To get a similar rendering I change the material color
of the 3D-objects as workaround.

Change-Id: Ia986b9c318b4c79688e0c0e2d858215b9d612fdc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128449
Tested-by: Jenkins
Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
2022-02-17 14:14:01 +01:00
Gabor Kelemen fbe169fa17 Recheck include/[s-x]* with IWYU
See tdf#42949 for motivation

Change-Id: Iaebddd648c52c175da17d2a55a1e8de82c213f4d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127330
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2021-12-24 01:44:48 +01:00
Andrea Gelmini 63f2350fa3 Fix typos
Change-Id: I66feced8bed05c7859e36a6d2f746a7faf30c7a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126915
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
2021-12-16 21:52:43 +01:00
Miklos Vajna 7d1e4d12ba ODP import/export: refer to theme from shape text color with effects
Handle luminance modulation and offset (i.e. lighter and darker colors).

Change-Id: I536bbca1ed994e991c7ceac153d6a47cb6ef35f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126722
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2021-12-13 10:10:10 +01:00
Miklos Vajna 91f649a119 ODP import/export: refer to theme from shape text color
Refer to the 12 pre-defined colors by name + don't write the attribute
for the case when there is no theme.

Change-Id: Ib6ab5b7b34d896a36e04309bf0cb410998acce01
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126566
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2021-12-09 09:34:39 +01:00
Miklos Vajna c95288aec4 ODP export: write the theme of a master page
Which requires describing the schema, which is really just a new
<loext:theme> element, the rest reuses the color-table markup, which
wasn't used in ODF so far (but was used in our .soc files).

Also make sure that we only do this in ODF extended mode (which is the
default).

Change-Id: I90eaad30f63946c441fe0c53caf6a47caf1714d5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126466
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2021-12-07 09:37:18 +01:00
Stephan Bergmann 0a710c5c44 cid#1494595,1494597: Silence UNCAUGHT_EXCEPT
...after aa5ee0085c "Stop swallowing exceptions in
~ScopeGuard" had dropped the catch blocks from ~ScopeGuard to make it usable in
Library_salhelper in 0c1c300ed7 "Rather use
ScopeGuard to prevent catch and rethrow".  But using the original
suppress_fun_call_w_exception, which used css::uno::Exception, would have caused
the same circular-dependency issue again that
aa5ee0085c had solved, so drop the use of
css::uno::Exception (and SAL_WARN, which triggered a number of missing #include
<sal/log.hxx>) also from suppress_fun_call_w_exception.  After all, that was
__COVERITY__-only code that wasn't meant to be actually run, so it shouldn't
matter if we just catch everything and silently terminate.

Change-Id: If28a214709e4636e1c23a49f2d95d87c91492f14
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126404
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-12-06 14:25:41 +01:00
Noel Grandin 9b0202bf43 loplugin:stringliteraldefine in xmloff
Change-Id: I9216c18d3ba4a4a528a49198fdfe547a66c06b6b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126284
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-12-03 17:58:24 +01:00
Noel Grandin e10e5c15cc improve the script for reducing symbol exports
And apply some of the results

Change-Id: If555476fdd951cbc1d01fb3ef3ab1cbca2b64960
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124896
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-12-01 12:13:59 +01:00
Noel Grandin 5fe5ded723 simplify construction of XMLPropertyMapEntry
so we don't have to pass in the size of the string literal.

This is mostly a preparatory change, to make an another
patch of mine less noisy.

Change-Id: Idafcd68586b8b465e63dc89e4a4180d2e70ac3a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125080
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-11-12 10:55:07 +01:00
Noel Grandin 6299c8cae9 loplugin:constparams
Change-Id: Iebeb531fad5cc819b536788925cf8508737198b7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124599
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-11-03 07:54:12 +01:00
Luboš Luňák b5e701d36e add o3tl::span ctor from std::vector
Makes code simpler, and std::span can be constructed from std::vector
too.

Change-Id: Iae26b53c52148c19d9068a63126a7393d098d654
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124507
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Tested-by: Jenkins
2021-10-31 15:52:02 +01:00
homeboy445 d37a44a9eb tdf#141193 Added support for bar codes in qrcode dialog box[API Change].
Change-Id: I6b79ece1d5419ef92b76755d3bd921a64d6e38fe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113989
Tested-by: Jenkins
Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2021-10-29 13:46:12 +02:00
Julien Nabet 4477baeba5 Simplify Sequences in xmloff (+ merge 2 SetError)
Change-Id: If4055bbeb858b1b87ecb3f8c0b87da4b008e3c16
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123716
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2021-10-17 12:51:09 +02:00
Mike Kaganski 8a017d25a6 Avoid COW overhead using css::uno::Sequence
The scenarios are:

1. Calling sequence's begin() and end() in pairs to pass to algorithms
   (both calls use getArray(), which does the COW checks)
2. In addition to #1, calling end() again when checking result of find
   algorithms, and/or begin() to calculate result's distance
3. Using non-const sequences in range-based for loops, which internally
   do #1
4. Assigning sequence to another sequence variable, and then modifying
   one of them

In many cases, the sequences could be made const, or treated as const
for the purposes of the algorithms (using std::as_const, std::cbegin,
and std::cend). Where algorithm modifies the sequence, it was changed
to only call getArray() once. For that, css::uno::toNonConstRange was
introduced, which returns a struct (sublclass of std::pair) with two
iterators [begin, end], that are calculated using one call to begin()
and one call to getLength().

To handle #4, css::uno::Sequence::swap was introduced, that swaps the
internal pointer to uno_Sequence. So when a local Sequence variable
should be assigned to another variable, and the latter will be modified
further, it's now possible to use swap instead, so the two sequences
are kept independent.

The modified places were found by temporarily removing non-const end().

Change-Id: I8fe2787f200eecb70744e8b77fbdf7a49653f628
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123542
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-10-14 06:00:49 +02:00
Mike Kaganski 3e11faf2d2 Expand some defines and simplify loops
Change-Id: I5cbfa815fb2b3d92eac1959ece67160fae4cd556
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123170
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-10-11 06:14:19 +02:00
Noel Grandin f67392948d loplugin:moveparam in xmloff
Change-Id: I46c1c8dc46cd2b8470b69506f6609f8bd7e42211
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123347
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-10-10 21:03:18 +02:00
Mike Kaganski 4d82c1d8a3 Simplify SvXMLExport::AddAttribute overloads
Remove overloads taking const char* which were not needed, because
every their use eventually took a string literal convertible to
OUString directly.

Many other literals were converted to OUStringLiterals.

Change-Id: Ia1e742a8087776cd20bf5094dc415dafd9a8834a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123155
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-10-09 07:08:24 +02:00
Noel Grandin 581efdec36 loplugin:constmethod
Change-Id: I3ed657c5c5e6840e38e3c8505505b4b372125df0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122910
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-10-01 20:58:11 +02:00
Miklos Vajna 05f863844d sw: paragraph styles: add ODT filter for a linked character style
And the same in the other direction: link a para style from a char
style.

With this, the ODT filter is on par with the DOCX one for this feature.

Change-Id: Idd994b933672ab47a5f87a75c92abc137d3c73b2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122753
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2021-09-28 10:27:20 +02:00
Noel Grandin ed9c39da0a no need to store a CharClass in SvXMLNumFmtExport
we only use it at one site, and at that site we can use the CharClass
inside the formatter whose locale we just updated.

Spotted by erack.

Change-Id: I049c6fc399e62cfe83f3ae396ea8d0e7497e673f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122250
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
2021-09-17 20:14:25 +02:00
rocso 4f7560240d tdf#143550 - use the term "gluepoints" consistently
Change-Id: Id10dc2ef13f54a148a800003cc4bd88ca1a0056f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122233
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2021-09-17 12:53:38 +02:00
Noel Grandin 0d56337387 clang-tidy:clang-analyzer-optin.performance.Padding
noting that XMLTokenEnum was already being treated as being limited to
32-bits, we bitmask it together with namespaces

Change-Id: Ic48f2a662452d1b8e022078d31a723d2ac65aef0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121707
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-06 11:58:09 +02:00
Samuel Mehrbrodt ba1e42f05e tdf#142965 color filter: allow filtering by no fill/automatic color
Change-Id: Idd0a41cea936fd19adbc07561b0d9c0cba735f0d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120946
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2021-09-06 08:34:47 +02:00
Miklos Vajna 6d9b61c22a Related: tdf#137363 ODT import: handle style:list-level="..." for para styles
This is just the import side, the export side still needs doing.

The used attribute was already part of ODF, and NumberingLevel for para
styles where already imported/exported for DOCX.

Change-Id: I8385ed23dc799c99e81318387236341b404d01a7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121515
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2021-09-02 19:24:16 +02:00
Dennis Francis 9d8324524b tdf#143942: oox: import/export labels from <c15:datalabelsRange>
When <c15:showDataLabelsRange> boolean flag is present, the imported
label texts are added as the first text field in oox data label model.
The cell-range associated is also preserved. The export part preserves
the how labels were store originally in <c15:datalabelsRange>.

However in order to make the custom labels reflect the contents of the
cells in the associated cell-range, more work needs to be done. For this
the labels present in <c15:datalabelsRange> needs to be made available
as a data-sequence with a new "role" like "point-labels" in
XInternalDataProvider implementation and and make the label renderer
read this data source rather than consulting the custom label fields
property which is static after import.

Change-Id: Ibc7045fa5ea209d463680c96efb49a06662d2500
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121313
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2021-09-01 09:15:03 +02:00
Eike Rathke c6f15d2284 Resolves: tdf#143979 Write and read empty text element in number formats
... as they may be significant as separators between keywords of
same letters.

Also strip trailing empty text as meaningless, except if the only
element.

>General;General<
earlier both General were written as

    <number:number-style style:name="N111P0" style:volatile="true">
      <number:number number:min-integer-digits="1"/>
      <number:text/>
    </number:number-style>

for which now <number:text> is not.

Change-Id: I4809b1c784667994303b49d8e4ab0e857367e2cb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120856
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
2021-08-22 23:12:57 +02:00
dante 6ff56167cb Add import for new starmath mathml elements
Change-Id: Ie867cda8780747e715d642a9b007faafb33b4d99
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120474
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-08-17 09:04:29 +02:00
dante b8a4eeb24a Export Math ML from new mathml nodes
Review tip: thanks for your help
Code heavily based on: mathmlexport.cxx mathmlexport.hxx
https://opengrok.libreoffice.org/xref/core/starmath/source/mathml/mathmlexport.cxx?r=e271fce8
https://opengrok.libreoffice.org/xref/core/starmath/inc/mathml/mathmlexport.hxx?r=10d29c39

Change-Id: I798d0e207b844240f4b25720ee37c394eb4c2e65
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120188
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-08-13 10:37:03 +02:00
Noel Grandin 0ae13b5df1 no need to use unique_ptr for NamespaceDefine here
Change-Id: I61ac177fab102c83d72337f608dc5ca8238e7819
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120215
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-08-10 09:16:22 +02:00
Stephan Bergmann 8ede3362a2 Fix --enable-mergelibs make check
> LNK] CppunitTest/libtest_basegfx.so
> include/basegfx/tuple/b3dtuple.hxx:92: error: undefined reference to 'basegfx::B3DTuple::getEmptyTuple()'

and

> [LNK] CppunitTest/libtest_svx_removewhichrange.so
> svx/source/core/extedit.cxx:65: error: undefined reference to 'FileChangedChecker::FileChangedChecker(rtl::OUString const&, std::function<void ()> const&)'
> svx/source/engine3d/scene3d.cxx:221: error: undefined reference to 'B3dTransformationSet::SetDeviceRectangle(double, double, double, double)'
> include/tools/b3dtrans.hxx:120: error: undefined reference to 'B3dTransformationSet::SetViewportRectangle(tools::Rectangle const&, tools::Rectangle const&)'
> svx/source/engine3d/scene3d.cxx:175: error: undefined reference to 'B3dCamera::B3dCamera(basegfx::B3DPoint const&, basegfx::B3DVector const&, double, double)'
> svx/source/engine3d/scene3d.cxx:243: error: undefined reference to 'B3dCamera::~B3dCamera()'
> svx/source/engine3d/scene3d.cxx:355: error: undefined reference to 'B3dTransformationSet::SetRatio(double)'
> svx/source/engine3d/scene3d.cxx:364: error: undefined reference to 'B3dViewport::SetViewportValues(basegfx::B3DPoint const&, basegfx::B3DVector const&, basegfx::B3DVector const&)'
> svx/source/engine3d/scene3d.cxx:367: error: undefined reference to 'B3dTransformationSet::SetPerspective(bool)'
> include/tools/b3dtrans.hxx:120: error: undefined reference to 'B3dTransformationSet::SetViewportRectangle(tools::Rectangle const&, tools::Rectangle const&)'
> include/tools/b3dtrans.hxx:120: error: undefined reference to 'B3dTransformationSet::SetViewportRectangle(tools::Rectangle const&, tools::Rectangle const&)'
> svx/source/engine3d/scene3d.cxx:186: error: undefined reference to 'B3dCamera::B3dCamera(basegfx::B3DPoint const&, basegfx::B3DVector const&, double, double)'
> svx/source/engine3d/scene3d.cxx:179: error: undefined reference to 'B3dCamera::~B3dCamera()'
> svx/source/engine3d/scene3d.cxx:210: error: undefined reference to 'B3dCamera::~B3dCamera()'
> svx/source/gallery2/galctrl.cxx:213: error: undefined reference to 'avmedia::MediaFloater::setURL(rtl::OUString const&, rtl::OUString const&, bool)'
> svx/source/gallery2/galtheme.cxx:745: error: undefined reference to 'VersionCompatRead::VersionCompatRead(SvStream&)'
> svx/source/gallery2/galtheme.cxx:757: error: undefined reference to 'VersionCompatRead::~VersionCompatRead()'
> svx/source/gallery2/galtheme.cxx:757: error: undefined reference to 'VersionCompatRead::~VersionCompatRead()'
> svx/source/gallery2/gallerybinaryengine.cxx:774: error: undefined reference to 'VersionCompatWrite::VersionCompatWrite(SvStream&, unsigned short)'
> /usr/include/c++/12.0.0/bits/unique_ptr.h:85: error: undefined reference to 'VersionCompatWrite::~VersionCompatWrite()'
> /usr/include/c++/12.0.0/bits/unique_ptr.h:85: error: undefined reference to 'VersionCompatWrite::~VersionCompatWrite()'
> svx/source/gallery2/gallerybinaryengineentry.cxx:115: error: undefined reference to 'VersionCompatRead::VersionCompatRead(SvStream&)'
> svx/source/gallery2/gallerybinaryengineentry.cxx:123: error: undefined reference to 'VersionCompatRead::~VersionCompatRead()'
> svx/source/gallery2/gallerybinaryengineentry.cxx:123: error: undefined reference to 'VersionCompatRead::~VersionCompatRead()'
> include/editeng/editund2.hxx:29: error: undefined reference to 'vtable for EditUndoManager'
> /usr/bin/ld.gold: the vtable symbol may be undefined because the class is missing its key function
> include/editeng/editund2.hxx:29: error: undefined reference to 'vtable for EditUndoManager'
> /usr/bin/ld.gold: the vtable symbol may be undefined because the class is missing its key function
> svx/source/svdraw/sdrundomanager.cxx:30: error: undefined reference to 'EditUndoManager::EditUndoManager(unsigned short)'
> svx/source/svdraw/sdrundomanager.cxx:72: error: undefined reference to 'EditUndoManager::Redo()'
> svx/source/svdraw/sdrundomanager.cxx:46: error: undefined reference to 'EditUndoManager::Undo()'
> workdir/CxxObject/svx/source/svdraw/sdrundomanager.o:sdrundomanager.cxx:typeinfo for SdrUndoManager: error: undefined reference to 'typeinfo for EditUndoManager'
> svx/source/svdraw/svdedxv.cxx:97: error: undefined reference to 'EditViewCallbacks::~EditViewCallbacks()'
> svx/source/svdraw/svdedxv.cxx:87: error: undefined reference to 'EditViewCallbacks::~EditViewCallbacks()'
> workdir/CxxObject/svx/source/svdraw/svdedxv.o:svdedxv.cxx:typeinfo for SdrObjEditView: error: undefined reference to 'typeinfo for EditViewCallbacks'
> svx/source/svdraw/svdfmtf.cxx:1206: error: undefined reference to 'MetaMapModeAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.cxx:1239: error: undefined reference to 'typeinfo for MetaGradientExAction'
> svx/source/svdraw/svdfmtf.hxx:139: error: undefined reference to 'MetaLayoutModeAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:136: error: undefined reference to 'MetaTextLineColorAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:135: error: undefined reference to 'MetaRefPointAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:115: error: undefined reference to 'MetaRasterOpAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:117: error: undefined reference to 'MetaPopAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:116: error: undefined reference to 'MetaPushAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:112: error: undefined reference to 'MetaFontAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.cxx:1206: error: undefined reference to 'MetaMapModeAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:113: error: undefined reference to 'MetaTextAlignAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:111: error: undefined reference to 'MetaTextFillColorAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:110: error: undefined reference to 'MetaTextColorAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:118: error: undefined reference to 'MetaMoveClipRegionAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:120: error: undefined reference to 'MetaISectRegionClipRegionAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:119: error: undefined reference to 'MetaISectRectClipRegionAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:114: error: undefined reference to 'MetaClipRegionAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:140: error: undefined reference to 'MetaTextLanguageAction::Execute(OutputDevice*)'
> svx/source/svdraw/svdfmtf.hxx:141: error: undefined reference to 'MetaOverlineColorAction::Execute(OutputDevice*)'
> /usr/include/c++/12.0.0/bits/unique_ptr.h:85: error: undefined reference to 'OFlowChainedText::~OFlowChainedText()'
> /usr/include/c++/12.0.0/bits/unique_ptr.h:85: error: undefined reference to 'OFlowChainedText::~OFlowChainedText()'
> svx/source/svdraw/textchainflow.cxx:274: error: undefined reference to 'OFlowChainedText::RemoveOverflowingText(Outliner*)'
> /usr/include/c++/12.0.0/bits/unique_ptr.h:85: error: undefined reference to 'OFlowChainedText::~OFlowChainedText()'
> /usr/include/c++/12.0.0/bits/unique_ptr.h:85: error: undefined reference to 'OFlowChainedText::~OFlowChainedText()'
> svx/source/svdraw/textchainflow.cxx:101: error: undefined reference to 'UFlowChainedText::UFlowChainedText(Outliner const*, bool)'
> svx/source/svdraw/textchainflow.cxx:96: error: undefined reference to 'OFlowChainedText::OFlowChainedText(Outliner const*, bool)'
> svx/source/svdraw/textchainflow.cxx:123: error: undefined reference to 'OFlowChainedText::GetOverflowPointSel() const'
> svx/source/svdraw/textchainflow.cxx:123: error: undefined reference to 'OFlowChainedText::GetOverflowPointSel() const'
> svx/source/svdraw/textchainflow.cxx:159: error: undefined reference to 'UFlowChainedText::CreateMergedUnderflowParaObject(Outliner*, OutlinerParaObject const*)'
> svx/source/svdraw/textchainflow.cxx:202: error: undefined reference to 'OFlowChainedText::RemoveOverflowingText(Outliner*)'
> svx/source/svdraw/textchainflow.cxx:227: error: undefined reference to 'OFlowChainedText::InsertOverflowingText(Outliner*, OutlinerParaObject const*)'
> svx/source/svdraw/textchainflow.cxx:239: error: undefined reference to 'OFlowChainedText::IsLastParaInterrupted() const'
> svx/source/svdraw/textchainflow.cxx:235: error: undefined reference to 'OFlowChainedText::IsLastParaInterrupted() const'
> svx/source/svdraw/textchainflow.cxx:235: error: undefined reference to 'OFlowChainedText::IsLastParaInterrupted() const'
> svx/source/tbxctrls/tbcontrl.cxx:2747: error: undefined reference to 'SfxStatusListener::ReBind()'
> include/svx/tbcontrl.hxx:175: error: undefined reference to 'SfxStatusListener::ReBind()'
> svx/source/tbxctrls/tbcontrl.cxx:2697: error: undefined reference to 'SfxStatusListener::UnBind()'
> svx/source/tbxctrls/tbcontrl.cxx:2493: error: undefined reference to 'SfxStatusListener::SfxStatusListener(com::sun::star::uno::Reference<com::sun::star::frame::XDispatchProvider> const&, unsigned short, rtl::OUString const&)'
> svx/source/tbxctrls/tbcontrl.cxx:2493: error: undefined reference to 'SfxStatusListener::SfxStatusListener(com::sun::star::uno::Reference<com::sun::star::frame::XDispatchProvider> const&, unsigned short, rtl::OUString const&)'
> svx/source/tbxctrls/tbcontrl.cxx:815: error: undefined reference to 'SfxStatusListener::~SfxStatusListener()'
> svx/source/tbxctrls/tbcontrl.cxx:815: error: undefined reference to 'SfxStatusListener::~SfxStatusListener()'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:typeinfo for SfxStyleControllerItem_Impl: error: undefined reference to 'typeinfo for SfxStatusListener'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:vtable for SfxStyleControllerItem_Impl: error: undefined reference to 'SfxStatusListener::dispose()'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:vtable for SfxStyleControllerItem_Impl: error: undefined reference to 'SfxStatusListener::addEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:vtable for SfxStyleControllerItem_Impl: error: undefined reference to 'SfxStatusListener::removeEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:vtable for SfxStyleControllerItem_Impl: error: undefined reference to 'SfxStatusListener::disposing(com::sun::star::lang::EventObject const&)'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:vtable for SfxStyleControllerItem_Impl: error: undefined reference to 'SfxStatusListener::statusChanged(com::sun::star::frame::FeatureStateEvent const&)'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:vtable for SfxStyleControllerItem_Impl: error: undefined reference to 'non-virtual thunk to SfxStatusListener::disposing(com::sun::star::lang::EventObject const&)'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:vtable for SfxStyleControllerItem_Impl: error: undefined reference to 'non-virtual thunk to SfxStatusListener::statusChanged(com::sun::star::frame::FeatureStateEvent const&)'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:vtable for SfxStyleControllerItem_Impl: error: undefined reference to 'non-virtual thunk to SfxStatusListener::dispose()'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:vtable for SfxStyleControllerItem_Impl: error: undefined reference to 'non-virtual thunk to SfxStatusListener::addEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)'
> workdir/CxxObject/svx/source/tbxctrls/tbcontrl.o:tbcontrl.cxx:vtable for SfxStyleControllerItem_Impl: error: undefined reference to 'non-virtual thunk to SfxStatusListener::removeEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)'
> svx/source/tbxctrls/StylesPreviewWindow.cxx:63: error: undefined reference to 'SfxStatusListener::SfxStatusListener(com::sun::star::uno::Reference<com::sun::star::frame::XDispatchProvider> const&, unsigned short, rtl::OUString const&)'
> svx/source/tbxctrls/StylesPreviewWindow.cxx:65: error: undefined reference to 'SfxStatusListener::ReBind()'
> svx/source/tbxctrls/StylesPreviewWindow.cxx:409: error: undefined reference to 'SfxStatusListener::UnBind()'
> svx/source/tbxctrls/StylesPreviewWindow.cxx:413: error: undefined reference to 'SfxStatusListener::dispose()'
> svx/source/inc/StylesPreviewWindow.hxx:32: error: undefined reference to 'SfxStatusListener::~SfxStatusListener()'
> svx/source/inc/StylesPreviewWindow.hxx:32: error: undefined reference to 'SfxStatusListener::~SfxStatusListener()'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:typeinfo for StyleStatusListener: error: undefined reference to 'typeinfo for SfxStatusListener'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:vtable for StyleStatusListener: error: undefined reference to 'SfxStatusListener::dispose()'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:vtable for StyleStatusListener: error: undefined reference to 'SfxStatusListener::addEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:vtable for StyleStatusListener: error: undefined reference to 'SfxStatusListener::removeEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:vtable for StyleStatusListener: error: undefined reference to 'SfxStatusListener::disposing(com::sun::star::lang::EventObject const&)'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:vtable for StyleStatusListener: error: undefined reference to 'SfxStatusListener::statusChanged(com::sun::star::frame::FeatureStateEvent const&)'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:vtable for StyleStatusListener: error: undefined reference to 'non-virtual thunk to SfxStatusListener::disposing(com::sun::star::lang::EventObject const&)'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:vtable for StyleStatusListener: error: undefined reference to 'non-virtual thunk to SfxStatusListener::statusChanged(com::sun::star::frame::FeatureStateEvent const&)'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:vtable for StyleStatusListener: error: undefined reference to 'non-virtual thunk to SfxStatusListener::dispose()'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:vtable for StyleStatusListener: error: undefined reference to 'non-virtual thunk to SfxStatusListener::addEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)'
> workdir/CxxObject/svx/source/tbxctrls/StylesPreviewWindow.o:StylesPreviewWindow.cxx:vtable for StyleStatusListener: error: undefined reference to 'non-virtual thunk to SfxStatusListener::removeEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)'
> svx/source/unodraw/unoshap3.cxx:324: error: undefined reference to 'B3dViewport::SetViewportValues(basegfx::B3DPoint const&, basegfx::B3DVector const&, basegfx::B3DVector const&)'
> svx/source/xml/xmlxtexp.cxx:92: error: undefined reference to 'XMLMarkerStyleExport::~XMLMarkerStyleExport()'
> svx/source/xml/xmlxtexp.cxx:102: error: undefined reference to 'XMLDashStyleExport::~XMLDashStyleExport()'
> svx/source/xml/xmlxtexp.cxx:113: error: undefined reference to 'XMLHatchStyleExport::~XMLHatchStyleExport()'
> svx/source/xml/xmlxtexp.cxx:123: error: undefined reference to 'XMLGradientStyleExport::~XMLGradientStyleExport()'
> svx/source/xml/xmlxtexp.cxx:454: error: undefined reference to 'XMLHatchStyleExport::XMLHatchStyleExport(SvXMLExport&)'
> svx/source/xml/xmlxtexp.cxx:432: error: undefined reference to 'XMLMarkerStyleExport::XMLMarkerStyleExport(SvXMLExport&)'
> svx/source/xml/xmlxtexp.cxx:443: error: undefined reference to 'XMLDashStyleExport::XMLDashStyleExport(SvXMLExport&)'
> svx/source/xml/xmlxtexp.cxx:465: error: undefined reference to 'XMLGradientStyleExport::XMLGradientStyleExport(SvXMLExport&)'
> svx/source/xml/xmlxtexp.cxx:438: error: undefined reference to 'XMLMarkerStyleExport::exportXML(rtl::OUString const&, com::sun::star::uno::Any const&)'
> svx/source/xml/xmlxtexp.cxx:92: error: undefined reference to 'XMLMarkerStyleExport::~XMLMarkerStyleExport()'
> svx/source/xml/xmlxtexp.cxx:449: error: undefined reference to 'XMLDashStyleExport::exportXML(rtl::OUString const&, com::sun::star::uno::Any const&)'
> svx/source/xml/xmlxtexp.cxx:102: error: undefined reference to 'XMLDashStyleExport::~XMLDashStyleExport()'
> svx/source/xml/xmlxtexp.cxx:460: error: undefined reference to 'XMLHatchStyleExport::exportXML(rtl::OUString const&, com::sun::star::uno::Any const&)'
> svx/source/xml/xmlxtexp.cxx:113: error: undefined reference to 'XMLHatchStyleExport::~XMLHatchStyleExport()'
> svx/source/xml/xmlxtexp.cxx:471: error: undefined reference to 'XMLGradientStyleExport::exportXML(rtl::OUString const&, com::sun::star::uno::Any const&)'
> svx/source/xml/xmlxtexp.cxx:123: error: undefined reference to 'XMLGradientStyleExport::~XMLGradientStyleExport()'
> svx/source/xml/xmlxtexp.cxx:482: error: undefined reference to 'XMLImageStyle::exportXML(rtl::OUString const&, com::sun::star::uno::Any const&, SvXMLExport&)'
> svx/source/xml/xmlxtimp.cxx:220: error: undefined reference to 'XMLMarkerStyleImport::XMLMarkerStyleImport(SvXMLImport&)'
> svx/source/xml/xmlxtimp.cxx:221: error: undefined reference to 'XMLMarkerStyleImport::importXML(com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, com::sun::star::uno::Any&, rtl::OUString&)'
> svx/source/xml/xmlxtimp.cxx:222: error: undefined reference to 'XMLMarkerStyleImport::~XMLMarkerStyleImport()'
> svx/source/xml/xmlxtimp.cxx:233: error: undefined reference to 'XMLDashStyleImport::XMLDashStyleImport(SvXMLImport&)'
> svx/source/xml/xmlxtimp.cxx:234: error: undefined reference to 'XMLDashStyleImport::importXML(com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, com::sun::star::uno::Any&, rtl::OUString&)'
> svx/source/xml/xmlxtimp.cxx:235: error: undefined reference to 'XMLDashStyleImport::~XMLDashStyleImport()'
> svx/source/xml/xmlxtimp.cxx:259: error: undefined reference to 'XMLGradientStyleImport::XMLGradientStyleImport(SvXMLImport&)'
> svx/source/xml/xmlxtimp.cxx:260: error: undefined reference to 'XMLGradientStyleImport::importXML(com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, com::sun::star::uno::Any&, rtl::OUString&)'
> svx/source/xml/xmlxtimp.cxx:261: error: undefined reference to 'XMLGradientStyleImport::~XMLGradientStyleImport()'
> svx/source/xml/xmlxtimp.cxx:246: error: undefined reference to 'XMLHatchStyleImport::XMLHatchStyleImport(SvXMLImport&)'
> svx/source/xml/xmlxtimp.cxx:247: error: undefined reference to 'XMLHatchStyleImport::importXML(com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, com::sun::star::uno::Any&, rtl::OUString&)'
> svx/source/xml/xmlxtimp.cxx:248: error: undefined reference to 'XMLHatchStyleImport::~XMLHatchStyleImport()'
> svx/source/xml/xmlxtimp.cxx:273: error: undefined reference to 'XMLImageStyle::importXML(com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, com::sun::star::uno::Any&, rtl::OUString&, SvXMLImport&)'
> svx/source/xml/xmlxtimp.cxx:222: error: undefined reference to 'XMLMarkerStyleImport::~XMLMarkerStyleImport()'
> svx/source/xml/xmlxtimp.cxx:235: error: undefined reference to 'XMLDashStyleImport::~XMLDashStyleImport()'
> svx/source/xml/xmlxtimp.cxx:248: error: undefined reference to 'XMLHatchStyleImport::~XMLHatchStyleImport()'
> svx/source/xml/xmlxtimp.cxx:261: error: undefined reference to 'XMLGradientStyleImport::~XMLGradientStyleImport()'
> include/vcl/vclptr.hxx:129: error: undefined reference to 'svt::MultiLineTextCell::MultiLineTextCell(BrowserDataWin*)'
> include/vcl/vclptr.hxx:129: error: undefined reference to 'svt::MultiLineTextCell::MultiLineTextCell(BrowserDataWin*)'
> include/svtools/editbrowsebox.hxx:246: error: undefined reference to 'svt::IEditImplementation::~IEditImplementation()'
> include/svtools/editbrowsebox.hxx:246: error: undefined reference to 'svt::IEditImplementation::~IEditImplementation()'
> include/svtools/editbrowsebox.hxx:246: error: undefined reference to 'svt::IEditImplementation::~IEditImplementation()'
> include/svtools/editbrowsebox.hxx:234: error: undefined reference to 'svt::IEditImplementation::~IEditImplementation()'
> svx/source/form/fmshimp.cxx:3919: error: undefined reference to 'comphelper::IndexAccessIterator::IndexAccessIterator(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)'
> svx/source/form/fmshimp.cxx:3919: error: undefined reference to 'comphelper::IndexAccessIterator::IndexAccessIterator(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)'
> svx/source/form/fmshimp.cxx:2342: error: undefined reference to 'comphelper::IndexAccessIterator::Next()'
> svx/source/form/fmshimp.cxx:2437: error: undefined reference to 'comphelper::IndexAccessIterator::Next()'
> svx/source/inc/fmshimp.hxx:544: error: undefined reference to 'comphelper::IndexAccessIterator::~IndexAccessIterator()'
> svx/source/inc/fmshimp.hxx💯 error: undefined reference to 'comphelper::IndexAccessIterator::IndexAccessIterator(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)'
> svx/source/form/fmshimp.cxx:3092: error: undefined reference to 'comphelper::IndexAccessIterator::Next()'
> svx/source/inc/fmshimp.hxx:97: error: undefined reference to 'comphelper::IndexAccessIterator::~IndexAccessIterator()'
> svx/source/inc/fmshimp.hxx:97: error: undefined reference to 'comphelper::IndexAccessIterator::~IndexAccessIterator()'
> svx/source/inc/fmshimp.hxx💯 error: undefined reference to 'comphelper::IndexAccessIterator::IndexAccessIterator(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)'
> svx/source/form/fmshimp.cxx:3212: error: undefined reference to 'comphelper::IndexAccessIterator::Next()'
> svx/source/inc/fmshimp.hxx:97: error: undefined reference to 'comphelper::IndexAccessIterator::~IndexAccessIterator()'
> svx/source/form/fmshimp.cxx:1636: error: undefined reference to 'comphelper::IndexAccessIterator::IndexAccessIterator(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)'
> svx/source/form/fmshimp.cxx:1636: error: undefined reference to 'comphelper::IndexAccessIterator::~IndexAccessIterator()'
> svx/source/form/fmshimp.cxx:1636: error: undefined reference to 'comphelper::IndexAccessIterator::~IndexAccessIterator()'
> workdir/CxxObject/svx/source/form/fmshimp.o:fmshimp.cxx:typeinfo for FmXBoundFormFieldIterator: error: undefined reference to 'typeinfo for comphelper::IndexAccessIterator'
> workdir/CxxObject/svx/source/form/fmshimp.o:fmshimp.cxx:typeinfo for SearchableControlIterator: error: undefined reference to 'typeinfo for comphelper::IndexAccessIterator'

Change-Id: I9911219083676cd10f5ccfc067655252eb172a3e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119676
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-07-29 18:39:21 +02:00
Caolán McNamara d115205bc0 cid#1489450 Big parameter passed by value
Change-Id: I727922562f2655ef9dcc8f9deb866e7f39765f9c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119528
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-07-26 21:04:24 +02:00
Miklos Vajna ee3d408fd6 sw bibliography, local copy: add ODF filter
Map it to <text:bibliography-mark loext:local-url="...">.

Note how this can be a relative URL, while the text:url attribute is
typically a http(s) URL.

Change-Id: If16171c9761221841ff07824cb0466fd42911480
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119407
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2021-07-23 14:34:35 +02:00
Stephan Bergmann 58ddacdb4b loplugin:noexceptmove (macOS, libc++)
Change-Id: Ic587957fe0bf871b587375a68758a537de910de5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119399
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-07-23 10:40:41 +02:00
Noel Grandin bebb1a3f2d pass SvXMLNamespaceMap around by value
in SvXMLImport.

Remove an assert in XSecParser because std::move on std::optional
does not make the optional empty, unlike it's effect on std::unique_ptr.

Change-Id: Ie94d01423bf694a37e4bd7f2c0235c5f79a44efe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119302
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-07-22 10:16:20 +02:00
Noel Grandin 3077399b15 no need to store data separately in SvXMLAttrContainerItem
Change-Id: Idea4289c600a81f5c8dbb389343ef57a9623d11d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119251
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-07-20 18:57:10 +02:00
Michael Stahl 86c0f58b6f tdf#92796 ODF import: remove unused bitmap fills
With CWS impress64 a partial fix for this was implemented to drop
unreferenced named items including all non-color fills after ODF import,
but this is only done in sd so move the code that does that to svx and
call it from sc and sw as well.

Implement some UNO interface for this, it's at least better than a magic
string, and not obvious how a better solution would look like since it's
known only at the end of the import if a bitmap is used or not.

Another problem: when the Area tab is used to change to a different kind
of fill, the items with the details for the previous fill aren't
cleared, and so they are written to ODF files.  Hence bitmaps in the
file can be referenced even if they aren't actually used, and bloat up
the files.

Fix this by dropping all unused draw:fill-image-name attributes in ODF
import.

Also do the same for Gradient and Hatch fills; Transparency gradients
can be combined with anything so leave them as they are.

Change-Id: I0b591fd9f963d974d0c3e7208b99621ad61dd93c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118950
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2021-07-16 18:48:46 +02:00
Vasily Melenchuk aa5c6d1275 new ODF numbered list parameter loext:num-list-format
Instead of style:num-prefix and style:num-suffix new list format
is much more flexible for storing list multilevel numberings.
Now it is possible to have not just prefix/suffix but any random
separators between levels, arbitrary levels order, etc.

Internal LO format for list format is changed: instead of placeholders
like %1, %2, etc we right now use %1%, %2%... Reason: for ODT documents,
having more than 9 levels there is ambiguity in "%10": it is "%1"
followed by "0" suffix, or "%10"?

Aux changes:
* removed zero width space hack: since format string is always defined
this hack is interfering with standard list numbers printing
(see changes in ooxmlexport14.cxx, ww8export3.cxx tests)
* changed cross-references values to lists: they are now including full
list label string: previously this was bit self-contradictory (see
changes in odfexport.cxx and check_cross_references.py tests)

Change-Id: I9696cc4846375c5f6222539aeaadbca5ae58ce27
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117156
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2021-06-29 00:48:36 +02:00
László Németh 12da70f885 tdf#90401 xmloff: remove personal info of comments and changes
If Options → LibreOffice → Security → Security Options
and Warnings → Options... → Security Options → Remove personal
information on saving" is enabled.

Use the same time (1970-01-01T00:00:00) for mandatory
time stamps, and replace authors and creator-initials with
"1", "2", "3" etc., also to avoid of joining adjacent
redline ranges.

Note: to see the work of the unit test in Linux command line:

(cd sw && make UITest_writer_tests7 UITEST_TEST_NAME="tdf90401.tdf90401.test_tdf90401_remove_personal_info" SAL_USE_VCLPLUGIN=gen)

Change-Id: I3b4d710dbeeee12177aff378597cd2b683ca6c25
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117319
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
2021-06-17 10:43:08 +02:00
Noel Grandin ea1daffc09 no need to allocate this separately
Change-Id: Iae6b212c9114c0a5384fc8b7033fa80fa687c638
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116402
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-30 12:28:43 +02:00
László Németh 48898a7206 tdf#60382 sw xmloff: import/export tracked table/row deletion
to OpenDocument format using

<style:table-row-properties loext:text-changes-only="false"/>

Rename also com::sun::star::text::TextTableRow::IsNotTracked
to com::sun::star::text::TextTableRow::HasTextChangesOnly.

Follow-up to commit 05366b8e66
"tdf#60382 sw offapi: add change tracking of table/row deletion".

Change-Id: Iefb0d4095af0983fdd15697d5b80073d18d21bd7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116212
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
2021-05-27 15:25:06 +02:00
Noel Grandin a25385e0d8 simplify some XMLPropertyState memory management
which fixes a leak if some of the code throws an exception

Change-Id: Ic89060e7951060458ffe7ee5b6fe51cd076ef19b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115830
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-20 10:47:35 +02:00