charcolumninterface.h

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
KDE Home | KDE Accessibility Home | Description of Access Keys