{-# LINE 2 "./Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs" #-}
module Graphics.UI.Gtk.MenuComboToolbar.ToggleToolButton (
ToggleToolButton,
ToggleToolButtonClass,
castToToggleToolButton, gTypeToggleToolButton,
toToggleToolButton,
toggleToolButtonNew,
toggleToolButtonNewFromStock,
toggleToolButtonSetActive,
toggleToolButtonGetActive,
toggleToolButtonActive,
onToolButtonToggled,
afterToolButtonToggled,
) where
import Control.Monad (liftM)
import System.Glib.FFI
import System.Glib.UTFString
import System.Glib.Attributes
import Graphics.UI.Gtk.Abstract.Object (makeNewObject)
import Graphics.UI.Gtk.Types
{-# LINE 86 "./Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs" #-}
import Graphics.UI.Gtk.Signals
{-# LINE 87 "./Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs" #-}
import Graphics.UI.Gtk.General.StockItems
{-# LINE 90 "./Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs" #-}
toggleToolButtonNew :: IO ToggleToolButton
toggleToolButtonNew =
makeNewObject mkToggleToolButton $
liftM (castPtr :: Ptr ToolItem -> Ptr ToggleToolButton) $
gtk_toggle_tool_button_new
{-# LINE 102 "./Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs" #-}
toggleToolButtonNewFromStock ::
StockId
-> IO ToggleToolButton
toggleToolButtonNewFromStock stockId =
makeNewObject mkToggleToolButton $
liftM (castPtr :: Ptr ToolItem -> Ptr ToggleToolButton) $
withUTFString stockId $ \stockIdPtr ->
gtk_toggle_tool_button_new_from_stock
{-# LINE 116 "./Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs" #-}
stockIdPtr
toggleToolButtonSetActive :: ToggleToolButtonClass self => self -> Bool -> IO ()
toggleToolButtonSetActive self isActive =
(\(ToggleToolButton arg1) arg2 -> withForeignPtr arg1 $ \argPtr1 ->gtk_toggle_tool_button_set_active argPtr1 arg2)
{-# LINE 128 "./Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs" #-}
(toToggleToolButton self)
(fromBool isActive)
toggleToolButtonGetActive :: ToggleToolButtonClass self => self -> IO Bool
toggleToolButtonGetActive self =
liftM toBool $
(\(ToggleToolButton arg1) -> withForeignPtr arg1 $ \argPtr1 ->gtk_toggle_tool_button_get_active argPtr1)
{-# LINE 138 "./Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs" #-}
(toToggleToolButton self)
toggleToolButtonActive :: ToggleToolButtonClass self => Attr self Bool
toggleToolButtonActive = newAttr
toggleToolButtonGetActive
toggleToolButtonSetActive
onToolButtonToggled, afterToolButtonToggled :: ToggleToolButtonClass self => self
-> IO ()
-> IO (ConnectId self)
onToolButtonToggled = connect_NONE__NONE "toggled" False
afterToolButtonToggled = connect_NONE__NONE "toggled" True
foreign import ccall safe "gtk_toggle_tool_button_new"
gtk_toggle_tool_button_new :: (IO (Ptr ToolItem))
foreign import ccall safe "gtk_toggle_tool_button_new_from_stock"
gtk_toggle_tool_button_new_from_stock :: ((Ptr CChar) -> (IO (Ptr ToolItem)))
foreign import ccall safe "gtk_toggle_tool_button_set_active"
gtk_toggle_tool_button_set_active :: ((Ptr ToggleToolButton) -> (CInt -> (IO ())))
foreign import ccall safe "gtk_toggle_tool_button_get_active"
gtk_toggle_tool_button_get_active :: ((Ptr ToggleToolButton) -> (IO CInt))