tdf#104816 sw: if non-section content, let all sections hide.
[LibreOffice.git] / sc / inc / PivotTableDataSource.hxx
bloba98f977cc0ec83df0bc0078b59281099e2ecda91
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
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 */
10 #ifndef INCLUDED_SC_INC_PIVOTTABLEDATASOURCE_HXX
11 #define INCLUDED_SC_INC_PIVOTTABLEDATASOURCE_HXX
13 #include <com/sun/star/chart2/data/XDataSource.hpp>
14 #include <com/sun/star/lang/XServiceInfo.hpp>
16 #include <svl/lstner.hxx>
17 #include <cppuhelper/implbase.hxx>
18 #include <vector>
20 namespace com { namespace sun { namespace star { namespace chart2 { namespace data { class XLabeledDataSequence; } } } } }
22 namespace sc
25 typedef cppu::WeakImplHelper<css::chart2::data::XDataSource,
26 css::lang::XServiceInfo>
27 PivotTableDataSource_Base;
29 class PivotTableDataSource : public PivotTableDataSource_Base, public SfxListener
31 public:
32 explicit PivotTableDataSource(const std::vector<css::uno::Reference<css::chart2::data::XLabeledDataSequence>>& xLabeledSequence);
33 virtual ~PivotTableDataSource() override;
34 virtual void Notify(SfxBroadcaster& rBroadcaster, const SfxHint& rHint) override;
36 // XDataSource
37 virtual css::uno::Sequence<css::uno::Reference<css::chart2::data::XLabeledDataSequence>> SAL_CALL
38 getDataSequences() override;
40 // XServiceInfo
41 virtual OUString SAL_CALL getImplementationName() override;
43 virtual sal_Bool SAL_CALL supportsService(const OUString& rServiceName) override;
45 virtual css::uno::Sequence<OUString> SAL_CALL
46 getSupportedServiceNames() override;
48 private:
49 std::vector<css::uno::Reference<css::chart2::data::XLabeledDataSequence>> m_xLabeledSequence;
54 #endif
56 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */