summaryrefslogtreecommitdiffstats
path: root/filter
diff options
context:
space:
mode:
authorSerge Krot <Serge.Krot@cib.de>2020-05-13 22:52:52 +0200
committerThorsten Behrens <Thorsten.Behrens@CIB.de>2020-05-26 00:20:54 +0200
commitfd238380ae7820f12ac1f7c52d0f7180a93f3ba3 (patch)
tree45ab7a3059654e33707af0af7aa9c0dee069d74e /filter
parentRemapping NatNum-DBNum in Korean for compatibility tdf#130193 (diff)
downloadcore-fd238380ae7820f12ac1f7c52d0f7180a93f3ba3.tar.gz
core-fd238380ae7820f12ac1f7c52d0f7180a93f3ba3.zip
tdf#106181 XLSX export: output form controls
Prepared general algorithm to ouput form controls into XLSX. For now only CHECKBOX is supported with a possibility to link withem to any worksheet/cell. Change-Id: Ide8739d81ffb755aeae074c4ebecf24251383e34 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94161 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'filter')
-rw-r--r--filter/source/msfilter/eschesdo.cxx23
1 files changed, 11 insertions, 12 deletions
diff --git a/filter/source/msfilter/eschesdo.cxx b/filter/source/msfilter/eschesdo.cxx
index 22f47daa15af..efe3c908b6b4 100644
--- a/filter/source/msfilter/eschesdo.cxx
+++ b/filter/source/msfilter/eschesdo.cxx
@@ -401,11 +401,16 @@ sal_uInt32 ImplEESdrWriter::ImplWriteShape( ImplEESdrObject& rObj,
const Reference< XPropertySet > xPropSet = rObj.mXPropSet;
const Reference<XPropertySetInfo> xPropInfo = xPropSet.is() ? xPropSet->getPropertySetInfo() : Reference<XPropertySetInfo>();
// This code is expected to be called only for DOCX format.
- if (xPropInfo.is() && xPropInfo->hasPropertyByName("AnchorType") && bOOxmlExport)
+ if (xPropInfo.is())
{
- text::TextContentAnchorType eAnchorType;
- xPropSet->getPropertyValue("AnchorType") >>= eAnchorType;
- bool bInline = eAnchorType == text::TextContentAnchorType_AS_CHARACTER;
+ bool bInline = false;
+ if (xPropInfo->hasPropertyByName("AnchorType"))
+ {
+ text::TextContentAnchorType eAnchorType;
+ xPropSet->getPropertyValue("AnchorType") >>= eAnchorType;
+ bInline = eAnchorType == text::TextContentAnchorType_AS_CHARACTER;
+ }
+
mpEscherEx->OpenContainer( ESCHER_SpContainer );
if(bInline)
{
@@ -812,20 +817,14 @@ void ImplEESdrWriter::ImplWritePage(
{
ImplInitPageValues();
- sal_uInt32 nLastPer = 0, nShapes = mXShapes->getCount();
+ const sal_uInt32 nShapes = mXShapes->getCount();
for( sal_uInt32 n = 0; n < nShapes; ++n )
{
- sal_uInt32 nPer = ( 5 * n ) / nShapes;
- if( nPer != nLastPer )
- {
- nLastPer = nPer;
- }
-
ImplEESdrObject aObj( *this, *o3tl::doAccess<Reference<XShape>>(
mXShapes->getByIndex( n )) );
if( aObj.IsValid() )
{
- ImplWriteShape( aObj, rSolverContainer );
+ ImplWriteShape( aObj, rSolverContainer, true );
}
}
}