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 | |
| parent | 3677e4a97dd08252e2e1172ac60a5ab958f8ee16 (diff) | |
Paper styles and scalable+default margins 📜
Diffstat (limited to 'src/library/maps')
| -rw-r--r-- | src/library/maps/axis.rs | 2 | ||||
| -rw-r--r-- | src/library/maps/mod.rs | 2 | ||||
| -rw-r--r-- | src/library/maps/padding.rs | 9 |
3 files changed, 7 insertions, 6 deletions
diff --git a/src/library/maps/axis.rs b/src/library/maps/axis.rs index a177a324..ca306eab 100644 --- a/src/library/maps/axis.rs +++ b/src/library/maps/axis.rs @@ -46,7 +46,7 @@ impl<E: ExpressionKind + Copy> ExtentMap<E> { let mut map = ConsistentMap::new(); for arg in args.keys() { - let key = match arg.v.key.v.0.as_str() { + let key = match arg.v.key.v.as_str() { "width" | "w" => AxisKey::Specific(Horizontal), "height" | "h" => AxisKey::Specific(Vertical), "primary-size" | "ps" => AxisKey::Generic(Primary), diff --git a/src/library/maps/mod.rs b/src/library/maps/mod.rs index 284c7181..5b027824 100644 --- a/src/library/maps/mod.rs +++ b/src/library/maps/mod.rs @@ -10,7 +10,7 @@ macro_rules! key { impl $type { /// Parse this key from an identifier. pub fn from_ident(ident: &Spanned<Ident>) -> ParseResult<Self> { - Ok(match ident.v.0.as_str() { + Ok(match ident.v.as_str() { $($patterns)* _ => error!("expected {}", <Self as ExpressionKind>::NAME), }) 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| { |
