diff options
Diffstat (limited to 'qtinterface/interface_tqt3/tqtranslator.h')
-rw-r--r-- | qtinterface/interface_tqt3/tqtranslator.h | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/qtinterface/interface_tqt3/tqtranslator.h b/qtinterface/interface_tqt3/tqtranslator.h new file mode 100644 index 0000000..98064e4 --- /dev/null +++ b/qtinterface/interface_tqt3/tqtranslator.h @@ -0,0 +1,96 @@ +/* + +Copyright (C) 2010 Timothy Pearson <[email protected]> + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public +License as published by the Free Software Foundation; either +version 2 of the License, or (at your option) any later version. + +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 +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public License +along with this library; see the file COPYING.LIB. If not, write to +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +Boston, MA 02110-1301, USA. + +*/ + +#ifndef TQT_TQTRANSLATOR_H +#define TQT_TQTRANSLATOR_H + +#include <tqt.h> + +#ifdef USE_QT3 + +// Reimplement the QTranslator class +// For Qt3, no changes are needed + +#include <ntqtranslator.h> + +#endif // USE_QT3 + +#ifdef USE_QT4 + +// Reimplement the QTranslator class +// For Qt4, some changes are needed + +#include <Qt/ntqtranslator.h> + +//class Q_EXPORT QTranslatorMessage +class QTranslatorMessage +{ +public: + QTranslatorMessage(); + QTranslatorMessage( const char * context, + const char * sourceText, + const char * comment, + const QString& translation = QString::null ); + QTranslatorMessage( QDataStream & ); + QTranslatorMessage( const QTranslatorMessage & m ); + + QTranslatorMessage & operator=( const QTranslatorMessage & m ); + + uint hash() const { return h; } + const char *context() const { return cx; } + const char *sourceText() const { return st; } + const char *comment() const { return cm; } + + void setTranslation( const QString & translation ) { tn = translation; } + QString translation() const { return tn; } + + enum Prefix { NoPrefix, Hash, HashContext, HashContextSourceText, + HashContextSourceTextComment }; + void write( QDataStream & s, bool strip = FALSE, + Prefix prefix = HashContextSourceTextComment ) const; + Prefix commonPrefix( const QTranslatorMessage& ) const; + + bool operator==( const QTranslatorMessage& m ) const; + bool operator!=( const QTranslatorMessage& m ) const + { return !operator==( m ); } + bool operator<( const QTranslatorMessage& m ) const; + bool operator<=( const QTranslatorMessage& m ) const + { return !m.operator<( *this ); } + bool operator>( const QTranslatorMessage& m ) const + { return m.operator<( *this ); } + bool operator>=( const QTranslatorMessage& m ) const + { return !operator<( m ); } + +private: + uint h; + Q3CString cx; + Q3CString st; + Q3CString cm; + QString tn; + + enum Tag { Tag_End = 1, Tag_SourceText16, Tag_Translation, Tag_Context16, + Tag_Hash, Tag_SourceText, Tag_Context, Tag_Comment, + Tag_Obsolete1 }; +}; + +#endif // USE_QT4 + +#endif /* TQT_TQTRANSLATOR_H */
\ No newline at end of file |