########################################################################
#
# File Name:            HTMLTableColElement
#
# Documentation:        http://docs.4suite.com/4DOM/HTMLTableColElement.html
#

### This file is automatically generated by GenerateHtml.py.
### DO NOT EDIT!

"""
WWW: http://4suite.com/4DOM         e-mail: support@4suite.com

Copyright (c) 2000 Fourthought Inc, USA.   All Rights Reserved.
See  http://4suite.com/COPYRIGHT  for license and copyright information
"""

import string
from xml.dom import Node
from xml.dom.html.HTMLElement import HTMLElement

class HTMLTableColElement(HTMLElement):

    def __init__(self, ownerDocument, nodeName="COL"):
        HTMLElement.__init__(self, ownerDocument, nodeName)

    ### Attribute Methods ###

    def _get_align(self):
        return string.capitalize(self.getAttribute("ALIGN"))

    def _set_align(self, value):
        self.setAttribute("ALIGN", value)

    def _get_ch(self):
        return self.getAttribute("CHAR")

    def _set_ch(self, value):
        self.setAttribute("CHAR", value)

    def _get_chOff(self):
        return self.getAttribute("CHAROFF")

    def _set_chOff(self, value):
        self.setAttribute("CHAROFF", value)

    def _get_span(self):
        value = self.getAttribute("SPAN")
        if value:
            return int(value)
        return 0

    def _set_span(self, value):
        self.setAttribute("SPAN", str(value))

    def _get_vAlign(self):
        return string.capitalize(self.getAttribute("VALIGN"))

    def _set_vAlign(self, value):
        self.setAttribute("VALIGN", value)

    def _get_width(self):
        return self.getAttribute("WIDTH")

    def _set_width(self, value):
        self.setAttribute("WIDTH", value)

    ### Attribute Access Mappings ###

    _readComputedAttrs = HTMLElement._readComputedAttrs.copy()
    _readComputedAttrs.update({
        "align" : _get_align,
        "ch" : _get_ch,
        "chOff" : _get_chOff,
        "span" : _get_span,
        "vAlign" : _get_vAlign,
        "width" : _get_width
        })

    _writeComputedAttrs = HTMLElement._writeComputedAttrs.copy()
    _writeComputedAttrs.update({
        "align" : _set_align,
        "ch" : _set_ch,
        "chOff" : _set_chOff,
        "span" : _set_span,
        "vAlign" : _set_vAlign,
        "width" : _set_width
        })

    _readOnlyAttrs = filter(lambda k,m=_writeComputedAttrs: not m.has_key(k),
                     HTMLElement._readOnlyAttrs + _readComputedAttrs.keys())
