summaryrefslogtreecommitdiff
path: root/inc/dphierarchy.hxx
blob: 901bca20a159113892ef0633549515584523ba8e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#ifndef __DPHIEARCHY_HXX__
#define __DPHIEARCHY_HXX__

#include <cppuhelper/implbase2.hxx>

#include <com/sun/star/container/XNamed.hpp>
#include <com/sun/star/sheet/XLevelsSupplier.hpp>

namespace com { namespace sun { namespace star {
    namespace container {
        class XNameAccess;
    }
}}}

namespace dpsource {

class DPDimension;

class DPHierarchy : public ::cppu::WeakImplHelper2<
                                ::com::sun::star::container::XNamed,
                                ::com::sun::star::sheet::XLevelsSupplier >
{
public:
    explicit DPHierarchy(DPDimension* pDim);
    ~DPHierarchy();

    // XNamed

    ::rtl::OUString SAL_CALL getName() throw (::com::sun::star::uno::RuntimeException);

    void SAL_CALL setName(const ::rtl::OUString& aName) 
        throw (::com::sun::star::uno::RuntimeException);

    // XLevelsSupplier

    virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > 
        SAL_CALL getLevels() throw (::com::sun::star::uno::RuntimeException);

private:
    ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess >
        mxLevels;
    ::rtl::OUString maName;
    DPDimension* mpDim;
};


}


#endif