20 #include <rtl/ustrbuf.hxx>
22 #include <osl/diagnose.h>
29 #include <unoprnms.hxx>
46 #include <com/sun/star/beans/XPropertySet.hpp>
47 #include <com/sun/star/frame/XModel.hpp>
48 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
63 class SwXMLConditionParser_Impl
68 sal_uInt32 nSubCondition;
75 inline bool MatchName( OUString& rName );
76 inline bool MatchNumber( sal_uInt32& rNumber );
80 explicit SwXMLConditionParser_Impl(
const OUString& rInp );
85 sal_uInt32 GetSubCondition()
const {
return nSubCondition; }
90 inline bool SwXMLConditionParser_Impl::SkipWS()
92 while( nPos < nLength &&
' ' == sInput[nPos] )
97 inline bool SwXMLConditionParser_Impl::MatchChar(
sal_Unicode c )
100 if( nPos < nLength && c == sInput[nPos] )
108 inline bool SwXMLConditionParser_Impl::MatchName( OUString& rName )
110 OUStringBuffer sBuffer( nLength );
111 while( nPos < nLength &&
112 ( (
'a' <= sInput[nPos] && sInput[nPos] <=
'z') ||
113 '-' == sInput[nPos] ) )
115 sBuffer.append( sInput[nPos] );
118 rName = sBuffer.makeStringAndClear();
119 return !rName.isEmpty();
122 inline bool SwXMLConditionParser_Impl::MatchNumber( sal_uInt32& rNumber )
124 OUStringBuffer sBuffer( nLength );
125 while( nPos < nLength &&
'0' <= sInput[nPos] && sInput[nPos] <=
'9' )
127 sBuffer.append( sInput[nPos] );
131 OUString sNum( sBuffer.makeStringAndClear() );
132 if( !sNum.isEmpty() )
133 rNumber = sNum.toInt32();
134 return !sNum.isEmpty();
137 SwXMLConditionParser_Impl::SwXMLConditionParser_Impl(
const OUString& rInp ) :
145 bool bHasSub =
false;
147 bool bOK = SkipWS() && MatchName( sFunc ) && SkipWS() &&
148 MatchChar(
'(' ) && SkipWS() && MatchChar(
')' ) && SkipWS();
149 if( bOK && MatchChar(
'=' ) )
151 bOK = SkipWS() && MatchNumber( nSub ) && SkipWS();
160 if(
IsXMLToken( sFunc, XML_ENDNOTE ) && !bHasSub )
162 else if(
IsXMLToken( sFunc, XML_FOOTER ) && !bHasSub )
164 else if(
IsXMLToken( sFunc, XML_FOOTNOTE ) && !bHasSub )
166 else if(
IsXMLToken( sFunc, XML_HEADER ) && !bHasSub )
168 else if(
IsXMLToken( sFunc, XML_LIST_LEVEL) &&
172 nSubCondition = nSub-1;
174 else if(
IsXMLToken( sFunc, XML_OUTLINE_LEVEL) &&
178 nSubCondition = nSub-1;
180 else if(
IsXMLToken( sFunc, XML_SECTION ) && !bHasSub )
184 else if(
IsXMLToken( sFunc, XML_TABLE ) && !bHasSub )
188 else if(
IsXMLToken( sFunc, XML_TABLE_HEADER ) && !bHasSub )
192 else if(
IsXMLToken( sFunc, XML_TEXT_BOX ) && !bHasSub )
203 sal_uInt32 nSubCondition;
205 OUString sApplyStyle;
209 SwXMLConditionContext_Impl(
211 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList );
216 sal_uInt32 getSubCondition()
const {
return nSubCondition; }
217 OUString
const &getApplyStyle()
const {
return sApplyStyle; }
222 SwXMLConditionContext_Impl::SwXMLConditionContext_Impl(
224 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList ) :
231 OUString sValue = aIter.toString();
232 switch (aIter.getToken())
236 SwXMLConditionParser_Impl aCondParser( sValue );
237 if( aCondParser.IsValid() )
239 nCondition = aCondParser.GetCondition();
240 nSubCondition = aCondParser.GetSubCondition();
245 sApplyStyle = sValue;
259 std::unique_ptr<SwXMLConditions_Impl> pConditions;
263 virtual uno::Reference < style::XStyle >
Create()
override;
264 virtual void Finish(
bool bOverwrite )
override;
274 sal_Int32 nElement,
const css::uno::Reference< css::xml::sax::XFastAttributeList >& AttrList )
override;
281 uno::Reference < style::XStyle > xNewStyle;
282 if( pConditions && XmlStyleFamily::TEXT_PARAGRAPH == GetFamily() )
284 uno::Reference< lang::XMultiServiceFactory >
xFactory( GetImport().GetModel(),
288 uno::Reference < uno::XInterface > xIfc =
289 xFactory->createInstance(
"com.sun.star.style.ConditionalParagraphStyle" );
291 xNewStyle.set( xIfc, uno::UNO_QUERY );
303 SwXMLTextStyleContext_Impl::Finish(
bool bOverwrite )
305 if( pConditions && XmlStyleFamily::TEXT_PARAGRAPH == GetFamily() && GetStyle().is() )
311 uno::Sequence< beans::NamedValue >
aSeq( pConditions->size() );
314 i < pConditions->size(); ++
i)
316 assert((*pConditions)[i]->IsValid());
318 sal_uInt32 nSubCond = (*pConditions)[
i]->getSubCondition();
322 if (pCommands[j].nCnd == nCond &&
323 pCommands[j].nSubCond == nSubCond)
326 aSeq[
i].Value <<= GetImport().GetStyleDisplayName(
327 GetFamily(), (*pConditions)[i]->getApplyStyle() );
337 catch (uno::Exception
const&)
345 SwXMLTextStyleContext_Impl::SwXMLTextStyleContext_Impl(
SwXMLImport& rImport,
352 css::uno::Reference< css::xml::sax::XFastContextHandler > SwXMLTextStyleContext_Impl::createFastChildContext(
354 const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList )
359 new SwXMLConditionContext_Impl( GetImport(), nElement, xAttrList )};
360 if( xCond->IsValid() )
363 pConditions = std::make_unique<SwXMLConditions_Impl>();
364 pConditions->push_back( xCond );
376 OUString m_sDataStyleName;
377 void AddDataFormat();
380 virtual void FillPropertySet(
const css::uno::Reference<css::beans::XPropertySet>& rPropSet)
override;
381 virtual void SetAttribute(sal_Int32 nElement,
const OUString& rValue)
override;
386 OUString sMasterPageName;
387 std::unique_ptr<SfxItemSet> pItemSet;
388 SwXMLTextStyleContext_Impl *pTextStyle;
391 OUString sDataStyleName;
393 bool bHasMasterPageName : 1;
394 bool bPageDescConnected : 1;
395 bool bDataStyleIsResolved;
399 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList);
404 const OUString& rValue )
override;
411 SwXMLItemSetStyleContext_Impl(
419 sal_Int32 nElement,
const css::uno::Reference< css::xml::sax::XFastAttributeList >& AttrList )
override;
424 bool HasMasterPageName()
const {
return bHasMasterPageName; }
426 bool IsPageDescConnected()
const {
return bPageDescConnected; }
427 void ConnectPageDesc();
429 bool ResolveDataStyleName();
434 void SwXMLCellStyleContext::AddDataFormat()
436 if (m_sDataStyleName.isEmpty() || IsDefaultStyle())
440 GetStyles()->FindStyleChildContext(XmlStyleFamily::DATA_STYLE, m_sDataStyleName,
true));
444 SAL_WARN(
"sw.xml",
"not possible to get data style " << m_sDataStyleName);
449 if (nNumberFormat < 0)
453 if (!xPropertyMapper.is())
455 SAL_WARN(
"sw.xml",
"there is no import prop mapper");
460 sal_Int32
nIndex = xPropertySetMapper->GetEntryIndex(XML_NAMESPACE_STYLE,
GetXMLToken(XML_DATA_STYLE_NAME), 0);
467 auto aIter = std::find_if(GetProperties().
begin(), GetProperties().
end(),
469 return rProp.
mnIndex == nIndex;
472 if (aIter != GetProperties().
end())
473 aIter->maValue <<= nNumberFormat;
478 void SwXMLCellStyleContext::FillPropertySet(
const css::uno::Reference<css::beans::XPropertySet>& rPropSet)
484 void SwXMLCellStyleContext::SetAttribute(sal_Int32 nElement,
const OUString& rValue)
486 if ((nElement & TOKEN_MASK) == XML_DATA_STYLE_NAME)
487 m_sDataStyleName = rValue;
492 void SwXMLItemSetStyleContext_Impl::SetAttribute( sal_Int32 nElement,
493 const OUString& rValue )
499 sMasterPageName = rValue;
500 bHasMasterPageName =
true;
506 if (!rValue.isEmpty())
508 sDataStyleName = rValue;
509 bDataStyleIsResolved =
false;
520 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
522 OSL_ENSURE( !pItemSet,
523 "SwXMLItemSetStyleContext_Impl::CreateItemSetContext: item set exists" );
530 switch( GetFamily() )
532 case XmlStyleFamily::TABLE_TABLE:
535 case XmlStyleFamily::TABLE_COLUMN:
538 case XmlStyleFamily::TABLE_ROW:
541 case XmlStyleFamily::TABLE_CELL:
546 "SwXMLItemSetStyleContext_Impl::CreateItemSetContext: unknown family" );
550 pContext = GetSwImport().CreateTableItemImportContext(
551 nElement, xAttrList, GetFamily(),
562 SwXMLItemSetStyleContext_Impl::SwXMLItemSetStyleContext_Impl(
SwXMLImport& rImport,
566 pTextStyle( nullptr ),
568 bHasMasterPageName( false ),
569 bPageDescConnected( false ),
570 bDataStyleIsResolved( true )
574 void SwXMLItemSetStyleContext_Impl::CreateAndInsert(
bool bOverwrite )
580 css::uno::Reference< css::xml::sax::XFastContextHandler > SwXMLItemSetStyleContext_Impl::createFastChildContext(
582 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
590 return CreateItemSetContext( nElement, xAttrList );
597 pTextStyle =
new SwXMLTextStyleContext_Impl( GetSwImport(), XmlStyleFamily::TEXT_PARAGRAPH, rStyles );
599 xTmpAttrList->add(
XML_ELEMENT(STYLE, XML_NAME), GetName().toUtf8() );
600 pTextStyle->startFastElement( nElement, xTmpAttrList.get() );
601 rStyles.AddStyle( *pTextStyle );
603 return pTextStyle->createFastChildContext( nElement, xAttrList );
612 void SwXMLItemSetStyleContext_Impl::ConnectPageDesc()
614 if( bPageDescConnected || !HasMasterPageName() )
616 bPageDescConnected =
true;
622 OUString
sName = GetImport().GetStyleDisplayName( XmlStyleFamily::MASTER_PAGE,
647 std::unique_ptr<SwFormatPageDesc> pFormatPageDesc;
648 if( SfxItemState::SET == pItemSet->GetItemState(
RES_PAGEDESC,
false,
651 if( static_cast<const SwFormatPageDesc *>(pItem)->GetPageDesc() != pPageDesc )
652 pFormatPageDesc.reset(
new SwFormatPageDesc( *static_cast<const SwFormatPageDesc *>(pItem) ));
657 if( pFormatPageDesc )
659 pFormatPageDesc->RegisterToPageDesc( *pPageDesc );
660 pItemSet->Put( *pFormatPageDesc );
664 bool SwXMLItemSetStyleContext_Impl::ResolveDataStyleName()
667 if (! bDataStyleIsResolved)
671 GetImport().GetTextImport()->GetDataStyleKey(sDataStyleName);
684 pItemSet->Put(aNumFormatItem);
688 bDataStyleIsResolved =
true;
710 const css::uno::Reference< css::xml::sax::XFastAttributeList > & xAttrList )
override;
715 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
override;
719 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
override;
724 virtual uno::Reference < container::XNameContainer >
731 SwXMLStylesContext_Impl(
737 virtual void SAL_CALL
endFastElement(sal_Int32 nElement)
override;
744 const css::uno::Reference< css::xml::sax::XFastAttributeList > & xAttrList )
748 if(nElement ==
XML_ELEMENT(TABLE, XML_TABLE_TEMPLATE))
751 pContext = xTableImport->CreateTableTemplateContext(nElement, xAttrList);
761 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
767 case XmlStyleFamily::TEXT_PARAGRAPH:
768 pStyle =
new SwXMLTextStyleContext_Impl( GetSwImport(), nFamily, *
this );
770 case XmlStyleFamily::TABLE_TABLE:
771 case XmlStyleFamily::TABLE_COLUMN:
772 case XmlStyleFamily::TABLE_ROW:
773 case XmlStyleFamily::TABLE_CELL:
775 if (IsAutomaticStyle())
776 pStyle =
new SwXMLItemSetStyleContext_Impl(GetSwImport(), *
this, nFamily);
777 else if (nFamily == XmlStyleFamily::TABLE_CELL)
778 pStyle =
new SwXMLCellStyleContext(GetSwImport(), *
this, nFamily);
780 SAL_WARN(
"sw.xml",
"Context does not exists for non automatic table, column or row style.");
782 case XmlStyleFamily::SD_GRAPHICS_ID:
787 case XmlStyleFamily::SD_DRAWINGPAGE_ID:
789 *
this, g_MasterPageContextIDs, g_MasterPageFamilies);
803 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
809 case XmlStyleFamily::TEXT_PARAGRAPH:
810 case XmlStyleFamily::TABLE_TABLE:
811 case XmlStyleFamily::TABLE_ROW:
816 case XmlStyleFamily::SD_GRAPHICS_ID:
830 SwXMLStylesContext_Impl::SwXMLStylesContext_Impl(
837 bool SwXMLStylesContext_Impl::InsertStyleFamily(
XmlStyleFamily nFamily )
const
845 case XmlStyleFamily::TEXT_PARAGRAPH:
846 bIns = bool(nStyleFamilyMask & SfxStyleFamily::Para);
848 case XmlStyleFamily::TEXT_TEXT:
849 bIns = bool(nStyleFamilyMask & SfxStyleFamily::Char);
851 case XmlStyleFamily::SD_GRAPHICS_ID:
852 bIns = bool(nStyleFamilyMask & SfxStyleFamily::Frame);
854 case XmlStyleFamily::TEXT_LIST:
855 bIns = bool(nStyleFamilyMask & SfxStyleFamily::Pseudo);
857 case XmlStyleFamily::TEXT_OUTLINE:
858 case XmlStyleFamily::TEXT_FOOTNOTECONFIG:
859 case XmlStyleFamily::TEXT_ENDNOTECONFIG:
860 case XmlStyleFamily::TEXT_LINENUMBERINGCONFIG:
861 case XmlStyleFamily::TEXT_BIBLIOGRAPHYCONFIG:
877 if( nFamily == XmlStyleFamily::TABLE_TABLE )
879 const_cast<SwXMLStylesContext_Impl*>(
this )->GetImport() );
880 else if( nFamily == XmlStyleFamily::TABLE_ROW )
882 const_cast<SwXMLStylesContext_Impl*>(
this )->GetImport() );
883 else if( nFamily == XmlStyleFamily::TABLE_CELL )
885 const_cast<SwXMLStylesContext_Impl*>(
this )->GetImport() );
886 else if (nFamily == XmlStyleFamily::SD_DRAWINGPAGE_ID)
889 const_cast<SwXMLStylesContext_Impl*>(
this)->GetImport());
896 uno::Reference < container::XNameContainer > SwXMLStylesContext_Impl::GetStylesContainer(
899 uno::Reference < container::XNameContainer > xStyles;
900 if( XmlStyleFamily::SD_GRAPHICS_ID == nFamily )
901 xStyles =
const_cast<SvXMLImport *
>(&GetImport())->GetTextImport()->GetFrameStyles();
902 else if( XmlStyleFamily::TABLE_CELL == nFamily )
903 xStyles =
const_cast<SvXMLImport *
>(&GetImport())->GetTextImport()->GetCellStyles();
911 OUString SwXMLStylesContext_Impl::GetServiceName(
XmlStyleFamily nFamily )
const
913 if( XmlStyleFamily::SD_GRAPHICS_ID == nFamily )
914 return "com.sun.star.style.FrameStyle";
915 else if( XmlStyleFamily::TABLE_CELL == nFamily )
916 return "com.sun.star.style.CellStyle";
921 void SwXMLStylesContext_Impl::endFastElement(sal_Int32 )
923 GetSwImport().InsertStyles( IsAutomaticStyle() );
940 SwXMLMasterStylesContext_Impl(
SwXMLImport& rImport );
942 virtual void SAL_CALL
endFastElement(sal_Int32 nElement)
override;
947 SwXMLMasterStylesContext_Impl::SwXMLMasterStylesContext_Impl(
953 bool SwXMLMasterStylesContext_Impl::InsertStyleFamily(
XmlStyleFamily nFamily )
const
959 if( XmlStyleFamily::MASTER_PAGE == nFamily )
960 bIns = bool(nStyleFamilyMask & SfxStyleFamily::Page);
967 void SwXMLMasterStylesContext_Impl::endFastElement(sal_Int32 )
969 FinishStyles( !GetSwImport().IsInsertMode() );
970 GetSwImport().FinishStyles();
988 new SwXMLMasterStylesContext_Impl( *
this );
1015 for(
size_t i=0;
i < nCount; ++
i )
1022 bool bSendModify =
false;
1023 for(
size_t j=0; j < rConditions.size() && !bSendModify; ++j )
1045 const OUString& rName,
1048 SwXMLItemSetStyleContext_Impl *pStyle =
nullptr;
1051 pStyle =
const_cast<SwXMLItemSetStyleContext_Impl*
>(
dynamic_cast< const SwXMLItemSetStyleContext_Impl*
>(
1053 FindStyleChildContext( nFamily, rName,
1059 if( XmlStyleFamily::TABLE_TABLE == pStyle->GetFamily() &&
1060 pStyle->HasMasterPageName() &&
1061 !pStyle->IsPageDescConnected() )
1062 pStyle->ConnectPageDesc();
1063 (*ppItemSet) = pStyle->GetItemSet();
1066 if( XmlStyleFamily::TABLE_CELL == pStyle->GetFamily() &&
1067 pStyle->ResolveDataStyleName() )
1069 (*ppItemSet) = pStyle->GetItemSet();
1076 return pStyle !=
nullptr;
#define UNO_NAME_PARA_STYLE_CONDITIONS
virtual SvXMLStyleContext * CreateStyleChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList)
constexpr TypedWhichId< SwFormatPageDesc > RES_PAGEDESC(93)
Represents the style of a paragraph.
void SetStyles(SvXMLStylesContext *pStyles)
Pagedescriptor Client of SwPageDesc that is "described" by the attribute.
bool FindAutomaticStyle(XmlStyleFamily nFamily, const OUString &rName, const SfxItemSet **ppItemSet) const
void CopyAutoStylesToDoc()
static void FillUIName(const OUString &rName, OUString &rFillName, SwGetPoolIdFromName)
SvXMLImportContext * CreateMasterStylesContext()
SvXMLImport & GetImport()
Master_CollCondition GetCondition() const
Master_CollCondition
Conditional styles.
bool IsXMLToken(std::u16string_view rString, enum XMLTokenEnum eToken)
FastAttributeList & castToFastAttributeList(const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList)
XML_TABLE_COLUMN_PROPERTIES
static const CommandStruct * GetCmds()
bool IsStylesOnlyMode() const
XML_TABLE_CELL_PROPERTIES
enumrange< T >::Iterator begin(enumrange< T >)
const BorderLinePrimitive2D *pCandidateB assert(pCandidateA)
IDocumentStylePoolAccess const & getIDocumentStylePoolAccess() const
#define XMLOFF_WARN_UNKNOWN(area, rIter)
virtual css::uno::Reference< css::style::XStyle > Create()
static SW_DLLPUBLIC sal_uInt16 GetPoolIdFromUIName(const OUString &rName, SwGetPoolIdFromName)
virtual bool InsertStyleFamily(XmlStyleFamily nFamily) const override
std::vector< rtl::Reference< SwXMLConditionContext_Impl > > SwXMLConditions_Impl
static SvXMLImportPropertyMapper * CreateTableDefaultExtPropMapper(SvXMLImport &)
SvXMLStylesContext * GetStyles()
virtual SwPageDesc * GetPageDescFromPool(sal_uInt16 nId, bool bRegardLanguage=true)=0
Return required automatic page style.
SwPageDesc * FindPageDesc(const OUString &rName, size_t *pPos=nullptr) const
sal_uInt16 const aTableSetRange[]
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &AttrList) override
virtual rtl::Reference< SvXMLImportPropertyMapper > GetImportPropertyMapper(XmlStyleFamily nFamily) const
#define TOOLS_WARN_EXCEPTION(area, stream)
void Broadcast(const SfxHint &rHint)
virtual void FillPropertySet(const css::uno::Reference< css::beans::XPropertySet > &rPropSet)
OUString GetCommandContextByIndex(sal_Int16 nIndex)
virtual void Finish(bool bOverwrite) override
void CopyStylesToDoc(bool bOverwrite, bool bFinish=true)
virtual SvXMLStyleContext * CreateDefaultStyleStyleChildContext(XmlStyleFamily nFamily, sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList)
void SetMasterStyles(SvXMLStylesContext *pMasterStyles)
void UpdateTextCollConditions(SwDoc *pDoc)
virtual void SetAttribute(sal_Int32 nElement, const OUString &rValue)
#define COND_COMMAND_COUNT
sal_uInt16 const aTableBoxSetRange[]
void InsertStyles(bool bAuto)
virtual bool InsertStyleFamily(XmlStyleFamily nFamily) const
std::vector< std::unique_ptr< SwCollCondition >> SwFormatCollConditions
enumrange< T >::Iterator end(enumrange< T >)
sal_uInt16 const aTableLineSetRange[]
virtual OUString GetServiceName(XmlStyleFamily nFamily) const
static SvXMLImportPropertyMapper * CreateTableCellExtPropMapper(SvXMLImport &)
SvtBroadcaster & GetNotifier()
SfxStyleFamily GetStyleFamilyMask() const
virtual void CreateAndInsert(bool bOverwrite)
const SwTextFormatColls * GetTextFormatColls() const
virtual void SetAttribute(sal_Int32 nElement, const OUString &rValue) override
const OUString & GetXMLToken(enum XMLTokenEnum eToken)
virtual void SAL_CALL endFastElement(sal_Int32 Element) override
const o3tl::enumarray< SvxAdjust, unsigned short > aSvxToUnoAdjust USHRT_MAX
virtual css::uno::Reference< XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 Element, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
#define XML_ELEMENT(prefix, name)
virtual SvXMLStyleContext * CreateStyleStyleChildContext(XmlStyleFamily nFamily, sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList)
constexpr TypedWhichId< SwConditionTextFormatColl > RES_CONDTXTFMTCOLL(158)
Sequence< sal_Int8 > aSeq
double getLength(const B2DPolygon &rCandidate)
static SvXMLImportPropertyMapper * CreateDrawingPageExtPropMapper(SvXMLImport &)
void SetAutoStyles(SvXMLStylesContext *pAutoStyles)
SvXMLImportContext * CreateStylesContext(bool bAuto)
#define SAL_WARN(area, stream)
Reference< XSingleServiceFactory > xFactory
#define XMLOFF_WARN_UNKNOWN_ELEMENT(area, token)
XMLPropStyleContext(SvXMLImport &rImport, SvXMLStylesContext &rStyles, XmlStyleFamily nFamily, bool bDefaultStyle=false)
virtual css::uno::Reference< css::container::XNameContainer > GetStylesContainer(XmlStyleFamily nFamily) const
SwDoc * GetDocFromXMLImport(SvXMLImport const &)
static SvXMLImportPropertyMapper * CreateTableRowDefaultExtPropMapper(SvXMLImport &)
SvXMLStylesContext * GetAutoStyles()
void FinishStyles(bool bOverwrite)
const SwAttrPool & GetAttrPool() const
bool IsInsertMode() const
css::uno::Any SAL_CALL makeAny(const SharedUNOComponent< INTERFACE, COMPONENT > &value)