summaryrefslogtreecommitdiff
path: root/ui/uicontext.h
diff options
context:
space:
mode:
authorAlexander Khosrowshahi <alexk@vector35.com>2025-07-16 12:55:28 -0400
committerPeter LaFosse <peter@vector35.com>2025-07-22 09:21:43 -0400
commitb8430f79f94a95e2301228a93cfd92b8995c099e (patch)
tree1bc59ea6187925dcd1db5ef5be25026c54be6c17 /ui/uicontext.h
parentb29278c256f0b2269e2a28ab80d158e8005c19a3 (diff)
Add OnActionExecutedImmutable to ui notifications and python api
Diffstat (limited to 'ui/uicontext.h')
-rw-r--r--ui/uicontext.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/ui/uicontext.h b/ui/uicontext.h
index 501c4eeb..bfa265a9 100644
--- a/ui/uicontext.h
+++ b/ui/uicontext.h
@@ -340,6 +340,24 @@ class BINARYNINJAUIAPI UIContextNotification
(void)action;
}
+
+ /*!
+ * Callback when an action is executed. Unlike OnActionExecuted, plugins cannot
+ * modify the behavior of the action.
+ *
+ * \param context
+ * \param handler
+ * \param name
+ * \param ctx
+ */
+ virtual void OnActionExecutedImmutable(UIContext* context, UIActionHandler* handler, const QString& name, const UIActionContext& ctx)
+ {
+ (void)context;
+ (void)handler;
+ (void)name;
+ (void)ctx;
+ }
+
/*!
Callback when a context menu is created, allowing plugins to modify the menu,
e.g., registering and adding new actions into it. This allow plugins to add
@@ -570,6 +588,7 @@ public:
void NotifyOnILViewTypeChange(ViewFrame* frame, View* view, const BinaryNinja::FunctionViewType& viewType);
void updateCrossReferences(ViewFrame* frame, View* view, const SelectionInfoForXref& selection);
void NotifyOnActionExecuted(UIActionHandler* handler, const QString& name, const UIActionContext& ctx, std::function<void(const UIActionContext&)>& action);
+ void NotifyOnActionExecutedImmutable(UIActionHandler* handler, const QString& name, const UIActionContext& ctx);
void NotifyOnContextMenuCreated(View* view, Menu& menu);
virtual void findAll(const BinaryNinja::FindParameters& params);