{-# LINE 1 "src/Stopgap/Graphics/UI/Gtk/DrawingArea.hsc" #-} {-# LANGUAGE ImportQualifiedPost #-} {-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -Wall -fno-warn-tabs #-} module Stopgap.Graphics.UI.Gtk.DrawingArea where import Foreign.Ptr import Stopgap.Data.Ptr import Stopgap.System.GLib.Object qualified as G.Object import Stopgap.Graphics.UI.Gtk.Widget qualified as Widget data DTag newtype D = D (Ptr DTag) deriving Int -> D -> ShowS [D] -> ShowS D -> String (Int -> D -> ShowS) -> (D -> String) -> ([D] -> ShowS) -> Show D forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> D -> ShowS showsPrec :: Int -> D -> ShowS $cshow :: D -> String show :: D -> String $cshowList :: [D] -> ShowS showList :: [D] -> ShowS Show instance IsPtr D where type Tag D = DTag; toPtr :: D -> Ptr (Tag D) toPtr (D Ptr DTag p) = Ptr (Tag D) Ptr DTag p; fromPtr :: Ptr (Tag D) -> D fromPtr = Ptr (Tag D) -> D Ptr DTag -> D D instance G.Object.IsO D where toO :: D -> O toO (D Ptr DTag p) = Ptr OTag -> O G.Object.O (Ptr OTag -> O) -> Ptr OTag -> O forall a b. (a -> b) -> a -> b $ Ptr DTag -> Ptr OTag forall a b. Ptr a -> Ptr b castPtr Ptr DTag p instance Widget.IsW D where toW :: D -> W toW (D Ptr DTag p) = Ptr WTag -> W Widget.W (Ptr WTag -> W) -> Ptr WTag -> W forall a b. (a -> b) -> a -> b $ Ptr DTag -> Ptr WTag forall a b. Ptr a -> Ptr b castPtr Ptr DTag p new :: IO D new :: IO D new = IO D c_gtk_drawing_area_new foreign import ccall "gtk_drawing_area_new" c_gtk_drawing_area_new :: IO D