diff options
Diffstat (limited to 'qtinterface/tqt4/Qt/qtextcodec.h')
-rw-r--r-- | qtinterface/tqt4/Qt/qtextcodec.h | 205 |
1 files changed, 0 insertions, 205 deletions
diff --git a/qtinterface/tqt4/Qt/qtextcodec.h b/qtinterface/tqt4/Qt/qtextcodec.h deleted file mode 100644 index 100b50c..0000000 --- a/qtinterface/tqt4/Qt/qtextcodec.h +++ /dev/null @@ -1,205 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** Commercial Usage -** Licensees holding valid Qt Commercial licenses may use this file in -** accordance with the Qt Commercial License Agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Nokia. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3.0 as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU General Public License version 3.0 requirements will be -** met: http://www.gnu.org/copyleft/gpl.html. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QTEXTCODEC_H -#define QTEXTCODEC_H - -#include <QtCore/qstring.h> -#include <QtCore/qlist.h> - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Core) - -#ifndef QT_NO_TEXTCODEC - -class QTextCodec; -class QIODevice; - -class QTextDecoder; -class QTextEncoder; - -class Q_CORE_EXPORT QTextCodec -{ - Q_DISABLE_COPY(QTextCodec) -public: - static QTextCodec* codecForName(const QByteArray &name); - static QTextCodec* codecForName(const char *name) { return codecForName(QByteArray(name)); } - static QTextCodec* codecForMib(int mib); - - static QList<QByteArray> availableCodecs(); - static QList<int> availableMibs(); - - static QTextCodec* codecForLocale(); - static void setCodecForLocale(QTextCodec *c); - - static QTextCodec* codecForTr(); - static void setCodecForTr(QTextCodec *c); - - static QTextCodec* codecForCStrings(); - static void setCodecForCStrings(QTextCodec *c); - - static QTextCodec *codecForHtml(const QByteArray &ba); - static QTextCodec *codecForHtml(const QByteArray &ba, QTextCodec *defaultCodec); - - static QTextCodec *codecForUtfText(const QByteArray &ba); - static QTextCodec *codecForUtfText(const QByteArray &ba, QTextCodec *defaultCodec); - - QTextDecoder* makeDecoder() const; - QTextEncoder* makeEncoder() const; - - bool canEncode(QChar) const; - bool canEncode(const QString&) const; - - QString toUnicode(const QByteArray&) const; - QString toUnicode(const char* chars) const; - QByteArray fromUnicode(const QString& uc) const; - enum ConversionFlag { - DefaultConversion, - ConvertInvalidToNull = 0x80000000, - IgnoreHeader = 0x1, - FreeFunction = 0x2 - }; - Q_DECLARE_FLAGS(ConversionFlags, ConversionFlag) - - struct Q_CORE_EXPORT ConverterState { - ConverterState(ConversionFlags f = DefaultConversion) - : flags(f), remainingChars(0), invalidChars(0), d(0) { state_data[0] = state_data[1] = state_data[2] = 0; } - ~ConverterState(); - ConversionFlags flags; - int remainingChars; - int invalidChars; - uint state_data[3]; - void *d; - private: - Q_DISABLE_COPY(ConverterState) - }; - - QString toUnicode(const char *in, int length, ConverterState *state = 0) const - { return convertToUnicode(in, length, state); } - QByteArray fromUnicode(const QChar *in, int length, ConverterState *state = 0) const - { return convertFromUnicode(in, length, state); } - - virtual QByteArray name() const = 0; - virtual QList<QByteArray> aliases() const; - virtual int mibEnum() const = 0; - virtual int heuristicNameMatch(const char* hint) const; - -#ifndef QT_NO_CODECS - static QTextCodec* loadCharmap(QIODevice*); - static QTextCodec* loadCharmapFile(QString filename); -#endif //QT_NO_CODECS - -protected: - virtual QString convertToUnicode(const char *in, int length, ConverterState *state) const = 0; - virtual QByteArray convertFromUnicode(const QChar *in, int length, ConverterState *state) const = 0; - - static int simpleHeuristicNameMatch(const char* name, const char* hint); - - QTextCodec(); - virtual ~QTextCodec(); - -public: -#ifdef QT3_SUPPORT - static QT3_SUPPORT QTextCodec* codecForContent(const char*, int) { return 0; } - static QT3_SUPPORT const char* locale(); - static QT3_SUPPORT QTextCodec* codecForName(const char* hint, int) { return codecForName(QByteArray(hint)); } - QT3_SUPPORT QByteArray fromUnicode(const QString& uc, int& lenInOut) const; - QT3_SUPPORT QString toUnicode(const QByteArray&, int len) const; - QT3_SUPPORT QByteArray mimeName() const { return name(); } - static QT3_SUPPORT QTextCodec *codecForIndex(int i) { return codecForName(availableCodecs().value(i)); } -#endif - -private: - friend class QTextCodecCleanup; - static QTextCodec *cftr; -}; -Q_DECLARE_OPERATORS_FOR_FLAGS(QTextCodec::ConversionFlags) - -inline QTextCodec* QTextCodec::codecForTr() { return cftr; } -inline void QTextCodec::setCodecForTr(QTextCodec *c) { cftr = c; } -inline QTextCodec* QTextCodec::codecForCStrings() { return QString::codecForCStrings; } -inline void QTextCodec::setCodecForCStrings(QTextCodec *c) { QString::codecForCStrings = c; } - -class Q_CORE_EXPORT QTextEncoder { - Q_DISABLE_COPY(QTextEncoder) -public: - explicit QTextEncoder(const QTextCodec *codec) : c(codec), state() {} - ~QTextEncoder(); - QByteArray fromUnicode(const QString& str); - QByteArray fromUnicode(const QChar *uc, int len); -#ifdef QT3_SUPPORT - QT3_SUPPORT QByteArray fromUnicode(const QString& uc, int& lenInOut); -#endif - bool hasFailure() const; -private: - const QTextCodec *c; - QTextCodec::ConverterState state; - - friend class QXmlStreamWriter; - friend class QXmlStreamWriterPrivate; - friend class QCoreXmlStreamWriter; - friend class QCoreXmlStreamWriterPrivate; -}; - -class Q_CORE_EXPORT QTextDecoder { - Q_DISABLE_COPY(QTextDecoder) -public: - explicit QTextDecoder(const QTextCodec *codec) : c(codec), state() {} - ~QTextDecoder(); - QString toUnicode(const char* chars, int len); - QString toUnicode(const QByteArray &ba); - void toUnicode(QString *target, const char *chars, int len); - bool hasFailure() const; -private: - const QTextCodec *c; - QTextCodec::ConverterState state; -}; - -#endif // QT_NO_TEXTCODEC - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QTEXTCODEC_H |