module Graphics.UI.Gtk.Vte.Signals (
module System.Glib.Signals,
connect_NONE__NONE,
connect_INT__NONE,
connect_INT_INT__NONE,
connect_WORD_WORD__NONE,
connect_OBJECT_OBJECT__NONE,
connect_STRING_INT__NONE,
) where
import Control.Monad (liftM)
import System.Glib.FFI
import System.Glib.UTFString (peekUTFString)
import System.Glib.GError (failOnGError)
import System.Glib.Signals
import System.Glib.GObject
import Graphics.UI.GtkInternals
connect_NONE__NONE ::
GObjectClass obj => SignalName ->
ConnectAfter -> obj ->
(IO ()) ->
IO (ConnectId obj)
connect_NONE__NONE signal after obj user =
connectGeneric signal after obj action
where action :: Ptr GObject -> IO ()
action _ =
failOnGError $
user
connect_INT__NONE ::
GObjectClass obj => SignalName ->
ConnectAfter -> obj ->
(Int -> IO ()) ->
IO (ConnectId obj)
connect_INT__NONE signal after obj user =
connectGeneric signal after obj action
where action :: Ptr GObject -> Int -> IO ()
action _ int1 =
failOnGError $
user int1
connect_INT_INT__NONE ::
GObjectClass obj => SignalName ->
ConnectAfter -> obj ->
(Int -> Int -> IO ()) ->
IO (ConnectId obj)
connect_INT_INT__NONE signal after obj user =
connectGeneric signal after obj action
where action :: Ptr GObject -> Int -> Int -> IO ()
action _ int1 int2 =
failOnGError $
user int1 int2
connect_WORD_WORD__NONE ::
GObjectClass obj => SignalName ->
ConnectAfter -> obj ->
(Word -> Word -> IO ()) ->
IO (ConnectId obj)
connect_WORD_WORD__NONE signal after obj user =
connectGeneric signal after obj action
where action :: Ptr GObject -> Word -> Word -> IO ()
action _ int1 int2 =
failOnGError $
user int1 int2
connect_OBJECT_OBJECT__NONE ::
(GObjectClass a', GObjectClass b', GObjectClass obj) => SignalName ->
ConnectAfter -> obj ->
(a' -> b' -> IO ()) ->
IO (ConnectId obj)
connect_OBJECT_OBJECT__NONE signal after obj user =
connectGeneric signal after obj action
where action :: Ptr GObject -> Ptr GObject -> Ptr GObject -> IO ()
action _ obj1 obj2 =
failOnGError $
makeNewGObject (GObject, objectUnrefFromMainloop) (return obj2) >>= \obj2' ->
makeNewGObject (GObject, objectUnrefFromMainloop) (return obj1) >>= \obj1' ->
user (unsafeCastGObject obj1') (unsafeCastGObject obj2')
connect_STRING_INT__NONE ::
GObjectClass obj => SignalName ->
ConnectAfter -> obj ->
(String -> Int -> IO ()) ->
IO (ConnectId obj)
connect_STRING_INT__NONE signal after obj user =
connectGeneric signal after obj action
where action :: Ptr GObject -> CString -> Int -> IO ()
action _ str1 int2 =
failOnGError $
peekUTFString str1 >>= \str1' ->
user str1' int2