Add information about supported musepack streamversion to manual.
[kugel-rb.git] / rbutil / rbutilqt / systrace.cpp
blob1aed5c05b569fd92d25faad2c904d0f30cbd74cf
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
9 * Copyright (C) 2007 by Dominik Riebeling
10 * $Id$
12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement.
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
18 ****************************************************************************/
20 #include <QtGui>
21 #include "systrace.h"
22 #include "ui_systracefrm.h"
25 QString SysTrace::debugbuffer;
27 SysTrace::SysTrace(QWidget *parent) : QDialog(parent)
29 ui.setupUi(this);
30 ui.textTrace->setReadOnly(true);
31 ui.textTrace->setLayoutDirection(Qt::LeftToRight);
32 refresh();
34 connect(ui.buttonClose, SIGNAL(clicked()), this, SLOT(close()));
35 connect(ui.buttonSave, SIGNAL(clicked()), this, SLOT(save()));
36 connect(ui.buttonRefresh, SIGNAL(clicked()), this, SLOT(refresh()));
39 void SysTrace::refresh(void)
41 int pos = ui.textTrace->verticalScrollBar()->value();
42 ui.textTrace->setHtml("<pre>" + debugbuffer + "</pre>");
43 ui.textTrace->verticalScrollBar()->setValue(pos);
46 void SysTrace::save(void)
48 QString fp = QFileDialog::getSaveFileName(this, tr("Save system trace log"),
49 QDir::homePath(), "*.log");
50 if(fp == "")
51 return;
53 QFile fh(fp);
54 if(!fh.open(QIODevice::WriteOnly))
55 return;
56 fh.write(debugbuffer.toUtf8(), debugbuffer.size());
57 fh.close();
60 void SysTrace::debug(QtMsgType type, const char* msg)
62 (void)type;
63 debugbuffer.append(msg);
64 debugbuffer.append("\n");
65 #if !defined(NODEBUG)
66 fprintf(stderr, "%s\n", msg);
67 #endif