Skip to content

Commit d2e0420

Browse files
committed
Add 'Merge Variables Here' action
1 parent 716e62c commit d2e0420

File tree

2 files changed

+6
-0
lines changed

2 files changed

+6
-0
lines changed

ui/flowgraphwidget.h

+2
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,7 @@ class BINARYNINJAUIAPI FlowGraphWidget :
160160
void recenterUpdatedGraph(FlowGraphRef oldGraph, int oldXOfs, int oldYOfs);
161161

162162
BNDeadStoreElimination getCurrentVariableDeadStoreElimination();
163+
std::optional<std::pair<BinaryNinja::Variable, BinaryNinja::Variable>> getMergeVariablesAtCurrentLocation();
163164

164165
protected:
165166
virtual void paintEvent(QPaintEvent* event) override;
@@ -361,6 +362,7 @@ class BINARYNINJAUIAPI FlowGraphWidget :
361362
void tagAddressAccepted(TagTypeRef tt);
362363
void manageAddressTags();
363364
void mergeVariables();
365+
void mergeVariablesAtCurrentLocation();
364366
void splitVariable();
365367

366368
void convertToNop();

ui/linearview.h

+4
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
#include <QtWidgets/QAbstractScrollArea>
44
#include <QtCore/QTimer>
55
#include <shared_mutex>
6+
#include <optional>
7+
#include <utility>
68
#include "binaryninjaapi.h"
79
#include "viewframe.h"
810
#include "render.h"
@@ -303,6 +305,7 @@ class BINARYNINJAUIAPI LinearView : public QAbstractScrollArea, public View, pub
303305
BNDeadStoreElimination getCurrentVariableDeadStoreElimination();
304306

305307
void setDataButtonVisible(bool visible);
308+
std::optional<std::pair<BinaryNinja::Variable, BinaryNinja::Variable>> getMergeVariablesAtCurrentLocation();
306309

307310
private Q_SLOTS:
308311
void adjustSize(int width, int height);
@@ -359,6 +362,7 @@ private Q_SLOTS:
359362
void createStruct();
360363
void createNewTypes();
361364
void mergeVariables();
365+
void mergeVariablesAtCurrentLocation();
362366
void splitVariable();
363367

364368
//! Get the length of of the string (if there is one) starting at the

0 commit comments

Comments
 (0)