KDTextDocument.h

Go to the documentation of this file.
00001 /****************************************************************************
00002 ** Copyright (C) 2001-2010 Klaralvdalens Datakonsult AB.  All rights reserved.
00003 **
00004 ** This file is part of the KD Chart library.
00005 **
00006 ** Licensees holding valid commercial KD Chart licenses may use this file in
00007 ** accordance with the KD Chart Commercial License Agreement provided with
00008 ** the Software.
00009 **
00010 **
00011 ** This file may be distributed and/or modified under the terms of the
00012 ** GNU General Public License version 2 and version 3 as published by the
00013 ** Free Software Foundation and appearing in the file LICENSE.GPL included.
00014 **
00015 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00016 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00017 **
00018 ** Contact info@kdab.com if any conditions of this licensing are not
00019 ** clear to you.
00020 **
00021 **********************************************************************/
00022 
00023 #ifndef KDTEXTDOCUMENT_H
00024 #define KDTEXTDOCUMENT_H
00025 
00026 //
00027 //  W A R N I N G
00028 //  -------------
00029 //
00030 // This file is not part of the KD Chart API.  It exists purely as an
00031 // implementation detail.  This header file may change from version to
00032 // version without notice, or even be removed.
00033 //
00034 // We mean it.
00035 //
00036 
00037 #include <QTextDocument>
00038 #include <QSize>
00039 
00044 class KDTextDocument : public QTextDocument
00045 {
00046     Q_OBJECT
00047 
00048 public:
00049     explicit KDTextDocument( QObject* parent = 0 );
00050     explicit KDTextDocument( const QString& text, QObject* parent = 0 );
00051     ~KDTextDocument();
00052 
00053     QSize sizeHint();
00054     QSize minimumSizeHint();
00055 
00056 private:
00057     QSize sizeForWidth( int width );
00058 
00059 private:
00060     bool mHintValid;
00061     QSize mSizeHint;
00062     QSize mMinimumSizeHint;
00063 };
00064 
00065 
00066 #endif /* KDTEXTDOCUMENT_H */
00067