editeng/inc/editeng/editobj.hxx | 5 +-- editeng/source/editeng/editobj.cxx | 36 +++------------------- editeng/source/editeng/editobj2.hxx | 3 - svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx | 12 +++---- svx/source/svdraw/svdotext.cxx | 8 ++-- 5 files changed, 20 insertions(+), 44 deletions(-)
New commits: commit 7ec3861d69a8c18488706564b27dbc344e3b5cd1 Author: Kohei Yoshida <kohei.yosh...@gmail.com> Date: Tue Jan 8 10:14:52 2013 -0500 Remove one variant of HasField() which takes arcane TypeId. Change-Id: Ic8236b291ed5f318f67378bbc57b7cf027cbb92a diff --git a/editeng/inc/editeng/editobj.hxx b/editeng/inc/editeng/editobj.hxx index 8e97b63..12c089c 100644 --- a/editeng/inc/editeng/editobj.hxx +++ b/editeng/inc/editeng/editobj.hxx @@ -28,6 +28,8 @@ #include <editeng/editdata.hxx> #include "editeng/editengdllapi.h" +#include <com/sun/star/text/textfield/Type.hpp> + #include <vector> DBG_NAMEEX( EE_EditTextObject ) @@ -101,8 +103,7 @@ public: virtual sal_Bool IsFieldObject() const; virtual const SvxFieldItem* GetField() const; - virtual sal_Bool HasField( TypeId aType = NULL ) const; - virtual bool HasField( sal_Int32 nType ) const = 0; + virtual bool HasField( sal_Int32 nType = com::sun::star::text::textfield::Type::UNSPECIFIED ) const = 0; virtual SfxItemSet GetParaAttribs(size_t nPara) const; virtual void SetParaAttribs(size_t nPara, const SfxItemSet& rAttribs); diff --git a/editeng/source/editeng/editobj.cxx b/editeng/source/editeng/editobj.cxx index 56effb9..cd1bc10 100644 --- a/editeng/source/editeng/editobj.cxx +++ b/editeng/source/editeng/editobj.cxx @@ -44,6 +44,8 @@ #include <unotools/fontcvt.hxx> #include <tools/tenccvt.hxx> +using namespace com::sun::star; + DBG_NAME( EE_EditTextObject ) DBG_NAME( XEditAttribute ) @@ -267,12 +269,6 @@ const SvxFieldItem* EditTextObject::GetField() const return 0; } -sal_Bool EditTextObject::HasField( TypeId /*aType*/ ) const -{ - OSL_FAIL( "Virtual method direct from EditTextObject!" ); - return false; -} - SfxItemSet EditTextObject::GetParaAttribs(size_t /*nPara*/) const { OSL_FAIL( "Virtual method direct from EditTextObject!" ); @@ -854,30 +850,6 @@ const SvxFieldItem* BinTextObject::GetField() const return 0; } -sal_Bool BinTextObject::HasField( TypeId aType ) const -{ - size_t nParagraphs = aContents.size(); - for (size_t nPara = 0; nPara < nParagraphs; ++nPara) - { - const ContentInfo& rC = aContents[nPara]; - size_t nAttrs = rC.aAttribs.size(); - for (size_t nAttr = 0; nAttr < nAttrs; ++nAttr) - { - const XEditAttribute& rAttr = rC.aAttribs[nAttr]; - if (rAttr.GetItem()->Which() == EE_FEATURE_FIELD) - { - if ( !aType ) - return true; - - const SvxFieldData* pFldData = static_cast<const SvxFieldItem*>(rAttr.GetItem())->GetField(); - if ( pFldData && pFldData->IsA( aType ) ) - return true; - } - } - } - return false; -} - bool BinTextObject::HasField( sal_Int32 nType ) const { size_t nParagraphs = aContents.size(); @@ -891,6 +863,10 @@ bool BinTextObject::HasField( sal_Int32 nType ) const if (rAttr.GetItem()->Which() != EE_FEATURE_FIELD) continue; + if (nType == text::textfield::Type::UNSPECIFIED) + // Match any field type. + return true; + const SvxFieldData* pFldData = static_cast<const SvxFieldItem*>(rAttr.GetItem())->GetField(); if (pFldData && pFldData->GetClassId() == nType) return true; diff --git a/editeng/source/editeng/editobj2.hxx b/editeng/source/editeng/editobj2.hxx index 52821c0..ef35579 100644 --- a/editeng/source/editeng/editobj2.hxx +++ b/editeng/source/editeng/editobj2.hxx @@ -232,8 +232,7 @@ public: virtual sal_Bool IsFieldObject() const; virtual const SvxFieldItem* GetField() const; - virtual sal_Bool HasField( TypeId Type = NULL ) const; - virtual bool HasField( sal_Int32 nType ) const; + virtual bool HasField( sal_Int32 nType = com::sun::star::text::textfield::Type::UNSPECIFIED ) const; virtual SfxItemSet GetParaAttribs(size_t nPara) const; virtual void SetParaAttribs(size_t nPara, const SfxItemSet& rAttribs); diff --git a/svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx b/svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx index b5aaeac..cc003de 100644 --- a/svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx +++ b/svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx @@ -117,12 +117,12 @@ namespace drawinglayer { const EditTextObject& rETO = maOutlinerParaObject.GetTextObject(); - mbContainsPageField = rETO.HasField(SvxPageField::StaticType()); - mbContainsPageCountField = rETO.HasField(SvxPagesField::StaticType()); - mbContainsOtherFields = rETO.HasField(SvxHeaderField::StaticType()) - || rETO.HasField(SvxFooterField::StaticType()) - || rETO.HasField(SvxDateTimeField::StaticType()) - || rETO.HasField(SvxAuthorField::StaticType()); + mbContainsPageField = rETO.HasField(SvxPageField::StaticClassId()); + mbContainsPageCountField = rETO.HasField(SvxPagesField::StaticClassId()); + mbContainsOtherFields = rETO.HasField(SvxHeaderField::StaticClassId()) + || rETO.HasField(SvxFooterField::StaticClassId()) + || rETO.HasField(SvxDateTimeField::StaticClassId()) + || rETO.HasField(SvxAuthorField::StaticClassId()); } bool SdrTextPrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const diff --git a/svx/source/svdraw/svdotext.cxx b/svx/source/svdraw/svdotext.cxx index 7a662aa..72ab07f 100644 --- a/svx/source/svdraw/svdotext.cxx +++ b/svx/source/svdraw/svdotext.cxx @@ -1167,16 +1167,16 @@ void SdrTextObj::ImpCheckMasterCachable() if(!bNotVisibleAsMaster && pOutlinerParaObject && pOutlinerParaObject->IsEditDoc() ) { const EditTextObject& rText= pOutlinerParaObject->GetTextObject(); - bNotMasterCachable=rText.HasField(SvxPageField::StaticType()); + bNotMasterCachable=rText.HasField(SvxPageField::StaticClassId()); if( !bNotMasterCachable ) { - bNotMasterCachable=rText.HasField(SvxHeaderField::StaticType()); + bNotMasterCachable=rText.HasField(SvxHeaderField::StaticClassId()); if( !bNotMasterCachable ) { - bNotMasterCachable=rText.HasField(SvxFooterField::StaticType()); + bNotMasterCachable=rText.HasField(SvxFooterField::StaticClassId()); if( !bNotMasterCachable ) { - bNotMasterCachable=rText.HasField(SvxDateTimeField::StaticType()); + bNotMasterCachable=rText.HasField(SvxDateTimeField::StaticClassId()); } } } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits