def activate(self, ctx): try: sel = ctx.graph_selection except: # IDA < 7.4 doesn't provide graph selection as part of # the action_activation_ctx_t; it needs to be queried. sel = ida_graph.screen_graph_selection_t() gv = ida_graph.get_graph_viewer(self.graph.GetWidget()) ida_graph.viewer_get_selection(gv, sel) if sel: for s in sel: if s.is_node: print("Selected node %d" % s.node) else: print("Selected edge %d -> %d" % (s.elp.e.src, s.elp.e.dst)) return 1
def activate(self, ctx): try: sel = ctx.graph_selection except: sel = ida_graph.screen_graph_selection_t() gv = ida_graph.get_graph_viewer(self.graph.GetWidget()) ida_graph.viewer_get_selection(gv, sel) if sel: for s in sel: if s.is_node: print(f'[{NAME}] selected node {s.node}') else: print( f'[{NAME}] selected edge {str(s.elp.e.src)} -> {str(s.elp.e.dst)}' ) return 1
def activate(self, ctx): try: sel = ctx.graph_selection except: sel = ida_graph.screen_graph_selection_t() gv = ida_graph.get_graph_viewer(self.graph.GetWidget()) ida_graph.viewer_get_selection(gv, sel) if sel: if DEBUG: for s in sel: if s.is_node: print('[{}] selected node {}'.format(NAME, s.node)) else: # yapf: disable print('[{}] selected edge {} -> {}'.format(NAME, str(s.elp.e.src), str(s.elp.e.dst))) return 1