20 #ifndef INCLUDED_SC_SOURCE_FILTER_XML_XMLSTYLESEXPORTHELPER_HXX
21 #define INCLUDED_SC_SOURCE_FILTER_XML_XMLSTYLESEXPORTHELPER_HXX
28 #include <com/sun/star/table/CellRangeAddress.hpp>
29 #include <com/sun/star/sheet/ConditionOperator.hpp>
30 #include <com/sun/star/sheet/ValidationAlertStyle.hpp>
31 #include <com/sun/star/sheet/ValidationType.hpp>
33 #include <mdds/flat_segment_tree.hpp>
69 sal_Int32& nValidationIndex);
73 const OUString& sTitle,
const OUString& sMessage,
74 const bool bShowMessage,
const bool bIsHelpMessage);
98 const sal_Int32 nTable,
const sal_Int32 nPos,
99 const sal_Int32 i,
bool& bIsAutoStyle);
103 const sal_Int32 nLastRow,
const sal_Int32 nLastCol,
129 void AddRange(
const sal_Int32 nPrevStartCol,
const sal_Int32 nRepeat,
const sal_Int32 nPrevIndex,
175 bool AddStyleName(
const OUString& rString, sal_Int32& rIndex,
const bool bIsAutoStyle =
true);
176 sal_Int32
GetIndexOfStyleName(
const OUString& rString,
const OUString& rPrefix,
bool& bIsAutoStyle);
178 sal_Int32
GetStyleNameIndex(
const sal_Int32 nTable,
const sal_Int32 nColumn,
const sal_Int32 nRow,
179 bool& bIsAutoStyle)
const;
181 sal_Int32
GetStyleNameIndex(
const sal_Int32 nTable,
const sal_Int32 nColumn,
const sal_Int32 nRow,
182 bool& bIsAutoStyle, sal_Int32& nValidationIndex, sal_Int32& nNumberFormat,
const sal_Int32 nRemoveBeforeRow);
183 void GetFormatRanges(
const sal_Int32 nStartColumn,
const sal_Int32 nEndColumn,
const sal_Int32 nRow,
185 void AddRangeStyleName(
const css::table::CellRangeAddress& rCellRangeAddress,
const sal_Int32 nStringIndex,
186 const bool bIsAutoStyle,
const sal_Int32 nValidationIndex,
const sal_Int32 nNumberFormat);
199 virtual void AddNewTable(
const sal_Int32 nTable,
const sal_Int32 nFields) = 0;
223 virtual void AddNewTable(
const sal_Int32 nTable,
const sal_Int32 nFields)
override;
226 void AddFieldStyleName(
const sal_Int32 nTable,
const sal_Int32 nField,
const sal_Int32 nStringIndex,
const bool bIsVisible);
231 typedef ::mdds::flat_segment_tree<sal_Int32, sal_Int32>
StylesType;
232 std::vector<std::unique_ptr<StylesType> >
aTables;
241 bool hasCache(sal_Int32 nTable, sal_Int32 nField)
const;
249 virtual void AddNewTable(
const sal_Int32 nTable,
const sal_Int32 nFields)
override;
251 void AddFieldStyleName(
const sal_Int32 nTable,
const sal_Int32 nField,
const sal_Int32 nStringIndex);
252 void AddFieldStyleName(
const sal_Int32 nTable,
const sal_Int32 nStartField,
const sal_Int32 nStringIndex,
const sal_Int32 nEndField);
sal_Int32 GetIndexOfStyleName(const OUString &rString, const OUString &rPrefix)
static OUString GetBaseCellAddress(const ScDocument *pDoc, const ScAddress &aCell)
void AddFieldStyleName(const sal_Int32 nTable, const sal_Int32 nField, const sal_Int32 nStringIndex, const bool bIsVisible)
static void WriteMessage(ScXMLExport &rExport, const OUString &sTitle, const OUString &sMessage, const bool bShowMessage, const bool bIsHelpMessage)
virtual ~ScColumnStyles() override
sal_Int32 GetStyleNameIndex(const sal_Int32 nTable, const sal_Int32 nField, bool &bIsVisible)
css::sheet::ConditionOperator aOperator
css::sheet::ValidationAlertStyle aAlertStyle
ScMyValidationsContainer()
~ScMyValidationsContainer()
void AddFieldStyleName(const sal_Int32 nTable, const sal_Int32 nField, const sal_Int32 nStringIndex)
void AddValidation(const css::uno::Any &aAny, sal_Int32 &nValidationIndex)
sal_Int32 AddStyleName(const OUString &rString)
bool hasCache(sal_Int32 nTable, sal_Int32 nField) const
std::vector< ScColumnStyle > ScMyColumnStyleVec
::mdds::flat_segment_tree< sal_Int32, sal_Int32 > StylesType
ScMyDefaultStyleList maColDefaults
css::sheet::ValidationType aValidationType
virtual ~ScRowStyles() override
void WriteValidations(ScXMLExport &rExport)
std::vector< OUString > aStyleNames
sal_Int32 GetStyleNameIndex(const sal_Int32 nTable, const sal_Int32 nField)
static OUString GetCondition(ScXMLExport &rExport, const ScMyValidation &aValidation)
virtual void AddNewTable(const sal_Int32 nTable, const sal_Int32 nFields) override
void FillDefaultStyles(const sal_Int32 nTable, const sal_Int32 nLastRow, const sal_Int32 nLastCol, const ScFormatRangeStyles *pCellStyles, ScDocument *pDoc)
static sal_Int32 GetStyleNameIndex(const ScFormatRangeStyles *pCellStyles, const sal_Int32 nTable, const sal_Int32 nPos, const sal_Int32 i, bool &bIsAutoStyle)
virtual void AddNewTable(const sal_Int32 nTable, const sal_Int32 nFields)=0
std::vector< ScMyColumnStyleVec > ScMyColumnVectorVec
const OUString & GetValidationName(const sal_Int32 nIndex)
std::vector< ScMyValidation > aValidationVec
const ScMyDefaultStyleList & GetColDefaults() const
virtual void AddNewTable(const sal_Int32 nTable, const sal_Int32 nFields) override
OUString & GetStyleNameByIndex(const sal_Int32 nIndex)
std::vector< std::unique_ptr< StylesType > > aTables
bool IsEqual(const ScMyValidation &aVal) const
virtual ~ScColumnRowStylesBase()
std::vector< ScMyDefaultStyle > ScMyDefaultStyleList
ScMyColumnVectorVec aTables