| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Ipe.Content
Synopsis
- 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')
- data TextLabel r = Label Text (Point 2 r)
- data MiniPage r = MiniPage Text (Point 2 r) r
- width :: MiniPage t -> t
- 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 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
- newtype Group r = Group [IpeObject r]
- groupItems :: forall r s f. Functor f => ([IpeObject r] -> f [IpeObject s]) -> Group r -> f (Group s)
- 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
- 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)
- flattenGroups :: [IpeObject r] -> [IpeObject r]
Documentation
Image Objects
bitmap image objects in Ipe
Instances
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
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 | |||||
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
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 | |
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 #
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 # | |
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 #
flattenGroups :: [IpeObject r] -> [IpeObject r] Source #
collect all non-group objects