reqlanOverviewIdeasFilesCode filesClustersAttributesGraphPrint
Ideas/ui_controls

Idea detail

ui_controls

reqlan rq/extension/module/ideas_summary/graphical_graph.rq:30

block

Summary

Controls live in GraphControls.svelte and dispatch events to GraphView.
manual_reframe — " Fit to view " calls GraphCyController. reframeToViewport per reframe_view.
auto_reframe and reframe_animation are handled by the shared controller; no extra UI beyond pan / zoom / drag.
Labels control cycles graph_label_modes ( auto / on / off ) and applies graph_label_auto via GraphCyController. setLabelMode.
Status and tag filters are multi-select dropdowns per graph_status_tag_filters.
The Key button toggles a draggable legend panel in GraphKeyPanel.svelte over the graph canvas.
The Controls button toggles control_panel.
Overlay panels ( Key and Controls ) are siblings of the cytoscape mount inside a graph-surface-wrap — never children of the cy container — so native form controls receive pointer events.

Jump to outbound references

Jump to inbound references

Navigation

Source file

reqlan rq/extension/module/ideas_summary/graphical_graph.rq

community 27

community cluster

graphical_graph.rq

file cluster

reqlan rq/extension/module/ideas_summary

folder cluster

status: Not present

status cluster

tag: Not present

tag cluster

Printable page

Static print-friendly idea sheet.

Attributes

No attributes declared.

Ancestor context

control_panel

Floating panel in ["../../../packages/extension/webviews/ideas-summary/components/GraphControlPanel.svelte"], toggled from [ui_controls]. Provides layout algorithm selection, live-physics toggle, compound grouping, physics force sliders, max node count, and truncation basis. Physics tunables call GraphCyController. setPhysicsSettings; node budget changes re-request the graph slice via loadGraph. Mounted as a sibling of the cytoscape container ( not inside it ) so range sliders and selects work with native browser events. When positioned, a ResizeObserver on the surface wrap reclamps panelX / panelY so the panel stays fully inside after the webview is resized; Key panel uses the same reclamp. Open / closed state and all control values persist per [graph_ui_persistence].

graph_ui_persistence

Key and Controls state is stored in VS Code ExtensionContext. workspaceState under key GRAPH_UI_WORKSPACE_STATE_KEY ( reqlan. ideasSummary. graphUi ). Shape and normalisation live in ["../../../packages/extension/src/webview_module/shared/graph-ui-state.ts"]; the host reads / writes it from ["../../../packages/extension/src/webview_module/ideas-summary-panel.ts"]. On webview ready the extension posts graphUiState; the webview posts persistGraphUiState ( debounced ) whenever AppState. patchGraphUi runs in ["../../../packages/extension/webviews/ideas-summary/state/app.svelte.ts"]. Persisted fields: showKey, showControls, hiddenNodeTypes, layoutId, useCompound, compoundBasisId, animatePhysics, labelMode, maxNodes, truncationBasis, and the five physics sliders ( gravity, repulsion, linkStrength, linkDistance, damping ). GraphView in ["../../../packages/extension/webviews/ideas-summary/components/GraphView.svelte"] treats app. graph. ui as the source of truth and applies layout / physics / hidden types / label mode to GraphCyController when those fields change. The first graph load waits for graphUiState so restored node budget is included in loadGraph.

Outbound references

KindIdeaPathSnippet
file_reference ../../../packages/extension/webviews/ideas-summary/components/GraphControls.svelte reqlan rq/packages/extension/webviews/ideas-summary/components/GraphControls.svelte GraphControls.svelte
file_reference ../../../packages/extension/webviews/ideas-summary/components/GraphKeyPanel.svelte reqlan rq/packages/extension/webviews/ideas-summary/components/GraphKeyPanel.svelte GraphKeyPanel.svelte
references control_panel reqlan rq/extension/module/ideas_summary/graphical_graph.rq control_panel

Inbound references

KindIdeaPathSnippet
references control_panel reqlan rq/extension/module/ideas_summary/graphical_graph.rq ui_controls
references graphical_graph reqlan rq/extension/module/ideas_summary/graphical_graph.rq ui_controls

Unresolved references

KindIdeaPathSnippet
references auto_reframe auto_reframe
references graph_label_auto graph_label_auto
references graph_label_modes graph_label_modes
references graph_status_tag_filters graph_status_tag_filters
references manual_reframe manual_reframe
references reframe_animation reframe_animation
references reframe_view reframe_view

Local graph

Initialising graph…