From f2387ffad043abb62a8de8b0f36d431287811783 Mon Sep 17 00:00:00 2001 From: Eike Rathke Date: Wed, 27 Mar 2002 23:35:49 +0000 Subject: [PATCH] #97583# move ambiguously (for Windoze) named files --- i18npool/inc/indexentrysupplier_asian.hxx | 118 ++++++++++++++++++ i18npool/inc/indexentrysupplier_default.hxx | 85 +++++++++++++ .../indexentry/indexentrysupplier_asian.cxx | 77 ++++++++++++ .../indexentry/indexentrysupplier_default.cxx | 75 +++++++++++ .../registerservices/registerservices.cxx | 10 +- 5 files changed, 360 insertions(+), 5 deletions(-) create mode 100644 i18npool/inc/indexentrysupplier_asian.hxx create mode 100644 i18npool/inc/indexentrysupplier_default.hxx create mode 100644 i18npool/source/indexentry/indexentrysupplier_asian.cxx create mode 100644 i18npool/source/indexentry/indexentrysupplier_default.cxx diff --git a/i18npool/inc/indexentrysupplier_asian.hxx b/i18npool/inc/indexentrysupplier_asian.hxx new file mode 100644 index 000000000000..cc3b8b1422c2 --- /dev/null +++ b/i18npool/inc/indexentrysupplier_asian.hxx @@ -0,0 +1,118 @@ +/************************************************************************* + * + * $RCSfile: indexentrysupplier_asian.hxx,v $ + * + * $Revision: 1.1 $ + * + * last change: $Author: er $ $Date: 2002-03-28 00:32:21 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _I18N_INDEXENTRYSUPPLIER_CJK_HXX_ +#define _I18N_INDEXENTRYSUPPLIER_CJK_HXX_ + +#include + +namespace com { namespace sun { namespace star { namespace i18n { + +// ---------------------------------------------------- +// class IndexEntrySupplier_CJK +// ---------------------------------------------------- + +class IndexEntrySupplier_CJK : public IndexEntrySupplier { +public: + IndexEntrySupplier_CJK () { + implementationName = "com.sun.star.i18n.IndexEntrySupplier_CJK"; + }; + ~IndexEntrySupplier_CJK () {}; + + virtual rtl::OUString SAL_CALL getIndexString( const rtl::OUString & IndexEntry, const sal_Unicode idxStr[], + const sal_uInt16 idx1[], const sal_uInt16 idx2[]) throw (com::sun::star::uno::RuntimeException); +}; + +#define INDEXENTRYSUPPLIER_CJK( algorithm ) \ +class IndexEntrySupplier_##algorithm : public IndexEntrySupplier_CJK {\ +public:\ + IndexEntrySupplier_##algorithm () {\ + implementationName = "com.sun.star.i18n.IndexEntrySupplier_##algorithm";\ + };\ + virtual rtl::OUString SAL_CALL getIndexCharacter( const rtl::OUString& rIndexEntry,\ + const com::sun::star::lang::Locale& rLocale, const rtl::OUString& rSortAlgorithm ) throw (com::sun::star::uno::RuntimeException);\ +}; + +#if defined( INDEXENTRYSUPPLIER_zh_pinyin ) || defined( INDEXENTRYSUPPLIER_ALL ) +INDEXENTRYSUPPLIER_CJK( zh_pinyin ) +#endif +#if defined( INDEXENTRYSUPPLIER_zh_stroke ) || defined( INDEXENTRYSUPPLIER_ALL ) +INDEXENTRYSUPPLIER_CJK( zh_stroke ) +#endif +#if defined( INDEXENTRYSUPPLIER_zh_radical ) || defined( INDEXENTRYSUPPLIER_ALL ) +INDEXENTRYSUPPLIER_CJK( zh_radical ) +#endif +#if defined( INDEXENTRYSUPPLIER_zh_zhuyin ) || defined( INDEXENTRYSUPPLIER_ALL ) +INDEXENTRYSUPPLIER_CJK( zh_zhuyin ) +#endif +#if defined( INDEXENTRYSUPPLIER_zh_TW_radical ) || defined( INDEXENTRYSUPPLIER_ALL ) +INDEXENTRYSUPPLIER_CJK( zh_TW_radical ) +#endif +#if defined( INDEXENTRYSUPPLIER_zh_TW_stroke ) || defined( INDEXENTRYSUPPLIER_ALL ) +INDEXENTRYSUPPLIER_CJK( zh_TW_stroke ) +#endif +#if defined( INDEXENTRYSUPPLIER_ko_dict ) || defined( INDEXENTRYSUPPLIER_ALL ) +INDEXENTRYSUPPLIER_CJK( ko_dict ) +#endif +#undef INDEXENTRYSUPPLIER_CJK + +} } } } +#endif diff --git a/i18npool/inc/indexentrysupplier_default.hxx b/i18npool/inc/indexentrysupplier_default.hxx new file mode 100644 index 000000000000..c4f8d32519bc --- /dev/null +++ b/i18npool/inc/indexentrysupplier_default.hxx @@ -0,0 +1,85 @@ +/************************************************************************* + * + * $RCSfile: indexentrysupplier_default.hxx,v $ + * + * $Revision: 1.1 $ + * + * last change: $Author: er $ $Date: 2002-03-28 00:32:33 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _I18N_INDEXENTRYSUPPLIER_UNICODE_HXX_ +#define _I18N_INDEXENTRYSUPPLIER_UNICODE_HXX_ + +#include + +namespace com { namespace sun { namespace star { namespace i18n { + +// ---------------------------------------------------- +// class IndexEntrySupplier_Unicode +// ---------------------------------------------------- + +class IndexEntrySupplier_Unicode : public IndexEntrySupplier { +public: + IndexEntrySupplier_Unicode () { + implementationName = "com.sun.star.i18n.IndexEntrySupplier_Unicode"; + }; + ~IndexEntrySupplier_Unicode () {}; + + virtual rtl::OUString SAL_CALL getIndexCharacter( const rtl::OUString& rIndexEntry, + const com::sun::star::lang::Locale& rLocale, const rtl::OUString& rSortAlgorithm ) throw (com::sun::star::uno::RuntimeException); +}; + +} } } } +#endif diff --git a/i18npool/source/indexentry/indexentrysupplier_asian.cxx b/i18npool/source/indexentry/indexentrysupplier_asian.cxx new file mode 100644 index 000000000000..7f6e57eee7b4 --- /dev/null +++ b/i18npool/source/indexentry/indexentrysupplier_asian.cxx @@ -0,0 +1,77 @@ +/************************************************************************* + * + * $RCSfile: indexentrysupplier_asian.cxx,v $ + * + * $Revision: 1.1 $ + * + * last change: $Author: er $ $Date: 2002-03-28 00:31:18 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#include +#include + +namespace com { namespace sun { namespace star { namespace i18n { + +rtl::OUString SAL_CALL IndexEntrySupplier_CJK::getIndexString( const rtl::OUString & rIndexEntry, + const sal_Unicode CJK_idxStr[], const sal_uInt16 idx1[], const sal_uInt16 idx2[]) + throw (com::sun::star::uno::RuntimeException) { + sal_uInt16 ch = *(rIndexEntry.getStr()), first = idx1[ ch >> 8 ]; + return first == 0xFFFF ? + // using alphanumeric index for non-define stirng + rtl::OUString(&idxStr[(ch & 0xFF00) ? 0 : ch], 1) : + rtl::OUString(&CJK_idxStr[idx2[ first + (ch & 0xff) ]]); +} + +} } } } diff --git a/i18npool/source/indexentry/indexentrysupplier_default.cxx b/i18npool/source/indexentry/indexentrysupplier_default.cxx new file mode 100644 index 000000000000..f7762474be83 --- /dev/null +++ b/i18npool/source/indexentry/indexentrysupplier_default.cxx @@ -0,0 +1,75 @@ +/************************************************************************* + * + * $RCSfile: indexentrysupplier_default.cxx,v $ + * + * $Revision: 1.1 $ + * + * last change: $Author: er $ $Date: 2002-03-28 00:31:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#include +#include +#include + +namespace com { namespace sun { namespace star { namespace i18n { + +rtl::OUString SAL_CALL IndexEntrySupplier_Unicode::getIndexCharacter( const rtl::OUString& rIndexEntry, + const lang::Locale& rLocale, const rtl::OUString& rSortAlgorithm ) throw (com::sun::star::uno::RuntimeException) { + sal_uInt16 ch = *(rIndexEntry.getStr()); + sal_uInt16 address = idx[ch >> 8]; + return rtl::OUString((address != 0xFFFF ? &idxStr[address + (ch & 0xFF)] : &ch), 1); +} + +} } } } diff --git a/i18npool/source/registerservices/registerservices.cxx b/i18npool/source/registerservices/registerservices.cxx index ffe922e8587f..6c2df856a63e 100644 --- a/i18npool/source/registerservices/registerservices.cxx +++ b/i18npool/source/registerservices/registerservices.cxx @@ -2,9 +2,9 @@ * * $RCSfile: registerservices.cxx,v $ * - * $Revision: 1.6 $ + * $Revision: 1.7 $ * - * last change: $Author: bustamam $ $Date: 2002-03-26 12:58:41 $ + * last change: $Author: er $ $Date: 2002-03-28 00:35:49 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -106,9 +106,9 @@ #define INDEXENTRYSUPPLIER_ALL #include -#include -#include -#include +#include +#include +#include #define CCLASS_ALL #include