-- GENERATED by C->Haskell Compiler, version 0.13.9 (gtk2hs branch) "Bin IO", 27 May 2012 (Haskell)
-- Edit the ORIGNAL .chs file instead!


{-# LINE 1 "./Graphics/UI/Gtk/WebKit/DOM/DOMPlugin.chs" #-}
module Graphics.UI.Gtk.WebKit.DOM.DOMPlugin
       (domPluginItem, domPluginNamedItem, domPluginGetName,
        domPluginGetFilename, domPluginGetDescription, domPluginGetLength,
        DOMPlugin, DOMPluginClass, castToDOMPlugin, gTypeDOMPlugin,
        toDOMPlugin)
       where
import System.Glib.FFI
import System.Glib.UTFString
import Control.Applicative
import Graphics.UI.Gtk.WebKit.Types
{-# LINE 10 "./Graphics/UI/Gtk/WebKit/DOM/DOMPlugin.chs" #-}
import System.Glib.GError
import Graphics.UI.Gtk.WebKit.DOM.EventM
 
domPluginItem ::
              (DOMPluginClass self) => self -> Word -> IO (Maybe DOMMimeType)
domPluginItem self index
  = maybeNull (makeNewGObject mkDOMMimeType)
      ((\(DOMPlugin arg1) arg2 -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_dom_plugin_item argPtr1 arg2) (toDOMPlugin self)
         (fromIntegral index))
 
domPluginNamedItem ::
                   (DOMPluginClass self) => self -> String -> IO (Maybe DOMMimeType)
domPluginNamedItem self name
  = maybeNull (makeNewGObject mkDOMMimeType)
      (withUTFString name $
         \ namePtr ->
           (\(DOMPlugin arg1) arg2 -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_dom_plugin_named_item argPtr1 arg2) (toDOMPlugin self)
             namePtr)
 
domPluginGetName :: (DOMPluginClass self) => self -> IO String
domPluginGetName self
  = ((\(DOMPlugin arg1) -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_dom_plugin_get_name argPtr1) (toDOMPlugin self))
      >>=
      readUTFString
 
domPluginGetFilename :: (DOMPluginClass self) => self -> IO String
domPluginGetFilename self
  = ((\(DOMPlugin arg1) -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_dom_plugin_get_filename argPtr1)
{-# LINE 38 "./Graphics/UI/Gtk/WebKit/DOM/DOMPlugin.chs" #-}
       (toDOMPlugin self))
      >>=
      readUTFString
 
domPluginGetDescription ::
                        (DOMPluginClass self) => self -> IO String
domPluginGetDescription self
  = ((\(DOMPlugin arg1) -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_dom_plugin_get_description argPtr1)
{-# LINE 46 "./Graphics/UI/Gtk/WebKit/DOM/DOMPlugin.chs" #-}
       (toDOMPlugin self))
      >>=
      readUTFString
 
domPluginGetLength :: (DOMPluginClass self) => self -> IO Word
domPluginGetLength self
  = fromIntegral <$>
      ((\(DOMPlugin arg1) -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_dom_plugin_get_length argPtr1) (toDOMPlugin self))

foreign import ccall safe "webkit_dom_dom_plugin_item"
  webkit_dom_dom_plugin_item :: ((Ptr DOMPlugin) -> (CULong -> (IO (Ptr DOMMimeType))))

foreign import ccall safe "webkit_dom_dom_plugin_named_item"
  webkit_dom_dom_plugin_named_item :: ((Ptr DOMPlugin) -> ((Ptr CChar) -> (IO (Ptr DOMMimeType))))

foreign import ccall safe "webkit_dom_dom_plugin_get_name"
  webkit_dom_dom_plugin_get_name :: ((Ptr DOMPlugin) -> (IO (Ptr CChar)))

foreign import ccall safe "webkit_dom_dom_plugin_get_filename"
  webkit_dom_dom_plugin_get_filename :: ((Ptr DOMPlugin) -> (IO (Ptr CChar)))

foreign import ccall safe "webkit_dom_dom_plugin_get_description"
  webkit_dom_dom_plugin_get_description :: ((Ptr DOMPlugin) -> (IO (Ptr CChar)))

foreign import ccall safe "webkit_dom_dom_plugin_get_length"
  webkit_dom_dom_plugin_get_length :: ((Ptr DOMPlugin) -> (IO CULong))