From 4640585fbdf72df993dbed46799844aa78996cce Mon Sep 17 00:00:00 2001 From: Martin Haug Date: Sat, 4 Jun 2022 12:57:45 +0200 Subject: First iteration of outline items --- src/library/text/par.rs | 5 +++++ src/library/text/raw.rs | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'src/library/text') diff --git a/src/library/text/par.rs b/src/library/text/par.rs index 695d8066..53bb798f 100644 --- a/src/library/text/par.rs +++ b/src/library/text/par.rs @@ -551,6 +551,9 @@ fn prepare<'a>( } else { let size = Size::new(regions.first.x, regions.base.y); let pod = Regions::one(size, regions.base, Spec::splat(false)); + let role_map = StyleMap::with_role(Role::GenericInline); + let styles = role_map.chain(&styles); + let mut frame = node.layout(ctx, &pod, styles)?.remove(0); let shift = styles.get(TextNode::BASELINE); @@ -1063,6 +1066,7 @@ fn stack( let mut finished = vec![]; let mut first = true; let mut output = Frame::new(Size::with_x(width)); + output.apply_role(Role::Paragraph); // Stack the lines into one frame per region. for line in lines { @@ -1072,6 +1076,7 @@ fn stack( while !regions.first.y.fits(height) && !regions.in_last() { finished.push(Arc::new(output)); output = Frame::new(Size::with_x(width)); + output.apply_role(Role::Paragraph); regions.next(); first = true; } diff --git a/src/library/text/raw.rs b/src/library/text/raw.rs index a24d2170..4d73b11b 100644 --- a/src/library/text/raw.rs +++ b/src/library/text/raw.rs @@ -113,7 +113,7 @@ impl Show for RawNode { styles: StyleChain, mut realized: Content, ) -> TypResult { - let mut map = StyleMap::new(); + let mut map = StyleMap::with_role(Role::Code); map.set_family(styles.get(Self::FAMILY).clone(), styles); map.set(TextNode::OVERHANG, false); map.set(TextNode::HYPHENATE, Smart::Custom(Hyphenate(false))); -- cgit v1.2.3