diff options
| author | Laurenz <laurmaedje@gmail.com> | 2019-12-09 13:29:04 +0100 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2019-12-09 13:29:04 +0100 |
| commit | 7e980224354880cfda1797136a1ff886d6642662 (patch) | |
| tree | c0137dcca82526faa71fd1d980a90c68dac798c8 /src/library/mod.rs | |
| parent | 64f938b449b7ff5e53b6a06ed943bf9dedc1014b (diff) | |
Bad stack layouter 🚑
Diffstat (limited to 'src/library/mod.rs')
| -rw-r--r-- | src/library/mod.rs | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/library/mod.rs b/src/library/mod.rs index 293f9589..4439f137 100644 --- a/src/library/mod.rs +++ b/src/library/mod.rs @@ -8,6 +8,7 @@ use maps::*; pub_use_mod!(align); pub_use_mod!(boxed); +pub_use_mod!(direction); pub mod maps; pub mod keys; @@ -19,6 +20,7 @@ pub fn std() -> Scope { std.add::<Align>("align"); std.add::<Boxed>("box"); + std.add::<Direction>("direction"); std.add::<PageSize>("page.size"); std.add::<PageMargins>("page.margins"); @@ -78,7 +80,7 @@ function! { /// `page.size`: Set the size of pages. #[derive(Debug, PartialEq)] pub struct PageSize { - map: ExtentMap, + map: ExtentMap<Size>, } parse(args, body) { @@ -90,7 +92,7 @@ function! { layout(self, ctx) { let mut style = ctx.style.page; - self.map.apply(ctx.axes, &mut style.dimensions)?; + self.map.apply(ctx.axes, &mut style.dimensions, |&s| s)?; vec![SetPageStyle(style)] } } @@ -150,11 +152,7 @@ function! { layout(self, ctx) { let axis = self.axis.generic(ctx.axes); - let spacing = match self.spacing { - FSize::Absolute(size) => size, - FSize::Scaled(scale) => scale * ctx.style.text.font_size, - }; - + let spacing = self.spacing.concretize(ctx.style.text.font_size); vec![AddSpacing(spacing, SpacingKind::Hard, axis)] } } |
