Line data Source code
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 : #ifndef INCLUDED_TEST_BEANS_XPROPERTYSET_HXX
11 : #define INCLUDED_TEST_BEANS_XPROPERTYSET_HXX
12 :
13 : #include <com/sun/star/uno/Reference.hxx>
14 : #include <com/sun/star/beans/XPropertySet.hpp>
15 : #include <com/sun/star/beans/XPropertySetInfo.hpp>
16 :
17 : #include <test/testdllapi.hxx>
18 :
19 : #include <vector>
20 :
21 : namespace apitest {
22 :
23 12 : class OOO_DLLPUBLIC_TEST XPropertySet
24 : {
25 : public:
26 : virtual ~XPropertySet();
27 :
28 : virtual css::uno::Reference<css::uno::XInterface> init() = 0;
29 :
30 : void testGetPropertySetInfo();
31 : void testSetPropertyValue();
32 : void testGetPropertyValue();
33 :
34 : protected:
35 : bool isPropertyValueChangeable(const OUString& rName);
36 :
37 : private:
38 : void fillPropsToTest(const css::uno::Reference<css::beans::XPropertySetInfo>& xPropInfo);
39 : static bool getSinglePropertyValue(
40 : const css::uno::Reference<css::beans::XPropertySet>& xPropSet, const OUString& rName);
41 :
42 12 : struct OOO_DLLPUBLIC_TEST PropsToTest
43 : {
44 : std::vector<OUString> constrained;
45 : std::vector<OUString> bound;
46 : std::vector<OUString> normal;
47 : std::vector<OUString> readonly;
48 :
49 : bool initialized;
50 :
51 : PropsToTest();
52 : };
53 :
54 : PropsToTest maPropsToTest;
55 : };
56 :
57 : }
58 :
59 : #endif
60 :
61 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|