Avoid potential negative array index access to cached text.
[LibreOffice.git] / sc / inc / TablePivotChart.hxx
blob0012ed1d984dc54f8f31948a36629d7addf212e6
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 #pragma once
12 #include <com/sun/star/table/XTablePivotChart.hpp>
13 #include <com/sun/star/document/XEmbeddedObjectSupplier.hpp>
14 #include <com/sun/star/lang/XServiceInfo.hpp>
15 #include <com/sun/star/container/XNamed.hpp>
17 #include <svl/lstner.hxx>
18 #include <comphelper/compbase.hxx>
20 #include "types.hxx"
22 class ScDocShell;
24 namespace sc
27 typedef comphelper::WeakComponentImplHelper<css::table::XTablePivotChart,
28 css::document::XEmbeddedObjectSupplier,
29 css::container::XNamed,
30 css::lang::XServiceInfo>
31 TablePivotChart_Base;
33 class TablePivotChart final : public TablePivotChart_Base,
34 public SfxListener
36 private:
37 ScDocShell* m_pDocShell;
38 SCTAB m_nTab; // Charts are per sheet
39 OUString m_aChartName;
41 public:
42 TablePivotChart(ScDocShell* pDocShell, SCTAB nTab, OUString aName);
43 virtual ~TablePivotChart() override;
45 virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override;
47 // XComponent
48 using TablePivotChart_Base::disposing;
50 // XEmbeddedObjectSupplier
51 virtual css::uno::Reference<css::lang::XComponent> SAL_CALL
52 getEmbeddedObject() override;
54 // XNamed
55 virtual OUString SAL_CALL getName() override;
56 virtual void SAL_CALL setName(OUString const & aName) override;
58 // XTablePivotChart
59 virtual OUString SAL_CALL getPivotTableName() override;
61 // XServiceInfo
62 virtual OUString SAL_CALL getImplementationName() override;
63 virtual sal_Bool SAL_CALL supportsService(OUString const & ServiceName) override;
64 virtual css::uno::Sequence<OUString> SAL_CALL getSupportedServiceNames() override;
69 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */