File indexing completed on 2024-05-12 04:44:37

0001 /*
0002     Copyright (c) 2010 Kevin Funk <krf@electrostorm.net>
0003     Copyright (c) 2011 Casian Andrei <skeletk13@gmail.com>
0004 
0005     This library is free software; you can redistribute it and/or
0006     modify it under the terms of the GNU Lesser General Public
0007     License as published by the Free Software Foundation; either
0008     version 2.1 of the License, or (at your option) any later version.
0009 
0010     This library is distributed in the hope that it will be useful,
0011     but WITHOUT ANY WARRANTY; without even the implied warranty of
0012     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0013     Lesser General Public License for more details.
0014 
0015     You should have received a copy of the GNU Lesser General Public
0016     License along with this library.  If not, see <http://www.gnu.org/licenses/>.
0017 */
0018 
0019 #ifndef DEBUGPRIVATE_H
0020 #define DEBUGPRIVATE_H
0021 
0022 #include "debug.h"
0023 
0024 #include <QtCore/QString>
0025 #include <QIODevice>
0026 
0027 class IndentPrivate
0028     : public QObject
0029 {
0030 private:
0031     explicit IndentPrivate(QObject* parent = 0);
0032 
0033 public:
0034     static IndentPrivate* instance();
0035 
0036     QString m_string;
0037 };
0038 
0039 /*
0040  * From kdelibs/kdecore/io
0041  */
0042 class NoDebugStream: public QIODevice
0043 {
0044     // Q_OBJECT
0045 public:
0046     NoDebugStream() { open(WriteOnly); }
0047     bool isSequential() const { return true; }
0048     qint64 readData(char *, qint64) { return 0; /* eof */ }
0049     qint64 readLineData(char *, qint64) { return 0; /* eof */ }
0050     qint64 writeData(const char *, qint64 len) { return len; }
0051 } devnull;
0052 
0053 QDebug nullDebug()
0054 {
0055     return QDebug(&devnull);
0056 }
0057 
0058 #endif // DEBUGPRIVATE_H