1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: vbaformatconditions.hxx,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef SC_VBA_FORMATCONDITIONS_HXX
31 #define SC_VBA_FORMATCONDITIONS_HXX
32 #include <ooo/vba/excel/XFormatConditions.hpp>
33 #include <ooo/vba/excel/XStyles.hpp>
34 #include <ooo/vba/excel/XRange.hpp>
35 #include <com/sun/star/beans/XPropertySet.hpp>
36 #include <com/sun/star/table/CellAddress.hpp>
37 #include <com/sun/star/sheet/XSheetConditionalEntries.hpp>
38 #include <vbahelper/vbacollectionimpl.hxx>
40 typedef CollTestImplHelper
< ov::excel::XFormatConditions
> ScVbaFormatConditions_BASE
;
41 class ScVbaFormatConditions
: public ScVbaFormatConditions_BASE
43 css::table::CellAddress maCellAddress
;
44 css::uno::Reference
< css::sheet::XSheetConditionalEntries
> mxSheetConditionalEntries
;
45 css::uno::Reference
< ov::excel::XStyles
> mxStyles
;
46 css::uno::Reference
< ov::excel::XRange
> mxRangeParent
;
47 css::uno::Reference
< css::beans::XPropertySet
> mxParentRangePropertySet
;
49 ScVbaFormatConditions( const css::uno::Reference
< ov::XHelperInterface
>& xParent
, const css::uno::Reference
< css::uno::XComponentContext
> & xContext
, const css::uno::Reference
< css::sheet::XSheetConditionalEntries
>&, const css::uno::Reference
< css::frame::XModel
>& );
50 void notifyRange() throw ( css::script::BasicErrorException
);
51 virtual css::uno::Reference
< ov::excel::XFormatCondition
> Add( ::sal_Int32 Type
, const css::uno::Any
& Operator
, const css::uno::Any
& Formula1
, const css::uno::Any
& Formula2
, const css::uno::Reference
< ov::excel::XStyle
>& _xCalcStyle
) throw (css::script::BasicErrorException
, css::uno::RuntimeException
);
52 rtl::OUString
getA1Formula(const css::uno::Any
& _aFormula
) throw ( css::script::BasicErrorException
);
53 rtl::OUString
getStyleName();
54 void removeFormatCondition( const rtl::OUString
& _sStyleName
, sal_Bool _bRemoveStyle
) throw ( css::script::BasicErrorException
);
55 css::uno::Reference
< css::sheet::XSheetConditionalEntries
> getSheetConditionalEntries() { return mxSheetConditionalEntries
; }
57 virtual void SAL_CALL
Delete( ) throw (css::script::BasicErrorException
, css::uno::RuntimeException
);
58 virtual css::uno::Reference
< ov::excel::XFormatCondition
> SAL_CALL
Add( ::sal_Int32 Type
, const css::uno::Any
& Operator
, const css::uno::Any
& Formula1
, const css::uno::Any
& Formula2
) throw (css::script::BasicErrorException
, css::uno::RuntimeException
);
60 virtual css::uno::Type SAL_CALL
getElementType() throw (css::uno::RuntimeException
);
61 virtual css::uno::Reference
< css::container::XEnumeration
> SAL_CALL
createEnumeration() throw (css::uno::RuntimeException
);
62 virtual css::uno::Any
createCollectionObject(const css::uno::Any
&);
64 virtual rtl::OUString
& getServiceImplName();
65 virtual css::uno::Sequence
<rtl::OUString
> getServiceNames();
68 #endif //SC_VBA_AXES_HXX