1
0
Fork 0

Add previously undocumented AnimateInterval to settings; Remove AnimateInterval restrictions; Fix a bug on GuiOpenTraceFile

This commit is contained in:
torusrxxx 2020-07-05 18:39:25 +08:00 committed by Duncan Ogilvie
parent be725d82e1
commit d0002c0d0d
5 changed files with 51 additions and 25 deletions

View File

@ -1718,7 +1718,6 @@ BRIDGE_IMPEXP void GuiUpdateTraceBrowser()
BRIDGE_IMPEXP void GuiOpenTraceFile(const char* fileName)
{
CHECK_GUI_UPDATE_DISABLED
_gui_sendmessage(GUI_OPEN_TRACE_FILE, (void*)fileName, nullptr);
}

View File

@ -47,10 +47,7 @@ bool _dbg_animatecommand(const char* command)
void _dbg_setanimateinterval(unsigned int milliseconds)
{
if(milliseconds <= 20)
animate_interval = 20;
else
animate_interval = milliseconds;
animate_interval = milliseconds;
}
bool _dbg_isanimating()

View File

@ -67,6 +67,7 @@ void SettingsDialog::LoadSettings()
settings.engineIgnoreInconsistentBreakpoints = false;
settings.engineNoWow64SingleStepWorkaround = false;
settings.engineMaxTraceCount = 50000;
settings.engineAnimateInterval = 50;
settings.engineHardcoreThreadSwitchWarning = false;
settings.engineVerboseExceptionLogging = true;
settings.exceptionRanges = &realExceptionRanges;
@ -148,6 +149,8 @@ void SettingsDialog::LoadSettings()
GetSettingBool("Engine", "NoWow64SingleStepWorkaround", &settings.engineNoWow64SingleStepWorkaround);
if(BridgeSettingGetUint("Engine", "MaxTraceCount", &cur))
settings.engineMaxTraceCount = int(cur);
if(BridgeSettingGetUint("Engine", "AnimateInterval", &cur))
settings.engineAnimateInterval = int(cur);
switch(settings.engineCalcType)
{
case calc_signed:
@ -182,6 +185,7 @@ void SettingsDialog::LoadSettings()
ui->chkVerboseExceptionLogging->setChecked(settings.engineVerboseExceptionLogging);
ui->chkNoWow64SingleStepWorkaround->setChecked(settings.engineNoWow64SingleStepWorkaround);
ui->spinMaxTraceCount->setValue(settings.engineMaxTraceCount);
ui->spinAnimateInterval->setValue(settings.engineAnimateInterval);
//Exceptions tab
char exceptionRange[MAX_SETTING_SIZE] = "";
@ -359,6 +363,7 @@ void SettingsDialog::SaveSettings()
BridgeSettingSetUint("Engine", "NoScriptTimeout", settings.engineNoScriptTimeout);
BridgeSettingSetUint("Engine", "IgnoreInconsistentBreakpoints", settings.engineIgnoreInconsistentBreakpoints);
BridgeSettingSetUint("Engine", "MaxTraceCount", settings.engineMaxTraceCount);
BridgeSettingSetUint("Engine", "AnimateInterval", settings.engineAnimateInterval);
BridgeSettingSetUint("Engine", "VerboseExceptionLogging", settings.engineVerboseExceptionLogging);
BridgeSettingSetUint("Engine", "HardcoreThreadSwitchWarning", settings.engineHardcoreThreadSwitchWarning);
BridgeSettingSetUint("Engine", "NoWow64SingleStepWorkaround", settings.engineNoWow64SingleStepWorkaround);
@ -836,6 +841,11 @@ void SettingsDialog::on_spinMaxTraceCount_valueChanged(int arg1)
settings.engineMaxTraceCount = arg1;
}
void SettingsDialog::on_spinAnimateInterval_valueChanged(int arg1)
{
settings.engineAnimateInterval = arg1;
}
void SettingsDialog::on_chkNoHighlightOperands_toggled(bool checked)
{
bTokenizerConfigUpdated = true;

View File

@ -57,6 +57,7 @@ private slots:
void on_chkVerboseExceptionLogging_toggled(bool checked);
void on_chkNoWow64SingleStepWorkaround_toggled(bool checked);
void on_spinMaxTraceCount_valueChanged(int arg1);
void on_spinAnimateInterval_valueChanged(int arg1);
//Exception tab
void on_btnAddRange_clicked();
void on_btnDeleteRange_clicked();
@ -160,6 +161,7 @@ private:
bool engineVerboseExceptionLogging;
bool engineNoWow64SingleStepWorkaround;
int engineMaxTraceCount;
int engineAnimateInterval;
//Exception Tab
QList<RangeStruct>* exceptionRanges;
//Disasm Tab

View File

@ -166,7 +166,7 @@
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_4">
<item>
<widget class="QGroupBox" name="groupBox_2">
<widget class="QGroupBox" name="groupBoxCalculationType">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
@ -205,7 +205,7 @@
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox">
<widget class="QGroupBox" name="groupBoxDefaultBreakpointType">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
@ -332,7 +332,7 @@
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_6">
<layout class="QHBoxLayout" name="horizontalLayoutMaxTraceCount">
<item>
<widget class="QLabel" name="lblMaxTraceCount">
<property name="text">
@ -373,6 +373,24 @@
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayoutAnimateInterval">
<item>
<widget class="QLabel" name="lblAnimateInterval">
<property name="text">
<string>Animation per-step interval (ms)</string>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="spinAnimateInterval">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The debugger sleeps for a certain time in order to keep the interval between animation steps constant as specified in this setting.&lt;/p&gt;&lt;p&gt;If you want to animate as fast as possible set this to 0.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
@ -401,7 +419,7 @@
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<layout class="QHBoxLayout" name="horizontalLayoutExceptions">
<item>
<widget class="QListWidget" name="listExceptions">
<property name="font">
@ -418,7 +436,7 @@
<item>
<layout class="QVBoxLayout" name="layoutExceptionButtons">
<item>
<spacer name="verticalSpacer_6">
<spacer name="verticalSpacerExceptionsTop">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
@ -452,7 +470,7 @@
</widget>
</item>
<item>
<spacer name="verticalSpacer_5">
<spacer name="verticalSpacerExceptionsBottom">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
@ -567,7 +585,7 @@
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_7">
<layout class="QHBoxLayout" name="layoutMaximumModuleNameSize">
<item>
<widget class="QLabel" name="lblMaximumModuleNameSize">
<property name="enabled">
@ -618,7 +636,7 @@
</layout>
</item>
<item>
<spacer name="verticalSpacer_2">
<spacer name="verticalSpacerDisasm">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
@ -728,7 +746,7 @@
</widget>
</item>
<item>
<spacer name="verticalSpacer_7">
<spacer name="verticalSpacerGUI">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
@ -748,20 +766,20 @@
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_10">
<item>
<layout class="QVBoxLayout" name="verticalLayout_9">
<layout class="QVBoxLayout" name="verticalLayoutSymbolJIT">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<layout class="QHBoxLayout" name="horizontalLayoutSymbol">
<item>
<layout class="QVBoxLayout" name="verticalLayout_3">
<layout class="QVBoxLayout" name="verticalLayoutSymbolLabels">
<item>
<widget class="QLabel" name="label_2">
<widget class="QLabel" name="lblSymbolStore">
<property name="text">
<string>Symbol Store:</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_3">
<widget class="QLabel" name="lblSymbolPath">
<property name="text">
<string>Symbol Path:</string>
</property>
@ -770,7 +788,7 @@
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_8">
<layout class="QVBoxLayout" name="verticalLayoutSymbolEdits">
<item>
<widget class="QLineEdit" name="editSymbolStore"/>
</item>
@ -789,7 +807,7 @@
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<layout class="QHBoxLayout" name="horizontalLayoutJIT">
<item>
<widget class="QLabel" name="label">
<property name="text">
@ -821,7 +839,7 @@
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_3">
<widget class="QGroupBox" name="groupBoxSearchEngineURL">
<property name="title">
<string>Search Engine URL</string>
</property>
@ -870,7 +888,7 @@
</widget>
</item>
<item>
<spacer name="verticalSpacer_3">
<spacer name="verticalSpacerMisc">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
@ -887,9 +905,9 @@
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<layout class="QHBoxLayout" name="horizontalLayoutSaveCancel">
<item>
<spacer name="horizontalSpacer">
<spacer name="horizontalSpacerSaveCancel">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>