summaryrefslogtreecommitdiff
path: root/sw/inc/expfld.hxx
AgeCommit message (Collapse)Author
2021-12-21tdf#104823: support for sdt plain text fieldsVasily Melenchuk
This is a squashed commit containing set of changes: * Create a input field from sdt text block. * Advanced support for reading field data from data bindings which can point to custom xml or properties xml. For this XOOXMLDocumentPropertiesImporter idl interface was extrended with extra getterrs to get properties as xml dom elements. * Support for exporting of this feature back to docx. For this some extra parameters for sdt block are kept in newly introduced grabbag for input fields. If field does not contain grabbag it being exported as before (FILLIN or whatsoever), otherwise sdt block is counstructed based on data from grabbag. * Basic support for updating custom xml values back into custom xmls with usage of xslt transformations. To achieve this extra parameters were introduced to XXSLTTransformer: now it is able to support in-memory transformation stylesheets. Some unittests were corrected: since sdt plain text edit area is a field located inside paragraph in outout corresponding sdt is also located inside paragraph (instead of Word's approach with paragraph inside sdt). Seems this is not critical. Change-Id: I1a73ef300db3619804f7adf18579bea708764c14 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127015 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127127
2021-10-29use virtual function call for dynamic dispatchBjoern Michaelsen
... as it is around since the dawn of C++ and should be stable -- certainly more stable and less errorprone that manual typetagging. Change-Id: I5dfe2ce40c2334dc8fe60705d358779fa4bf1586 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124131 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2021-06-18loplugin:finalclasses in swNoel Grandin
Change-Id: I5f228e839e0d5a51ece868b55715b04f0affc28d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117397 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-12-07Sw{Get,Set}ExpFieldType: Modify no moreBjoern Michaelsen
Change-Id: Id0daf2aa04663127dcbd78d2206d81aab6a783f8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107321 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-11-24tdf#42949 Fix new IWYU warnings in directory swGabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I4bb84c3f401aba8a3dede9cec3a7f2187a2ba02a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106473 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-03-13Revert "loplugin:constfields in sw"Noel Grandin
This reverts commit 4969f4c0d3e2581aaa8a5b5a5769840fa6b6f8ea. Change-Id: I527e9366b05e8a20633720e334395b285991c524 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90473 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-04std::set<T*> -> o3tl::sorted_vector in sw/Noel Grandin
Change-Id: I7b8e221b9e76f98efdbed9ee1c83e32379fde73f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87951 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-11-04loplugin:finalclasses in sw/incNoel Grandin
Change-Id: I084502d8c5607f103ef987b54252ef95341f0bef Reviewed-on: https://gerrit.libreoffice.org/81981 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-09-28loplugin:constmethod in swNoel Grandin
Change-Id: I73c3c6d2165287d2d581a04b23b1d3b48166a488 Reviewed-on: https://gerrit.libreoffice.org/79780 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-05-03The -fvisibility-ms-compat hack is no longer needed for UBSan on Linux...Stephan Bergmann
...with latest Clang trunk towards Clang 9. All the no-longer necessary hacks are made conditional on new NEED_CLANG_LINUX_UBSAN_RTTI_VISIBILITY, which is still set for UBSan builds with older Clang on Linux (but which should eventually be purged). Various classes needed additional SAL_DLLPUBLIC_RTTI annotations, as building with UBSan instrumentation can generate references to RTTI symbols from additional places like outside a dynamic library that used to hide those symbols by default (but used to not hide them for old UBSan builds thanks to the -fvisibility-ms-compat hack). The odr-violation suppressions in solenv/sanitizers/asan-suppressions (which is not referenced from anywhere in the code base, but meant to be included in an ASan/UBSan build's ASAN_OPTIONS env var) are also no longer needed when NEED_CLANG_LINUX_UBSAN_RTTI_VISIBILITY is false. Change-Id: I24ec3e388b0cbab50dbe2bf008d9569bff7bf25a Reviewed-on: https://gerrit.libreoffice.org/70829 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-03-28return by unique_ptr from SwFieldType::CopyNoel Grandin
Change-Id: I145b55c9cd62a5853c0dd26cc9b805b9f3a0e436 Reviewed-on: https://gerrit.libreoffice.org/69854 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-12-03sw: prefix members of SwTableFieldMiklos Vajna
Change-Id: I02dd9227ee43967d8cf49d99791bada5d1231566 Reviewed-on: https://gerrit.libreoffice.org/64440 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2018-11-21tdf#42949 Fix IWYU warnings in include/vcl/[B-E]*Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: Iabe571aa8f00492902c499094bea8365a3e17fca Reviewed-on: https://gerrit.libreoffice.org/63623 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2018-11-15sw_redlinehide_3: adapt SwSetExpFieldType::GetSeqFieldList()Michael Stahl
Change-Id: Iea24b3823b648066e331dc5e9789c79662727a12
2018-11-15sw_redlinehide_3: add second result to SwGetExpField, SwSetExpFieldMichael Stahl
This is quite tricky & somewhat ugly due to the SwValueField base class & we need to duplicate its member too :( It would be possible to filter the deleted fields in SwDocUpdateField::MakeFieldList(), but the problem with that is that the instance is long-lived & might be used with different layout settings, so it's probably better to filter in the 5 or so client functions that iterate over the GetSortList(). Note that this will also filter other fields including database fields, hopefully that shouldn't cause problems. Change-Id: I0cdbc7757fa529598b5dbceec0bd2c4a619be05a
2018-11-15sw: remove the SwSetExpFieldType::m_pOutlChgNd memberMichael Stahl
It's only used in one function, just use a local map. Change-Id: I3a79876acf8b31c1a8a14e9f65ada2153e7c773a
2018-11-15sw_redlinehide_3: transport layout from ExpandField() to Expand()Michael Stahl
While at it, rename that to ExpandImpl() so it's unique. Change-Id: I217deb72b4dfdca777e28e18ff56e49863e66640
2018-10-04loplugin:useuniqueptr in SwSeqFieldListNoel Grandin
no need to store such a small structure separately on the heap Change-Id: I36b3ad5250718b7bdf526f5f67219740c69a549a Reviewed-on: https://gerrit.libreoffice.org/61298 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-03loplugin:constfields in swNoel Grandin
Change-Id: I1eb6583bb9ec815bc0564b0d7c676f5b1fb9045f Reviewed-on: https://gerrit.libreoffice.org/61177 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-01sw: prefix members of SwSetExpField / SwSetExpFieldTypeMiklos Vajna
Change-Id: I63327930ba5b082bcd82fa107b6c9c73b3b6e627 Reviewed-on: https://gerrit.libreoffice.org/61175 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins
2018-07-30sw: prefix members of SwHyperlinkIter_Impl and SwInputFieldMiklos Vajna
Change-Id: I35bb9f6624a74c8351c094355434417790d6027d Reviewed-on: https://gerrit.libreoffice.org/58301 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins
2018-07-25sw: prefix members of SwGetExpField and SwGetRefFieldMiklos Vajna
Change-Id: I703357694eb2f880fa9cc5240fcc5610bd34e924 Reviewed-on: https://gerrit.libreoffice.org/57950 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins
2018-07-10pass SwField around by std::unique_ptrNoel Grandin
Fix leak in SwFieldPage::InsertField, where it interacts badly with SwFieldMgr::UpdateCurField The awkward return std::unique_ptr<SwField>(pTmp.release()); code is because clang 3.8.0 doesn't seem able to do auto-upcast of std::unique_ptr. Change-Id: I05b748e9cda145fd972a01bfa343239df32368b9 Reviewed-on: https://gerrit.libreoffice.org/57197 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-30loplugin:unused-returns in swNoel Grandin
Change-Id: I753fcdd35d461880a8d8160213cabd465cfde967 Reviewed-on: https://gerrit.libreoffice.org/48189 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-11-27loplugin:countusersofdefaultparams in sw (3)Noel Grandin
Change-Id: I2657c1146bc377135e13116f32dbf518f8815417 Reviewed-on: https://gerrit.libreoffice.org/45318 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-23loplugin:includeform: swStephan Bergmann
Change-Id: Ifc3c4c31a31ee7189eeab6f1af30b94d64f2f92a
2017-04-26use strong_int for LanguageTypeNoel Grandin
Change-Id: If99a944f7032180355da291ad283b4cfcea4f448 Reviewed-on: https://gerrit.libreoffice.org/36629 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-25tools: svstream.hxx needs only errcode.hxx & not errinf.hxxChris Sherlock
Change-Id: Ia28e35ae5af4f601e9a586a3deffbcd61702b0ca Reviewed-on: https://gerrit.libreoffice.org/36896 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
2017-03-25Fix typosAndrea Gelmini
Change-Id: Ia87318cb323d403cdff947da0b70e0d2aabaacd4 Reviewed-on: https://gerrit.libreoffice.org/35657 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-03-03Remove redundant 'inline' keywordStephan Bergmann
...from function definitions occurring within class definitions. Done with a rewriting Clang plugin (to be pushed later). Change-Id: I9c6f2818a57ccdb361548895a7743107cbacdff8 Reviewed-on: https://gerrit.libreoffice.org/34874 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-01-13new loplugin: useuniqueptr: sw part 1Noel Grandin
Change-Id: I2bc55634e80976951ede768c97fbc4b7c4eda46c Reviewed-on: https://gerrit.libreoffice.org/32963 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-10-27loplugin:expandablemethods in swNoel Grandin
Change-Id: Ibc9edc28f4041235ab30c026bd3774bd74b7e960 Reviewed-on: https://gerrit.libreoffice.org/30287 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-10-20loplugin:expandablemethodds in sw(part1)Noel Grandin
Change-Id: Ic3a558e6b646b6b6bc4cb7e09a00695553023534 Reviewed-on: https://gerrit.libreoffice.org/30073 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-10-04loplugin:countusersofdefaultparams in swNoel Grandin
Change-Id: I65beb17816641cff6a07379b7ba234afe26806b3 Reviewed-on: https://gerrit.libreoffice.org/29488 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-13loplugin:override: No more need for the "MSVC dtor override" workaroundStephan Bergmann
The issue of 362d4f0cd4e50111edfae9d30c90602c37ed65a2 "Explicitly mark overriding destructors as 'virtual'" appears to no longer be a problem with MSVC 2013. (The little change in the rewriting code of compilerplugins/clang/override.cxx was necessary to prevent an endless loop when adding "override" to OOO_DLLPUBLIC_CHARTTOOLS virtual ~CloseableLifeTimeManager(); in chart2/source/inc/LifeTime.hxx, getting stuck in the leading OOO_DLLPUBLIC_CHARTTOOLS macro. Can't remember what that isAtEndOfImmediateMacroExpansion thing was originally necessary for, anyway.) Change-Id: I534c634504d7216b9bb632c2775c04eaf27e927e
2016-04-22Avoid reserved identifiersStephan Bergmann
Change-Id: I27ff0f4f0eb395d7e0a60dd604758c220a3134c4
2016-04-14loplugin:passstuffbyref in swNoel Grandin
Change-Id: I124bdd4f28c7d7508e77b902dfa23c398454bf38
2016-04-06Indentation fixesMiklos Vajna
Change-Id: Ieba9dfed344e04067278300365172162d6d44aae
2016-01-21loplugin: unused return valuesNoel Grandin
Change-Id: I4eb1f0c9245c04058fd5e47046f043f8840a79c7 Reviewed-on: https://gerrit.libreoffice.org/21628 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-25bin/rename-sw-abbreviations.shlibreoffice-5-1-branch-pointRobinson Tryon
This commit renames the most annoying abbreviations in Writer (and partially in the shared code too). Change-Id: I77e5134f42f25e3786afa36b7a505c7e3237a9e8
2015-11-06com::sun::star->css in sw/incNoel Grandin
Change-Id: I6ffdb1deaa32156c65f997a1a1056928b7cd863d Reviewed-on: https://gerrit.libreoffice.org/19803 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-12Replace "SAL_OVERRIDE" with "override" in LIBO_INTERNAL_ONLY codeStephan Bergmann
Change-Id: I2ea407acd763ef2d7dae2d3b8f32525523ac8274
2015-07-21loplugin:unusedmethods swNoel Grandin
Change-Id: Ied51535fa169451fc4991237122817a34a59f6fe Reviewed-on: https://gerrit.libreoffice.org/17256 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-05-20bin/rename-sw-abbreviations.shlibreoffice-5-0-branch-pointChristian Lohmaier
renames the most annoying abbreviations in Writer (and partially in the shared code too). Change-Id: I9a62759138126c1537cc5c985ba05cf54d6132d9
2015-04-16Revert "make more classes dllpublic"David Tardon
This reverts commit add2ca7b3ab10ed9d18e60d8e50020168d922836. It causes too much breakage on windows. It is better to start again from scratch.
2015-04-16make more classes dllpublicDavid Tardon
... to fix asan+ubsan+dbgutil build Change-Id: I1400774d383879bbff9bf28251a104cd53bafaed
2015-01-26followup code removal after changing virtual methods to non-virtualNoel Grandin
This cleanups up indentation and removes dead classes. This is a followup patch to commit 272b1dd55797aacf511fb4342b0054e3697243f6 "new loplugin: change virtual methods to non-virtual" Change-Id: I1c2139589cf8cb23bb9808defe22c51039d38de1
2015-01-26new loplugin: change virtual methods to non-virtualNoel Grandin
Where we can prove that the virtual method is never overriden. In the case of pure-virtual methods, we remove the method entirely. Sometimes this leads to entire methods and fields being eliminated. Change-Id: I138ef81c95f115dbd8c023a83cfc7e9d5d6d14ae
2014-11-10loplugin: cstylecastNoel Grandin
Change-Id: If7ada4cba0b1098bba304f1ec9b860ec7df75e7a
2014-10-15More -Werror,-Wunused-private-fieldStephan Bergmann
...detected with a modified trunk Clang with > Index: lib/Sema/SemaDeclCXX.cpp > =================================================================== > --- lib/Sema/SemaDeclCXX.cpp (revision 219190) > +++ lib/Sema/SemaDeclCXX.cpp (working copy) > @@ -1917,9 +1917,10 @@ > const Type *T = FD.getType()->getBaseElementTypeUnsafe(); > // FIXME: Destruction of ObjC lifetime types has side-effects. > if (const CXXRecordDecl *RD = T->getAsCXXRecordDecl()) > - return !RD->isCompleteDefinition() || > - !RD->hasTrivialDefaultConstructor() || > - !RD->hasTrivialDestructor(); > + return !RD->hasAttr<WarnUnusedAttr>() && > + (!RD->isCompleteDefinition() || > + !RD->hasTrivialDefaultConstructor() || > + !RD->hasTrivialDestructor()); > return false; > } > > @@ -3517,9 +3518,11 @@ > bool addFieldInitializer(CXXCtorInitializer *Init) { > AllToInit.push_back(Init); > > +#if 0 > // Check whether this initializer makes the field "used". > if (Init->getInit()->HasSideEffects(S.Context)) > S.UnusedPrivateFields.remove(Init->getAnyMember()); > +#endif > > return false; > } to warn about members of SAL_WARN_UNUSED-annotated class types, and warn about initializations with side effects (cf. <http://lists.cs.uiuc.edu/pipermail/cfe-dev/2014-October/039602.html> "-Wunused-private-field distracted by side effects"). Change-Id: I3f3181c4eb8180ca28e1fa3dffc9dbe1002c6628