1*bae3752eSAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*bae3752eSAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*bae3752eSAndrew Rist * or more contributor license agreements. See the NOTICE file 5*bae3752eSAndrew Rist * distributed with this work for additional information 6*bae3752eSAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*bae3752eSAndrew Rist * to you under the Apache License, Version 2.0 (the 8*bae3752eSAndrew Rist * "License"); you may not use this file except in compliance 9*bae3752eSAndrew Rist * with the License. You may obtain a copy of the License at 10*bae3752eSAndrew Rist * 11*bae3752eSAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*bae3752eSAndrew Rist * 13*bae3752eSAndrew Rist * Unless required by applicable law or agreed to in writing, 14*bae3752eSAndrew Rist * software distributed under the License is distributed on an 15*bae3752eSAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*bae3752eSAndrew Rist * KIND, either express or implied. See the License for the 17*bae3752eSAndrew Rist * specific language governing permissions and limitations 18*bae3752eSAndrew Rist * under the License. 19*bae3752eSAndrew Rist * 20*bae3752eSAndrew Rist *************************************************************/ 21*bae3752eSAndrew Rist 22*bae3752eSAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir #ifndef _UNOTOOLS_NUMBERFORMATCODEWRAPPER_HXX 25cdf0e10cSrcweir #define _UNOTOOLS_NUMBERFORMATCODEWRAPPER_HXX 26cdf0e10cSrcweir 27cdf0e10cSrcweir #include <com/sun/star/i18n/XNumberFormatCode.hpp> 28cdf0e10cSrcweir #include "unotools/unotoolsdllapi.h" 29cdf0e10cSrcweir 30cdf0e10cSrcweir namespace com { namespace sun { namespace star { 31cdf0e10cSrcweir namespace lang { 32cdf0e10cSrcweir class XMultiServiceFactory; 33cdf0e10cSrcweir } 34cdf0e10cSrcweir }}} 35cdf0e10cSrcweir 36cdf0e10cSrcweir 37cdf0e10cSrcweir class UNOTOOLS_DLLPUBLIC NumberFormatCodeWrapper 38cdf0e10cSrcweir { 39cdf0e10cSrcweir ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > xSMgr; 40cdf0e10cSrcweir ::com::sun::star::uno::Reference< ::com::sun::star::i18n::XNumberFormatCode > xNFC; 41cdf0e10cSrcweir ::com::sun::star::lang::Locale aLocale; 42cdf0e10cSrcweir 43cdf0e10cSrcweir // not implemented, prevent usage 44cdf0e10cSrcweir NumberFormatCodeWrapper( const NumberFormatCodeWrapper& ); 45cdf0e10cSrcweir NumberFormatCodeWrapper& operator=( const NumberFormatCodeWrapper& ); 46cdf0e10cSrcweir 47cdf0e10cSrcweir public: 48cdf0e10cSrcweir NumberFormatCodeWrapper( 49cdf0e10cSrcweir const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & xSF, 50cdf0e10cSrcweir const ::com::sun::star::lang::Locale& rLocale 51cdf0e10cSrcweir ); 52cdf0e10cSrcweir 53cdf0e10cSrcweir ~NumberFormatCodeWrapper(); 54cdf0e10cSrcweir 55cdf0e10cSrcweir 56cdf0e10cSrcweir /// set a new Locale 57cdf0e10cSrcweir void setLocale( const ::com::sun::star::lang::Locale& rLocale ); 58cdf0e10cSrcweir 59cdf0e10cSrcweir /// get current Locale getLocale() const60cdf0e10cSrcweir const ::com::sun::star::lang::Locale& getLocale() const { return aLocale; } 61cdf0e10cSrcweir 62cdf0e10cSrcweir 63cdf0e10cSrcweir // Wrapper implementations of class NumberFormatCodeMapper 64cdf0e10cSrcweir 65cdf0e10cSrcweir ::com::sun::star::i18n::NumberFormatCode getDefault( sal_Int16 nFormatType, sal_Int16 nFormatUsage ) const; 66cdf0e10cSrcweir ::com::sun::star::i18n::NumberFormatCode getFormatCode( sal_Int16 nFormatIndex ) const; 67cdf0e10cSrcweir ::com::sun::star::uno::Sequence< ::com::sun::star::i18n::NumberFormatCode > getAllFormatCode( sal_Int16 nFormatUsage ) const; 68cdf0e10cSrcweir ::com::sun::star::uno::Sequence< ::com::sun::star::i18n::NumberFormatCode > getAllFormatCodes() const; 69cdf0e10cSrcweir 70cdf0e10cSrcweir }; 71cdf0e10cSrcweir 72cdf0e10cSrcweir #endif // _UNOTOOLS_NUMBERFORMATCODEWRAPPER_HXX 73