20#ifndef INCLUDED_XMLOFF_XMLNUMFI_HXX
21#define INCLUDED_XMLOFF_XMLNUMFI_HXX
27#include <rtl/ustrbuf.hxx>
76 const css::uno::Reference< css::util::XNumberFormatsSupplier >& rSupp,
77 const css::uno::Reference< css::uno::XComponentContext >& rxContext );
81 const css::uno::Reference< css::uno::XComponentContext >& rxContext );
87 const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList,
139 OUString m_aImplicitCalendar[2];
149 OUStringBuffer m_aFormatCode{64};
150 OUStringBuffer m_aConditions{32};
165 SAL_DLLPRIVATE sal_Int32 PrivateGetKey();
172 const css::uno::Reference< css::xml::sax::XFastAttributeList>& xAttrList,
175 const OUString& rName,
176 const css::uno::Reference< css::xml::sax::XFastAttributeList>& xAttrList,
177 const sal_Int32 nKey,
183 sal_Int32 nElement,
const css::uno::Reference< css::xml::sax::XFastAttributeList >& AttrList )
override;
188 sal_Int32
CreateAndInsert( css::uno::Reference< css::util::XNumberFormatsSupplier >
const & xFormatsSupplier );
195 void UpdateCalendar(
const OUString& rNewCalendar );
200 void AddToCode( std::u16string_view rString );
203 void AddCurrency(
const OUString& rContent,
LanguageType nLang );
205 void AddNfKeyword( sal_uInt16 nIndex );
206 bool ReplaceNfKeyword( sal_uInt16 nOld, sal_uInt16 nNew );
207 void AddCondition(
const sal_Int32 nIndex );
208 void AddCondition(
const OUString& rCondition,
const OUString& rApplyName );
209 void AddColor(
Color nColor );
212 bool IsSystemLanguage()
const;
virtual css::uno::Reference< XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 Element, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
static sal_uInt16 GetDefaultDateFormat(SvXMLDateElementAttributes eDOW, SvXMLDateElementAttributes eDay, SvXMLDateElementAttributes eMonth, SvXMLDateElementAttributes eYear, SvXMLDateElementAttributes eHours, SvXMLDateElementAttributes eMins, SvXMLDateElementAttributes eSecs, bool bSystem)
SvXMLNumFmtHelper(SvNumberFormatter *pNumberFormatter, const css::uno::Reference< css::uno::XComponentContext > &rxContext)
LanguageType GetLanguageForKey(sal_Int32 nKey) const
std::unique_ptr< SvXMLNumImpData > m_pData
SvXMLStyleContext * CreateChildContext(SvXMLImport &rImport, sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList, SvXMLStylesContext &rStyles)
SvXMLNumImpData * getData()
SvXMLNumFmtHelper(const css::uno::Reference< css::util::XNumberFormatsSupplier > &rSupp, const css::uno::Reference< css::uno::XComponentContext > &rxContext)
SvXMLDateElementAttributes m_eDateSecs
ImplicitCalendar m_eImplicitCalendar
SvXMLStylesContext * m_pStyles
SvXMLNumImpData * m_pData
std::vector< MyCondition > m_aMyConditions
SvXMLNumFormatContext(SvXMLImport &rImport, const OUString &rName, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList, const sal_Int32 nKey, LanguageType nLang, SvXMLStylesContext &rStyles)
void SetHasTrailingEmptyText(bool bSet)
SvXMLNumFormatContext(SvXMLImport &rImport, sal_Int32 nElement, SvXMLNumImpData *pNewData, SvXMLStylesTokens nNewType, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList, SvXMLStylesContext &rStyles)
SvXMLDateElementAttributes m_eDateDOW
SvXMLDateElementAttributes m_eDateDay
SvXMLStylesTokens m_nType
SvXMLDateElementAttributes m_eDateMonth
void SetHasLongDoW(bool bSet)
SvXMLDateElementAttributes m_eDateHours
ImplicitCalendar GetImplicitCalendarState() const
SvXMLDateElementAttributes m_eDateYear
bool m_bHasTrailingEmptyText
SvXMLDateElementAttributes m_eDateMins
LanguageType m_nFormatLang
SvXMLStylesTokens GetType() const
virtual void CreateAndInsert(bool bOverwrite)
const LocaleDataWrapper & GetLocaleData()
SvXMLDateElementAttributes
constexpr OUStringLiteral XML_NUMBERSTYLES