| Copyright | (C) Frank Staals |
|---|---|
| License | see the LICENSE file |
| Maintainer | Frank Staals |
| Safe Haskell | None |
| Language | GHC2024 |
Ipe.Types
Description
Data type modeling the various elements in Ipe files.
Synopsis
- data IpeFile r = IpeFile (Maybe IpePreamble) [IpeStyle] (NonEmpty (IpePage r))
- preamble :: forall r f. Functor f => (Maybe IpePreamble -> f (Maybe IpePreamble)) -> IpeFile r -> f (IpeFile r)
- styles :: forall r f. Functor f => ([IpeStyle] -> f [IpeStyle]) -> IpeFile r -> f (IpeFile r)
- pages :: forall r r' f. Functor f => (NonEmpty (IpePage r) -> f (NonEmpty (IpePage r'))) -> IpeFile r -> f (IpeFile r')
- ipeFile :: NonEmpty (IpePage r) -> IpeFile r
- singlePageFile :: IpePage r -> IpeFile r
- singlePageFromContent :: [IpeObject r] -> IpeFile r
- data IpePage r = IpePage [LayerName] [View] [IpeObject r]
- layers :: forall r f. Functor f => ([LayerName] -> f [LayerName]) -> IpePage r -> f (IpePage r)
- views :: forall r f. Functor f => ([View] -> f [View]) -> IpePage r -> f (IpePage r)
- content :: forall r r' f. Functor f => ([IpeObject r] -> f [IpeObject r']) -> IpePage r -> f (IpePage r')
- emptyPage :: IpePage r
- fromContent :: [IpeObject r] -> IpePage r
- onLayer :: LayerName -> Getting (Endo [IpeObject r]) [IpeObject r] (IpeObject r)
- contentInView :: Word -> Getter (IpePage r) [IpeObject r]
- withDefaults :: IpePage r -> IpePage r
- data IpeObject r
- = IpeGroup (IpeObject' Group r)
- | IpeImage (IpeObject' Image r)
- | IpeTextLabel (IpeObject' TextLabel r)
- | IpeMiniPage (IpeObject' MiniPage r)
- | IpeUse (IpeObject' IpeSymbol r)
- | IpePath (IpeObject' Path r)
- _IpeGroup :: forall r p f. (Choice p, Applicative f) => p (IpeObject' Group r) (f (IpeObject' Group r)) -> p (IpeObject r) (f (IpeObject r))
- _IpeImage :: forall r p f. (Choice p, Applicative f) => p (IpeObject' Image r) (f (IpeObject' Image r)) -> p (IpeObject r) (f (IpeObject r))
- _IpeTextLabel :: forall r p f. (Choice p, Applicative f) => p (IpeObject' TextLabel r) (f (IpeObject' TextLabel r)) -> p (IpeObject r) (f (IpeObject r))
- _IpeMiniPage :: forall r p f. (Choice p, Applicative f) => p (IpeObject' MiniPage r) (f (IpeObject' MiniPage r)) -> p (IpeObject r) (f (IpeObject r))
- _IpeUse :: forall r p f. (Choice p, Applicative f) => p (IpeObject' IpeSymbol r) (f (IpeObject' IpeSymbol r)) -> p (IpeObject r) (f (IpeObject r))
- _IpePath :: forall r p f. (Choice p, Applicative f) => p (IpeObject' Path r) (f (IpeObject' Path r)) -> p (IpeObject r) (f (IpeObject r))
- type IpeObject' (g :: Type -> Type) r = g r :+ IpeAttributes g r
- ipeObject' :: ToObject i => i r -> IpeAttributes i r -> IpeObject r
- class ToObject (i :: Type -> Type) where
- mkIpeObject :: IpeObject' i r -> IpeObject r
- newtype Path r = Path (Seq (PathSegment r))
- pathSegments :: forall r r' p f. (Profunctor p, Functor f) => p (Seq (PathSegment r)) (f (Seq (PathSegment r'))) -> p (Path r) (f (Path r'))
- data PathSegment r
- = PolyLineSegment (PolyLine (Point 2 r))
- | PolygonPath !Orientation (SimplePolygon (Point 2 r))
- | CubicBezierSegment (CubicBezier (Point 2 r))
- | QuadraticBezierSegment (QuadraticBezier (Point 2 r))
- | EllipseSegment (Ellipse r)
- | ArcSegment
- | SplineSegment
- | ClosedSplineSegment
- data IpeSymbol r = Symbol (Point 2 r) Text
- symbolPoint :: forall r r' f. Functor f => (Point 2 r -> f (Point 2 r')) -> IpeSymbol r -> f (IpeSymbol r')
- symbolName :: forall r f. Functor f => (Text -> f Text) -> IpeSymbol r -> f (IpeSymbol r)
- newtype Group r = Group [IpeObject r]
- groupItems :: forall r s f. Functor f => ([IpeObject r] -> f [IpeObject s]) -> Group r -> f (Group s)
- data TextLabel r = Label Text (Point 2 r)
- data MiniPage r = MiniPage Text (Point 2 r) r
- width :: MiniPage t -> t
- data Image r = Image () (Rectangle (Point 2 r))
- imageData :: forall r f. Functor f => (() -> f ()) -> Image r -> f (Image r)
- imageRect :: forall r r' f. Functor f => (Rectangle (Point 2 r) -> f (Rectangle (Point 2 r'))) -> Image r -> f (Image r')
- type IpeBitmap = Text
- type IpeAttributes (g :: Type -> Type) r = Attributes' r (AttributesOf g)
- type Attributes' r = Attributes (AttrMapSym1 r)
- type family AttributesOf (t :: Type -> Type) :: [AttributeUniverse] where ...
- type family AttrMap r (l :: AttributeUniverse) where ...
- data AttrMapSym1 a6989586621679209029 (b :: TyFun AttributeUniverse Type)
- attributes :: forall g r f. Functor f => (IpeAttributes g r -> f (IpeAttributes g r)) -> IpeObject' g r -> f (IpeObject' g r)
- mapIpeAttrs :: forall (g :: Type -> Type) proxy r s. AllConstrained TraverseIpeAttr (AttributesOf g) => proxy g -> (r -> s) -> IpeAttributes g r -> IpeAttributes g s
- traverseIpeAttrs :: forall f (g :: Type -> Type) proxy r s. (Applicative f, AllConstrained TraverseIpeAttr (AttributesOf g)) => proxy g -> (r -> f s) -> IpeAttributes g r -> f (IpeAttributes g s)
- commonAttributes :: forall r f. Functor f => (Attributes (AttrMapSym1 r) CommonAttributes -> f (Attributes (AttrMapSym1 r) CommonAttributes)) -> IpeObject r -> f (IpeObject r)
- newtype LayerName = LayerName Text
- layerName :: Iso' LayerName Text
- data View = View [LayerName] LayerName
- layerNames :: Lens' View [LayerName]
- activeLayer :: Lens' View LayerName
- addStyleSheet :: IpeStyle -> IpeFile r -> IpeFile r
- data IpeStyle = IpeStyle (Maybe Text) (Node Text Text)
- styleName :: Lens' IpeStyle (Maybe Text)
- styleData :: Lens' IpeStyle (Node Text Text)
- basicIpeStyle :: IpeStyle
- opacitiesStyle :: IpeStyle
- data IpePreamble = IpePreamble (Maybe Text) Text
- encoding :: Lens' IpePreamble (Maybe Text)
- preambleData :: Lens' IpePreamble Text
Ipe Files
A complete ipe file
Instances
preamble :: forall r f. Functor f => (Maybe IpePreamble -> f (Maybe IpePreamble)) -> IpeFile r -> f (IpeFile r) Source #
Lens to access the preamble of an ipe file
styles :: forall r f. Functor f => ([IpeStyle] -> f [IpeStyle]) -> IpeFile r -> f (IpeFile r) Source #
Lens to access the styles of an ipe file
pages :: forall r r' f. Functor f => (NonEmpty (IpePage r) -> f (NonEmpty (IpePage r'))) -> IpeFile r -> f (IpeFile r') Source #
Lens to access the pages of an ipe file
ipeFile :: NonEmpty (IpePage r) -> IpeFile r Source #
Convenience constructor for creating an ipe file without preamble and with the default stylesheet.
singlePageFile :: IpePage r -> IpeFile r Source #
Convenience function to construct an ipe file consisting of a single page.
singlePageFromContent :: [IpeObject r] -> IpeFile r Source #
Create a single page ipe file from a list of IpeObjects
Ipe Pages
An IpePage is essentially a Group, together with a list of layers and a list of views.
Instances
| Generic (IpePage r) Source # | |||||
Defined in Ipe.Types Associated Types
| |||||
| Show r => Show (IpePage r) Source # | |||||
| Eq r => Eq (IpePage r) Source # | |||||
| (Coordinate r, Eq r) => IpeRead (IpePage r) Source # | |||||
Defined in Ipe.Reader | |||||
| IpeWriteText r => IpeWrite (IpePage r) Source # | |||||
| type Rep (IpePage r) Source # | |||||
Defined in Ipe.Types type Rep (IpePage r) = D1 ('MetaData "IpePage" "Ipe.Types" "hgeometry-ipe-1.0.0.0-inplace" 'False) (C1 ('MetaCons "IpePage" 'PrefixI 'True) (S1 ('MetaSel ('Just "_layers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [LayerName]) :*: (S1 ('MetaSel ('Just "_views") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [View]) :*: S1 ('MetaSel ('Just "_content") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [IpeObject r])))) | |||||
layers :: forall r f. Functor f => ([LayerName] -> f [LayerName]) -> IpePage r -> f (IpePage r) Source #
Lens to access the layers of an ipe page
views :: forall r f. Functor f => ([View] -> f [View]) -> IpePage r -> f (IpePage r) Source #
Lens to access the views of an ipe page
content :: forall r r' f. Functor f => ([IpeObject r] -> f [IpeObject r']) -> IpePage r -> f (IpePage r') Source #
Lens to access the content of an ipe page
fromContent :: [IpeObject r] -> IpePage r Source #
Creates a simple page with a single view.
onLayer :: LayerName -> Getting (Endo [IpeObject r]) [IpeObject r] (IpeObject r) Source #
This allows you to filter the objects on some layer.
>>>let page = IpePage [] [] []>>>page^..content.onLayer "myLayer"[]
contentInView :: Word -> Getter (IpePage r) [IpeObject r] Source #
Gets all objects that are visible in the given view.
Note that views are indexed starting from 0. If the page does not have any explicit view definitions, this function returns an empty list.
>>>let page = IpePage [] [] []>>>page^.contentInView 0[]
withDefaults :: IpePage r -> IpePage r Source #
Makes sure that the page has at least one layer and at least one view, essentially matching the behaviour of ipe. In particular,
- if the page does not have any layers, it creates a layer named "alpha", and
- if the page does not have any views, it creates a view in which all layers are visible.
Content: Ipe Objects
Constructors
| IpeGroup (IpeObject' Group r) | |
| IpeImage (IpeObject' Image r) | |
| IpeTextLabel (IpeObject' TextLabel r) | |
| IpeMiniPage (IpeObject' MiniPage r) | |
| IpeUse (IpeObject' IpeSymbol r) | |
| IpePath (IpeObject' Path r) |
Instances
| Functor IpeObject Source # | |||||
| Foldable IpeObject Source # | |||||
Defined in Ipe.Content Methods fold :: Monoid m => IpeObject m -> m Source # foldMap :: Monoid m => (a -> m) -> IpeObject a -> m Source # foldMap' :: Monoid m => (a -> m) -> IpeObject a -> m Source # foldr :: (a -> b -> b) -> b -> IpeObject a -> b Source # foldr' :: (a -> b -> b) -> b -> IpeObject a -> b Source # foldl :: (b -> a -> b) -> b -> IpeObject a -> b Source # foldl' :: (b -> a -> b) -> b -> IpeObject a -> b Source # foldr1 :: (a -> a -> a) -> IpeObject a -> a Source # foldl1 :: (a -> a -> a) -> IpeObject a -> a Source # toList :: IpeObject a -> [a] Source # null :: IpeObject a -> Bool Source # length :: IpeObject a -> Int Source # elem :: Eq a => a -> IpeObject a -> Bool Source # maximum :: Ord a => IpeObject a -> a Source # minimum :: Ord a => IpeObject a -> a Source # | |||||
| Traversable IpeObject Source # | |||||
Defined in Ipe.Content Methods traverse :: Applicative f => (a -> f b) -> IpeObject a -> f (IpeObject b) Source # sequenceA :: Applicative f => IpeObject (f a) -> f (IpeObject a) Source # mapM :: Monad m => (a -> m b) -> IpeObject a -> m (IpeObject b) Source # sequence :: Monad m => IpeObject (m a) -> m (IpeObject a) Source # | |||||
| Generic (IpeObject r) Source # | |||||
Defined in Ipe.Content Associated Types
| |||||
| Show r => Show (IpeObject r) Source # | |||||
| Eq r => Eq (IpeObject r) Source # | |||||
| (Coordinate r, Fractional r, Eq r) => IpeRead (IpeObject r) Source # | |||||
Defined in Ipe.Reader | |||||
| IpeWriteText r => IpeWrite (IpeObject r) Source # | |||||
| (Fractional r, Eq r) => IsTransformable (IpeObject r) Source # | |||||
Defined in Ipe.Content Methods transformBy :: Transformation (Dimension (IpeObject r)) (NumType (IpeObject r)) -> IpeObject r -> IpeObject r Source # | |||||
| type Rep (IpeObject r) Source # | |||||
Defined in Ipe.Content type Rep (IpeObject r) = D1 ('MetaData "IpeObject" "Ipe.Content" "hgeometry-ipe-1.0.0.0-inplace" 'False) ((C1 ('MetaCons "IpeGroup" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IpeObject' Group r))) :+: (C1 ('MetaCons "IpeImage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IpeObject' Image r))) :+: C1 ('MetaCons "IpeTextLabel" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IpeObject' TextLabel r))))) :+: (C1 ('MetaCons "IpeMiniPage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IpeObject' MiniPage r))) :+: (C1 ('MetaCons "IpeUse" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IpeObject' IpeSymbol r))) :+: C1 ('MetaCons "IpePath" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IpeObject' Path r)))))) | |||||
| type Dimension (IpeObject r) Source # | |||||
Defined in Ipe.Content | |||||
| type NumType (IpeObject r) Source # | |||||
Defined in Ipe.Content | |||||
_IpeGroup :: forall r p f. (Choice p, Applicative f) => p (IpeObject' Group r) (f (IpeObject' Group r)) -> p (IpeObject r) (f (IpeObject r)) Source #
_IpeImage :: forall r p f. (Choice p, Applicative f) => p (IpeObject' Image r) (f (IpeObject' Image r)) -> p (IpeObject r) (f (IpeObject r)) Source #
_IpeTextLabel :: forall r p f. (Choice p, Applicative f) => p (IpeObject' TextLabel r) (f (IpeObject' TextLabel r)) -> p (IpeObject r) (f (IpeObject r)) Source #
_IpeMiniPage :: forall r p f. (Choice p, Applicative f) => p (IpeObject' MiniPage r) (f (IpeObject' MiniPage r)) -> p (IpeObject r) (f (IpeObject r)) Source #
_IpeUse :: forall r p f. (Choice p, Applicative f) => p (IpeObject' IpeSymbol r) (f (IpeObject' IpeSymbol r)) -> p (IpeObject r) (f (IpeObject r)) Source #
_IpePath :: forall r p f. (Choice p, Applicative f) => p (IpeObject' Path r) (f (IpeObject' Path r)) -> p (IpeObject r) (f (IpeObject r)) Source #
type IpeObject' (g :: Type -> Type) r = g r :+ IpeAttributes g r Source #
An IpeObject' is essentially the oject ogether with its attributes
ipeObject' :: ToObject i => i r -> IpeAttributes i r -> IpeObject r Source #
Shorthand for constructing ipeObjects
class ToObject (i :: Type -> Type) where Source #
Methods
mkIpeObject :: IpeObject' i r -> IpeObject r Source #
Instances
| ToObject Group Source # | |
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' Group r -> IpeObject r Source # | |
| ToObject Image Source # | |
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' Image r -> IpeObject r Source # | |
| ToObject IpeSymbol Source # | |
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' IpeSymbol r -> IpeObject r Source # | |
| ToObject MiniPage Source # | |
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' MiniPage r -> IpeObject r Source # | |
| ToObject TextLabel Source # | |
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' TextLabel r -> IpeObject r Source # | |
| ToObject Path Source # | |
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' Path r -> IpeObject r Source # | |
Specific Ipe-Objects
A path is a non-empty sequence of PathSegments.
Constructors
| Path (Seq (PathSegment r)) |
Instances
| Functor Path Source # | |||||
| Foldable Path Source # | |||||
Defined in Ipe.Path Methods fold :: Monoid m => Path m -> m Source # foldMap :: Monoid m => (a -> m) -> Path a -> m Source # foldMap' :: Monoid m => (a -> m) -> Path a -> m Source # foldr :: (a -> b -> b) -> b -> Path a -> b Source # foldr' :: (a -> b -> b) -> b -> Path a -> b Source # foldl :: (b -> a -> b) -> b -> Path a -> b Source # foldl' :: (b -> a -> b) -> b -> Path a -> b Source # foldr1 :: (a -> a -> a) -> Path a -> a Source # foldl1 :: (a -> a -> a) -> Path a -> a Source # toList :: Path a -> [a] Source # null :: Path a -> Bool Source # length :: Path a -> Int Source # elem :: Eq a => a -> Path a -> Bool Source # maximum :: Ord a => Path a -> a Source # minimum :: Ord a => Path a -> a Source # | |||||
| Traversable Path Source # | |||||
| ToObject Path Source # | |||||
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' Path r -> IpeObject r Source # | |||||
| Semigroup (Path r) Source # | |||||
| Generic (Path r) Source # | |||||
Defined in Ipe.Path Associated Types
| |||||
| Show r => Show (Path r) Source # | |||||
| Eq r => Eq (Path r) Source # | |||||
| (Coordinate r, Fractional r, Eq r) => IpeRead (Path r) Source # | |||||
Defined in Ipe.Reader | |||||
| (Coordinate r, Fractional r, Eq r) => IpeReadText (Path r) Source # | |||||
Defined in Ipe.Reader Methods ipeReadText :: Text -> Either ConversionError (Path r) Source # | |||||
| IpeWriteText r => IpeWrite (Path r) Source # | |||||
| IpeWriteText r => IpeWriteText (Path r) Source # | |||||
Defined in Ipe.Writer | |||||
| (Fractional r, Eq r) => IsTransformable (Path r) Source # | |||||
| type Rep (Path r) Source # | |||||
Defined in Ipe.Path type Rep (Path r) = D1 ('MetaData "Path" "Ipe.Path" "hgeometry-ipe-1.0.0.0-inplace" 'True) (C1 ('MetaCons "Path" 'PrefixI 'True) (S1 ('MetaSel ('Just "_pathSegments") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq (PathSegment r))))) | |||||
| type Dimension (Path r) Source # | |||||
| type NumType (Path r) Source # | |||||
pathSegments :: forall r r' p f. (Profunctor p, Functor f) => p (Seq (PathSegment r)) (f (Seq (PathSegment r'))) -> p (Path r) (f (Path r')) Source #
Lens/Iso to access the sequcne of segments of the path
data PathSegment r Source #
Paths consist of Path Segments. PathSegments come in the following forms:
Constructors
| PolyLineSegment (PolyLine (Point 2 r)) | |
| PolygonPath !Orientation (SimplePolygon (Point 2 r)) | |
| CubicBezierSegment (CubicBezier (Point 2 r)) | |
| QuadraticBezierSegment (QuadraticBezier (Point 2 r)) | |
| EllipseSegment (Ellipse r) | |
| ArcSegment | |
| SplineSegment | |
| ClosedSplineSegment |
Instances
| Functor PathSegment Source # | |
Defined in Ipe.Path Methods fmap :: (a -> b) -> PathSegment a -> PathSegment b Source # (<$) :: a -> PathSegment b -> PathSegment a Source # | |
| Foldable PathSegment Source # | |
Defined in Ipe.Path Methods fold :: Monoid m => PathSegment m -> m Source # foldMap :: Monoid m => (a -> m) -> PathSegment a -> m Source # foldMap' :: Monoid m => (a -> m) -> PathSegment a -> m Source # foldr :: (a -> b -> b) -> b -> PathSegment a -> b Source # foldr' :: (a -> b -> b) -> b -> PathSegment a -> b Source # foldl :: (b -> a -> b) -> b -> PathSegment a -> b Source # foldl' :: (b -> a -> b) -> b -> PathSegment a -> b Source # foldr1 :: (a -> a -> a) -> PathSegment a -> a Source # foldl1 :: (a -> a -> a) -> PathSegment a -> a Source # toList :: PathSegment a -> [a] Source # null :: PathSegment a -> Bool Source # length :: PathSegment a -> Int Source # elem :: Eq a => a -> PathSegment a -> Bool Source # maximum :: Ord a => PathSegment a -> a Source # minimum :: Ord a => PathSegment a -> a Source # sum :: Num a => PathSegment a -> a Source # product :: Num a => PathSegment a -> a Source # | |
| Traversable PathSegment Source # | |
Defined in Ipe.Path Methods traverse :: Applicative f => (a -> f b) -> PathSegment a -> f (PathSegment b) Source # sequenceA :: Applicative f => PathSegment (f a) -> f (PathSegment a) Source # mapM :: Monad m => (a -> m b) -> PathSegment a -> m (PathSegment b) Source # sequence :: Monad m => PathSegment (m a) -> m (PathSegment a) Source # | |
| Show r => Show (PathSegment r) Source # | |
| Eq r => Eq (PathSegment r) Source # | |
Defined in Ipe.Path Methods (==) :: PathSegment r -> PathSegment r -> Bool Source # (/=) :: PathSegment r -> PathSegment r -> Bool Source # | |
| (Coordinate r, Fractional r, Eq r) => IpeReadText (NonEmpty (PathSegment r)) Source # | |
Defined in Ipe.Reader Methods ipeReadText :: Text -> Either ConversionError (NonEmpty (PathSegment r)) Source # | |
| IpeWriteText r => IpeWriteText (PathSegment r) Source # | |
Defined in Ipe.Writer Methods ipeWriteText :: PathSegment r -> Maybe Text Source # | |
| (Fractional r, Eq r) => IsTransformable (PathSegment r) Source # | |
Defined in Ipe.Path Methods transformBy :: Transformation (Dimension (PathSegment r)) (NumType (PathSegment r)) -> PathSegment r -> PathSegment r Source # | |
| type Dimension (PathSegment r) Source # | |
Defined in Ipe.Path | |
| type NumType (PathSegment r) Source # | |
Defined in Ipe.Path | |
Ipe Symbols, i.e. Points
A symbol (point) in ipe
Instances
| Functor IpeSymbol Source # | |||||
| Foldable IpeSymbol Source # | |||||
Defined in Ipe.Content Methods fold :: Monoid m => IpeSymbol m -> m Source # foldMap :: Monoid m => (a -> m) -> IpeSymbol a -> m Source # foldMap' :: Monoid m => (a -> m) -> IpeSymbol a -> m Source # foldr :: (a -> b -> b) -> b -> IpeSymbol a -> b Source # foldr' :: (a -> b -> b) -> b -> IpeSymbol a -> b Source # foldl :: (b -> a -> b) -> b -> IpeSymbol a -> b Source # foldl' :: (b -> a -> b) -> b -> IpeSymbol a -> b Source # foldr1 :: (a -> a -> a) -> IpeSymbol a -> a Source # foldl1 :: (a -> a -> a) -> IpeSymbol a -> a Source # toList :: IpeSymbol a -> [a] Source # null :: IpeSymbol a -> Bool Source # length :: IpeSymbol a -> Int Source # elem :: Eq a => a -> IpeSymbol a -> Bool Source # maximum :: Ord a => IpeSymbol a -> a Source # minimum :: Ord a => IpeSymbol a -> a Source # | |||||
| Traversable IpeSymbol Source # | |||||
Defined in Ipe.Content Methods traverse :: Applicative f => (a -> f b) -> IpeSymbol a -> f (IpeSymbol b) Source # sequenceA :: Applicative f => IpeSymbol (f a) -> f (IpeSymbol a) Source # mapM :: Monad m => (a -> m b) -> IpeSymbol a -> m (IpeSymbol b) Source # sequence :: Monad m => IpeSymbol (m a) -> m (IpeSymbol a) Source # | |||||
| ToObject IpeSymbol Source # | |||||
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' IpeSymbol r -> IpeObject r Source # | |||||
| Generic (IpeSymbol r) Source # | |||||
Defined in Ipe.Content Associated Types
| |||||
| Show r => Show (IpeSymbol r) Source # | |||||
| Eq r => Eq (IpeSymbol r) Source # | |||||
| Ord r => Ord (IpeSymbol r) Source # | |||||
Defined in Ipe.Content Methods compare :: IpeSymbol r -> IpeSymbol r -> Ordering Source # (<) :: IpeSymbol r -> IpeSymbol r -> Bool Source # (<=) :: IpeSymbol r -> IpeSymbol r -> Bool Source # (>) :: IpeSymbol r -> IpeSymbol r -> Bool Source # (>=) :: IpeSymbol r -> IpeSymbol r -> Bool Source # | |||||
| Coordinate r => IpeRead (IpeSymbol r) Source # | Ipe read instances | ||||
Defined in Ipe.Reader | |||||
| IpeWriteText r => IpeWrite (IpeSymbol r) Source # | |||||
| Fractional r => IsTransformable (IpeSymbol r) Source # | |||||
Defined in Ipe.Content Methods transformBy :: Transformation (Dimension (IpeSymbol r)) (NumType (IpeSymbol r)) -> IpeSymbol r -> IpeSymbol r Source # | |||||
| type Rep (IpeSymbol r) Source # | |||||
Defined in Ipe.Content type Rep (IpeSymbol r) = D1 ('MetaData "IpeSymbol" "Ipe.Content" "hgeometry-ipe-1.0.0.0-inplace" 'False) (C1 ('MetaCons "Symbol" 'PrefixI 'True) (S1 ('MetaSel ('Just "_symbolPoint") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Point 2 r)) :*: S1 ('MetaSel ('Just "_symbolName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))) | |||||
| type Dimension (IpeSymbol r) Source # | |||||
Defined in Ipe.Content | |||||
| type NumType (IpeSymbol r) Source # | |||||
Defined in Ipe.Content | |||||
symbolPoint :: forall r r' f. Functor f => (Point 2 r -> f (Point 2 r')) -> IpeSymbol r -> f (IpeSymbol r') Source #
Lens to access the position of the symbol
symbolName :: forall r f. Functor f => (Text -> f Text) -> IpeSymbol r -> f (IpeSymbol r) Source #
Lens to access the name of the symbol
Groups and Objects
Group Attributes
A group is essentially a list of IpeObjects.
Instances
| Functor Group Source # | |||||
| Foldable Group Source # | |||||
Defined in Ipe.Content Methods fold :: Monoid m => Group m -> m Source # foldMap :: Monoid m => (a -> m) -> Group a -> m Source # foldMap' :: Monoid m => (a -> m) -> Group a -> m Source # foldr :: (a -> b -> b) -> b -> Group a -> b Source # foldr' :: (a -> b -> b) -> b -> Group a -> b Source # foldl :: (b -> a -> b) -> b -> Group a -> b Source # foldl' :: (b -> a -> b) -> b -> Group a -> b Source # foldr1 :: (a -> a -> a) -> Group a -> a Source # foldl1 :: (a -> a -> a) -> Group a -> a Source # toList :: Group a -> [a] Source # null :: Group a -> Bool Source # length :: Group a -> Int Source # elem :: Eq a => a -> Group a -> Bool Source # maximum :: Ord a => Group a -> a Source # minimum :: Ord a => Group a -> a Source # | |||||
| Traversable Group Source # | |||||
| ToObject Group Source # | |||||
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' Group r -> IpeObject r Source # | |||||
| Generic (Group r) Source # | |||||
Defined in Ipe.Content Associated Types
| |||||
| Show r => Show (Group r) Source # | |||||
| Eq r => Eq (Group r) Source # | |||||
| HasDefaultIpeOut (Group r) Source # | |||||
Defined in Ipe.IpeOut Associated Types
| |||||
| (Coordinate r, Eq r) => IpeRead (Group r) Source # | |||||
Defined in Ipe.Reader | |||||
| IpeWriteText r => IpeWrite (Group r) Source # | |||||
| (Fractional r, Eq r) => IsTransformable (Group r) Source # | |||||
Defined in Ipe.Content Methods transformBy :: Transformation (Dimension (Group r)) (NumType (Group r)) -> Group r -> Group r Source # | |||||
| type Rep (Group r) Source # | |||||
Defined in Ipe.Content | |||||
| type DefaultIpeOut (Group r) Source # | |||||
Defined in Ipe.IpeOut | |||||
| type Dimension (Group r) Source # | |||||
Defined in Ipe.Content | |||||
| type NumType (Group r) Source # | |||||
Defined in Ipe.Content | |||||
groupItems :: forall r s f. Functor f => ([IpeObject r] -> f [IpeObject s]) -> Group r -> f (Group s) Source #
Text Objects
A text label
Instances
| Functor TextLabel Source # | |||||
| Foldable TextLabel Source # | |||||
Defined in Ipe.Content Methods fold :: Monoid m => TextLabel m -> m Source # foldMap :: Monoid m => (a -> m) -> TextLabel a -> m Source # foldMap' :: Monoid m => (a -> m) -> TextLabel a -> m Source # foldr :: (a -> b -> b) -> b -> TextLabel a -> b Source # foldr' :: (a -> b -> b) -> b -> TextLabel a -> b Source # foldl :: (b -> a -> b) -> b -> TextLabel a -> b Source # foldl' :: (b -> a -> b) -> b -> TextLabel a -> b Source # foldr1 :: (a -> a -> a) -> TextLabel a -> a Source # foldl1 :: (a -> a -> a) -> TextLabel a -> a Source # toList :: TextLabel a -> [a] Source # null :: TextLabel a -> Bool Source # length :: TextLabel a -> Int Source # elem :: Eq a => a -> TextLabel a -> Bool Source # maximum :: Ord a => TextLabel a -> a Source # minimum :: Ord a => TextLabel a -> a Source # | |||||
| Traversable TextLabel Source # | |||||
Defined in Ipe.Content Methods traverse :: Applicative f => (a -> f b) -> TextLabel a -> f (TextLabel b) Source # sequenceA :: Applicative f => TextLabel (f a) -> f (TextLabel a) Source # mapM :: Monad m => (a -> m b) -> TextLabel a -> m (TextLabel b) Source # sequence :: Monad m => TextLabel (m a) -> m (TextLabel a) Source # | |||||
| ToObject TextLabel Source # | |||||
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' TextLabel r -> IpeObject r Source # | |||||
| Generic (TextLabel r) Source # | |||||
Defined in Ipe.Content Associated Types
| |||||
| Show r => Show (TextLabel r) Source # | |||||
| Eq r => Eq (TextLabel r) Source # | |||||
| Ord r => Ord (TextLabel r) Source # | |||||
Defined in Ipe.Content Methods compare :: TextLabel r -> TextLabel r -> Ordering Source # (<) :: TextLabel r -> TextLabel r -> Bool Source # (<=) :: TextLabel r -> TextLabel r -> Bool Source # (>) :: TextLabel r -> TextLabel r -> Bool Source # (>=) :: TextLabel r -> TextLabel r -> Bool Source # | |||||
| Coordinate r => IpeRead (TextLabel r) Source # | |||||
Defined in Ipe.Reader | |||||
| IpeWriteText r => IpeWrite (TextLabel r) Source # | |||||
| Fractional r => IsTransformable (TextLabel r) Source # | |||||
Defined in Ipe.Content Methods transformBy :: Transformation (Dimension (TextLabel r)) (NumType (TextLabel r)) -> TextLabel r -> TextLabel r Source # | |||||
| type Rep (TextLabel r) Source # | |||||
Defined in Ipe.Content type Rep (TextLabel r) = D1 ('MetaData "TextLabel" "Ipe.Content" "hgeometry-ipe-1.0.0.0-inplace" 'False) (C1 ('MetaCons "Label" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Point 2 r)))) | |||||
| type Dimension (TextLabel r) Source # | |||||
Defined in Ipe.Content | |||||
| type NumType (TextLabel r) Source # | |||||
Defined in Ipe.Content | |||||
A Minipage
Instances
| Functor MiniPage Source # | |||||
| Foldable MiniPage Source # | |||||
Defined in Ipe.Content Methods fold :: Monoid m => MiniPage m -> m Source # foldMap :: Monoid m => (a -> m) -> MiniPage a -> m Source # foldMap' :: Monoid m => (a -> m) -> MiniPage a -> m Source # foldr :: (a -> b -> b) -> b -> MiniPage a -> b Source # foldr' :: (a -> b -> b) -> b -> MiniPage a -> b Source # foldl :: (b -> a -> b) -> b -> MiniPage a -> b Source # foldl' :: (b -> a -> b) -> b -> MiniPage a -> b Source # foldr1 :: (a -> a -> a) -> MiniPage a -> a Source # foldl1 :: (a -> a -> a) -> MiniPage a -> a Source # toList :: MiniPage a -> [a] Source # null :: MiniPage a -> Bool Source # length :: MiniPage a -> Int Source # elem :: Eq a => a -> MiniPage a -> Bool Source # maximum :: Ord a => MiniPage a -> a Source # minimum :: Ord a => MiniPage a -> a Source # | |||||
| Traversable MiniPage Source # | |||||
Defined in Ipe.Content | |||||
| ToObject MiniPage Source # | |||||
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' MiniPage r -> IpeObject r Source # | |||||
| Generic (MiniPage r) Source # | |||||
Defined in Ipe.Content Associated Types
| |||||
| Show r => Show (MiniPage r) Source # | |||||
| Eq r => Eq (MiniPage r) Source # | |||||
| Ord r => Ord (MiniPage r) Source # | |||||
Defined in Ipe.Content Methods compare :: MiniPage r -> MiniPage r -> Ordering Source # (<) :: MiniPage r -> MiniPage r -> Bool Source # (<=) :: MiniPage r -> MiniPage r -> Bool Source # (>) :: MiniPage r -> MiniPage r -> Bool Source # (>=) :: MiniPage r -> MiniPage r -> Bool Source # | |||||
| Coordinate r => IpeRead (MiniPage r) Source # | |||||
Defined in Ipe.Reader | |||||
| IpeWriteText r => IpeWrite (MiniPage r) Source # | |||||
| Fractional r => IsTransformable (MiniPage r) Source # | |||||
Defined in Ipe.Content Methods transformBy :: Transformation (Dimension (MiniPage r)) (NumType (MiniPage r)) -> MiniPage r -> MiniPage r Source # | |||||
| type Rep (MiniPage r) Source # | |||||
Defined in Ipe.Content type Rep (MiniPage r) = D1 ('MetaData "MiniPage" "Ipe.Content" "hgeometry-ipe-1.0.0.0-inplace" 'False) (C1 ('MetaCons "MiniPage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Point 2 r)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 r)))) | |||||
| type Dimension (MiniPage r) Source # | |||||
Defined in Ipe.Content | |||||
| type NumType (MiniPage r) Source # | |||||
Defined in Ipe.Content | |||||
Image Objects
bitmap image objects in Ipe
Instances
| Functor Image Source # | |||||
| Foldable Image Source # | |||||
Defined in Ipe.Content Methods fold :: Monoid m => Image m -> m Source # foldMap :: Monoid m => (a -> m) -> Image a -> m Source # foldMap' :: Monoid m => (a -> m) -> Image a -> m Source # foldr :: (a -> b -> b) -> b -> Image a -> b Source # foldr' :: (a -> b -> b) -> b -> Image a -> b Source # foldl :: (b -> a -> b) -> b -> Image a -> b Source # foldl' :: (b -> a -> b) -> b -> Image a -> b Source # foldr1 :: (a -> a -> a) -> Image a -> a Source # foldl1 :: (a -> a -> a) -> Image a -> a Source # toList :: Image a -> [a] Source # null :: Image a -> Bool Source # length :: Image a -> Int Source # elem :: Eq a => a -> Image a -> Bool Source # maximum :: Ord a => Image a -> a Source # minimum :: Ord a => Image a -> a Source # | |||||
| Traversable Image Source # | |||||
| ToObject Image Source # | |||||
Defined in Ipe.Content Methods mkIpeObject :: IpeObject' Image r -> IpeObject r Source # | |||||
| Generic (Image r) Source # | |||||
Defined in Ipe.Content Associated Types
| |||||
| Show r => Show (Image r) Source # | |||||
| Eq r => Eq (Image r) Source # | |||||
| Ord r => Ord (Image r) Source # | |||||
| Coordinate r => IpeRead (Image r) Source # | |||||
Defined in Ipe.Reader | |||||
| IpeWriteText r => IpeWrite (Image r) Source # | |||||
| Fractional r => IsTransformable (Image r) Source # | |||||
Defined in Ipe.Content Methods transformBy :: Transformation (Dimension (Image r)) (NumType (Image r)) -> Image r -> Image r Source # | |||||
| type Rep (Image r) Source # | |||||
Defined in Ipe.Content type Rep (Image r) = D1 ('MetaData "Image" "Ipe.Content" "hgeometry-ipe-1.0.0.0-inplace" 'False) (C1 ('MetaCons "Image" 'PrefixI 'True) (S1 ('MetaSel ('Just "_imageData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ()) :*: S1 ('MetaSel ('Just "_imageRect") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Rectangle (Point 2 r))))) | |||||
| type Dimension (Image r) Source # | |||||
Defined in Ipe.Content | |||||
| type NumType (Image r) Source # | |||||
Defined in Ipe.Content | |||||
imageData :: forall r f. Functor f => (() -> f ()) -> Image r -> f (Image r) Source #
Lens to access the image data
imageRect :: forall r r' f. Functor f => (Rectangle (Point 2 r) -> f (Rectangle (Point 2 r'))) -> Image r -> f (Image r') Source #
Lens to access the rectangle of the image
Attributes
type IpeAttributes (g :: Type -> Type) r = Attributes' r (AttributesOf g) Source #
type Attributes' r = Attributes (AttrMapSym1 r) Source #
Attributes' :: Type -> [AttributeUniverse] -> Type
type family AttributesOf (t :: Type -> Type) :: [AttributeUniverse] where ... Source #
type family AttrMap r (l :: AttributeUniverse) where ... Source #
The mapping between the labels of the the attributes and the types of the
attributes with these labels. For example, the Matrix label/attribute should
have a value of type 'Matrix 3 3 r'.
Equations
| AttrMap r 'Layer = LayerName | |
| AttrMap r 'Matrix = Matrix 3 3 r | |
| AttrMap r 'Pin = PinType | |
| AttrMap r 'Transformations = TransformationTypes | |
| AttrMap r 'Stroke = IpeColor r | |
| AttrMap r 'Pen = IpePen r | |
| AttrMap r 'Fill = IpeColor r | |
| AttrMap r 'Size = IpeSize r | |
| AttrMap r 'Dash = IpeDash r | |
| AttrMap r 'LineCap = Int | |
| AttrMap r 'LineJoin = Int | |
| AttrMap r 'FillRule = FillType | |
| AttrMap r 'Arrow = IpeArrow r | |
| AttrMap r 'RArrow = IpeArrow r | |
| AttrMap r 'StrokeOpacity = IpeOpacity | |
| AttrMap r 'Opacity = IpeOpacity | |
| AttrMap r 'Tiling = IpeTiling | |
| AttrMap r 'Gradient = IpeGradient | |
| AttrMap r 'Width = TextSizeUnit r | |
| AttrMap r 'Height = TextSizeUnit r | |
| AttrMap r 'Depth = TextSizeUnit r | |
| AttrMap r 'VAlign = VerticalAlignment | |
| AttrMap r 'HAlign = HorizontalAlignment | |
| AttrMap r 'Style = TeXStyle | |
| AttrMap r 'Clip = Path r |
data AttrMapSym1 a6989586621679209029 (b :: TyFun AttributeUniverse Type) Source #
Instances
| SuppressUnusedWarnings (AttrMapSym1 a6989586621679209029 :: TyFun AttributeUniverse Type -> Type) Source # | |
Defined in Ipe.Content Methods suppressUnusedWarnings :: () Source # | |
| type Apply (AttrMapSym1 a6989586621679209029 :: TyFun AttributeUniverse Type -> Type) (a6989586621679209030 :: AttributeUniverse) Source # | |
Defined in Ipe.Content type Apply (AttrMapSym1 a6989586621679209029 :: TyFun AttributeUniverse Type -> Type) (a6989586621679209030 :: AttributeUniverse) = AttrMap a6989586621679209029 a6989586621679209030 | |
attributes :: forall g r f. Functor f => (IpeAttributes g r -> f (IpeAttributes g r)) -> IpeObject' g r -> f (IpeObject' g r) Source #
mapIpeAttrs :: forall (g :: Type -> Type) proxy r s. AllConstrained TraverseIpeAttr (AttributesOf g) => proxy g -> (r -> s) -> IpeAttributes g r -> IpeAttributes g s Source #
Map some function over the coordinates of the ipe Attributes
traverseIpeAttrs :: forall f (g :: Type -> Type) proxy r s. (Applicative f, AllConstrained TraverseIpeAttr (AttributesOf g)) => proxy g -> (r -> f s) -> IpeAttributes g r -> f (IpeAttributes g s) Source #
Traverse for ipe attributes
commonAttributes :: forall r f. Functor f => (Attributes (AttrMapSym1 r) CommonAttributes -> f (Attributes (AttrMapSym1 r) CommonAttributes)) -> IpeObject r -> f (IpeObject r) Source #
Layers and Views
Defines an Layer in Ipe.
Instances
| IsString LayerName Source # | |
| Read LayerName Source # | |
| Show LayerName Source # | |
| Eq LayerName Source # | |
| Ord LayerName Source # | |
Defined in Ipe.Layer | |
| IpeRead LayerName Source # | |
Defined in Ipe.Reader | |
| IpeReadText LayerName Source # | |
Defined in Ipe.Reader Methods ipeReadText :: Text -> Either ConversionError LayerName Source # | |
| IpeWrite LayerName Source # | |
| IpeWriteText LayerName Source # | |
Defined in Ipe.Writer | |
The definition of a view make active layer into an index ?
Instances
| Generic View Source # | |||||
Defined in Ipe.Types Associated Types
| |||||
| Show View Source # | |||||
| Eq View Source # | |||||
| Ord View Source # | |||||
| IpeRead View Source # | |||||
Defined in Ipe.Reader | |||||
| IpeWrite View Source # | |||||
| type Rep View Source # | |||||
Defined in Ipe.Types type Rep View = D1 ('MetaData "View" "Ipe.Types" "hgeometry-ipe-1.0.0.0-inplace" 'False) (C1 ('MetaCons "View" 'PrefixI 'True) (S1 ('MetaSel ('Just "_layerNames") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [LayerName]) :*: S1 ('MetaSel ('Just "_activeLayer") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 LayerName))) | |||||
Styles and Preamble
addStyleSheet :: IpeStyle -> IpeFile r -> IpeFile r Source #
Adds a stylesheet to the ipe file. This will be the first stylesheet, i.e. it has priority over all previously imported stylesheets.
for now we pretty much ignore these
Instances
| Generic IpeStyle Source # | |||||
Defined in Ipe.Types Associated Types
| |||||
| Show IpeStyle Source # | |||||
| Eq IpeStyle Source # | |||||
| IpeRead IpeStyle Source # | |||||
Defined in Ipe.Reader | |||||
| IpeWrite IpeStyle Source # | |||||
| type Rep IpeStyle Source # | |||||
Defined in Ipe.Types type Rep IpeStyle = D1 ('MetaData "IpeStyle" "Ipe.Types" "hgeometry-ipe-1.0.0.0-inplace" 'False) (C1 ('MetaCons "IpeStyle" 'PrefixI 'True) (S1 ('MetaSel ('Just "_styleName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_styleData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Node Text Text)))) | |||||
basicIpeStyle :: IpeStyle Source #
The "basic" ipe stylesheet
opacitiesStyle :: IpeStyle Source #
A stylesheet with some convenient predefined opacities. In particular the opacities "10%","20%",..,"90%".
data IpePreamble Source #
The maybe string is the encoding
Constructors
| IpePreamble (Maybe Text) Text |
Instances
| Generic IpePreamble Source # | |||||
Defined in Ipe.Types Associated Types
Methods from :: IpePreamble -> Rep IpePreamble x Source # to :: Rep IpePreamble x -> IpePreamble Source # | |||||
| Read IpePreamble Source # | |||||
| Show IpePreamble Source # | |||||
| Eq IpePreamble Source # | |||||
Defined in Ipe.Types Methods (==) :: IpePreamble -> IpePreamble -> Bool Source # (/=) :: IpePreamble -> IpePreamble -> Bool Source # | |||||
| Ord IpePreamble Source # | |||||
Defined in Ipe.Types Methods compare :: IpePreamble -> IpePreamble -> Ordering Source # (<) :: IpePreamble -> IpePreamble -> Bool Source # (<=) :: IpePreamble -> IpePreamble -> Bool Source # (>) :: IpePreamble -> IpePreamble -> Bool Source # (>=) :: IpePreamble -> IpePreamble -> Bool Source # max :: IpePreamble -> IpePreamble -> IpePreamble Source # min :: IpePreamble -> IpePreamble -> IpePreamble Source # | |||||
| IpeWrite IpePreamble Source # | |||||
Defined in Ipe.Writer | |||||
| type Rep IpePreamble Source # | |||||
Defined in Ipe.Types type Rep IpePreamble = D1 ('MetaData "IpePreamble" "Ipe.Types" "hgeometry-ipe-1.0.0.0-inplace" 'False) (C1 ('MetaCons "IpePreamble" 'PrefixI 'True) (S1 ('MetaSel ('Just "_encoding") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_preambleData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))) | |||||
preambleData :: Lens' IpePreamble Text Source #
Lens to access the preambleData