Function md_tui::parser::parse_markdown
source ยท pub fn parse_markdown(
name: Option<&str>,
content: &str,
width: u16,
) -> ComponentRootExamples found in repository?
examples/demo.rs (lines 78-82)
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
fn draw(&mut self, frame: &mut Frame) {
self.area = frame.area();
self.markdown = Some(parser::parse_markdown(
None,
&CONTENT.to_string(),
self.area.width,
));
if let Some(markdown) = &mut self.markdown {
markdown.set_scroll(self.scroll);
let area = Rect {
width: self.area.width - 1,
height: self.area.height - 1,
x: 1,
..self.area
};
for child in markdown.children() {
match child {
Component::TextComponent(comp) => {
if comp.y_offset().saturating_sub(comp.scroll_offset()) >= area.height
|| (comp.y_offset() + comp.height())
.saturating_sub(comp.scroll_offset())
== 0
{
continue;
}
frame.render_widget(comp.clone(), area);
}
_ => {}
}
}
}
}