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 _I18N_TRANSLITERATION_TRANSLITERATION_NUMERIC_H_ 28 #define _I18N_TRANSLITERATION_TRANSLITERATION_NUMERIC_H_ 29 30 #include <transliteration_commonclass.hxx> 31 32 namespace com { namespace sun { namespace star { namespace i18n { 33 34 class transliteration_Numeric : public transliteration_commonclass { 35 public: 36 virtual ::rtl::OUString SAL_CALL 37 transliterate( const ::rtl::OUString& inStr, sal_Int32 startPos, sal_Int32 nCount, ::com::sun::star::uno::Sequence< sal_Int32 >& offset ) 38 throw(::com::sun::star::uno::RuntimeException); 39 40 virtual sal_Unicode SAL_CALL 41 transliterateChar2Char( sal_Unicode inChar) 42 throw(com::sun::star::i18n::MultipleCharsOutputException, 43 com::sun::star::uno::RuntimeException); 44 45 // Methods which are shared. 46 virtual sal_Int16 SAL_CALL getType( ) throw(::com::sun::star::uno::RuntimeException); 47 48 virtual ::rtl::OUString SAL_CALL 49 folding( const ::rtl::OUString& inStr, sal_Int32 startPos, sal_Int32 nCount, ::com::sun::star::uno::Sequence< sal_Int32 >& offset ) 50 throw(::com::sun::star::uno::RuntimeException); 51 52 virtual sal_Bool SAL_CALL 53 equals( const ::rtl::OUString& str1, sal_Int32 pos1, sal_Int32 nCount1, sal_Int32& nMatch1, const ::rtl::OUString& str2, sal_Int32 pos2, sal_Int32 nCount2, sal_Int32& nMatch2 ) 54 throw(::com::sun::star::uno::RuntimeException); 55 56 virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL 57 transliterateRange( const ::rtl::OUString& str1, const ::rtl::OUString& str2 ) 58 throw(::com::sun::star::uno::RuntimeException); 59 protected: 60 sal_Int16 nNativeNumberMode; 61 sal_Int16 tableSize; 62 sal_Unicode* table; 63 sal_Bool recycleSymbol; 64 private: 65 rtl::OUString SAL_CALL 66 transliterateBullet( const rtl::OUString& inStr, sal_Int32 startPos, sal_Int32 nCount, 67 com::sun::star::uno::Sequence< sal_Int32 >& offset ) 68 throw(com::sun::star::uno::RuntimeException); 69 }; 70 71 } } } } 72 73 #endif // _I18N_TRANSLITERATION_TRANSLITERATION_NUMERIC_H_ 74