{-# LINE 1 "Graphics/UI/Gtk/Embedding/Embedding.hsc" #-}
module Graphics.UI.Gtk.Embedding.Embedding (
{-# LINE 31 "Graphics/UI/Gtk/Embedding/Embedding.hsc" #-}
socketHasPlug,
{-# LINE 33 "Graphics/UI/Gtk/Embedding/Embedding.hsc" #-}
) where
{-# LINE 36 "Graphics/UI/Gtk/Embedding/Embedding.hsc" #-}
import System.Glib.FFI
import Graphics.UI.Gtk.Types
import Graphics.UI.Gtk.Embedding.Types
socketHasPlug :: SocketClass s => s -> IO Bool
socketHasPlug :: forall s. SocketClass s => s -> IO Bool
socketHasPlug s
socket = do
Ptr Any
plugPtr <- ForeignPtr Socket -> (Ptr Socket -> IO (Ptr Any)) -> IO (Ptr Any)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr (Socket -> ForeignPtr Socket
unSocket (s -> Socket
forall o. SocketClass o => o -> Socket
toSocket s
socket))
(\Ptr Socket
hsc_ptr -> Ptr Socket -> Int -> IO (Ptr Any)
forall b. Ptr b -> Int -> IO (Ptr Any)
forall a b. Storable a => Ptr b -> Int -> IO a
peekByteOff Ptr Socket
hsc_ptr Int
76)
{-# LINE 46 "Graphics/UI/Gtk/Embedding/Embedding.hsc" #-}
return (plugPtr/=nullPtr)
{-# LINE 49 "Graphics/UI/Gtk/Embedding/Embedding.hsc" #-}