------------
-- lenses
------------

-- | 
pageDimension :: Simple Lens (PageArrangement SinglePage) PageDimension
pageDimension = lens getter setter 
  where getter (SingleArrangement _ pdim _) = pdim
        getter (ContinuousArrangement _ _ _ _) = error $ "in pageDimension " -- partial 
        setter (SingleArrangement cdim _ vbbox) pdim = SingleArrangement cdim pdim vbbox
        setter (ContinuousArrangement _ _ _ _) _pdim = error $ "in pageDimension "  -- partial 
        
-- | 
pageDimension :: Simple Lens (PageArrangement SinglePage) PageDimension
pageDimension = lens getter setter 
  where getter (SingleArrangement _ pdim _) = pdim
        getter (ContinuousArrangement _ _ _ _) = error $ "in pageDimension " -- partial 
        setter (SingleArrangement cdim _ vbbox) pdim = SingleArrangement cdim pdim vbbox
        setter (ContinuousArrangement _ _ _ _) _pdim = error $ "in pageDimension "  -- partial 
        
-- | 
pageDimension = lens getter setter 
  where getter (SingleArrangement _ pdim _) = pdim
        getter (ContinuousArrangement _ _ _ _) = error $ "in pageDimension " -- partial 
        setter (SingleArrangement cdim _ vbbox) pdim = SingleArrangement cdim pdim vbbox
        setter (ContinuousArrangement _ _ _ _) _pdim = error $ "in pageDimension "  -- partial 
        
-- | 