diff --git a/src/bridge/bridgemain.cpp b/src/bridge/bridgemain.cpp index fa94352e..76921788 100644 --- a/src/bridge/bridgemain.cpp +++ b/src/bridge/bridgemain.cpp @@ -1737,6 +1737,11 @@ BRIDGE_IMPEXP void GuiGetCurrentGraph(BridgeCFGraphList* graphList) _gui_sendmessage(GUI_GET_CURRENT_GRAPH, graphList, nullptr); } +BRIDGE_IMPEXP void GuiShowReferences() +{ + _gui_sendmessage(GUI_SHOW_REF, 0, 0); +} + BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) { hInst = hinstDLL; diff --git a/src/bridge/bridgemain.h b/src/bridge/bridgemain.h index bdd5439f..ea6b81b4 100644 --- a/src/bridge/bridgemain.h +++ b/src/bridge/bridgemain.h @@ -1181,6 +1181,7 @@ typedef enum GUI_UPDATE_TRACE_BROWSER, // param1=unused, param2=unused GUI_INVALIDATE_SYMBOL_SOURCE, // param1=duint base, param2=unused GUI_GET_CURRENT_GRAPH, // param1=BridgeCFGraphList*, param2=unused + GUI_SHOW_REF, // param1=unused, param2=unused } GUIMSG; //GUI Typedefs @@ -1361,6 +1362,7 @@ BRIDGE_IMPEXP void GuiOpenTraceFile(const char* fileName); BRIDGE_IMPEXP void GuiInvalidateSymbolSource(duint base); BRIDGE_IMPEXP void GuiExecuteOnGuiThreadEx(GUICALLBACKEX cbGuiThread, void* userdata); BRIDGE_IMPEXP void GuiGetCurrentGraph(BridgeCFGraphList* graphList); +BRIDGE_IMPEXP void GuiShowReferences(); #ifdef __cplusplus } diff --git a/src/gui/Src/Bridge/Bridge.cpp b/src/gui/Src/Bridge/Bridge.cpp index 58eff6ce..efb1f3a2 100644 --- a/src/gui/Src/Bridge/Bridge.cpp +++ b/src/gui/Src/Bridge/Bridge.cpp @@ -875,6 +875,10 @@ void* Bridge::processMessage(GUIMSG type, void* param1, void* param2) result.Wait(); } break; + + case GUI_SHOW_REF: + emit showReferences(); + break; } return nullptr; diff --git a/src/gui/Src/Bridge/Bridge.h b/src/gui/Src/Bridge/Bridge.h index 3df6b2e1..c492ec21 100644 --- a/src/gui/Src/Bridge/Bridge.h +++ b/src/gui/Src/Bridge/Bridge.h @@ -162,6 +162,7 @@ signals: void updateTraceBrowser(); void symbolSelectModule(duint base); void getCurrentGraph(BridgeCFGraphList* graphList); + void showReferences(); private: CRITICAL_SECTION csBridge; diff --git a/src/gui/Src/Gui/MainWindow.cpp b/src/gui/Src/Gui/MainWindow.cpp index ef8a18f8..214018e7 100644 --- a/src/gui/Src/Gui/MainWindow.cpp +++ b/src/gui/Src/Gui/MainWindow.cpp @@ -84,6 +84,7 @@ MainWindow::MainWindow(QWidget* parent) connect(Bridge::getBridge(), SIGNAL(setNameMenuEntry(int, QString)), this, SLOT(setNameMenuEntry(int, QString))); connect(Bridge::getBridge(), SIGNAL(setNameMenu(int, QString)), this, SLOT(setNameMenu(int, QString))); connect(Bridge::getBridge(), SIGNAL(showCpu()), this, SLOT(displayCpuWidget())); + connect(Bridge::getBridge(), SIGNAL(showReferences()), this, SLOT(displayReferencesWidget())); connect(Bridge::getBridge(), SIGNAL(addQWidgetTab(QWidget*)), this, SLOT(addQWidgetTab(QWidget*))); connect(Bridge::getBridge(), SIGNAL(showQWidgetTab(QWidget*)), this, SLOT(showQWidgetTab(QWidget*))); connect(Bridge::getBridge(), SIGNAL(closeQWidgetTab(QWidget*)), this, SLOT(closeQWidgetTab(QWidget*)));