1 /************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 #ifndef SC_VBA_FORMATCONDITION_HXX 28 #define SC_VBA_FORMATCONDITION_HXX 29 #include <ooo/vba/excel/XFormatCondition.hpp> 30 #include <ooo/vba/excel/XFormatConditions.hpp> 31 #include <ooo/vba/excel/XStyle.hpp> 32 #include <com/sun/star/frame/XModel.hpp> 33 #include <com/sun/star/sheet/XSheetConditionalEntries.hpp> 34 #include <com/sun/star/sheet/XSheetConditionalEntry.hpp> 35 #include <com/sun/star/sheet/XSheetCondition.hpp> 36 #include <com/sun/star/beans/XPropertySet.hpp> 37 #include "vbacondition.hxx" 38 39 typedef ScVbaCondition< ov::excel::XFormatCondition > ScVbaFormatCondition_BASE; 40 class ScVbaFormatCondition : public ScVbaFormatCondition_BASE 41 { 42 protected: 43 rtl::OUString msStyleName; 44 css::uno::Reference< css::sheet::XSheetConditionalEntry > mxSheetConditionalEntry; 45 css::uno::Reference< css::sheet::XSheetConditionalEntries > mxSheetConditionalEntries; 46 css::uno::Reference< ov::excel::XFormatConditions> moFormatConditions; 47 css::uno::Reference< ov::excel::XStyle > mxStyle; 48 css::uno::Reference< css::beans::XPropertySet > mxParentRangePropertySet; 49 public: 50 ScVbaFormatCondition( const css::uno::Reference< ov::XHelperInterface >& xParent, const css::uno::Reference< css::uno::XComponentContext > & xContext, const css::uno::Reference< css::sheet::XSheetConditionalEntry >& _xSheetConditionalEntry, const css::uno::Reference< ov::excel::XStyle >&, const css::uno::Reference< ov::excel::XFormatConditions >& _xFormatConditions, const css::uno::Reference< css::beans::XPropertySet >& _xPropertySet ) throw ( css::uno::RuntimeException ); 51 52 void notifyRange() throw ( css::script::BasicErrorException ); 53 static css::sheet::ConditionOperator retrieveAPIType(sal_Int32 _nVBAType, const css::uno::Reference< css::sheet::XSheetCondition >& _xSheetCondition ) throw( css::script::BasicErrorException ); 54 55 //Methods 56 virtual void SAL_CALL Delete( ) throw (css::script::BasicErrorException, css::uno::RuntimeException); 57 virtual void SAL_CALL Modify( ::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); 58 virtual ::sal_Int32 SAL_CALL Type( ) throw (css::script::BasicErrorException, css::uno::RuntimeException); 59 virtual ::sal_Int32 Operator( sal_Bool ) throw (css::script::BasicErrorException); 60 virtual ::sal_Int32 SAL_CALL Operator( ) throw (css::script::BasicErrorException, css::uno::RuntimeException); 61 virtual void setFormula1( const css::uno::Any& _aFormula1) throw ( css::script::BasicErrorException ); 62 virtual void setFormula2( const css::uno::Any& _aFormula2) throw ( css::script::BasicErrorException ); 63 virtual css::uno::Reference< ::ooo::vba::excel::XInterior > SAL_CALL Interior( ) throw (css::script::BasicErrorException, css::uno::RuntimeException); 64 virtual css::uno::Any SAL_CALL Borders( const css::uno::Any& Index ) throw (css::script::BasicErrorException, css::uno::RuntimeException); 65 virtual css::uno::Reference< ::ooo::vba::excel::XFont > SAL_CALL Font( ) throw (css::script::BasicErrorException, css::uno::RuntimeException); 66 // XHelperInterface 67 virtual rtl::OUString& getServiceImplName(); 68 virtual css::uno::Sequence<rtl::OUString> getServiceNames(); 69 }; 70 #endif 71