-- GENERATED by C->Haskell Compiler, version 0.28.6 Switcheroo, 25 November 2017 (Haskell)
-- Edit the ORIGNAL .chs file instead!


{-# LINE 1 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}
{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables, UndecidableInstances #-}
{-# OPTIONS_GHC -fno-warn-orphans #-}
module Graphics.UI.FLTK.LowLevel.Tooltip
  (
    tooltipHoverdelay,
    tooltipSetHoverdelay,
    tooltipEnabled,
    tooltipEnable,
    tooltipColor,
    tooltipCurrent,
    tooltipDelay,
    tooltipFont,
    tooltipMarginHeight,
    tooltipMarginWidth,
    tooltipSetColor,
    tooltipSetCurrent,
    tooltipSetDelay,
    tooltipSetFont,
    tooltipSetMarginHeight,
    tooltipSetMarginWidth,
    tooltipSetSize,
    tooltipSetTextcolor,
    tooltipSetWrapWidth,
    tooltipSize,
    tooltipTextcolor,
    tooltipWrapWidth
  )
where
import qualified Foreign.C.Types as C2HSImp
import qualified Foreign.Ptr as C2HSImp





import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)

import Graphics.UI.FLTK.LowLevel.Fl_Types
import Graphics.UI.FLTK.LowLevel.Utils
import Graphics.UI.FLTK.LowLevel.Hierarchy
import Graphics.UI.FLTK.LowLevel.Dispatch
import Graphics.UI.FLTK.LowLevel.Fl_Enumerations
tooltipDelay :: IO ((Double))
tooltipDelay =
  tooltipDelay'_ >>= \res ->
  let {res' = cFloatConv res} in
  Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return (Bool
res')

{-# LINE 39 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSetDelay :: (Double) -> IO ()
tooltipSetDelay a1 =
  let {a1' = cFloatConv a1} in 
  tooltipSetDelay'_ a1' >>
  return ()

{-# LINE 40 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipHoverdelay :: IO ((Double))
tooltipHoverdelay =
  tooltipHoverdelay'_ >>= \res ->
  let {res' = cFloatConv res} in
  return (res')

{-# LINE 41 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSetHoverdelay :: (Double) -> IO ()
tooltipSetHoverdelay a1 =
  let {a1' = cFloatConv a1} in 
  tooltipSetHoverdelay'_ a1' >>
  return ()

{-# LINE 42 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipEnabled :: IO ((Bool))
tooltipEnabled =
  tooltipEnabled'_ >>= \res ->
  let {res' = cToBool res} in
  return (res')

{-# LINE 43 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipEnable :: (Bool) -> IO ()
tooltipEnable a1 =
  let {a1' = cFromBool a1} in 
  tooltipEnable'_ a1' >>
  return ()

{-# LINE 44 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipCurrent' :: IO ((Ptr ()))
tooltipCurrent' =
  tooltipCurrent''_ >>= \res ->
  let {res' = id res} in
  return (res')

{-# LINE 45 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipCurrent :: IO (Maybe (Ref Widget))
tooltipCurrent = tooltipCurrent' >>= toMaybeRef
tooltipSetCurrent' :: (Ptr ()) -> IO ()
tooltipSetCurrent' a1 =
  let {a1' = id a1} in 
  tooltipSetCurrent''_ a1' >>
  return ()

{-# LINE 48 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSetCurrent:: (Parent a WidgetBase) => Maybe (Ref a) -> IO ()
tooltipSetCurrent w =
  case w of
    Nothing -> tooltipSetCurrent' nullPtr
    Just ref -> withRef ref (\refPtr -> tooltipSetCurrent' refPtr)

tooltipFont :: IO ((Font))
tooltipFont :: IO Font
tooltipFont =
  IO CInt
tooltipFont'_ IO CInt -> (CInt -> IO Font) -> IO Font
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= \res :: CInt
res ->
  let {res' :: Font
res' = cToFont res} in
  Font -> IO Font
forall (m :: * -> *) a. Monad m => a -> m a
return (Font
res')

{-# LINE 55 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSetFont :: (Font) -> IO ()
tooltipSetFont a1 =
  let {a1' = cFromFont a1} in 
  tooltipSetFont'_ a1' >>
  return ()

{-# LINE 56 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}


tooltipSize' :: IO ((CInt))
tooltipSize' =
  tooltipSize''_ >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 58 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSize :: IO FontSize
tooltipSize = tooltipSize' >>= return . FontSize
tooltipSetSize' :: (CInt) -> IO ()
tooltipSetSize' a1 =
  let {a1' = fromIntegral a1} in 
  tooltipSetSize''_ a1' >>
  return ()

{-# LINE 61 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSetSize :: FontSize -> IO ()
tooltipSetSize (FontSize fs) = tooltipSetSize' fs
tooltipColor' :: IO ((CUInt))
tooltipColor' =
  tooltipColor''_ >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 64 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipColor :: IO Color
tooltipColor = tooltipColor' >>= return . Color
tooltipSetColor' :: (CUInt) -> IO ()
tooltipSetColor' a1 =
  let {a1' = fromIntegral a1} in 
  tooltipSetColor''_ a1' >>
  return ()

{-# LINE 67 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSetColor :: Color -> IO ()
tooltipSetColor (Color fs) = tooltipSetColor' fs
tooltipTextcolor' :: IO ((CUInt))
tooltipTextcolor' =
  tooltipTextcolor''_ >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 70 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipTextcolor :: IO Color
tooltipTextcolor = tooltipTextcolor' >>= return . Color
tooltipSetTextcolor' :: (CUInt) -> IO ()
tooltipSetTextcolor' a1 =
  let {a1' = fromIntegral a1} in 
  tooltipSetTextcolor''_ a1' >>
  return ()

{-# LINE 73 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSetTextcolor :: Color -> IO ()
tooltipSetTextcolor (Color fs) = tooltipSetTextcolor' fs

tooltipMarginwidth' :: IO ((CInt))
tooltipMarginwidth' =
  tooltipMarginwidth''_ >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 77 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipMarginWidth :: IO Width
tooltipMarginWidth = tooltipMarginwidth' >>= return . Width . fromIntegral
tooltipSetMarginwidth' :: (CInt) -> IO ()
tooltipSetMarginwidth' a1 =
  let {a1' = fromIntegral a1} in 
  tooltipSetMarginwidth''_ a1' >>
  return ()

{-# LINE 80 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSetMarginWidth :: Width -> IO ()
tooltipSetMarginWidth (Width fs) = tooltipSetMarginwidth' (fromIntegral fs)

tooltipMarginheight' :: IO ((CInt))
tooltipMarginheight' =
  tooltipMarginheight''_ >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 84 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipMarginHeight :: IO Height
tooltipMarginHeight = tooltipMarginheight' >>= return . Height . fromIntegral
tooltipSetMarginheight' :: (CInt) -> IO ()
tooltipSetMarginheight' a1 =
  let {a1' = fromIntegral a1} in 
  tooltipSetMarginheight''_ a1' >>
  return ()

{-# LINE 87 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSetMarginHeight :: Height -> IO ()
tooltipSetMarginHeight (Height fs) = tooltipSetMarginheight' (fromIntegral fs)

tooltipWrapWidth' :: IO ((CInt))
tooltipWrapWidth' =
  tooltipWrapWidth''_ >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 91 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipWrapWidth :: IO Width
tooltipWrapWidth = tooltipWrapWidth' >>= return . Width . fromIntegral
tooltipSetWrapWidth' :: (CInt) -> IO ()
tooltipSetWrapWidth' a1 =
  let {a1' = fromIntegral a1} in 
  tooltipSetWrapWidth''_ a1' >>
  return ()

{-# LINE 94 "src/Graphics/UI/FLTK/LowLevel/Tooltip.chs" #-}

tooltipSetWrapWidth :: Width -> IO ()
tooltipSetWrapWidth (Width fs) = tooltipSetWrapWidth' (fromIntegral fs)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_delay"
  tooltipDelay'_ :: (IO C2HSImp.CFloat)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_set_delay"
  tooltipSetDelay'_ :: (C2HSImp.CFloat -> (IO ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_hoverdelay"
  tooltipHoverdelay'_ :: (IO C2HSImp.CFloat)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_set_hoverdelay"
  tooltipSetHoverdelay'_ :: (C2HSImp.CFloat -> (IO ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_enabled"
  tooltipEnabled'_ :: (IO C2HSImp.CInt)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_enable_with_b"
  tooltipEnable'_ :: (C2HSImp.CInt -> (IO ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_current"
  tooltipCurrent''_ :: (IO (C2HSImp.Ptr ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_set_current"
  tooltipSetCurrent''_ :: ((C2HSImp.Ptr ()) -> (IO ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_font"
  tooltipFont'_ :: (IO C2HSImp.CInt)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_set_font"
  tooltipSetFont'_ :: (C2HSImp.CInt -> (IO ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_size"
  tooltipSize''_ :: (IO C2HSImp.CInt)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_set_size"
  tooltipSetSize''_ :: (C2HSImp.CInt -> (IO ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_color"
  tooltipColor''_ :: (IO C2HSImp.CUInt)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_set_color"
  tooltipSetColor''_ :: (C2HSImp.CUInt -> (IO ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_textcolor"
  tooltipTextcolor''_ :: (IO C2HSImp.CUInt)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_set_textcolor"
  tooltipSetTextcolor''_ :: (C2HSImp.CUInt -> (IO ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_margin_width"
  tooltipMarginwidth''_ :: (IO C2HSImp.CInt)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_set_margin_width"
  tooltipSetMarginwidth''_ :: (C2HSImp.CInt -> (IO ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_margin_height"
  tooltipMarginheight''_ :: (IO C2HSImp.CInt)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_set_margin_height"
  tooltipSetMarginheight''_ :: (C2HSImp.CInt -> (IO ()))

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_wrap_width"
  tooltipWrapWidth''_ :: (IO C2HSImp.CInt)

foreign import ccall safe "Graphics/UI/FLTK/LowLevel/Tooltip.chs.h Fl_Tooltip_set_wrap_width"
  tooltipSetWrapWidth''_ :: (C2HSImp.CInt -> (IO ()))