Skip to content

Commit 24edd25

Browse files
committed
visualization plan
1 parent 21cbcf8 commit 24edd25

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

visualization-plan.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Current approach
2+
3+
- hardcoded HTML in src/programflow-visualization/frontend/visualization_panel.ts
4+
- links to CSS in ./media/programflow-visualization/webview.css
5+
- links to JS in ./media/programflow-visualization/linkerline.js (external lib for arrows) and
6+
./media/programflow-visualization/webview.js
7+
- webview.js listens to updateButtons and updateContents events. These events are generated
8+
whenever a new trace element arrives and if the user klicks a button (yes, the buttons
9+
in the HTML are sent back to the vscode)
10+
11+
# Goal
12+
13+
- HTML page should be self-contained with links
14+
- CSS files for styling
15+
- JS files with logic (generated from typescript)
16+
- a link to a JS file with the frontend trace content
17+
- The HTML page and the linked stuff is a self-contained component with no dependencies back to vscode
18+
- vscode plugin should not generate HTML code anymore: src/programflow-visualization/frontend/HTMLGenerator.ts
19+
belongs to the new component
20+
- OPTIONAL (if partial traces are necessary for performance): the components reacts
21+
to an event to append new trace elements or to reset the whole trace
22+
- The frontend part in vscode is able to store the frontend trace so that a designer can just take
23+
the visualization with a static trace and do a good design
24+
25+
## Benefits
26+
27+
- easier to understand, deps just one-way
28+
- HTML can be tuned for visual appearence independently from vscode
29+
- we just need a dump of the JS file with the trace content

0 commit comments

Comments
 (0)