module Data.DOM.HTMLTextAreaElement
       (blur, focus, select, set'defaultValue, get'defaultValue,
        getm'defaultValue, get'form, getm'form, set'accessKey,
        get'accessKey, getm'accessKey, set'cols, get'cols, getm'cols,
        set'disabled, get'disabled, getm'disabled, set'name, get'name,
        getm'name, set'readOnly, get'readOnly, getm'readOnly, set'rows,
        get'rows, getm'rows, set'tabIndex, get'tabIndex, getm'tabIndex,
        get'type, getm'type, set'value, get'value, getm'value, mkTextarea)
       where
import Data.DOM.Html2
import Control.Monad
import BrownPLT.JavaScript
import Data.DOM.WBTypes
import Data.DOM.Dom
import Data.DOM.Document (createElement)
 
blur ::
     (Monad mn, CHTMLTextAreaElement this) =>
       Expression this -> mn (Expression ())
blur thisp
  = do let et = undefined :: ()
       let r = DotRef et (thisp /\ et) (Id et "blur")
       return (CallExpr et r [])
 
focus ::
      (Monad mn, CHTMLTextAreaElement this) =>
        Expression this -> mn (Expression ())
focus thisp
  = do let et = undefined :: ()
       let r = DotRef et (thisp /\ et) (Id et "focus")
       return (CallExpr et r [])
 
select ::
       (Monad mn, CHTMLTextAreaElement this) =>
         Expression this -> mn (Expression ())
select thisp
  = do let et = undefined :: ()
       let r = DotRef et (thisp /\ et) (Id et "select")
       return (CallExpr et r [])
 
set'defaultValue ::
                 (Monad mn, CHTMLTextAreaElement zz) =>
                   Expression String -> Expression zz -> mn (Expression zz)
set'defaultValue = setjsProperty "defaultValue"
 
get'defaultValue ::
                 (Monad mn, CHTMLTextAreaElement this) =>
                   Expression this -> mn (Expression String)
get'defaultValue thisp
  = do let et = undefined :: String
       let r = DotRef et (thisp /\ et) (Id et "defaultValue")
       return r
 
getm'defaultValue ::
                  (Monad mn, CHTMLTextAreaElement this) =>
                    Expression this -> mn (Expression String)
getm'defaultValue = get'defaultValue
 
get'form ::
         (Monad mn, CHTMLTextAreaElement this, CHTMLFormElement zz) =>
           Expression this -> mn (Expression zz)
get'form thisp
  = do let et = undefined :: zz
       let r = DotRef et (thisp /\ et) (Id et "form")
       return r
 
getm'form ::
          (Monad mn, CHTMLTextAreaElement this) =>
            Expression this -> mn (Expression THTMLFormElement)
getm'form = get'form
 
set'accessKey ::
              (Monad mn, CHTMLTextAreaElement zz) =>
                Expression String -> Expression zz -> mn (Expression zz)
set'accessKey = setjsProperty "accessKey"
 
get'accessKey ::
              (Monad mn, CHTMLTextAreaElement this) =>
                Expression this -> mn (Expression String)
get'accessKey thisp
  = do let et = undefined :: String
       let r = DotRef et (thisp /\ et) (Id et "accessKey")
       return r
 
getm'accessKey ::
               (Monad mn, CHTMLTextAreaElement this) =>
                 Expression this -> mn (Expression String)
getm'accessKey = get'accessKey
 
set'cols ::
         (Monad mn, CHTMLTextAreaElement zz) =>
           Expression Double -> Expression zz -> mn (Expression zz)
set'cols = setjsProperty "cols"
 
get'cols ::
         (Monad mn, CHTMLTextAreaElement this) =>
           Expression this -> mn (Expression Double)
get'cols thisp
  = do let et = undefined :: Double
       let r = DotRef et (thisp /\ et) (Id et "cols")
       return r
 
getm'cols ::
          (Monad mn, CHTMLTextAreaElement this) =>
            Expression this -> mn (Expression Double)
getm'cols = get'cols
 
set'disabled ::
             (Monad mn, CHTMLTextAreaElement zz) =>
               Expression Bool -> Expression zz -> mn (Expression zz)
set'disabled = setjsProperty "disabled"
 
get'disabled ::
             (Monad mn, CHTMLTextAreaElement this) =>
               Expression this -> mn (Expression Bool)
get'disabled thisp
  = do let et = undefined :: Bool
       let r = DotRef et (thisp /\ et) (Id et "disabled")
       return r
 
getm'disabled ::
              (Monad mn, CHTMLTextAreaElement this) =>
                Expression this -> mn (Expression Bool)
getm'disabled = get'disabled
 
set'name ::
         (Monad mn, CHTMLTextAreaElement zz) =>
           Expression String -> Expression zz -> mn (Expression zz)
set'name = setjsProperty "name"
 
get'name ::
         (Monad mn, CHTMLTextAreaElement this) =>
           Expression this -> mn (Expression String)
get'name thisp
  = do let et = undefined :: String
       let r = DotRef et (thisp /\ et) (Id et "name")
       return r
 
getm'name ::
          (Monad mn, CHTMLTextAreaElement this) =>
            Expression this -> mn (Expression String)
getm'name = get'name
 
set'readOnly ::
             (Monad mn, CHTMLTextAreaElement zz) =>
               Expression Bool -> Expression zz -> mn (Expression zz)
set'readOnly = setjsProperty "readOnly"
 
get'readOnly ::
             (Monad mn, CHTMLTextAreaElement this) =>
               Expression this -> mn (Expression Bool)
get'readOnly thisp
  = do let et = undefined :: Bool
       let r = DotRef et (thisp /\ et) (Id et "readOnly")
       return r
 
getm'readOnly ::
              (Monad mn, CHTMLTextAreaElement this) =>
                Expression this -> mn (Expression Bool)
getm'readOnly = get'readOnly
 
set'rows ::
         (Monad mn, CHTMLTextAreaElement zz) =>
           Expression Double -> Expression zz -> mn (Expression zz)
set'rows = setjsProperty "rows"
 
get'rows ::
         (Monad mn, CHTMLTextAreaElement this) =>
           Expression this -> mn (Expression Double)
get'rows thisp
  = do let et = undefined :: Double
       let r = DotRef et (thisp /\ et) (Id et "rows")
       return r
 
getm'rows ::
          (Monad mn, CHTMLTextAreaElement this) =>
            Expression this -> mn (Expression Double)
getm'rows = get'rows
 
set'tabIndex ::
             (Monad mn, CHTMLTextAreaElement zz) =>
               Expression Double -> Expression zz -> mn (Expression zz)
set'tabIndex = setjsProperty "tabIndex"
 
get'tabIndex ::
             (Monad mn, CHTMLTextAreaElement this) =>
               Expression this -> mn (Expression Double)
get'tabIndex thisp
  = do let et = undefined :: Double
       let r = DotRef et (thisp /\ et) (Id et "tabIndex")
       return r
 
getm'tabIndex ::
              (Monad mn, CHTMLTextAreaElement this) =>
                Expression this -> mn (Expression Double)
getm'tabIndex = get'tabIndex
 
get'type ::
         (Monad mn, CHTMLTextAreaElement this) =>
           Expression this -> mn (Expression String)
get'type thisp
  = do let et = undefined :: String
       let r = DotRef et (thisp /\ et) (Id et "type")
       return r
 
getm'type ::
          (Monad mn, CHTMLTextAreaElement this) =>
            Expression this -> mn (Expression String)
getm'type = get'type
 
set'value ::
          (Monad mn, CHTMLTextAreaElement zz) =>
            Expression String -> Expression zz -> mn (Expression zz)
set'value = setjsProperty "value"
 
get'value ::
          (Monad mn, CHTMLTextAreaElement this) =>
            Expression this -> mn (Expression String)
get'value thisp
  = do let et = undefined :: String
       let r = DotRef et (thisp /\ et) (Id et "value")
       return r
 
getm'value ::
           (Monad mn, CHTMLTextAreaElement this) =>
             Expression this -> mn (Expression String)
getm'value = get'value
 
mkTextarea ::
           (Monad mn, CHTMLDocument a) =>
             Expression a -> mn (Expression THTMLTextAreaElement)
mkTextarea = createElement (StringLit "textarea" "textarea")