15#include <oox/token/namespaces.hxx>
16#include <oox/token/tokens.hxx>
20#include <document.hxx>
30using ::oox::core::ContextHandlerRef;
31using ::oox::xls::CondFormatBuffer;
51 switch( getCurrentElement() )
53 case XLS14_TOKEN( dataBar ):
56 xRule->importDataBar( rAttribs );
59 case XLS14_TOKEN( negativeFillColor ):
62 xRule->importNegativeFillColor( rAttribs );
65 case XLS14_TOKEN( axisColor ):
68 xRule->importAxisColor( rAttribs );
71 case XLS14_TOKEN( cfvo ):
74 xRule->importCfvo( rAttribs );
106 , isPreviousElementF(false)
123 if (nElement == XLS14_TOKEN(cfRule))
126 OUString aId = rAttribs.
getString(XML_id, OUString());
131 if (aType ==
"dataBar")
134 ExtLst::const_iterator aExt =
getExtLst().find( aId );
145 else if (aType ==
"iconSet")
149 maEntries.push_back(std::make_unique<ScIconSetFormat>(&rDoc));
152 else if (aType ==
"cellIs")
159 else if (aType ==
"containsText")
165 else if (aType ==
"notContainsText")
171 else if (aType ==
"beginsWith")
177 else if (aType ==
"endsWith")
183 else if (aType ==
"expression")
191 SAL_WARN(
"sc",
"unhandled XLS14_TOKEN(cfRule) with type: " << aType);
194 else if (nElement == XLS14_TOKEN( dxf ))
198 else if (nElement == XM_TOKEN( sqref ) || nElement == XM_TOKEN( f ))
200 if(nElement == XM_TOKEN( f ))
214 switch (getCurrentElement())
222 case XM_TOKEN(sqref):
233 switch (getCurrentElement())
241 case XLS14_TOKEN( cfRule ):
250 case XM_TOKEN(sqref):
255 if (!bSuccess || aRange.
empty())
259 for (
size_t i = 0;
i < aRange.
size(); ++
i)
261 aRange[
i].aStart.SetTab(nTab);
262 aRange[
i].aEnd.SetTab(nTab);
269 return lhs.nPriority < rhs.nPriority;
283 maEntries.push_back(std::unique_ptr<ScFormatEntry>(pEntry));
310 switch( getCurrentElement() )
312 case XLS_TOKEN( extLst ):
313 if(nElement == XLS_TOKEN( ext ))
317 case XLS_TOKEN( ext ):
318 if (nElement == XLS14_TOKEN(
id ))
328 switch( getCurrentElement() )
330 case XLS14_TOKEN(
id ):
337 if (getCurrentElement() == XLS14_TOKEN(
id ))
339 getExtLst().insert( std::pair< OUString, ScDataBarFormatData*>(rChars,
mpTarget) );
370 if (nElement == XLS_TOKEN( ext ))
383 if (nElement == LOEXT_TOKEN(extCalcPr))
386 sal_Int32
nToken = rAttribs.
getToken( XML_stringRefSyntax, XML_CalcA1 );
400 case XML_CalcA1ExcelA1:
424 if (nElement == XLS_TOKEN( ext ))
const ScCalcConfig & GetCalcConfig() const
SC_DLLPUBLIC void SetCalcConfig(const ScCalcConfig &rConfig)
virtual Type GetType() const =0
ScAddress GetTopLeftCorner() const
static bool GetRangeListFromString(ScRangeList &rRangeList, std::u16string_view rRangeListStr, const ScDocument &rDocument, formula::FormulaGrammar::AddressConvention eConv, sal_Unicode cSeparator=' ', sal_Unicode cQuote='\'')
std::optional< sal_Int32 > getInteger(sal_Int32 nAttrToken) const
std::optional< OUString > getString(sal_Int32 nAttrToken) const
std::optional< sal_Int32 > getToken(sal_Int32 nAttrToken) const
void forEachMem(FuncType pFunc) const
void finalizeImport()
Final processing after import of all style settings.
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
ScDataBarFormatData * mpTarget
virtual void onStartElement(const AttributeList &rAttribs) override
ExtCfRuleContext(WorksheetContextBase &rFragment, ScDataBarFormatData *pDataBar)
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
ScConditionMode eOperator
virtual void onStartElement(const AttributeList &rAttribs) override
std::vector< std::unique_ptr< ScFormatEntry > > maEntries
std::vector< sal_Int32 > maPriorities
ExtCondFormatRuleModel maModel
std::unique_ptr< IconSetRule > mpCurrentRule
virtual void onCharacters(const OUString &rCharacters) override
ExtConditionalFormattingContext(WorksheetContextBase &rFragment)
virtual void onEndElement() override
std::vector< ExtCondFormatRuleModel > maModels
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
virtual void onStartElement(const AttributeList &rAttribs) override
ExtGlobalContext(WorksheetContextBase &rFragment)
virtual void onStartElement(const AttributeList &rAttribs) override
ExtGlobalWorkbookContext(WorkbookContextBase &rFragment)
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
ExtLstGlobalContext(WorksheetFragment &rFragment)
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
ExtLstGlobalWorkbookContext(WorkbookFragment &rFragment)
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
virtual void onStartElement(const AttributeList &rAttribs) override
ExtLstLocalContext(WorksheetContextBase &rFragment, ScDataBarFormatData *pTarget)
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
ScDataBarFormatData * mpTarget
virtual void onCharacters(const OUString &rChars) override
Handle import of the sparkline, sparkline group and attributes.
OUString createExtDxfStyle(sal_Int32 nDxfId) const
const RefVector< Dxf > & getExtDxfs() const
Context handler derived from the WorkbookHelper helper class.
StylesBuffer & getStyles() const
Returns all cell formatting objects read from the styles substream.
ScDocument & getScDocument()
Context handler derived from the WorksheetHelper helper class.
CondFormatBuffer & getCondFormats() const
Returns the conditional formatting in this sheet.
ScDocument & getScDocument()
ExtLst & getExtLst() const
SCTAB getSheetIndex() const
Returns the index of the current sheet.
#define SAL_WARN(area, stream)
std::shared_ptr< ExtCfDataBarRule > ExtCfDataBarRuleRef
Configuration options for formula interpreter.
void SetStringRefSyntax(formula::FormulaGrammar::AddressConvention eConv)