{-# LINE 2 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
module Graphics.UI.Gtk.Misc.Tooltip (
Tooltip,
TooltipClass,
castToTooltip,
toTooltip,
tooltipSetMarkup,
tooltipSetText,
tooltipSetIcon,
tooltipSetIconFromStock,
tooltipSetIconFromIconName,
tooltipSetCustom,
tooltipTriggerTooltipQuery,
tooltipSetTipArea,
tooltipSetIconFromGIcon,
) where
import Data.Maybe (fromMaybe)
import System.Glib.FFI
import System.Glib.UTFString
import Graphics.UI.Gtk.General.Structs (IconSize(..), Rectangle)
import Graphics.UI.Gtk.Types
{-# LINE 110 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
import System.GIO.Types
{-# LINE 112 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
{-# LINE 115 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
tooltipSetMarkup :: (TooltipClass self, GlibString markup) => self
-> Maybe markup
-> IO ()
tooltipSetMarkup :: forall self markup.
(TooltipClass self, GlibString markup) =>
self -> Maybe markup -> IO ()
tooltipSetMarkup self
self Maybe markup
markup =
(markup -> (Ptr CChar -> IO ()) -> IO ())
-> Maybe markup -> (Ptr CChar -> IO ()) -> IO ()
forall a b c.
(a -> (Ptr b -> IO c) -> IO c)
-> Maybe a -> (Ptr b -> IO c) -> IO c
maybeWith markup -> (Ptr CChar -> IO ()) -> IO ()
forall a. markup -> (Ptr CChar -> IO a) -> IO a
forall s a. GlibString s => s -> (Ptr CChar -> IO a) -> IO a
withUTFString Maybe markup
markup ((Ptr CChar -> IO ()) -> IO ()) -> (Ptr CChar -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr CChar
markupPtr ->
(\(Tooltip ForeignPtr Tooltip
arg1) Ptr CChar
arg2 -> ForeignPtr Tooltip -> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Tooltip
arg1 ((Ptr Tooltip -> IO ()) -> IO ())
-> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Tooltip
argPtr1 ->Ptr Tooltip -> Ptr CChar -> IO ()
gtk_tooltip_set_markup Ptr Tooltip
argPtr1 Ptr CChar
arg2)
{-# LINE 128 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
(toTooltip self)
Ptr CChar
markupPtr
tooltipSetText :: (TooltipClass self, GlibString string) => self
-> Maybe string
-> IO ()
tooltipSetText :: forall self markup.
(TooltipClass self, GlibString markup) =>
self -> Maybe markup -> IO ()
tooltipSetText self
self Maybe string
text =
(string -> (Ptr CChar -> IO ()) -> IO ())
-> Maybe string -> (Ptr CChar -> IO ()) -> IO ()
forall a b c.
(a -> (Ptr b -> IO c) -> IO c)
-> Maybe a -> (Ptr b -> IO c) -> IO c
maybeWith string -> (Ptr CChar -> IO ()) -> IO ()
forall a. string -> (Ptr CChar -> IO a) -> IO a
forall s a. GlibString s => s -> (Ptr CChar -> IO a) -> IO a
withUTFString Maybe string
text ((Ptr CChar -> IO ()) -> IO ()) -> (Ptr CChar -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr CChar
textPtr ->
(\(Tooltip ForeignPtr Tooltip
arg1) Ptr CChar
arg2 -> ForeignPtr Tooltip -> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Tooltip
arg1 ((Ptr Tooltip -> IO ()) -> IO ())
-> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Tooltip
argPtr1 ->Ptr Tooltip -> Ptr CChar -> IO ()
gtk_tooltip_set_text Ptr Tooltip
argPtr1 Ptr CChar
arg2)
{-# LINE 140 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
(toTooltip self)
Ptr CChar
textPtr
tooltipSetIcon :: TooltipClass self => self
-> Maybe Pixbuf
-> IO ()
tooltipSetIcon :: forall self. TooltipClass self => self -> Maybe Pixbuf -> IO ()
tooltipSetIcon self
self Maybe Pixbuf
pixbuf =
(\(Tooltip ForeignPtr Tooltip
arg1) (Pixbuf ForeignPtr Pixbuf
arg2) -> ForeignPtr Tooltip -> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Tooltip
arg1 ((Ptr Tooltip -> IO ()) -> IO ())
-> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Tooltip
argPtr1 ->ForeignPtr Pixbuf -> (Ptr Pixbuf -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Pixbuf
arg2 ((Ptr Pixbuf -> IO ()) -> IO ()) -> (Ptr Pixbuf -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Pixbuf
argPtr2 ->Ptr Tooltip -> Ptr Pixbuf -> IO ()
gtk_tooltip_set_icon Ptr Tooltip
argPtr1 Ptr Pixbuf
argPtr2)
{-# LINE 151 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
(toTooltip self)
(Pixbuf -> Maybe Pixbuf -> Pixbuf
forall a. a -> Maybe a -> a
fromMaybe (ForeignPtr Pixbuf -> Pixbuf
Pixbuf ForeignPtr Pixbuf
forall a. ForeignPtr a
nullForeignPtr) Maybe Pixbuf
pixbuf)
tooltipSetIconFromStock :: (TooltipClass self, GlibString string) => self
-> Maybe string
-> IconSize
-> IO ()
tooltipSetIconFromStock :: forall self string.
(TooltipClass self, GlibString string) =>
self -> Maybe string -> IconSize -> IO ()
tooltipSetIconFromStock self
self Maybe string
id IconSize
size =
(string -> (Ptr CChar -> IO ()) -> IO ())
-> Maybe string -> (Ptr CChar -> IO ()) -> IO ()
forall a b c.
(a -> (Ptr b -> IO c) -> IO c)
-> Maybe a -> (Ptr b -> IO c) -> IO c
maybeWith string -> (Ptr CChar -> IO ()) -> IO ()
forall a. string -> (Ptr CChar -> IO a) -> IO a
forall s a. GlibString s => s -> (Ptr CChar -> IO a) -> IO a
withUTFString Maybe string
id ((Ptr CChar -> IO ()) -> IO ()) -> (Ptr CChar -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ Ptr CChar
idPtr ->
(\(Tooltip ForeignPtr Tooltip
arg1) Ptr CChar
arg2 CInt
arg3 -> ForeignPtr Tooltip -> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Tooltip
arg1 ((Ptr Tooltip -> IO ()) -> IO ())
-> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Tooltip
argPtr1 ->Ptr Tooltip -> Ptr CChar -> CInt -> IO ()
gtk_tooltip_set_icon_from_stock Ptr Tooltip
argPtr1 Ptr CChar
arg2 CInt
arg3)
{-# LINE 165 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
(toTooltip self)
Ptr CChar
idPtr
((Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (IconSize -> Int) -> IconSize -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. IconSize -> Int
forall a. Enum a => a -> Int
fromEnum) IconSize
size)
tooltipSetIconFromIconName :: (TooltipClass self, GlibString string) => self
-> Maybe string
-> IconSize
-> IO ()
tooltipSetIconFromIconName :: forall self string.
(TooltipClass self, GlibString string) =>
self -> Maybe string -> IconSize -> IO ()
tooltipSetIconFromIconName self
self Maybe string
iconName IconSize
size =
(string -> (Ptr CChar -> IO ()) -> IO ())
-> Maybe string -> (Ptr CChar -> IO ()) -> IO ()
forall a b c.
(a -> (Ptr b -> IO c) -> IO c)
-> Maybe a -> (Ptr b -> IO c) -> IO c
maybeWith string -> (Ptr CChar -> IO ()) -> IO ()
forall a. string -> (Ptr CChar -> IO a) -> IO a
forall s a. GlibString s => s -> (Ptr CChar -> IO a) -> IO a
withUTFString Maybe string
iconName ((Ptr CChar -> IO ()) -> IO ()) -> (Ptr CChar -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ Ptr CChar
iconPtr ->
(\(Tooltip ForeignPtr Tooltip
arg1) Ptr CChar
arg2 CInt
arg3 -> ForeignPtr Tooltip -> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Tooltip
arg1 ((Ptr Tooltip -> IO ()) -> IO ())
-> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Tooltip
argPtr1 ->Ptr Tooltip -> Ptr CChar -> CInt -> IO ()
gtk_tooltip_set_icon_from_icon_name Ptr Tooltip
argPtr1 Ptr CChar
arg2 CInt
arg3)
{-# LINE 183 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
(toTooltip self)
Ptr CChar
iconPtr
((Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (IconSize -> Int) -> IconSize -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. IconSize -> Int
forall a. Enum a => a -> Int
fromEnum) IconSize
size)
tooltipSetCustom :: (TooltipClass self, WidgetClass widget) => self
-> Maybe widget
-> IO ()
tooltipSetCustom :: forall self widget.
(TooltipClass self, WidgetClass widget) =>
self -> Maybe widget -> IO ()
tooltipSetCustom self
self Maybe widget
customWidget =
(\(Tooltip ForeignPtr Tooltip
arg1) (Widget ForeignPtr Widget
arg2) -> ForeignPtr Tooltip -> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Tooltip
arg1 ((Ptr Tooltip -> IO ()) -> IO ())
-> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Tooltip
argPtr1 ->ForeignPtr Widget -> (Ptr Widget -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Widget
arg2 ((Ptr Widget -> IO ()) -> IO ()) -> (Ptr Widget -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Widget
argPtr2 ->Ptr Tooltip -> Ptr Widget -> IO ()
gtk_tooltip_set_custom Ptr Tooltip
argPtr1 Ptr Widget
argPtr2)
{-# LINE 198 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
(toTooltip self)
(Widget -> (widget -> Widget) -> Maybe widget -> Widget
forall b a. b -> (a -> b) -> Maybe a -> b
maybe (ForeignPtr Widget -> Widget
Widget ForeignPtr Widget
forall a. ForeignPtr a
nullForeignPtr) widget -> Widget
forall o. WidgetClass o => o -> Widget
toWidget Maybe widget
customWidget)
tooltipTriggerTooltipQuery ::
Display
-> IO ()
tooltipTriggerTooltipQuery :: Display -> IO ()
tooltipTriggerTooltipQuery Display
display =
(\(Display ForeignPtr Display
arg1) -> ForeignPtr Display -> (Ptr Display -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Display
arg1 ((Ptr Display -> IO ()) -> IO ())
-> (Ptr Display -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Display
argPtr1 ->Ptr Display -> IO ()
gtk_tooltip_trigger_tooltip_query Ptr Display
argPtr1)
{-# LINE 211 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
display
tooltipSetTipArea :: TooltipClass self => self -> Rectangle -> IO ()
tooltipSetTipArea :: forall self. TooltipClass self => self -> Rectangle -> IO ()
tooltipSetTipArea self
self Rectangle
rect =
Rectangle -> (Ptr Rectangle -> IO ()) -> IO ()
forall a b. Storable a => a -> (Ptr a -> IO b) -> IO b
with Rectangle
rect ((Ptr Rectangle -> IO ()) -> IO ())
-> (Ptr Rectangle -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ Ptr Rectangle
rectPtr ->
(\(Tooltip ForeignPtr Tooltip
arg1) Ptr ()
arg2 -> ForeignPtr Tooltip -> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Tooltip
arg1 ((Ptr Tooltip -> IO ()) -> IO ())
-> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Tooltip
argPtr1 ->Ptr Tooltip -> Ptr () -> IO ()
gtk_tooltip_set_tip_area Ptr Tooltip
argPtr1 Ptr ()
arg2)
{-# LINE 224 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
(toTooltip self)
(Ptr Rectangle -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr Ptr Rectangle
rectPtr)
tooltipSetIconFromGIcon :: TooltipClass self => self
-> Maybe Icon
-> IconSize
-> IO ()
tooltipSetIconFromGIcon :: forall self.
TooltipClass self =>
self -> Maybe Icon -> IconSize -> IO ()
tooltipSetIconFromGIcon self
tooltip Maybe Icon
icon IconSize
size =
(\(Tooltip ForeignPtr Tooltip
arg1) (Icon ForeignPtr Icon
arg2) CInt
arg3 -> ForeignPtr Tooltip -> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Tooltip
arg1 ((Ptr Tooltip -> IO ()) -> IO ())
-> (Ptr Tooltip -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Tooltip
argPtr1 ->ForeignPtr Icon -> (Ptr Icon -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Icon
arg2 ((Ptr Icon -> IO ()) -> IO ()) -> (Ptr Icon -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Icon
argPtr2 ->Ptr Tooltip -> Ptr Icon -> CInt -> IO ()
gtk_tooltip_set_icon_from_gicon Ptr Tooltip
argPtr1 Ptr Icon
argPtr2 CInt
arg3)
{-# LINE 238 "./Graphics/UI/Gtk/Misc/Tooltip.chs" #-}
(toTooltip tooltip)
(Icon -> Maybe Icon -> Icon
forall a. a -> Maybe a -> a
fromMaybe (ForeignPtr Icon -> Icon
Icon ForeignPtr Icon
forall a. ForeignPtr a
nullForeignPtr) Maybe Icon
icon)
((Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (IconSize -> Int) -> IconSize -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. IconSize -> Int
forall a. Enum a => a -> Int
fromEnum) IconSize
size)
foreign import ccall safe "gtk_tooltip_set_markup"
gtk_tooltip_set_markup :: ((Ptr Tooltip) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "gtk_tooltip_set_text"
gtk_tooltip_set_text :: ((Ptr Tooltip) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "gtk_tooltip_set_icon"
gtk_tooltip_set_icon :: ((Ptr Tooltip) -> ((Ptr Pixbuf) -> (IO ())))
foreign import ccall safe "gtk_tooltip_set_icon_from_stock"
gtk_tooltip_set_icon_from_stock :: ((Ptr Tooltip) -> ((Ptr CChar) -> (CInt -> (IO ()))))
foreign import ccall safe "gtk_tooltip_set_icon_from_icon_name"
gtk_tooltip_set_icon_from_icon_name :: ((Ptr Tooltip) -> ((Ptr CChar) -> (CInt -> (IO ()))))
foreign import ccall safe "gtk_tooltip_set_custom"
gtk_tooltip_set_custom :: ((Ptr Tooltip) -> ((Ptr Widget) -> (IO ())))
foreign import ccall safe "gtk_tooltip_trigger_tooltip_query"
gtk_tooltip_trigger_tooltip_query :: ((Ptr Display) -> (IO ()))
foreign import ccall safe "gtk_tooltip_set_tip_area"
gtk_tooltip_set_tip_area :: ((Ptr Tooltip) -> ((Ptr ()) -> (IO ())))
foreign import ccall safe "gtk_tooltip_set_icon_from_gicon"
gtk_tooltip_set_icon_from_gicon :: ((Ptr Tooltip) -> ((Ptr Icon) -> (CInt -> (IO ()))))