From: Andy S. <And...@co...> - 2010-04-03 07:01:17
|
Sat Apr 3 03:00:22 EDT 2010 Andy Stewart <laz...@gm...> * Fix a bug of Editable signal "insertText". Ignore-this: e75192d1521bee73faf2dec69ab03794 hunk ./gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp 293 -insertText :: EditableClass self => Signal self (String -> Int -> Int -> IO ()) -insertText = Signal (connect_STRING_INT_INT__NONE "insert-text") +insertText :: EditableClass self => Signal self (String -> Int -> IO Int) +insertText = Signal (connect_STRINGPTR_INT__INTPTR "insert-text") + +-- | Singal helper functions. +connect_STRINGPTR_INT__INTPTR :: + EditableClass self => SignalName -> + ConnectAfter -> self -> + (String -> Int -> IO Int) -> + IO (ConnectId self) +connect_STRINGPTR_INT__INTPTR signal after obj user = + connectGeneric signal after obj + (\strPtr strLen posPtr -> do + str <- if strLen<0 then peekUTFString strPtr + else peekUTFStringLen (strPtr, strLen) + pos <- peek (posPtr :: Ptr {#type gint#}) + pos' <- user str (fromIntegral pos) + poke (posPtr :: Ptr {#type gint#}) (fromIntegral pos') + ) |