X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=devtools.cpp;h=97ec06c545cfffbdd9083a1a8a4a6247d14ef639;hb=3c911546d4367fa1da0a21c70872159a1044a170;hp=84fa2ca514ddeefa94ab133b6056ef615eb66b5c;hpb=36a875cc735d49f85f02a325c915979863d2b063;p=dorian diff --git a/devtools.cpp b/devtools.cpp index 84fa2ca..97ec06c 100644 --- a/devtools.cpp +++ b/devtools.cpp @@ -1,39 +1,25 @@ #include -#include #include "devtools.h" #include "trace.h" #include "settings.h" #include "toolbuttonbox.h" +#include "bookdb.h" +#include "platform.h" -DevTools::DevTools(QWidget *parent): - QDialog(parent, Qt::Dialog | Qt::WindowTitleHint | - Qt::CustomizeWindowHint | Qt::WindowCloseButtonHint) +DevTools::DevTools(QWidget *parent): Dyalog(parent, false) { setWindowTitle(tr("Developer")); - QScrollArea *scroller = new QScrollArea(this); - scroller->setFrameStyle(QFrame::NoFrame); -#ifdef Q_WS_MAEMO_5 - scroller->setProperty("FingerScrollable", true); - scroller->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); -#else - scroller->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); - setSizeGripEnabled(true); -#endif // Q_WS_MAEMO_5 - scroller->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); - - QWidget *contents = new QWidget(scroller); - QVBoxLayout *layout = new QVBoxLayout(contents); + addWidget(new QLabel(tr("Qt API version %1").arg(QT_VERSION_STR), this)); + addWidget(new QLabel(tr("Qt runtime version %1").arg(qVersion()), this)); QPushButton *clearSettings = new QPushButton("Clear persistent data", this); connect(clearSettings, SIGNAL(clicked()), this, SLOT(onClear())); - layout->addWidget(clearSettings); - - QLabel *level = new QLabel(tr("Trace level:"), contents); - layout->addWidget(level); + addWidget(clearSettings); + addWidget(new QLabel(tr("Trace level:"), this)); ToolButtonBox *box = new ToolButtonBox(this); - layout->addWidget(box); + addWidget(box); box->addButton(QtDebugMsg, tr("Debug")); box->addButton(QtWarningMsg, tr("Warning")); box->addButton(QtCriticalMsg, tr("Critical")); @@ -42,31 +28,37 @@ DevTools::DevTools(QWidget *parent): connect(box, SIGNAL(buttonClicked(int)), this, SLOT(onLevelButtonClicked(int))); - contents->setLayout(layout); - scroller->setWidget(contents); + QCheckBox *traceToFile = new QCheckBox(tr("Trace to file"), this); + addWidget(traceToFile); + traceToFile->setChecked(!Trace::fileName().isEmpty()); + connect(traceToFile, SIGNAL(toggled(bool)), + this, SLOT(onTraceToFileToggled(bool))); - QHBoxLayout *dialogLayout = new QHBoxLayout(); - dialogLayout->addWidget(scroller); - setLayout(dialogLayout); + addStretch(); } void DevTools::onClear() { if (QMessageBox::Yes == - QMessageBox::question(this, "Clear persistent data?", - "Library and settings data will be cleared, " - "application will be restarted. Continue?", - QMessageBox::Yes -#ifndef Q_WS_MAEMO_5 - , QMessageBox::No -#endif - )) { + QMessageBox::question(this, tr("Clear persistent data"), + tr("Library and settings will be cleared, " + "application will be restarted. Continue?"), + QMessageBox::Yes | QMessageBox::No)) { QSettings().clear(); + BookDb::instance()->removeAll(); QApplication::exit(1000); } } -void DevTools::onLevelButtonClicked(int level) { +void DevTools::onLevelButtonClicked(int level) +{ Trace::level = (QtMsgType)level; Settings::instance()->setValue("tracelevel", level); } + +void DevTools::onTraceToFileToggled(bool enable) +{ + QString name = enable? Platform::instance()->traceFileName(): QString(); + Trace::setFileName(name); + Settings::instance()->setValue("tracefilename", name); +}