From 4721e737b27286bd00ac3d80b8c167f587c01a5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Loi=CC=88c=20Correnson?= <loic.correnson@cea.fr> Date: Thu, 14 Mar 2024 22:12:09 +0100 Subject: [PATCH] [ivette] search mode better naming --- ivette/src/frama-c/kernel/Globals.tsx | 10 +++---- ivette/src/frama-c/plugins/eva/valuetable.tsx | 10 +++---- ivette/src/frama-c/plugins/studia/index.ts | 16 +++++----- ivette/src/ivette/index.tsx | 29 ++++++++++--------- 4 files changed, 34 insertions(+), 31 deletions(-) diff --git a/ivette/src/frama-c/kernel/Globals.tsx b/ivette/src/frama-c/kernel/Globals.tsx index 0a36c35f886..5e1df12a025 100644 --- a/ivette/src/frama-c/kernel/Globals.tsx +++ b/ivette/src/frama-c/kernel/Globals.tsx @@ -54,7 +54,7 @@ function globalHints(): Ivette.Hint[] { })); } -const globalMode : Ivette.ModeProps = { +const globalMode : Ivette.SearchProps = { id: 'frama-c.kernel.globals', label: 'Globals', title: 'Lookup for Global Declarations', @@ -63,13 +63,13 @@ const globalMode : Ivette.ModeProps = { }; function resetMode(enabled: boolean): void { - Ivette.updateMode({ id: globalMode.id, enabled }); - Ivette.selectMode(globalMode.id); + Ivette.updateSearchMode({ id: globalMode.id, enabled }); + Ivette.selectSearchMode(globalMode.id); } { - Ivette.registerMode(globalMode); - Dome.find.on(() => Ivette.focusMode(globalMode.id)); + Ivette.registerSearchMode(globalMode); + Dome.find.on(() => Ivette.focusSearchMode(globalMode.id)); Server.onReady(() => resetMode(true)); Server.onShutdown(() => resetMode(false)); resetMode(false); diff --git a/ivette/src/frama-c/plugins/eva/valuetable.tsx b/ivette/src/frama-c/plugins/eva/valuetable.tsx index 8d516e99473..9ffb8370056 100644 --- a/ivette/src/frama-c/plugins/eva/valuetable.tsx +++ b/ivette/src/frama-c/plugins/eva/valuetable.tsx @@ -914,7 +914,7 @@ interface EvaluationModeProps { } const evalShortcut = System.platform === 'macos' ? 'Cmd+E' : 'Ctrl+E'; -const evalMode : Ivette.ModeProps = { +const evalMode : Ivette.SearchProps = { id: 'frama-c.eva.evalMode', label: 'Evaluation', title: `Evaluate an ACSL expression (shortcut: ${evalShortcut})`, @@ -929,10 +929,10 @@ Dome.addMenuItem({ label: 'Evaluate', key: 'Cmd+E', enabled: false, - onClick: () => Ivette.focusMode(evalMode.id), + onClick: () => Ivette.focusSearchMode(evalMode.id), }); -Ivette.registerMode(evalMode); +Ivette.registerSearchMode(evalMode); function useEvaluationMode(props: EvaluationModeProps): void { const { computationState, marker, scope, setLocPin } = props; @@ -949,9 +949,9 @@ function useEvaluationMode(props: EvaluationModeProps): void { }; Server.send(Ast.parseExpr, data).then(addProbe).catch(handleError); }; - Ivette.updateMode({ id: evalMode.id, enabled: true, onEnter }); + Ivette.updateSearchMode({ id: evalMode.id, enabled: true, onEnter }); } else { - Ivette.updateMode({ id: evalMode.id, enabled: false }); + Ivette.updateSearchMode({ id: evalMode.id, enabled: false }); } }, [enabled, marker, scope, setLocPin]); React.useEffect( diff --git a/ivette/src/frama-c/plugins/studia/index.ts b/ivette/src/frama-c/plugins/studia/index.ts index aa612159e26..7349dc39767 100644 --- a/ivette/src/frama-c/plugins/studia/index.ts +++ b/ivette/src/frama-c/plugins/studia/index.ts @@ -95,17 +95,17 @@ export function buildMenu( case 'STMT': menu.push({ label: `Studia: select reads of …`, - onClick: () => Ivette.focusMode(studiaReadsMode.id) + onClick: () => Ivette.focusSearchMode(studiaReadsMode.id) }); menu.push({ label: `Studia: select writes of …`, - onClick: () => Ivette.focusMode(studiaWritesMode.id) + onClick: () => Ivette.focusSearchMode(studiaWritesMode.id) }); return; } } -const studiaReadsMode : Ivette.ModeProps = { +const studiaReadsMode : Ivette.SearchProps = { id: 'frama-c.plugins.studia.reads', rank: -1, label: 'Studia: reads', @@ -116,7 +116,7 @@ const studiaReadsMode : Ivette.ModeProps = { onEnter: (p: string) => onEnter('Reads', p) }; -const studiaWritesMode : Ivette.ModeProps = { +const studiaWritesMode : Ivette.SearchProps = { id: 'frama-c.plugins.studia.writes', rank: -1, label: 'Studia: writes', @@ -134,11 +134,11 @@ async function onEnter(akind: access, term: string): Promise<void> { if (marker) computeStudiaSelection(akind, marker, term); } -Ivette.registerMode(studiaReadsMode); -Ivette.registerMode(studiaWritesMode); +Ivette.registerSearchMode(studiaReadsMode); +Ivette.registerSearchMode(studiaWritesMode); States.GlobalHistory.on((s: States.History) => { const marker = s.curr.marker; const enabled = marker !== undefined; - Ivette.updateMode({ id: studiaReadsMode.id, enabled }); - Ivette.updateMode({ id: studiaWritesMode.id, enabled }); + Ivette.updateSearchMode({ id: studiaReadsMode.id, enabled }); + Ivette.updateSearchMode({ id: studiaWritesMode.id, enabled }); }); diff --git a/ivette/src/ivette/index.tsx b/ivette/src/ivette/index.tsx index f49cdcf7f6d..df62fe3ffa9 100644 --- a/ivette/src/ivette/index.tsx +++ b/ivette/src/ivette/index.tsx @@ -230,9 +230,9 @@ export function registerStatusbar(status: ToolProps): void { STATUSBAR.register(status); } -/* --------------------------------------------------------------------------*/ -/* --- Search Modes ---*/ -/* --------------------------------------------------------------------------*/ +/* -------------------------------------------------------------------------- */ +/* --- Search Modes --- */ +/* -------------------------------------------------------------------------- */ export interface Hint { id: string; @@ -244,7 +244,7 @@ export interface Hint { onClick?: () => void; // click on hint } -export interface ModeProps { +export interface SearchProps { id: string; // Mode identifier rank?: number; // Modes ordering icon?: string; // Search Field's Icons @@ -258,12 +258,15 @@ export interface ModeProps { onEnter?: (pattern: string) => void; // Enter key for search field } -export function registerMode(m: ModeProps): void { Search.registerMode(m); } -export function updateMode(m: ModeProps): void { Search.updateMode(m); } -export function removeMode(id: string): void { Search.removeMode(id); } -export function selectMode(id: string): void { Search.selectMode(id); } -export function focusMode(id: string): void { Search.focusMode(id); } -export function useMode(m: ModeProps): void { +/* eslint-disable max-len */ +export function registerSearchMode(m: SearchProps): void { Search.registerMode(m); } +export function updateSearchMode(m: SearchProps): void { Search.updateMode(m); } +export function removeSearchMode(id: string): void { Search.removeMode(id); } +export function selectSearchMode(id: string): void { Search.selectMode(id); } +export function focusSearchMode(id: string): void { Search.focusMode(id); } +/* eslint-enable max-len */ + +export function useSearchMode(m: SearchProps): void { React.useEffect(() => { const id = m.id; const m0 = Search.findMode(id); @@ -277,9 +280,9 @@ export function useMode(m: ModeProps): void { }, [m]); } -/* --------------------------------------------------------------------------*/ -/* --- Sandbox ---*/ -/* --------------------------------------------------------------------------*/ +/* -------------------------------------------------------------------------- */ +/* --- Sandbox --- */ +/* -------------------------------------------------------------------------- */ if (DEVEL) { registerView({ -- GitLab