DBG+GUI: maximum trace count option
This commit is contained in:
parent
fcf5916250
commit
e0d6469dc5
|
|
@ -21,7 +21,9 @@ static bool cbDebugConditionalTrace(void* callBack, bool stepOver, int argc, cha
|
|||
dputs(QT_TRANSLATE_NOOP("DBG", "Trace already active"));
|
||||
return false;
|
||||
}
|
||||
duint maxCount = 50000;
|
||||
duint maxCount;
|
||||
if(!BridgeSettingGetUint("Engine", "MaxTraceCount", &maxCount) || !maxCount)
|
||||
maxCount = 50000;
|
||||
if(argc > 2 && !valfromstring(argv[2], &maxCount, false))
|
||||
return false;
|
||||
if(!dbgsettracecondition(argv[1], maxCount))
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ CPUInfoBox::CPUInfoBox(StdTable* parent) : StdTable(parent)
|
|||
setCellContent(1, 0, "");
|
||||
setCellContent(2, 0, "");
|
||||
setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||
setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
|
||||
setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||
horizontalScrollBar()->setStyleSheet(ConfigHScrollBarStyle());
|
||||
|
||||
int height = getHeight();
|
||||
|
|
@ -39,7 +39,7 @@ void CPUInfoBox::setupContextMenu()
|
|||
|
||||
int CPUInfoBox::getHeight()
|
||||
{
|
||||
return ((getRowHeight() + 1) * 3) + 10;
|
||||
return ((getRowHeight() + 1) * 3);
|
||||
}
|
||||
|
||||
void CPUInfoBox::setInfoLine(int line, QString text)
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@ CPUWidget::CPUWidget(QWidget* parent) : QWidget(parent), ui(new Ui::CPUWidget)
|
|||
splitter->setCollapsible(0, true); //allow collapsing of the SideBar
|
||||
splitter->setHandleWidth(1);
|
||||
|
||||
ui->mTopLeftVSplitter->setSizes(QList<int>() << 100 << 1);
|
||||
ui->mTopLeftVSplitter->setCollapsible(1, true); //allow collapsing of the InfoBox
|
||||
|
||||
ui->mTopLeftUpperFrameLayout->addWidget(splitter);
|
||||
|
|
@ -67,10 +68,7 @@ CPUWidget::CPUWidget(QWidget* parent) : QWidget(parent), ui(new Ui::CPUWidget)
|
|||
connect(button_changeview, SIGNAL(clicked()), mGeneralRegs, SLOT(onChangeFPUViewAction()));
|
||||
mGeneralRegs->SetChangeButton(button_changeview);
|
||||
|
||||
QList<int> sizes;
|
||||
sizes.append(87);
|
||||
sizes.append(14);
|
||||
ui->mTopRightVSplitter->setSizes(sizes);
|
||||
ui->mTopRightVSplitter->setSizes(QList<int>() << 87 << 14);
|
||||
ui->mTopRightVSplitter->setCollapsible(1, true); //allow collapsing of the ArgumentWidget
|
||||
|
||||
ui->mTopRightUpperFrameLayout->addWidget(button_changeview);
|
||||
|
|
|
|||
|
|
@ -59,6 +59,7 @@ void SettingsDialog::LoadSettings()
|
|||
settings.engineEnableTraceRecordDuringTrace = true;
|
||||
settings.engineNoScriptTimeout = false;
|
||||
settings.engineIgnoreInconsistentBreakpoints = false;
|
||||
settings.engineMaxTraceCount = 50000;
|
||||
settings.exceptionRanges = &realExceptionRanges;
|
||||
settings.disasmArgumentSpaces = false;
|
||||
settings.disasmMemorySpaces = false;
|
||||
|
|
@ -123,6 +124,8 @@ void SettingsDialog::LoadSettings()
|
|||
GetSettingBool("Engine", "SkipInt3Stepping", &settings.engineSkipInt3Stepping);
|
||||
GetSettingBool("Engine", "NoScriptTimeout", &settings.engineNoScriptTimeout);
|
||||
GetSettingBool("Engine", "IgnoreInconsistentBreakpoints", &settings.engineIgnoreInconsistentBreakpoints);
|
||||
if(BridgeSettingGetUint("Engine", "MaxTraceCount", &cur))
|
||||
settings.engineMaxTraceCount = int(cur);
|
||||
switch(settings.engineCalcType)
|
||||
{
|
||||
case calc_signed:
|
||||
|
|
@ -153,6 +156,7 @@ void SettingsDialog::LoadSettings()
|
|||
ui->chkSkipInt3Stepping->setChecked(settings.engineSkipInt3Stepping);
|
||||
ui->chkNoScriptTimeout->setChecked(settings.engineNoScriptTimeout);
|
||||
ui->chkIgnoreInconsistentBreakpoints->setChecked(settings.engineIgnoreInconsistentBreakpoints);
|
||||
ui->spinMaxTraceCount->setValue(settings.engineMaxTraceCount);
|
||||
|
||||
//Exceptions tab
|
||||
char exceptionRange[MAX_SETTING_SIZE] = "";
|
||||
|
|
@ -290,6 +294,7 @@ void SettingsDialog::SaveSettings()
|
|||
BridgeSettingSetUint("Engine", "SkipInt3Stepping", settings.engineSkipInt3Stepping);
|
||||
BridgeSettingSetUint("Engine", "NoScriptTimeout", settings.engineNoScriptTimeout);
|
||||
BridgeSettingSetUint("Engine", "IgnoreInconsistentBreakpoints", settings.engineIgnoreInconsistentBreakpoints);
|
||||
BridgeSettingSetUint("Engine", "MaxTraceCount", settings.engineMaxTraceCount);
|
||||
|
||||
//Exceptions tab
|
||||
QString exceptionRange = "";
|
||||
|
|
@ -708,3 +713,8 @@ void SettingsDialog::on_chkNoForegroundWindow_toggled(bool checked)
|
|||
{
|
||||
settings.guiNoForegroundWindow = checked;
|
||||
}
|
||||
|
||||
void SettingsDialog::on_spinMaxTraceCount_valueChanged(int arg1)
|
||||
{
|
||||
settings.engineMaxTraceCount = arg1;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,6 +53,7 @@ private slots:
|
|||
void on_chkSkipInt3Stepping_toggled(bool checked);
|
||||
void on_chkNoScriptTimeout_stateChanged(int arg1);
|
||||
void on_chkIgnoreInconsistentBreakpoints_toggled(bool checked);
|
||||
void on_spinMaxTraceCount_valueChanged(int arg1);
|
||||
//Exception tab
|
||||
void on_btnAddRange_clicked();
|
||||
void on_btnDeleteRange_clicked();
|
||||
|
|
@ -133,6 +134,7 @@ private:
|
|||
bool engineSkipInt3Stepping;
|
||||
bool engineNoScriptTimeout;
|
||||
bool engineIgnoreInconsistentBreakpoints;
|
||||
int engineMaxTraceCount;
|
||||
//Exception Tab
|
||||
QList<RangeStruct>* exceptionRanges;
|
||||
//Disasm Tab
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>381</width>
|
||||
<height>420</height>
|
||||
<height>445</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
|
|
@ -33,7 +33,7 @@
|
|||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
<number>1</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="tabEvents">
|
||||
<attribute name="title">
|
||||
|
|
@ -310,6 +310,48 @@
|
|||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_6">
|
||||
<item>
|
||||
<widget class="QLabel" name="lblMaxTraceCount">
|
||||
<property name="text">
|
||||
<string>Default maximum trace &count</string>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>spinMaxTraceCount</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="spinMaxTraceCount">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="wrapping">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="frame">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="buttonSymbols">
|
||||
<enum>QAbstractSpinBox::UpDownArrows</enum>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>1</number>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>2147483647</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50000</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
|
|
|
|||
Loading…
Reference in New Issue