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


{-# LINE 1 "./Graphics/UI/Gtk/WebKit/DOM/HTMLBaseElement.chs" #-}
module Graphics.UI.Gtk.WebKit.DOM.HTMLBaseElement(
setHref,
getHref,
setTarget,
getTarget,
HTMLBaseElement,
castToHTMLBaseElement,
gTypeHTMLBaseElement,
HTMLBaseElementClass,
toHTMLBaseElement,
) where
import Prelude hiding (drop, error, print)
import Data.Typeable (Typeable)
import Foreign.Marshal (maybePeek, maybeWith)
import System.Glib.FFI (maybeNull, withForeignPtr, nullForeignPtr, Ptr, nullPtr, castPtr, Word, Int64, Word64, CChar(..), CInt(..), CUInt(..), CLong(..), CULong(..), CLLong(..), CULLong(..), CShort(..), CUShort(..), CFloat(..), CDouble(..), toBool, fromBool)
import System.Glib.UTFString (GlibString(..), readUTFString)
import Control.Applicative ((<$>))
import Control.Monad (void)
import Control.Monad.IO.Class (MonadIO(..))
import System.Glib.GError
import Graphics.UI.Gtk.WebKit.DOM.EventTargetClosures
import Graphics.UI.Gtk.WebKit.DOM.EventM
import Graphics.UI.Gtk.WebKit.Types
{-# LINE 23 "./Graphics/UI/Gtk/WebKit/DOM/HTMLBaseElement.chs" #-}
import Graphics.UI.Gtk.WebKit.DOM.Enums

 
setHref ::
        (MonadIO m, HTMLBaseElementClass self, GlibString string) =>
          self -> (Maybe string) -> m ()
setHref self val
  = liftIO
      (maybeWith withUTFString val $
         \ valPtr ->
           (\(HTMLBaseElement arg1) arg2 -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_html_base_element_set_href argPtr1 arg2)
{-# LINE 34 "./Graphics/UI/Gtk/WebKit/DOM/HTMLBaseElement.chs" #-}
             (toHTMLBaseElement self)
             valPtr)
 
getHref ::
        (MonadIO m, HTMLBaseElementClass self, GlibString string) =>
          self -> m (Maybe string)
getHref self
  = liftIO
      (((\(HTMLBaseElement arg1) -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_html_base_element_get_href argPtr1)
{-# LINE 43 "./Graphics/UI/Gtk/WebKit/DOM/HTMLBaseElement.chs" #-}
          (toHTMLBaseElement self))
         >>=
         maybePeek readUTFString)
 
setTarget ::
          (MonadIO m, HTMLBaseElementClass self, GlibString string) =>
            self -> string -> m ()
setTarget self val
  = liftIO
      (withUTFString val $
         \ valPtr ->
           (\(HTMLBaseElement arg1) arg2 -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_html_base_element_set_target argPtr1 arg2)
{-# LINE 55 "./Graphics/UI/Gtk/WebKit/DOM/HTMLBaseElement.chs" #-}
             (toHTMLBaseElement self)
             valPtr)
 
getTarget ::
          (MonadIO m, HTMLBaseElementClass self, GlibString string) =>
            self -> m string
getTarget self
  = liftIO
      (((\(HTMLBaseElement arg1) -> withForeignPtr arg1 $ \argPtr1 ->webkit_dom_html_base_element_get_target argPtr1)
{-# LINE 64 "./Graphics/UI/Gtk/WebKit/DOM/HTMLBaseElement.chs" #-}
          (toHTMLBaseElement self))
         >>=
         readUTFString)

foreign import ccall safe "webkit_dom_html_base_element_set_href"
  webkit_dom_html_base_element_set_href :: ((Ptr HTMLBaseElement) -> ((Ptr CChar) -> (IO ())))

foreign import ccall safe "webkit_dom_html_base_element_get_href"
  webkit_dom_html_base_element_get_href :: ((Ptr HTMLBaseElement) -> (IO (Ptr CChar)))

foreign import ccall safe "webkit_dom_html_base_element_set_target"
  webkit_dom_html_base_element_set_target :: ((Ptr HTMLBaseElement) -> ((Ptr CChar) -> (IO ())))

foreign import ccall safe "webkit_dom_html_base_element_get_target"
  webkit_dom_html_base_element_get_target :: ((Ptr HTMLBaseElement) -> (IO (Ptr CChar)))