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>
63class SwXMLConditionParser_Impl
68 sal_uInt32 m_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 m_nSubCondition; }
90inline bool SwXMLConditionParser_Impl::SkipWS()
92 while( m_nPos < m_nLength &&
' ' == m_sInput[m_nPos] )
97inline bool SwXMLConditionParser_Impl::MatchChar(
sal_Unicode c )
100 if( m_nPos < m_nLength && c == m_sInput[m_nPos] )
108inline bool SwXMLConditionParser_Impl::MatchName( OUString& rName )
110 OUStringBuffer sBuffer( m_nLength );
111 while( m_nPos < m_nLength &&
112 ( (
'a' <= m_sInput[m_nPos] && m_sInput[m_nPos] <=
'z') ||
113 '-' == m_sInput[m_nPos] ) )
115 sBuffer.append( m_sInput[m_nPos] );
118 rName = sBuffer.makeStringAndClear();
119 return !rName.isEmpty();
122inline bool SwXMLConditionParser_Impl::MatchNumber( sal_uInt32& rNumber )
124 OUStringBuffer sBuffer( m_nLength );
125 while( m_nPos < m_nLength &&
'0' <= m_sInput[m_nPos] && m_sInput[m_nPos] <=
'9' )
127 sBuffer.append( m_sInput[m_nPos] );
131 OUString sNum( sBuffer.makeStringAndClear() );
132 if( !sNum.isEmpty() )
133 rNumber = sNum.toInt32();
134 return !sNum.isEmpty();
137SwXMLConditionParser_Impl::SwXMLConditionParser_Impl(
const OUString& rInp ) :
140 m_nSubCondition( 0 ),
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 m_nSubCondition = nSub-1;
174 else if(
IsXMLToken( sFunc, XML_OUTLINE_LEVEL) &&
178 m_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 m_nSubCondition;
205 OUString m_sApplyStyle;
209 SwXMLConditionContext_Impl(
210 SvXMLImport& rImport, sal_Int32 nElement,
211 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList );
216 sal_uInt32 getSubCondition()
const {
return m_nSubCondition; }
217 OUString
const &getApplyStyle()
const {
return m_sApplyStyle; }
222SwXMLConditionContext_Impl::SwXMLConditionContext_Impl(
223 SvXMLImport& rImport, sal_Int32 ,
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 m_nCondition = aCondParser.GetCondition();
240 m_nSubCondition = aCondParser.GetSubCondition();
245 m_sApplyStyle = sValue;
259 std::unique_ptr<SwXMLConditions_Impl> m_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( m_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 );
303SwXMLTextStyleContext_Impl::Finish(
bool bOverwrite )
305 if( m_pConditions && XmlStyleFamily::TEXT_PARAGRAPH == GetFamily() && GetStyle().is() )
309 Reference< XPropertySet > xPropSet( GetStyle(), UNO_QUERY );
311 uno::Sequence< beans::NamedValue >
aSeq( m_pConditions->size() );
312 auto aSeqRange = asNonConstRange(aSeq);
315 i < m_pConditions->size(); ++
i)
317 assert((*m_pConditions)[i]->IsValid());
319 sal_uInt32 nSubCond = (*m_pConditions)[
i]->getSubCondition();
323 if (pCommands[j].nCnd == nCond &&
324 pCommands[j].nSubCond == nSubCond)
327 aSeqRange[
i].Value <<= GetImport().GetStyleDisplayName(
328 GetFamily(), (*m_pConditions)[i]->getApplyStyle() );
338 catch (uno::Exception
const&)
346SwXMLTextStyleContext_Impl::SwXMLTextStyleContext_Impl(
SwXMLImport& rImport,
353css::uno::Reference< css::xml::sax::XFastContextHandler > SwXMLTextStyleContext_Impl::createFastChildContext(
355 const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList )
360 new SwXMLConditionContext_Impl( GetImport(), nElement, xAttrList )};
361 if( xCond->IsValid() )
364 m_pConditions = std::make_unique<SwXMLConditions_Impl>();
365 m_pConditions->push_back( xCond );
377 OUString m_sDataStyleName;
378 void AddDataFormat();
381 virtual void FillPropertySet(
const css::uno::Reference<css::beans::XPropertySet>& rPropSet)
override;
382 virtual void SetAttribute(sal_Int32 nElement,
const OUString& rValue)
override;
387 OUString m_sMasterPageName;
388 std::optional<SfxItemSet> m_oItemSet;
389 SwXMLTextStyleContext_Impl *m_pTextStyle;
392 OUString m_sDataStyleName;
394 bool m_bHasMasterPageName : 1;
395 bool m_bPageDescConnected : 1;
396 bool m_bDataStyleIsResolved;
400 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList);
405 const OUString& rValue )
override;
412 SwXMLItemSetStyleContext_Impl(
420 sal_Int32 nElement,
const css::uno::Reference< css::xml::sax::XFastAttributeList >& AttrList )
override;
425 bool HasMasterPageName()
const {
return m_bHasMasterPageName; }
427 bool IsPageDescConnected()
const {
return m_bPageDescConnected; }
428 void ConnectPageDesc();
430 bool ResolveDataStyleName();
435void SwXMLCellStyleContext::AddDataFormat()
437 if (m_sDataStyleName.isEmpty() || IsDefaultStyle())
441 GetStyles()->FindStyleChildContext(XmlStyleFamily::DATA_STYLE, m_sDataStyleName,
true));
445 SAL_WARN(
"sw.xml",
"not possible to get data style " << m_sDataStyleName);
450 if (nNumberFormat < 0)
454 if (!xPropertyMapper.is())
456 SAL_WARN(
"sw.xml",
"there is no import prop mapper");
461 sal_Int32
nIndex = xPropertySetMapper->GetEntryIndex(XML_NAMESPACE_STYLE,
GetXMLToken(XML_DATA_STYLE_NAME), 0);
468 auto aIter = std::find_if(GetProperties().
begin(), GetProperties().
end(),
473 if (aIter != GetProperties().
end())
474 aIter->maValue <<= nNumberFormat;
479void SwXMLCellStyleContext::FillPropertySet(
const css::uno::Reference<css::beans::XPropertySet>& rPropSet)
485void SwXMLCellStyleContext::SetAttribute(sal_Int32 nElement,
const OUString& rValue)
487 if ((nElement & TOKEN_MASK) == XML_DATA_STYLE_NAME)
488 m_sDataStyleName = rValue;
493void SwXMLItemSetStyleContext_Impl::SetAttribute( sal_Int32 nElement,
494 const OUString& rValue )
500 m_sMasterPageName = rValue;
501 m_bHasMasterPageName =
true;
507 if (!rValue.isEmpty())
509 m_sDataStyleName = rValue;
510 m_bDataStyleIsResolved =
false;
521 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
523 OSL_ENSURE( !m_oItemSet,
524 "SwXMLItemSetStyleContext_Impl::CreateItemSetContext: item set exists" );
528 SwDoc* pDoc = GetSwImport().getDoc();
531 switch( GetFamily() )
533 case XmlStyleFamily::TABLE_TABLE:
536 case XmlStyleFamily::TABLE_COLUMN:
537 m_oItemSet.emplace( rItemPool, svl::Items<RES_FRM_SIZE, RES_FRM_SIZE> );
539 case XmlStyleFamily::TABLE_ROW:
542 case XmlStyleFamily::TABLE_CELL:
547 "SwXMLItemSetStyleContext_Impl::CreateItemSetContext: unknown family" );
551 pContext = GetSwImport().CreateTableItemImportContext(
552 nElement, xAttrList, GetFamily(),
563SwXMLItemSetStyleContext_Impl::SwXMLItemSetStyleContext_Impl(
SwXMLImport& rImport,
567 m_pTextStyle( nullptr ),
568 m_rStyles( rStylesC ),
569 m_bHasMasterPageName( false ),
570 m_bPageDescConnected( false ),
571 m_bDataStyleIsResolved( true )
575void SwXMLItemSetStyleContext_Impl::CreateAndInsert(
bool bOverwrite )
581css::uno::Reference< css::xml::sax::XFastContextHandler > SwXMLItemSetStyleContext_Impl::createFastChildContext(
583 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
591 return CreateItemSetContext( nElement, xAttrList );
597 m_pTextStyle =
new SwXMLTextStyleContext_Impl( GetSwImport(), XmlStyleFamily::TEXT_PARAGRAPH, m_rStyles );
600 m_pTextStyle->startFastElement( nElement, xTmpAttrList );
601 m_rStyles.AddStyle( *m_pTextStyle );
603 return m_pTextStyle->createFastChildContext( nElement, xAttrList );
612void SwXMLItemSetStyleContext_Impl::ConnectPageDesc()
614 if( m_bPageDescConnected || !HasMasterPageName() )
616 m_bPageDescConnected =
true;
618 SwDoc *pDoc = GetSwImport().getDoc();
622 OUString
sName = GetImport().GetStyleDisplayName( XmlStyleFamily::MASTER_PAGE,
633 if( USHRT_MAX != nPoolId )
646 std::unique_ptr<SwFormatPageDesc> pFormatPageDesc;
649 if( pItem->GetPageDesc() != pPageDesc )
655 if( pFormatPageDesc )
657 pFormatPageDesc->RegisterToPageDesc( *pPageDesc );
658 m_oItemSet->
Put( std::move(pFormatPageDesc) );
662bool SwXMLItemSetStyleContext_Impl::ResolveDataStyleName()
665 if (! m_bDataStyleIsResolved)
669 GetImport().GetTextImport()->GetDataStyleKey(m_sDataStyleName);
676 SwDoc *pDoc = GetSwImport().getDoc();
682 m_oItemSet->Put(aNumFormatItem);
686 m_bDataStyleIsResolved =
true;
708 const css::uno::Reference< css::xml::sax::XFastAttributeList > & xAttrList )
override;
713 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
override;
717 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
override;
722 virtual uno::Reference < container::XNameContainer >
729 SwXMLStylesContext_Impl(
735 virtual void SAL_CALL
endFastElement(sal_Int32 nElement)
override;
742 const css::uno::Reference< css::xml::sax::XFastAttributeList > & xAttrList )
746 if(nElement ==
XML_ELEMENT(TABLE, XML_TABLE_TEMPLATE))
749 pContext = xTableImport->CreateTableTemplateContext(nElement, xAttrList);
759 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
765 case XmlStyleFamily::TEXT_PARAGRAPH:
766 pStyle =
new SwXMLTextStyleContext_Impl( GetSwImport(), nFamily, *
this );
768 case XmlStyleFamily::TABLE_TABLE:
769 case XmlStyleFamily::TABLE_COLUMN:
770 case XmlStyleFamily::TABLE_ROW:
771 case XmlStyleFamily::TABLE_CELL:
773 if (IsAutomaticStyle())
774 pStyle =
new SwXMLItemSetStyleContext_Impl(GetSwImport(), *
this, nFamily);
775 else if (nFamily == XmlStyleFamily::TABLE_CELL)
776 pStyle =
new SwXMLCellStyleContext(GetSwImport(), *
this, nFamily);
778 SAL_WARN(
"sw.xml",
"Context does not exists for non automatic table, column or row style.");
780 case XmlStyleFamily::SD_GRAPHICS_ID:
785 case XmlStyleFamily::SD_DRAWINGPAGE_ID:
787 *
this, g_MasterPageContextIDs, g_MasterPageFamilies);
801 const uno::Reference< xml::sax::XFastAttributeList > & xAttrList )
807 case XmlStyleFamily::TEXT_PARAGRAPH:
808 case XmlStyleFamily::TABLE_TABLE:
809 case XmlStyleFamily::TABLE_ROW:
814 case XmlStyleFamily::SD_GRAPHICS_ID:
828SwXMLStylesContext_Impl::SwXMLStylesContext_Impl(
835bool SwXMLStylesContext_Impl::InsertStyleFamily(
XmlStyleFamily nFamily )
const
843 case XmlStyleFamily::TEXT_PARAGRAPH:
844 bIns = bool(nStyleFamilyMask & SfxStyleFamily::Para);
846 case XmlStyleFamily::TEXT_TEXT:
847 bIns = bool(nStyleFamilyMask & SfxStyleFamily::Char);
849 case XmlStyleFamily::SD_GRAPHICS_ID:
850 bIns = bool(nStyleFamilyMask & SfxStyleFamily::Frame);
852 case XmlStyleFamily::TEXT_LIST:
853 bIns = bool(nStyleFamilyMask & SfxStyleFamily::Pseudo);
855 case XmlStyleFamily::TEXT_OUTLINE:
856 case XmlStyleFamily::TEXT_FOOTNOTECONFIG:
857 case XmlStyleFamily::TEXT_ENDNOTECONFIG:
858 case XmlStyleFamily::TEXT_LINENUMBERINGCONFIG:
859 case XmlStyleFamily::TEXT_BIBLIOGRAPHYCONFIG:
875 if( nFamily == XmlStyleFamily::TABLE_TABLE )
877 const_cast<SwXMLStylesContext_Impl*
>(
this )->GetImport() );
878 else if( nFamily == XmlStyleFamily::TABLE_ROW )
880 const_cast<SwXMLStylesContext_Impl*
>(
this )->GetImport() );
881 else if( nFamily == XmlStyleFamily::TABLE_CELL )
883 const_cast<SwXMLStylesContext_Impl*
>(
this )->GetImport() );
884 else if (nFamily == XmlStyleFamily::SD_DRAWINGPAGE_ID)
887 const_cast<SwXMLStylesContext_Impl*
>(
this)->GetImport());
894uno::Reference < container::XNameContainer > SwXMLStylesContext_Impl::GetStylesContainer(
897 uno::Reference < container::XNameContainer > xStyles;
898 if( XmlStyleFamily::SD_GRAPHICS_ID == nFamily )
899 xStyles =
const_cast<SvXMLImport *
>(&GetImport())->GetTextImport()->GetFrameStyles();
900 else if( XmlStyleFamily::TABLE_CELL == nFamily )
901 xStyles =
const_cast<SvXMLImport *
>(&GetImport())->GetTextImport()->GetCellStyles();
909OUString SwXMLStylesContext_Impl::GetServiceName(
XmlStyleFamily nFamily )
const
911 if( XmlStyleFamily::SD_GRAPHICS_ID == nFamily )
912 return "com.sun.star.style.FrameStyle";
913 else if( XmlStyleFamily::TABLE_CELL == nFamily )
914 return "com.sun.star.style.CellStyle";
919void SwXMLStylesContext_Impl::endFastElement(sal_Int32 )
921 GetSwImport().InsertStyles( IsAutomaticStyle() );
922 if (!IsAutomaticStyle())
923 GetImport().GetShapeImport()->GetShapeTableImport()->finishStyles();
940 SwXMLMasterStylesContext_Impl(
SwXMLImport& rImport );
942 virtual void SAL_CALL
endFastElement(sal_Int32 nElement)
override;
947SwXMLMasterStylesContext_Impl::SwXMLMasterStylesContext_Impl(
953bool SwXMLMasterStylesContext_Impl::InsertStyleFamily(
XmlStyleFamily nFamily )
const
959 if( XmlStyleFamily::MASTER_PAGE == nFamily )
960 bIns = bool(nStyleFamilyMask & SfxStyleFamily::Page);
967void SwXMLMasterStylesContext_Impl::endFastElement(sal_Int32 )
969 FinishStyles( !GetSwImport().IsInsertMode() );
970 GetSwImport().FinishStyles();
978 SetAutoStyles( pContext );
980 SetStyles( pContext );
988 new SwXMLMasterStylesContext_Impl( *
this );
989 SetMasterStyles( pContext );
996 if( bAuto && GetAutoStyles() )
997 GetAutoStyles()->CopyAutoStylesToDoc();
998 if( !bAuto && GetStyles() )
1022 bool bSendModify =
false;
1023 for(
size_t j=0; j < rConditions.size() && !bSendModify; ++j )
1045 const OUString& rName,
1048 SwXMLItemSetStyleContext_Impl *pStyle =
nullptr;
1049 if( GetAutoStyles() )
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;
const sal_Int32 m_nLength
OUString GetCommandContextByIndex(sal_Int16 nIndex)
#define COND_COMMAND_COUNT
virtual SwPageDesc * GetPageDescFromPool(sal_uInt16 nId, bool bRegardLanguage=true)=0
Return required automatic page style.
const T & Put(std::unique_ptr< T > xItem, sal_uInt16 nWhich=0)
virtual void SAL_CALL endFastElement(sal_Int32 Element) override
SvXMLImport & GetImport()
virtual css::uno::Reference< XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 Element, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
virtual void SetAttribute(sal_Int32 nElement, const OUString &rValue)
virtual void CreateAndInsert(bool bOverwrite)
virtual css::uno::Reference< css::container::XNameContainer > GetStylesContainer(XmlStyleFamily nFamily) const
virtual SvXMLStyleContext * CreateDefaultStyleStyleChildContext(XmlStyleFamily nFamily, sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList)
virtual bool InsertStyleFamily(XmlStyleFamily nFamily) const
virtual rtl::Reference< SvXMLImportPropertyMapper > GetImportPropertyMapper(XmlStyleFamily nFamily) const
virtual SvXMLStyleContext * CreateStyleChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList)
virtual SvXMLStyleContext * CreateStyleStyleChildContext(XmlStyleFamily nFamily, sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList)
virtual OUString GetServiceName(XmlStyleFamily nFamily) const
Master_CollCondition GetCondition() const
static const CommandStruct * GetCmds()
SwPageDesc * FindPageDesc(const OUString &rName, size_t *pPos=nullptr) const
const SwTextFormatColls * GetTextFormatColls() const
IDocumentStylePoolAccess const & getIDocumentStylePoolAccess() const
const SwAttrPool & GetAttrPool() const
Pagedescriptor Client of SwPageDesc that is "described" by the attribute.
static SW_DLLPUBLIC sal_uInt16 GetPoolIdFromUIName(const OUString &rName, SwGetPoolIdFromName)
static void FillUIName(const OUString &rName, OUString &rFillName, SwGetPoolIdFromName)
Represents the style of a paragraph.
const SwDoc * getDoc() const
SvXMLImportContext * CreateStylesContext(bool bAuto)
void UpdateTextCollConditions(SwDoc *pDoc)
SfxStyleFamily GetStyleFamilyMask() const
SvXMLImportContext * CreateMasterStylesContext()
void InsertStyles(bool bAuto)
bool IsInsertMode() const
bool FindAutomaticStyle(XmlStyleFamily nFamily, const OUString &rName, const SfxItemSet **ppItemSet) const
bool IsStylesOnlyMode() const
virtual void FillPropertySet(const css::uno::Reference< css::beans::XPropertySet > &rPropSet)
XMLPropStyleContext(SvXMLImport &rImport, SvXMLStylesContext &rStyles, XmlStyleFamily nFamily, bool bDefaultStyle=false)
virtual css::uno::Reference< css::style::XStyle > Create()
virtual void SetAttribute(sal_Int32 nElement, const OUString &rValue) override
static SvXMLImportPropertyMapper * CreateTableRowDefaultExtPropMapper(SvXMLImport &)
static SvXMLImportPropertyMapper * CreateTableCellExtPropMapper(SvXMLImport &)
static SvXMLImportPropertyMapper * CreateDrawingPageExtPropMapper(SvXMLImport &)
static SvXMLImportPropertyMapper * CreateTableDefaultExtPropMapper(SvXMLImport &)
virtual bool InsertStyleFamily(XmlStyleFamily nFamily) const override
virtual void Finish(bool bOverwrite) override
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &AttrList) override
#define TOOLS_WARN_EXCEPTION(area, stream)
virtual OUString GetName() const override
Reference< XSingleServiceFactory > xFactory
Master_CollCondition
Conditional styles.
std::vector< std::unique_ptr< SwCollCondition > > SwFormatCollConditions
constexpr TypedWhichId< SwConditionTextFormatColl > RES_CONDTXTFMTCOLL(166)
constexpr TypedWhichId< SwFormatPageDesc > RES_PAGEDESC(99)
WhichRangesContainer const aTableSetRange(svl::Items< RES_FILL_ORDER, RES_FRM_SIZE, RES_LR_SPACE, RES_BREAK, RES_HORI_ORIENT, RES_HORI_ORIENT, RES_BACKGROUND, RES_SHADOW, RES_KEEP, RES_KEEP, RES_LAYOUT_SPLIT, RES_LAYOUT_SPLIT, RES_FRAMEDIR, RES_FRAMEDIR, RES_COLLAPSING_BORDERS, RES_COLLAPSING_BORDERS, RES_FRMATR_GRABBAG, RES_FRMATR_GRABBAG, RES_UNKNOWNATR_BEGIN, RES_UNKNOWNATR_END-1 >)
WhichRangesContainer const aTableLineSetRange(svl::Items< RES_FILL_ORDER, RES_FRM_SIZE, RES_LR_SPACE, RES_UL_SPACE, RES_PRINT, RES_PRINT, RES_PROTECT, RES_PROTECT, RES_VERT_ORIENT, RES_VERT_ORIENT, RES_BACKGROUND, RES_SHADOW, RES_ROW_SPLIT, RES_ROW_SPLIT, RES_FRMATR_GRABBAG, RES_FRMATR_GRABBAG, RES_UNKNOWNATR_BEGIN, RES_UNKNOWNATR_END-1 >)
WhichRangesContainer const aTableBoxSetRange(svl::Items< RES_FILL_ORDER, RES_FRM_SIZE, RES_LR_SPACE, RES_UL_SPACE, RES_PRINT, RES_PRINT, RES_PROTECT, RES_PROTECT, RES_VERT_ORIENT, RES_VERT_ORIENT, RES_BACKGROUND, RES_SHADOW, RES_FRAMEDIR, RES_FRAMEDIR, RES_FRMATR_GRABBAG, RES_FRMATR_GRABBAG, RES_BOXATR_BEGIN, RES_BOXATR_END-1, RES_UNKNOWNATR_BEGIN, RES_UNKNOWNATR_END-1 >)
Sequence< sal_Int8 > aSeq
#define SAL_WARN(area, stream)
double getLength(const B2DPolygon &rCandidate)
enumrange< T >::Iterator begin(enumrange< T >)
FastAttributeList & castToFastAttributeList(const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList)
XML_TABLE_CELL_PROPERTIES
XML_TABLE_COLUMN_PROPERTIES
bool IsXMLToken(std::u16string_view rString, enum XMLTokenEnum eToken)
const OUString & GetXMLToken(enum XMLTokenEnum eToken)
constexpr sal_uInt8 MAXLEVEL
constexpr OUStringLiteral UNO_NAME_PARA_STYLE_CONDITIONS
std::vector< rtl::Reference< SwXMLConditionContext_Impl > > SwXMLConditions_Impl
#define XMLOFF_WARN_UNKNOWN_ELEMENT(area, token)
#define XMLOFF_WARN_UNKNOWN(area, rIter)
#define XML_ELEMENT(prefix, name)