GUI: step into/over (source) (implemented with conditional tracing)
This commit is contained in:
parent
e8c2e5c572
commit
e0497818c0
|
@ -19,7 +19,7 @@ public:
|
|||
protected:
|
||||
QString paintContent(QPainter* painter, dsint rowBase, int rowOffset, int col, int x, int y, int w, int h);
|
||||
|
||||
private slots:
|
||||
public slots:
|
||||
void disassembleAtSlot(dsint va, dsint cip);
|
||||
|
||||
private:
|
||||
|
|
|
@ -459,9 +459,11 @@ void MainWindow::refreshShortcuts()
|
|||
setGlobalShortcut(ui->actionRestart, ConfigShortcut("DebugRestart"));
|
||||
setGlobalShortcut(ui->actionClose, ConfigShortcut("DebugClose"));
|
||||
setGlobalShortcut(ui->actionStepInto, ConfigShortcut("DebugStepInto"));
|
||||
setGlobalShortcut(ui->actioneStepInto, ConfigShortcut("DebugeStepInfo"));
|
||||
setGlobalShortcut(ui->actioneStepInto, ConfigShortcut("DebugeStepInto"));
|
||||
setGlobalShortcut(ui->actionStepIntoSource, ConfigShortcut("DebugStepIntoSource"));
|
||||
setGlobalShortcut(ui->actionStepOver, ConfigShortcut("DebugStepOver"));
|
||||
setGlobalShortcut(ui->actioneStepOver, ConfigShortcut("DebugeStepOver"));
|
||||
setGlobalShortcut(ui->actionStepOverSource, ConfigShortcut("DebugStepOverSource"));
|
||||
setGlobalShortcut(ui->actionRtr, ConfigShortcut("DebugRtr"));
|
||||
setGlobalShortcut(ui->actioneRtr, ConfigShortcut("DebugeRtr"));
|
||||
setGlobalShortcut(ui->actionRtu, ConfigShortcut("DebugRtu"));
|
||||
|
@ -1533,3 +1535,13 @@ void MainWindow::clickFavouriteTool()
|
|||
DbgCmdExec(action->text().toUtf8().constData());
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::on_actionStepIntoSource_triggered()
|
||||
{
|
||||
DbgCmdExec("TraceIntoConditional srcline(cip)");
|
||||
}
|
||||
|
||||
void MainWindow::on_actionStepOverSource_triggered()
|
||||
{
|
||||
DbgCmdExec("TraceOverConditional srcline(cip)");
|
||||
}
|
||||
|
|
|
@ -237,6 +237,8 @@ public:
|
|||
private slots:
|
||||
void on_actionFaq_triggered();
|
||||
void on_actionReloadStylesheet_triggered();
|
||||
void on_actionStepIntoSource_triggered();
|
||||
void on_actionStepOverSource_triggered();
|
||||
};
|
||||
|
||||
#endif // MAINWINDOW_H
|
||||
|
|
|
@ -104,9 +104,11 @@
|
|||
<addaction name="separator"/>
|
||||
<addaction name="actionStepInto"/>
|
||||
<addaction name="actioneStepInto"/>
|
||||
<addaction name="actionStepIntoSource"/>
|
||||
<addaction name="actionTicnd"/>
|
||||
<addaction name="actionStepOver"/>
|
||||
<addaction name="actioneStepOver"/>
|
||||
<addaction name="actionStepOverSource"/>
|
||||
<addaction name="actionRtu"/>
|
||||
<addaction name="actionTocnd"/>
|
||||
<addaction name="actionRtr"/>
|
||||
|
@ -926,10 +928,32 @@
|
|||
</property>
|
||||
</action>
|
||||
<action name="actionManageFavourite">
|
||||
<property name="icon">
|
||||
<iconset resource="../../resource.qrc">
|
||||
<normaloff>:/icons/images/star.png</normaloff>:/icons/images/star.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>&Manage Favourite Tools...</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionStepOverSource">
|
||||
<property name="icon">
|
||||
<iconset resource="../../resource.qrc">
|
||||
<normaloff>:/icons/images/arrow-step-over.png</normaloff>:/icons/images/arrow-step-over.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Step over (source)</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionStepIntoSource">
|
||||
<property name="icon">
|
||||
<iconset resource="../../resource.qrc">
|
||||
<normaloff>:/icons/images/arrow-step-into.png</normaloff>:/icons/images/arrow-step-into.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Step into (source)</string>
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<layoutdefault spacing="6" margin="11"/>
|
||||
<resources>
|
||||
|
|
|
@ -17,6 +17,9 @@ SourceView::SourceView(QString path, int line, StdTable* parent)
|
|||
|
||||
loadFile();
|
||||
setSelection(line);
|
||||
auto cip = DbgValFromString("cip");
|
||||
mList->disassembleAtSlot(0, cip);
|
||||
mSearchList->disassembleAtSlot(0, cip);
|
||||
}
|
||||
|
||||
void SourceView::setSelection(int line)
|
||||
|
|
|
@ -287,9 +287,11 @@ Configuration::Configuration() : QObject(), noMoreMsgbox(false)
|
|||
defaultShortcuts.insert("DebugRestart", Shortcut(tr("Debug -> Restart"), "Ctrl+F2", true));
|
||||
defaultShortcuts.insert("DebugClose", Shortcut(tr("Debug -> Close"), "Alt+F2", true));
|
||||
defaultShortcuts.insert("DebugStepInto", Shortcut(tr("Debug -> Step into"), "F7", true));
|
||||
defaultShortcuts.insert("DebugeStepInfo", Shortcut(tr("Debug -> Step into (skip execptions)"), "Shift+F7", true));
|
||||
defaultShortcuts.insert("DebugeStepInto", Shortcut(tr("Debug -> Step into (skip execptions)"), "Shift+F7", true));
|
||||
defaultShortcuts.insert("DebugStepIntoSource", Shortcut(tr("Debug -> Step into (source)"), "F11", true));
|
||||
defaultShortcuts.insert("DebugStepOver", Shortcut(tr("Debug -> Step over"), "F8", true));
|
||||
defaultShortcuts.insert("DebugeStepOver", Shortcut(tr("Debug -> Step over (skip execptions)"), "Shift+F8", true));
|
||||
defaultShortcuts.insert("DebugStepOverSource", Shortcut(tr("Debug -> Step over (source)"), "F10", true));
|
||||
defaultShortcuts.insert("DebugRtr", Shortcut(tr("Debug -> Execute till return"), "Ctrl+F9", true));
|
||||
defaultShortcuts.insert("DebugeRtr", Shortcut(tr("Debug -> Execute till return (skip exceptions)"), "Ctrl+Shift+F9", true));
|
||||
defaultShortcuts.insert("DebugRtu", Shortcut(tr("Debug -> Run to user code"), "Alt+F9", true));
|
||||
|
|
Loading…
Reference in New Issue