LibreOffice Module sc (master) 1
xmlcondformat.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
9
10#pragma once
11
12#include <array>
13#include <memory>
14#include <tools/link.hxx>
15#include "importcontext.hxx"
16#include <tokenarray.hxx>
17
18namespace sax_fastparser { class FastAttributeList; }
19
25
27{
28private:
30 {
33 std::unique_ptr<const ScTokenArray> mpTokens;
34 sal_Int64 mnAge = SAL_MAX_INT64;
35 };
36
38 {
41 };
42
43 DECL_LINK(FormatDeletedHdl, ScConditionalFormat*, void);
44
45public:
47
48 virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(
49 sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList ) override;
50
51 virtual void SAL_CALL endFastElement( sal_Int32 nElement ) override;
52
53 std::array<CacheEntry, 4> maCache;
54
55 std::vector<CondFormatData> mvCondFormatData;
56};
57
59{
60public:
64
65 virtual ~ScXMLConditionalFormatContext() override;
66
67 virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(
68 sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList ) override;
69
70 virtual void SAL_CALL endFastElement( sal_Int32 nElement ) override;
71private:
72
73 std::unique_ptr<ScConditionalFormat> mxFormat;
74
76};
77
79{
80public:
82 ScConditionalFormat* pFormat);
83
84 virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(
85 sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList ) override;
86private:
87
89};
90
92{
93public:
96 ScConditionalFormat* pFormat);
97
98 virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(
99 sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList ) override;
100private:
101
104
105 sal_Int32 mnIndex;
106};
107
109{
112public:
113
116 ScConditionalFormat* pFormat);
117
118 virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(
119 sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList ) override;
120};
121
123{
124public:
127 ScColorScaleFormat* pFormat);
128};
129
131{
132public:
136};
137
139{
140public:
143 ScConditionalFormat* pFormat);
144};
145
147{
148public:
151 ScConditionalFormat* pFormat);
152};
153
154/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
ScXMLColorScaleFormatContext(ScXMLImport &rImport, ScConditionalFormat *pFormat)
ScColorScaleFormat * pColorScaleFormat
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
ScXMLColorScaleFormatEntryContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScColorScaleFormat *pFormat)
ScXMLCondContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScConditionalFormat *pFormat)
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
ScXMLConditionalFormatContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLConditionalFormatsContext &rParent)
std::unique_ptr< ScConditionalFormat > mxFormat
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
ScXMLConditionalFormatsContext & mrParent
virtual ~ScXMLConditionalFormatContext() override
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
std::vector< CondFormatData > mvCondFormatData
ScXMLConditionalFormatsContext(ScXMLImport &rImport)
std::array< CacheEntry, 4 > maCache
DECL_LINK(FormatDeletedHdl, ScConditionalFormat *, void)
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
ScXMLDataBarFormatContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScConditionalFormat *pFormat)
ScDataBarFormatData * mpFormatData
ScConditionalFormat * mpParent
ScXMLDateContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScConditionalFormat *pFormat)
ScXMLFormattingEntryContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScColorScaleEntry *&pData)
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
ScConditionalFormat * mpParent
ScIconSetFormatData * mpFormatData
ScXMLIconSetFormatContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScConditionalFormat *pFormat)
This class exists only to provide GetScImport() to its derived classes.
std::unique_ptr< sal_Int32[]> pData
std::unique_ptr< const ScTokenArray > mpTokens
#define SAL_MAX_INT64
sal_Int16 SCTAB
Definition: types.hxx:22