24#include <unonames.hxx>
31#include <com/sun/star/util/SortField.hpp>
40 pDatabaseRangeContext(pTempDatabaseRangeContext),
42 bCopyOutputData(false),
43 bBindFormatsToContent(true),
44 bIsCaseSensitive(false),
45 bEnabledUserList(false)
47 if ( !rAttrList.is() )
50 for (
auto &aIter : *rAttrList)
52 switch (aIter.getToken())
111 sal_Int32 nElement,
const uno::Reference< xml::sax::XFastAttributeList >& xAttrList )
131 sal_Int32 nAlgoLength(
sAlgorithm.getLength());
137 uno::Sequence <beans::PropertyValue> aSortDescriptor(7 +
i);
138 auto pSortDescriptor = aSortDescriptor.getArray();
168 util::SortField aSortField;
171 aSortField.SortAscending =
true;
173 aSortField.SortAscending =
false;
174 if (sDataType.size() > 8)
176 std::u16string_view sTemp = sDataType.substr(0, 8);
177 if (sTemp ==
u"UserList")
180 sTemp = sDataType.substr(8);
186 aSortField.FieldType = util::SortFieldType_AUTOMATIC;
192 aSortField.FieldType = util::SortFieldType_ALPHANUMERIC;
194 aSortField.FieldType = util::SortFieldType_NUMERIC;
205 pSortContext(pTempSortContext),
209 if ( !rAttrList.is() )
212 for (
auto &aIter : *rAttrList)
214 switch (aIter.getToken())
228 sOrder = aIter.toString();
const css::lang::Locale & getLocale(bool bResolveSystem=true) const
static bool GetRangeFromString(ScRange &rRange, std::u16string_view rRangeStr, const ScDocument &rDocument, formula::FormulaGrammar::AddressConvention eConv, sal_Int32 &nOffset, sal_Unicode cSeparator=' ', sal_Unicode cQuote='\'')
static void FillApiAddress(css::table::CellAddress &rApiAddress, const ScAddress &rScAddress)
void SetSortSequence(const css::uno::Sequence< css::beans::PropertyValue > &aTempSortSequence)
This class exists only to provide GetScImport() to its derived classes.
ScXMLImport & GetScImport()
ScDocument * GetDocument()
ScXMLSortByContext(ScXMLImport &rImport, sal_Int32 nElement, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLSortContext *pTempSortContext)
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
ScXMLSortContext * pSortContext
virtual ~ScXMLSortByContext() override
virtual ~ScXMLSortContext() override
LanguageTagODF maLanguageTagODF
bool bBindFormatsToContent
ScXMLDatabaseRangeContext * pDatabaseRangeContext
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
css::table::CellAddress aOutputPosition
css::uno::Sequence< css::util::SortField > aSortFields
void AddSortField(std::u16string_view sFieldNumber, std::u16string_view sDataType, std::u16string_view sOrder)
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
ScXMLSortContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDatabaseRangeContext *pTempDatabaseRangeContext)
if(aStr !=aBuf) UpdateName_Impl(m_xFollowLb.get()
sal_Int32 toInt32(std::u16string_view str, sal_Int16 radix=10)
FastAttributeList & castToFastAttributeList(const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList)
XML_BIND_STYLES_TO_CONTENT
bool IsXMLToken(std::u16string_view rString, enum XMLTokenEnum eToken)
const OUString & GetXMLToken(enum XMLTokenEnum eToken)
LanguageTag getLanguageTag() const
OUString maRfcLanguageTag
constexpr OUStringLiteral SC_UNONAME_OUTPOS
constexpr OUStringLiteral SC_UNONAME_COLLLOC
constexpr OUStringLiteral SC_UNONAME_SORTFLD
constexpr OUStringLiteral SC_UNONAME_UINDEX
constexpr OUStringLiteral SC_UNONAME_COPYOUT
constexpr OUStringLiteral SC_UNONAME_COLLALG
constexpr OUStringLiteral SC_UNONAME_ISCASE
constexpr OUStringLiteral SC_UNONAME_BINDFMT
constexpr OUStringLiteral SC_UNONAME_ISULIST
#define XML_ELEMENT(prefix, name)