1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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/.
11 #include <sal/config.h>
12 #include <com/sun/star/beans/PropertyValue.hpp>
13 #include <com/sun/star/container/XIndexContainer.hpp>
14 #include <com/sun/star/lang/XServiceInfo.hpp>
15 #include <com/sun/star/uno/Sequence.h>
16 #include <comphelper/comphelperdllapi.h>
17 #include <cppuhelper/implbase.hxx>
22 typedef std::vector
<css::uno::Sequence
<css::beans::PropertyValue
>> IndexedPropertyValues
;
24 class COMPHELPER_DLLPUBLIC IndexedPropertyValuesContainer final
25 : public cppu::WeakImplHelper
<css::container::XIndexContainer
, css::lang::XServiceInfo
>
28 IndexedPropertyValuesContainer() noexcept
;
31 virtual void SAL_CALL
insertByIndex(sal_Int32 nIndex
, const css::uno::Any
& aElement
) override
;
32 virtual void SAL_CALL
removeByIndex(sal_Int32 nIndex
) override
;
35 virtual void SAL_CALL
replaceByIndex(sal_Int32 nIndex
, const css::uno::Any
& aElement
) override
;
38 virtual sal_Int32 SAL_CALL
getCount() override
;
39 virtual css::uno::Any SAL_CALL
getByIndex(sal_Int32 nIndex
) override
;
42 virtual css::uno::Type SAL_CALL
getElementType() override
;
43 virtual sal_Bool SAL_CALL
hasElements() override
;
46 virtual OUString SAL_CALL
getImplementationName() override
;
47 virtual sal_Bool SAL_CALL
supportsService(const OUString
& ServiceName
) override
;
48 virtual css::uno::Sequence
<OUString
> SAL_CALL
getSupportedServiceNames() override
;
51 IndexedPropertyValues maProperties
;
55 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */