1
########################################################################
3
# File Name: HTMLTextAreaElement
5
# Documentation: http://docs.4suite.com/4DOM/HTMLTextAreaElement.html
8
### This file is automatically generated by GenerateHtml.py.
12
WWW: http://4suite.com/4DOM e-mail: support@4suite.com
14
Copyright (c) 2000 Fourthought Inc, USA. All Rights Reserved.
15
See http://4suite.com/COPYRIGHT for license and copyright information
19
from xml.dom import Node
20
from xml.dom.html.HTMLElement import HTMLElement
22
class HTMLTextAreaElement(HTMLElement):
24
def __init__(self, ownerDocument, nodeName="TEXTAREA"):
25
HTMLElement.__init__(self, ownerDocument, nodeName)
27
### Attribute Methods ###
29
def _get_accessKey(self):
30
return self.getAttribute("ACCESSKEY")
32
def _set_accessKey(self, value):
33
self.setAttribute("ACCESSKEY", value)
36
value = self.getAttribute("COLS")
41
def _set_cols(self, value):
42
self.setAttribute("COLS", str(value))
44
def _get_defaultValue(self):
45
if not self.firstChild:
47
if self.firstChild == self.lastChild:
48
return self.firstChild.data
50
text = filter(lambda x: x.nodeType == Node.TEXT_NODE, self.childNodes)
53
def _set_defaultValue(self, value):
55
for node in self.childNodes:
56
if not text and node.nodeType == Node.TEXT_NODE:
59
self.removeChild(node)
63
text = self.ownerDocument.createTextNode(value)
64
self.appendChild(text)
66
def _get_disabled(self):
67
return self.hasAttribute("DISABLED")
69
def _set_disabled(self, value):
71
self.setAttribute("DISABLED", "DISABLED")
73
self.removeAttribute("DISABLED")
76
parent = self.parentNode
78
if parent.nodeName == "FORM":
80
parent = parent.parentNode
84
return self.getAttribute("NAME")
86
def _set_name(self, value):
87
self.setAttribute("NAME", value)
89
def _get_readonly(self):
90
return self.hasAttribute("READONLY")
92
def _set_readonly(self, value):
94
self.setAttribute("READONLY", "READONLY")
96
self.removeAttribute("READONLY")
99
value = self.getAttribute("ROWS")
104
def _set_rows(self, value):
105
self.setAttribute("ROWS", str(value))
107
def _get_tabIndex(self):
108
value = self.getAttribute("TABINDEX")
113
def _set_tabIndex(self, value):
114
self.setAttribute("TABINDEX", str(value))
119
def _get_value(self):
120
if not self.firstChild:
122
if self.firstChild == self.lastChild:
123
return self.firstChild.data
125
text = filter(lambda x: x.nodeType == Node.TEXT_NODE, self.childNodes)
128
def _set_value(self, value):
130
for node in self.childNodes:
131
if not text and node.nodeType == Node.TEXT_NODE:
134
self.removeChild(node)
138
text = self.ownerDocument.createTextNode(value)
139
self.appendChild(text)
152
### Attribute Access Mappings ###
154
_readComputedAttrs = HTMLElement._readComputedAttrs.copy()
155
_readComputedAttrs.update({
156
"accessKey" : _get_accessKey,
158
"defaultValue" : _get_defaultValue,
159
"disabled" : _get_disabled,
162
"readonly" : _get_readonly,
164
"tabIndex" : _get_tabIndex,
169
_writeComputedAttrs = HTMLElement._writeComputedAttrs.copy()
170
_writeComputedAttrs.update({
171
"accessKey" : _set_accessKey,
173
"defaultValue" : _set_defaultValue,
174
"disabled" : _set_disabled,
176
"readonly" : _set_readonly,
178
"tabIndex" : _set_tabIndex,
182
_readOnlyAttrs = filter(lambda k,m=_writeComputedAttrs: not m.has_key(k),
183
HTMLElement._readOnlyAttrs + _readComputedAttrs.keys())