{-# LINE 2 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
module Graphics.UI.Gtk.MenuComboToolbar.OptionMenu (
OptionMenu,
OptionMenuClass,
castToOptionMenu, gTypeOptionMenu,
toOptionMenu,
optionMenuNew,
optionMenuGetMenu,
optionMenuSetMenu,
optionMenuRemoveMenu,
optionMenuSetHistory,
optionMenuGetHistory,
optionMenuMenu,
onOMChanged,
afterOMChanged
) where
import Control.Monad (liftM)
import System.Glib.FFI
import System.Glib.Attributes
import System.Glib.Properties
import Graphics.UI.Gtk.Abstract.Object (makeNewObject)
import Graphics.UI.Gtk.Types
{-# LINE 96 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
import Graphics.UI.Gtk.Signals
{-# LINE 97 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
{-# LINE 99 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
optionMenuNew :: IO OptionMenu
optionMenuNew =
makeNewObject mkOptionMenu $
liftM castPtr
gtk_option_menu_new
{-# LINE 112 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
optionMenuGetMenu :: OptionMenuClass self => self -> IO Menu
optionMenuGetMenu self =
makeNewObject mkMenu $
liftM castPtr $
throwIfNull "optionMenuGetMenu: no menu associated with this option menu." $
(\(OptionMenu arg1) -> withForeignPtr arg1 $ \argPtr1 ->gtk_option_menu_get_menu argPtr1)
{-# LINE 124 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
(toOptionMenu self)
optionMenuSetMenu :: (OptionMenuClass self, MenuClass menu) => self -> menu -> IO ()
optionMenuSetMenu self menu =
(\(OptionMenu arg1) (Widget arg2) -> withForeignPtr arg1 $ \argPtr1 ->withForeignPtr arg2 $ \argPtr2 ->gtk_option_menu_set_menu argPtr1 argPtr2)
{-# LINE 133 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
(toOptionMenu self)
(toWidget menu)
optionMenuRemoveMenu :: OptionMenuClass self => self -> IO ()
optionMenuRemoveMenu self =
(\(OptionMenu arg1) -> withForeignPtr arg1 $ \argPtr1 ->gtk_option_menu_remove_menu argPtr1)
{-# LINE 141 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
(toOptionMenu self)
optionMenuSetHistory :: OptionMenuClass self => self
-> Int
-> IO ()
optionMenuSetHistory self index =
(\(OptionMenu arg1) arg2 -> withForeignPtr arg1 $ \argPtr1 ->gtk_option_menu_set_history argPtr1 arg2)
{-# LINE 152 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
(toOptionMenu self)
(fromIntegral index)
optionMenuGetHistory :: OptionMenuClass self => self
-> IO Int
optionMenuGetHistory self =
liftM fromIntegral $
(\(OptionMenu arg1) -> withForeignPtr arg1 $ \argPtr1 ->gtk_option_menu_get_history argPtr1)
{-# LINE 164 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
(toOptionMenu self)
optionMenuMenu :: (OptionMenuClass self, MenuClass menu) => ReadWriteAttr self Menu menu
optionMenuMenu = newAttrFromObjectProperty "menu"
gtk_menu_get_type
{-# LINE 174 "./Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs" #-}
onOMChanged, afterOMChanged :: OptionMenuClass self => self
-> IO ()
-> IO (ConnectId self)
onOMChanged = connect_NONE__NONE "changed" False
afterOMChanged = connect_NONE__NONE "changed" True
foreign import ccall unsafe "gtk_option_menu_new"
gtk_option_menu_new :: (IO (Ptr Widget))
foreign import ccall unsafe "gtk_option_menu_get_menu"
gtk_option_menu_get_menu :: ((Ptr OptionMenu) -> (IO (Ptr Widget)))
foreign import ccall safe "gtk_option_menu_set_menu"
gtk_option_menu_set_menu :: ((Ptr OptionMenu) -> ((Ptr Widget) -> (IO ())))
foreign import ccall unsafe "gtk_option_menu_remove_menu"
gtk_option_menu_remove_menu :: ((Ptr OptionMenu) -> (IO ()))
foreign import ccall safe "gtk_option_menu_set_history"
gtk_option_menu_set_history :: ((Ptr OptionMenu) -> (CUInt -> (IO ())))
foreign import ccall unsafe "gtk_option_menu_get_history"
gtk_option_menu_get_history :: ((Ptr OptionMenu) -> (IO CInt))
foreign import ccall unsafe "gtk_menu_get_type"
gtk_menu_get_type :: CULong