GUI: add a gui for the trace log in SimpleTraceDialog
This commit is contained in:
parent
24cb79324e
commit
0f94a5886a
|
@ -10,7 +10,7 @@ BrowseDialog::BrowseDialog(QWidget* parent, const QString & title, const QString
|
|||
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint | Qt::MSWindowsFixedSizeDialogHint);
|
||||
setWindowTitle(title);
|
||||
ui->label->setText(text);
|
||||
ui->lineEdit->setText(defaultPath);
|
||||
ui->lineEdit->setText(QDir::toNativeSeparators(defaultPath));
|
||||
}
|
||||
|
||||
BrowseDialog::~BrowseDialog()
|
||||
|
|
|
@ -62,6 +62,9 @@
|
|||
<property name="text">
|
||||
<string>&OK</string>
|
||||
</property>
|
||||
<property name="default">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
#include "ui_SimpleTraceDialog.h"
|
||||
#include "Bridge.h"
|
||||
#include <QMessageBox>
|
||||
#include "BrowseDialog.h"
|
||||
|
||||
SimpleTraceDialog::SimpleTraceDialog(QWidget* parent) :
|
||||
QDialog(parent),
|
||||
|
@ -60,6 +61,11 @@ void SimpleTraceDialog::on_btnOk_clicked()
|
|||
QMessageBox::warning(this, tr("Error"), tr("Failed to set switch condition!"));
|
||||
return;
|
||||
}
|
||||
if(!DbgCmdExecDirect(QString("TraceSetLogFile \"%1\"").arg(escapeText(mLogFile)).toUtf8().constData()))
|
||||
{
|
||||
QMessageBox::warning(this, tr("Error"), tr("Failed to set log file!"));
|
||||
return;
|
||||
}
|
||||
auto breakCondition = ui->editBreakCondition->addHistoryClear();
|
||||
auto maxTraceCount = ui->spinMaxTraceCount->value();
|
||||
if(!DbgCmdExecDirect(QString("%1 \"%2\", .%3").arg(mTraceCommand, escapeText(breakCondition)).arg(maxTraceCount).toUtf8().constData()))
|
||||
|
@ -69,3 +75,12 @@ void SimpleTraceDialog::on_btnOk_clicked()
|
|||
}
|
||||
accept();
|
||||
}
|
||||
|
||||
void SimpleTraceDialog::on_btnLogFile_clicked()
|
||||
{
|
||||
BrowseDialog browse(this, tr("Trace log file"), tr("Enter the path to the log file."), tr("Log Files (*.txt *.log);;All Files (*.*)"), QCoreApplication::applicationDirPath(), true);
|
||||
if(browse.exec() == QDialog::Accepted)
|
||||
mLogFile = browse.path;
|
||||
else
|
||||
mLogFile.clear();
|
||||
}
|
||||
|
|
|
@ -19,10 +19,12 @@ public:
|
|||
|
||||
private slots:
|
||||
void on_btnOk_clicked();
|
||||
void on_btnLogFile_clicked();
|
||||
|
||||
private:
|
||||
Ui::SimpleTraceDialog* ui;
|
||||
QString mTraceCommand;
|
||||
QString mLogFile;
|
||||
};
|
||||
|
||||
#endif // SIMPLETRACEDIALOG_H
|
||||
|
|
|
@ -65,6 +65,13 @@
|
|||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="btnLogFile">
|
||||
<property name="text">
|
||||
<string>Log &File...</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="btnOk">
|
||||
<property name="sizePolicy">
|
||||
|
@ -187,6 +194,8 @@
|
|||
<tabstop>editCommandText</tabstop>
|
||||
<tabstop>editCommandCondition</tabstop>
|
||||
<tabstop>spinMaxTraceCount</tabstop>
|
||||
<tabstop>editSwitchCondition</tabstop>
|
||||
<tabstop>btnLogFile</tabstop>
|
||||
<tabstop>btnOk</tabstop>
|
||||
<tabstop>btnCancel</tabstop>
|
||||
</tabstops>
|
||||
|
|
Loading…
Reference in New Issue