diff --git a/ivette/src/frama-c/plugins/eva/valuetable.tsx b/ivette/src/frama-c/plugins/eva/valuetable.tsx index 6b5ff2aeb4b4bfc8a1682b677c11a76dc9ca7584..271f1536a2ebde61b7eb7c3207da29ac8fd0eec3 100644 --- a/ivette/src/frama-c/plugins/eva/valuetable.tsx +++ b/ivette/src/frama-c/plugins/eva/valuetable.tsx @@ -991,6 +991,16 @@ function EvaTable(): JSX.Element { setTic(tac + 1); }, [fcts, setTic, tac]); + /* On meta-selection, pin the selected location. */ + React.useEffect(() => { + const pin = (loc: States.Location): void => { + const {marker, fct} = loc; + if (marker && fct) setLocPin({ target: marker, fct }, true); + }; + States.MetaSelection.on(pin); + return () => States.MetaSelection.off(pin); + }); + /* Callback used to remove a probe */ const remove = React.useCallback((probe: Probe): void => { fcts.removeLocation(probe);