[Libreoffice-commits] .: 5 commits - chart2/source cui/source sc/source sd/source sfx2/source sw/source unotools/inc xmloff/inc xmloff/source
Thorsten Behrens
thorsten at kemper.freedesktop.org
Mon Jun 4 20:13:32 PDT 2012
chart2/source/tools/DiagramHelper.cxx | 2 -
cui/source/options/optsave.cxx | 1
cui/source/options/optsave.src | 1
sc/source/filter/xml/XMLExportDataPilot.cxx | 10 +++---
sc/source/filter/xml/xmlstyle.cxx | 2 -
sd/source/ui/annotations/annotationmanager.cxx | 2 -
sfx2/source/doc/objstor.cxx | 4 +-
sw/source/filter/xml/xmlexp.cxx | 2 -
unotools/inc/unotools/saveopt.hxx | 1
xmloff/inc/xexptran.hxx | 9 +++---
xmloff/source/chart/SchXMLExport.cxx | 8 ++---
xmloff/source/core/xmlexp.cxx | 1
xmloff/source/draw/shapeexport2.cxx | 6 ++--
xmloff/source/draw/shapeexport3.cxx | 2 -
xmloff/source/draw/xexptran.cxx | 36 +++++++++++++++----------
xmloff/source/meta/MetaExportComponent.cxx | 1
xmloff/source/style/MarkerStyle.cxx | 2 -
xmloff/source/style/PageMasterStyleMap.cxx | 2 -
xmloff/source/text/txtparae.cxx | 8 ++---
xmloff/source/text/txtprmap.cxx | 10 +++---
20 files changed, 61 insertions(+), 49 deletions(-)
New commits:
commit 3fb24e6307e0ec3e09b1e48e9a4ce5f6787d2cc9
Author: Thorsten Behrens <tbehrens at suse.com>
Date: Tue Jun 5 05:03:06 2012 +0200
Fix fdo#50704 Default to absolute svg:d paths for ODF1.2 compat-mode
This writes out absolute paths, to side-step buggy odf consumers'
wrong handling of the 'z' statement (i.e. they ignore it for current
positions).
diff --git a/xmloff/inc/xexptran.hxx b/xmloff/inc/xexptran.hxx
index 86883cf..b38860a 100644
--- a/xmloff/inc/xexptran.hxx
+++ b/xmloff/inc/xexptran.hxx
@@ -36,7 +36,6 @@
#include <com/sun/star/awt/Size.hpp>
#include <com/sun/star/drawing/HomogenMatrix.hpp>
#include <tools/mapunit.hxx>
-#include <xmloff/xmlimp.hxx>
#include <vector>
@@ -46,6 +45,8 @@
struct ImpSdXMLExpTransObj2DBase;
struct ImpSdXMLExpTransObj3DBase;
class SvXMLUnitConverter;
+class SvXMLImport;
+class SvXMLExport;
namespace basegfx
{
@@ -160,14 +161,14 @@ class SdXMLImExSvgDElement
const SdXMLImExViewBox& mrViewBox;
bool mbIsClosed;
bool mbIsCurve;
-
+ bool mbRelative;
sal_Int32 mnLastX;
sal_Int32 mnLastY;
com::sun::star::drawing::PolyPolygonBezierCoords maPoly;
public:
- SdXMLImExSvgDElement(const SdXMLImExViewBox& rViewBox);
+ SdXMLImExSvgDElement(const SdXMLImExViewBox& rViewBox, const SvXMLExport& rExport);
SdXMLImExSvgDElement(const rtl::OUString& rNew,
const SdXMLImExViewBox& rViewBox,
const com::sun::star::awt::Point& rObjectPos,
@@ -179,7 +180,7 @@ public:
com::sun::star::drawing::FlagSequence* pFlags,
const com::sun::star::awt::Point& rObjectPos,
const com::sun::star::awt::Size& rObjectSize,
- bool bClosed = false, bool bRelative = true);
+ bool bClosed = false);
const rtl::OUString& GetExportString() const { return msString; }
bool IsClosed() const { return mbIsClosed; }
diff --git a/xmloff/source/draw/shapeexport2.cxx b/xmloff/source/draw/shapeexport2.cxx
index 43d9711..00856c8 100644
--- a/xmloff/source/draw/shapeexport2.cxx
+++ b/xmloff/source/draw/shapeexport2.cxx
@@ -999,7 +999,7 @@ void XMLShapeExport::ImpExportPolygonShape(
if(pOuterSequence && pOuterFlags)
{
// prepare svx:d element export
- SdXMLImExSvgDElement aSvgDElement(aViewBox);
+ SdXMLImExSvgDElement aSvgDElement(aViewBox, GetExport());
for(sal_Int32 a(0L); a < nOuterCnt; a++)
{
@@ -1066,7 +1066,7 @@ void XMLShapeExport::ImpExportPolygonShape(
if(pOuterSequence)
{
// prepare svx:d element export
- SdXMLImExSvgDElement aSvgDElement(aViewBox);
+ SdXMLImExSvgDElement aSvgDElement(aViewBox, GetExport());
for(sal_Int32 a(0L); a < nOuterCnt; a++)
{
@@ -1432,7 +1432,7 @@ void XMLShapeExport::ImpExportConnectorShape(
awt::Point aPoint( 0, 0 );
awt::Size aSize( 1, 1 );
SdXMLImExViewBox aViewBox( 0, 0, 1, 1 );
- SdXMLImExSvgDElement aSvgDElement(aViewBox);
+ SdXMLImExSvgDElement aSvgDElement(aViewBox, GetExport());
for(sal_Int32 a(0L); a < nOuterCnt; a++)
{
diff --git a/xmloff/source/draw/shapeexport3.cxx b/xmloff/source/draw/shapeexport3.cxx
index 7e111d6..888f4b6 100644
--- a/xmloff/source/draw/shapeexport3.cxx
+++ b/xmloff/source/draw/shapeexport3.cxx
@@ -263,7 +263,7 @@ void XMLShapeExport::ImpExport3DShape(
aViewBox.GetExportString());
// prepare svx:d element export
- SdXMLImExSvgDElement aSvgDElement(aViewBox);
+ SdXMLImExSvgDElement aSvgDElement(aViewBox, GetExport());
pInnerSequenceX = xPolyPolygon3D.SequenceX.getArray();
pInnerSequenceY = xPolyPolygon3D.SequenceY.getArray();
diff --git a/xmloff/source/draw/xexptran.cxx b/xmloff/source/draw/xexptran.cxx
index 0504096..545e0a4 100644
--- a/xmloff/source/draw/xexptran.cxx
+++ b/xmloff/source/draw/xexptran.cxx
@@ -31,6 +31,8 @@
#include <rtl/ustrbuf.hxx>
#include <sax/tools/converter.hxx>
#include <xmloff/xmluconv.hxx>
+#include <xmloff/xmlexp.hxx>
+#include <xmloff/xmlimp.hxx>
#include <tools/gen.hxx>
#include <basegfx/vector/b2dvector.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
@@ -1469,10 +1471,17 @@ SdXMLImExPointsElement::SdXMLImExPointsElement(const OUString& rNew,
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
-SdXMLImExSvgDElement::SdXMLImExSvgDElement(const SdXMLImExViewBox& rViewBox)
+SdXMLImExSvgDElement::SdXMLImExSvgDElement(const SdXMLImExViewBox& rViewBox,
+ const SvXMLExport& rExport)
: mrViewBox( rViewBox ),
mbIsClosed( false ),
mbIsCurve( false ),
+ // fdo#47406 - handle writing svg:d path slightly different for
+ // old odf versions and ODF1.2 compat mode - since ~all the legacy
+ // ODF ecosystem interprets relative svg:d paths incorrectly,
+ // write out absolute paths in those cases.
+ mbRelative( rExport.getDefaultVersion() >= SvtSaveOptions::ODFVER_012 &&
+ rExport.getDefaultVersion() != SvtSaveOptions::ODFVER_012_EXT_COMPAT ),
mnLastX( 0L ),
mnLastY( 0L ),
maPoly()
@@ -1535,7 +1544,7 @@ void SdXMLImExSvgDElement::AddPolygon(
drawing::FlagSequence* pFlags,
const awt::Point& rObjectPos,
const awt::Size& rObjectSize,
- bool bClosed, bool bRelative)
+ bool bClosed)
{
// Leaving the export stuff for the while, should eventually also
// consolidated with basegfx svg support
@@ -1722,7 +1731,7 @@ void SdXMLImExSvgDElement::AddPolygon(
if(bPrevPointIsSymmetric)
{
// write a shorthand/smooth quadratic curveto entry (T)
- if(bRelative)
+ if(mbRelative)
{
if(aLastCommand != sal_Unicode('t'))
aNewString += OUString(sal_Unicode('t'));
@@ -1752,7 +1761,7 @@ void SdXMLImExSvgDElement::AddPolygon(
mrViewBox, bScale, bTranslate);
// write a quadratic curveto entry (Q)
- if(bRelative)
+ if(mbRelative)
{
if(aLastCommand != sal_Unicode('q'))
aNewString += OUString(sal_Unicode('q'));
@@ -1814,7 +1823,7 @@ void SdXMLImExSvgDElement::AddPolygon(
if(bPrevPointIsSmooth)
{
// write a shorthand/smooth quadratic curveto entry (T)
- if(bRelative)
+ if(mbRelative)
{
if(aLastCommand != sal_Unicode('t'))
aNewString += rtl::OUString(static_cast<sal_Unicode>('t'));
@@ -1844,7 +1853,7 @@ void SdXMLImExSvgDElement::AddPolygon(
mrViewBox, bScale, bTranslate);
// write a quadratic curveto entry (Q)
- if(bRelative)
+ if(mbRelative)
{
if(aLastCommand != sal_Unicode('q'))
aNewString += rtl::OUString(static_cast<sal_Unicode>('q'));
@@ -1903,7 +1912,7 @@ void SdXMLImExSvgDElement::AddPolygon(
if(bPrevPointIsSymmetric)
{
// write a shorthand/smooth curveto entry (S)
- if(bRelative)
+ if(mbRelative)
{
if(aLastCommand != sal_Unicode('s'))
aNewString += rtl::OUString(static_cast<sal_Unicode>('s'));
@@ -1937,7 +1946,7 @@ void SdXMLImExSvgDElement::AddPolygon(
mrViewBox, bScale, bTranslate);
// write a curveto entry (C)
- if(bRelative)
+ if(mbRelative)
{
if(aLastCommand != sal_Unicode('c'))
aNewString += rtl::OUString(static_cast<sal_Unicode>('c'));
@@ -1993,7 +2002,7 @@ void SdXMLImExSvgDElement::AddPolygon(
// write as normal point
if(mnLastX == nX)
{
- if(bRelative)
+ if(mbRelative)
{
if(aLastCommand != sal_Unicode('v'))
aNewString += rtl::OUString(static_cast<sal_Unicode>('v'));
@@ -2014,7 +2023,7 @@ void SdXMLImExSvgDElement::AddPolygon(
}
else if(mnLastY == nY)
{
- if(bRelative)
+ if(mbRelative)
{
if(aLastCommand != sal_Unicode('h'))
aNewString += rtl::OUString(static_cast<sal_Unicode>('h'));
@@ -2035,7 +2044,7 @@ void SdXMLImExSvgDElement::AddPolygon(
}
else
{
- if(bRelative)
+ if(mbRelative)
{
if(aLastCommand != sal_Unicode('l'))
aNewString += rtl::OUString(static_cast<sal_Unicode>('l'));
@@ -2060,7 +2069,7 @@ void SdXMLImExSvgDElement::AddPolygon(
else
{
// write as start point
- if(bRelative)
+ if(mbRelative)
{
aNewString += rtl::OUString(static_cast<sal_Unicode>('m'));
@@ -2099,7 +2108,7 @@ void SdXMLImExSvgDElement::AddPolygon(
// close path if closed poly
if(bClosed)
{
- if(bRelative)
+ if(mbRelative)
aNewString += rtl::OUString(static_cast<sal_Unicode>('z'));
else
aNewString += rtl::OUString(static_cast<sal_Unicode>('Z'));
@@ -2126,6 +2135,7 @@ SdXMLImExSvgDElement::SdXMLImExSvgDElement(const OUString& rNew,
mrViewBox( rViewBox ),
mbIsClosed( false ),
mbIsCurve( false ),
+ mbRelative( true ),
mnLastX( 0L ),
mnLastY( 0L ),
maPoly()
diff --git a/xmloff/source/style/MarkerStyle.cxx b/xmloff/source/style/MarkerStyle.cxx
index 4e51a57..5c0c0ec 100644
--- a/xmloff/source/style/MarkerStyle.cxx
+++ b/xmloff/source/style/MarkerStyle.cxx
@@ -253,7 +253,7 @@ sal_Bool XMLMarkerStyleExport::exportXML(
// Pathdata
pOuterSequence = aBezier.Coordinates.getArray();
drawing::FlagSequence* pOuterFlags = aBezier.Flags.getArray();
- SdXMLImExSvgDElement aSvgDElement(aViewBox);
+ SdXMLImExSvgDElement aSvgDElement(aViewBox, rExport);
for (a = 0; a < nOuterCnt; a++)
{
diff --git a/xmloff/source/text/txtparae.cxx b/xmloff/source/text/txtparae.cxx
index 99f3230..e7b370b 100644
--- a/xmloff/source/text/txtparae.cxx
+++ b/xmloff/source/text/txtparae.cxx
@@ -3019,7 +3019,7 @@ void XMLTextParagraphExport::exportContour(
if(pOuterSequence)
{
// prepare svx:d element export
- SdXMLImExSvgDElement aSvgDElement( aViewBox );
+ SdXMLImExSvgDElement aSvgDElement( aViewBox, GetExport() );
for(sal_Int32 a(0L); a < nOuterCnt; a++)
{
commit d3c189fa742f0b21f99a8f3b1ebafe71c130d8d5
Author: Thorsten Behrens <tbehrens at suse.com>
Date: Tue Jun 5 04:20:32 2012 +0200
Fix fdo#50703 clamp ODF1.2 compatibility-mode to use old encryption.
As requested for better interop inside the ODF ecosystem, asking for
compatible odf output gets you blowfish/sha1-based encryption
unconditionally.
diff --git a/sfx2/source/doc/objstor.cxx b/sfx2/source/doc/objstor.cxx
index 9c53e22..3700d57 100644
--- a/sfx2/source/doc/objstor.cxx
+++ b/sfx2/source/doc/objstor.cxx
@@ -370,12 +370,12 @@ void SfxObjectShell::SetupStorage( const uno::Reference< embed::XStorage >& xSto
{
}
- if ( !aSaveOpt.IsUseSHA1InODF12() )
+ if ( !aSaveOpt.IsUseSHA1InODF12() && nDefVersion != SvtSaveOptions::ODFVER_012_EXT_COMPAT )
{
aEncryptionAlgs[0].Value <<= xml::crypto::DigestID::SHA256;
aEncryptionAlgs[2].Value <<= xml::crypto::DigestID::SHA256_1K;
}
- if ( !aSaveOpt.IsUseBlowfishInODF12() )
+ if ( !aSaveOpt.IsUseBlowfishInODF12() && nDefVersion != SvtSaveOptions::ODFVER_012_EXT_COMPAT )
aEncryptionAlgs[1].Value <<= xml::crypto::CipherID::AES_CBC_W3C_PADDING;
}
commit d0af38eaa029c2f2c2617544c8b6798c463381b9
Author: Thorsten Behrens <tbehrens at suse.com>
Date: Tue Jun 5 03:59:46 2012 +0200
Add ODF1.2 extended-but-more-compatible mode
With several legacy pre-ODF1.2 and ODF1.2-only consumers out there,
folks wanted a more backward-compatible ODF1.2 extended mode, that
uses stuff deprecated in 1.2, and/or is 'bug-compatible' to older
OOo-versions.
Therefore, adding ODFVER_012_EXT_COMPAT, and sticking it to several
attributes that were ODFVER_LATEST before.
diff --git a/cui/source/options/optsave.src b/cui/source/options/optsave.src
index 8bce711..8e275f4 100644
--- a/cui/source/options/optsave.src
+++ b/cui/source/options/optsave.src
@@ -157,6 +157,7 @@ TabPage RID_SFXPAGE_SAVE
{
< "1.0/1.1" ; 2 ; > ;
< "1.2" ; 4 ; > ;
+ < "1.2 Extended (compat mode)"; 8 ; > ;
< "1.2 Extended (recommended)"; 0x7fffffff ; > ;
};
};
diff --git a/sc/source/filter/xml/xmlstyle.cxx b/sc/source/filter/xml/xmlstyle.cxx
index ad965b1..25beb3e 100644
--- a/sc/source/filter/xml/xmlstyle.cxx
+++ b/sc/source/filter/xml/xmlstyle.cxx
@@ -67,7 +67,7 @@ using namespace ::formula;
using ::rtl::OUString;
#define MAP(name,prefix,token,type,context) { name, sizeof(name)-1, prefix, token, type, context, SvtSaveOptions::ODFVER_010 }
-#define MAP_EXT(name,prefix,token,type,context) { name, sizeof(name)-1, prefix, token, type, context, SvtSaveOptions::ODFVER_LATEST }
+#define MAP_EXT(name,prefix,token,type,context) { name, sizeof(name)-1, prefix, token, type, context, SvtSaveOptions::ODFVER_012_EXT_COMPAT }
#define MAP_END() { NULL, 0, 0, XML_TOKEN_INVALID, 0, 0, SvtSaveOptions::ODFVER_010 }
const XMLPropertyMapEntry aXMLScCellStylesProperties[] =
diff --git a/unotools/inc/unotools/saveopt.hxx b/unotools/inc/unotools/saveopt.hxx
index 0f20d62..f16d859 100644
--- a/unotools/inc/unotools/saveopt.hxx
+++ b/unotools/inc/unotools/saveopt.hxx
@@ -67,6 +67,7 @@ public:
ODFVER_011 = 2, // ODF 1.1
DO_NOT_USE = 3, // Do not use this, only here for compatibility with pre OOo 3.2 configuration
ODFVER_012 = 4, // ODF 1.2
+ ODFVER_012_EXT_COMPAT = 8, // ODF 1.2 extended, but with compatibility fallbacks
ODFVER_LATEST = SAL_MAX_ENUM, // ODF latest version with enhancements
};
diff --git a/xmloff/source/core/xmlexp.cxx b/xmloff/source/core/xmlexp.cxx
index e0748fa..9dc41e6 100644
--- a/xmloff/source/core/xmlexp.cxx
+++ b/xmloff/source/core/xmlexp.cxx
@@ -1359,6 +1359,7 @@ sal_uInt32 SvXMLExport::exportDoc( enum ::xmloff::token::XMLTokenEnum eClass )
switch( getDefaultVersion() )
{
case SvtSaveOptions::ODFVER_LATEST: pVersion = sXML_1_2; break;
+ case SvtSaveOptions::ODFVER_012_EXT_COMPAT: pVersion = sXML_1_2; break;
case SvtSaveOptions::ODFVER_012: pVersion = sXML_1_2; break;
case SvtSaveOptions::ODFVER_011: pVersion = sXML_1_1; break;
case SvtSaveOptions::ODFVER_010: break;
diff --git a/xmloff/source/meta/MetaExportComponent.cxx b/xmloff/source/meta/MetaExportComponent.cxx
index 26aa8f9..9fb1976 100644
--- a/xmloff/source/meta/MetaExportComponent.cxx
+++ b/xmloff/source/meta/MetaExportComponent.cxx
@@ -150,6 +150,7 @@ sal_uInt32 XMLMetaExportComponent::exportDoc( enum XMLTokenEnum )
switch( getDefaultVersion() )
{
case SvtSaveOptions::ODFVER_LATEST: pVersion = "1.2"; break;
+ case SvtSaveOptions::ODFVER_012_EXT_COMPAT: pVersion = "1.2"; break;
case SvtSaveOptions::ODFVER_012: pVersion = "1.2"; break;
case SvtSaveOptions::ODFVER_011: pVersion = "1.1"; break;
case SvtSaveOptions::ODFVER_010: break;
diff --git a/xmloff/source/style/PageMasterStyleMap.cxx b/xmloff/source/style/PageMasterStyleMap.cxx
index 231ec37..f6057e8 100644
--- a/xmloff/source/style/PageMasterStyleMap.cxx
+++ b/xmloff/source/style/PageMasterStyleMap.cxx
@@ -39,7 +39,7 @@ using namespace ::xmloff::token;
#define PLMAP_12(name,prefix,token,type,context) \
MAP(name,prefix,token,type|XML_TYPE_PROP_PAGE_LAYOUT,context, SvtSaveOptions::ODFVER_012)
#define PLMAP_EX(name,prefix,token,type,context) \
- MAP(name,prefix,token,type|XML_TYPE_PROP_PAGE_LAYOUT,context, SvtSaveOptions::ODFVER_LATEST)
+ MAP(name,prefix,token,type|XML_TYPE_PROP_PAGE_LAYOUT,context, SvtSaveOptions::ODFVER_012_EXT_COMPAT)
#define HFMAP(name,prefix,token,type,context) \
MAP(name,prefix,token,type|XML_TYPE_PROP_HEADER_FOOTER,context, SvtSaveOptions::ODFVER_010)
diff --git a/xmloff/source/text/txtprmap.cxx b/xmloff/source/text/txtprmap.cxx
index c1ec7e0..edf8c2d 100644
--- a/xmloff/source/text/txtprmap.cxx
+++ b/xmloff/source/text/txtprmap.cxx
@@ -101,7 +101,7 @@ XMLPropertyMapEntry aXMLParaPropMap[] =
MP_E( "ParaTopMarginRelative", FO, MARGIN_TOP, XML_TYPE_PERCENT16, CTF_PARATOPMARGIN_REL ),
MP_E( "ParaBottomMargin", FO, MARGIN_BOTTOM, XML_TYPE_MEASURE|MID_FLAG_MULTI_PROPERTY, CTF_PARABOTTOMMARGIN ),
MP_E( "ParaBottomMarginRelative",FO, MARGIN_BOTTOM, XML_TYPE_PERCENT16, CTF_PARABOTTOMMARGIN_REL ),
- { "ParaContextMargin", sizeof("ParaContextMargin")-1, XML_NAMESPACE_STYLE, XML_CONTEXTUAL_SPACING, XML_TYPE_BOOL|XML_TYPE_PROP_PARAGRAPH, 0, SvtSaveOptions::ODFVER_LATEST },
+ { "ParaContextMargin", sizeof("ParaContextMargin")-1, XML_NAMESPACE_STYLE, XML_CONTEXTUAL_SPACING, XML_TYPE_BOOL|XML_TYPE_PROP_PARAGRAPH, 0, SvtSaveOptions::ODFVER_012_EXT_COMPAT },
// RES_CHRATR_CASEMAP
MT_E( "CharCaseMap", FO, FONT_VARIANT, XML_TYPE_TEXT_CASEMAP_VAR, 0 ),
MT_E( "CharCaseMap", FO, TEXT_TRANSFORM, XML_TYPE_TEXT_CASEMAP, 0 ),
@@ -149,9 +149,9 @@ XMLPropertyMapEntry aXMLParaPropMap[] =
// RES_CHRATR_WEIGHT
MT_E( "CharWeight", FO, FONT_WEIGHT, XML_TYPE_TEXT_WEIGHT, 0 ),
// RES_CHRATR_RSID
- { "Rsid", sizeof("Rsid")-1, XML_NAMESPACE_OFFICE_EXT, XML_RSID, XML_TYPE_HEX|XML_TYPE_PROP_TEXT, 0, SvtSaveOptions::ODFVER_LATEST },
+ { "Rsid", sizeof("Rsid")-1, XML_NAMESPACE_OFFICE_EXT, XML_RSID, XML_TYPE_HEX|XML_TYPE_PROP_TEXT, 0, SvtSaveOptions::ODFVER_012_EXT_COMPAT },
// RES_PARATR_RSID
- { "ParRsid", sizeof("ParRsid")-1, XML_NAMESPACE_OFFICE_EXT, XML_PARRSID, XML_TYPE_HEX|XML_TYPE_PROP_TEXT, 0, SvtSaveOptions::ODFVER_LATEST },
+ { "ParRsid", sizeof("ParRsid")-1, XML_NAMESPACE_OFFICE_EXT, XML_PARRSID, XML_TYPE_HEX|XML_TYPE_PROP_TEXT, 0, SvtSaveOptions::ODFVER_012_EXT_COMPAT },
// RES_CHRATR_WORDLINEMODE
MT_E( "CharWordMode", STYLE, TEXT_UNDERLINE_MODE, XML_TYPE_TEXT_LINE_MODE|MID_FLAG_MERGE_PROPERTY, 0 ),
MT_E( "CharWordMode", STYLE, TEXT_OVERLINE_MODE, XML_TYPE_TEXT_LINE_MODE|MID_FLAG_MERGE_PROPERTY, 0 ),
@@ -448,9 +448,9 @@ XMLPropertyMapEntry aXMLTextPropMap[] =
// RES_CHRATR_WEIGHT
MT_E( "CharWeight", FO, FONT_WEIGHT, XML_TYPE_TEXT_WEIGHT, 0 ),
// RES_CHRATR_RSID
- { "Rsid", sizeof("Rsid")-1, XML_NAMESPACE_OFFICE_EXT, XML_RSID, XML_TYPE_HEX|XML_TYPE_PROP_TEXT, 0, SvtSaveOptions::ODFVER_LATEST },
+ { "Rsid", sizeof("Rsid")-1, XML_NAMESPACE_OFFICE_EXT, XML_RSID, XML_TYPE_HEX|XML_TYPE_PROP_TEXT, 0, SvtSaveOptions::ODFVER_012_EXT_COMPAT },
// RES_PARATR_RSID
- { "ParRsid", sizeof("ParRsid")-1, XML_NAMESPACE_OFFICE_EXT, XML_PARRSID, XML_TYPE_HEX|XML_TYPE_PROP_TEXT, 0, SvtSaveOptions::ODFVER_LATEST },
+ { "ParRsid", sizeof("ParRsid")-1, XML_NAMESPACE_OFFICE_EXT, XML_PARRSID, XML_TYPE_HEX|XML_TYPE_PROP_TEXT, 0, SvtSaveOptions::ODFVER_012_EXT_COMPAT },
// RES_CHRATR_WORDLINEMODE
MT_E( "CharWordMode", STYLE, TEXT_UNDERLINE_MODE, XML_TYPE_TEXT_LINE_MODE|MID_FLAG_MERGE_PROPERTY, 0 ),
MT_E( "CharWordMode", STYLE, TEXT_OVERLINE_MODE, XML_TYPE_TEXT_LINE_MODE|MID_FLAG_MERGE_PROPERTY, 0 ),
commit 24c260a271ec5f086b7883a6ed258e02af799d61
Author: Thorsten Behrens <tbehrens at suse.com>
Date: Tue Jun 5 03:57:55 2012 +0200
Unify ODF extended vs. ODF1.2 handling
Make "export extended ODF" consistently mean "version > ODF1.2".
Future ODF versions need manual review anyway, of the various
changes/additions we ship.
Change-Id: I0f6c1646b306e18f0abcdd1a1802fece821b2e93
diff --git a/chart2/source/tools/DiagramHelper.cxx b/chart2/source/tools/DiagramHelper.cxx
index 27026c5..bf755d6 100644
--- a/chart2/source/tools/DiagramHelper.cxx
+++ b/chart2/source/tools/DiagramHelper.cxx
@@ -1710,7 +1710,7 @@ bool DiagramHelper::switchDiagramPositioningToExcludingPositioning(
{
//return true if something was changed
const SvtSaveOptions::ODFDefaultVersion nCurrentODFVersion( SvtSaveOptions().GetODFDefaultVersion() );
- if( nCurrentODFVersion == SvtSaveOptions::ODFVER_LATEST )//#i100778# todo: change this dependent on fileformat evolution
+ if( nCurrentODFVersion > SvtSaveOptions::ODFVER_012 )
{
uno::Reference< ::com::sun::star::chart::XChartDocument > xOldDoc( xChartModel, uno::UNO_QUERY ) ;
if( xOldDoc.is() )
diff --git a/sc/source/filter/xml/XMLExportDataPilot.cxx b/sc/source/filter/xml/XMLExportDataPilot.cxx
index ade9d7d..5b5622c 100644
--- a/sc/source/filter/xml/XMLExportDataPilot.cxx
+++ b/sc/source/filter/xml/XMLExportDataPilot.cxx
@@ -444,7 +444,7 @@ void ScXMLExportDataPilot::WriteSubTotals(ScDPSaveDimension* pDim)
sal_Int32 nSubTotalCount = pDim->GetSubTotalsCount();
const OUString* pLayoutName = NULL;
- if (rExport.getDefaultVersion() == SvtSaveOptions::ODFVER_LATEST)
+ if (rExport.getDefaultVersion() > SvtSaveOptions::ODFVER_012)
// Export display names only for 1.2 extended or later.
pLayoutName = pDim->GetSubtotalName();
@@ -476,7 +476,7 @@ void ScXMLExportDataPilot::WriteMembers(ScDPSaveDimension* pDim)
{
rExport.AddAttribute(XML_NAMESPACE_TABLE, XML_NAME, rtl::OUString((*i)->GetName()));
- if (rExport.getDefaultVersion() == SvtSaveOptions::ODFVER_LATEST)
+ if (rExport.getDefaultVersion() > SvtSaveOptions::ODFVER_012)
{
// Export display names only for ODF 1.2 extended or later.
const OUString* pLayoutName = (*i)->GetLayoutName();
@@ -685,7 +685,7 @@ void ScXMLExportDataPilot::WriteGroupDimElements(ScDPSaveDimension* pDim, const
void ScXMLExportDataPilot::WriteDimension(ScDPSaveDimension* pDim, const ScDPDimensionSaveData* pDimData)
{
rExport.AddAttribute(XML_NAMESPACE_TABLE, XML_SOURCE_FIELD_NAME, rtl::OUString(pDim->GetName()));
- if (rExport.getDefaultVersion() == SvtSaveOptions::ODFVER_LATEST)
+ if (rExport.getDefaultVersion() > SvtSaveOptions::ODFVER_012)
{
// Export display names only for ODF 1.2 extended or later.
const OUString* pLayoutName = pDim->GetLayoutName();
@@ -817,7 +817,7 @@ void ScXMLExportDataPilot::WriteDataPilots(const uno::Reference <sheet::XSpreads
// grand total elements.
const OUString* pGrandTotalName = pDPSave->GetGrandTotalName();
- if (pGrandTotalName && rExport.getDefaultVersion() == SvtSaveOptions::ODFVER_LATEST)
+ if (pGrandTotalName && rExport.getDefaultVersion() > SvtSaveOptions::ODFVER_012)
{
// Use the new data-pilot-grand-total element.
if (bRowGrand && bColumnGrand)
@@ -836,7 +836,7 @@ void ScXMLExportDataPilot::WriteDataPilots(const uno::Reference <sheet::XSpreads
{
const ScSheetSourceDesc* pSheetSource = (*pDPs)[i]->GetSheetDesc();
- if (rExport.getDefaultVersion() == SvtSaveOptions::ODFVER_LATEST)
+ if (rExport.getDefaultVersion() > SvtSaveOptions::ODFVER_012)
{
if (pSheetSource->HasRangeName())
rExport.AddAttribute(
diff --git a/sd/source/ui/annotations/annotationmanager.cxx b/sd/source/ui/annotations/annotationmanager.cxx
index 0561ddb..bae35a7 100644
--- a/sd/source/ui/annotations/annotationmanager.cxx
+++ b/sd/source/ui/annotations/annotationmanager.cxx
@@ -604,7 +604,7 @@ void AnnotationManagerImpl::GetAnnotationState(SfxItemSet& rSet)
const SvtSaveOptions::ODFDefaultVersion nCurrentODFVersion( SvtSaveOptions().GetODFDefaultVersion() );
- if( bReadOnly || bWrongPageKind || (nCurrentODFVersion != SvtSaveOptions::ODFVER_LATEST) )
+ if( bReadOnly || bWrongPageKind || (nCurrentODFVersion <= SvtSaveOptions::ODFVER_012) )
rSet.DisableItem( SID_INSERT_POSTIT );
rSet.Put(SfxBoolItem(SID_SHOW_POSTIT, mbShowAnnotations));
diff --git a/sw/source/filter/xml/xmlexp.cxx b/sw/source/filter/xml/xmlexp.cxx
index 9faf522..d6017d2 100644
--- a/sw/source/filter/xml/xmlexp.cxx
+++ b/sw/source/filter/xml/xmlexp.cxx
@@ -155,7 +155,7 @@ sal_uInt32 SwXMLExport::exportDoc( enum XMLTokenEnum eClass )
if( (getExportFlags() & (EXPORT_FONTDECLS|EXPORT_STYLES|
EXPORT_MASTERSTYLES|EXPORT_CONTENT)) != 0 )
{
- if( getDefaultVersion() == SvtSaveOptions::ODFVER_LATEST )
+ if( getDefaultVersion() > SvtSaveOptions::ODFVER_012 )
{
_GetNamespaceMap().Add(
GetXMLToken(XML_NP_OFFICE_EXT),
diff --git a/xmloff/source/chart/SchXMLExport.cxx b/xmloff/source/chart/SchXMLExport.cxx
index f0c7783..9cb5bc5 100755
--- a/xmloff/source/chart/SchXMLExport.cxx
+++ b/xmloff/source/chart/SchXMLExport.cxx
@@ -1494,7 +1494,7 @@ void SchXMLExportHelper_Impl::parseDocument( Reference< chart::XChartDocument >&
// export legend size
const SvtSaveOptions::ODFDefaultVersion nCurrentODFVersion( SvtSaveOptions().GetODFDefaultVersion() );
- if( xLegendShape.is() && nCurrentODFVersion >= SvtSaveOptions::ODFVER_012 && nCurrentODFVersion == SvtSaveOptions::ODFVER_LATEST )//do not export legend-expansion to ODF 1.0 and export size only if extensions are enabled //#i28670# todo: change this dependent on fileformat evolution
+ if( xLegendShape.is() && nCurrentODFVersion >= SvtSaveOptions::ODFVER_012 )
{
try
{
@@ -2255,8 +2255,6 @@ void SchXMLExportHelper_Impl::exportCoordinateRegion( const uno::Reference< char
const SvtSaveOptions::ODFDefaultVersion nCurrentODFVersion( SvtSaveOptions().GetODFDefaultVersion() );
if( nCurrentODFVersion <= SvtSaveOptions::ODFVER_012 )//do not export to ODF 1.2 or older
return;
- if( nCurrentODFVersion != SvtSaveOptions::ODFVER_LATEST )//export only if extensions are enabled //#i100778# todo: change this dependent on fileformat evolution
- return;
Reference< chart::XDiagramPositioning > xDiaPos( xDiagram, uno::UNO_QUERY );
DBG_ASSERT( xDiaPos.is(), "Invalid xDiaPos as parameter" );
@@ -2379,7 +2377,7 @@ bool lcl_exportAxisType( const Reference< chart2::XAxis > xChart2Axis, SvXMLExpo
return bExportDateScale;
const SvtSaveOptions::ODFDefaultVersion nCurrentODFVersion( SvtSaveOptions().GetODFDefaultVersion() );
- if( nCurrentODFVersion != SvtSaveOptions::ODFVER_LATEST ) //#i25706#todo: change version for next ODF version
+ if( nCurrentODFVersion <= SvtSaveOptions::ODFVER_012 )//do not export to ODF 1.2 or older
return bExportDateScale;
chart2::ScaleData aScale( xChart2Axis->getScaleData() );
@@ -3658,7 +3656,7 @@ SchXMLExport::SchXMLExport(
maAutoStylePool( *this ),
maExportHelper( *this, maAutoStylePool )
{
- if( getDefaultVersion() == SvtSaveOptions::ODFVER_LATEST )
+ if( getDefaultVersion() > SvtSaveOptions::ODFVER_012 )
_GetNamespaceMap().Add( GetXMLToken(XML_NP_CHART_EXT), GetXMLToken(XML_N_CHART_EXT), XML_NAMESPACE_CHART_EXT);
}
diff --git a/xmloff/source/text/txtparae.cxx b/xmloff/source/text/txtparae.cxx
index b1decab..99f3230 100644
--- a/xmloff/source/text/txtparae.cxx
+++ b/xmloff/source/text/txtparae.cxx
@@ -2266,7 +2266,7 @@ void XMLTextParagraphExport::exportTextRangeEnumeration(
else if (sType.equals(sTextFieldStart))
{
/* As of now, textmarks are a proposed extension to the OpenDocument standard. */
- if ( GetExport().getDefaultVersion() == SvtSaveOptions::ODFVER_LATEST )
+ if ( GetExport().getDefaultVersion() > SvtSaveOptions::ODFVER_012 )
{
Reference<XNamed> xBookmark(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
if (xBookmark.is())
@@ -2328,7 +2328,7 @@ void XMLTextParagraphExport::exportTextRangeEnumeration(
}
else if (sType.equals(sTextFieldEnd))
{
- if ( GetExport().getDefaultVersion() == SvtSaveOptions::ODFVER_LATEST )
+ if ( GetExport().getDefaultVersion() > SvtSaveOptions::ODFVER_012 )
{
GetExport().StartElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_END, sal_False);
GetExport().EndElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_END, sal_False);
@@ -2357,7 +2357,7 @@ void XMLTextParagraphExport::exportTextRangeEnumeration(
}
else if (sType.equals(sTextFieldStartEnd))
{
- if ( GetExport().getDefaultVersion() == SvtSaveOptions::ODFVER_LATEST )
+ if ( GetExport().getDefaultVersion() > SvtSaveOptions::ODFVER_012 )
{
Reference<XNamed> xBookmark(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
if (xBookmark.is())
commit ecdd0501c809e8f283a09cc320a539b828bfec2f
Author: Thorsten Behrens <tbehrens at suse.com>
Date: Tue Jun 5 03:54:42 2012 +0200
Dupe code removal in cui
diff --git a/cui/source/options/optsave.cxx b/cui/source/options/optsave.cxx
index 6abeaed..efae17b 100644
--- a/cui/source/options/optsave.cxx
+++ b/cui/source/options/optsave.cxx
@@ -657,7 +657,6 @@ IMPL_LINK_NOARG(SfxSaveTabPage, ODFVersionHdl_Impl)
}
aODFWarningFI.Show( bShown );
- aODFWarningFT.Show( bShown );
return 0;
}
More information about the Libreoffice-commits
mailing list