[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-4.0' - 10 commits - oox/inc oox/source sal/inc sd/inc sd/source svl/inc svl/source svx/inc svx/source
Muthu Subramanian
sumuthu at collabora.com
Fri Jan 3 02:28:27 PST 2014
oox/inc/oox/core/contexthandler2.hxx | 2
oox/inc/oox/drawingml/textcharacterproperties.hxx | 1
oox/source/drawingml/textcharacterproperties.cxx | 10 ++++
oox/source/drawingml/textcharacterpropertiescontext.cxx | 2
oox/source/export/drawingml.cxx | 10 ++--
sal/inc/rtl/strbuf.hxx | 17 ++++++
sd/inc/sdpage.hxx | 3 +
sd/source/core/drawdoc3.cxx | 22 ++++++--
sd/source/core/sdpage2.cxx | 37 ++++++++++++++
svl/inc/svl/itemset.hxx | 1
svl/source/items/itemset.cxx | 16 ++++++
svx/inc/svx/svdobj.hxx | 2
svx/source/svdraw/svdobj.cxx | 40 ++++++++++++++++
13 files changed, 152 insertions(+), 11 deletions(-)
New commits:
commit ac139769216942c409d7c5d40163ad29cadadf5a
Author: Muthu Subramanian <sumuthu at collabora.com>
Date: Thu Jan 2 14:03:22 2014 +0530
Fix compilation problems.
diff --git a/oox/source/drawingml/textbodycontext.cxx b/oox/source/drawingml/textbodycontext.cxx
index a8b3d64..7bc29a0 100644
--- a/oox/source/drawingml/textbodycontext.cxx
+++ b/oox/source/drawingml/textbodycontext.cxx
@@ -54,7 +54,6 @@ TextParagraphContext::TextParagraphContext( ContextHandler& rParent, TextParagra
: ContextHandler( rParent )
, mrParagraph( rPara )
{
- mbEnableTrimSpace = false;
}
// --------------------------------------------------------------------
diff --git a/oox/source/drawingml/textcharacterproperties.cxx b/oox/source/drawingml/textcharacterproperties.cxx
index c531bc1..bc23204 100644
--- a/oox/source/drawingml/textcharacterproperties.cxx
+++ b/oox/source/drawingml/textcharacterproperties.cxx
@@ -21,7 +21,7 @@
#include <com/sun/star/lang/Locale.hpp>
#include <com/sun/star/awt/FontSlant.hpp>
#include <com/sun/star/awt/FontWeight.hpp>
-#include <editeng/escapementitem.hxx>
+#include <editeng/escpitem.hxx>
#include "oox/helper/helper.hxx"
#include "oox/helper/propertyset.hxx"
#include "oox/core/xmlfilterbase.hxx"
commit e5cd547846663c69bd66aa1ba94e3b4dcce30a89
Author: Muthu Subramanian <sumuthu at collabora.com>
Date: Thu Dec 19 16:48:20 2013 +0530
n#828390: Bullet sizes set wrong.
diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx
index ff3f62a..3986989 100644
--- a/oox/source/export/drawingml.cxx
+++ b/oox/source/export/drawingml.cxx
@@ -1102,7 +1102,7 @@ void DrawingML::WriteParagraphNumbering( Reference< XPropertySet > rXPropSet, sa
} else {
if( nBulletRelSize && nBulletRelSize != 100 )
mpFS->singleElementNS( XML_a, XML_buSzPct,
- XML_val, IS( std::min( (sal_Int32)25000, std::max( (sal_Int32)400000, 1000*( (sal_Int32)nBulletRelSize ) ) ) ), FSEND );
+ XML_val, IS( std::max( (sal_Int32)25000, std::min( (sal_Int32)400000, 1000*( (sal_Int32)nBulletRelSize ) ) ) ), FSEND );
if( bHasFontDesc )
mpFS->singleElementNS( XML_a, XML_buFont,
XML_typeface, OUStringToOString( aFontDesc.Name, RTL_TEXTENCODING_UTF8 ).getStr(),
commit c8f4d9b98228d241d3798ce839b3553a2708c36b
Author: Muthu Subramanian <sumuthu at collabora.com>
Date: Thu Dec 12 18:24:42 2013 +0530
n#828390: Reset charescapement.
Unless the value is reset - the escapement
seems to continue to the next set of textruns.
diff --git a/oox/source/drawingml/textcharacterproperties.cxx b/oox/source/drawingml/textcharacterproperties.cxx
index 4230148..c531bc1 100644
--- a/oox/source/drawingml/textcharacterproperties.cxx
+++ b/oox/source/drawingml/textcharacterproperties.cxx
@@ -129,6 +129,9 @@ void TextCharacterProperties::pushToPropMap( PropertyMap& rPropMap, const XmlFil
if( moBaseline.has() ) {
rPropMap[ PROP_CharEscapement ] <<= sal_Int16(moBaseline.get( 0 ) / 1000);
rPropMap[ PROP_CharEscapementHeight ] <<= sal_Int8(DFLT_ESC_PROP);
+ } else {
+ rPropMap[ PROP_CharEscapement ] <<= sal_Int16(0);
+ rPropMap[ PROP_CharEscapementHeight ] <<= sal_Int8(100); // 100%
}
if( !bUseOptional || moBold.has() ) {
commit cd793642b76d69155e581f3d7df049c08a4195ee
Author: Muthu Subramanian <sumuthu at collabora.com>
Date: Wed Dec 18 20:19:48 2013 +0530
Fix fdo#70220 Superscript not imported from pptx.
Ported from: 840a8573c8cebe67ddd3c9fe106c7dbd789bb334
(Original Author: Thorsten)
diff --git a/oox/inc/oox/drawingml/textcharacterproperties.hxx b/oox/inc/oox/drawingml/textcharacterproperties.hxx
index 3dc4062..1073fa6 100644
--- a/oox/inc/oox/drawingml/textcharacterproperties.hxx
+++ b/oox/inc/oox/drawingml/textcharacterproperties.hxx
@@ -46,6 +46,7 @@ struct TextCharacterProperties
OptValue< sal_Int32 > moHeight;
OptValue< sal_Int32 > moSpacing;
OptValue< sal_Int32 > moUnderline;
+ OptValue< sal_Int32 > moBaseline;
OptValue< sal_Int32 > moStrikeout;
OptValue< sal_Int32 > moCaseMap;
OptValue< bool > moBold;
diff --git a/oox/source/drawingml/textcharacterproperties.cxx b/oox/source/drawingml/textcharacterproperties.cxx
index 0163f82..4230148 100644
--- a/oox/source/drawingml/textcharacterproperties.cxx
+++ b/oox/source/drawingml/textcharacterproperties.cxx
@@ -21,6 +21,7 @@
#include <com/sun/star/lang/Locale.hpp>
#include <com/sun/star/awt/FontSlant.hpp>
#include <com/sun/star/awt/FontWeight.hpp>
+#include <editeng/escapementitem.hxx>
#include "oox/helper/helper.hxx"
#include "oox/helper/propertyset.hxx"
#include "oox/core/xmlfilterbase.hxx"
@@ -52,6 +53,7 @@ void TextCharacterProperties::assignUsed( const TextCharacterProperties& rSource
moHeight.assignIfUsed( rSourceProps.moHeight );
moSpacing.assignIfUsed( rSourceProps.moSpacing );
moUnderline.assignIfUsed( rSourceProps.moUnderline );
+ moBaseline.assignIfUsed( rSourceProps.moBaseline );
moStrikeout.assignIfUsed( rSourceProps.moStrikeout );
moCaseMap.assignIfUsed( rSourceProps.moCaseMap );
moBold.assignIfUsed( rSourceProps.moBold );
@@ -124,6 +126,11 @@ void TextCharacterProperties::pushToPropMap( PropertyMap& rPropMap, const XmlFil
rPropMap[ PROP_CharStrikeout ] <<= GetFontStrikeout( moStrikeout.get( XML_noStrike ) );
rPropMap[ PROP_CharCaseMap ] <<= GetCaseMap( moCaseMap.get( XML_none ) );
+ if( moBaseline.has() ) {
+ rPropMap[ PROP_CharEscapement ] <<= sal_Int16(moBaseline.get( 0 ) / 1000);
+ rPropMap[ PROP_CharEscapementHeight ] <<= sal_Int8(DFLT_ESC_PROP);
+ }
+
if( !bUseOptional || moBold.has() ) {
float fWeight = moBold.get( false ) ? awt::FontWeight::BOLD : awt::FontWeight::NORMAL;
rPropMap[ PROP_CharWeight ] <<= fWeight;
diff --git a/oox/source/drawingml/textcharacterpropertiescontext.cxx b/oox/source/drawingml/textcharacterpropertiescontext.cxx
index 605ebb0..2119dc6 100644
--- a/oox/source/drawingml/textcharacterpropertiescontext.cxx
+++ b/oox/source/drawingml/textcharacterpropertiescontext.cxx
@@ -56,6 +56,8 @@ TextCharacterPropertiesContext::TextCharacterPropertiesContext(
mrTextCharacterProperties.moUnderline = aAttribs.getToken( XML_u );
if ( aAttribs.hasAttribute( XML_strike ) )
mrTextCharacterProperties.moStrikeout = aAttribs.getToken( XML_strike );
+ if ( aAttribs.hasAttribute( XML_baseline ) )
+ mrTextCharacterProperties.moBaseline = aAttribs.getInteger( XML_baseline );
// mrTextCharacterProperties.moCaseMap = aAttribs.getToken( XML_cap );
if ( aAttribs.hasAttribute( XML_b ) )
commit 3ab5537b23061e2e42b3afb56c403a72ae8524b8
Author: Muthu Subramanian <sumuthu at collabora.com>
Date: Wed Dec 18 20:08:41 2013 +0530
n#828390: Explictly export font properties.
Seems like the status is returned as default,
but the font properties needs to be still exported.
diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx
index bfe3ed9..ff3f62a 100644
--- a/oox/source/export/drawingml.cxx
+++ b/oox/source/export/drawingml.cxx
@@ -667,14 +667,14 @@ void DrawingML::WriteRunProperties( Reference< XPropertySet > rRun, sal_Bool bIs
sal_Int32 nSize = 1800;
sal_Int32 nCharEscapement = 0;
- if( GETAD( CharHeight ) )
+ if( GETA( CharHeight ) )
nSize = (sal_Int32) (100*(*((float*) mAny.getValue())));
- if ( ( bComplex && GETAD( CharWeightComplex ) ) || GETAD( CharWeight ) )
+ if ( ( bComplex && GETA( CharWeightComplex ) ) || GETA( CharWeight ) )
if ( *((float*) mAny.getValue()) >= awt::FontWeight::SEMIBOLD )
bold = "1";
- if ( ( bComplex && GETAD( CharPostureComplex ) ) || GETAD( CharPosture ) )
+ if ( ( bComplex && GETA( CharPostureComplex ) ) || GETA( CharPosture ) )
switch ( *((awt::FontSlant*) mAny.getValue()) )
{
case awt::FontSlant_OBLIQUE :
@@ -789,7 +789,7 @@ void DrawingML::WriteRunProperties( Reference< XPropertySet > rRun, sal_Bool bIs
WriteSolidFill( color );
}
- if( GETAD( CharFontName ) ) {
+ if( GETA( CharFontName ) ) {
const char* typeface = NULL;
const char* pitch = NULL;
const char* charset = NULL;
commit e16a2d929613610526a4101e1750a14b49a68104
Author: Muthu Subramanian <sumuthu at collabora.com>
Date: Thu Dec 12 12:57:02 2013 +0530
Force int16 as int32
diff --git a/sd/source/core/sdpage2.cxx b/sd/source/core/sdpage2.cxx
index 2aceba9..f61cab0 100644
--- a/sd/source/core/sdpage2.cxx
+++ b/sd/source/core/sdpage2.cxx
@@ -599,8 +599,8 @@ OString SdPage::stringify() const
/*append(OUStringToOString(maCreatedPageName, RTL_TEXTENCODING_UTF8)).
append(OUStringToOString(maFileName, RTL_TEXTENCODING_UTF8)).*/
append(OUStringToOString(maBookmarkName, RTL_TEXTENCODING_UTF8)).
- append(mbScaleObjects).append(mbBackgroundFullSize).append((sal_Int32)meCharSet).append(mnPaperBin).
- append((sal_Int32)meOrientation).append(mnTransitionType).append(mnTransitionSubtype).append(mbTransitionDirection).
+ append(mbScaleObjects).append(mbBackgroundFullSize).append((sal_Int32)meCharSet).append((sal_Int32)mnPaperBin).
+ append((sal_Int32)meOrientation).append((sal_Int32)mnTransitionType).append((sal_Int32)mnTransitionSubtype).append(mbTransitionDirection).
append(mnTransitionFadeColor).append(mfTransitionDuration);//.append(mbIsPrecious);
sal_Int32 n = GetObjCount();
commit 21326076928a11f12dcef6bf752b76302bd469c8
Author: Muthu Subramanian <sumuthu at collabora.com>
Date: Thu Dec 12 12:55:39 2013 +0530
Force enums as ints - to avoid warning/errors.
diff --git a/sd/source/core/sdpage2.cxx b/sd/source/core/sdpage2.cxx
index 9f621fd..2aceba9 100644
--- a/sd/source/core/sdpage2.cxx
+++ b/sd/source/core/sdpage2.cxx
@@ -592,15 +592,15 @@ void SdPage::setTransitionDuration ( double fTranstionDuration )
OString SdPage::stringify() const
{
OStringBuffer aString(100);
- aString.append(mePageKind).append(meAutoLayout).append(mbSelected).append(mePresChange).append(mbSoundOn).append(mbExcluded).
+ aString.append((sal_Int32)mePageKind).append((sal_Int32)meAutoLayout).append(mbSelected).append((sal_Int32)mePresChange).append(mbSoundOn).append(mbExcluded).
append(OUStringToOString( maLayoutName, RTL_TEXTENCODING_UTF8 )).
append(OUStringToOString(maSoundFile, RTL_TEXTENCODING_UTF8 )).
append(mbLoopSound).append(mbStopSound).
/*append(OUStringToOString(maCreatedPageName, RTL_TEXTENCODING_UTF8)).
append(OUStringToOString(maFileName, RTL_TEXTENCODING_UTF8)).*/
append(OUStringToOString(maBookmarkName, RTL_TEXTENCODING_UTF8)).
- append(mbScaleObjects).append(mbBackgroundFullSize).append(meCharSet).append(mnPaperBin).
- append(meOrientation).append(mnTransitionType).append(mnTransitionSubtype).append(mbTransitionDirection).
+ append(mbScaleObjects).append(mbBackgroundFullSize).append((sal_Int32)meCharSet).append(mnPaperBin).
+ append((sal_Int32)meOrientation).append(mnTransitionType).append(mnTransitionSubtype).append(mbTransitionDirection).
append(mnTransitionFadeColor).append(mfTransitionDuration);//.append(mbIsPrecious);
sal_Int32 n = GetObjCount();
commit 2da05adcdc7481df78ab5d11b5e498843bff22a5
Author: Muthu Subramanian <sumuthu at collabora.com>
Date: Thu Dec 12 12:53:55 2013 +0530
Add append(bool) to OStringBuffer.
diff --git a/sal/inc/rtl/strbuf.hxx b/sal/inc/rtl/strbuf.hxx
index ed627ce..d8112ea 100644
--- a/sal/inc/rtl/strbuf.hxx
+++ b/sal/inc/rtl/strbuf.hxx
@@ -510,6 +510,23 @@ public:
}
/**
+ Appends the string representation of the <code>bool</code>
+ argument to the string buffer.
+
+ The argument is converted to a string as if by the method
+ <code>String.valueOf</code>, and the characters of that
+ string are then appended to this string buffer.
+
+ @param b a <code>bool</code>.
+ @return this string buffer.
+ */
+ OStringBuffer & append(bool b)
+ {
+ sal_Char sz[RTL_STR_MAX_VALUEOFBOOLEAN];
+ return append( sz, rtl_str_valueOfBoolean( sz, b ) );
+ }
+
+ /**
Appends the string representation of the <code>char</code>
argument to this string buffer.
commit f866e29bf5623e8910ad3070a9c40af985aeb351
Author: Muthu Subramanian <sumuthu at collabora.com>
Date: Thu Dec 12 12:50:13 2013 +0530
n#753460: Copying slides having same master page name.
diff --git a/sd/inc/sdpage.hxx b/sd/inc/sdpage.hxx
index f62b2ae..0c99930 100644
--- a/sd/inc/sdpage.hxx
+++ b/sd/inc/sdpage.hxx
@@ -382,6 +382,9 @@ public:
void removeAnnotation( const ::com::sun::star::uno::Reference< ::com::sun::star::office::XAnnotation >& xAnnotation );
const sd::AnnotationVector& getAnnotations() const { return maAnnotations; }
bool hasAnnotations() const { return !maAnnotations.empty(); }
+ sal_uInt64 getHash() const;
+ virtual OString stringify() const;
+
private:
bool mbIsPrecious;
diff --git a/sd/source/core/drawdoc3.cxx b/sd/source/core/drawdoc3.cxx
index e2d7039..7f493d8 100644
--- a/sd/source/core/drawdoc3.cxx
+++ b/sd/source/core/drawdoc3.cxx
@@ -72,12 +72,12 @@ class InsertBookmarkAsPage_FindDuplicateLayouts
public:
InsertBookmarkAsPage_FindDuplicateLayouts( std::vector<rtl::OUString> &rLayoutsToTransfer )
: mrLayoutsToTransfer(rLayoutsToTransfer) {}
- void operator()( SdDrawDocument&, SdPage* );
+ void operator()( SdDrawDocument&, SdPage*, bool, SdDrawDocument* );
private:
std::vector<rtl::OUString> &mrLayoutsToTransfer;
};
-void InsertBookmarkAsPage_FindDuplicateLayouts::operator()( SdDrawDocument& rDoc, SdPage* pBMMPage )
+void InsertBookmarkAsPage_FindDuplicateLayouts::operator()( SdDrawDocument& rDoc, SdPage* pBMMPage, bool bRenameDuplicates, SdDrawDocument* pBookmarkDoc )
{
// now check for duplicate masterpage and layout names
// ===================================================
@@ -105,7 +105,17 @@ void InsertBookmarkAsPage_FindDuplicateLayouts::operator()( SdDrawDocument& rDoc
rtl::OUString aTest(aFullTest);
if (aTest == aLayout)
- bFound = true;
+ {
+ if( bRenameDuplicates && pTestPage->getHash() != pBMMPage->getHash() )
+ {
+ pBookmarkDoc->RenameLayoutTemplate( pBMMPage->GetLayoutName(), OUString(pBMMPage->GetName())+=OUString("_") );
+ aLayout = pBMMPage->GetName();
+
+ break;
+ }
+ else
+ bFound = true;
+ }
}
if (!bFound)
@@ -120,7 +130,7 @@ void InsertBookmarkAsPage_FindDuplicateLayouts::operator()( SdDrawDocument& rDoc
static void lcl_IterateBookmarkPages( SdDrawDocument &rDoc, SdDrawDocument* pBookmarkDoc,
const std::vector<rtl::OUString> &rBookmarkList, sal_uInt16 nBMSdPageCount,
- InsertBookmarkAsPage_FindDuplicateLayouts& rPageIterator )
+ InsertBookmarkAsPage_FindDuplicateLayouts& rPageIterator, bool bRenameDuplicates = false )
{
//
// Refactored copy'n'pasted layout name collection from InsertBookmarkAsPage
@@ -180,7 +190,7 @@ static void lcl_IterateBookmarkPages( SdDrawDocument &rDoc, SdDrawDocument* pBoo
if( pBMMPage )
{
// yes, call functor
- rPageIterator( rDoc, pBMMPage );
+ rPageIterator( rDoc, pBMMPage, bRenameDuplicates, pBookmarkDoc );
}
}
}
@@ -498,7 +508,7 @@ sal_Bool SdDrawDocument::InsertBookmarkAsPage(
//
std::vector<rtl::OUString> aLayoutsToTransfer;
InsertBookmarkAsPage_FindDuplicateLayouts aSearchFunctor( aLayoutsToTransfer );
- lcl_IterateBookmarkPages( *this, pBookmarkDoc, rBookmarkList, nBMSdPageCount, aSearchFunctor );
+ lcl_IterateBookmarkPages( *this, pBookmarkDoc, rBookmarkList, nBMSdPageCount, aSearchFunctor, ( rBookmarkList.empty() && pBookmarkDoc != this ) );
/**************************************************************************
diff --git a/sd/source/core/sdpage2.cxx b/sd/source/core/sdpage2.cxx
index 13fda31..9f621fd 100644
--- a/sd/source/core/sdpage2.cxx
+++ b/sd/source/core/sdpage2.cxx
@@ -45,6 +45,7 @@
#include <tools/tenccvt.hxx>
#include <svl/itemset.hxx>
+#include <rtl/strbuf.hxx>
using namespace ::sd;
using namespace ::com::sun::star;
@@ -53,6 +54,16 @@ using namespace ::com::sun::star::office;
extern void NotifyDocumentEvent( SdDrawDocument* pDocument, const rtl::OUString& rEventName, const Reference< XInterface >& xSource );
+static sal_uInt64 lcl_getHash( OString aString )
+{
+ sal_Int32 len = aString.getLength();
+ sal_uInt64 nHash = 0;
+
+ for( sal_Int32 i = 0; i < len; i++ )
+ nHash = (nHash << 5) - nHash + aString[i];
+ return nHash;
+}
+
/*************************************************************************
|*
|* SetPresentationLayout, setzt: Layoutnamen, Masterpage-Verkn�pfung und
@@ -578,6 +589,32 @@ void SdPage::setTransitionDuration ( double fTranstionDuration )
ActionChanged();
}
+OString SdPage::stringify() const
+{
+ OStringBuffer aString(100);
+ aString.append(mePageKind).append(meAutoLayout).append(mbSelected).append(mePresChange).append(mbSoundOn).append(mbExcluded).
+ append(OUStringToOString( maLayoutName, RTL_TEXTENCODING_UTF8 )).
+ append(OUStringToOString(maSoundFile, RTL_TEXTENCODING_UTF8 )).
+ append(mbLoopSound).append(mbStopSound).
+ /*append(OUStringToOString(maCreatedPageName, RTL_TEXTENCODING_UTF8)).
+ append(OUStringToOString(maFileName, RTL_TEXTENCODING_UTF8)).*/
+ append(OUStringToOString(maBookmarkName, RTL_TEXTENCODING_UTF8)).
+ append(mbScaleObjects).append(mbBackgroundFullSize).append(meCharSet).append(mnPaperBin).
+ append(meOrientation).append(mnTransitionType).append(mnTransitionSubtype).append(mbTransitionDirection).
+ append(mnTransitionFadeColor).append(mfTransitionDuration);//.append(mbIsPrecious);
+
+ sal_Int32 n = GetObjCount();
+ for(sal_Int32 i = 0; i < n; i++)
+ aString.append(GetObj(i)->stringify());
+ return aString.makeStringAndClear();
+}
+
+sal_uInt64 SdPage::getHash() const
+{
+ return lcl_getHash( stringify() );
+}
+
+
namespace sd {
extern void createAnnotation( Reference< XAnnotation >& xAnnotation, SdPage* pPage );
extern SdrUndoAction* CreateUndoInsertOrRemoveAnnotation( const Reference< XAnnotation >& xAnnotation, bool bInsert );
diff --git a/svl/inc/svl/itemset.hxx b/svl/inc/svl/itemset.hxx
index a38398a..47ed7ef 100644
--- a/svl/inc/svl/itemset.hxx
+++ b/svl/inc/svl/itemset.hxx
@@ -119,6 +119,7 @@ public:
virtual sal_uInt16 ClearItem( sal_uInt16 nWhich = 0);
virtual void ClearInvalidItems( sal_Bool bHardDefault = sal_False );
void InvalidateAllItems(); // HACK(via nWhich = 0) ???
+ void InvalidateDefaultItems();
inline void SetParent( const SfxItemSet* pNew );
diff --git a/svl/source/items/itemset.cxx b/svl/source/items/itemset.cxx
index 27f2a8d..c531048 100644
--- a/svl/source/items/itemset.cxx
+++ b/svl/source/items/itemset.cxx
@@ -1790,7 +1790,23 @@ SfxAllItemSet::SfxAllItemSet(const SfxItemSet &rCopy)
// -----------------------------------------------------------------------
+void SfxItemSet::InvalidateDefaultItems()
+{
+ DBG_CHKTHIS(SfxItemSet, DbgCheckItemSet);
+ sal_uInt16* pPtr = _pWhichRanges;
+ SfxItemArray ppFnd = _aItems;
+ while( *pPtr )
+ {
+ for ( sal_uInt16 nWhich = *pPtr; nWhich <= *(pPtr+1); ++nWhich, ++ppFnd )
+ if ( *ppFnd && *ppFnd != (SfxPoolItem *)-1 && **ppFnd == _pPool->GetDefaultItem( nWhich ) )
+ {
+ _pPool->Remove( **ppFnd );
+ *ppFnd = (SfxPoolItem*)-1;
+ }
+ pPtr += 2;
+ }
+}
SfxAllItemSet::SfxAllItemSet(const SfxAllItemSet &rCopy)
: SfxItemSet(rCopy),
diff --git a/svx/inc/svx/svdobj.hxx b/svx/inc/svx/svdobj.hxx
index cf6d266..35a023f 100644
--- a/svx/inc/svx/svdobj.hxx
+++ b/svx/inc/svx/svdobj.hxx
@@ -1056,6 +1056,8 @@ public:
/// @see mbDoNotInsertIntoPageAutomatically
bool IsDoNotInsertIntoPageAutomatically() const;
+ virtual OString stringify() const;
+
protected:
/** Sets a new UNO shape
*
diff --git a/svx/source/svdraw/svdobj.cxx b/svx/source/svdraw/svdobj.cxx
index 1c0c879..6f30096 100644
--- a/svx/source/svdraw/svdobj.cxx
+++ b/svx/source/svdraw/svdobj.cxx
@@ -109,6 +109,7 @@
#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include <svx/sdrobjectfilter.hxx>
#include "svdconv.hxx"
+#include <rtl/strbuf.hxx>
using namespace ::com::sun::star;
@@ -1766,6 +1767,45 @@ bool SdrObject::HasTextEdit() const
return false;
}
+OString SdrObject::stringify() const
+{
+ OStringBuffer aString(100);
+ aString.append(aAnchor.X()).
+ append(aAnchor.Y()).
+ append(aGridOffset.X()).
+ append(aGridOffset.Y()).
+ append((sal_Int32)nOrdNum).
+ append((sal_Int32)mnNavigationPosition).
+ append(mbSupportTextIndentingOnLineWidthChange).
+ append(mbLineIsOutsideGeometry).
+ append(bMarkProt).
+ append(bIs3DObj).
+ append(bIsEdge).
+ append(bClosedObj).
+ append(bNotVisibleAsMaster).
+ append(bEmptyPresObj).
+ append(mbVisible).
+ append(bNoPrint).
+ append(bSizProt).
+ append(bMovProt).
+ append(bGrouped).
+ append(bInserted).
+ append(bNetLock).
+ append(bVirtObj).
+ //append(maBLIPSizeRectangle).
+ append(mnLayerID);
+
+ SvMemoryStream aStream;
+ OString aLine;
+ SfxItemSet aSet(GetMergedItemSet());
+ aSet.InvalidateDefaultItems();
+ aSet.Store(aStream, true);
+ aStream.Flush();
+ aString.append((const char *)aStream.GetData(), aStream.GetEndOfData());
+
+ return aString.makeStringAndClear();
+}
+
sal_Bool SdrObject::BegTextEdit(SdrOutliner& /*rOutl*/)
{
return false;
commit cd725d9c3772cf4a9fdf557971e84a4acaaee3ab
Author: Muthu Subramanian <sumuthu at collabora.com>
Date: Tue Dec 10 17:07:23 2013 +0530
n#828390: Import new line in text.
diff --git a/oox/inc/oox/core/contexthandler2.hxx b/oox/inc/oox/core/contexthandler2.hxx
index 12ff23b..f6b9d5d 100644
--- a/oox/inc/oox/core/contexthandler2.hxx
+++ b/oox/inc/oox/core/contexthandler2.hxx
@@ -206,6 +206,8 @@ private:
ContextStackRef mxContextStack; /// Stack of all processed elements.
size_t mnRootStackSize; /// Stack size on construction time.
+
+protected:
bool mbEnableTrimSpace; /// True = trim whitespace in characters().
};
diff --git a/oox/source/drawingml/textbodycontext.cxx b/oox/source/drawingml/textbodycontext.cxx
index 7bc29a0..a8b3d64 100644
--- a/oox/source/drawingml/textbodycontext.cxx
+++ b/oox/source/drawingml/textbodycontext.cxx
@@ -54,6 +54,7 @@ TextParagraphContext::TextParagraphContext( ContextHandler& rParent, TextParagra
: ContextHandler( rParent )
, mrParagraph( rPara )
{
+ mbEnableTrimSpace = false;
}
// --------------------------------------------------------------------
More information about the Libreoffice-commits
mailing list