interfaces
charcolumninterface.h
Go to the documentation of this file.00001 /*************************************************************************** 00002 charcolumninterface.h - description 00003 ------------------- 00004 begin : Fri Sep 12 2003 00005 copyright : (C) 2003 by Friedrich W. H. Kossebau 00006 email : Friedrich.W.H@Kossebau.de 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This library is free software; you can redistribute it and/or * 00012 * modify it under the terms of the GNU Library General Public * 00013 * License version 2 as published by the Free Software Foundation. * 00014 * * 00015 ***************************************************************************/ 00016 00017 00018 #ifndef CHARCOLUMNINTERFACE_H 00019 #define CHARCOLUMNINTERFACE_H 00020 00021 #include <qstring.h> 00022 00023 namespace KHE 00024 { 00025 00033 class CharColumnInterface 00034 { 00035 public: 00037 enum KEncoding 00038 { 00040 LocalEncoding=0, 00042 ISO8859_1Encoding=1, 00044 CECP1047Encoding=2, 00046 MaxEncodingId=0xFFFF 00047 }; 00048 00049 public: // set methods 00056 virtual void setShowUnprintable( bool SU = true ) = 0; 00062 virtual void setSubstituteChar( QChar SC ) = 0; 00069 virtual void setEncoding( KEncoding C ) = 0; 00070 00071 00072 public: // get methods 00077 virtual bool showUnprintable() const = 0; 00081 virtual QChar substituteChar() const = 0; 00085 virtual KEncoding encoding() const = 0; 00086 }; 00087 00088 00094 template<class T> 00095 CharColumnInterface *charColumnInterface( T *t ) 00096 { 00097 if( !t ) 00098 return 0; 00099 00100 return static_cast<CharColumnInterface*>( t->qt_cast("KHE::CharColumnInterface") ); 00101 } 00102 00103 } 00104 00105 #endif