Portability | GHC |
---|---|

Stability | experimental |

Maintainer | Ian-Woo Kim <ianwookim@gmail.com> |

Safe Haskell | None |

- createTempRender :: CanvasGeometry -> a -> MainCoroutine (TempRender a)
- penPageSwitch :: PageNum -> MainCoroutine CanvasInfoBox
- commonPenStart :: (forall a. CanvasInfo a -> PageNum -> CanvasGeometry -> (Double, Double) -> MainCoroutine ()) -> CanvasId -> PointerCoord -> MainCoroutine ()
- penStart :: CanvasId -> PointerCoord -> MainCoroutine ()
- penProcess :: CanvasId -> PageNum -> CanvasGeometry -> TempRender (Seq (Double, Double, Double)) -> ((Double, Double), Double) -> MainCoroutine (Seq (Double, Double, Double))
- skipIfNotInSamePage :: Monad m => PageNum -> CanvasGeometry -> PointerCoord -> m a -> ((PointerCoord, (Double, Double)) -> m a) -> m a
- switchActionEnteringDiffPage :: Monad m => PageNum -> CanvasGeometry -> PointerCoord -> m a -> (PageNum -> (PageNum, PageCoordinate) -> m a) -> (PageNum -> (PageNum, PageCoordinate) -> m a) -> m a
- penMoveAndUpOnly :: Monad m => UserEvent -> PageNum -> CanvasGeometry -> m a -> ((PointerCoord, (Double, Double)) -> m a) -> (PointerCoord -> m a) -> m a
- penMoveAndUpInterPage :: Monad m => UserEvent -> PageNum -> CanvasGeometry -> m a -> (PageNum -> (PageNum, PageCoordinate) -> m a) -> (PointerCoord -> m a) -> m a
- processWithTimeInterval :: (Monad m, MonadIO m) => NominalDiffTime -> (UTCTime -> m a) -> (UTCTime -> m a) -> UTCTime -> m a
- processWithDefTimeInterval :: (Monad m, MonadIO m) => (UTCTime -> m a) -> (UTCTime -> m a) -> UTCTime -> m a

# Documentation

createTempRender :: CanvasGeometry -> a -> MainCoroutine (TempRender a)Source

penPageSwitch :: PageNum -> MainCoroutine CanvasInfoBoxSource

page switch if pen click a page different than the current page

commonPenStart :: (forall a. CanvasInfo a -> PageNum -> CanvasGeometry -> (Double, Double) -> MainCoroutine ()) -> CanvasId -> PointerCoord -> MainCoroutine ()Source

Common Pen Work starting point

penStart :: CanvasId -> PointerCoord -> MainCoroutine ()Source

enter pen drawing mode

penProcess :: CanvasId -> PageNum -> CanvasGeometry -> TempRender (Seq (Double, Double, Double)) -> ((Double, Double), Double) -> MainCoroutine (Seq (Double, Double, Double))Source

main pen coordinate adding process | now being changed

skipIfNotInSamePage :: Monad m => PageNum -> CanvasGeometry -> PointerCoord -> m a -> ((PointerCoord, (Double, Double)) -> m a) -> m aSource

switchActionEnteringDiffPage :: Monad m => PageNum -> CanvasGeometry -> PointerCoord -> m a -> (PageNum -> (PageNum, PageCoordinate) -> m a) -> (PageNum -> (PageNum, PageCoordinate) -> m a) -> m aSource

penMoveAndUpOnly :: Monad m => UserEvent -> PageNum -> CanvasGeometry -> m a -> ((PointerCoord, (Double, Double)) -> m a) -> (PointerCoord -> m a) -> m aSource

in page action

penMoveAndUpInterPage :: Monad m => UserEvent -> PageNum -> CanvasGeometry -> m a -> (PageNum -> (PageNum, PageCoordinate) -> m a) -> (PointerCoord -> m a) -> m aSource