15 #include <oox/token/namespaces.hxx>
16 #include <oox/token/tokens.hxx>
20 #include <document.hxx>
29 using ::oox::core::ContextHandlerRef;
30 using ::oox::xls::CondFormatBuffer;
52 case XLS14_TOKEN( dataBar ):
55 xRule->importDataBar( rAttribs );
58 case XLS14_TOKEN( negativeFillColor ):
61 xRule->importNegativeFillColor( rAttribs );
64 case XLS14_TOKEN( axisColor ):
67 xRule->importAxisColor( rAttribs );
70 case XLS14_TOKEN( cfvo ):
73 xRule->importCfvo( rAttribs );
105 , isPreviousElementF(false)
122 if (nElement == XLS14_TOKEN(cfRule))
124 OUString aType = rAttribs.
getString(XML_type, OUString());
129 if (aType ==
"dataBar")
132 ExtLst::const_iterator aExt =
getExtLst().find( aId );
143 else if (aType ==
"iconSet")
147 maEntries.push_back(std::make_unique<ScIconSetFormat>(&rDoc));
150 else if (aType ==
"cellIs")
156 else if (aType ==
"containsText")
161 else if (aType ==
"notContainsText")
166 else if (aType ==
"beginsWith")
171 else if (aType ==
"endsWith")
176 else if (aType ==
"expression")
183 SAL_WARN(
"sc",
"unhandled XLS14_TOKEN(cfRule) with type: " << aType);
186 else if (nElement == XLS14_TOKEN( dxf ))
190 else if (nElement == XM_TOKEN( sqref ) || nElement == XM_TOKEN(
f ))
192 if(nElement == XM_TOKEN(
f ))
214 case XM_TOKEN(sqref):
233 case XLS14_TOKEN( cfRule ):
239 case XM_TOKEN(sqref):
244 if (!bSuccess || aRange.
empty())
248 for (
size_t i = 0;
i < aRange.
size(); ++
i)
250 aRange[
i].aStart.SetTab(nTab);
251 aRange[
i].aEnd.SetTab(nTab);
256 for (
const OUString& rFormula :
rFormulas)
265 maEntries.push_back(std::unique_ptr<ScFormatEntry>(pEntry));
295 case XLS_TOKEN( extLst ):
296 if(nElement == XLS_TOKEN( ext ))
301 case XLS_TOKEN( ext ):
302 if (nElement == XLS14_TOKEN(
id ))
314 case XLS14_TOKEN(
id ):
323 getExtLst().insert( std::pair< OUString, ScDataBarFormatData*>(rChars,
mpTarget) );
353 if (nElement == XLS_TOKEN( ext ))
366 if (nElement == LOEXT_TOKEN(extCalcPr))
369 sal_Int32
nToken = rAttribs.
getToken( XML_stringRefSyntax, XML_CalcA1 );
383 case XML_CalcA1ExcelA1:
407 if (nElement == XLS_TOKEN( ext ))
virtual void onCharacters(const OUString &rChars) override
OptValue< sal_Int32 > getInteger(sal_Int32 nAttrToken) const
ScDocument & getScDocument()
std::vector< std::unique_ptr< ScFormatEntry > > maEntries
virtual void onStartElement(const AttributeList &rAttribs) override
OptValue< OUString > getString(sal_Int32 nAttrToken) const
ScDataBarFormatData * mpTarget
ScDataBarFormatData * mpTarget
StylesBuffer & getStyles() const
Returns all cell formatting objects read from the styles substream.
virtual void onStartElement(const AttributeList &rAttribs) override
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
void forEachMem(FuncType pFunc) const
CondFormatBuffer & getCondFormats() const
Returns the conditional formatting in this sheet.
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
const BorderLinePrimitive2D *pCandidateB assert(pCandidateA)
const RefVector< Dxf > & getExtDxfs() const
std::vector< OUString > rFormulas
virtual void onEndElement() override
ExtCfRuleContext(WorksheetContextBase &rFragment, ScDataBarFormatData *pDataBar)
ExtLstGlobalContext(WorksheetFragment &rFragment)
std::vector< sal_Int32 > maPriorities
ScAddress GetTopLeftCorner() const
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
ExtLst & getExtLst() const
virtual void onCharacters(const OUString &rCharacters) override
virtual void onStartElement(const AttributeList &rAttribs) override
ExtLstGlobalWorkbookContext(WorkbookFragment &rFragment)
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
ScDocument & getScDocument()
sal_Int32 getCurrentElement() const
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
ScConditionMode eOperator
enumrange< T >::Iterator end(enumrange< T >)
Configuration options for formula interpreter.
Context handler derived from the WorkbookHelper helper class.
void finalizeImport()
Final processing after import of all style settings.
ExtGlobalContext(WorksheetContextBase &rFragment)
ExtConditionalFormattingContext(WorksheetContextBase &rFragment)
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
Context handler derived from the WorksheetHelper helper class.
const ScCalcConfig & GetCalcConfig() const
SCTAB getSheetIndex() const
Returns the index of the current sheet.
ExtLstLocalContext(WorksheetContextBase &rFragment, ScDataBarFormatData *pTarget)
std::unique_ptr< IconSetRule > mpCurrentRule
static bool GetRangeListFromString(ScRangeList &rRangeList, const OUString &rRangeListStr, const ScDocument &rDocument, formula::FormulaGrammar::AddressConvention eConv, sal_Unicode cSeparator= ' ', sal_Unicode cQuote= '\'')
std::shared_ptr< ExtCfDataBarRule > ExtCfDataBarRuleRef
OUString createExtDxfStyle(sal_Int32 nDxfId) const
virtual void onStartElement(const AttributeList &rAttribs) override
virtual Type GetType() const =0
#define SAL_WARN(area, stream)
void(* f)(TrueTypeTable *)
SC_DLLPUBLIC void SetCalcConfig(const ScCalcConfig &rConfig)
ExtGlobalWorkbookContext(WorkbookContextBase &rFragment)
virtual void onStartElement(const AttributeList &rAttribs) override
OptValue< sal_Int32 > getToken(sal_Int32 nAttrToken) const
void SetStringRefSyntax(formula::FormulaGrammar::AddressConvention eConv)