@@ -535,6 +535,12 @@ pub struct InteractiveHtmlBom {
535535 /// Dark mode on/off
536536 pub dark_mode : bool ,
537537
538+ /// Board drawings rotation \[°\]
539+ pub board_rotation : f32 ,
540+
541+ /// Whether to offset the back side rotation or not
542+ pub offset_back_rotation : bool ,
543+
538544 /// Silkscreen visibility
539545 pub show_silkscreen : bool ,
540546
@@ -544,6 +550,12 @@ pub struct InteractiveHtmlBom {
544550 /// Pads visibility
545551 pub show_pads : bool ,
546552
553+ /// Tracks & vias visibility
554+ pub show_tracks : bool ,
555+
556+ /// Zones visibility
557+ pub show_zones : bool ,
558+
547559 /// Checkbox column names
548560 pub checkboxes : Vec < String > ,
549561
@@ -630,9 +642,13 @@ impl InteractiveHtmlBom {
630642 bottom_left,
631643 top_right,
632644 dark_mode : false ,
645+ board_rotation : 0.0 ,
646+ offset_back_rotation : false ,
633647 show_silkscreen : true ,
634648 show_fabrication : true ,
635649 show_pads : true ,
650+ show_tracks : true ,
651+ show_zones : true ,
636652 checkboxes : vec ! [ "Sourced" . into( ) , "Placed" . into( ) ] ,
637653 fields : Vec :: new ( ) ,
638654 user_js : String :: new ( ) ,
@@ -703,19 +719,21 @@ impl InteractiveHtmlBom {
703719 } ;
704720
705721 let config = object ! {
706- board_rotation: 0.0 ,
722+ board_rotation: self . board_rotation ,
707723 bom_view: "left-right" ,
708724 checkboxes: self . checkboxes. join( "," ) ,
709725 dark_mode: self . dark_mode,
710726 fields: self . fields. to_json( ) ,
711727 highlight_pin1: "none" ,
712728 kicad_text_formatting: false ,
713729 layer_view: layer_view,
714- offset_back_rotation: false ,
730+ offset_back_rotation: self . offset_back_rotation ,
715731 redraw_on_drag: true ,
716732 show_fabrication: self . show_fabrication,
717733 show_pads: self . show_pads,
718734 show_silkscreen: self . show_silkscreen,
735+ show_tracks: self . show_tracks,
736+ show_zones: self . show_zones,
719737 } ;
720738
721739 let mut data = object ! {
0 commit comments