diff options
Diffstat (limited to 'tqtinterface/qt4/src/codecs/tqfontjpcodec.cpp')
| -rw-r--r-- | tqtinterface/qt4/src/codecs/tqfontjpcodec.cpp | 223 |
1 files changed, 0 insertions, 223 deletions
diff --git a/tqtinterface/qt4/src/codecs/tqfontjpcodec.cpp b/tqtinterface/qt4/src/codecs/tqfontjpcodec.cpp deleted file mode 100644 index d095fb6..0000000 --- a/tqtinterface/qt4/src/codecs/tqfontjpcodec.cpp +++ /dev/null @@ -1,223 +0,0 @@ -/**************************************************************************** -** -** Japanese Font utilities for X11 -** -** Created : 20010130 -** -** Copyright (C) 2010 Timothy Pearson and (C) 1992-2008 Trolltech ASA. -** -** This file is part of the tools module of the TQt GUI Toolkit. -** -** This file may be used under the terms of the GNU General -** Public License versions 2.0 or 3.0 as published by the Free -** Software Foundation and appearing in the files LICENSE.GPL2 -** and LICENSE.GPL3 included in the packaging of this file. -** Alternatively you may (at your option) use any later version -** of the GNU General Public License if such license has been -** publicly approved by Trolltech ASA (or its successors, if any) -** and the KDE Free TQt Foundation. -** -** Please review the following information to ensure GNU General -** Public Licensing requirements will be met: -** http://trolltech.com/products/qt/licenses/licensing/opensource/. -** If you are unsure which license is appropriate for your use, please -** review the following information: -** http://trolltech.com/products/qt/licenses/licensing/licensingoverview -** or contact the sales department at sales@trolltech.com. -** -** This file may be used under the terms of the Q Public License as -** defined by Trolltech ASA and appearing in the file LICENSE.TQPL -** included in the packaging of this file. Licensees holding valid TQt -** Commercial licenses may use this file in accordance with the TQt -** Commercial License Agreement provided with the Software. -** -** This file is provided "AS IS" with NO WARRANTY OF ANY KIND, -** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted -** herein. -** -**********************************************************************/ - -#include "private/tqfontcodecs_p.h" - -#ifndef TQT_NO_CODECS -#ifndef TQT_NO_BIG_CODECS -#include "tqjpunicode.h" - - -// JIS X 0201 - -TQFontJis0201Codec::TQFontJis0201Codec() -{ -} - -const char *TQFontJis0201Codec::name() const -{ - return "jisx0201*-0"; -} - -int TQFontJis0201Codec::mibEnum() const -{ - return 15; -} - -unsigned short -TQFontJis0201Codec::characterFromUnicode(const TQString &str, int pos) const -{ - const TQChar *c = str.tqunicode() + pos; - if ( c->tqunicode() < 0x80 ) - return c->tqunicode(); - if ( c->tqunicode() >= 0xff61 && c->tqunicode() <= 0xff9f ) - return c->tqunicode() - 0xff61 + 0xa1; - return 0; -} - -TQCString TQFontJis0201Codec::fromUnicode(const TQString& uc, int& lenInOut ) const -{ - TQCString rstring( lenInOut+1 ); - uchar *rdata = (uchar *) rstring.data(); - const TQChar *sdata = uc.tqunicode(); - int i = 0; - for ( ; i < lenInOut; ++i, ++sdata, ++rdata ) { - if ( sdata->tqunicode() < 0x80 ) { - *rdata = (uchar) sdata->tqunicode(); - } else if ( sdata->tqunicode() >= 0xff61 && sdata->tqunicode() <= 0xff9f ) { - *rdata = (uchar) (sdata->tqunicode() - 0xff61 + 0xa1); - } else { - *rdata = '?'; - } - } - *rdata = 0u; - return rstring; -} - -void TQFontJis0201Codec::fromUnicode(const TQChar *in, unsigned short *out, int length) const -{ - while (length--) { - if ( in->tqunicode() < 0x80 ) { - *out = (uchar) in->tqunicode(); - } else if ( in->tqunicode() >= 0xff61 && in->tqunicode() <= 0xff9f ) { - *out = (uchar) (in->tqunicode() - 0xff61 + 0xa1); - } else { - *out = 0; - } - - ++in; - ++out; - } -} - -int TQFontJis0201Codec::heuristicNameMatch(const char* hint) const -{ - if ( tqstrncmp( hint, "jisx0201", 8 ) == 0 ) - return 20; - return -1; - -} - -bool TQFontJis0201Codec::canEncode( TQChar ch ) const -{ - return ( ch.tqunicode() < 0x80 || ( ch.tqunicode() >= 0xff61 && - ch.tqunicode() <= 0xff9f ) ); -} - -int TQFontJis0201Codec::heuristicContentMatch(const char *, int) const -{ - return 0; -} - - -// JIS X 0208 - -int TQFontJis0208Codec::heuristicContentMatch(const char *, int) const -{ - return 0; -} - - -int TQFontJis0208Codec::heuristicNameMatch(const char *hint) const -{ - if ( tqstrncmp( hint, "jisx0208.", 9 ) == 0 ) - return 20; - return -1; -} - -TQFontJis0208Codec::TQFontJis0208Codec() -{ - convJP = TQJpUnicodeConv::newConverter(TQJpUnicodeConv::Default); -} - - -TQFontJis0208Codec::~TQFontJis0208Codec() -{ - delete convJP; - convJP = 0; -} - - -const char* TQFontJis0208Codec::name() const -{ - return "jisx0208*-0"; -} - - -int TQFontJis0208Codec::mibEnum() const -{ - return 63; -} - - -TQString TQFontJis0208Codec::toUnicode(const char* /*chars*/, int /*len*/) const -{ - return TQString::null; -} - -unsigned short TQFontJis0208Codec::characterFromUnicode(const TQString &str, int pos) const -{ - return convJP->tqunicodeToJisx0208((str.tqunicode() + pos)->tqunicode()); -} - -TQCString TQFontJis0208Codec::fromUnicode(const TQString& uc, int& lenInOut ) const -{ - TQCString result(lenInOut * 2 + 1); - uchar *rdata = (uchar *) result.data(); - const TQChar *ucp = uc.tqunicode(); - - for ( int i = 0; i < lenInOut; i++ ) { - TQChar ch(*ucp++); - ch = convJP->tqunicodeToJisx0208(ch.tqunicode()); - - if ( ! ch.isNull() ) { - *rdata++ = ch.row(); - *rdata++ = ch.cell(); - } else { - //white square - *rdata++ = 0x22; - *rdata++ = 0x22; - } - } - - lenInOut *= 2; - - return result; -} - -void TQFontJis0208Codec::fromUnicode(const TQChar *in, unsigned short *out, int length) const -{ - while (length--) { - *out++ = convJP->tqunicodeToJisx0208(in->tqunicode()); - ++in; - } -} - - -bool TQFontJis0208Codec::canEncode( TQChar ch ) const -{ - return ( convJP->tqunicodeToJisx0208(ch.tqunicode()) != 0 ); -} - - - - -#endif // TQT_NO_BIG_CODECS -#endif // TQT_NO_CODECS |
