diff --git a/src/elf_arrows.ml b/src/elf_arrows.ml index d592314..b176c2b 100644 --- a/src/elf_arrows.ml +++ b/src/elf_arrows.ml @@ -86,8 +86,8 @@ let _ = line_info ; ) elf_handles ; - let multi_render_data = List.map (fun (ElfHandle(_, _, static_info, asm)) -> - let render_data = Renderer.init_render_data asm in + let multi_render_data = List.map (fun (ElfHandle(path, _, static_info, asm)) -> + let render_data = Renderer.init_render_data asm path in let line_info = static_info.ds_evaluated_line_info in let boxed_render_data = add_line_boxes render_data line_info in boxed_render_data diff --git a/src/html_renderer.ml b/src/html_renderer.ml index bd19334..5092a38 100644 --- a/src/html_renderer.ml +++ b/src/html_renderer.ml @@ -39,13 +39,20 @@ let render_prog_box annotated_prog = Jingoo.Jg_types.(Renderer.AnnotAsm.( |> box_list )) -let render_progs_box annotated_progs = - List.map render_prog_box annotated_progs - |> Jingoo.Jg_types.box_list +let render_progs_box annotated_progs = Jingoo.Jg_types.( + List.map (fun (prog_path, annotated_prog) -> + [ + ("path", box_string prog_path); + ("prog", render_prog_box annotated_prog) + ] |> box_obj) + annotated_progs + |> box_list +) (** [render multi_render_data] renders the given [render_data] to a string. *) let render multi_render_data = Jingoo.( let annotated_progs = List.map (fun render_data -> + render_data.Renderer.render_prog_path, Renderer.render_data_to_annotated_asm render_data) multi_render_data in let models = [ ("progs", render_progs_box annotated_progs); diff --git a/src/render_html.jingoo b/src/render_html.jingoo index 2f4c17b..f7e115f 100644 --- a/src/render_html.jingoo +++ b/src/render_html.jingoo @@ -20,6 +20,11 @@ border: 1px solid #9584ff; } + .progpath { + text-align: center; + font-size: 1.3em; + } + .subroutine { margin: 20px 0; } @@ -48,9 +53,10 @@