diff options
| author | Laurenz <laurmaedje@gmail.com> | 2019-12-15 15:09:09 +0100 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2019-12-15 15:09:09 +0100 |
| commit | f3e461b27c70d34e12f3bcb11cc340a88fc7f102 (patch) | |
| tree | 5d8e21f21aa918bd5ca2c2c8654564f25ab4cd6d /src/library/maps/padding.rs | |
| parent | 3677e4a97dd08252e2e1172ac60a5ab958f8ee16 (diff) | |
Paper styles and scalable+default margins 📜
Diffstat (limited to 'src/library/maps/padding.rs')
| -rw-r--r-- | src/library/maps/padding.rs | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/library/maps/padding.rs b/src/library/maps/padding.rs index 37f2ba4a..3da469a7 100644 --- a/src/library/maps/padding.rs +++ b/src/library/maps/padding.rs @@ -39,17 +39,17 @@ key!(PaddingKey<AxisKey>, "axis or side", /// A map for storing padding at sides. #[derive(Debug, Clone, PartialEq)] -pub struct PaddingMap(ConsistentMap<PaddingKey<AxisKey>, Size>); +pub struct PaddingMap(ConsistentMap<PaddingKey<AxisKey>, Option<PSize>>); impl PaddingMap { /// Parse a padding map from the function args. pub fn new(args: &mut FuncArgs) -> ParseResult<PaddingMap> { let mut map = ConsistentMap::new(); - map.add_opt(PaddingKey::All, args.get_pos_opt::<Size>()?)?; + map.add_opt(PaddingKey::All, args.get_pos_opt::<Option<PSize>>()?)?; for arg in args.keys() { let key = PaddingKey::from_ident(&arg.v.key)?; - let size = Size::from_expr(arg.v.value)?; + let size = Option::<PSize>::from_expr(arg.v.value)?; map.add(key, size)?; } @@ -57,7 +57,8 @@ impl PaddingMap { } /// Apply the specified padding on the size box. - pub fn apply(&self, axes: LayoutAxes, padding: &mut SizeBox) -> LayoutResult<()> { + pub fn apply(&self, axes: LayoutAxes, padding: &mut ValueBox<Option<PSize>>) + -> LayoutResult<()> { use PaddingKey::*; let map = self.0.dedup(|key, &val| { |
