[webkit-changes] cvs commit: WebCore/khtml/xml dom_docimpl.cpp dom_elementimpl.cpp dom_nodeimpl.cpp dom_position.cpp xml_tokenizer.cpp

Maciej mjs at opensource.apple.com
Fri Jul 29 19:33:28 PDT 2005


mjs         05/07/29 19:33:27

  Modified:    .        ChangeLog
               kwq      DOM.mm DOMHTML.mm KWQAccObject.mm KWQKHTMLPart.cpp
                        KWQKHTMLPart.mm WebCoreBridge.mm
               khtml    khtml_part.cpp khtmlview.cpp
               khtml/css cssstyleselector.cpp parser.y
               khtml/ecma kjs_css.cpp kjs_dom.cpp kjs_html.cpp
               khtml/editing apply_style_command.cpp
                        break_blockquote_command.cpp
                        composite_edit_command.cpp
                        delete_selection_command.cpp htmlediting.cpp
                        insert_line_break_command.cpp
                        insert_paragraph_separator_command.cpp markup.cpp
                        replace_selection_command.cpp visible_position.cpp
                        visible_text.cpp visible_units.cpp
               khtml/html html_baseimpl.cpp html_blockimpl.cpp
                        html_canvasimpl.cpp html_documentimpl.cpp
                        html_elementimpl.cpp html_formimpl.cpp
                        html_formimpl.h html_headimpl.cpp
                        html_imageimpl.cpp html_inlineimpl.cpp
                        html_listimpl.cpp html_listimpl.h html_miscimpl.cpp
                        html_objectimpl.cpp html_tableimpl.cpp
                        html_tableimpl.h htmlfactory.cpp htmlnames.cpp
                        htmlnames.h htmlparser.cpp htmltokenizer.cpp
               khtml/misc decoder.cpp hashtable.h
               khtml/rendering render_applet.cpp render_block.cpp
                        render_box.cpp render_canvasimage.cpp
                        render_flow.cpp render_form.cpp render_frames.cpp
                        render_image.cpp render_layer.cpp render_list.cpp
                        render_object.cpp render_table.cpp render_theme.cpp
               khtml/xml dom_docimpl.cpp dom_elementimpl.cpp
                        dom_nodeimpl.cpp dom_position.cpp xml_tokenizer.cpp
  Log:
          Reviewed by hyatt (concept and a few manual parts), large part
  	done by script and not really reviewed in detail.
  
          - changed how HTML tags and attributes are referred to in the code for better readability.
  
          * khtml/css/cssstyleselector.cpp:
          (khtml::checkPseudoState):
          (khtml::CSSStyleSelector::canShareStyleWithElement):
          (khtml::CSSStyleSelector::adjustRenderStyle):
          (khtml::CSSStyleSelector::checkOneSelector):
          * khtml/css/parser.y:
          * khtml/ecma/kjs_css.cpp:
          (KJS::DOMStyleSheetList::getOwnProperty):
          * khtml/ecma/kjs_dom.cpp:
          (KJS::getRuntimeObject):
          (KJS::DOMNamedNodesCollection::getOwnProperty):
          * khtml/ecma/kjs_html.cpp:
          (KJS::HTMLDocument::getOwnProperty):
          (KJS::KJS::HTMLDocument::putValueProperty):
          (KJS::KJS::HTMLElement::classInfo):
          (KJS::HTMLElement::getSetInfo):
          (KJS::KJS::HTMLElement::getOwnProperty):
          (KJS::KJS::HTMLElement::implementsCall):
          (KJS::KJS::HTMLElement::call):
          (KJS::KJS::HTMLElement::hasOwnProperty):
          (KJS::KJS::HTMLElement::toString):
          (KJS::getForm):
          (KJS::KJS::HTMLElement::pushEventHandlerScope):
          (KJS::KJS::HTMLElementFunction::call):
          (KJS::KJS::HTMLElement::put):
          (KJS::toHTMLTableCaptionElement):
          (KJS::toHTMLTableSectionElement):
          (KJS::KJS::HTMLCollection::getOwnProperty):
          (KJS::KJS::HTMLSelectCollection::put):
          * khtml/editing/apply_style_command.cpp:
          (khtml::isStyleSpan):
          (khtml::isEmptyStyleSpan):
          (khtml::isEmptyFontTag):
          (khtml::createFontElement):
          (khtml::createStyleSpanElement):
          (khtml::ApplyStyleCommand::applyRelativeFontStyleChange):
          (khtml::ApplyStyleCommand::applyInlineStyle):
          (khtml::ApplyStyleCommand::isHTMLStyleNode):
          (khtml::ApplyStyleCommand::removeHTMLFontStyle):
          (khtml::ApplyStyleCommand::applyTextDecorationStyle):
          (khtml::ApplyStyleCommand::mergeEndWithNextIfIdentical):
          (khtml::ApplyStyleCommand::addBlockStyleIfNeeded):
          (khtml::ApplyStyleCommand::addInlineStyleIfNeeded):
          * khtml/editing/break_blockquote_command.cpp:
          (khtml::BreakBlockquoteCommand::doApply):
          * khtml/editing/composite_edit_command.cpp:
          (khtml::CompositeEditCommand::insertNodeBefore):
          (khtml::CompositeEditCommand::insertNodeAfter):
          (khtml::CompositeEditCommand::findBlockPlaceholder):
          (khtml::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
          (khtml::createBlockPlaceholderElement):
          * khtml/editing/delete_selection_command.cpp:
          (khtml::isListStructureNode):
          (khtml::DeleteSelectionCommand::handleSpecialCaseBRDelete):
          (khtml::DeleteSelectionCommand::handleGeneralDelete):
          (khtml::DeleteSelectionCommand::moveNodesAfterNode):
          * khtml/editing/htmlediting.cpp:
          (khtml::isSpecialElement):
          (khtml::createDefaultParagraphElement):
          (khtml::createBreakElement):
          (khtml::isMailBlockquote):
          * khtml/editing/insert_line_break_command.cpp:
          (khtml::InsertLineBreakCommand::doApply):
          * khtml/editing/insert_paragraph_separator_command.cpp:
          (khtml::InsertParagraphSeparatorCommand::doApply):
          * khtml/editing/markup.cpp:
          (khtml::startMarkup):
          (khtml::createMarkup):
          (khtml::createFragmentFromText):
          * khtml/editing/replace_selection_command.cpp:
          (khtml::isProbablyBlock):
          (khtml::isProbablyTableStructureNode):
          (khtml::ReplacementFragment::isInterchangeNewlineNode):
          (khtml::ReplacementFragment::isInterchangeConvertedSpaceSpan):
          (khtml::ReplacementFragment::removeStyleNodes):
          (khtml::ReplaceSelectionCommand::doApply):
          * khtml/editing/visible_position.cpp:
          (khtml::VisiblePosition::init):
          (khtml::VisiblePosition::isCandidate):
          (khtml::VisiblePosition::isAtomicNode):
          * khtml/editing/visible_text.cpp:
          (khtml::TextIterator::handleNonTextNode):
          (khtml::TextIterator::exitNode):
          (khtml::SimplifiedBackwardsTextIterator::handleNonTextNode):
          * khtml/editing/visible_units.cpp:
          (khtml::endOfLine):
          * khtml/html/html_baseimpl.cpp:
          (HTMLBodyElementImpl::HTMLBodyElementImpl):
          (HTMLBodyElementImpl::mapToEntry):
          (HTMLBodyElementImpl::parseMappedAttribute):
          (HTMLBodyElementImpl::insertedIntoDocument):
          (HTMLBodyElementImpl::isURLAttribute):
          (HTMLBodyElementImpl::aLink):
          (HTMLBodyElementImpl::setALink):
          (HTMLBodyElementImpl::background):
          (HTMLBodyElementImpl::setBackground):
          (HTMLBodyElementImpl::bgColor):
          (HTMLBodyElementImpl::setBgColor):
          (HTMLBodyElementImpl::link):
          (HTMLBodyElementImpl::setLink):
          (HTMLBodyElementImpl::text):
          (HTMLBodyElementImpl::setText):
          (HTMLBodyElementImpl::vLink):
          (HTMLBodyElementImpl::setVLink):
          (HTMLFrameElementImpl::HTMLFrameElementImpl):
          (HTMLFrameElementImpl::parseMappedAttribute):
          (HTMLFrameElementImpl::attach):
          (HTMLFrameElementImpl::isURLAttribute):
          (HTMLFrameElementImpl::frameBorder):
          (HTMLFrameElementImpl::setFrameBorder):
          (HTMLFrameElementImpl::longDesc):
          (HTMLFrameElementImpl::setLongDesc):
          (HTMLFrameElementImpl::marginHeight):
          (HTMLFrameElementImpl::setMarginHeight):
          (HTMLFrameElementImpl::marginWidth):
          (HTMLFrameElementImpl::setMarginWidth):
          (HTMLFrameElementImpl::name):
          (HTMLFrameElementImpl::setName):
          (HTMLFrameElementImpl::setNoResize):
          (HTMLFrameElementImpl::scrolling):
          (HTMLFrameElementImpl::setScrolling):
          (HTMLFrameElementImpl::src):
          (HTMLFrameElementImpl::setSrc):
          (HTMLFrameSetElementImpl::HTMLFrameSetElementImpl):
          (HTMLFrameSetElementImpl::checkDTD):
          (HTMLFrameSetElementImpl::parseMappedAttribute):
          (HTMLFrameSetElementImpl::attach):
          (HTMLFrameSetElementImpl::cols):
          (HTMLFrameSetElementImpl::setCols):
          (HTMLFrameSetElementImpl::rows):
          (HTMLFrameSetElementImpl::setRows):
          (HTMLHeadElementImpl::HTMLHeadElementImpl):
          (HTMLHeadElementImpl::profile):
          (HTMLHeadElementImpl::setProfile):
          (HTMLHeadElementImpl::checkDTD):
          (HTMLHtmlElementImpl::HTMLHtmlElementImpl):
          (HTMLHtmlElementImpl::version):
          (HTMLHtmlElementImpl::setVersion):
          (HTMLHtmlElementImpl::checkDTD):
          (HTMLIFrameElementImpl::HTMLIFrameElementImpl):
          (HTMLIFrameElementImpl::mapToEntry):
          (HTMLIFrameElementImpl::parseMappedAttribute):
          (HTMLIFrameElementImpl::attach):
          (HTMLIFrameElementImpl::isURLAttribute):
          (HTMLIFrameElementImpl::align):
          (HTMLIFrameElementImpl::setAlign):
          (HTMLIFrameElementImpl::height):
          (HTMLIFrameElementImpl::setHeight):
          (HTMLIFrameElementImpl::src):
          (HTMLIFrameElementImpl::width):
          (HTMLIFrameElementImpl::setWidth):
          * khtml/html/html_blockimpl.cpp:
          (HTMLBlockquoteElementImpl::HTMLBlockquoteElementImpl):
          (HTMLBlockquoteElementImpl::cite):
          (HTMLBlockquoteElementImpl::setCite):
          (HTMLDivElementImpl::HTMLDivElementImpl):
          (HTMLDivElementImpl::mapToEntry):
          (HTMLDivElementImpl::parseMappedAttribute):
          (HTMLDivElementImpl::align):
          (HTMLDivElementImpl::setAlign):
          (HTMLHRElementImpl::HTMLHRElementImpl):
          (HTMLHRElementImpl::mapToEntry):
          (HTMLHRElementImpl::parseMappedAttribute):
          (HTMLHRElementImpl::align):
          (HTMLHRElementImpl::setAlign):
          (HTMLHRElementImpl::noShade):
          (HTMLHRElementImpl::setNoShade):
          (HTMLHRElementImpl::size):
          (HTMLHRElementImpl::setSize):
          (HTMLHRElementImpl::width):
          (HTMLHRElementImpl::setWidth):
          (HTMLHeadingElementImpl::checkDTD):
          (HTMLHeadingElementImpl::align):
          (HTMLHeadingElementImpl::setAlign):
          (HTMLParagraphElementImpl::HTMLParagraphElementImpl):
          (HTMLParagraphElementImpl::checkDTD):
          (HTMLParagraphElementImpl::mapToEntry):
          (HTMLParagraphElementImpl::parseMappedAttribute):
          (HTMLParagraphElementImpl::align):
          (HTMLParagraphElementImpl::setAlign):
          (HTMLPreElementImpl::width):
          (HTMLPreElementImpl::setWidth):
          (HTMLMarqueeElementImpl::HTMLMarqueeElementImpl):
          (HTMLMarqueeElementImpl::mapToEntry):
          (HTMLMarqueeElementImpl::parseMappedAttribute):
          * khtml/html/html_canvasimpl.cpp:
          (HTMLCanvasElementImpl::HTMLCanvasElementImpl):
          (HTMLCanvasElementImpl::mapToEntry):
          (HTMLCanvasElementImpl::parseMappedAttribute):
          (HTMLCanvasElementImpl::isURLAttribute):
          * khtml/html/html_documentimpl.cpp:
          (DOM::HTMLDocumentImpl::childAllowed):
          * khtml/html/html_elementimpl.cpp:
          (HTMLElementImpl::endTagRequirement):
          (HTMLElementImpl::tagPriority):
          (HTMLElementImpl::mapToEntry):
          (HTMLElementImpl::parseMappedAttribute):
          (HTMLElementImpl::createContextualFragment):
          (HTMLElementImpl::setInnerText):
          (HTMLElementImpl::setOuterText):
          (HTMLElementImpl::setContentEditable):
          (HTMLElementImpl::id):
          (HTMLElementImpl::setId):
          (HTMLElementImpl::title):
          (HTMLElementImpl::setTitle):
          (HTMLElementImpl::lang):
          (HTMLElementImpl::setLang):
          (HTMLElementImpl::dir):
          (HTMLElementImpl::setDir):
          (HTMLElementImpl::className):
          (HTMLElementImpl::setClassName):
          (HTMLElementImpl::isRecognizedTagName):
          (inlineTagList):
          (blockTagList):
          (HTMLElementImpl::checkDTD):
          * khtml/html/html_formimpl.cpp:
          (DOM::HTMLFormElementImpl::HTMLFormElementImpl):
          (DOM::HTMLFormElementImpl::submitClick):
          (DOM::HTMLFormElementImpl::formData):
          (DOM::HTMLFormElementImpl::submit):
          (DOM::HTMLFormElementImpl::parseMappedAttribute):
          (DOM::HTMLFormElementImpl::radioClicked):
          (DOM::HTMLFormElementImpl::isURLAttribute):
          (DOM::HTMLFormElementImpl::name):
          (DOM::HTMLFormElementImpl::setName):
          (DOM::HTMLFormElementImpl::acceptCharset):
          (DOM::HTMLFormElementImpl::setAcceptCharset):
          (DOM::HTMLFormElementImpl::action):
          (DOM::HTMLFormElementImpl::setAction):
          (DOM::HTMLFormElementImpl::setEnctype):
          (DOM::HTMLFormElementImpl::method):
          (DOM::HTMLFormElementImpl::setMethod):
          (DOM::HTMLFormElementImpl::target):
          (DOM::HTMLFormElementImpl::setTarget):
          (DOM::HTMLGenericFormElementImpl::parseMappedAttribute):
          (DOM::HTMLGenericFormElementImpl::getForm):
          (DOM::HTMLGenericFormElementImpl::name):
          (DOM::HTMLGenericFormElementImpl::setName):
          (DOM::HTMLGenericFormElementImpl::setDisabled):
          (DOM::HTMLGenericFormElementImpl::setReadOnly):
          (DOM::HTMLGenericFormElementImpl::tabIndex):
          (DOM::HTMLGenericFormElementImpl::setTabIndex):
          (DOM::HTMLButtonElementImpl::HTMLButtonElementImpl):
          (DOM::HTMLButtonElementImpl::type):
          (DOM::HTMLButtonElementImpl::parseMappedAttribute):
          (DOM::HTMLButtonElementImpl::accessKey):
          (DOM::HTMLButtonElementImpl::setAccessKey):
          (DOM::HTMLButtonElementImpl::value):
          (DOM::HTMLButtonElementImpl::setValue):
          (DOM::HTMLFieldSetElementImpl::HTMLFieldSetElementImpl):
          (DOM::HTMLFieldSetElementImpl::checkDTD):
          (DOM::HTMLInputElementImpl::HTMLInputElementImpl):
          (DOM::HTMLInputElementImpl::setType):
          (DOM::HTMLInputElementImpl::mapToEntry):
          (DOM::HTMLInputElementImpl::parseMappedAttribute):
          (DOM::HTMLInputElementImpl::attach):
          (DOM::HTMLInputElementImpl::altText):
          (DOM::HTMLInputElementImpl::value):
          (DOM::HTMLInputElementImpl::setValue):
          (DOM::HTMLInputElementImpl::isURLAttribute):
          (DOM::HTMLInputElementImpl::defaultValue):
          (DOM::HTMLInputElementImpl::setDefaultValue):
          (DOM::HTMLInputElementImpl::defaultChecked):
          (DOM::HTMLInputElementImpl::setDefaultChecked):
          (DOM::HTMLInputElementImpl::accept):
          (DOM::HTMLInputElementImpl::setAccept):
          (DOM::HTMLInputElementImpl::accessKey):
          (DOM::HTMLInputElementImpl::setAccessKey):
          (DOM::HTMLInputElementImpl::align):
          (DOM::HTMLInputElementImpl::setAlign):
          (DOM::HTMLInputElementImpl::alt):
          (DOM::HTMLInputElementImpl::setAlt):
          (DOM::HTMLInputElementImpl::setMaxLength):
          (DOM::HTMLInputElementImpl::setSize):
          (DOM::HTMLInputElementImpl::src):
          (DOM::HTMLInputElementImpl::setSrc):
          (DOM::HTMLInputElementImpl::useMap):
          (DOM::HTMLInputElementImpl::setUseMap):
          (DOM::HTMLLabelElementImpl::HTMLLabelElementImpl):
          (DOM::HTMLLabelElementImpl::parseMappedAttribute):
          (DOM::HTMLLabelElementImpl::formElement):
          (DOM::HTMLLabelElementImpl::form):
          (DOM::HTMLLabelElementImpl::accessKey):
          (DOM::HTMLLabelElementImpl::setAccessKey):
          (DOM::HTMLLabelElementImpl::htmlFor):
          (DOM::HTMLLabelElementImpl::setHtmlFor):
          (DOM::HTMLLegendElementImpl::HTMLLegendElementImpl):
          (DOM::HTMLLegendElementImpl::accessKey):
          (DOM::HTMLLegendElementImpl::setAccessKey):
          (DOM::HTMLLegendElementImpl::align):
          (DOM::HTMLLegendElementImpl::setAlign):
          (DOM::HTMLLegendElementImpl::formElement):
          (DOM::HTMLSelectElementImpl::HTMLSelectElementImpl):
          (DOM::HTMLSelectElementImpl::checkDTD):
          (DOM::HTMLSelectElementImpl::selectedIndex):
          (DOM::HTMLSelectElementImpl::setSelectedIndex):
          (DOM::HTMLSelectElementImpl::length):
          (DOM::HTMLSelectElementImpl::add):
          (DOM::HTMLSelectElementImpl::value):
          (DOM::HTMLSelectElementImpl::setValue):
          (DOM::HTMLSelectElementImpl::state):
          (DOM::HTMLSelectElementImpl::restoreState):
          (DOM::HTMLSelectElementImpl::parseMappedAttribute):
          (DOM::HTMLSelectElementImpl::appendFormData):
          (DOM::HTMLSelectElementImpl::optionToListIndex):
          (DOM::HTMLSelectElementImpl::listToOptionIndex):
          (DOM::HTMLSelectElementImpl::recalcListItems):
          (DOM::HTMLSelectElementImpl::reset):
          (DOM::HTMLSelectElementImpl::notifyOptionSelected):
          (DOM::HTMLSelectElementImpl::setMultiple):
          (DOM::HTMLSelectElementImpl::setSize):
          (DOM::HTMLKeygenElementImpl::HTMLKeygenElementImpl):
          (DOM::HTMLKeygenElementImpl::parseMappedAttribute):
          (DOM::HTMLOptGroupElementImpl::HTMLOptGroupElementImpl):
          (DOM::HTMLOptGroupElementImpl::recalcSelectOptions):
          (DOM::HTMLOptGroupElementImpl::label):
          (DOM::HTMLOptGroupElementImpl::setLabel):
          (DOM::HTMLOptionElementImpl::HTMLOptionElementImpl):
          (DOM::HTMLOptionElementImpl::text):
          (DOM::HTMLOptionElementImpl::index):
          (DOM::HTMLOptionElementImpl::parseMappedAttribute):
          (DOM::HTMLOptionElementImpl::setValue):
          (DOM::HTMLOptionElementImpl::getSelect):
          (DOM::HTMLOptionElementImpl::defaultSelected):
          (DOM::HTMLOptionElementImpl::setDefaultSelected):
          (DOM::HTMLOptionElementImpl::label):
          (DOM::HTMLOptionElementImpl::setLabel):
          (DOM::HTMLTextAreaElementImpl::HTMLTextAreaElementImpl):
          (DOM::HTMLTextAreaElementImpl::parseMappedAttribute):
          (DOM::HTMLTextAreaElementImpl::accessKey):
          (DOM::HTMLTextAreaElementImpl::setAccessKey):
          (DOM::HTMLTextAreaElementImpl::setCols):
          (DOM::HTMLTextAreaElementImpl::setRows):
          (DOM::HTMLIsIndexElementImpl::HTMLIsIndexElementImpl):
          (DOM::HTMLIsIndexElementImpl::parseMappedAttribute):
          (DOM::HTMLIsIndexElementImpl::prompt):
          (DOM::HTMLIsIndexElementImpl::setPrompt):
          * khtml/html/html_formimpl.h:
          (DOM::HTMLOptGroupElementImpl::checkDTD):
          * khtml/html/html_headimpl.cpp:
          (HTMLBaseElementImpl::HTMLBaseElementImpl):
          (HTMLBaseElementImpl::parseMappedAttribute):
          (HTMLBaseElementImpl::setHref):
          (HTMLBaseElementImpl::setTarget):
          (HTMLLinkElementImpl::HTMLLinkElementImpl):
          (HTMLLinkElementImpl::parseMappedAttribute):
          (HTMLLinkElementImpl::process):
          (HTMLLinkElementImpl::isURLAttribute):
          (HTMLLinkElementImpl::disabled):
          (HTMLLinkElementImpl::setDisabled):
          (HTMLLinkElementImpl::charset):
          (HTMLLinkElementImpl::setCharset):
          (HTMLLinkElementImpl::href):
          (HTMLLinkElementImpl::setHref):
          (HTMLLinkElementImpl::hreflang):
          (HTMLLinkElementImpl::setHreflang):
          (HTMLLinkElementImpl::media):
          (HTMLLinkElementImpl::setMedia):
          (HTMLLinkElementImpl::rel):
          (HTMLLinkElementImpl::setRel):
          (HTMLLinkElementImpl::rev):
          (HTMLLinkElementImpl::setRev):
          (HTMLLinkElementImpl::target):
          (HTMLLinkElementImpl::setTarget):
          (HTMLLinkElementImpl::type):
          (HTMLLinkElementImpl::setType):
          (HTMLMetaElementImpl::HTMLMetaElementImpl):
          (HTMLMetaElementImpl::parseMappedAttribute):
          (HTMLMetaElementImpl::content):
          (HTMLMetaElementImpl::setContent):
          (HTMLMetaElementImpl::httpEquiv):
          (HTMLMetaElementImpl::setHttpEquiv):
          (HTMLMetaElementImpl::name):
          (HTMLMetaElementImpl::setName):
          (HTMLMetaElementImpl::scheme):
          (HTMLMetaElementImpl::setScheme):
          (HTMLScriptElementImpl::HTMLScriptElementImpl):
          (HTMLScriptElementImpl::isURLAttribute):
          (HTMLScriptElementImpl::insertedIntoDocument):
          (HTMLScriptElementImpl::charset):
          (HTMLScriptElementImpl::setCharset):
          (HTMLScriptElementImpl::defer):
          (HTMLScriptElementImpl::setDefer):
          (HTMLScriptElementImpl::src):
          (HTMLScriptElementImpl::setSrc):
          (HTMLScriptElementImpl::type):
          (HTMLScriptElementImpl::setType):
          (HTMLStyleElementImpl::HTMLStyleElementImpl):
          (HTMLStyleElementImpl::parseMappedAttribute):
          (HTMLStyleElementImpl::disabled):
          (HTMLStyleElementImpl::setDisabled):
          (HTMLStyleElementImpl::media):
          (HTMLStyleElementImpl::setMedia):
          (HTMLStyleElementImpl::type):
          (HTMLStyleElementImpl::setType):
          (HTMLTitleElementImpl::HTMLTitleElementImpl):
          * khtml/html/html_imageimpl.cpp:
          (HTMLImageLoader::updateFromElement):
          (HTMLImageElementImpl::HTMLImageElementImpl):
          (HTMLImageElementImpl::mapToEntry):
          (HTMLImageElementImpl::parseMappedAttribute):
          (HTMLImageElementImpl::altText):
          (HTMLImageElementImpl::width):
          (HTMLImageElementImpl::height):
          (HTMLImageElementImpl::isURLAttribute):
          (HTMLImageElementImpl::name):
          (HTMLImageElementImpl::setName):
          (HTMLImageElementImpl::align):
          (HTMLImageElementImpl::setAlign):
          (HTMLImageElementImpl::alt):
          (HTMLImageElementImpl::setAlt):
          (HTMLImageElementImpl::border):
          (HTMLImageElementImpl::setBorder):
          (HTMLImageElementImpl::setHeight):
          (HTMLImageElementImpl::hspace):
          (HTMLImageElementImpl::setHspace):
          (HTMLImageElementImpl::isMap):
          (HTMLImageElementImpl::setIsMap):
          (HTMLImageElementImpl::longDesc):
          (HTMLImageElementImpl::setLongDesc):
          (HTMLImageElementImpl::src):
          (HTMLImageElementImpl::setSrc):
          (HTMLImageElementImpl::useMap):
          (HTMLImageElementImpl::setUseMap):
          (HTMLImageElementImpl::vspace):
          (HTMLImageElementImpl::setVspace):
          (HTMLImageElementImpl::setWidth):
          (HTMLMapElementImpl::HTMLMapElementImpl):
          (HTMLMapElementImpl::checkDTD):
          (HTMLMapElementImpl::mapMouseEvent):
          (HTMLMapElementImpl::parseMappedAttribute):
          (HTMLMapElementImpl::name):
          (HTMLMapElementImpl::setName):
          (HTMLAreaElementImpl::HTMLAreaElementImpl):
          (HTMLAreaElementImpl::parseMappedAttribute):
          (HTMLAreaElementImpl::accessKey):
          (HTMLAreaElementImpl::setAccessKey):
          (HTMLAreaElementImpl::alt):
          (HTMLAreaElementImpl::setAlt):
          (HTMLAreaElementImpl::coords):
          (HTMLAreaElementImpl::setCoords):
          (HTMLAreaElementImpl::href):
          (HTMLAreaElementImpl::setHref):
          (HTMLAreaElementImpl::noHref):
          (HTMLAreaElementImpl::setNoHref):
          (HTMLAreaElementImpl::shape):
          (HTMLAreaElementImpl::setShape):
          (HTMLAreaElementImpl::tabIndex):
          (HTMLAreaElementImpl::setTabIndex):
          (HTMLAreaElementImpl::target):
          (HTMLAreaElementImpl::setTarget):
          * khtml/html/html_inlineimpl.cpp:
          (DOM::HTMLAnchorElementImpl::HTMLAnchorElementImpl):
          (DOM::HTMLAnchorElementImpl::defaultEventHandler):
          (DOM::HTMLAnchorElementImpl::parseMappedAttribute):
          (DOM::HTMLAnchorElementImpl::isURLAttribute):
          (DOM::HTMLAnchorElementImpl::accessKey):
          (DOM::HTMLAnchorElementImpl::setAccessKey):
          (DOM::HTMLAnchorElementImpl::charset):
          (DOM::HTMLAnchorElementImpl::setCharset):
          (DOM::HTMLAnchorElementImpl::coords):
          (DOM::HTMLAnchorElementImpl::setCoords):
          (DOM::HTMLAnchorElementImpl::href):
          (DOM::HTMLAnchorElementImpl::setHref):
          (DOM::HTMLAnchorElementImpl::hreflang):
          (DOM::HTMLAnchorElementImpl::setHreflang):
          (DOM::HTMLAnchorElementImpl::name):
          (DOM::HTMLAnchorElementImpl::setName):
          (DOM::HTMLAnchorElementImpl::rel):
          (DOM::HTMLAnchorElementImpl::setRel):
          (DOM::HTMLAnchorElementImpl::rev):
          (DOM::HTMLAnchorElementImpl::setRev):
          (DOM::HTMLAnchorElementImpl::shape):
          (DOM::HTMLAnchorElementImpl::setShape):
          (DOM::HTMLAnchorElementImpl::tabIndex):
          (DOM::HTMLAnchorElementImpl::setTabIndex):
          (DOM::HTMLAnchorElementImpl::target):
          (DOM::HTMLAnchorElementImpl::setTarget):
          (DOM::HTMLAnchorElementImpl::type):
          (DOM::HTMLAnchorElementImpl::setType):
          (DOM::HTMLBRElementImpl::HTMLBRElementImpl):
          (DOM::HTMLBRElementImpl::mapToEntry):
          (DOM::HTMLBRElementImpl::parseMappedAttribute):
          (DOM::HTMLBRElementImpl::clear):
          (DOM::HTMLBRElementImpl::setClear):
          (DOM::HTMLFontElementImpl::HTMLFontElementImpl):
          (DOM::HTMLFontElementImpl::mapToEntry):
          (DOM::HTMLFontElementImpl::parseMappedAttribute):
          (DOM::HTMLFontElementImpl::color):
          (DOM::HTMLFontElementImpl::setColor):
          (DOM::HTMLFontElementImpl::face):
          (DOM::HTMLFontElementImpl::setFace):
          (DOM::HTMLFontElementImpl::size):
          (DOM::HTMLFontElementImpl::setSize):
          (DOM::HTMLModElementImpl::cite):
          (DOM::HTMLModElementImpl::setCite):
          (DOM::HTMLModElementImpl::dateTime):
          (DOM::HTMLModElementImpl::setDateTime):
          (DOM::HTMLQuoteElementImpl::HTMLQuoteElementImpl):
          (DOM::HTMLQuoteElementImpl::cite):
          (DOM::HTMLQuoteElementImpl::setCite):
          * khtml/html/html_listimpl.cpp:
          (DOM::HTMLUListElementImpl::mapToEntry):
          (DOM::HTMLUListElementImpl::parseMappedAttribute):
          (DOM::HTMLUListElementImpl::compact):
          (DOM::HTMLUListElementImpl::setCompact):
          (DOM::HTMLUListElementImpl::type):
          (DOM::HTMLUListElementImpl::setType):
          (DOM::HTMLDirectoryElementImpl::compact):
          (DOM::HTMLDirectoryElementImpl::setCompact):
          (DOM::HTMLMenuElementImpl::compact):
          (DOM::HTMLMenuElementImpl::setCompact):
          (DOM::HTMLOListElementImpl::mapToEntry):
          (DOM::HTMLOListElementImpl::parseMappedAttribute):
          (DOM::HTMLOListElementImpl::compact):
          (DOM::HTMLOListElementImpl::setCompact):
          (DOM::HTMLOListElementImpl::setStart):
          (DOM::HTMLOListElementImpl::type):
          (DOM::HTMLOListElementImpl::setType):
          (DOM::HTMLLIElementImpl::mapToEntry):
          (DOM::HTMLLIElementImpl::parseMappedAttribute):
          (DOM::HTMLLIElementImpl::attach):
          (DOM::HTMLLIElementImpl::type):
          (DOM::HTMLLIElementImpl::setType):
          (DOM::HTMLLIElementImpl::value):
          (DOM::HTMLLIElementImpl::setValue):
          (DOM::HTMLDListElementImpl::compact):
          (DOM::HTMLDListElementImpl::setCompact):
          * khtml/html/html_listimpl.h:
          (DOM::HTMLUListElementImpl::HTMLUListElementImpl):
          (DOM::HTMLDirectoryElementImpl::HTMLDirectoryElementImpl):
          (DOM::HTMLMenuElementImpl::HTMLMenuElementImpl):
          (DOM::HTMLOListElementImpl::HTMLOListElementImpl):
          (DOM::HTMLLIElementImpl::HTMLLIElementImpl):
          (DOM::HTMLDListElementImpl::HTMLDListElementImpl):
          * khtml/html/html_miscimpl.cpp:
          (DOM::HTMLBaseFontElementImpl::HTMLBaseFontElementImpl):
          (DOM::HTMLBaseFontElementImpl::color):
          (DOM::HTMLBaseFontElementImpl::setColor):
          (DOM::HTMLBaseFontElementImpl::face):
          (DOM::HTMLBaseFontElementImpl::setFace):
          (DOM::HTMLBaseFontElementImpl::size):
          (DOM::HTMLBaseFontElementImpl::setSize):
          (DOM::HTMLCollectionImpl::traverseNextItem):
          (DOM::HTMLCollectionImpl::checkForNameMatch):
          (DOM::HTMLNameCollectionImpl::traverseNextItem):
          (DOM::HTMLCollectionImpl::updateNameCache):
          (DOM::HTMLFormCollectionImpl::getNamedFormItem):
          (DOM::HTMLFormCollectionImpl::nextNamedItemInternal):
          (DOM::HTMLFormCollectionImpl::namedItem):
          (DOM::HTMLFormCollectionImpl::nextNamedItem):
          (DOM::HTMLFormCollectionImpl::updateNameCache):
          * khtml/html/html_objectimpl.cpp:
          (DOM::HTMLAppletElementImpl::HTMLAppletElementImpl):
          (DOM::HTMLAppletElementImpl::checkDTD):
          (DOM::HTMLAppletElementImpl::mapToEntry):
          (DOM::HTMLAppletElementImpl::parseMappedAttribute):
          (DOM::HTMLAppletElementImpl::rendererIsNeeded):
          (DOM::HTMLAppletElementImpl::createRenderer):
          (DOM::HTMLAppletElementImpl::align):
          (DOM::HTMLAppletElementImpl::setAlign):
          (DOM::HTMLAppletElementImpl::alt):
          (DOM::HTMLAppletElementImpl::setAlt):
          (DOM::HTMLAppletElementImpl::archive):
          (DOM::HTMLAppletElementImpl::setArchive):
          (DOM::HTMLAppletElementImpl::code):
          (DOM::HTMLAppletElementImpl::setCode):
          (DOM::HTMLAppletElementImpl::codeBase):
          (DOM::HTMLAppletElementImpl::setCodeBase):
          (DOM::HTMLAppletElementImpl::height):
          (DOM::HTMLAppletElementImpl::setHeight):
          (DOM::HTMLAppletElementImpl::hspace):
          (DOM::HTMLAppletElementImpl::setHspace):
          (DOM::HTMLAppletElementImpl::name):
          (DOM::HTMLAppletElementImpl::setName):
          (DOM::HTMLAppletElementImpl::object):
          (DOM::HTMLAppletElementImpl::setObject):
          (DOM::HTMLAppletElementImpl::vspace):
          (DOM::HTMLAppletElementImpl::setVspace):
          (DOM::HTMLAppletElementImpl::width):
          (DOM::HTMLAppletElementImpl::setWidth):
          (DOM::HTMLEmbedElementImpl::HTMLEmbedElementImpl):
          (DOM::HTMLEmbedElementImpl::checkDTD):
          (DOM::HTMLEmbedElementImpl::mapToEntry):
          (DOM::HTMLEmbedElementImpl::parseMappedAttribute):
          (DOM::HTMLEmbedElementImpl::rendererIsNeeded):
          (DOM::HTMLEmbedElementImpl::isURLAttribute):
          (DOM::HTMLObjectElementImpl::HTMLObjectElementImpl):
          (DOM::HTMLObjectElementImpl::checkDTD):
          (DOM::HTMLObjectElementImpl::form):
          (DOM::HTMLObjectElementImpl::mapToEntry):
          (DOM::HTMLObjectElementImpl::parseMappedAttribute):
          (DOM::HTMLObjectElementImpl::isURLAttribute):
          (DOM::HTMLObjectElementImpl::code):
          (DOM::HTMLObjectElementImpl::setCode):
          (DOM::HTMLObjectElementImpl::align):
          (DOM::HTMLObjectElementImpl::setAlign):
          (DOM::HTMLObjectElementImpl::archive):
          (DOM::HTMLObjectElementImpl::setArchive):
          (DOM::HTMLObjectElementImpl::border):
          (DOM::HTMLObjectElementImpl::setBorder):
          (DOM::HTMLObjectElementImpl::codeBase):
          (DOM::HTMLObjectElementImpl::setCodeBase):
          (DOM::HTMLObjectElementImpl::codeType):
          (DOM::HTMLObjectElementImpl::setCodeType):
          (DOM::HTMLObjectElementImpl::data):
          (DOM::HTMLObjectElementImpl::setData):
          (DOM::HTMLObjectElementImpl::declare):
          (DOM::HTMLObjectElementImpl::setDeclare):
          (DOM::HTMLObjectElementImpl::height):
          (DOM::HTMLObjectElementImpl::setHeight):
          (DOM::HTMLObjectElementImpl::hspace):
          (DOM::HTMLObjectElementImpl::setHspace):
          (DOM::HTMLObjectElementImpl::name):
          (DOM::HTMLObjectElementImpl::setName):
          (DOM::HTMLObjectElementImpl::standby):
          (DOM::HTMLObjectElementImpl::setStandby):
          (DOM::HTMLObjectElementImpl::tabIndex):
          (DOM::HTMLObjectElementImpl::setTabIndex):
          (DOM::HTMLObjectElementImpl::type):
          (DOM::HTMLObjectElementImpl::setType):
          (DOM::HTMLObjectElementImpl::useMap):
          (DOM::HTMLObjectElementImpl::setUseMap):
          (DOM::HTMLObjectElementImpl::vspace):
          (DOM::HTMLObjectElementImpl::setVspace):
          (DOM::HTMLObjectElementImpl::width):
          (DOM::HTMLObjectElementImpl::setWidth):
          (DOM::HTMLParamElementImpl::HTMLParamElementImpl):
          (DOM::HTMLParamElementImpl::parseMappedAttribute):
          (DOM::HTMLParamElementImpl::isURLAttribute):
          (DOM::HTMLParamElementImpl::setName):
          (DOM::HTMLParamElementImpl::type):
          (DOM::HTMLParamElementImpl::setType):
          (DOM::HTMLParamElementImpl::setValue):
          (DOM::HTMLParamElementImpl::valueType):
          (DOM::HTMLParamElementImpl::setValueType):
          * khtml/html/html_tableimpl.cpp:
          (DOM::HTMLTableElementImpl::HTMLTableElementImpl):
          (DOM::HTMLTableElementImpl::checkDTD):
          (DOM::HTMLTableElementImpl::createTHead):
          (DOM::HTMLTableElementImpl::createTFoot):
          (DOM::HTMLTableElementImpl::insertRow):
          (DOM::HTMLTableElementImpl::deleteRow):
          (DOM::HTMLTableElementImpl::addChild):
          (DOM::HTMLTableElementImpl::mapToEntry):
          (DOM::HTMLTableElementImpl::parseMappedAttribute):
          (DOM::HTMLTableElementImpl::additionalAttributeStyleDecl):
          (DOM::HTMLTableElementImpl::getSharedCellDecl):
          (DOM::HTMLTableElementImpl::isURLAttribute):
          (DOM::HTMLTableElementImpl::align):
          (DOM::HTMLTableElementImpl::setAlign):
          (DOM::HTMLTableElementImpl::bgColor):
          (DOM::HTMLTableElementImpl::setBgColor):
          (DOM::HTMLTableElementImpl::border):
          (DOM::HTMLTableElementImpl::setBorder):
          (DOM::HTMLTableElementImpl::cellPadding):
          (DOM::HTMLTableElementImpl::setCellPadding):
          (DOM::HTMLTableElementImpl::cellSpacing):
          (DOM::HTMLTableElementImpl::setCellSpacing):
          (DOM::HTMLTableElementImpl::frame):
          (DOM::HTMLTableElementImpl::setFrame):
          (DOM::HTMLTableElementImpl::rules):
          (DOM::HTMLTableElementImpl::setRules):
          (DOM::HTMLTableElementImpl::summary):
          (DOM::HTMLTableElementImpl::setSummary):
          (DOM::HTMLTableElementImpl::width):
          (DOM::HTMLTableElementImpl::setWidth):
          (DOM::HTMLTablePartElementImpl::mapToEntry):
          (DOM::HTMLTablePartElementImpl::parseMappedAttribute):
          (DOM::HTMLTableSectionElementImpl::checkDTD):
          (DOM::HTMLTableSectionElementImpl::addChild):
          (DOM::HTMLTableSectionElementImpl::numRows):
          (DOM::HTMLTableSectionElementImpl::align):
          (DOM::HTMLTableSectionElementImpl::setAlign):
          (DOM::HTMLTableSectionElementImpl::ch):
          (DOM::HTMLTableSectionElementImpl::setCh):
          (DOM::HTMLTableSectionElementImpl::chOff):
          (DOM::HTMLTableSectionElementImpl::setChOff):
          (DOM::HTMLTableSectionElementImpl::vAlign):
          (DOM::HTMLTableSectionElementImpl::setVAlign):
          (DOM::HTMLTableRowElementImpl::checkDTD):
          (DOM::HTMLTableRowElementImpl::addChild):
          (DOM::HTMLTableRowElementImpl::rowIndex):
          (DOM::HTMLTableRowElementImpl::sectionRowIndex):
          (DOM::HTMLTableRowElementImpl::insertCell):
          (DOM::HTMLTableRowElementImpl::align):
          (DOM::HTMLTableRowElementImpl::setAlign):
          (DOM::HTMLTableRowElementImpl::bgColor):
          (DOM::HTMLTableRowElementImpl::setBgColor):
          (DOM::HTMLTableRowElementImpl::ch):
          (DOM::HTMLTableRowElementImpl::setCh):
          (DOM::HTMLTableRowElementImpl::chOff):
          (DOM::HTMLTableRowElementImpl::setChOff):
          (DOM::HTMLTableRowElementImpl::vAlign):
          (DOM::HTMLTableRowElementImpl::setVAlign):
          (DOM::HTMLTableCellElementImpl::cellIndex):
          (DOM::HTMLTableCellElementImpl::mapToEntry):
          (DOM::HTMLTableCellElementImpl::parseMappedAttribute):
          (DOM::HTMLTableCellElementImpl::additionalAttributeStyleDecl):
          (DOM::HTMLTableCellElementImpl::isURLAttribute):
          (DOM::HTMLTableCellElementImpl::abbr):
          (DOM::HTMLTableCellElementImpl::setAbbr):
          (DOM::HTMLTableCellElementImpl::align):
          (DOM::HTMLTableCellElementImpl::setAlign):
          (DOM::HTMLTableCellElementImpl::axis):
          (DOM::HTMLTableCellElementImpl::setAxis):
          (DOM::HTMLTableCellElementImpl::bgColor):
          (DOM::HTMLTableCellElementImpl::setBgColor):
          (DOM::HTMLTableCellElementImpl::ch):
          (DOM::HTMLTableCellElementImpl::setCh):
          (DOM::HTMLTableCellElementImpl::chOff):
          (DOM::HTMLTableCellElementImpl::setChOff):
          (DOM::HTMLTableCellElementImpl::setColSpan):
          (DOM::HTMLTableCellElementImpl::headers):
          (DOM::HTMLTableCellElementImpl::setHeaders):
          (DOM::HTMLTableCellElementImpl::height):
          (DOM::HTMLTableCellElementImpl::setHeight):
          (DOM::HTMLTableCellElementImpl::noWrap):
          (DOM::HTMLTableCellElementImpl::setNoWrap):
          (DOM::HTMLTableCellElementImpl::setRowSpan):
          (DOM::HTMLTableCellElementImpl::scope):
          (DOM::HTMLTableCellElementImpl::setScope):
          (DOM::HTMLTableCellElementImpl::vAlign):
          (DOM::HTMLTableCellElementImpl::setVAlign):
          (DOM::HTMLTableCellElementImpl::width):
          (DOM::HTMLTableCellElementImpl::setWidth):
          (DOM::HTMLTableColElementImpl::HTMLTableColElementImpl):
          (DOM::HTMLTableColElementImpl::mapToEntry):
          (DOM::HTMLTableColElementImpl::parseMappedAttribute):
          (DOM::HTMLTableColElementImpl::align):
          (DOM::HTMLTableColElementImpl::setAlign):
          (DOM::HTMLTableColElementImpl::ch):
          (DOM::HTMLTableColElementImpl::setCh):
          (DOM::HTMLTableColElementImpl::chOff):
          (DOM::HTMLTableColElementImpl::setChOff):
          (DOM::HTMLTableColElementImpl::setSpan):
          (DOM::HTMLTableColElementImpl::vAlign):
          (DOM::HTMLTableColElementImpl::setVAlign):
          (DOM::HTMLTableColElementImpl::width):
          (DOM::HTMLTableColElementImpl::setWidth):
          (DOM::HTMLTableCaptionElementImpl::mapToEntry):
          (DOM::HTMLTableCaptionElementImpl::parseMappedAttribute):
          (DOM::HTMLTableCaptionElementImpl::align):
          (DOM::HTMLTableCaptionElementImpl::setAlign):
          * khtml/html/html_tableimpl.h:
          (DOM::HTMLTableRowElementImpl::HTMLTableRowElementImpl):
          (DOM::HTMLTableColElementImpl::endTagRequirement):
          (DOM::HTMLTableColElementImpl::tagPriority):
          (DOM::HTMLTableColElementImpl::checkDTD):
          (DOM::HTMLTableCaptionElementImpl::HTMLTableCaptionElementImpl):
          * khtml/html/htmlfactory.cpp:
          (DOM::headingConstructor):
          (DOM::preConstructor):
          (DOM::modConstructor):
          (DOM::tableColConstructor):
          (DOM::tableCellConstructor):
          (DOM::tableSectionConstructor):
          (DOM::HTMLElementFactory::createHTMLElement):
          * khtml/html/htmlnames.cpp:
          (HTMLNames::initHTMLNames):
          * khtml/html/htmlnames.h:
          * khtml/html/htmlparser.cpp:
          (HTMLParser::parseToken):
          (isTableSection):
          (isTablePart):
          (isTableRelated):
          (HTMLParser::handleError):
          (HTMLParser::headCreateErrorCheck):
          (HTMLParser::bodyCreateErrorCheck):
          (HTMLParser::framesetCreateErrorCheck):
          (HTMLParser::iframeCreateErrorCheck):
          (HTMLParser::ddCreateErrorCheck):
          (HTMLParser::dtCreateErrorCheck):
          (HTMLParser::tableCellCreateErrorCheck):
          (HTMLParser::tableSectionCreateErrorCheck):
          (HTMLParser::noembedCreateErrorCheck):
          (HTMLParser::noframesCreateErrorCheck):
          (HTMLParser::noscriptCreateErrorCheck):
          (HTMLParser::getNode):
          (HTMLParser::processCloseTag):
          (HTMLParser::isHeaderTag):
          (HTMLParser::isInline):
          (HTMLParser::isResidualStyleTag):
          (HTMLParser::isAffectedByResidualStyle):
          (HTMLParser::popBlock):
          (HTMLParser::handleIsindex):
          * khtml/html/htmltokenizer.cpp:
          (khtml::HTMLTokenizer::parseSpecial):
          (khtml::HTMLTokenizer::scriptHandler):
          (khtml::HTMLTokenizer::parseTag):
          * khtml/khtml_part.cpp:
          (KHTMLPart::init):
          (KHTMLPart::backgroundURL):
          (KHTMLPart::updateActions):
          (KHTMLPart::handleMouseMoveEventDrag):
          (KHTMLPart::selectionComputedStyle):
          (KHTMLPart::applyEditingStyleToElement):
          (KHTMLPart::removeEditingStyleFromElement):
          * khtml/khtmlview.cpp:
          (KHTMLView::layout):
          (isSubmitImage):
          * khtml/misc/decoder.cpp:
          (Decoder::decode):
          * khtml/misc/hashtable.h:
          (khtml::::lookup):
          * khtml/rendering/render_applet.cpp:
          (RenderApplet::createWidgetIfNecessary):
          * khtml/rendering/render_block.cpp:
          (khtml::RenderBlock::layoutBlock):
          * khtml/rendering/render_box.cpp:
          (RenderBox::paintRootBoxDecorations):
          (RenderBox::paintBackgroundExtended):
          * khtml/rendering/render_canvasimage.cpp:
          (RenderCanvasImage::paint):
          * khtml/rendering/render_flow.cpp:
          (RenderFlow::addFocusRingRects):
          * khtml/rendering/render_form.cpp:
          (RenderLineEdit::updateFromElement):
          (RenderFieldset::findLegend):
          (RenderSelect::updateFromElement):
          (RenderSelect::layout):
          (RenderSelect::slotSelected):
          (RenderSelect::slotSelectionChanged):
          (RenderSelect::updateSelection):
          (RenderSlider::updateFromElement):
          (RenderSlider::slotSliderValueChanged):
          * khtml/rendering/render_frames.cpp:
          (RenderPartObject::updateWidget):
          (RenderPartObject::slotViewCleared):
          * khtml/rendering/render_image.cpp:
          (RenderImage::paint):
          (RenderImage::imageMap):
          (RenderImage::updateAltText):
          * khtml/rendering/render_layer.cpp:
          (Marquee::marqueeSpeed):
          * khtml/rendering/render_list.cpp:
          (getParentOfFirstLineBox):
          * khtml/rendering/render_object.cpp:
          (RenderObject::isBody):
          (RenderObject::isHR):
          (RenderObject::isHTMLMarquee):
          (RenderObject::sizesToMaxWidth):
          (RenderObject::setStyle):
          (RenderObject::getTextDecorationColors):
          (RenderObject::setPixmap):
          * khtml/rendering/render_table.cpp:
          (RenderTable::addChild):
          (RenderTable::layout):
          (RenderTableSection::addChild):
          (RenderTableRow::addChild):
          (RenderTableCell::updateFromElement):
          (RenderTableCell::calcMinMaxWidth):
          (RenderTableCol::updateFromElement):
          * khtml/rendering/render_theme.cpp:
          (khtml::RenderTheme::isControlContainer):
          (khtml::RenderTheme::isChecked):
          (khtml::RenderTheme::isEnabled):
          * khtml/xml/dom_docimpl.cpp:
          (DocumentImpl::createElementNS):
          (DocumentImpl::getElementById):
          (DocumentImpl::getElementByAccessKey):
          (DocumentImpl::body):
          (DocumentImpl::shouldScheduleLayout):
          (DocumentImpl::prepareMouseEvent):
          (DocumentImpl::recalcStyleSelector):
          * khtml/xml/dom_elementimpl.cpp:
          (ElementImpl::getAttribute):
          (ElementImpl::setAttribute):
          (ElementImpl::setAttributeMap):
          (ElementImpl::insertedIntoDocument):
          (ElementImpl::removedFromDocument):
          (ElementImpl::formatForDebugger):
          (NamedAttrMapImpl::setNamedItem):
          (NamedAttrMapImpl::removeNamedItem):
          (NamedAttrMapImpl::operator=):
          (StyledElementImpl::updateStyleAttributeIfNeeded):
          (StyledElementImpl::mapToEntry):
          (StyledElementImpl::parseMappedAttribute):
          * khtml/xml/dom_nodeimpl.cpp:
          (DOM::NodeImpl::maxDeepOffset):
          (DOM::NodeImpl::enclosingBlockFlowOrTableElement):
          (DOM::NodeImpl::enclosingBlockFlowElement):
          (DOM::NodeImpl::enclosingInlineElement):
          (DOM::NodeImpl::rootEditableElement):
          (DOM::NodeImpl::showNode):
          (DOM::NodeImpl::showTreeAndMark):
          (DOM::NameNodeListImpl::nodeMatches):
          * khtml/xml/dom_position.cpp:
          (DOM::Position::downstream):
          (DOM::Position::rendersInDifferentPosition):
          (DOM::Position::leadingWhitespacePosition):
          (DOM::Position::trailingWhitespacePosition):
          * khtml/xml/xml_tokenizer.cpp:
          (khtml::XMLTokenizer::startElement):
          (khtml::XMLTokenizer::insertErrorMessageBlock):
          (khtml::XMLTokenizer::addScripts):
          (khtml::XMLTokenizer::executeScripts):
          * kwq/DOM.mm:
          (+[DOMNode _nodeWithImpl:]):
          * kwq/DOMHTML.mm:
          (-[DOMHTMLElement idName]):
          (-[DOMHTMLElement setIdName:]):
          (-[DOMHTMLLinkElement media]):
          (-[DOMHTMLLinkElement setMedia:]):
          (-[DOMHTMLLinkElement rel]):
          (-[DOMHTMLLinkElement setRel:]):
          (-[DOMHTMLLinkElement rev]):
          (-[DOMHTMLLinkElement setRev:]):
          (-[DOMHTMLLinkElement target]):
          (-[DOMHTMLLinkElement setTarget:]):
          (-[DOMHTMLLinkElement type]):
          (-[DOMHTMLLinkElement setType:]):
          (-[DOMHTMLTitleElement text]):
          (-[DOMHTMLTitleElement setText:]):
          (-[DOMHTMLMetaElement content]):
          (-[DOMHTMLMetaElement setContent:]):
          (-[DOMHTMLMetaElement httpEquiv]):
          (-[DOMHTMLMetaElement setHttpEquiv:]):
          (-[DOMHTMLMetaElement name]):
          (-[DOMHTMLMetaElement setName:]):
          (-[DOMHTMLMetaElement scheme]):
          (-[DOMHTMLMetaElement setScheme:]):
          (-[DOMHTMLBaseElement setHref:]):
          (-[DOMHTMLBaseElement target]):
          (-[DOMHTMLBaseElement setTarget:]):
          (-[DOMHTMLStyleElement disabled]):
          (-[DOMHTMLStyleElement setDisabled:]):
          (-[DOMHTMLStyleElement media]):
          (-[DOMHTMLStyleElement setMedia:]):
          (-[DOMHTMLStyleElement type]):
          (-[DOMHTMLStyleElement setType:]):
          (-[DOMHTMLBodyElement aLink]):
          (-[DOMHTMLBodyElement setALink:]):
          (-[DOMHTMLBodyElement background]):
          (-[DOMHTMLBodyElement setBackground:]):
          (-[DOMHTMLBodyElement bgColor]):
          (-[DOMHTMLBodyElement setBgColor:]):
          (-[DOMHTMLBodyElement link]):
          (-[DOMHTMLBodyElement setLink:]):
          (-[DOMHTMLBodyElement text]):
          (-[DOMHTMLBodyElement setText:]):
          (-[DOMHTMLBodyElement vLink]):
          (-[DOMHTMLBodyElement setVLink:]):
          (-[DOMHTMLFormElement name]):
          (-[DOMHTMLFormElement setName:]):
          (-[DOMHTMLFormElement acceptCharset]):
          (-[DOMHTMLFormElement setAcceptCharset:]):
          (-[DOMHTMLFormElement action]):
          (-[DOMHTMLFormElement setAction:]):
          (-[DOMHTMLFormElement enctype]):
          (-[DOMHTMLFormElement setEnctype:]):
          (-[DOMHTMLFormElement method]):
          (-[DOMHTMLFormElement setMethod:]):
          (-[DOMHTMLFormElement target]):
          (-[DOMHTMLFormElement setTarget:]):
          (-[DOMHTMLTextAreaElement accessKey]):
          (-[DOMHTMLTextAreaElement setAccessKey:]):
          (-[DOMHTMLTextAreaElement cols]):
          (-[DOMHTMLTextAreaElement setCols:]):
          (-[DOMHTMLTextAreaElement disabled]):
          (-[DOMHTMLTextAreaElement setDisabled:]):
          (-[DOMHTMLTextAreaElement readOnly]):
          (-[DOMHTMLTextAreaElement setReadOnly:]):
          (-[DOMHTMLTextAreaElement rows]):
          (-[DOMHTMLTextAreaElement setRows:]):
          (-[DOMHTMLButtonElement accessKey]):
          (-[DOMHTMLButtonElement setAccessKey:]):
          (-[DOMHTMLButtonElement disabled]):
          (-[DOMHTMLButtonElement setDisabled:]):
          (-[DOMHTMLButtonElement value]):
          (-[DOMHTMLButtonElement setValue:]):
          (-[DOMHTMLLabelElement accessKey]):
          (-[DOMHTMLLabelElement setAccessKey:]):
          (-[DOMHTMLLabelElement htmlFor]):
          (-[DOMHTMLLabelElement setHtmlFor:]):
          (-[DOMHTMLLegendElement accessKey]):
          (-[DOMHTMLLegendElement setAccessKey:]):
          (-[DOMHTMLLegendElement align]):
          (-[DOMHTMLLegendElement setAlign:]):
          (-[DOMHTMLUListElement compact]):
          (-[DOMHTMLUListElement setCompact:]):
          (-[DOMHTMLUListElement type]):
          (-[DOMHTMLUListElement setType:]):
          (-[DOMHTMLOListElement start]):
          (-[DOMHTMLOListElement setStart:]):
          (-[DOMHTMLOListElement type]):
          (-[DOMHTMLOListElement setType:]):
          (-[DOMHTMLDListElement compact]):
          (-[DOMHTMLDListElement setCompact:]):
          (-[DOMHTMLDirectoryElement compact]):
          (-[DOMHTMLDirectoryElement setCompact:]):
          (-[DOMHTMLMenuElement compact]):
          (-[DOMHTMLMenuElement setCompact:]):
          (-[DOMHTMLQuoteElement cite]):
          (-[DOMHTMLQuoteElement setCite:]):
          (-[DOMHTMLDivElement align]):
          (-[DOMHTMLDivElement setAlign:]):
          (-[DOMHTMLParagraphElement align]):
          (-[DOMHTMLParagraphElement setAlign:]):
          (-[DOMHTMLHeadingElement align]):
          (-[DOMHTMLHeadingElement setAlign:]):
          (-[DOMHTMLPreElement width]):
          (-[DOMHTMLPreElement setWidth:]):
          (-[DOMHTMLBRElement clear]):
          (-[DOMHTMLBRElement setClear:]):
          (-[DOMHTMLBaseFontElement color]):
          (-[DOMHTMLBaseFontElement setColor:]):
          (-[DOMHTMLBaseFontElement face]):
          (-[DOMHTMLBaseFontElement setFace:]):
          (-[DOMHTMLBaseFontElement size]):
          (-[DOMHTMLBaseFontElement setSize:]):
          (-[DOMHTMLFontElement color]):
          (-[DOMHTMLFontElement setColor:]):
          (-[DOMHTMLFontElement face]):
          (-[DOMHTMLFontElement setFace:]):
          (-[DOMHTMLFontElement size]):
          (-[DOMHTMLFontElement setSize:]):
          (-[DOMHTMLHRElement align]):
          (-[DOMHTMLHRElement setAlign:]):
          (-[DOMHTMLHRElement noShade]):
          (-[DOMHTMLHRElement setNoShade:]):
          (-[DOMHTMLHRElement size]):
          (-[DOMHTMLHRElement setSize:]):
          (-[DOMHTMLHRElement width]):
          (-[DOMHTMLHRElement setWidth:]):
          (-[DOMHTMLModElement cite]):
          (-[DOMHTMLModElement setCite:]):
          (-[DOMHTMLModElement dateTime]):
          (-[DOMHTMLModElement setDateTime:]):
          (-[DOMHTMLAnchorElement accessKey]):
          (-[DOMHTMLAnchorElement setAccessKey:]):
          (-[DOMHTMLAnchorElement charset]):
          (-[DOMHTMLAnchorElement setCharset:]):
          (-[DOMHTMLAnchorElement coords]):
          (-[DOMHTMLAnchorElement setCoords:]):
          (-[DOMHTMLAnchorElement setHref:]):
          (-[DOMHTMLAnchorElement target]):
          (-[DOMHTMLAnchorElement setTarget:]):
          (-[DOMHTMLAnchorElement type]):
          (-[DOMHTMLAnchorElement setType:]):
          (-[DOMHTMLImageElement name]):
          (-[DOMHTMLImageElement setName:]):
          (-[DOMHTMLImageElement align]):
          (-[DOMHTMLImageElement setAlign:]):
          (-[DOMHTMLImageElement alt]):
          (-[DOMHTMLImageElement setAlt:]):
          (-[DOMHTMLImageElement border]):
          (-[DOMHTMLImageElement setBorder:]):
          (-[DOMHTMLImageElement height]):
          (-[DOMHTMLImageElement setHeight:]):
          (-[DOMHTMLImageElement hspace]):
          (-[DOMHTMLImageElement setHspace:]):
          (-[DOMHTMLImageElement isMap]):
          (-[DOMHTMLImageElement setIsMap:]):
          (-[DOMHTMLImageElement longDesc]):
          (-[DOMHTMLImageElement setLongDesc:]):
          (-[DOMHTMLImageElement setSrc:]):
          (-[DOMHTMLImageElement useMap]):
          (-[DOMHTMLImageElement setUseMap:]):
          (-[DOMHTMLImageElement vspace]):
          (-[DOMHTMLImageElement setVspace:]):
          (-[DOMHTMLImageElement width]):
          (-[DOMHTMLImageElement setWidth:]):
          (-[DOMHTMLObjectElement code]):
          (-[DOMHTMLObjectElement setCode:]):
          (-[DOMHTMLObjectElement align]):
          (-[DOMHTMLObjectElement setAlign:]):
          (-[DOMHTMLObjectElement archive]):
          (-[DOMHTMLObjectElement setArchive:]):
          (-[DOMHTMLObjectElement border]):
          (-[DOMHTMLObjectElement setBorder:]):
          (-[DOMHTMLObjectElement codeBase]):
          (-[DOMHTMLObjectElement setCodeBase:]):
          (-[DOMHTMLObjectElement codeType]):
          (-[DOMHTMLObjectElement setCodeType:]):
          (-[DOMHTMLObjectElement data]):
          (-[DOMHTMLObjectElement setData:]):
          (-[DOMHTMLObjectElement declare]):
          (-[DOMHTMLObjectElement setDeclare:]):
          (-[DOMHTMLObjectElement height]):
          (-[DOMHTMLObjectElement setHeight:]):
          (-[DOMHTMLObjectElement hspace]):
          (-[DOMHTMLObjectElement setHspace:]):
          (-[DOMHTMLObjectElement name]):
          (-[DOMHTMLObjectElement setName:]):
          (-[DOMHTMLObjectElement standby]):
          (-[DOMHTMLObjectElement setStandby:]):
          (-[DOMHTMLObjectElement tabIndex]):
          (-[DOMHTMLObjectElement setTabIndex:]):
          (-[DOMHTMLObjectElement type]):
          (-[DOMHTMLObjectElement setType:]):
          (-[DOMHTMLObjectElement useMap]):
          (-[DOMHTMLObjectElement setUseMap:]):
          (-[DOMHTMLObjectElement vspace]):
          (-[DOMHTMLObjectElement setVspace:]):
          (-[DOMHTMLObjectElement width]):
          (-[DOMHTMLObjectElement setWidth:]):
          (-[DOMHTMLParamElement name]):
          (-[DOMHTMLParamElement setName:]):
          (-[DOMHTMLParamElement type]):
          (-[DOMHTMLParamElement setType:]):
          (-[DOMHTMLParamElement value]):
          (-[DOMHTMLParamElement setValue:]):
          (-[DOMHTMLParamElement valueType]):
          (-[DOMHTMLParamElement setValueType:]):
          (-[DOMHTMLAppletElement align]):
          (-[DOMHTMLAppletElement setAlign:]):
          (-[DOMHTMLAppletElement alt]):
          (-[DOMHTMLAppletElement setAlt:]):
          (-[DOMHTMLAppletElement archive]):
          (-[DOMHTMLAppletElement setArchive:]):
          (-[DOMHTMLAppletElement code]):
          (-[DOMHTMLAppletElement setCode:]):
          (-[DOMHTMLAppletElement codeBase]):
          (-[DOMHTMLAppletElement setCodeBase:]):
          (-[DOMHTMLAppletElement height]):
          (-[DOMHTMLAppletElement setHeight:]):
          (-[DOMHTMLAppletElement hspace]):
          (-[DOMHTMLAppletElement setHspace:]):
          (-[DOMHTMLAppletElement name]):
          (-[DOMHTMLAppletElement setName:]):
          (-[DOMHTMLAppletElement object]):
          (-[DOMHTMLAppletElement setObject:]):
          (-[DOMHTMLAppletElement vspace]):
          (-[DOMHTMLAppletElement setVspace:]):
          (-[DOMHTMLAppletElement width]):
          (-[DOMHTMLAppletElement setWidth:]):
          (-[DOMHTMLMapElement name]):
          (-[DOMHTMLMapElement setName:]):
          (-[DOMHTMLAreaElement accessKey]):
          (-[DOMHTMLAreaElement setAccessKey:]):
          (-[DOMHTMLAreaElement alt]):
          (-[DOMHTMLAreaElement setAlt:]):
          (-[DOMHTMLAreaElement coords]):
          (-[DOMHTMLAreaElement setCoords:]):
          (-[DOMHTMLAreaElement setHref:]):
          (-[DOMHTMLAreaElement noHref]):
          (-[DOMHTMLAreaElement setNoHref:]):
          (-[DOMHTMLAreaElement shape]):
          (-[DOMHTMLAreaElement setShape:]):
          (-[DOMHTMLAreaElement tabIndex]):
          (-[DOMHTMLAreaElement setTabIndex:]):
          (-[DOMHTMLAreaElement target]):
          (-[DOMHTMLAreaElement setTarget:]):
          (-[DOMHTMLScriptElement text]):
          (-[DOMHTMLScriptElement setText:]):
          (-[DOMHTMLScriptElement charset]):
          (-[DOMHTMLScriptElement setCharset:]):
          (-[DOMHTMLScriptElement defer]):
          (-[DOMHTMLScriptElement setDefer:]):
          (-[DOMHTMLScriptElement src]):
          (-[DOMHTMLScriptElement setSrc:]):
          (-[DOMHTMLScriptElement type]):
          (-[DOMHTMLScriptElement setType:]):
          (-[DOMHTMLTableCaptionElement align]):
          (-[DOMHTMLTableCaptionElement setAlign:]):
          (-[DOMHTMLTableSectionElement align]):
          (-[DOMHTMLTableSectionElement setAlign:]):
          (-[DOMHTMLTableSectionElement ch]):
          (-[DOMHTMLTableSectionElement setCh:]):
          (-[DOMHTMLTableSectionElement chOff]):
          (-[DOMHTMLTableSectionElement setChOff:]):
          (-[DOMHTMLTableSectionElement vAlign]):
          (-[DOMHTMLTableSectionElement setVAlign:]):
          (-[DOMHTMLTableElement align]):
          (-[DOMHTMLTableElement setAlign:]):
          (-[DOMHTMLTableElement bgColor]):
          (-[DOMHTMLTableElement setBgColor:]):
          (-[DOMHTMLTableElement border]):
          (-[DOMHTMLTableElement setBorder:]):
          (-[DOMHTMLTableElement cellPadding]):
          (-[DOMHTMLTableElement setCellPadding:]):
          (-[DOMHTMLTableElement cellSpacing]):
          (-[DOMHTMLTableElement setCellSpacing:]):
          (-[DOMHTMLTableElement frameBorders]):
          (-[DOMHTMLTableElement setFrameBorders:]):
          (-[DOMHTMLTableElement rules]):
          (-[DOMHTMLTableElement setRules:]):
          (-[DOMHTMLTableElement summary]):
          (-[DOMHTMLTableElement setSummary:]):
          (-[DOMHTMLTableElement width]):
          (-[DOMHTMLTableElement setWidth:]):
          (-[DOMHTMLTableColElement align]):
          (-[DOMHTMLTableColElement setAlign:]):
          (-[DOMHTMLTableColElement ch]):
          (-[DOMHTMLTableColElement setCh:]):
          (-[DOMHTMLTableColElement chOff]):
          (-[DOMHTMLTableColElement setChOff:]):
          (-[DOMHTMLTableColElement span]):
          (-[DOMHTMLTableColElement setSpan:]):
          (-[DOMHTMLTableColElement vAlign]):
          (-[DOMHTMLTableColElement setVAlign:]):
          (-[DOMHTMLTableColElement width]):
          (-[DOMHTMLTableColElement setWidth:]):
          (-[DOMHTMLTableRowElement align]):
          (-[DOMHTMLTableRowElement setAlign:]):
          (-[DOMHTMLTableRowElement bgColor]):
          (-[DOMHTMLTableRowElement setBgColor:]):
          (-[DOMHTMLTableRowElement ch]):
          (-[DOMHTMLTableRowElement setCh:]):
          (-[DOMHTMLTableRowElement chOff]):
          (-[DOMHTMLTableRowElement setChOff:]):
          (-[DOMHTMLTableRowElement vAlign]):
          (-[DOMHTMLTableRowElement setVAlign:]):
          (-[DOMHTMLTableCellElement abbr]):
          (-[DOMHTMLTableCellElement setAbbr:]):
          (-[DOMHTMLTableCellElement align]):
          (-[DOMHTMLTableCellElement setAlign:]):
          (-[DOMHTMLTableCellElement axis]):
          (-[DOMHTMLTableCellElement setAxis:]):
          (-[DOMHTMLTableCellElement bgColor]):
          (-[DOMHTMLTableCellElement setBgColor:]):
          (-[DOMHTMLTableCellElement ch]):
          (-[DOMHTMLTableCellElement setCh:]):
          (-[DOMHTMLTableCellElement chOff]):
          (-[DOMHTMLTableCellElement setChOff:]):
          (-[DOMHTMLTableCellElement colSpan]):
          (-[DOMHTMLTableCellElement setColSpan:]):
          (-[DOMHTMLTableCellElement headers]):
          (-[DOMHTMLTableCellElement setHeaders:]):
          (-[DOMHTMLTableCellElement height]):
          (-[DOMHTMLTableCellElement setHeight:]):
          (-[DOMHTMLTableCellElement noWrap]):
          (-[DOMHTMLTableCellElement setNoWrap:]):
          (-[DOMHTMLTableCellElement rowSpan]):
          (-[DOMHTMLTableCellElement setRowSpan:]):
          (-[DOMHTMLTableCellElement scope]):
          (-[DOMHTMLTableCellElement setScope:]):
          (-[DOMHTMLTableCellElement vAlign]):
          (-[DOMHTMLTableCellElement setVAlign:]):
          (-[DOMHTMLTableCellElement width]):
          (-[DOMHTMLTableCellElement setWidth:]):
          (-[DOMHTMLFrameSetElement rows]):
          (-[DOMHTMLFrameSetElement setRows:]):
          (-[DOMHTMLFrameSetElement cols]):
          (-[DOMHTMLFrameSetElement setCols:]):
          (-[DOMHTMLFrameElement frameBorder]):
          (-[DOMHTMLFrameElement setFrameBorder:]):
          (-[DOMHTMLFrameElement longDesc]):
          (-[DOMHTMLFrameElement setLongDesc:]):
          (-[DOMHTMLFrameElement marginHeight]):
          (-[DOMHTMLFrameElement setMarginHeight:]):
          (-[DOMHTMLFrameElement marginWidth]):
          (-[DOMHTMLFrameElement setMarginWidth:]):
          (-[DOMHTMLFrameElement name]):
          (-[DOMHTMLFrameElement setName:]):
          (-[DOMHTMLFrameElement noResize]):
          (-[DOMHTMLFrameElement setNoResize:]):
          (-[DOMHTMLFrameElement scrolling]):
          (-[DOMHTMLFrameElement setScrolling:]):
          (-[DOMHTMLFrameElement src]):
          (-[DOMHTMLFrameElement setSrc:]):
          (-[DOMHTMLIFrameElement align]):
          (-[DOMHTMLIFrameElement setAlign:]):
          (-[DOMHTMLIFrameElement frameBorder]):
          (-[DOMHTMLIFrameElement setFrameBorder:]):
          (-[DOMHTMLIFrameElement height]):
          (-[DOMHTMLIFrameElement setHeight:]):
          (-[DOMHTMLIFrameElement longDesc]):
          (-[DOMHTMLIFrameElement setLongDesc:]):
          (-[DOMHTMLIFrameElement marginHeight]):
          (-[DOMHTMLIFrameElement setMarginHeight:]):
          (-[DOMHTMLIFrameElement marginWidth]):
          (-[DOMHTMLIFrameElement setMarginWidth:]):
          (-[DOMHTMLIFrameElement name]):
          (-[DOMHTMLIFrameElement setName:]):
          (-[DOMHTMLIFrameElement noResize]):
          (-[DOMHTMLIFrameElement setNoResize:]):
          (-[DOMHTMLIFrameElement scrolling]):
          (-[DOMHTMLIFrameElement setScrolling:]):
          (-[DOMHTMLIFrameElement src]):
          (-[DOMHTMLIFrameElement setSrc:]):
          (-[DOMHTMLIFrameElement width]):
          (-[DOMHTMLIFrameElement setWidth:]):
          (-[DOMHTMLEmbedElement align]):
          (-[DOMHTMLEmbedElement setAlign:]):
          (-[DOMHTMLEmbedElement height]):
          (-[DOMHTMLEmbedElement setHeight:]):
          (-[DOMHTMLEmbedElement name]):
          (-[DOMHTMLEmbedElement setName:]):
          (-[DOMHTMLEmbedElement src]):
          (-[DOMHTMLEmbedElement setSrc:]):
          (-[DOMHTMLEmbedElement type]):
          (-[DOMHTMLEmbedElement setType:]):
          (-[DOMHTMLEmbedElement width]):
          (-[DOMHTMLEmbedElement setWidth:]):
          * kwq/KWQAccObject.mm:
          (-[KWQAccObject role]):
          (-[KWQAccObject helpText]):
          (-[KWQAccObject title]):
          (-[KWQAccObject accessibilityDescription]):
          (-[KWQAccObject accessibilityIsIgnored]):
          (-[KWQAccObject accessibilityAttributeValue:]):
          * kwq/KWQKHTMLPart.cpp:
          (KWQKHTMLPart::isFrameSet):
          * kwq/KWQKHTMLPart.mm:
          (scanForForm):
          (KWQKHTMLPart::currentForm):
          (KWQKHTMLPart::searchForLabelsBeforeElement):
          (KWQKHTMLPart::matchLabelsAgainstElement):
          (KWQKHTMLPart::fileWrapperForElement):
          (listParent):
          (isTextFirstInListItem):
          (KWQKHTMLPart::attributedString):
          (KWQKHTMLPart::styleForSelectionStart):
          (KWQKHTMLPart::setSelectionFromNone):
          * kwq/WebCoreBridge.mm:
          (inputElementFromDOMElement):
          (formElementFromDOMElement):
          (-[WebCoreBridge elementAtPoint:]):
  
  Revision  Changes    Path
  1.4501    +1318 -0   WebCore/ChangeLog
  
  Index: ChangeLog
  ===================================================================
  RCS file: /cvs/root/WebCore/ChangeLog,v
  retrieving revision 1.4500
  retrieving revision 1.4501
  diff -u -r1.4500 -r1.4501
  --- ChangeLog	30 Jul 2005 00:18:17 -0000	1.4500
  +++ ChangeLog	30 Jul 2005 02:33:02 -0000	1.4501
  @@ -1,3 +1,1321 @@
  +2005-07-29  Maciej Stachowiak  <mjs at apple.com>
  +
  +        Reviewed by hyatt (concept and a few manual parts), large part
  +	done by script and not really reviewed in detail.
  +
  +        - changed how HTML tags and attributes are referred to in the code for better readability.
  +
  +        * khtml/css/cssstyleselector.cpp:
  +        (khtml::checkPseudoState):
  +        (khtml::CSSStyleSelector::canShareStyleWithElement):
  +        (khtml::CSSStyleSelector::adjustRenderStyle):
  +        (khtml::CSSStyleSelector::checkOneSelector):
  +        * khtml/css/parser.y:
  +        * khtml/ecma/kjs_css.cpp:
  +        (KJS::DOMStyleSheetList::getOwnProperty):
  +        * khtml/ecma/kjs_dom.cpp:
  +        (KJS::getRuntimeObject):
  +        (KJS::DOMNamedNodesCollection::getOwnProperty):
  +        * khtml/ecma/kjs_html.cpp:
  +        (KJS::HTMLDocument::getOwnProperty):
  +        (KJS::KJS::HTMLDocument::putValueProperty):
  +        (KJS::KJS::HTMLElement::classInfo):
  +        (KJS::HTMLElement::getSetInfo):
  +        (KJS::KJS::HTMLElement::getOwnProperty):
  +        (KJS::KJS::HTMLElement::implementsCall):
  +        (KJS::KJS::HTMLElement::call):
  +        (KJS::KJS::HTMLElement::hasOwnProperty):
  +        (KJS::KJS::HTMLElement::toString):
  +        (KJS::getForm):
  +        (KJS::KJS::HTMLElement::pushEventHandlerScope):
  +        (KJS::KJS::HTMLElementFunction::call):
  +        (KJS::KJS::HTMLElement::put):
  +        (KJS::toHTMLTableCaptionElement):
  +        (KJS::toHTMLTableSectionElement):
  +        (KJS::KJS::HTMLCollection::getOwnProperty):
  +        (KJS::KJS::HTMLSelectCollection::put):
  +        * khtml/editing/apply_style_command.cpp:
  +        (khtml::isStyleSpan):
  +        (khtml::isEmptyStyleSpan):
  +        (khtml::isEmptyFontTag):
  +        (khtml::createFontElement):
  +        (khtml::createStyleSpanElement):
  +        (khtml::ApplyStyleCommand::applyRelativeFontStyleChange):
  +        (khtml::ApplyStyleCommand::applyInlineStyle):
  +        (khtml::ApplyStyleCommand::isHTMLStyleNode):
  +        (khtml::ApplyStyleCommand::removeHTMLFontStyle):
  +        (khtml::ApplyStyleCommand::applyTextDecorationStyle):
  +        (khtml::ApplyStyleCommand::mergeEndWithNextIfIdentical):
  +        (khtml::ApplyStyleCommand::addBlockStyleIfNeeded):
  +        (khtml::ApplyStyleCommand::addInlineStyleIfNeeded):
  +        * khtml/editing/break_blockquote_command.cpp:
  +        (khtml::BreakBlockquoteCommand::doApply):
  +        * khtml/editing/composite_edit_command.cpp:
  +        (khtml::CompositeEditCommand::insertNodeBefore):
  +        (khtml::CompositeEditCommand::insertNodeAfter):
  +        (khtml::CompositeEditCommand::findBlockPlaceholder):
  +        (khtml::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
  +        (khtml::createBlockPlaceholderElement):
  +        * khtml/editing/delete_selection_command.cpp:
  +        (khtml::isListStructureNode):
  +        (khtml::DeleteSelectionCommand::handleSpecialCaseBRDelete):
  +        (khtml::DeleteSelectionCommand::handleGeneralDelete):
  +        (khtml::DeleteSelectionCommand::moveNodesAfterNode):
  +        * khtml/editing/htmlediting.cpp:
  +        (khtml::isSpecialElement):
  +        (khtml::createDefaultParagraphElement):
  +        (khtml::createBreakElement):
  +        (khtml::isMailBlockquote):
  +        * khtml/editing/insert_line_break_command.cpp:
  +        (khtml::InsertLineBreakCommand::doApply):
  +        * khtml/editing/insert_paragraph_separator_command.cpp:
  +        (khtml::InsertParagraphSeparatorCommand::doApply):
  +        * khtml/editing/markup.cpp:
  +        (khtml::startMarkup):
  +        (khtml::createMarkup):
  +        (khtml::createFragmentFromText):
  +        * khtml/editing/replace_selection_command.cpp:
  +        (khtml::isProbablyBlock):
  +        (khtml::isProbablyTableStructureNode):
  +        (khtml::ReplacementFragment::isInterchangeNewlineNode):
  +        (khtml::ReplacementFragment::isInterchangeConvertedSpaceSpan):
  +        (khtml::ReplacementFragment::removeStyleNodes):
  +        (khtml::ReplaceSelectionCommand::doApply):
  +        * khtml/editing/visible_position.cpp:
  +        (khtml::VisiblePosition::init):
  +        (khtml::VisiblePosition::isCandidate):
  +        (khtml::VisiblePosition::isAtomicNode):
  +        * khtml/editing/visible_text.cpp:
  +        (khtml::TextIterator::handleNonTextNode):
  +        (khtml::TextIterator::exitNode):
  +        (khtml::SimplifiedBackwardsTextIterator::handleNonTextNode):
  +        * khtml/editing/visible_units.cpp:
  +        (khtml::endOfLine):
  +        * khtml/html/html_baseimpl.cpp:
  +        (HTMLBodyElementImpl::HTMLBodyElementImpl):
  +        (HTMLBodyElementImpl::mapToEntry):
  +        (HTMLBodyElementImpl::parseMappedAttribute):
  +        (HTMLBodyElementImpl::insertedIntoDocument):
  +        (HTMLBodyElementImpl::isURLAttribute):
  +        (HTMLBodyElementImpl::aLink):
  +        (HTMLBodyElementImpl::setALink):
  +        (HTMLBodyElementImpl::background):
  +        (HTMLBodyElementImpl::setBackground):
  +        (HTMLBodyElementImpl::bgColor):
  +        (HTMLBodyElementImpl::setBgColor):
  +        (HTMLBodyElementImpl::link):
  +        (HTMLBodyElementImpl::setLink):
  +        (HTMLBodyElementImpl::text):
  +        (HTMLBodyElementImpl::setText):
  +        (HTMLBodyElementImpl::vLink):
  +        (HTMLBodyElementImpl::setVLink):
  +        (HTMLFrameElementImpl::HTMLFrameElementImpl):
  +        (HTMLFrameElementImpl::parseMappedAttribute):
  +        (HTMLFrameElementImpl::attach):
  +        (HTMLFrameElementImpl::isURLAttribute):
  +        (HTMLFrameElementImpl::frameBorder):
  +        (HTMLFrameElementImpl::setFrameBorder):
  +        (HTMLFrameElementImpl::longDesc):
  +        (HTMLFrameElementImpl::setLongDesc):
  +        (HTMLFrameElementImpl::marginHeight):
  +        (HTMLFrameElementImpl::setMarginHeight):
  +        (HTMLFrameElementImpl::marginWidth):
  +        (HTMLFrameElementImpl::setMarginWidth):
  +        (HTMLFrameElementImpl::name):
  +        (HTMLFrameElementImpl::setName):
  +        (HTMLFrameElementImpl::setNoResize):
  +        (HTMLFrameElementImpl::scrolling):
  +        (HTMLFrameElementImpl::setScrolling):
  +        (HTMLFrameElementImpl::src):
  +        (HTMLFrameElementImpl::setSrc):
  +        (HTMLFrameSetElementImpl::HTMLFrameSetElementImpl):
  +        (HTMLFrameSetElementImpl::checkDTD):
  +        (HTMLFrameSetElementImpl::parseMappedAttribute):
  +        (HTMLFrameSetElementImpl::attach):
  +        (HTMLFrameSetElementImpl::cols):
  +        (HTMLFrameSetElementImpl::setCols):
  +        (HTMLFrameSetElementImpl::rows):
  +        (HTMLFrameSetElementImpl::setRows):
  +        (HTMLHeadElementImpl::HTMLHeadElementImpl):
  +        (HTMLHeadElementImpl::profile):
  +        (HTMLHeadElementImpl::setProfile):
  +        (HTMLHeadElementImpl::checkDTD):
  +        (HTMLHtmlElementImpl::HTMLHtmlElementImpl):
  +        (HTMLHtmlElementImpl::version):
  +        (HTMLHtmlElementImpl::setVersion):
  +        (HTMLHtmlElementImpl::checkDTD):
  +        (HTMLIFrameElementImpl::HTMLIFrameElementImpl):
  +        (HTMLIFrameElementImpl::mapToEntry):
  +        (HTMLIFrameElementImpl::parseMappedAttribute):
  +        (HTMLIFrameElementImpl::attach):
  +        (HTMLIFrameElementImpl::isURLAttribute):
  +        (HTMLIFrameElementImpl::align):
  +        (HTMLIFrameElementImpl::setAlign):
  +        (HTMLIFrameElementImpl::height):
  +        (HTMLIFrameElementImpl::setHeight):
  +        (HTMLIFrameElementImpl::src):
  +        (HTMLIFrameElementImpl::width):
  +        (HTMLIFrameElementImpl::setWidth):
  +        * khtml/html/html_blockimpl.cpp:
  +        (HTMLBlockquoteElementImpl::HTMLBlockquoteElementImpl):
  +        (HTMLBlockquoteElementImpl::cite):
  +        (HTMLBlockquoteElementImpl::setCite):
  +        (HTMLDivElementImpl::HTMLDivElementImpl):
  +        (HTMLDivElementImpl::mapToEntry):
  +        (HTMLDivElementImpl::parseMappedAttribute):
  +        (HTMLDivElementImpl::align):
  +        (HTMLDivElementImpl::setAlign):
  +        (HTMLHRElementImpl::HTMLHRElementImpl):
  +        (HTMLHRElementImpl::mapToEntry):
  +        (HTMLHRElementImpl::parseMappedAttribute):
  +        (HTMLHRElementImpl::align):
  +        (HTMLHRElementImpl::setAlign):
  +        (HTMLHRElementImpl::noShade):
  +        (HTMLHRElementImpl::setNoShade):
  +        (HTMLHRElementImpl::size):
  +        (HTMLHRElementImpl::setSize):
  +        (HTMLHRElementImpl::width):
  +        (HTMLHRElementImpl::setWidth):
  +        (HTMLHeadingElementImpl::checkDTD):
  +        (HTMLHeadingElementImpl::align):
  +        (HTMLHeadingElementImpl::setAlign):
  +        (HTMLParagraphElementImpl::HTMLParagraphElementImpl):
  +        (HTMLParagraphElementImpl::checkDTD):
  +        (HTMLParagraphElementImpl::mapToEntry):
  +        (HTMLParagraphElementImpl::parseMappedAttribute):
  +        (HTMLParagraphElementImpl::align):
  +        (HTMLParagraphElementImpl::setAlign):
  +        (HTMLPreElementImpl::width):
  +        (HTMLPreElementImpl::setWidth):
  +        (HTMLMarqueeElementImpl::HTMLMarqueeElementImpl):
  +        (HTMLMarqueeElementImpl::mapToEntry):
  +        (HTMLMarqueeElementImpl::parseMappedAttribute):
  +        * khtml/html/html_canvasimpl.cpp:
  +        (HTMLCanvasElementImpl::HTMLCanvasElementImpl):
  +        (HTMLCanvasElementImpl::mapToEntry):
  +        (HTMLCanvasElementImpl::parseMappedAttribute):
  +        (HTMLCanvasElementImpl::isURLAttribute):
  +        * khtml/html/html_documentimpl.cpp:
  +        (DOM::HTMLDocumentImpl::childAllowed):
  +        * khtml/html/html_elementimpl.cpp:
  +        (HTMLElementImpl::endTagRequirement):
  +        (HTMLElementImpl::tagPriority):
  +        (HTMLElementImpl::mapToEntry):
  +        (HTMLElementImpl::parseMappedAttribute):
  +        (HTMLElementImpl::createContextualFragment):
  +        (HTMLElementImpl::setInnerText):
  +        (HTMLElementImpl::setOuterText):
  +        (HTMLElementImpl::setContentEditable):
  +        (HTMLElementImpl::id):
  +        (HTMLElementImpl::setId):
  +        (HTMLElementImpl::title):
  +        (HTMLElementImpl::setTitle):
  +        (HTMLElementImpl::lang):
  +        (HTMLElementImpl::setLang):
  +        (HTMLElementImpl::dir):
  +        (HTMLElementImpl::setDir):
  +        (HTMLElementImpl::className):
  +        (HTMLElementImpl::setClassName):
  +        (HTMLElementImpl::isRecognizedTagName):
  +        (inlineTagList):
  +        (blockTagList):
  +        (HTMLElementImpl::checkDTD):
  +        * khtml/html/html_formimpl.cpp:
  +        (DOM::HTMLFormElementImpl::HTMLFormElementImpl):
  +        (DOM::HTMLFormElementImpl::submitClick):
  +        (DOM::HTMLFormElementImpl::formData):
  +        (DOM::HTMLFormElementImpl::submit):
  +        (DOM::HTMLFormElementImpl::parseMappedAttribute):
  +        (DOM::HTMLFormElementImpl::radioClicked):
  +        (DOM::HTMLFormElementImpl::isURLAttribute):
  +        (DOM::HTMLFormElementImpl::name):
  +        (DOM::HTMLFormElementImpl::setName):
  +        (DOM::HTMLFormElementImpl::acceptCharset):
  +        (DOM::HTMLFormElementImpl::setAcceptCharset):
  +        (DOM::HTMLFormElementImpl::action):
  +        (DOM::HTMLFormElementImpl::setAction):
  +        (DOM::HTMLFormElementImpl::setEnctype):
  +        (DOM::HTMLFormElementImpl::method):
  +        (DOM::HTMLFormElementImpl::setMethod):
  +        (DOM::HTMLFormElementImpl::target):
  +        (DOM::HTMLFormElementImpl::setTarget):
  +        (DOM::HTMLGenericFormElementImpl::parseMappedAttribute):
  +        (DOM::HTMLGenericFormElementImpl::getForm):
  +        (DOM::HTMLGenericFormElementImpl::name):
  +        (DOM::HTMLGenericFormElementImpl::setName):
  +        (DOM::HTMLGenericFormElementImpl::setDisabled):
  +        (DOM::HTMLGenericFormElementImpl::setReadOnly):
  +        (DOM::HTMLGenericFormElementImpl::tabIndex):
  +        (DOM::HTMLGenericFormElementImpl::setTabIndex):
  +        (DOM::HTMLButtonElementImpl::HTMLButtonElementImpl):
  +        (DOM::HTMLButtonElementImpl::type):
  +        (DOM::HTMLButtonElementImpl::parseMappedAttribute):
  +        (DOM::HTMLButtonElementImpl::accessKey):
  +        (DOM::HTMLButtonElementImpl::setAccessKey):
  +        (DOM::HTMLButtonElementImpl::value):
  +        (DOM::HTMLButtonElementImpl::setValue):
  +        (DOM::HTMLFieldSetElementImpl::HTMLFieldSetElementImpl):
  +        (DOM::HTMLFieldSetElementImpl::checkDTD):
  +        (DOM::HTMLInputElementImpl::HTMLInputElementImpl):
  +        (DOM::HTMLInputElementImpl::setType):
  +        (DOM::HTMLInputElementImpl::mapToEntry):
  +        (DOM::HTMLInputElementImpl::parseMappedAttribute):
  +        (DOM::HTMLInputElementImpl::attach):
  +        (DOM::HTMLInputElementImpl::altText):
  +        (DOM::HTMLInputElementImpl::value):
  +        (DOM::HTMLInputElementImpl::setValue):
  +        (DOM::HTMLInputElementImpl::isURLAttribute):
  +        (DOM::HTMLInputElementImpl::defaultValue):
  +        (DOM::HTMLInputElementImpl::setDefaultValue):
  +        (DOM::HTMLInputElementImpl::defaultChecked):
  +        (DOM::HTMLInputElementImpl::setDefaultChecked):
  +        (DOM::HTMLInputElementImpl::accept):
  +        (DOM::HTMLInputElementImpl::setAccept):
  +        (DOM::HTMLInputElementImpl::accessKey):
  +        (DOM::HTMLInputElementImpl::setAccessKey):
  +        (DOM::HTMLInputElementImpl::align):
  +        (DOM::HTMLInputElementImpl::setAlign):
  +        (DOM::HTMLInputElementImpl::alt):
  +        (DOM::HTMLInputElementImpl::setAlt):
  +        (DOM::HTMLInputElementImpl::setMaxLength):
  +        (DOM::HTMLInputElementImpl::setSize):
  +        (DOM::HTMLInputElementImpl::src):
  +        (DOM::HTMLInputElementImpl::setSrc):
  +        (DOM::HTMLInputElementImpl::useMap):
  +        (DOM::HTMLInputElementImpl::setUseMap):
  +        (DOM::HTMLLabelElementImpl::HTMLLabelElementImpl):
  +        (DOM::HTMLLabelElementImpl::parseMappedAttribute):
  +        (DOM::HTMLLabelElementImpl::formElement):
  +        (DOM::HTMLLabelElementImpl::form):
  +        (DOM::HTMLLabelElementImpl::accessKey):
  +        (DOM::HTMLLabelElementImpl::setAccessKey):
  +        (DOM::HTMLLabelElementImpl::htmlFor):
  +        (DOM::HTMLLabelElementImpl::setHtmlFor):
  +        (DOM::HTMLLegendElementImpl::HTMLLegendElementImpl):
  +        (DOM::HTMLLegendElementImpl::accessKey):
  +        (DOM::HTMLLegendElementImpl::setAccessKey):
  +        (DOM::HTMLLegendElementImpl::align):
  +        (DOM::HTMLLegendElementImpl::setAlign):
  +        (DOM::HTMLLegendElementImpl::formElement):
  +        (DOM::HTMLSelectElementImpl::HTMLSelectElementImpl):
  +        (DOM::HTMLSelectElementImpl::checkDTD):
  +        (DOM::HTMLSelectElementImpl::selectedIndex):
  +        (DOM::HTMLSelectElementImpl::setSelectedIndex):
  +        (DOM::HTMLSelectElementImpl::length):
  +        (DOM::HTMLSelectElementImpl::add):
  +        (DOM::HTMLSelectElementImpl::value):
  +        (DOM::HTMLSelectElementImpl::setValue):
  +        (DOM::HTMLSelectElementImpl::state):
  +        (DOM::HTMLSelectElementImpl::restoreState):
  +        (DOM::HTMLSelectElementImpl::parseMappedAttribute):
  +        (DOM::HTMLSelectElementImpl::appendFormData):
  +        (DOM::HTMLSelectElementImpl::optionToListIndex):
  +        (DOM::HTMLSelectElementImpl::listToOptionIndex):
  +        (DOM::HTMLSelectElementImpl::recalcListItems):
  +        (DOM::HTMLSelectElementImpl::reset):
  +        (DOM::HTMLSelectElementImpl::notifyOptionSelected):
  +        (DOM::HTMLSelectElementImpl::setMultiple):
  +        (DOM::HTMLSelectElementImpl::setSize):
  +        (DOM::HTMLKeygenElementImpl::HTMLKeygenElementImpl):
  +        (DOM::HTMLKeygenElementImpl::parseMappedAttribute):
  +        (DOM::HTMLOptGroupElementImpl::HTMLOptGroupElementImpl):
  +        (DOM::HTMLOptGroupElementImpl::recalcSelectOptions):
  +        (DOM::HTMLOptGroupElementImpl::label):
  +        (DOM::HTMLOptGroupElementImpl::setLabel):
  +        (DOM::HTMLOptionElementImpl::HTMLOptionElementImpl):
  +        (DOM::HTMLOptionElementImpl::text):
  +        (DOM::HTMLOptionElementImpl::index):
  +        (DOM::HTMLOptionElementImpl::parseMappedAttribute):
  +        (DOM::HTMLOptionElementImpl::setValue):
  +        (DOM::HTMLOptionElementImpl::getSelect):
  +        (DOM::HTMLOptionElementImpl::defaultSelected):
  +        (DOM::HTMLOptionElementImpl::setDefaultSelected):
  +        (DOM::HTMLOptionElementImpl::label):
  +        (DOM::HTMLOptionElementImpl::setLabel):
  +        (DOM::HTMLTextAreaElementImpl::HTMLTextAreaElementImpl):
  +        (DOM::HTMLTextAreaElementImpl::parseMappedAttribute):
  +        (DOM::HTMLTextAreaElementImpl::accessKey):
  +        (DOM::HTMLTextAreaElementImpl::setAccessKey):
  +        (DOM::HTMLTextAreaElementImpl::setCols):
  +        (DOM::HTMLTextAreaElementImpl::setRows):
  +        (DOM::HTMLIsIndexElementImpl::HTMLIsIndexElementImpl):
  +        (DOM::HTMLIsIndexElementImpl::parseMappedAttribute):
  +        (DOM::HTMLIsIndexElementImpl::prompt):
  +        (DOM::HTMLIsIndexElementImpl::setPrompt):
  +        * khtml/html/html_formimpl.h:
  +        (DOM::HTMLOptGroupElementImpl::checkDTD):
  +        * khtml/html/html_headimpl.cpp:
  +        (HTMLBaseElementImpl::HTMLBaseElementImpl):
  +        (HTMLBaseElementImpl::parseMappedAttribute):
  +        (HTMLBaseElementImpl::setHref):
  +        (HTMLBaseElementImpl::setTarget):
  +        (HTMLLinkElementImpl::HTMLLinkElementImpl):
  +        (HTMLLinkElementImpl::parseMappedAttribute):
  +        (HTMLLinkElementImpl::process):
  +        (HTMLLinkElementImpl::isURLAttribute):
  +        (HTMLLinkElementImpl::disabled):
  +        (HTMLLinkElementImpl::setDisabled):
  +        (HTMLLinkElementImpl::charset):
  +        (HTMLLinkElementImpl::setCharset):
  +        (HTMLLinkElementImpl::href):
  +        (HTMLLinkElementImpl::setHref):
  +        (HTMLLinkElementImpl::hreflang):
  +        (HTMLLinkElementImpl::setHreflang):
  +        (HTMLLinkElementImpl::media):
  +        (HTMLLinkElementImpl::setMedia):
  +        (HTMLLinkElementImpl::rel):
  +        (HTMLLinkElementImpl::setRel):
  +        (HTMLLinkElementImpl::rev):
  +        (HTMLLinkElementImpl::setRev):
  +        (HTMLLinkElementImpl::target):
  +        (HTMLLinkElementImpl::setTarget):
  +        (HTMLLinkElementImpl::type):
  +        (HTMLLinkElementImpl::setType):
  +        (HTMLMetaElementImpl::HTMLMetaElementImpl):
  +        (HTMLMetaElementImpl::parseMappedAttribute):
  +        (HTMLMetaElementImpl::content):
  +        (HTMLMetaElementImpl::setContent):
  +        (HTMLMetaElementImpl::httpEquiv):
  +        (HTMLMetaElementImpl::setHttpEquiv):
  +        (HTMLMetaElementImpl::name):
  +        (HTMLMetaElementImpl::setName):
  +        (HTMLMetaElementImpl::scheme):
  +        (HTMLMetaElementImpl::setScheme):
  +        (HTMLScriptElementImpl::HTMLScriptElementImpl):
  +        (HTMLScriptElementImpl::isURLAttribute):
  +        (HTMLScriptElementImpl::insertedIntoDocument):
  +        (HTMLScriptElementImpl::charset):
  +        (HTMLScriptElementImpl::setCharset):
  +        (HTMLScriptElementImpl::defer):
  +        (HTMLScriptElementImpl::setDefer):
  +        (HTMLScriptElementImpl::src):
  +        (HTMLScriptElementImpl::setSrc):
  +        (HTMLScriptElementImpl::type):
  +        (HTMLScriptElementImpl::setType):
  +        (HTMLStyleElementImpl::HTMLStyleElementImpl):
  +        (HTMLStyleElementImpl::parseMappedAttribute):
  +        (HTMLStyleElementImpl::disabled):
  +        (HTMLStyleElementImpl::setDisabled):
  +        (HTMLStyleElementImpl::media):
  +        (HTMLStyleElementImpl::setMedia):
  +        (HTMLStyleElementImpl::type):
  +        (HTMLStyleElementImpl::setType):
  +        (HTMLTitleElementImpl::HTMLTitleElementImpl):
  +        * khtml/html/html_imageimpl.cpp:
  +        (HTMLImageLoader::updateFromElement):
  +        (HTMLImageElementImpl::HTMLImageElementImpl):
  +        (HTMLImageElementImpl::mapToEntry):
  +        (HTMLImageElementImpl::parseMappedAttribute):
  +        (HTMLImageElementImpl::altText):
  +        (HTMLImageElementImpl::width):
  +        (HTMLImageElementImpl::height):
  +        (HTMLImageElementImpl::isURLAttribute):
  +        (HTMLImageElementImpl::name):
  +        (HTMLImageElementImpl::setName):
  +        (HTMLImageElementImpl::align):
  +        (HTMLImageElementImpl::setAlign):
  +        (HTMLImageElementImpl::alt):
  +        (HTMLImageElementImpl::setAlt):
  +        (HTMLImageElementImpl::border):
  +        (HTMLImageElementImpl::setBorder):
  +        (HTMLImageElementImpl::setHeight):
  +        (HTMLImageElementImpl::hspace):
  +        (HTMLImageElementImpl::setHspace):
  +        (HTMLImageElementImpl::isMap):
  +        (HTMLImageElementImpl::setIsMap):
  +        (HTMLImageElementImpl::longDesc):
  +        (HTMLImageElementImpl::setLongDesc):
  +        (HTMLImageElementImpl::src):
  +        (HTMLImageElementImpl::setSrc):
  +        (HTMLImageElementImpl::useMap):
  +        (HTMLImageElementImpl::setUseMap):
  +        (HTMLImageElementImpl::vspace):
  +        (HTMLImageElementImpl::setVspace):
  +        (HTMLImageElementImpl::setWidth):
  +        (HTMLMapElementImpl::HTMLMapElementImpl):
  +        (HTMLMapElementImpl::checkDTD):
  +        (HTMLMapElementImpl::mapMouseEvent):
  +        (HTMLMapElementImpl::parseMappedAttribute):
  +        (HTMLMapElementImpl::name):
  +        (HTMLMapElementImpl::setName):
  +        (HTMLAreaElementImpl::HTMLAreaElementImpl):
  +        (HTMLAreaElementImpl::parseMappedAttribute):
  +        (HTMLAreaElementImpl::accessKey):
  +        (HTMLAreaElementImpl::setAccessKey):
  +        (HTMLAreaElementImpl::alt):
  +        (HTMLAreaElementImpl::setAlt):
  +        (HTMLAreaElementImpl::coords):
  +        (HTMLAreaElementImpl::setCoords):
  +        (HTMLAreaElementImpl::href):
  +        (HTMLAreaElementImpl::setHref):
  +        (HTMLAreaElementImpl::noHref):
  +        (HTMLAreaElementImpl::setNoHref):
  +        (HTMLAreaElementImpl::shape):
  +        (HTMLAreaElementImpl::setShape):
  +        (HTMLAreaElementImpl::tabIndex):
  +        (HTMLAreaElementImpl::setTabIndex):
  +        (HTMLAreaElementImpl::target):
  +        (HTMLAreaElementImpl::setTarget):
  +        * khtml/html/html_inlineimpl.cpp:
  +        (DOM::HTMLAnchorElementImpl::HTMLAnchorElementImpl):
  +        (DOM::HTMLAnchorElementImpl::defaultEventHandler):
  +        (DOM::HTMLAnchorElementImpl::parseMappedAttribute):
  +        (DOM::HTMLAnchorElementImpl::isURLAttribute):
  +        (DOM::HTMLAnchorElementImpl::accessKey):
  +        (DOM::HTMLAnchorElementImpl::setAccessKey):
  +        (DOM::HTMLAnchorElementImpl::charset):
  +        (DOM::HTMLAnchorElementImpl::setCharset):
  +        (DOM::HTMLAnchorElementImpl::coords):
  +        (DOM::HTMLAnchorElementImpl::setCoords):
  +        (DOM::HTMLAnchorElementImpl::href):
  +        (DOM::HTMLAnchorElementImpl::setHref):
  +        (DOM::HTMLAnchorElementImpl::hreflang):
  +        (DOM::HTMLAnchorElementImpl::setHreflang):
  +        (DOM::HTMLAnchorElementImpl::name):
  +        (DOM::HTMLAnchorElementImpl::setName):
  +        (DOM::HTMLAnchorElementImpl::rel):
  +        (DOM::HTMLAnchorElementImpl::setRel):
  +        (DOM::HTMLAnchorElementImpl::rev):
  +        (DOM::HTMLAnchorElementImpl::setRev):
  +        (DOM::HTMLAnchorElementImpl::shape):
  +        (DOM::HTMLAnchorElementImpl::setShape):
  +        (DOM::HTMLAnchorElementImpl::tabIndex):
  +        (DOM::HTMLAnchorElementImpl::setTabIndex):
  +        (DOM::HTMLAnchorElementImpl::target):
  +        (DOM::HTMLAnchorElementImpl::setTarget):
  +        (DOM::HTMLAnchorElementImpl::type):
  +        (DOM::HTMLAnchorElementImpl::setType):
  +        (DOM::HTMLBRElementImpl::HTMLBRElementImpl):
  +        (DOM::HTMLBRElementImpl::mapToEntry):
  +        (DOM::HTMLBRElementImpl::parseMappedAttribute):
  +        (DOM::HTMLBRElementImpl::clear):
  +        (DOM::HTMLBRElementImpl::setClear):
  +        (DOM::HTMLFontElementImpl::HTMLFontElementImpl):
  +        (DOM::HTMLFontElementImpl::mapToEntry):
  +        (DOM::HTMLFontElementImpl::parseMappedAttribute):
  +        (DOM::HTMLFontElementImpl::color):
  +        (DOM::HTMLFontElementImpl::setColor):
  +        (DOM::HTMLFontElementImpl::face):
  +        (DOM::HTMLFontElementImpl::setFace):
  +        (DOM::HTMLFontElementImpl::size):
  +        (DOM::HTMLFontElementImpl::setSize):
  +        (DOM::HTMLModElementImpl::cite):
  +        (DOM::HTMLModElementImpl::setCite):
  +        (DOM::HTMLModElementImpl::dateTime):
  +        (DOM::HTMLModElementImpl::setDateTime):
  +        (DOM::HTMLQuoteElementImpl::HTMLQuoteElementImpl):
  +        (DOM::HTMLQuoteElementImpl::cite):
  +        (DOM::HTMLQuoteElementImpl::setCite):
  +        * khtml/html/html_listimpl.cpp:
  +        (DOM::HTMLUListElementImpl::mapToEntry):
  +        (DOM::HTMLUListElementImpl::parseMappedAttribute):
  +        (DOM::HTMLUListElementImpl::compact):
  +        (DOM::HTMLUListElementImpl::setCompact):
  +        (DOM::HTMLUListElementImpl::type):
  +        (DOM::HTMLUListElementImpl::setType):
  +        (DOM::HTMLDirectoryElementImpl::compact):
  +        (DOM::HTMLDirectoryElementImpl::setCompact):
  +        (DOM::HTMLMenuElementImpl::compact):
  +        (DOM::HTMLMenuElementImpl::setCompact):
  +        (DOM::HTMLOListElementImpl::mapToEntry):
  +        (DOM::HTMLOListElementImpl::parseMappedAttribute):
  +        (DOM::HTMLOListElementImpl::compact):
  +        (DOM::HTMLOListElementImpl::setCompact):
  +        (DOM::HTMLOListElementImpl::setStart):
  +        (DOM::HTMLOListElementImpl::type):
  +        (DOM::HTMLOListElementImpl::setType):
  +        (DOM::HTMLLIElementImpl::mapToEntry):
  +        (DOM::HTMLLIElementImpl::parseMappedAttribute):
  +        (DOM::HTMLLIElementImpl::attach):
  +        (DOM::HTMLLIElementImpl::type):
  +        (DOM::HTMLLIElementImpl::setType):
  +        (DOM::HTMLLIElementImpl::value):
  +        (DOM::HTMLLIElementImpl::setValue):
  +        (DOM::HTMLDListElementImpl::compact):
  +        (DOM::HTMLDListElementImpl::setCompact):
  +        * khtml/html/html_listimpl.h:
  +        (DOM::HTMLUListElementImpl::HTMLUListElementImpl):
  +        (DOM::HTMLDirectoryElementImpl::HTMLDirectoryElementImpl):
  +        (DOM::HTMLMenuElementImpl::HTMLMenuElementImpl):
  +        (DOM::HTMLOListElementImpl::HTMLOListElementImpl):
  +        (DOM::HTMLLIElementImpl::HTMLLIElementImpl):
  +        (DOM::HTMLDListElementImpl::HTMLDListElementImpl):
  +        * khtml/html/html_miscimpl.cpp:
  +        (DOM::HTMLBaseFontElementImpl::HTMLBaseFontElementImpl):
  +        (DOM::HTMLBaseFontElementImpl::color):
  +        (DOM::HTMLBaseFontElementImpl::setColor):
  +        (DOM::HTMLBaseFontElementImpl::face):
  +        (DOM::HTMLBaseFontElementImpl::setFace):
  +        (DOM::HTMLBaseFontElementImpl::size):
  +        (DOM::HTMLBaseFontElementImpl::setSize):
  +        (DOM::HTMLCollectionImpl::traverseNextItem):
  +        (DOM::HTMLCollectionImpl::checkForNameMatch):
  +        (DOM::HTMLNameCollectionImpl::traverseNextItem):
  +        (DOM::HTMLCollectionImpl::updateNameCache):
  +        (DOM::HTMLFormCollectionImpl::getNamedFormItem):
  +        (DOM::HTMLFormCollectionImpl::nextNamedItemInternal):
  +        (DOM::HTMLFormCollectionImpl::namedItem):
  +        (DOM::HTMLFormCollectionImpl::nextNamedItem):
  +        (DOM::HTMLFormCollectionImpl::updateNameCache):
  +        * khtml/html/html_objectimpl.cpp:
  +        (DOM::HTMLAppletElementImpl::HTMLAppletElementImpl):
  +        (DOM::HTMLAppletElementImpl::checkDTD):
  +        (DOM::HTMLAppletElementImpl::mapToEntry):
  +        (DOM::HTMLAppletElementImpl::parseMappedAttribute):
  +        (DOM::HTMLAppletElementImpl::rendererIsNeeded):
  +        (DOM::HTMLAppletElementImpl::createRenderer):
  +        (DOM::HTMLAppletElementImpl::align):
  +        (DOM::HTMLAppletElementImpl::setAlign):
  +        (DOM::HTMLAppletElementImpl::alt):
  +        (DOM::HTMLAppletElementImpl::setAlt):
  +        (DOM::HTMLAppletElementImpl::archive):
  +        (DOM::HTMLAppletElementImpl::setArchive):
  +        (DOM::HTMLAppletElementImpl::code):
  +        (DOM::HTMLAppletElementImpl::setCode):
  +        (DOM::HTMLAppletElementImpl::codeBase):
  +        (DOM::HTMLAppletElementImpl::setCodeBase):
  +        (DOM::HTMLAppletElementImpl::height):
  +        (DOM::HTMLAppletElementImpl::setHeight):
  +        (DOM::HTMLAppletElementImpl::hspace):
  +        (DOM::HTMLAppletElementImpl::setHspace):
  +        (DOM::HTMLAppletElementImpl::name):
  +        (DOM::HTMLAppletElementImpl::setName):
  +        (DOM::HTMLAppletElementImpl::object):
  +        (DOM::HTMLAppletElementImpl::setObject):
  +        (DOM::HTMLAppletElementImpl::vspace):
  +        (DOM::HTMLAppletElementImpl::setVspace):
  +        (DOM::HTMLAppletElementImpl::width):
  +        (DOM::HTMLAppletElementImpl::setWidth):
  +        (DOM::HTMLEmbedElementImpl::HTMLEmbedElementImpl):
  +        (DOM::HTMLEmbedElementImpl::checkDTD):
  +        (DOM::HTMLEmbedElementImpl::mapToEntry):
  +        (DOM::HTMLEmbedElementImpl::parseMappedAttribute):
  +        (DOM::HTMLEmbedElementImpl::rendererIsNeeded):
  +        (DOM::HTMLEmbedElementImpl::isURLAttribute):
  +        (DOM::HTMLObjectElementImpl::HTMLObjectElementImpl):
  +        (DOM::HTMLObjectElementImpl::checkDTD):
  +        (DOM::HTMLObjectElementImpl::form):
  +        (DOM::HTMLObjectElementImpl::mapToEntry):
  +        (DOM::HTMLObjectElementImpl::parseMappedAttribute):
  +        (DOM::HTMLObjectElementImpl::isURLAttribute):
  +        (DOM::HTMLObjectElementImpl::code):
  +        (DOM::HTMLObjectElementImpl::setCode):
  +        (DOM::HTMLObjectElementImpl::align):
  +        (DOM::HTMLObjectElementImpl::setAlign):
  +        (DOM::HTMLObjectElementImpl::archive):
  +        (DOM::HTMLObjectElementImpl::setArchive):
  +        (DOM::HTMLObjectElementImpl::border):
  +        (DOM::HTMLObjectElementImpl::setBorder):
  +        (DOM::HTMLObjectElementImpl::codeBase):
  +        (DOM::HTMLObjectElementImpl::setCodeBase):
  +        (DOM::HTMLObjectElementImpl::codeType):
  +        (DOM::HTMLObjectElementImpl::setCodeType):
  +        (DOM::HTMLObjectElementImpl::data):
  +        (DOM::HTMLObjectElementImpl::setData):
  +        (DOM::HTMLObjectElementImpl::declare):
  +        (DOM::HTMLObjectElementImpl::setDeclare):
  +        (DOM::HTMLObjectElementImpl::height):
  +        (DOM::HTMLObjectElementImpl::setHeight):
  +        (DOM::HTMLObjectElementImpl::hspace):
  +        (DOM::HTMLObjectElementImpl::setHspace):
  +        (DOM::HTMLObjectElementImpl::name):
  +        (DOM::HTMLObjectElementImpl::setName):
  +        (DOM::HTMLObjectElementImpl::standby):
  +        (DOM::HTMLObjectElementImpl::setStandby):
  +        (DOM::HTMLObjectElementImpl::tabIndex):
  +        (DOM::HTMLObjectElementImpl::setTabIndex):
  +        (DOM::HTMLObjectElementImpl::type):
  +        (DOM::HTMLObjectElementImpl::setType):
  +        (DOM::HTMLObjectElementImpl::useMap):
  +        (DOM::HTMLObjectElementImpl::setUseMap):
  +        (DOM::HTMLObjectElementImpl::vspace):
  +        (DOM::HTMLObjectElementImpl::setVspace):
  +        (DOM::HTMLObjectElementImpl::width):
  +        (DOM::HTMLObjectElementImpl::setWidth):
  +        (DOM::HTMLParamElementImpl::HTMLParamElementImpl):
  +        (DOM::HTMLParamElementImpl::parseMappedAttribute):
  +        (DOM::HTMLParamElementImpl::isURLAttribute):
  +        (DOM::HTMLParamElementImpl::setName):
  +        (DOM::HTMLParamElementImpl::type):
  +        (DOM::HTMLParamElementImpl::setType):
  +        (DOM::HTMLParamElementImpl::setValue):
  +        (DOM::HTMLParamElementImpl::valueType):
  +        (DOM::HTMLParamElementImpl::setValueType):
  +        * khtml/html/html_tableimpl.cpp:
  +        (DOM::HTMLTableElementImpl::HTMLTableElementImpl):
  +        (DOM::HTMLTableElementImpl::checkDTD):
  +        (DOM::HTMLTableElementImpl::createTHead):
  +        (DOM::HTMLTableElementImpl::createTFoot):
  +        (DOM::HTMLTableElementImpl::insertRow):
  +        (DOM::HTMLTableElementImpl::deleteRow):
  +        (DOM::HTMLTableElementImpl::addChild):
  +        (DOM::HTMLTableElementImpl::mapToEntry):
  +        (DOM::HTMLTableElementImpl::parseMappedAttribute):
  +        (DOM::HTMLTableElementImpl::additionalAttributeStyleDecl):
  +        (DOM::HTMLTableElementImpl::getSharedCellDecl):
  +        (DOM::HTMLTableElementImpl::isURLAttribute):
  +        (DOM::HTMLTableElementImpl::align):
  +        (DOM::HTMLTableElementImpl::setAlign):
  +        (DOM::HTMLTableElementImpl::bgColor):
  +        (DOM::HTMLTableElementImpl::setBgColor):
  +        (DOM::HTMLTableElementImpl::border):
  +        (DOM::HTMLTableElementImpl::setBorder):
  +        (DOM::HTMLTableElementImpl::cellPadding):
  +        (DOM::HTMLTableElementImpl::setCellPadding):
  +        (DOM::HTMLTableElementImpl::cellSpacing):
  +        (DOM::HTMLTableElementImpl::setCellSpacing):
  +        (DOM::HTMLTableElementImpl::frame):
  +        (DOM::HTMLTableElementImpl::setFrame):
  +        (DOM::HTMLTableElementImpl::rules):
  +        (DOM::HTMLTableElementImpl::setRules):
  +        (DOM::HTMLTableElementImpl::summary):
  +        (DOM::HTMLTableElementImpl::setSummary):
  +        (DOM::HTMLTableElementImpl::width):
  +        (DOM::HTMLTableElementImpl::setWidth):
  +        (DOM::HTMLTablePartElementImpl::mapToEntry):
  +        (DOM::HTMLTablePartElementImpl::parseMappedAttribute):
  +        (DOM::HTMLTableSectionElementImpl::checkDTD):
  +        (DOM::HTMLTableSectionElementImpl::addChild):
  +        (DOM::HTMLTableSectionElementImpl::numRows):
  +        (DOM::HTMLTableSectionElementImpl::align):
  +        (DOM::HTMLTableSectionElementImpl::setAlign):
  +        (DOM::HTMLTableSectionElementImpl::ch):
  +        (DOM::HTMLTableSectionElementImpl::setCh):
  +        (DOM::HTMLTableSectionElementImpl::chOff):
  +        (DOM::HTMLTableSectionElementImpl::setChOff):
  +        (DOM::HTMLTableSectionElementImpl::vAlign):
  +        (DOM::HTMLTableSectionElementImpl::setVAlign):
  +        (DOM::HTMLTableRowElementImpl::checkDTD):
  +        (DOM::HTMLTableRowElementImpl::addChild):
  +        (DOM::HTMLTableRowElementImpl::rowIndex):
  +        (DOM::HTMLTableRowElementImpl::sectionRowIndex):
  +        (DOM::HTMLTableRowElementImpl::insertCell):
  +        (DOM::HTMLTableRowElementImpl::align):
  +        (DOM::HTMLTableRowElementImpl::setAlign):
  +        (DOM::HTMLTableRowElementImpl::bgColor):
  +        (DOM::HTMLTableRowElementImpl::setBgColor):
  +        (DOM::HTMLTableRowElementImpl::ch):
  +        (DOM::HTMLTableRowElementImpl::setCh):
  +        (DOM::HTMLTableRowElementImpl::chOff):
  +        (DOM::HTMLTableRowElementImpl::setChOff):
  +        (DOM::HTMLTableRowElementImpl::vAlign):
  +        (DOM::HTMLTableRowElementImpl::setVAlign):
  +        (DOM::HTMLTableCellElementImpl::cellIndex):
  +        (DOM::HTMLTableCellElementImpl::mapToEntry):
  +        (DOM::HTMLTableCellElementImpl::parseMappedAttribute):
  +        (DOM::HTMLTableCellElementImpl::additionalAttributeStyleDecl):
  +        (DOM::HTMLTableCellElementImpl::isURLAttribute):
  +        (DOM::HTMLTableCellElementImpl::abbr):
  +        (DOM::HTMLTableCellElementImpl::setAbbr):
  +        (DOM::HTMLTableCellElementImpl::align):
  +        (DOM::HTMLTableCellElementImpl::setAlign):
  +        (DOM::HTMLTableCellElementImpl::axis):
  +        (DOM::HTMLTableCellElementImpl::setAxis):
  +        (DOM::HTMLTableCellElementImpl::bgColor):
  +        (DOM::HTMLTableCellElementImpl::setBgColor):
  +        (DOM::HTMLTableCellElementImpl::ch):
  +        (DOM::HTMLTableCellElementImpl::setCh):
  +        (DOM::HTMLTableCellElementImpl::chOff):
  +        (DOM::HTMLTableCellElementImpl::setChOff):
  +        (DOM::HTMLTableCellElementImpl::setColSpan):
  +        (DOM::HTMLTableCellElementImpl::headers):
  +        (DOM::HTMLTableCellElementImpl::setHeaders):
  +        (DOM::HTMLTableCellElementImpl::height):
  +        (DOM::HTMLTableCellElementImpl::setHeight):
  +        (DOM::HTMLTableCellElementImpl::noWrap):
  +        (DOM::HTMLTableCellElementImpl::setNoWrap):
  +        (DOM::HTMLTableCellElementImpl::setRowSpan):
  +        (DOM::HTMLTableCellElementImpl::scope):
  +        (DOM::HTMLTableCellElementImpl::setScope):
  +        (DOM::HTMLTableCellElementImpl::vAlign):
  +        (DOM::HTMLTableCellElementImpl::setVAlign):
  +        (DOM::HTMLTableCellElementImpl::width):
  +        (DOM::HTMLTableCellElementImpl::setWidth):
  +        (DOM::HTMLTableColElementImpl::HTMLTableColElementImpl):
  +        (DOM::HTMLTableColElementImpl::mapToEntry):
  +        (DOM::HTMLTableColElementImpl::parseMappedAttribute):
  +        (DOM::HTMLTableColElementImpl::align):
  +        (DOM::HTMLTableColElementImpl::setAlign):
  +        (DOM::HTMLTableColElementImpl::ch):
  +        (DOM::HTMLTableColElementImpl::setCh):
  +        (DOM::HTMLTableColElementImpl::chOff):
  +        (DOM::HTMLTableColElementImpl::setChOff):
  +        (DOM::HTMLTableColElementImpl::setSpan):
  +        (DOM::HTMLTableColElementImpl::vAlign):
  +        (DOM::HTMLTableColElementImpl::setVAlign):
  +        (DOM::HTMLTableColElementImpl::width):
  +        (DOM::HTMLTableColElementImpl::setWidth):
  +        (DOM::HTMLTableCaptionElementImpl::mapToEntry):
  +        (DOM::HTMLTableCaptionElementImpl::parseMappedAttribute):
  +        (DOM::HTMLTableCaptionElementImpl::align):
  +        (DOM::HTMLTableCaptionElementImpl::setAlign):
  +        * khtml/html/html_tableimpl.h:
  +        (DOM::HTMLTableRowElementImpl::HTMLTableRowElementImpl):
  +        (DOM::HTMLTableColElementImpl::endTagRequirement):
  +        (DOM::HTMLTableColElementImpl::tagPriority):
  +        (DOM::HTMLTableColElementImpl::checkDTD):
  +        (DOM::HTMLTableCaptionElementImpl::HTMLTableCaptionElementImpl):
  +        * khtml/html/htmlfactory.cpp:
  +        (DOM::headingConstructor):
  +        (DOM::preConstructor):
  +        (DOM::modConstructor):
  +        (DOM::tableColConstructor):
  +        (DOM::tableCellConstructor):
  +        (DOM::tableSectionConstructor):
  +        (DOM::HTMLElementFactory::createHTMLElement):
  +        * khtml/html/htmlnames.cpp:
  +        (HTMLNames::initHTMLNames):
  +        * khtml/html/htmlnames.h:
  +        * khtml/html/htmlparser.cpp:
  +        (HTMLParser::parseToken):
  +        (isTableSection):
  +        (isTablePart):
  +        (isTableRelated):
  +        (HTMLParser::handleError):
  +        (HTMLParser::headCreateErrorCheck):
  +        (HTMLParser::bodyCreateErrorCheck):
  +        (HTMLParser::framesetCreateErrorCheck):
  +        (HTMLParser::iframeCreateErrorCheck):
  +        (HTMLParser::ddCreateErrorCheck):
  +        (HTMLParser::dtCreateErrorCheck):
  +        (HTMLParser::tableCellCreateErrorCheck):
  +        (HTMLParser::tableSectionCreateErrorCheck):
  +        (HTMLParser::noembedCreateErrorCheck):
  +        (HTMLParser::noframesCreateErrorCheck):
  +        (HTMLParser::noscriptCreateErrorCheck):
  +        (HTMLParser::getNode):
  +        (HTMLParser::processCloseTag):
  +        (HTMLParser::isHeaderTag):
  +        (HTMLParser::isInline):
  +        (HTMLParser::isResidualStyleTag):
  +        (HTMLParser::isAffectedByResidualStyle):
  +        (HTMLParser::popBlock):
  +        (HTMLParser::handleIsindex):
  +        * khtml/html/htmltokenizer.cpp:
  +        (khtml::HTMLTokenizer::parseSpecial):
  +        (khtml::HTMLTokenizer::scriptHandler):
  +        (khtml::HTMLTokenizer::parseTag):
  +        * khtml/khtml_part.cpp:
  +        (KHTMLPart::init):
  +        (KHTMLPart::backgroundURL):
  +        (KHTMLPart::updateActions):
  +        (KHTMLPart::handleMouseMoveEventDrag):
  +        (KHTMLPart::selectionComputedStyle):
  +        (KHTMLPart::applyEditingStyleToElement):
  +        (KHTMLPart::removeEditingStyleFromElement):
  +        * khtml/khtmlview.cpp:
  +        (KHTMLView::layout):
  +        (isSubmitImage):
  +        * khtml/misc/decoder.cpp:
  +        (Decoder::decode):
  +        * khtml/misc/hashtable.h:
  +        (khtml::::lookup):
  +        * khtml/rendering/render_applet.cpp:
  +        (RenderApplet::createWidgetIfNecessary):
  +        * khtml/rendering/render_block.cpp:
  +        (khtml::RenderBlock::layoutBlock):
  +        * khtml/rendering/render_box.cpp:
  +        (RenderBox::paintRootBoxDecorations):
  +        (RenderBox::paintBackgroundExtended):
  +        * khtml/rendering/render_canvasimage.cpp:
  +        (RenderCanvasImage::paint):
  +        * khtml/rendering/render_flow.cpp:
  +        (RenderFlow::addFocusRingRects):
  +        * khtml/rendering/render_form.cpp:
  +        (RenderLineEdit::updateFromElement):
  +        (RenderFieldset::findLegend):
  +        (RenderSelect::updateFromElement):
  +        (RenderSelect::layout):
  +        (RenderSelect::slotSelected):
  +        (RenderSelect::slotSelectionChanged):
  +        (RenderSelect::updateSelection):
  +        (RenderSlider::updateFromElement):
  +        (RenderSlider::slotSliderValueChanged):
  +        * khtml/rendering/render_frames.cpp:
  +        (RenderPartObject::updateWidget):
  +        (RenderPartObject::slotViewCleared):
  +        * khtml/rendering/render_image.cpp:
  +        (RenderImage::paint):
  +        (RenderImage::imageMap):
  +        (RenderImage::updateAltText):
  +        * khtml/rendering/render_layer.cpp:
  +        (Marquee::marqueeSpeed):
  +        * khtml/rendering/render_list.cpp:
  +        (getParentOfFirstLineBox):
  +        * khtml/rendering/render_object.cpp:
  +        (RenderObject::isBody):
  +        (RenderObject::isHR):
  +        (RenderObject::isHTMLMarquee):
  +        (RenderObject::sizesToMaxWidth):
  +        (RenderObject::setStyle):
  +        (RenderObject::getTextDecorationColors):
  +        (RenderObject::setPixmap):
  +        * khtml/rendering/render_table.cpp:
  +        (RenderTable::addChild):
  +        (RenderTable::layout):
  +        (RenderTableSection::addChild):
  +        (RenderTableRow::addChild):
  +        (RenderTableCell::updateFromElement):
  +        (RenderTableCell::calcMinMaxWidth):
  +        (RenderTableCol::updateFromElement):
  +        * khtml/rendering/render_theme.cpp:
  +        (khtml::RenderTheme::isControlContainer):
  +        (khtml::RenderTheme::isChecked):
  +        (khtml::RenderTheme::isEnabled):
  +        * khtml/xml/dom_docimpl.cpp:
  +        (DocumentImpl::createElementNS):
  +        (DocumentImpl::getElementById):
  +        (DocumentImpl::getElementByAccessKey):
  +        (DocumentImpl::body):
  +        (DocumentImpl::shouldScheduleLayout):
  +        (DocumentImpl::prepareMouseEvent):
  +        (DocumentImpl::recalcStyleSelector):
  +        * khtml/xml/dom_elementimpl.cpp:
  +        (ElementImpl::getAttribute):
  +        (ElementImpl::setAttribute):
  +        (ElementImpl::setAttributeMap):
  +        (ElementImpl::insertedIntoDocument):
  +        (ElementImpl::removedFromDocument):
  +        (ElementImpl::formatForDebugger):
  +        (NamedAttrMapImpl::setNamedItem):
  +        (NamedAttrMapImpl::removeNamedItem):
  +        (NamedAttrMapImpl::operator=):
  +        (StyledElementImpl::updateStyleAttributeIfNeeded):
  +        (StyledElementImpl::mapToEntry):
  +        (StyledElementImpl::parseMappedAttribute):
  +        * khtml/xml/dom_nodeimpl.cpp:
  +        (DOM::NodeImpl::maxDeepOffset):
  +        (DOM::NodeImpl::enclosingBlockFlowOrTableElement):
  +        (DOM::NodeImpl::enclosingBlockFlowElement):
  +        (DOM::NodeImpl::enclosingInlineElement):
  +        (DOM::NodeImpl::rootEditableElement):
  +        (DOM::NodeImpl::showNode):
  +        (DOM::NodeImpl::showTreeAndMark):
  +        (DOM::NameNodeListImpl::nodeMatches):
  +        * khtml/xml/dom_position.cpp:
  +        (DOM::Position::downstream):
  +        (DOM::Position::rendersInDifferentPosition):
  +        (DOM::Position::leadingWhitespacePosition):
  +        (DOM::Position::trailingWhitespacePosition):
  +        * khtml/xml/xml_tokenizer.cpp:
  +        (khtml::XMLTokenizer::startElement):
  +        (khtml::XMLTokenizer::insertErrorMessageBlock):
  +        (khtml::XMLTokenizer::addScripts):
  +        (khtml::XMLTokenizer::executeScripts):
  +        * kwq/DOM.mm:
  +        (+[DOMNode _nodeWithImpl:]):
  +        * kwq/DOMHTML.mm:
  +        (-[DOMHTMLElement idName]):
  +        (-[DOMHTMLElement setIdName:]):
  +        (-[DOMHTMLLinkElement media]):
  +        (-[DOMHTMLLinkElement setMedia:]):
  +        (-[DOMHTMLLinkElement rel]):
  +        (-[DOMHTMLLinkElement setRel:]):
  +        (-[DOMHTMLLinkElement rev]):
  +        (-[DOMHTMLLinkElement setRev:]):
  +        (-[DOMHTMLLinkElement target]):
  +        (-[DOMHTMLLinkElement setTarget:]):
  +        (-[DOMHTMLLinkElement type]):
  +        (-[DOMHTMLLinkElement setType:]):
  +        (-[DOMHTMLTitleElement text]):
  +        (-[DOMHTMLTitleElement setText:]):
  +        (-[DOMHTMLMetaElement content]):
  +        (-[DOMHTMLMetaElement setContent:]):
  +        (-[DOMHTMLMetaElement httpEquiv]):
  +        (-[DOMHTMLMetaElement setHttpEquiv:]):
  +        (-[DOMHTMLMetaElement name]):
  +        (-[DOMHTMLMetaElement setName:]):
  +        (-[DOMHTMLMetaElement scheme]):
  +        (-[DOMHTMLMetaElement setScheme:]):
  +        (-[DOMHTMLBaseElement setHref:]):
  +        (-[DOMHTMLBaseElement target]):
  +        (-[DOMHTMLBaseElement setTarget:]):
  +        (-[DOMHTMLStyleElement disabled]):
  +        (-[DOMHTMLStyleElement setDisabled:]):
  +        (-[DOMHTMLStyleElement media]):
  +        (-[DOMHTMLStyleElement setMedia:]):
  +        (-[DOMHTMLStyleElement type]):
  +        (-[DOMHTMLStyleElement setType:]):
  +        (-[DOMHTMLBodyElement aLink]):
  +        (-[DOMHTMLBodyElement setALink:]):
  +        (-[DOMHTMLBodyElement background]):
  +        (-[DOMHTMLBodyElement setBackground:]):
  +        (-[DOMHTMLBodyElement bgColor]):
  +        (-[DOMHTMLBodyElement setBgColor:]):
  +        (-[DOMHTMLBodyElement link]):
  +        (-[DOMHTMLBodyElement setLink:]):
  +        (-[DOMHTMLBodyElement text]):
  +        (-[DOMHTMLBodyElement setText:]):
  +        (-[DOMHTMLBodyElement vLink]):
  +        (-[DOMHTMLBodyElement setVLink:]):
  +        (-[DOMHTMLFormElement name]):
  +        (-[DOMHTMLFormElement setName:]):
  +        (-[DOMHTMLFormElement acceptCharset]):
  +        (-[DOMHTMLFormElement setAcceptCharset:]):
  +        (-[DOMHTMLFormElement action]):
  +        (-[DOMHTMLFormElement setAction:]):
  +        (-[DOMHTMLFormElement enctype]):
  +        (-[DOMHTMLFormElement setEnctype:]):
  +        (-[DOMHTMLFormElement method]):
  +        (-[DOMHTMLFormElement setMethod:]):
  +        (-[DOMHTMLFormElement target]):
  +        (-[DOMHTMLFormElement setTarget:]):
  +        (-[DOMHTMLTextAreaElement accessKey]):
  +        (-[DOMHTMLTextAreaElement setAccessKey:]):
  +        (-[DOMHTMLTextAreaElement cols]):
  +        (-[DOMHTMLTextAreaElement setCols:]):
  +        (-[DOMHTMLTextAreaElement disabled]):
  +        (-[DOMHTMLTextAreaElement setDisabled:]):
  +        (-[DOMHTMLTextAreaElement readOnly]):
  +        (-[DOMHTMLTextAreaElement setReadOnly:]):
  +        (-[DOMHTMLTextAreaElement rows]):
  +        (-[DOMHTMLTextAreaElement setRows:]):
  +        (-[DOMHTMLButtonElement accessKey]):
  +        (-[DOMHTMLButtonElement setAccessKey:]):
  +        (-[DOMHTMLButtonElement disabled]):
  +        (-[DOMHTMLButtonElement setDisabled:]):
  +        (-[DOMHTMLButtonElement value]):
  +        (-[DOMHTMLButtonElement setValue:]):
  +        (-[DOMHTMLLabelElement accessKey]):
  +        (-[DOMHTMLLabelElement setAccessKey:]):
  +        (-[DOMHTMLLabelElement htmlFor]):
  +        (-[DOMHTMLLabelElement setHtmlFor:]):
  +        (-[DOMHTMLLegendElement accessKey]):
  +        (-[DOMHTMLLegendElement setAccessKey:]):
  +        (-[DOMHTMLLegendElement align]):
  +        (-[DOMHTMLLegendElement setAlign:]):
  +        (-[DOMHTMLUListElement compact]):
  +        (-[DOMHTMLUListElement setCompact:]):
  +        (-[DOMHTMLUListElement type]):
  +        (-[DOMHTMLUListElement setType:]):
  +        (-[DOMHTMLOListElement start]):
  +        (-[DOMHTMLOListElement setStart:]):
  +        (-[DOMHTMLOListElement type]):
  +        (-[DOMHTMLOListElement setType:]):
  +        (-[DOMHTMLDListElement compact]):
  +        (-[DOMHTMLDListElement setCompact:]):
  +        (-[DOMHTMLDirectoryElement compact]):
  +        (-[DOMHTMLDirectoryElement setCompact:]):
  +        (-[DOMHTMLMenuElement compact]):
  +        (-[DOMHTMLMenuElement setCompact:]):
  +        (-[DOMHTMLQuoteElement cite]):
  +        (-[DOMHTMLQuoteElement setCite:]):
  +        (-[DOMHTMLDivElement align]):
  +        (-[DOMHTMLDivElement setAlign:]):
  +        (-[DOMHTMLParagraphElement align]):
  +        (-[DOMHTMLParagraphElement setAlign:]):
  +        (-[DOMHTMLHeadingElement align]):
  +        (-[DOMHTMLHeadingElement setAlign:]):
  +        (-[DOMHTMLPreElement width]):
  +        (-[DOMHTMLPreElement setWidth:]):
  +        (-[DOMHTMLBRElement clear]):
  +        (-[DOMHTMLBRElement setClear:]):
  +        (-[DOMHTMLBaseFontElement color]):
  +        (-[DOMHTMLBaseFontElement setColor:]):
  +        (-[DOMHTMLBaseFontElement face]):
  +        (-[DOMHTMLBaseFontElement setFace:]):
  +        (-[DOMHTMLBaseFontElement size]):
  +        (-[DOMHTMLBaseFontElement setSize:]):
  +        (-[DOMHTMLFontElement color]):
  +        (-[DOMHTMLFontElement setColor:]):
  +        (-[DOMHTMLFontElement face]):
  +        (-[DOMHTMLFontElement setFace:]):
  +        (-[DOMHTMLFontElement size]):
  +        (-[DOMHTMLFontElement setSize:]):
  +        (-[DOMHTMLHRElement align]):
  +        (-[DOMHTMLHRElement setAlign:]):
  +        (-[DOMHTMLHRElement noShade]):
  +        (-[DOMHTMLHRElement setNoShade:]):
  +        (-[DOMHTMLHRElement size]):
  +        (-[DOMHTMLHRElement setSize:]):
  +        (-[DOMHTMLHRElement width]):
  +        (-[DOMHTMLHRElement setWidth:]):
  +        (-[DOMHTMLModElement cite]):
  +        (-[DOMHTMLModElement setCite:]):
  +        (-[DOMHTMLModElement dateTime]):
  +        (-[DOMHTMLModElement setDateTime:]):
  +        (-[DOMHTMLAnchorElement accessKey]):
  +        (-[DOMHTMLAnchorElement setAccessKey:]):
  +        (-[DOMHTMLAnchorElement charset]):
  +        (-[DOMHTMLAnchorElement setCharset:]):
  +        (-[DOMHTMLAnchorElement coords]):
  +        (-[DOMHTMLAnchorElement setCoords:]):
  +        (-[DOMHTMLAnchorElement setHref:]):
  +        (-[DOMHTMLAnchorElement target]):
  +        (-[DOMHTMLAnchorElement setTarget:]):
  +        (-[DOMHTMLAnchorElement type]):
  +        (-[DOMHTMLAnchorElement setType:]):
  +        (-[DOMHTMLImageElement name]):
  +        (-[DOMHTMLImageElement setName:]):
  +        (-[DOMHTMLImageElement align]):
  +        (-[DOMHTMLImageElement setAlign:]):
  +        (-[DOMHTMLImageElement alt]):
  +        (-[DOMHTMLImageElement setAlt:]):
  +        (-[DOMHTMLImageElement border]):
  +        (-[DOMHTMLImageElement setBorder:]):
  +        (-[DOMHTMLImageElement height]):
  +        (-[DOMHTMLImageElement setHeight:]):
  +        (-[DOMHTMLImageElement hspace]):
  +        (-[DOMHTMLImageElement setHspace:]):
  +        (-[DOMHTMLImageElement isMap]):
  +        (-[DOMHTMLImageElement setIsMap:]):
  +        (-[DOMHTMLImageElement longDesc]):
  +        (-[DOMHTMLImageElement setLongDesc:]):
  +        (-[DOMHTMLImageElement setSrc:]):
  +        (-[DOMHTMLImageElement useMap]):
  +        (-[DOMHTMLImageElement setUseMap:]):
  +        (-[DOMHTMLImageElement vspace]):
  +        (-[DOMHTMLImageElement setVspace:]):
  +        (-[DOMHTMLImageElement width]):
  +        (-[DOMHTMLImageElement setWidth:]):
  +        (-[DOMHTMLObjectElement code]):
  +        (-[DOMHTMLObjectElement setCode:]):
  +        (-[DOMHTMLObjectElement align]):
  +        (-[DOMHTMLObjectElement setAlign:]):
  +        (-[DOMHTMLObjectElement archive]):
  +        (-[DOMHTMLObjectElement setArchive:]):
  +        (-[DOMHTMLObjectElement border]):
  +        (-[DOMHTMLObjectElement setBorder:]):
  +        (-[DOMHTMLObjectElement codeBase]):
  +        (-[DOMHTMLObjectElement setCodeBase:]):
  +        (-[DOMHTMLObjectElement codeType]):
  +        (-[DOMHTMLObjectElement setCodeType:]):
  +        (-[DOMHTMLObjectElement data]):
  +        (-[DOMHTMLObjectElement setData:]):
  +        (-[DOMHTMLObjectElement declare]):
  +        (-[DOMHTMLObjectElement setDeclare:]):
  +        (-[DOMHTMLObjectElement height]):
  +        (-[DOMHTMLObjectElement setHeight:]):
  +        (-[DOMHTMLObjectElement hspace]):
  +        (-[DOMHTMLObjectElement setHspace:]):
  +        (-[DOMHTMLObjectElement name]):
  +        (-[DOMHTMLObjectElement setName:]):
  +        (-[DOMHTMLObjectElement standby]):
  +        (-[DOMHTMLObjectElement setStandby:]):
  +        (-[DOMHTMLObjectElement tabIndex]):
  +        (-[DOMHTMLObjectElement setTabIndex:]):
  +        (-[DOMHTMLObjectElement type]):
  +        (-[DOMHTMLObjectElement setType:]):
  +        (-[DOMHTMLObjectElement useMap]):
  +        (-[DOMHTMLObjectElement setUseMap:]):
  +        (-[DOMHTMLObjectElement vspace]):
  +        (-[DOMHTMLObjectElement setVspace:]):
  +        (-[DOMHTMLObjectElement width]):
  +        (-[DOMHTMLObjectElement setWidth:]):
  +        (-[DOMHTMLParamElement name]):
  +        (-[DOMHTMLParamElement setName:]):
  +        (-[DOMHTMLParamElement type]):
  +        (-[DOMHTMLParamElement setType:]):
  +        (-[DOMHTMLParamElement value]):
  +        (-[DOMHTMLParamElement setValue:]):
  +        (-[DOMHTMLParamElement valueType]):
  +        (-[DOMHTMLParamElement setValueType:]):
  +        (-[DOMHTMLAppletElement align]):
  +        (-[DOMHTMLAppletElement setAlign:]):
  +        (-[DOMHTMLAppletElement alt]):
  +        (-[DOMHTMLAppletElement setAlt:]):
  +        (-[DOMHTMLAppletElement archive]):
  +        (-[DOMHTMLAppletElement setArchive:]):
  +        (-[DOMHTMLAppletElement code]):
  +        (-[DOMHTMLAppletElement setCode:]):
  +        (-[DOMHTMLAppletElement codeBase]):
  +        (-[DOMHTMLAppletElement setCodeBase:]):
  +        (-[DOMHTMLAppletElement height]):
  +        (-[DOMHTMLAppletElement setHeight:]):
  +        (-[DOMHTMLAppletElement hspace]):
  +        (-[DOMHTMLAppletElement setHspace:]):
  +        (-[DOMHTMLAppletElement name]):
  +        (-[DOMHTMLAppletElement setName:]):
  +        (-[DOMHTMLAppletElement object]):
  +        (-[DOMHTMLAppletElement setObject:]):
  +        (-[DOMHTMLAppletElement vspace]):
  +        (-[DOMHTMLAppletElement setVspace:]):
  +        (-[DOMHTMLAppletElement width]):
  +        (-[DOMHTMLAppletElement setWidth:]):
  +        (-[DOMHTMLMapElement name]):
  +        (-[DOMHTMLMapElement setName:]):
  +        (-[DOMHTMLAreaElement accessKey]):
  +        (-[DOMHTMLAreaElement setAccessKey:]):
  +        (-[DOMHTMLAreaElement alt]):
  +        (-[DOMHTMLAreaElement setAlt:]):
  +        (-[DOMHTMLAreaElement coords]):
  +        (-[DOMHTMLAreaElement setCoords:]):
  +        (-[DOMHTMLAreaElement setHref:]):
  +        (-[DOMHTMLAreaElement noHref]):
  +        (-[DOMHTMLAreaElement setNoHref:]):
  +        (-[DOMHTMLAreaElement shape]):
  +        (-[DOMHTMLAreaElement setShape:]):
  +        (-[DOMHTMLAreaElement tabIndex]):
  +        (-[DOMHTMLAreaElement setTabIndex:]):
  +        (-[DOMHTMLAreaElement target]):
  +        (-[DOMHTMLAreaElement setTarget:]):
  +        (-[DOMHTMLScriptElement text]):
  +        (-[DOMHTMLScriptElement setText:]):
  +        (-[DOMHTMLScriptElement charset]):
  +        (-[DOMHTMLScriptElement setCharset:]):
  +        (-[DOMHTMLScriptElement defer]):
  +        (-[DOMHTMLScriptElement setDefer:]):
  +        (-[DOMHTMLScriptElement src]):
  +        (-[DOMHTMLScriptElement setSrc:]):
  +        (-[DOMHTMLScriptElement type]):
  +        (-[DOMHTMLScriptElement setType:]):
  +        (-[DOMHTMLTableCaptionElement align]):
  +        (-[DOMHTMLTableCaptionElement setAlign:]):
  +        (-[DOMHTMLTableSectionElement align]):
  +        (-[DOMHTMLTableSectionElement setAlign:]):
  +        (-[DOMHTMLTableSectionElement ch]):
  +        (-[DOMHTMLTableSectionElement setCh:]):
  +        (-[DOMHTMLTableSectionElement chOff]):
  +        (-[DOMHTMLTableSectionElement setChOff:]):
  +        (-[DOMHTMLTableSectionElement vAlign]):
  +        (-[DOMHTMLTableSectionElement setVAlign:]):
  +        (-[DOMHTMLTableElement align]):
  +        (-[DOMHTMLTableElement setAlign:]):
  +        (-[DOMHTMLTableElement bgColor]):
  +        (-[DOMHTMLTableElement setBgColor:]):
  +        (-[DOMHTMLTableElement border]):
  +        (-[DOMHTMLTableElement setBorder:]):
  +        (-[DOMHTMLTableElement cellPadding]):
  +        (-[DOMHTMLTableElement setCellPadding:]):
  +        (-[DOMHTMLTableElement cellSpacing]):
  +        (-[DOMHTMLTableElement setCellSpacing:]):
  +        (-[DOMHTMLTableElement frameBorders]):
  +        (-[DOMHTMLTableElement setFrameBorders:]):
  +        (-[DOMHTMLTableElement rules]):
  +        (-[DOMHTMLTableElement setRules:]):
  +        (-[DOMHTMLTableElement summary]):
  +        (-[DOMHTMLTableElement setSummary:]):
  +        (-[DOMHTMLTableElement width]):
  +        (-[DOMHTMLTableElement setWidth:]):
  +        (-[DOMHTMLTableColElement align]):
  +        (-[DOMHTMLTableColElement setAlign:]):
  +        (-[DOMHTMLTableColElement ch]):
  +        (-[DOMHTMLTableColElement setCh:]):
  +        (-[DOMHTMLTableColElement chOff]):
  +        (-[DOMHTMLTableColElement setChOff:]):
  +        (-[DOMHTMLTableColElement span]):
  +        (-[DOMHTMLTableColElement setSpan:]):
  +        (-[DOMHTMLTableColElement vAlign]):
  +        (-[DOMHTMLTableColElement setVAlign:]):
  +        (-[DOMHTMLTableColElement width]):
  +        (-[DOMHTMLTableColElement setWidth:]):
  +        (-[DOMHTMLTableRowElement align]):
  +        (-[DOMHTMLTableRowElement setAlign:]):
  +        (-[DOMHTMLTableRowElement bgColor]):
  +        (-[DOMHTMLTableRowElement setBgColor:]):
  +        (-[DOMHTMLTableRowElement ch]):
  +        (-[DOMHTMLTableRowElement setCh:]):
  +        (-[DOMHTMLTableRowElement chOff]):
  +        (-[DOMHTMLTableRowElement setChOff:]):
  +        (-[DOMHTMLTableRowElement vAlign]):
  +        (-[DOMHTMLTableRowElement setVAlign:]):
  +        (-[DOMHTMLTableCellElement abbr]):
  +        (-[DOMHTMLTableCellElement setAbbr:]):
  +        (-[DOMHTMLTableCellElement align]):
  +        (-[DOMHTMLTableCellElement setAlign:]):
  +        (-[DOMHTMLTableCellElement axis]):
  +        (-[DOMHTMLTableCellElement setAxis:]):
  +        (-[DOMHTMLTableCellElement bgColor]):
  +        (-[DOMHTMLTableCellElement setBgColor:]):
  +        (-[DOMHTMLTableCellElement ch]):
  +        (-[DOMHTMLTableCellElement setCh:]):
  +        (-[DOMHTMLTableCellElement chOff]):
  +        (-[DOMHTMLTableCellElement setChOff:]):
  +        (-[DOMHTMLTableCellElement colSpan]):
  +        (-[DOMHTMLTableCellElement setColSpan:]):
  +        (-[DOMHTMLTableCellElement headers]):
  +        (-[DOMHTMLTableCellElement setHeaders:]):
  +        (-[DOMHTMLTableCellElement height]):
  +        (-[DOMHTMLTableCellElement setHeight:]):
  +        (-[DOMHTMLTableCellElement noWrap]):
  +        (-[DOMHTMLTableCellElement setNoWrap:]):
  +        (-[DOMHTMLTableCellElement rowSpan]):
  +        (-[DOMHTMLTableCellElement setRowSpan:]):
  +        (-[DOMHTMLTableCellElement scope]):
  +        (-[DOMHTMLTableCellElement setScope:]):
  +        (-[DOMHTMLTableCellElement vAlign]):
  +        (-[DOMHTMLTableCellElement setVAlign:]):
  +        (-[DOMHTMLTableCellElement width]):
  +        (-[DOMHTMLTableCellElement setWidth:]):
  +        (-[DOMHTMLFrameSetElement rows]):
  +        (-[DOMHTMLFrameSetElement setRows:]):
  +        (-[DOMHTMLFrameSetElement cols]):
  +        (-[DOMHTMLFrameSetElement setCols:]):
  +        (-[DOMHTMLFrameElement frameBorder]):
  +        (-[DOMHTMLFrameElement setFrameBorder:]):
  +        (-[DOMHTMLFrameElement longDesc]):
  +        (-[DOMHTMLFrameElement setLongDesc:]):
  +        (-[DOMHTMLFrameElement marginHeight]):
  +        (-[DOMHTMLFrameElement setMarginHeight:]):
  +        (-[DOMHTMLFrameElement marginWidth]):
  +        (-[DOMHTMLFrameElement setMarginWidth:]):
  +        (-[DOMHTMLFrameElement name]):
  +        (-[DOMHTMLFrameElement setName:]):
  +        (-[DOMHTMLFrameElement noResize]):
  +        (-[DOMHTMLFrameElement setNoResize:]):
  +        (-[DOMHTMLFrameElement scrolling]):
  +        (-[DOMHTMLFrameElement setScrolling:]):
  +        (-[DOMHTMLFrameElement src]):
  +        (-[DOMHTMLFrameElement setSrc:]):
  +        (-[DOMHTMLIFrameElement align]):
  +        (-[DOMHTMLIFrameElement setAlign:]):
  +        (-[DOMHTMLIFrameElement frameBorder]):
  +        (-[DOMHTMLIFrameElement setFrameBorder:]):
  +        (-[DOMHTMLIFrameElement height]):
  +        (-[DOMHTMLIFrameElement setHeight:]):
  +        (-[DOMHTMLIFrameElement longDesc]):
  +        (-[DOMHTMLIFrameElement setLongDesc:]):
  +        (-[DOMHTMLIFrameElement marginHeight]):
  +        (-[DOMHTMLIFrameElement setMarginHeight:]):
  +        (-[DOMHTMLIFrameElement marginWidth]):
  +        (-[DOMHTMLIFrameElement setMarginWidth:]):
  +        (-[DOMHTMLIFrameElement name]):
  +        (-[DOMHTMLIFrameElement setName:]):
  +        (-[DOMHTMLIFrameElement noResize]):
  +        (-[DOMHTMLIFrameElement setNoResize:]):
  +        (-[DOMHTMLIFrameElement scrolling]):
  +        (-[DOMHTMLIFrameElement setScrolling:]):
  +        (-[DOMHTMLIFrameElement src]):
  +        (-[DOMHTMLIFrameElement setSrc:]):
  +        (-[DOMHTMLIFrameElement width]):
  +        (-[DOMHTMLIFrameElement setWidth:]):
  +        (-[DOMHTMLEmbedElement align]):
  +        (-[DOMHTMLEmbedElement setAlign:]):
  +        (-[DOMHTMLEmbedElement height]):
  +        (-[DOMHTMLEmbedElement setHeight:]):
  +        (-[DOMHTMLEmbedElement name]):
  +        (-[DOMHTMLEmbedElement setName:]):
  +        (-[DOMHTMLEmbedElement src]):
  +        (-[DOMHTMLEmbedElement setSrc:]):
  +        (-[DOMHTMLEmbedElement type]):
  +        (-[DOMHTMLEmbedElement setType:]):
  +        (-[DOMHTMLEmbedElement width]):
  +        (-[DOMHTMLEmbedElement setWidth:]):
  +        * kwq/KWQAccObject.mm:
  +        (-[KWQAccObject role]):
  +        (-[KWQAccObject helpText]):
  +        (-[KWQAccObject title]):
  +        (-[KWQAccObject accessibilityDescription]):
  +        (-[KWQAccObject accessibilityIsIgnored]):
  +        (-[KWQAccObject accessibilityAttributeValue:]):
  +        * kwq/KWQKHTMLPart.cpp:
  +        (KWQKHTMLPart::isFrameSet):
  +        * kwq/KWQKHTMLPart.mm:
  +        (scanForForm):
  +        (KWQKHTMLPart::currentForm):
  +        (KWQKHTMLPart::searchForLabelsBeforeElement):
  +        (KWQKHTMLPart::matchLabelsAgainstElement):
  +        (KWQKHTMLPart::fileWrapperForElement):
  +        (listParent):
  +        (isTextFirstInListItem):
  +        (KWQKHTMLPart::attributedString):
  +        (KWQKHTMLPart::styleForSelectionStart):
  +        (KWQKHTMLPart::setSelectionFromNone):
  +        * kwq/WebCoreBridge.mm:
  +        (inputElementFromDOMElement):
  +        (formElementFromDOMElement):
  +        (-[WebCoreBridge elementAtPoint:]):
  +
   2005-07-29  David Harrison  <harrison at apple.com>
   
           Test cases added: n/a
  
  
  
  1.39      +61 -61    WebCore/kwq/DOM.mm
  
  Index: DOM.mm
  ===================================================================
  RCS file: /cvs/root/WebCore/kwq/DOM.mm,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- DOM.mm	18 Jul 2005 21:52:35 -0000	1.38
  +++ DOM.mm	30 Jul 2005 02:33:09 -0000	1.39
  @@ -71,7 +71,7 @@
   using DOM::EntityImpl;
   using DOM::FilterNode;
   using DOM::HTMLElementImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   using DOM::NamedNodeMapImpl;
   using DOM::Node;
   using DOM::NodeFilter;
  @@ -404,116 +404,116 @@
                   // FIXME: We could make the HTML classes hand back their class names and then use that to make
                   // the appropriate Obj-C class from the string.
                   HTMLElementImpl* htmlElt = static_cast<HTMLElementImpl*>(impl);
  -                if (htmlElt->hasLocalName(HTMLTags::html()))
  +                if (htmlElt->hasLocalName(htmlTag))
                       wrapperClass = [DOMHTMLHtmlElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::head()))
  +                else if (htmlElt->hasLocalName(headTag))
                       wrapperClass = [DOMHTMLHeadElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::link()))
  +                else if (htmlElt->hasLocalName(linkTag))
                       wrapperClass = [DOMHTMLLinkElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::title()))
  +                else if (htmlElt->hasLocalName(titleTag))
                       wrapperClass = [DOMHTMLTitleElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::meta()))
  +                else if (htmlElt->hasLocalName(metaTag))
                       wrapperClass = [DOMHTMLMetaElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::base()))
  +                else if (htmlElt->hasLocalName(baseTag))
                       wrapperClass = [DOMHTMLBaseElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::isindex()))
  +                else if (htmlElt->hasLocalName(isindexTag))
                       wrapperClass = [DOMHTMLIsIndexElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::style()))
  +                else if (htmlElt->hasLocalName(styleTag))
                       wrapperClass = [DOMHTMLStyleElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::body()))
  +                else if (htmlElt->hasLocalName(bodyTag))
                       wrapperClass = [DOMHTMLBodyElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::form()))
  +                else if (htmlElt->hasLocalName(formTag))
                       wrapperClass = [DOMHTMLFormElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::select()))
  +                else if (htmlElt->hasLocalName(selectTag))
                       wrapperClass = [DOMHTMLSelectElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::optgroup()))
  +                else if (htmlElt->hasLocalName(optgroupTag))
                       wrapperClass = [DOMHTMLOptGroupElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::option()))
  +                else if (htmlElt->hasLocalName(optionTag))
                       wrapperClass = [DOMHTMLOptionElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::input()))
  +                else if (htmlElt->hasLocalName(inputTag))
                       wrapperClass = [DOMHTMLInputElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::textarea()))
  +                else if (htmlElt->hasLocalName(textareaTag))
                       wrapperClass = [DOMHTMLTextAreaElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::button()))
  +                else if (htmlElt->hasLocalName(buttonTag))
                       wrapperClass = [DOMHTMLButtonElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::label()))
  +                else if (htmlElt->hasLocalName(labelTag))
                       wrapperClass = [DOMHTMLLabelElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::fieldset()))
  +                else if (htmlElt->hasLocalName(fieldsetTag))
                       wrapperClass = [DOMHTMLFieldSetElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::legend()))
  +                else if (htmlElt->hasLocalName(legendTag))
                       wrapperClass = [DOMHTMLLegendElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::ul()))
  +                else if (htmlElt->hasLocalName(ulTag))
                       wrapperClass = [DOMHTMLUListElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::ol()))                       
  +                else if (htmlElt->hasLocalName(olTag))                       
                       wrapperClass = [DOMHTMLOListElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::dl()))
  +                else if (htmlElt->hasLocalName(dlTag))
                       wrapperClass = [DOMHTMLDListElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::dir()))
  +                else if (htmlElt->hasLocalName(dirTag))
                       wrapperClass = [DOMHTMLDirectoryElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::menu()))
  +                else if (htmlElt->hasLocalName(menuTag))
                       wrapperClass = [DOMHTMLMenuElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::li()))
  +                else if (htmlElt->hasLocalName(liTag))
                       wrapperClass = [DOMHTMLLIElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::div()))
  +                else if (htmlElt->hasLocalName(divTag))
                       wrapperClass = [DOMHTMLDivElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::p()))
  +                else if (htmlElt->hasLocalName(pTag))
                       wrapperClass = [DOMHTMLParagraphElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::h1()) ||
  -                         htmlElt->hasLocalName(HTMLTags::h2()) ||
  -                         htmlElt->hasLocalName(HTMLTags::h3()) ||
  -                         htmlElt->hasLocalName(HTMLTags::h4()) ||
  -                         htmlElt->hasLocalName(HTMLTags::h5()) ||
  -                         htmlElt->hasLocalName(HTMLTags::h6()))
  +                else if (htmlElt->hasLocalName(h1Tag) ||
  +                         htmlElt->hasLocalName(h2Tag) ||
  +                         htmlElt->hasLocalName(h3Tag) ||
  +                         htmlElt->hasLocalName(h4Tag) ||
  +                         htmlElt->hasLocalName(h5Tag) ||
  +                         htmlElt->hasLocalName(h6Tag))
                       wrapperClass = [DOMHTMLHeadingElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::q()))
  +                else if (htmlElt->hasLocalName(qTag))
                       wrapperClass = [DOMHTMLQuoteElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::pre()))
  +                else if (htmlElt->hasLocalName(preTag))
                       wrapperClass = [DOMHTMLPreElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::br()))
  +                else if (htmlElt->hasLocalName(brTag))
                       wrapperClass = [DOMHTMLBRElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::basefont()))
  +                else if (htmlElt->hasLocalName(basefontTag))
                       wrapperClass = [DOMHTMLBaseFontElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::font()))
  +                else if (htmlElt->hasLocalName(fontTag))
                       wrapperClass = [DOMHTMLFontElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::hr()))
  +                else if (htmlElt->hasLocalName(hrTag))
                       wrapperClass = [DOMHTMLHRElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::a()))
  +                else if (htmlElt->hasLocalName(aTag))
                       wrapperClass = [DOMHTMLAnchorElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::img()) ||
  -                         htmlElt->hasLocalName(HTMLTags::canvas()))
  +                else if (htmlElt->hasLocalName(imgTag) ||
  +                         htmlElt->hasLocalName(canvasTag))
                       wrapperClass = [DOMHTMLImageElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::object()))
  +                else if (htmlElt->hasLocalName(objectTag))
                       wrapperClass = [DOMHTMLObjectElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::param()))
  +                else if (htmlElt->hasLocalName(paramTag))
                       wrapperClass = [DOMHTMLParamElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::applet()))
  +                else if (htmlElt->hasLocalName(appletTag))
                       wrapperClass = [DOMHTMLAppletElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::map()))
  +                else if (htmlElt->hasLocalName(mapTag))
                       wrapperClass = [DOMHTMLMapElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::area()))
  +                else if (htmlElt->hasLocalName(areaTag))
                       wrapperClass = [DOMHTMLAreaElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::script()))
  +                else if (htmlElt->hasLocalName(scriptTag))
                       wrapperClass = [DOMHTMLScriptElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::table()))
  +                else if (htmlElt->hasLocalName(tableTag))
                       wrapperClass = [DOMHTMLTableElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::thead()) ||
  -                         htmlElt->hasLocalName(HTMLTags::tbody()) ||
  -                         htmlElt->hasLocalName(HTMLTags::tfoot()))
  +                else if (htmlElt->hasLocalName(theadTag) ||
  +                         htmlElt->hasLocalName(tbodyTag) ||
  +                         htmlElt->hasLocalName(tfootTag))
                       wrapperClass = [DOMHTMLTableSectionElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::td()))
  +                else if (htmlElt->hasLocalName(tdTag))
                       wrapperClass = [DOMHTMLTableCellElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::tr()))
  +                else if (htmlElt->hasLocalName(trTag))
                       wrapperClass = [DOMHTMLTableRowElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::col()) ||
  -                         htmlElt->hasLocalName(HTMLTags::colgroup()))
  +                else if (htmlElt->hasLocalName(colTag) ||
  +                         htmlElt->hasLocalName(colgroupTag))
                       wrapperClass = [DOMHTMLTableColElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::caption()))
  +                else if (htmlElt->hasLocalName(captionTag))
                       wrapperClass = [DOMHTMLTableCaptionElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::frameset()))
  +                else if (htmlElt->hasLocalName(framesetTag))
                       wrapperClass = [DOMHTMLFrameSetElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::frame()))
  +                else if (htmlElt->hasLocalName(frameTag))
                       wrapperClass = [DOMHTMLFrameElement class];
  -                else if (htmlElt->hasLocalName(HTMLTags::iframe()))
  +                else if (htmlElt->hasLocalName(iframeTag))
                       wrapperClass = [DOMHTMLIFrameElement class];
                   else
                       wrapperClass = [DOMHTMLElement class];
  
  
  
  1.24      +387 -388  WebCore/kwq/DOMHTML.mm
  
  Index: DOMHTML.mm
  ===================================================================
  RCS file: /cvs/root/WebCore/kwq/DOMHTML.mm,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- DOMHTML.mm	29 Jul 2005 21:16:50 -0000	1.23
  +++ DOMHTML.mm	30 Jul 2005 02:33:09 -0000	1.24
  @@ -48,12 +48,11 @@
   #import "KWQAssertions.h"
   #import "KWQFoundationExtras.h"
   
  +using namespace HTMLNames;
   using DOM::Document;
   using DOM::DocumentFragmentImpl;
   using DOM::DOMString;
   using DOM::ElementImpl;
  -using DOM::HTMLAttributes;
  -using DOM::HTMLTags;
   using DOM::HTMLAnchorElementImpl;
   using DOM::HTMLAppletElementImpl;
   using DOM::HTMLAreaElementImpl;
  @@ -293,12 +292,12 @@
   
   - (NSString *)idName
   {
  -    return [self _HTMLElementImpl]->getAttribute(HTMLAttributes::idAttr());
  +    return [self _HTMLElementImpl]->getAttribute(idAttr);
   }
   
   - (void)setIdName:(NSString *)idName
   {
  -    [self _HTMLElementImpl]->setAttribute(HTMLAttributes::idAttr(), idName);
  +    [self _HTMLElementImpl]->setAttribute(idAttr, idName);
   }
   
   - (NSString *)title
  @@ -649,52 +648,52 @@
   
   - (NSString *)media
   {
  -    return [self _linkElementImpl]->getAttribute(HTMLAttributes::media());
  +    return [self _linkElementImpl]->getAttribute(mediaAttr);
   }
   
   - (void)setMedia:(NSString *)media
   {
  -    [self _linkElementImpl]->setAttribute(HTMLAttributes::media(), media);
  +    [self _linkElementImpl]->setAttribute(mediaAttr, media);
   }
   
   - (NSString *)rel
   {
  -    return [self _linkElementImpl]->getAttribute(HTMLAttributes::rel());
  +    return [self _linkElementImpl]->getAttribute(relAttr);
   }
   
   - (void)setRel:(NSString *)rel
   {
  -    [self _linkElementImpl]->setAttribute(HTMLAttributes::rel(), rel);
  +    [self _linkElementImpl]->setAttribute(relAttr, rel);
   }
   
   - (NSString *)rev
   {
  -    return [self _linkElementImpl]->getAttribute(HTMLAttributes::rev());
  +    return [self _linkElementImpl]->getAttribute(revAttr);
   }
   
   - (void)setRev:(NSString *)rev
   {
  -    [self _linkElementImpl]->setAttribute(HTMLAttributes::rev(), rev);
  +    [self _linkElementImpl]->setAttribute(revAttr, rev);
   }
   
   - (NSString *)target
   {
  -    return [self _linkElementImpl]->getAttribute(HTMLAttributes::target());
  +    return [self _linkElementImpl]->getAttribute(targetAttr);
   }
   
   - (void)setTarget:(NSString *)target
   {
  -    [self _linkElementImpl]->setAttribute(HTMLAttributes::target(), target);
  +    [self _linkElementImpl]->setAttribute(targetAttr, target);
   }
   
   - (NSString *)type
   {
  -    return [self _linkElementImpl]->getAttribute(HTMLAttributes::type());
  +    return [self _linkElementImpl]->getAttribute(typeAttr);
   }
   
   - (void)setType:(NSString *)type
   {
  -    [self _linkElementImpl]->setAttribute(HTMLAttributes::type(), type);
  +    [self _linkElementImpl]->setAttribute(typeAttr, type);
   }
   
   @end
  @@ -708,12 +707,12 @@
   
   - (NSString *)text
   {
  -    return [self _titleElementImpl]->getAttribute(HTMLAttributes::text());
  +    return [self _titleElementImpl]->getAttribute(textAttr);
   }
   
   - (void)setText:(NSString *)text
   {
  -    [self _titleElementImpl]->setAttribute(HTMLAttributes::text(), text);
  +    [self _titleElementImpl]->setAttribute(textAttr, text);
   }
   
   @end
  @@ -727,42 +726,42 @@
   
   - (NSString *)content
   {
  -    return [self _metaElementImpl]->getAttribute(HTMLAttributes::content());
  +    return [self _metaElementImpl]->getAttribute(contentAttr);
   }
   
   - (void)setContent:(NSString *)content
   {
  -    [self _metaElementImpl]->setAttribute(HTMLAttributes::content(), content);
  +    [self _metaElementImpl]->setAttribute(contentAttr, content);
   }
   
   - (NSString *)httpEquiv
   {
  -    return [self _metaElementImpl]->getAttribute(HTMLAttributes::http_equiv());
  +    return [self _metaElementImpl]->getAttribute(http_equivAttr);
   }
   
   - (void)setHttpEquiv:(NSString *)httpEquiv
   {
  -    [self _metaElementImpl]->setAttribute(HTMLAttributes::http_equiv(), httpEquiv);
  +    [self _metaElementImpl]->setAttribute(http_equivAttr, httpEquiv);
   }
   
   - (NSString *)name
   {
  -    return [self _metaElementImpl]->getAttribute(HTMLAttributes::name());
  +    return [self _metaElementImpl]->getAttribute(nameAttr);
   }
   
   - (void)setName:(NSString *)name
   {
  -    [self _metaElementImpl]->setAttribute(HTMLAttributes::name(), name);
  +    [self _metaElementImpl]->setAttribute(nameAttr, name);
   }
   
   - (NSString *)scheme
   {
  -    return [self _metaElementImpl]->getAttribute(HTMLAttributes::scheme());
  +    return [self _metaElementImpl]->getAttribute(schemeAttr);
   }
   
   - (void)setScheme:(NSString *)scheme
   {
  -    [self _metaElementImpl]->setAttribute(HTMLAttributes::scheme(), scheme);
  +    [self _metaElementImpl]->setAttribute(schemeAttr, scheme);
   }
   
   @end
  @@ -781,17 +780,17 @@
   
   - (void)setHref:(NSString *)href
   {
  -    [self _baseElementImpl]->setAttribute(HTMLAttributes::href(), href);
  +    [self _baseElementImpl]->setAttribute(hrefAttr, href);
   }
   
   - (NSString *)target
   {
  -    return [self _baseElementImpl]->getAttribute(HTMLAttributes::target());
  +    return [self _baseElementImpl]->getAttribute(targetAttr);
   }
   
   - (void)setTarget:(NSString *)target
   {
  -    [self _baseElementImpl]->setAttribute(HTMLAttributes::scheme(), target);
  +    [self _baseElementImpl]->setAttribute(schemeAttr, target);
   }
   
   @end
  @@ -805,32 +804,32 @@
   
   - (BOOL)disabled
   {
  -    return ![self _styleElementImpl]->getAttribute(HTMLAttributes::disabled()).isNull();
  +    return ![self _styleElementImpl]->getAttribute(disabledAttr).isNull();
   }
   
   - (void)setDisabled:(BOOL)disabled
   {
  -    [self _styleElementImpl]->setAttribute(HTMLAttributes::disabled(), disabled ? "" : 0);
  +    [self _styleElementImpl]->setAttribute(disabledAttr, disabled ? "" : 0);
   }
   
   - (NSString *)media
   {
  -    return [self _styleElementImpl]->getAttribute(HTMLAttributes::media());
  +    return [self _styleElementImpl]->getAttribute(mediaAttr);
   }
   
   - (void)setMedia:(NSString *)media
   {
  -    [self _styleElementImpl]->setAttribute(HTMLAttributes::media(), media);
  +    [self _styleElementImpl]->setAttribute(mediaAttr, media);
   }
   
   - (NSString *)type
   {
  -    return [self _styleElementImpl]->getAttribute(HTMLAttributes::type());
  +    return [self _styleElementImpl]->getAttribute(typeAttr);
   }
   
   - (void)setType:(NSString *)type
   {
  -    [self _styleElementImpl]->setAttribute(HTMLAttributes::type(), type);
  +    [self _styleElementImpl]->setAttribute(typeAttr, type);
   }
   
   @end
  @@ -844,62 +843,62 @@
   
   - (NSString *)aLink
   {
  -    return [self _bodyElementImpl]->getAttribute(HTMLAttributes::alink());
  +    return [self _bodyElementImpl]->getAttribute(alinkAttr);
   }
   
   - (void)setALink:(NSString *)aLink
   {
  -    [self _bodyElementImpl]->setAttribute(HTMLAttributes::alink(), aLink);
  +    [self _bodyElementImpl]->setAttribute(alinkAttr, aLink);
   }
   
   - (NSString *)background
   {
  -    return [self _bodyElementImpl]->getAttribute(HTMLAttributes::background());
  +    return [self _bodyElementImpl]->getAttribute(backgroundAttr);
   }
   
   - (void)setBackground:(NSString *)background
   {
  -    [self _bodyElementImpl]->setAttribute(HTMLAttributes::background(), background);
  +    [self _bodyElementImpl]->setAttribute(backgroundAttr, background);
   }
   
   - (NSString *)bgColor
   {
  -    return [self _bodyElementImpl]->getAttribute(HTMLAttributes::bgcolor());
  +    return [self _bodyElementImpl]->getAttribute(bgcolorAttr);
   }
   
   - (void)setBgColor:(NSString *)bgColor
   {
  -    [self _bodyElementImpl]->setAttribute(HTMLAttributes::bgcolor(), bgColor);
  +    [self _bodyElementImpl]->setAttribute(bgcolorAttr, bgColor);
   }
   
   - (NSString *)link
   {
  -    return [self _bodyElementImpl]->getAttribute(HTMLAttributes::link());
  +    return [self _bodyElementImpl]->getAttribute(linkAttr);
   }
   
   - (void)setLink:(NSString *)link
   {
  -    [self _bodyElementImpl]->setAttribute(HTMLAttributes::link(), link);
  +    [self _bodyElementImpl]->setAttribute(linkAttr, link);
   }
   
   - (NSString *)text
   {
  -    return [self _bodyElementImpl]->getAttribute(HTMLAttributes::text());
  +    return [self _bodyElementImpl]->getAttribute(textAttr);
   }
   
   - (void)setText:(NSString *)text
   {
  -    [self _bodyElementImpl]->setAttribute(HTMLAttributes::text(), text);
  +    [self _bodyElementImpl]->setAttribute(textAttr, text);
   }
   
   - (NSString *)vLink
   {
  -    return [self _bodyElementImpl]->getAttribute(HTMLAttributes::vlink());
  +    return [self _bodyElementImpl]->getAttribute(vlinkAttr);
   }
   
   - (void)setVLink:(NSString *)vLink
   {
  -    [self _bodyElementImpl]->setAttribute(HTMLAttributes::vlink(), vLink);
  +    [self _bodyElementImpl]->setAttribute(vlinkAttr, vLink);
   }
   
   @end
  @@ -924,62 +923,62 @@
   
   - (NSString *)name
   {
  -    return [self _formElementImpl]->getAttribute(HTMLAttributes::name());
  +    return [self _formElementImpl]->getAttribute(nameAttr);
   }
   
   - (void)setName:(NSString *)name
   {
  -    [self _formElementImpl]->setAttribute(HTMLAttributes::name(), name);
  +    [self _formElementImpl]->setAttribute(nameAttr, name);
   }
   
   - (NSString *)acceptCharset
   {
  -    return [self _formElementImpl]->getAttribute(HTMLAttributes::accept_charset());
  +    return [self _formElementImpl]->getAttribute(accept_charsetAttr);
   }
   
   - (void)setAcceptCharset:(NSString *)acceptCharset
   {
  -    [self _formElementImpl]->setAttribute(HTMLAttributes::accept_charset(), acceptCharset);
  +    [self _formElementImpl]->setAttribute(accept_charsetAttr, acceptCharset);
   }
   
   - (NSString *)action
   {
  -    return [self _formElementImpl]->getAttribute(HTMLAttributes::action());
  +    return [self _formElementImpl]->getAttribute(actionAttr);
   }
   
   - (void)setAction:(NSString *)action
   {
  -    [self _formElementImpl]->setAttribute(HTMLAttributes::action(), action);
  +    [self _formElementImpl]->setAttribute(actionAttr, action);
   }
   
   - (NSString *)enctype
   {
  -    return [self _formElementImpl]->getAttribute(HTMLAttributes::enctype());
  +    return [self _formElementImpl]->getAttribute(enctypeAttr);
   }
   
   - (void)setEnctype:(NSString *)enctype
   {
  -    [self _formElementImpl]->setAttribute(HTMLAttributes::enctype(), enctype);
  +    [self _formElementImpl]->setAttribute(enctypeAttr, enctype);
   }
   
   - (NSString *)method
   {
  -    return [self _formElementImpl]->getAttribute(HTMLAttributes::method());
  +    return [self _formElementImpl]->getAttribute(methodAttr);
   }
   
   - (void)setMethod:(NSString *)method
   {
  -    [self _formElementImpl]->setAttribute(HTMLAttributes::method(), method);
  +    [self _formElementImpl]->setAttribute(methodAttr, method);
   }
   
   - (NSString *)target
   {
  -    return [self _formElementImpl]->getAttribute(HTMLAttributes::target());
  +    return [self _formElementImpl]->getAttribute(targetAttr);
   }
   
   - (void)setTarget:(NSString *)target
   {
  -    [self _formElementImpl]->setAttribute(HTMLAttributes::target(), target);
  +    [self _formElementImpl]->setAttribute(targetAttr, target);
   }
   
   - (void)submit
  @@ -1520,33 +1519,33 @@
   
   - (NSString *)accessKey
   {
  -    return [self _textAreaElementImpl]->getAttribute(HTMLAttributes::accesskey());
  +    return [self _textAreaElementImpl]->getAttribute(accesskeyAttr);
   }
   
   - (void)setAccessKey:(NSString *)accessKey
   {
  -    [self _textAreaElementImpl]->setAttribute(HTMLAttributes::accesskey(), accessKey);
  +    [self _textAreaElementImpl]->setAttribute(accesskeyAttr, accessKey);
   }
   
   - (long)cols
   {
  -    return [self _textAreaElementImpl]->getAttribute(HTMLAttributes::cols()).toInt();
  +    return [self _textAreaElementImpl]->getAttribute(colsAttr).toInt();
   }
   
   - (void)setCols:(long)cols
   {
       DOMString value(QString::number(cols));
  -    [self _textAreaElementImpl]->setAttribute(HTMLAttributes::cols(), value);
  +    [self _textAreaElementImpl]->setAttribute(colsAttr, value);
   }
   
   - (BOOL)disabled
   {
  -    return [self _textAreaElementImpl]->getAttribute(HTMLAttributes::disabled()).isNull();
  +    return [self _textAreaElementImpl]->getAttribute(disabledAttr).isNull();
   }
   
   - (void)setDisabled:(BOOL)disabled
   {
  -    [self _textAreaElementImpl]->setAttribute(HTMLAttributes::disabled(), disabled ? "" : 0);
  +    [self _textAreaElementImpl]->setAttribute(disabledAttr, disabled ? "" : 0);
   }
   
   - (NSString *)name
  @@ -1561,23 +1560,23 @@
   
   - (BOOL)readOnly
   {
  -    return [self _textAreaElementImpl]->getAttribute(HTMLAttributes::readonly()).isNull();
  +    return [self _textAreaElementImpl]->getAttribute(readonlyAttr).isNull();
   }
   
   - (void)setReadOnly:(BOOL)readOnly
   {
  -    [self _textAreaElementImpl]->setAttribute(HTMLAttributes::readonly(), readOnly ? "" : 0);
  +    [self _textAreaElementImpl]->setAttribute(readonlyAttr, readOnly ? "" : 0);
   }
   
   - (long)rows
   {
  -    return [self _textAreaElementImpl]->getAttribute(HTMLAttributes::rows()).toInt();
  +    return [self _textAreaElementImpl]->getAttribute(rowsAttr).toInt();
   }
   
   - (void)setRows:(long)rows
   {
   	DOMString value(QString::number(rows));
  -    [self _textAreaElementImpl]->setAttribute(HTMLAttributes::rows(), value);
  +    [self _textAreaElementImpl]->setAttribute(rowsAttr, value);
   }
   
   - (long)tabIndex
  @@ -1641,22 +1640,22 @@
   
   - (NSString *)accessKey
   {
  -    return [self _buttonElementImpl]->getAttribute(HTMLAttributes::accesskey());
  +    return [self _buttonElementImpl]->getAttribute(accesskeyAttr);
   }
   
   - (void)setAccessKey:(NSString *)accessKey
   {
  -    [self _buttonElementImpl]->setAttribute(HTMLAttributes::accesskey(), accessKey);
  +    [self _buttonElementImpl]->setAttribute(accesskeyAttr, accessKey);
   }
   
   - (BOOL)disabled
   {
  -    return [self _buttonElementImpl]->getAttribute(HTMLAttributes::disabled()).isNull();
  +    return [self _buttonElementImpl]->getAttribute(disabledAttr).isNull();
   }
   
   - (void)setDisabled:(BOOL)disabled
   {
  -    [self _buttonElementImpl]->setAttribute(HTMLAttributes::disabled(), disabled ? "" : 0);
  +    [self _buttonElementImpl]->setAttribute(disabledAttr, disabled ? "" : 0);
   }
   
   - (NSString *)name
  @@ -1686,12 +1685,12 @@
   
   - (NSString *)value
   {
  -    return [self _buttonElementImpl]->getAttribute(HTMLAttributes::value());
  +    return [self _buttonElementImpl]->getAttribute(valueAttr);
   }
   
   - (void)setValue:(NSString *)value
   {
  -    [self _buttonElementImpl]->setAttribute(HTMLAttributes::value(), value);
  +    [self _buttonElementImpl]->setAttribute(valueAttr, value);
   }
   
   @end
  @@ -1713,22 +1712,22 @@
   
   - (NSString *)accessKey
   {
  -    return [self _labelElementImpl]->getAttribute(HTMLAttributes::accesskey());
  +    return [self _labelElementImpl]->getAttribute(accesskeyAttr);
   }
   
   - (void)setAccessKey:(NSString *)accessKey
   {
  -    [self _labelElementImpl]->setAttribute(HTMLAttributes::accesskey(), accessKey);
  +    [self _labelElementImpl]->setAttribute(accesskeyAttr, accessKey);
   }
   
   - (NSString *)htmlFor
   {
  -    return [self _labelElementImpl]->getAttribute(HTMLAttributes::forAttr());
  +    return [self _labelElementImpl]->getAttribute(forAttr);
   }
   
   - (void)setHtmlFor:(NSString *)htmlFor
   {
  -    [self _labelElementImpl]->setAttribute(HTMLAttributes::forAttr(), htmlFor);
  +    [self _labelElementImpl]->setAttribute(forAttr, htmlFor);
   }
   
   @end
  @@ -1761,22 +1760,22 @@
   
   - (NSString *)accessKey
   {
  -    return [self _legendElementImpl]->getAttribute(HTMLAttributes::accesskey());
  +    return [self _legendElementImpl]->getAttribute(accesskeyAttr);
   }
   
   - (void)setAccessKey:(NSString *)accessKey
   {
  -    [self _legendElementImpl]->setAttribute(HTMLAttributes::accesskey(), accessKey);
  +    [self _legendElementImpl]->setAttribute(accesskeyAttr, accessKey);
   }
   
   - (NSString *)align
   {
  -    return [self _legendElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _legendElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _legendElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _legendElementImpl]->setAttribute(alignAttr, align);
   }
   
   @end
  @@ -1790,22 +1789,22 @@
   
   - (BOOL)compact
   {
  -    return [self _uListElementImpl]->getAttribute(HTMLAttributes::compact()).isNull();
  +    return [self _uListElementImpl]->getAttribute(compactAttr).isNull();
   }
   
   - (void)setCompact:(BOOL)compact
   {
  -    [self _uListElementImpl]->setAttribute(HTMLAttributes::compact(), compact ? "" : 0);
  +    [self _uListElementImpl]->setAttribute(compactAttr, compact ? "" : 0);
   }
   
   - (NSString *)type
   {
  -    return [self _uListElementImpl]->getAttribute(HTMLAttributes::type());
  +    return [self _uListElementImpl]->getAttribute(typeAttr);
   }
   
   - (void)setType:(NSString *)type
   {
  -    [self _uListElementImpl]->setAttribute(HTMLAttributes::type(), type);
  +    [self _uListElementImpl]->setAttribute(typeAttr, type);
   }
   
   @end
  @@ -1829,23 +1828,23 @@
   
   - (long)start
   {
  -    return [self _oListElementImpl]->getAttribute(HTMLAttributes::start()).toInt();
  +    return [self _oListElementImpl]->getAttribute(startAttr).toInt();
   }
   
   - (void)setStart:(long)start
   {
   	DOMString value(QString::number(start));
  -    [self _oListElementImpl]->setAttribute(HTMLAttributes::start(), value);
  +    [self _oListElementImpl]->setAttribute(startAttr, value);
   }
   
   - (NSString *)type
   {
  -    return [self _oListElementImpl]->getAttribute(HTMLAttributes::type());
  +    return [self _oListElementImpl]->getAttribute(typeAttr);
   }
   
   - (void)setType:(NSString *)type
   {
  -    [self _oListElementImpl]->setAttribute(HTMLAttributes::type(), type);
  +    [self _oListElementImpl]->setAttribute(typeAttr, type);
   }
   
   @end
  @@ -1859,12 +1858,12 @@
   
   - (BOOL)compact
   {
  -    return [self _dListElementImpl]->getAttribute(HTMLAttributes::compact()).isNull();
  +    return [self _dListElementImpl]->getAttribute(compactAttr).isNull();
   }
   
   - (void)setCompact:(BOOL)compact
   {
  -    [self _dListElementImpl]->setAttribute(HTMLAttributes::compact(), compact ? "" : 0);
  +    [self _dListElementImpl]->setAttribute(compactAttr, compact ? "" : 0);
   }
   
   @end
  @@ -1878,12 +1877,12 @@
   
   - (BOOL)compact
   {
  -    return [self _directoryListElementImpl]->getAttribute(HTMLAttributes::compact()).isNull();
  +    return [self _directoryListElementImpl]->getAttribute(compactAttr).isNull();
   }
   
   - (void)setCompact:(BOOL)compact
   {
  -    [self _directoryListElementImpl]->setAttribute(HTMLAttributes::compact(), compact ? "" : 0);
  +    [self _directoryListElementImpl]->setAttribute(compactAttr, compact ? "" : 0);
   }
   
   @end
  @@ -1897,12 +1896,12 @@
   
   - (BOOL)compact
   {
  -    return [self _menuListElementImpl]->getAttribute(HTMLAttributes::compact()).isNull();
  +    return [self _menuListElementImpl]->getAttribute(compactAttr).isNull();
   }
   
   - (void)setCompact:(BOOL)compact
   {
  -    [self _menuListElementImpl]->setAttribute(HTMLAttributes::compact(), compact ? "" : 0);
  +    [self _menuListElementImpl]->setAttribute(compactAttr, compact ? "" : 0);
   }
   
   @end
  @@ -1945,12 +1944,12 @@
   
   - (NSString *)cite
   {
  -    return [self _quoteElementImpl]->getAttribute(HTMLAttributes::cite());
  +    return [self _quoteElementImpl]->getAttribute(citeAttr);
   }
   
   - (void)setCite:(NSString *)cite
   {
  -    [self _quoteElementImpl]->setAttribute(HTMLAttributes::cite(), cite);
  +    [self _quoteElementImpl]->setAttribute(citeAttr, cite);
   }
   
   @end
  @@ -1964,12 +1963,12 @@
   
   - (NSString *)align
   {
  -    return [self _divElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _divElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _divElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _divElementImpl]->setAttribute(alignAttr, align);
   }
   
   @end
  @@ -1983,12 +1982,12 @@
   
   - (NSString *)align
   {
  -    return [self _paragraphElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _paragraphElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _paragraphElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _paragraphElementImpl]->setAttribute(alignAttr, align);
   }
   
   @end
  @@ -2002,12 +2001,12 @@
   
   - (NSString *)align
   {
  -    return [self _headingElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _headingElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _headingElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _headingElementImpl]->setAttribute(alignAttr, align);
   }
   
   @end
  @@ -2021,13 +2020,13 @@
   
   - (long)width
   {
  -    return [self _preElementImpl]->getAttribute(HTMLAttributes::width()).toInt();
  +    return [self _preElementImpl]->getAttribute(widthAttr).toInt();
   }
   
   - (void)setWidth:(long)width
   {
       DOMString string(QString::number(width));
  -    [self _preElementImpl]->setAttribute(HTMLAttributes::width(), string);
  +    [self _preElementImpl]->setAttribute(widthAttr, string);
   }
   
   @end
  @@ -2041,12 +2040,12 @@
   
   - (NSString *)clear
   {
  -    return [self _BRElementImpl]->getAttribute(HTMLAttributes::clear());
  +    return [self _BRElementImpl]->getAttribute(clearAttr);
   }
   
   - (void)setClear:(NSString *)clear
   {
  -    [self _BRElementImpl]->setAttribute(HTMLAttributes::clear(), clear);
  +    [self _BRElementImpl]->setAttribute(clearAttr, clear);
   }
   
   @end
  @@ -2060,32 +2059,32 @@
   
   - (NSString *)color
   {
  -    return [self _baseFontElementImpl]->getAttribute(HTMLAttributes::color());
  +    return [self _baseFontElementImpl]->getAttribute(colorAttr);
   }
   
   - (void)setColor:(NSString *)color
   {
  -    [self _baseFontElementImpl]->setAttribute(HTMLAttributes::color(), color);
  +    [self _baseFontElementImpl]->setAttribute(colorAttr, color);
   }
   
   - (NSString *)face
   {
  -    return [self _baseFontElementImpl]->getAttribute(HTMLAttributes::face());
  +    return [self _baseFontElementImpl]->getAttribute(faceAttr);
   }
   
   - (void)setFace:(NSString *)face
   {
  -    [self _baseFontElementImpl]->setAttribute(HTMLAttributes::face(), face);
  +    [self _baseFontElementImpl]->setAttribute(faceAttr, face);
   }
   
   - (NSString *)size
   {
  -    return [self _baseFontElementImpl]->getAttribute(HTMLAttributes::size());
  +    return [self _baseFontElementImpl]->getAttribute(sizeAttr);
   }
   
   - (void)setSize:(NSString *)size
   {
  -    [self _baseFontElementImpl]->setAttribute(HTMLAttributes::size(), size);
  +    [self _baseFontElementImpl]->setAttribute(sizeAttr, size);
   }
   
   @end
  @@ -2099,32 +2098,32 @@
   
   - (NSString *)color
   {
  -    return [self _fontElementImpl]->getAttribute(HTMLAttributes::color());
  +    return [self _fontElementImpl]->getAttribute(colorAttr);
   }
   
   - (void)setColor:(NSString *)color
   {
  -    [self _fontElementImpl]->setAttribute(HTMLAttributes::color(), color);
  +    [self _fontElementImpl]->setAttribute(colorAttr, color);
   }
   
   - (NSString *)face
   {
  -    return [self _fontElementImpl]->getAttribute(HTMLAttributes::face());
  +    return [self _fontElementImpl]->getAttribute(faceAttr);
   }
   
   - (void)setFace:(NSString *)face
   {
  -    [self _fontElementImpl]->setAttribute(HTMLAttributes::face(), face);
  +    [self _fontElementImpl]->setAttribute(faceAttr, face);
   }
   
   - (NSString *)size
   {
  -    return [self _fontElementImpl]->getAttribute(HTMLAttributes::size());
  +    return [self _fontElementImpl]->getAttribute(sizeAttr);
   }
   
   - (void)setSize:(NSString *)size
   {
  -    [self _fontElementImpl]->setAttribute(HTMLAttributes::size(), size);
  +    [self _fontElementImpl]->setAttribute(sizeAttr, size);
   }
   
   @end
  @@ -2138,42 +2137,42 @@
   
   - (NSString *)align
   {
  -    return [self _HRElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _HRElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _HRElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _HRElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (BOOL)noShade
   {
  -    return [self _HRElementImpl]->getAttribute(HTMLAttributes::noshade()).isNull();
  +    return [self _HRElementImpl]->getAttribute(noshadeAttr).isNull();
   }
   
   - (void)setNoShade:(BOOL)noShade
   {
  -    [self _HRElementImpl]->setAttribute(HTMLAttributes::noshade(), noShade ? "" : 0);
  +    [self _HRElementImpl]->setAttribute(noshadeAttr, noShade ? "" : 0);
   }
   
   - (NSString *)size
   {
  -    return [self _HRElementImpl]->getAttribute(HTMLAttributes::size());
  +    return [self _HRElementImpl]->getAttribute(sizeAttr);
   }
   
   - (void)setSize:(NSString *)size
   {
  -    [self _HRElementImpl]->setAttribute(HTMLAttributes::size(), size);
  +    [self _HRElementImpl]->setAttribute(sizeAttr, size);
   }
   
   - (NSString *)width
   {
  -    return [self _HRElementImpl]->getAttribute(HTMLAttributes::width());
  +    return [self _HRElementImpl]->getAttribute(widthAttr);
   }
   
   - (void)setWidth:(NSString *)width
   {
  -    [self _HRElementImpl]->setAttribute(HTMLAttributes::width(), width);
  +    [self _HRElementImpl]->setAttribute(widthAttr, width);
   }
   
   @end
  @@ -2187,22 +2186,22 @@
   
   - (NSString *)cite
   {
  -    return [self _modElementImpl]->getAttribute(HTMLAttributes::cite());
  +    return [self _modElementImpl]->getAttribute(citeAttr);
   }
   
   - (void)setCite:(NSString *)cite
   {
  -    [self _modElementImpl]->setAttribute(HTMLAttributes::cite(), cite);
  +    [self _modElementImpl]->setAttribute(citeAttr, cite);
   }
   
   - (NSString *)dateTime
   {
  -    return [self _modElementImpl]->getAttribute(HTMLAttributes::datetime());
  +    return [self _modElementImpl]->getAttribute(datetimeAttr);
   }
   
   - (void)setDateTime:(NSString *)dateTime
   {
  -    [self _modElementImpl]->setAttribute(HTMLAttributes::datetime(), dateTime);
  +    [self _modElementImpl]->setAttribute(datetimeAttr, dateTime);
   }
   
   @end
  @@ -2216,32 +2215,32 @@
   
   - (NSString *)accessKey
   {
  -    return [self _anchorElementImpl]->getAttribute(HTMLAttributes::accesskey());
  +    return [self _anchorElementImpl]->getAttribute(accesskeyAttr);
   }
   
   - (void)setAccessKey:(NSString *)accessKey
   {
  -    [self _anchorElementImpl]->setAttribute(HTMLAttributes::accesskey(), accessKey);
  +    [self _anchorElementImpl]->setAttribute(accesskeyAttr, accessKey);
   }
   
   - (NSString *)charset
   {
  -    return [self _anchorElementImpl]->getAttribute(HTMLAttributes::charset());
  +    return [self _anchorElementImpl]->getAttribute(charsetAttr);
   }
   
   - (void)setCharset:(NSString *)charset
   {
  -    [self _anchorElementImpl]->setAttribute(HTMLAttributes::charset(), charset);
  +    [self _anchorElementImpl]->setAttribute(charsetAttr, charset);
   }
   
   - (NSString *)coords
   {
  -    return [self _anchorElementImpl]->getAttribute(HTMLAttributes::coords());
  +    return [self _anchorElementImpl]->getAttribute(coordsAttr);
   }
   
   - (void)setCoords:(NSString *)coords
   {
  -    [self _anchorElementImpl]->setAttribute(HTMLAttributes::coords(), coords);
  +    [self _anchorElementImpl]->setAttribute(coordsAttr, coords);
   }
   
   - (NSString *)href
  @@ -2251,7 +2250,7 @@
   
   - (void)setHref:(NSString *)href
   {
  -    [self _anchorElementImpl]->setAttribute(HTMLAttributes::href(), href);
  +    [self _anchorElementImpl]->setAttribute(hrefAttr, href);
   }
   
   - (NSString *)hreflang
  @@ -2316,22 +2315,22 @@
   
   - (NSString *)target
   {
  -    return [self _anchorElementImpl]->getAttribute(HTMLAttributes::target());
  +    return [self _anchorElementImpl]->getAttribute(targetAttr);
   }
   
   - (void)setTarget:(NSString *)target
   {
  -    [self _anchorElementImpl]->setAttribute(HTMLAttributes::target(), target);
  +    [self _anchorElementImpl]->setAttribute(targetAttr, target);
   }
   
   - (NSString *)type
   {
  -    return [self _anchorElementImpl]->getAttribute(HTMLAttributes::type());
  +    return [self _anchorElementImpl]->getAttribute(typeAttr);
   }
   
   - (void)setType:(NSString *)type
   {
  -    [self _anchorElementImpl]->setAttribute(HTMLAttributes::type(), type);
  +    [self _anchorElementImpl]->setAttribute(typeAttr, type);
   }
   
   - (void)blur
  @@ -2358,84 +2357,84 @@
   
   - (NSString *)name
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::name());
  +    return [self _imageElementImpl]->getAttribute(nameAttr);
   }
   
   - (void)setName:(NSString *)name
   {
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::name(), name);
  +    [self _imageElementImpl]->setAttribute(nameAttr, name);
   }
   
   - (NSString *)align
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _imageElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _imageElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (NSString *)alt
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::alt());
  +    return [self _imageElementImpl]->getAttribute(altAttr);
   }
   
   - (void)setAlt:(NSString *)alt
   {
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::alt(), alt);
  +    [self _imageElementImpl]->setAttribute(altAttr, alt);
   }
   
   - (NSString *)border
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::border());
  +    return [self _imageElementImpl]->getAttribute(borderAttr);
   }
   
   - (void)setBorder:(NSString *)border
   {
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::border(), border);
  +    [self _imageElementImpl]->setAttribute(borderAttr, border);
   }
   
   - (long)height
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::height()).toInt();
  +    return [self _imageElementImpl]->getAttribute(heightAttr).toInt();
   }
   
   - (void)setHeight:(long)height
   {
       DOMString string(QString::number(height));
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::height(), string);
  +    [self _imageElementImpl]->setAttribute(heightAttr, string);
   }
   
   - (long)hspace
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::hspace()).toInt();
  +    return [self _imageElementImpl]->getAttribute(hspaceAttr).toInt();
   }
   
   - (void)setHspace:(long)hspace
   {
       DOMString string(QString::number(hspace));
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::hspace(), string);
  +    [self _imageElementImpl]->setAttribute(hspaceAttr, string);
   }
   
   - (BOOL)isMap
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::ismap()).isNull();
  +    return [self _imageElementImpl]->getAttribute(ismapAttr).isNull();
   }
   
   - (void)setIsMap:(BOOL)isMap
   {
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::ismap(), isMap ? "" : 0);
  +    [self _imageElementImpl]->setAttribute(ismapAttr, isMap ? "" : 0);
   }
   
   - (NSString *)longDesc
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::longdesc());
  +    return [self _imageElementImpl]->getAttribute(longdescAttr);
   }
   
   - (void)setLongDesc:(NSString *)longDesc
   {
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::longdesc(), longDesc);
  +    [self _imageElementImpl]->setAttribute(longdescAttr, longDesc);
   }
   
   - (NSString *)src
  @@ -2445,39 +2444,39 @@
   
   - (void)setSrc:(NSString *)src
   {
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::src(), src);
  +    [self _imageElementImpl]->setAttribute(srcAttr, src);
   }
   
   - (NSString *)useMap
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::usemap());
  +    return [self _imageElementImpl]->getAttribute(usemapAttr);
   }
   
   - (void)setUseMap:(NSString *)useMap
   {
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::usemap(), useMap);
  +    [self _imageElementImpl]->setAttribute(usemapAttr, useMap);
   }
   
   - (long)vspace
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::vspace()).toInt();
  +    return [self _imageElementImpl]->getAttribute(vspaceAttr).toInt();
   }
   
   - (void)setVspace:(long)vspace
   {
       DOMString string(QString::number(vspace));
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::vspace(), string);
  +    [self _imageElementImpl]->setAttribute(vspaceAttr, string);
   }
   
   - (long)width
   {
  -    return [self _imageElementImpl]->getAttribute(HTMLAttributes::width()).toInt();
  +    return [self _imageElementImpl]->getAttribute(widthAttr).toInt();
   }
   
   - (void)setWidth:(long)width
   {
       DOMString string(QString::number(width));
  -    [self _imageElementImpl]->setAttribute(HTMLAttributes::width(), string);
  +    [self _imageElementImpl]->setAttribute(widthAttr, string);
   }
   
   @end
  @@ -2496,175 +2495,175 @@
   
   - (NSString *)code
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::code());
  +    return [self _objectElementImpl]->getAttribute(codeAttr);
   }
   
   - (void)setCode:(NSString *)code
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::code(), code);
  +    [self _objectElementImpl]->setAttribute(codeAttr, code);
   }
   
   - (NSString *)align
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _objectElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _objectElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (NSString *)archive
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::archive());
  +    return [self _objectElementImpl]->getAttribute(archiveAttr);
   }
   
   - (void)setArchive:(NSString *)archive
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::archive(), archive);
  +    [self _objectElementImpl]->setAttribute(archiveAttr, archive);
   }
   
   - (NSString *)border
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::border());
  +    return [self _objectElementImpl]->getAttribute(borderAttr);
   }
   
   - (void)setBorder:(NSString *)border
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::border(), border);
  +    [self _objectElementImpl]->setAttribute(borderAttr, border);
   }
   
   - (NSString *)codeBase
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::codebase());
  +    return [self _objectElementImpl]->getAttribute(codebaseAttr);
   }
   
   - (void)setCodeBase:(NSString *)codeBase
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::codebase(), codeBase);
  +    [self _objectElementImpl]->setAttribute(codebaseAttr, codeBase);
   }
   
   - (NSString *)codeType
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::codetype());
  +    return [self _objectElementImpl]->getAttribute(codetypeAttr);
   }
   
   - (void)setCodeType:(NSString *)codeType
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::codetype(), codeType);
  +    [self _objectElementImpl]->setAttribute(codetypeAttr, codeType);
   }
   
   - (NSString *)data
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::data());
  +    return [self _objectElementImpl]->getAttribute(dataAttr);
   }
   
   - (void)setData:(NSString *)data
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::data(), data);
  +    [self _objectElementImpl]->setAttribute(dataAttr, data);
   }
   
   - (BOOL)declare
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::declare()).isNull();
  +    return [self _objectElementImpl]->getAttribute(declareAttr).isNull();
   }
   
   - (void)setDeclare:(BOOL)declare
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::declare(), declare ? "" : 0);
  +    [self _objectElementImpl]->setAttribute(declareAttr, declare ? "" : 0);
   }
   
   - (NSString *)height
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::height());
  +    return [self _objectElementImpl]->getAttribute(heightAttr);
   }
   
   - (void)setHeight:(NSString *)height
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::height(), height);
  +    [self _objectElementImpl]->setAttribute(heightAttr, height);
   }
   
   - (long)hspace
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::hspace()).toInt();
  +    return [self _objectElementImpl]->getAttribute(hspaceAttr).toInt();
   }
   
   - (void)setHspace:(long)hspace
   {
       DOMString string(QString::number(hspace));
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::hspace(), string);
  +    [self _objectElementImpl]->setAttribute(hspaceAttr, string);
   }
   
   - (NSString *)name
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::name());
  +    return [self _objectElementImpl]->getAttribute(nameAttr);
   }
   
   - (void)setName:(NSString *)name
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::name(), name);
  +    [self _objectElementImpl]->setAttribute(nameAttr, name);
   }
   
   - (NSString *)standby
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::standby());
  +    return [self _objectElementImpl]->getAttribute(standbyAttr);
   }
   
   - (void)setStandby:(NSString *)standby
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::standby(), standby);
  +    [self _objectElementImpl]->setAttribute(standbyAttr, standby);
   }
   
   - (long)tabIndex
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::tabindex()).toInt();
  +    return [self _objectElementImpl]->getAttribute(tabindexAttr).toInt();
   }
   
   - (void)setTabIndex:(long)tabIndex
   {
       DOMString string(QString::number(tabIndex));
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::tabindex(), string);
  +    [self _objectElementImpl]->setAttribute(tabindexAttr, string);
   }
   
   - (NSString *)type
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::type());
  +    return [self _objectElementImpl]->getAttribute(typeAttr);
   }
   
   - (void)setType:(NSString *)type
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::type(), type);
  +    [self _objectElementImpl]->setAttribute(typeAttr, type);
   }
   
   - (NSString *)useMap
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::usemap());
  +    return [self _objectElementImpl]->getAttribute(usemapAttr);
   }
   
   - (void)setUseMap:(NSString *)useMap
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::usemap(), useMap);
  +    [self _objectElementImpl]->setAttribute(usemapAttr, useMap);
   }
   
   - (long)vspace
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::vspace()).toInt();
  +    return [self _objectElementImpl]->getAttribute(vspaceAttr).toInt();
   }
   
   - (void)setVspace:(long)vspace
   {
       DOMString string(QString::number(vspace));
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::vspace(), string);
  +    [self _objectElementImpl]->setAttribute(vspaceAttr, string);
   }
   
   - (NSString *)width
   {
  -    return [self _objectElementImpl]->getAttribute(HTMLAttributes::width());
  +    return [self _objectElementImpl]->getAttribute(widthAttr);
   }
   
   - (void)setWidth:(NSString *)width
   {
  -    [self _objectElementImpl]->setAttribute(HTMLAttributes::width(), width);
  +    [self _objectElementImpl]->setAttribute(widthAttr, width);
   }
   
   - (DOMDocument *)contentDocument
  @@ -2683,42 +2682,42 @@
   
   - (NSString *)name
   {
  -    return [self _paramElementImpl]->getAttribute(HTMLAttributes::name());
  +    return [self _paramElementImpl]->getAttribute(nameAttr);
   }
   
   - (void)setName:(NSString *)name
   {
  -    [self _paramElementImpl]->setAttribute(HTMLAttributes::name(), name);
  +    [self _paramElementImpl]->setAttribute(nameAttr, name);
   }
   
   - (NSString *)type
   {
  -    return [self _paramElementImpl]->getAttribute(HTMLAttributes::type());
  +    return [self _paramElementImpl]->getAttribute(typeAttr);
   }
   
   - (void)setType:(NSString *)type
   {
  -    [self _paramElementImpl]->setAttribute(HTMLAttributes::type(), type);
  +    [self _paramElementImpl]->setAttribute(typeAttr, type);
   }
   
   - (NSString *)value
   {
  -    return [self _paramElementImpl]->getAttribute(HTMLAttributes::value());
  +    return [self _paramElementImpl]->getAttribute(valueAttr);
   }
   
   - (void)setValue:(NSString *)value
   {
  -    [self _paramElementImpl]->setAttribute(HTMLAttributes::value(), value);
  +    [self _paramElementImpl]->setAttribute(valueAttr, value);
   }
   
   - (NSString *)valueType
   {
  -    return [self _paramElementImpl]->getAttribute(HTMLAttributes::valuetype());
  +    return [self _paramElementImpl]->getAttribute(valuetypeAttr);
   }
   
   - (void)setValueType:(NSString *)valueType
   {
  -    [self _paramElementImpl]->setAttribute(HTMLAttributes::valuetype(), valueType);
  +    [self _paramElementImpl]->setAttribute(valuetypeAttr, valueType);
   }
   
   @end
  @@ -2732,114 +2731,114 @@
   
   - (NSString *)align
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _appletElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _appletElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (NSString *)alt
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::alt());
  +    return [self _appletElementImpl]->getAttribute(altAttr);
   }
   
   - (void)setAlt:(NSString *)alt
   {
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::alt(), alt);
  +    [self _appletElementImpl]->setAttribute(altAttr, alt);
   }
   
   - (NSString *)archive
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::archive());
  +    return [self _appletElementImpl]->getAttribute(archiveAttr);
   }
   
   - (void)setArchive:(NSString *)archive
   {
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::archive(), archive);
  +    [self _appletElementImpl]->setAttribute(archiveAttr, archive);
   }
   
   - (NSString *)code
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::code());
  +    return [self _appletElementImpl]->getAttribute(codeAttr);
   }
   
   - (void)setCode:(NSString *)code
   {
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::code(), code);
  +    [self _appletElementImpl]->setAttribute(codeAttr, code);
   }
   
   - (NSString *)codeBase
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::codebase());
  +    return [self _appletElementImpl]->getAttribute(codebaseAttr);
   }
   
   - (void)setCodeBase:(NSString *)codeBase
   {
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::codebase(), codeBase);
  +    [self _appletElementImpl]->setAttribute(codebaseAttr, codeBase);
   }
   
   - (NSString *)height
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::height());
  +    return [self _appletElementImpl]->getAttribute(heightAttr);
   }
   
   - (void)setHeight:(NSString *)height
   {
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::height(), height);
  +    [self _appletElementImpl]->setAttribute(heightAttr, height);
   }
   
   - (long)hspace
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::hspace()).toInt();
  +    return [self _appletElementImpl]->getAttribute(hspaceAttr).toInt();
   }
   
   - (void)setHspace:(long)hspace
   {
       DOMString string(QString::number(hspace));
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::hspace(), string);
  +    [self _appletElementImpl]->setAttribute(hspaceAttr, string);
   }
   
   - (NSString *)name
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::name());
  +    return [self _appletElementImpl]->getAttribute(nameAttr);
   }
   
   - (void)setName:(NSString *)name
   {
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::name(), name);
  +    [self _appletElementImpl]->setAttribute(nameAttr, name);
   }
   
   - (NSString *)object
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::object());
  +    return [self _appletElementImpl]->getAttribute(objectAttr);
   }
   
   - (void)setObject:(NSString *)object
   {
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::object(), object);
  +    [self _appletElementImpl]->setAttribute(objectAttr, object);
   }
   
   - (long)vspace
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::vspace()).toInt();
  +    return [self _appletElementImpl]->getAttribute(vspaceAttr).toInt();
   }
   
   - (void)setVspace:(long)vspace
   {
       DOMString string(QString::number(vspace));
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::vspace(), string);
  +    [self _appletElementImpl]->setAttribute(vspaceAttr, string);
   }
   
   - (NSString *)width
   {
  -    return [self _appletElementImpl]->getAttribute(HTMLAttributes::width());
  +    return [self _appletElementImpl]->getAttribute(widthAttr);
   }
   
   - (void)setWidth:(NSString *)width
   {
  -    [self _appletElementImpl]->setAttribute(HTMLAttributes::width(), width);
  +    [self _appletElementImpl]->setAttribute(widthAttr, width);
   }
   
   @end
  @@ -2859,12 +2858,12 @@
   
   - (NSString *)name
   {
  -    return [self _mapElementImpl]->getAttribute(HTMLAttributes::name());
  +    return [self _mapElementImpl]->getAttribute(nameAttr);
   }
   
   - (void)setName:(NSString *)name
   {
  -    [self _mapElementImpl]->setAttribute(HTMLAttributes::name(), name);
  +    [self _mapElementImpl]->setAttribute(nameAttr, name);
   }
   
   @end
  @@ -2878,32 +2877,32 @@
   
   - (NSString *)accessKey
   {
  -    return [self _areaElementImpl]->getAttribute(HTMLAttributes::accesskey());
  +    return [self _areaElementImpl]->getAttribute(accesskeyAttr);
   }
   
   - (void)setAccessKey:(NSString *)accessKey
   {
  -    [self _areaElementImpl]->setAttribute(HTMLAttributes::accesskey(), accessKey);
  +    [self _areaElementImpl]->setAttribute(accesskeyAttr, accessKey);
   }
   
   - (NSString *)alt
   {
  -    return [self _areaElementImpl]->getAttribute(HTMLAttributes::alt());
  +    return [self _areaElementImpl]->getAttribute(altAttr);
   }
   
   - (void)setAlt:(NSString *)alt
   {
  -    [self _areaElementImpl]->setAttribute(HTMLAttributes::alt(), alt);
  +    [self _areaElementImpl]->setAttribute(altAttr, alt);
   }
   
   - (NSString *)coords
   {
  -    return [self _areaElementImpl]->getAttribute(HTMLAttributes::coords());
  +    return [self _areaElementImpl]->getAttribute(coordsAttr);
   }
   
   - (void)setCoords:(NSString *)coords
   {
  -    [self _areaElementImpl]->setAttribute(HTMLAttributes::coords(), coords);
  +    [self _areaElementImpl]->setAttribute(coordsAttr, coords);
   }
   
   - (NSString *)href
  @@ -2913,48 +2912,48 @@
   
   - (void)setHref:(NSString *)href
   {
  -    [self _areaElementImpl]->setAttribute(HTMLAttributes::href(), href);
  +    [self _areaElementImpl]->setAttribute(hrefAttr, href);
   }
   
   - (BOOL)noHref
   {
  -    return [self _areaElementImpl]->getAttribute(HTMLAttributes::nohref()).isNull();
  +    return [self _areaElementImpl]->getAttribute(nohrefAttr).isNull();
   }
   
   - (void)setNoHref:(BOOL)noHref
   {
  -    [self _areaElementImpl]->setAttribute(HTMLAttributes::nohref(), noHref ? "" : 0);
  +    [self _areaElementImpl]->setAttribute(nohrefAttr, noHref ? "" : 0);
   }
   
   - (NSString *)shape
   {
  -    return [self _areaElementImpl]->getAttribute(HTMLAttributes::shape());
  +    return [self _areaElementImpl]->getAttribute(shapeAttr);
   }
   
   - (void)setShape:(NSString *)shape
   {
  -    [self _areaElementImpl]->setAttribute(HTMLAttributes::shape(), shape);
  +    [self _areaElementImpl]->setAttribute(shapeAttr, shape);
   }
   
   - (long)tabIndex
   {
  -    return [self _areaElementImpl]->getAttribute(HTMLAttributes::tabindex()).toInt();
  +    return [self _areaElementImpl]->getAttribute(tabindexAttr).toInt();
   }
   
   - (void)setTabIndex:(long)tabIndex
   {
       DOMString string(QString::number(tabIndex));
  -    [self _areaElementImpl]->setAttribute(HTMLAttributes::tabindex(), string);
  +    [self _areaElementImpl]->setAttribute(tabindexAttr, string);
   }
   
   - (NSString *)target
   {
  -    return [self _areaElementImpl]->getAttribute(HTMLAttributes::target());
  +    return [self _areaElementImpl]->getAttribute(targetAttr);
   }
   
   - (void)setTarget:(NSString *)target
   {
  -    [self _areaElementImpl]->setAttribute(HTMLAttributes::target(), target);
  +    [self _areaElementImpl]->setAttribute(targetAttr, target);
   }
   
   @end
  @@ -2968,12 +2967,12 @@
   
   - (NSString *)text
   {
  -    return [self _scriptElementImpl]->getAttribute(HTMLAttributes::text());
  +    return [self _scriptElementImpl]->getAttribute(textAttr);
   }
   
   - (void)setText:(NSString *)text
   {
  -    [self _scriptElementImpl]->setAttribute(HTMLAttributes::text(), text);
  +    [self _scriptElementImpl]->setAttribute(textAttr, text);
   }
   
   - (NSString *)htmlFor
  @@ -3000,42 +2999,42 @@
   
   - (NSString *)charset
   {
  -    return [self _scriptElementImpl]->getAttribute(HTMLAttributes::charset());
  +    return [self _scriptElementImpl]->getAttribute(charsetAttr);
   }
   
   - (void)setCharset:(NSString *)charset
   {
  -    [self _scriptElementImpl]->setAttribute(HTMLAttributes::charset(), charset);
  +    [self _scriptElementImpl]->setAttribute(charsetAttr, charset);
   }
   
   - (BOOL)defer
   {
  -    return [self _scriptElementImpl]->getAttribute(HTMLAttributes::defer()).isNull();
  +    return [self _scriptElementImpl]->getAttribute(deferAttr).isNull();
   }
   
   - (void)setDefer:(BOOL)defer
   {
  -    [self _scriptElementImpl]->setAttribute(HTMLAttributes::defer(), defer ? "" : 0);
  +    [self _scriptElementImpl]->setAttribute(deferAttr, defer ? "" : 0);
   }
   
   - (NSString *)src
   {
  -    return [self _scriptElementImpl]->getAttribute(HTMLAttributes::src());
  +    return [self _scriptElementImpl]->getAttribute(srcAttr);
   }
   
   - (void)setSrc:(NSString *)src
   {
  -    [self _scriptElementImpl]->setAttribute(HTMLAttributes::src(), src);
  +    [self _scriptElementImpl]->setAttribute(srcAttr, src);
   }
   
   - (NSString *)type
   {
  -    return [self _scriptElementImpl]->getAttribute(HTMLAttributes::type());
  +    return [self _scriptElementImpl]->getAttribute(typeAttr);
   }
   
   - (void)setType:(NSString *)type
   {
  -    [self _scriptElementImpl]->setAttribute(HTMLAttributes::type(), type);
  +    [self _scriptElementImpl]->setAttribute(typeAttr, type);
   }
   
   @end
  @@ -3044,12 +3043,12 @@
   
   - (NSString *)align
   {
  -    return [self _tableCaptionElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _tableCaptionElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _tableCaptionElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _tableCaptionElementImpl]->setAttribute(alignAttr, align);
   }
   
   @end
  @@ -3072,42 +3071,42 @@
   
   - (NSString *)align
   {
  -    return [self _tableSectionElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _tableSectionElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _tableSectionElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _tableSectionElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (NSString *)ch
   {
  -    return [self _tableSectionElementImpl]->getAttribute(HTMLAttributes::charoff());
  +    return [self _tableSectionElementImpl]->getAttribute(charoffAttr);
   }
   
   - (void)setCh:(NSString *)ch
   {
  -    [self _tableSectionElementImpl]->setAttribute(HTMLAttributes::charoff(), ch);
  +    [self _tableSectionElementImpl]->setAttribute(charoffAttr, ch);
   }
   
   - (NSString *)chOff
   {
  -    return [self _tableSectionElementImpl]->getAttribute(HTMLAttributes::charoff());
  +    return [self _tableSectionElementImpl]->getAttribute(charoffAttr);
   }
   
   - (void)setChOff:(NSString *)chOff
   {
  -    [self _tableSectionElementImpl]->setAttribute(HTMLAttributes::charoff(), chOff);
  +    [self _tableSectionElementImpl]->setAttribute(charoffAttr, chOff);
   }
   
   - (NSString *)vAlign
   {
  -    return [self _tableSectionElementImpl]->getAttribute(HTMLAttributes::valign());
  +    return [self _tableSectionElementImpl]->getAttribute(valignAttr);
   }
   
   - (void)setVAlign:(NSString *)vAlign
   {
  -    [self _tableSectionElementImpl]->setAttribute(HTMLAttributes::valign(), vAlign);
  +    [self _tableSectionElementImpl]->setAttribute(valignAttr, vAlign);
   }
   
   - (DOMHTMLCollection *)rows
  @@ -3193,92 +3192,92 @@
   
   - (NSString *)align
   {
  -    return [self _tableElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _tableElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _tableElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _tableElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (NSString *)bgColor
   {
  -    return [self _tableElementImpl]->getAttribute(HTMLAttributes::bgcolor());
  +    return [self _tableElementImpl]->getAttribute(bgcolorAttr);
   }
   
   - (void)setBgColor:(NSString *)bgColor
   {
  -    [self _tableElementImpl]->setAttribute(HTMLAttributes::bgcolor(), bgColor);
  +    [self _tableElementImpl]->setAttribute(bgcolorAttr, bgColor);
   }
   
   - (NSString *)border
   {
  -    return [self _tableElementImpl]->getAttribute(HTMLAttributes::border());
  +    return [self _tableElementImpl]->getAttribute(borderAttr);
   }
   
   - (void)setBorder:(NSString *)border
   {
  -    [self _tableElementImpl]->setAttribute(HTMLAttributes::border(), border);
  +    [self _tableElementImpl]->setAttribute(borderAttr, border);
   }
   
   - (NSString *)cellPadding
   {
  -    return [self _tableElementImpl]->getAttribute(HTMLAttributes::cellpadding());
  +    return [self _tableElementImpl]->getAttribute(cellpaddingAttr);
   }
   
   - (void)setCellPadding:(NSString *)cellPadding
   {
  -    [self _tableElementImpl]->setAttribute(HTMLAttributes::cellpadding(), cellPadding);
  +    [self _tableElementImpl]->setAttribute(cellpaddingAttr, cellPadding);
   }
   
   - (NSString *)cellSpacing
   {
  -    return [self _tableElementImpl]->getAttribute(HTMLAttributes::cellspacing());
  +    return [self _tableElementImpl]->getAttribute(cellspacingAttr);
   }
   
   - (void)setCellSpacing:(NSString *)cellSpacing
   {
  -    [self _tableElementImpl]->setAttribute(HTMLAttributes::cellspacing(), cellSpacing);
  +    [self _tableElementImpl]->setAttribute(cellspacingAttr, cellSpacing);
   }
   
   - (NSString *)frameBorders
   {
  -    return [self _tableElementImpl]->getAttribute(HTMLAttributes::frame());
  +    return [self _tableElementImpl]->getAttribute(frameAttr);
   }
   
   - (void)setFrameBorders:(NSString *)frameBorders
   {
  -    [self _tableElementImpl]->setAttribute(HTMLAttributes::frame(), frameBorders);
  +    [self _tableElementImpl]->setAttribute(frameAttr, frameBorders);
   }
   
   - (NSString *)rules
   {
  -    return [self _tableElementImpl]->getAttribute(HTMLAttributes::rules());
  +    return [self _tableElementImpl]->getAttribute(rulesAttr);
   }
   
   - (void)setRules:(NSString *)rules
   {
  -    [self _tableElementImpl]->setAttribute(HTMLAttributes::rules(), rules);
  +    [self _tableElementImpl]->setAttribute(rulesAttr, rules);
   }
   
   - (NSString *)summary
   {
  -    return [self _tableElementImpl]->getAttribute(HTMLAttributes::summary());
  +    return [self _tableElementImpl]->getAttribute(summaryAttr);
   }
   
   - (void)setSummary:(NSString *)summary
   {
  -    [self _tableElementImpl]->setAttribute(HTMLAttributes::summary(), summary);
  +    [self _tableElementImpl]->setAttribute(summaryAttr, summary);
   }
   
   - (NSString *)width
   {
  -    return [self _tableElementImpl]->getAttribute(HTMLAttributes::width());
  +    return [self _tableElementImpl]->getAttribute(widthAttr);
   }
   
   - (void)setWidth:(NSString *)width
   {
  -    [self _tableElementImpl]->setAttribute(HTMLAttributes::width(), width);
  +    [self _tableElementImpl]->setAttribute(widthAttr, width);
   }
   
   - (DOMHTMLElement *)createTHead
  @@ -3354,63 +3353,63 @@
   
   - (NSString *)align
   {
  -    return [self _tableColElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _tableColElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _tableColElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _tableColElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (NSString *)ch
   {
  -    return [self _tableColElementImpl]->getAttribute(HTMLAttributes::charoff());
  +    return [self _tableColElementImpl]->getAttribute(charoffAttr);
   }
   
   - (void)setCh:(NSString *)ch
   {
  -    [self _tableColElementImpl]->setAttribute(HTMLAttributes::charoff(), ch);
  +    [self _tableColElementImpl]->setAttribute(charoffAttr, ch);
   }
   
   - (NSString *)chOff
   {
  -    return [self _tableColElementImpl]->getAttribute(HTMLAttributes::charoff());
  +    return [self _tableColElementImpl]->getAttribute(charoffAttr);
   }
   
   - (void)setChOff:(NSString *)chOff
   {
  -    [self _tableColElementImpl]->setAttribute(HTMLAttributes::charoff(), chOff);
  +    [self _tableColElementImpl]->setAttribute(charoffAttr, chOff);
   }
   
   - (long)span
   {
  -    return [self _tableColElementImpl]->getAttribute(HTMLAttributes::span()).toInt();
  +    return [self _tableColElementImpl]->getAttribute(spanAttr).toInt();
   }
   
   - (void)setSpan:(long)span
   {
       DOMString string(QString::number(span));
  -    [self _tableColElementImpl]->setAttribute(HTMLAttributes::span(), string);
  +    [self _tableColElementImpl]->setAttribute(spanAttr, string);
   }
   
   - (NSString *)vAlign
   {
  -    return [self _tableColElementImpl]->getAttribute(HTMLAttributes::valign());
  +    return [self _tableColElementImpl]->getAttribute(valignAttr);
   }
   
   - (void)setVAlign:(NSString *)vAlign
   {
  -    [self _tableColElementImpl]->setAttribute(HTMLAttributes::valign(), vAlign);
  +    [self _tableColElementImpl]->setAttribute(valignAttr, vAlign);
   }
   
   - (NSString *)width
   {
  -    return [self _tableColElementImpl]->getAttribute(HTMLAttributes::width());
  +    return [self _tableColElementImpl]->getAttribute(widthAttr);
   }
   
   - (void)setWidth:(NSString *)width
   {
  -    [self _tableColElementImpl]->setAttribute(HTMLAttributes::width(), width);
  +    [self _tableColElementImpl]->setAttribute(widthAttr, width);
   }
   
   @end
  @@ -3440,52 +3439,52 @@
   
   - (NSString *)align
   {
  -    return [self _tableRowElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _tableRowElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _tableRowElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _tableRowElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (NSString *)bgColor
   {
  -    return [self _tableRowElementImpl]->getAttribute(HTMLAttributes::bgcolor());
  +    return [self _tableRowElementImpl]->getAttribute(bgcolorAttr);
   }
   
   - (void)setBgColor:(NSString *)bgColor
   {
  -    [self _tableRowElementImpl]->setAttribute(HTMLAttributes::bgcolor(), bgColor);
  +    [self _tableRowElementImpl]->setAttribute(bgcolorAttr, bgColor);
   }
   
   - (NSString *)ch
   {
  -    return [self _tableRowElementImpl]->getAttribute(HTMLAttributes::charoff());
  +    return [self _tableRowElementImpl]->getAttribute(charoffAttr);
   }
   
   - (void)setCh:(NSString *)ch
   {
  -    [self _tableRowElementImpl]->setAttribute(HTMLAttributes::charoff(), ch);
  +    [self _tableRowElementImpl]->setAttribute(charoffAttr, ch);
   }
   
   - (NSString *)chOff
   {
  -    return [self _tableRowElementImpl]->getAttribute(HTMLAttributes::charoff());
  +    return [self _tableRowElementImpl]->getAttribute(charoffAttr);
   }
   
   - (void)setChOff:(NSString *)chOff
   {
  -    [self _tableRowElementImpl]->setAttribute(HTMLAttributes::charoff(), chOff);
  +    [self _tableRowElementImpl]->setAttribute(charoffAttr, chOff);
   }
   
   - (NSString *)vAlign
   {
  -    return [self _tableRowElementImpl]->getAttribute(HTMLAttributes::valign());
  +    return [self _tableRowElementImpl]->getAttribute(valignAttr);
   }
   
   - (void)setVAlign:(NSString *)vAlign
   {
  -    [self _tableRowElementImpl]->setAttribute(HTMLAttributes::valign(), vAlign);
  +    [self _tableRowElementImpl]->setAttribute(valignAttr, vAlign);
   }
   
   - (DOMHTMLElement *)insertCell:(long)index
  @@ -3514,144 +3513,144 @@
   
   - (NSString *)abbr
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::abbr());
  +    return [self _tableCellElementImpl]->getAttribute(abbrAttr);
   }
   
   - (void)setAbbr:(NSString *)abbr
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::abbr(), abbr);
  +    [self _tableCellElementImpl]->setAttribute(abbrAttr, abbr);
   }
   
   - (NSString *)align
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _tableCellElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _tableCellElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (NSString *)axis
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::axis());
  +    return [self _tableCellElementImpl]->getAttribute(axisAttr);
   }
   
   - (void)setAxis:(NSString *)axis
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::axis(), axis);
  +    [self _tableCellElementImpl]->setAttribute(axisAttr, axis);
   }
   
   - (NSString *)bgColor
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::bgcolor());
  +    return [self _tableCellElementImpl]->getAttribute(bgcolorAttr);
   }
   
   - (void)setBgColor:(NSString *)bgColor
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::bgcolor(), bgColor);
  +    [self _tableCellElementImpl]->setAttribute(bgcolorAttr, bgColor);
   }
   
   - (NSString *)ch
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::charoff());
  +    return [self _tableCellElementImpl]->getAttribute(charoffAttr);
   }
   
   - (void)setCh:(NSString *)ch
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::charoff(), ch);
  +    [self _tableCellElementImpl]->setAttribute(charoffAttr, ch);
   }
   
   - (NSString *)chOff
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::charoff());
  +    return [self _tableCellElementImpl]->getAttribute(charoffAttr);
   }
   
   - (void)setChOff:(NSString *)chOff
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::charoff(), chOff);
  +    [self _tableCellElementImpl]->setAttribute(charoffAttr, chOff);
   }
   
   - (long)colSpan
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::colspan()).toInt();
  +    return [self _tableCellElementImpl]->getAttribute(colspanAttr).toInt();
   }
   
   - (void)setColSpan:(long)colSpan
   {
       DOMString string(QString::number(colSpan));
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::colspan(), string);
  +    [self _tableCellElementImpl]->setAttribute(colspanAttr, string);
   }
   
   - (NSString *)headers
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::headers());
  +    return [self _tableCellElementImpl]->getAttribute(headersAttr);
   }
   
   - (void)setHeaders:(NSString *)headers
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::headers(), headers);
  +    [self _tableCellElementImpl]->setAttribute(headersAttr, headers);
   }
   
   - (NSString *)height
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::height());
  +    return [self _tableCellElementImpl]->getAttribute(heightAttr);
   }
   
   - (void)setHeight:(NSString *)height
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::height(), height);
  +    [self _tableCellElementImpl]->setAttribute(heightAttr, height);
   }
   
   - (BOOL)noWrap
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::nowrap()).isNull();
  +    return [self _tableCellElementImpl]->getAttribute(nowrapAttr).isNull();
   }
   
   - (void)setNoWrap:(BOOL)noWrap
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::nowrap(), noWrap ? "" : 0);
  +    [self _tableCellElementImpl]->setAttribute(nowrapAttr, noWrap ? "" : 0);
   }
   
   - (long)rowSpan
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::rowspan()).toInt();
  +    return [self _tableCellElementImpl]->getAttribute(rowspanAttr).toInt();
   }
   
   - (void)setRowSpan:(long)rowSpan
   {
       DOMString string(QString::number(rowSpan));
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::rowspan(), string);
  +    [self _tableCellElementImpl]->setAttribute(rowspanAttr, string);
   }
   
   - (NSString *)scope
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::scope());
  +    return [self _tableCellElementImpl]->getAttribute(scopeAttr);
   }
   
   - (void)setScope:(NSString *)scope
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::scope(), scope);
  +    [self _tableCellElementImpl]->setAttribute(scopeAttr, scope);
   }
   
   - (NSString *)vAlign
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::valign());
  +    return [self _tableCellElementImpl]->getAttribute(valignAttr);
   }
   
   - (void)setVAlign:(NSString *)vAlign
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::valign(), vAlign);
  +    [self _tableCellElementImpl]->setAttribute(valignAttr, vAlign);
   }
   
   - (NSString *)width
   {
  -    return [self _tableCellElementImpl]->getAttribute(HTMLAttributes::width());
  +    return [self _tableCellElementImpl]->getAttribute(widthAttr);
   }
   
   - (void)setWidth:(NSString *)width
   {
  -    [self _tableCellElementImpl]->setAttribute(HTMLAttributes::width(), width);
  +    [self _tableCellElementImpl]->setAttribute(widthAttr, width);
   }
   
   @end
  @@ -3679,22 +3678,22 @@
   
   - (NSString *)rows
   {
  -    return [self _frameSetElementImpl]->getAttribute(HTMLAttributes::rows());
  +    return [self _frameSetElementImpl]->getAttribute(rowsAttr);
   }
   
   - (void)setRows:(NSString *)rows
   {
  -    [self _frameSetElementImpl]->setAttribute(HTMLAttributes::rows(), rows);
  +    [self _frameSetElementImpl]->setAttribute(rowsAttr, rows);
   }
   
   - (NSString *)cols
   {
  -    return [self _frameSetElementImpl]->getAttribute(HTMLAttributes::cols());
  +    return [self _frameSetElementImpl]->getAttribute(colsAttr);
   }
   
   - (void)setCols:(NSString *)cols
   {
  -    [self _frameSetElementImpl]->setAttribute(HTMLAttributes::cols(), cols);
  +    [self _frameSetElementImpl]->setAttribute(colsAttr, cols);
   }
   
   @end
  @@ -3708,82 +3707,82 @@
   
   - (NSString *)frameBorder
   {
  -    return [self _frameElementImpl]->getAttribute(HTMLAttributes::frameborder());
  +    return [self _frameElementImpl]->getAttribute(frameborderAttr);
   }
   
   - (void)setFrameBorder:(NSString *)frameBorder
   {
  -    [self _frameElementImpl]->setAttribute(HTMLAttributes::frameborder(), frameBorder);
  +    [self _frameElementImpl]->setAttribute(frameborderAttr, frameBorder);
   }
   
   - (NSString *)longDesc
   {
  -    return [self _frameElementImpl]->getAttribute(HTMLAttributes::longdesc());
  +    return [self _frameElementImpl]->getAttribute(longdescAttr);
   }
   
   - (void)setLongDesc:(NSString *)longDesc
   {
  -    [self _frameElementImpl]->setAttribute(HTMLAttributes::longdesc(), longDesc);
  +    [self _frameElementImpl]->setAttribute(longdescAttr, longDesc);
   }
   
   - (NSString *)marginHeight
   {
  -    return [self _frameElementImpl]->getAttribute(HTMLAttributes::marginheight());
  +    return [self _frameElementImpl]->getAttribute(marginheightAttr);
   }
   
   - (void)setMarginHeight:(NSString *)marginHeight
   {
  -    [self _frameElementImpl]->setAttribute(HTMLAttributes::marginheight(), marginHeight);
  +    [self _frameElementImpl]->setAttribute(marginheightAttr, marginHeight);
   }
   
   - (NSString *)marginWidth
   {
  -    return [self _frameElementImpl]->getAttribute(HTMLAttributes::marginwidth());
  +    return [self _frameElementImpl]->getAttribute(marginwidthAttr);
   }
   
   - (void)setMarginWidth:(NSString *)marginWidth
   {
  -    [self _frameElementImpl]->setAttribute(HTMLAttributes::marginwidth(), marginWidth);
  +    [self _frameElementImpl]->setAttribute(marginwidthAttr, marginWidth);
   }
   
   - (NSString *)name
   {
  -    return [self _frameElementImpl]->getAttribute(HTMLAttributes::name());
  +    return [self _frameElementImpl]->getAttribute(nameAttr);
   }
   
   - (void)setName:(NSString *)name
   {
  -    [self _frameElementImpl]->setAttribute(HTMLAttributes::name(), name);
  +    [self _frameElementImpl]->setAttribute(nameAttr, name);
   }
   
   - (BOOL)noResize
   {
  -    return [self _frameElementImpl]->getAttribute(HTMLAttributes::noresize()).isNull();
  +    return [self _frameElementImpl]->getAttribute(noresizeAttr).isNull();
   }
   
   - (void)setNoResize:(BOOL)noResize
   {
  -    [self _frameElementImpl]->setAttribute(HTMLAttributes::noresize(), noResize ? "" : 0);
  +    [self _frameElementImpl]->setAttribute(noresizeAttr, noResize ? "" : 0);
   }
   
   - (NSString *)scrolling
   {
  -    return [self _frameElementImpl]->getAttribute(HTMLAttributes::scrolling());
  +    return [self _frameElementImpl]->getAttribute(scrollingAttr);
   }
   
   - (void)setScrolling:(NSString *)scrolling
   {
  -    [self _frameElementImpl]->setAttribute(HTMLAttributes::scrolling(), scrolling);
  +    [self _frameElementImpl]->setAttribute(scrollingAttr, scrolling);
   }
   
   - (NSString *)src
   {
  -    return [self _frameElementImpl]->getAttribute(HTMLAttributes::src());
  +    return [self _frameElementImpl]->getAttribute(srcAttr);
   }
   
   - (void)setSrc:(NSString *)src
   {
  -    [self _frameElementImpl]->setAttribute(HTMLAttributes::src(), src);
  +    [self _frameElementImpl]->setAttribute(srcAttr, src);
   }
   
   - (DOMDocument *)contentDocument
  @@ -3802,112 +3801,112 @@
   
   - (NSString *)align
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _IFrameElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _IFrameElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (NSString *)frameBorder
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::frameborder());
  +    return [self _IFrameElementImpl]->getAttribute(frameborderAttr);
   }
   
   - (void)setFrameBorder:(NSString *)frameBorder
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::frameborder(), frameBorder);
  +    [self _IFrameElementImpl]->setAttribute(frameborderAttr, frameBorder);
   }
   
   - (NSString *)height
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::height());
  +    return [self _IFrameElementImpl]->getAttribute(heightAttr);
   }
   
   - (void)setHeight:(NSString *)height
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::height(), height);
  +    [self _IFrameElementImpl]->setAttribute(heightAttr, height);
   }
   
   - (NSString *)longDesc
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::longdesc());
  +    return [self _IFrameElementImpl]->getAttribute(longdescAttr);
   }
   
   - (void)setLongDesc:(NSString *)longDesc
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::longdesc(), longDesc);
  +    [self _IFrameElementImpl]->setAttribute(longdescAttr, longDesc);
   }
   
   - (NSString *)marginHeight
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::marginheight());
  +    return [self _IFrameElementImpl]->getAttribute(marginheightAttr);
   }
   
   - (void)setMarginHeight:(NSString *)marginHeight
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::marginheight(), marginHeight);
  +    [self _IFrameElementImpl]->setAttribute(marginheightAttr, marginHeight);
   }
   
   - (NSString *)marginWidth
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::marginwidth());
  +    return [self _IFrameElementImpl]->getAttribute(marginwidthAttr);
   }
   
   - (void)setMarginWidth:(NSString *)marginWidth
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::marginwidth(), marginWidth);
  +    [self _IFrameElementImpl]->setAttribute(marginwidthAttr, marginWidth);
   }
   
   - (NSString *)name
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::name());
  +    return [self _IFrameElementImpl]->getAttribute(nameAttr);
   }
   
   - (void)setName:(NSString *)name
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::name(), name);
  +    [self _IFrameElementImpl]->setAttribute(nameAttr, name);
   }
   
   - (BOOL)noResize
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::noresize()).isNull();
  +    return [self _IFrameElementImpl]->getAttribute(noresizeAttr).isNull();
   }
   
   - (void)setNoResize:(BOOL)noResize
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::noresize(), noResize ? "" : 0);
  +    [self _IFrameElementImpl]->setAttribute(noresizeAttr, noResize ? "" : 0);
   }
   
   - (NSString *)scrolling
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::scrolling());
  +    return [self _IFrameElementImpl]->getAttribute(scrollingAttr);
   }
   
   - (void)setScrolling:(NSString *)scrolling
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::scrolling(), scrolling);
  +    [self _IFrameElementImpl]->setAttribute(scrollingAttr, scrolling);
   }
   
   - (NSString *)src
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::src());
  +    return [self _IFrameElementImpl]->getAttribute(srcAttr);
   }
   
   - (void)setSrc:(NSString *)src
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::src(), src);
  +    [self _IFrameElementImpl]->setAttribute(srcAttr, src);
   }
   
   - (NSString *)width
   {
  -    return [self _IFrameElementImpl]->getAttribute(HTMLAttributes::width());
  +    return [self _IFrameElementImpl]->getAttribute(widthAttr);
   }
   
   - (void)setWidth:(NSString *)width
   {
  -    [self _IFrameElementImpl]->setAttribute(HTMLAttributes::width(), width);
  +    [self _IFrameElementImpl]->setAttribute(widthAttr, width);
   }
   
   - (DOMDocument *)contentDocument
  @@ -3928,64 +3927,64 @@
   
   - (NSString *)align
   {
  -    return [self _embedElementImpl]->getAttribute(HTMLAttributes::align());
  +    return [self _embedElementImpl]->getAttribute(alignAttr);
   }
   
   - (void)setAlign:(NSString *)align
   {
  -    [self _embedElementImpl]->setAttribute(HTMLAttributes::align(), align);
  +    [self _embedElementImpl]->setAttribute(alignAttr, align);
   }
   
   - (long)height
   {
  -    return [self _embedElementImpl]->getAttribute(HTMLAttributes::height()).toInt();
  +    return [self _embedElementImpl]->getAttribute(heightAttr).toInt();
   }
   
   - (void)setHeight:(long)height
   {
       DOMString string(QString::number(height));
  -    [self _embedElementImpl]->setAttribute(HTMLAttributes::height(), string);
  +    [self _embedElementImpl]->setAttribute(heightAttr, string);
   }
   
   - (NSString *)name
   {
  -    return [self _embedElementImpl]->getAttribute(HTMLAttributes::name());
  +    return [self _embedElementImpl]->getAttribute(nameAttr);
   }
   
   - (void)setName:(NSString *)name
   {
  -    [self _embedElementImpl]->setAttribute(HTMLAttributes::name(), name);
  +    [self _embedElementImpl]->setAttribute(nameAttr, name);
   }
   
   - (NSString *)src
   {
  -    return [self _embedElementImpl]->getAttribute(HTMLAttributes::src());
  +    return [self _embedElementImpl]->getAttribute(srcAttr);
   }
   
   - (void)setSrc:(NSString *)src
   {
  -    [self _embedElementImpl]->setAttribute(HTMLAttributes::src(), src);
  +    [self _embedElementImpl]->setAttribute(srcAttr, src);
   }
   
   - (NSString *)type
   {
  -    return [self _embedElementImpl]->getAttribute(HTMLAttributes::type());
  +    return [self _embedElementImpl]->getAttribute(typeAttr);
   }
   
   - (void)setType:(NSString *)type
   {
  -    [self _embedElementImpl]->setAttribute(HTMLAttributes::type(), type);
  +    [self _embedElementImpl]->setAttribute(typeAttr, type);
   }
   
   - (long)width
   {
  -    return [self _embedElementImpl]->getAttribute(HTMLAttributes::width()).toInt();
  +    return [self _embedElementImpl]->getAttribute(widthAttr).toInt();
   }
   
   - (void)setWidth:(long)width
   {
       DOMString string(QString::number(width));
  -    [self _embedElementImpl]->setAttribute(HTMLAttributes::width(), string);
  +    [self _embedElementImpl]->setAttribute(widthAttr, string);
   }
   
   @end
  
  
  
  1.73      +10 -11    WebCore/kwq/KWQAccObject.mm
  
  Index: KWQAccObject.mm
  ===================================================================
  RCS file: /cvs/root/WebCore/kwq/KWQAccObject.mm,v
  retrieving revision 1.72
  retrieving revision 1.73
  diff -u -r1.72 -r1.73
  --- KWQAccObject.mm	18 Jul 2005 21:52:35 -0000	1.72
  +++ KWQAccObject.mm	30 Jul 2005 02:33:09 -0000	1.73
  @@ -70,13 +70,12 @@
   using DOM::ElementImpl;
   using DOM::HTMLAnchorElementImpl;
   using DOM::HTMLAreaElementImpl;
  -using DOM::HTMLAttributes;
  +using namespace HTMLNames;
   using DOM::HTMLCollection;
   using DOM::HTMLCollectionImpl;
   using DOM::HTMLElementImpl;
   using DOM::HTMLInputElementImpl;
   using DOM::HTMLMapElementImpl;
  -using DOM::HTMLTags;
   using DOM::Node;
   using DOM::NodeImpl;
   using DOM::Position;
  @@ -366,7 +365,7 @@
       }
       if (m_renderer->isListMarker())
           return @"AXListMarker";
  -    if (m_renderer->element() && m_renderer->element()->hasTagName(HTMLTags::button()))
  +    if (m_renderer->element() && m_renderer->element()->hasTagName(buttonTag))
           return NSAccessibilityButtonRole;
       if (m_renderer->isText())
           return NSAccessibilityStaticTextRole;
  @@ -447,20 +446,20 @@
           return nil;
   
       if (m_areaElement) {
  -        QString summary = static_cast<ElementImpl*>(m_areaElement)->getAttribute(HTMLAttributes::summary()).string();
  +        QString summary = static_cast<ElementImpl*>(m_areaElement)->getAttribute(summaryAttr).string();
           if (!summary.isEmpty())
               return summary.getNSString();
  -        QString title = static_cast<ElementImpl*>(m_areaElement)->getAttribute(HTMLAttributes::title()).string();
  +        QString title = static_cast<ElementImpl*>(m_areaElement)->getAttribute(titleAttr).string();
           if (!title.isEmpty())
               return title.getNSString();
       }
   
       for (RenderObject* curr = m_renderer; curr; curr = curr->parent()) {
           if (curr->element() && curr->element()->isHTMLElement()) {
  -            QString summary = static_cast<ElementImpl*>(curr->element())->getAttribute(HTMLAttributes::summary()).string();
  +            QString summary = static_cast<ElementImpl*>(curr->element())->getAttribute(summaryAttr).string();
               if (!summary.isEmpty())
                   return summary.getNSString();
  -            QString title = static_cast<ElementImpl*>(curr->element())->getAttribute(HTMLAttributes::title()).string();
  +            QString title = static_cast<ElementImpl*>(curr->element())->getAttribute(titleAttr).string();
               if (!title.isEmpty())
                   return title.getNSString();
           }
  @@ -532,7 +531,7 @@
       if (!m_renderer || m_areaElement || !m_renderer->element())
           return nil;
       
  -    if (m_renderer->element()->isHTMLElement() && m_renderer->element()->hasTagName(HTMLTags::button()))
  +    if (m_renderer->element()->isHTMLElement() && m_renderer->element()->hasTagName(buttonTag))
           return [self textUnderElement];
       if (m_renderer->element()->isLink())
           return [self textUnderElement];
  @@ -549,7 +548,7 @@
       
       if (m_renderer->isImage()) {
           if (m_renderer->element() && m_renderer->element()->isHTMLElement()) {
  -            QString alt = static_cast<ElementImpl*>(m_renderer->element())->getAttribute(HTMLAttributes::alt()).string();
  +            QString alt = static_cast<ElementImpl*>(m_renderer->element())->getAttribute(altAttr).string();
               return !alt.isEmpty() ? alt.getNSString() : nil;
           }
       } else if ([self isAttachment])
  @@ -622,7 +621,7 @@
       return (!m_renderer->isListMarker() && !m_renderer->isCanvas() && 
               !m_renderer->isImage() &&
               !(m_renderer->element() && m_renderer->element()->isHTMLElement() &&
  -              m_renderer->element()->hasTagName(HTMLTags::button())));
  +              m_renderer->element()->hasTagName(buttonTag)));
   }
   
   - (NSArray *)accessibilityAttributeNames
  @@ -872,7 +871,7 @@
           (m_areaElement || (!m_renderer->isImage() && m_renderer->element() && m_renderer->element()->isLink()))) {
           HTMLAnchorElementImpl* anchor = [self anchorElement];
           if (anchor) {
  -            QString s = anchor->getAttribute(HTMLAttributes::href()).string();
  +            QString s = anchor->getAttribute(hrefAttr).string();
               if (!s.isNull()) {
                   s = anchor->getDocument()->completeURL(s);
                   return s.getNSString();
  
  
  
  1.12      +2 -2      WebCore/kwq/KWQKHTMLPart.cpp
  
  Index: KWQKHTMLPart.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/kwq/KWQKHTMLPart.cpp,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- KWQKHTMLPart.cpp	18 Jul 2005 21:52:36 -0000	1.11
  +++ KWQKHTMLPart.cpp	30 Jul 2005 02:33:09 -0000	1.12
  @@ -32,7 +32,7 @@
   
   using DOM::DocumentImpl;
   using DOM::HTMLDocumentImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   using DOM::NodeImpl;
   
   // FIXME: What on earth is this single tiny file with only this method doing here?
  @@ -42,5 +42,5 @@
       if (!document || !document->isHTMLDocument())
           return false;
       NodeImpl *body = static_cast<HTMLDocumentImpl *>(document)->body();
  -    return body && body->renderer() && body->hasTagName(HTMLTags::frameset());
  +    return body && body->renderer() && body->hasTagName(framesetTag);
   }
  
  
  
  1.656     +57 -58    WebCore/kwq/KWQKHTMLPart.mm
  
  Index: KWQKHTMLPart.mm
  ===================================================================
  RCS file: /cvs/root/WebCore/kwq/KWQKHTMLPart.mm,v
  retrieving revision 1.655
  retrieving revision 1.656
  diff -u -r1.655 -r1.656
  --- KWQKHTMLPart.mm	29 Jul 2005 23:02:45 -0000	1.655
  +++ KWQKHTMLPart.mm	30 Jul 2005 02:33:09 -0000	1.656
  @@ -94,13 +94,12 @@
   using DOM::DOMString;
   using DOM::ElementImpl;
   using DOM::EventImpl;
  -using DOM::HTMLAttributes;
  +using namespace HTMLNames;
   using DOM::HTMLDocumentImpl;
   using DOM::HTMLElementImpl;
   using DOM::HTMLFormElementImpl;
   using DOM::HTMLFrameElementImpl;
   using DOM::HTMLGenericFormElementImpl;
  -using DOM::HTMLTags;
   using DOM::HTMLTableCellElementImpl;
   using DOM::Node;
   using DOM::NodeImpl;
  @@ -368,12 +367,12 @@
   {
       NodeImpl *n;
       for (n = start; n; n = n->traverseNextNode()) {
  -        if (n->hasTagName(HTMLTags::form())) {
  +        if (n->hasTagName(formTag)) {
               return static_cast<HTMLFormElementImpl *>(n);
           } else if (n->isHTMLElement()
                      && static_cast<HTMLElementImpl *>(n)->isGenericFormElement()) {
               return static_cast<HTMLGenericFormElementImpl *>(n)->form();
  -        } else if (n->hasTagName(HTMLTags::frame()) || n->hasTagName(HTMLTags::iframe())) {
  +        } else if (n->hasTagName(frameTag) || n->hasTagName(iframeTag)) {
               NodeImpl *childDoc = static_cast<HTMLFrameElementImpl *>(n)->contentDocument();
               HTMLFormElementImpl *frameResult = scanForForm(childDoc);
               if (frameResult) {
  @@ -396,7 +395,7 @@
       // try walking up the node tree to find a form element
       NodeImpl *n;
       for (n = start; n; n = n->parentNode()) {
  -        if (n->hasTagName(HTMLTags::form())) {
  +        if (n->hasTagName(formTag)) {
               return static_cast<HTMLFormElementImpl *>(n);
           } else if (n->isHTMLElement()
                      && static_cast<HTMLElementImpl *>(n)->isGenericFormElement()) {
  @@ -533,15 +532,15 @@
            n && lengthSearched < charsSearchedThreshold;
            n = n->traversePreviousNode())
       {
  -        if (n->hasTagName(HTMLTags::form())
  +        if (n->hasTagName(formTag)
               || (n->isHTMLElement()
                   && static_cast<HTMLElementImpl *>(n)->isGenericFormElement()))
           {
               // We hit another form element or the start of the form - bail out
               break;
  -        } else if (n->hasTagName(HTMLTags::td()) && !startingTableCell) {
  +        } else if (n->hasTagName(tdTag) && !startingTableCell) {
               startingTableCell = static_cast<HTMLTableCellElementImpl *>(n);
  -        } else if (n->hasTagName(HTMLTags::tr()) && startingTableCell) {
  +        } else if (n->hasTagName(trTag) && startingTableCell) {
               NSString *result = searchForLabelsAboveCell(regExp, startingTableCell);
               if (result) {
                   return result;
  @@ -575,7 +574,7 @@
   
   NSString *KWQKHTMLPart::matchLabelsAgainstElement(NSArray *labels, ElementImpl *element)
   {
  -    QString name = element->getAttribute(HTMLAttributes::name()).string();
  +    QString name = element->getAttribute(nameAttr).string();
       // Make numbers and _'s in field names behave like word boundaries, e.g., "address2"
       name.replace(QRegExp("[[:digit:]]"), " ");
       name.replace('_', ' ');
  @@ -2865,7 +2864,7 @@
       
       NSFileWrapper *wrapper = nil;
   
  -    AtomicString attr = e->getAttribute(HTMLAttributes::src());
  +    AtomicString attr = e->getAttribute(srcAttr);
       if (!attr.isEmpty()) {
           NSURL *URL = completeURL(attr.string()).getNSURL();
           wrapper = [_bridge fileWrapperForURL:URL];
  @@ -2888,7 +2887,7 @@
   
   static ElementImpl *listParent(ElementImpl *item)
   {
  -    while (!item->hasTagName(HTMLTags::ul()) && !item->hasTagName(HTMLTags::ol())) {
  +    while (!item->hasTagName(ulTag) && !item->hasTagName(olTag)) {
           item = static_cast<ElementImpl *>(item->parentNode());
           if (!item)
               break;
  @@ -2904,7 +2903,7 @@
       while (par) {
           if (par->firstChild() != e)
               return 0;
  -        if (par->hasTagName(HTMLTags::li()))
  +        if (par->hasTagName(liTag))
               return par;
           e = par;
           par = par->parentNode();
  @@ -3058,16 +3057,16 @@
               } else {
                   // This is our simple HTML -> ASCII transformation:
                   QString text;
  -                if (n->hasTagName(HTMLTags::a())) {
  +                if (n->hasTagName(aTag)) {
                       // Note the start of the <a> element.  We will add the NSLinkAttributeName
                       // attribute to the attributed string when navigating to the next sibling 
                       // of this node.
                       linkStartLocation = [result length];
                       linkStartNode = static_cast<ElementImpl*>(n);
  -                } else if (n->hasTagName(HTMLTags::br())) {
  +                } else if (n->hasTagName(brTag)) {
                       text += "\n";
                       hasNewLine = true;
  -                } else if (n->hasTagName(HTMLTags::li())) {
  +                } else if (n->hasTagName(liTag)) {
                       QString listText;
                       ElementImpl *itemParent = listParent(static_cast<ElementImpl *>(n));
                       
  @@ -3121,30 +3120,30 @@
                           [result appendAttributedString: partialString];                
                           [partialString release];
                       }
  -                    else if (n->hasTagName(HTMLTags::ol()) || n->hasTagName(HTMLTags::ul())) {
  +                    else if (n->hasTagName(olTag) || n->hasTagName(ulTag)) {
                           if (!hasNewLine)
                               text += "\n";
                           hasNewLine = true;
  -                    } else if (n->hasTagName(HTMLTags::td()) ||
  -                               n->hasTagName(HTMLTags::th()) ||
  -                               n->hasTagName(HTMLTags::hr()) ||
  -                               n->hasTagName(HTMLTags::dd()) ||
  -                               n->hasTagName(HTMLTags::dl()) ||
  -                               n->hasTagName(HTMLTags::dt()) ||
  -                               n->hasTagName(HTMLTags::pre()) ||
  -                               n->hasTagName(HTMLTags::blockquote()) ||
  -                               n->hasTagName(HTMLTags::div())) {
  +                    } else if (n->hasTagName(tdTag) ||
  +                               n->hasTagName(thTag) ||
  +                               n->hasTagName(hrTag) ||
  +                               n->hasTagName(ddTag) ||
  +                               n->hasTagName(dlTag) ||
  +                               n->hasTagName(dtTag) ||
  +                               n->hasTagName(preTag) ||
  +                               n->hasTagName(blockquoteTag) ||
  +                               n->hasTagName(divTag)) {
                           if (!hasNewLine)
                               text += '\n';
                           hasNewLine = true;
  -                    } else if (n->hasTagName(HTMLTags::p()) ||
  -                               n->hasTagName(HTMLTags::tr()) ||
  -                               n->hasTagName(HTMLTags::h1()) ||
  -                               n->hasTagName(HTMLTags::h2()) ||
  -                               n->hasTagName(HTMLTags::h3()) ||
  -                               n->hasTagName(HTMLTags::h4()) ||
  -                               n->hasTagName(HTMLTags::h5()) ||
  -                               n->hasTagName(HTMLTags::h6())) {
  +                    } else if (n->hasTagName(pTag) ||
  +                               n->hasTagName(trTag) ||
  +                               n->hasTagName(h1Tag) ||
  +                               n->hasTagName(h2Tag) ||
  +                               n->hasTagName(h3Tag) ||
  +                               n->hasTagName(h4Tag) ||
  +                               n->hasTagName(h5Tag) ||
  +                               n->hasTagName(h6Tag)) {
                           if (!hasNewLine)
                               text += '\n';
                           
  @@ -3160,7 +3159,7 @@
                           
                           hasNewLine = true;
                       }
  -                    else if (n->hasTagName(HTMLTags::img())) {
  +                    else if (n->hasTagName(imgTag)) {
                           if (pendingStyledSpace != nil) {
                               if (linkStartLocation == [result length]) {
                                   ++linkStartLocation;
  @@ -3198,12 +3197,12 @@
                   break;
               next = n->nextSibling();
   
  -            if (n->hasTagName(HTMLTags::a())) {
  +            if (n->hasTagName(aTag)) {
                   // End of a <a> element.  Create an attributed string NSLinkAttributeName attribute
                   // for the range of the link.  Note that we create the attributed string from the DOM, which
                   // will have corrected any illegally nested <a> elements.
                   if (linkStartNode && n == linkStartNode) {
  -                    DOMString href = parseURL(linkStartNode->getAttribute(HTMLAttributes::href()));
  +                    DOMString href = parseURL(linkStartNode->getAttribute(hrefAttr));
                       KURL kURL = KWQ(linkStartNode->getDocument()->part())->completeURL(href.string());
                       
                       NSURL *URL = kURL.getNSURL();
  @@ -3211,11 +3210,11 @@
                       linkStartNode = 0;
                   }
               }
  -            else if (n->hasTagName(HTMLTags::ol()) || n->hasTagName(HTMLTags::ul())) {
  +            else if (n->hasTagName(olTag) || n->hasTagName(ulTag)) {
                   if (!hasNewLine)
                       text += '\n';
                   hasNewLine = true;
  -            } else if (n->hasTagName(HTMLTags::li())) {
  +            } else if (n->hasTagName(liTag)) {
                   
                   int i, count = listItems.count();
                   for (i = 0; i < count; i++){
  @@ -3227,26 +3226,26 @@
                   if (!hasNewLine)
                       text += '\n';
                   hasNewLine = true;
  -            } else if (n->hasTagName(HTMLTags::td()) ||
  -                       n->hasTagName(HTMLTags::th()) ||
  -                       n->hasTagName(HTMLTags::hr()) ||
  -                       n->hasTagName(HTMLTags::dd()) ||
  -                       n->hasTagName(HTMLTags::dl()) ||
  -                       n->hasTagName(HTMLTags::dt()) ||
  -                       n->hasTagName(HTMLTags::pre()) ||
  -                       n->hasTagName(HTMLTags::blockquote()) ||
  -                       n->hasTagName(HTMLTags::div())) {
  +            } else if (n->hasTagName(tdTag) ||
  +                       n->hasTagName(thTag) ||
  +                       n->hasTagName(hrTag) ||
  +                       n->hasTagName(ddTag) ||
  +                       n->hasTagName(dlTag) ||
  +                       n->hasTagName(dtTag) ||
  +                       n->hasTagName(preTag) ||
  +                       n->hasTagName(blockquoteTag) ||
  +                       n->hasTagName(divTag)) {
                   if (!hasNewLine)
                       text += '\n';
                   hasNewLine = true;
  -            } else if (n->hasTagName(HTMLTags::p()) ||
  -                       n->hasTagName(HTMLTags::tr()) ||
  -                       n->hasTagName(HTMLTags::h1()) ||
  -                       n->hasTagName(HTMLTags::h2()) ||
  -                       n->hasTagName(HTMLTags::h3()) ||
  -                       n->hasTagName(HTMLTags::h4()) ||
  -                       n->hasTagName(HTMLTags::h5()) ||
  -                       n->hasTagName(HTMLTags::h6())) {
  +            } else if (n->hasTagName(pTag) ||
  +                       n->hasTagName(trTag) ||
  +                       n->hasTagName(h1Tag) ||
  +                       n->hasTagName(h2Tag) ||
  +                       n->hasTagName(h3Tag) ||
  +                       n->hasTagName(h4Tag) ||
  +                       n->hasTagName(h5Tag) ||
  +                       n->hasTagName(h6Tag)) {
                   if (!hasNewLine)
                       text += '\n';
                   // An extra newline is needed at the start, not the end, of these types of tags,
  @@ -3484,12 +3483,12 @@
           return node->renderer()->style();
   
       int exceptionCode = 0;
  -    ElementImpl *styleElement = xmlDocImpl()->createElementNS(HTMLTags::xhtmlNamespaceURI(), "span", exceptionCode);
  +    ElementImpl *styleElement = xmlDocImpl()->createElementNS(xhtmlNamespaceURI, "span", exceptionCode);
       ASSERT(exceptionCode == 0);
   
       styleElement->ref();
   
  -    styleElement->setAttribute(HTMLAttributes::style(), d->m_typingStyle->cssText().implementation(), exceptionCode);
  +    styleElement->setAttribute(styleAttr, d->m_typingStyle->cssText().implementation(), exceptionCode);
       ASSERT(exceptionCode == 0);
       
       TextImpl *text = xmlDocImpl()->createEditingTextNode("");
  @@ -3711,7 +3710,7 @@
           while (node) {
               // Look for a block flow, but skip over the HTML element, since we really
               // want to get at least as far as the the BODY element in a document.
  -            if (node->isBlockFlow() && node->hasTagName(HTMLTags::html()))
  +            if (node->isBlockFlow() && node->hasTagName(htmlTag))
                   break;
               node = node->traverseNextNode();
           }
  
  
  
  1.407     +12 -13    WebCore/kwq/WebCoreBridge.mm
  
  Index: WebCoreBridge.mm
  ===================================================================
  RCS file: /cvs/root/WebCore/kwq/WebCoreBridge.mm,v
  retrieving revision 1.406
  retrieving revision 1.407
  diff -u -r1.406 -r1.407
  --- WebCoreBridge.mm	29 Jul 2005 21:16:51 -0000	1.406
  +++ WebCoreBridge.mm	30 Jul 2005 02:33:10 -0000	1.407
  @@ -97,8 +97,7 @@
   using DOM::HTMLGenericFormElementImpl;
   using DOM::HTMLImageElementImpl;
   using DOM::HTMLInputElementImpl;
  -using DOM::HTMLTags;
  -using DOM::HTMLAttributes;
  +using namespace HTMLNames;
   using DOM::NodeImpl;
   using DOM::Position;
   using DOM::RangeImpl;
  @@ -898,7 +897,7 @@
   static HTMLInputElementImpl *inputElementFromDOMElement(DOMElement *element)
   {
       NodeImpl *node = [element _nodeImpl];
  -    if (node->hasTagName(HTMLTags::input())) {
  +    if (node->hasTagName(inputTag)) {
           return static_cast<HTMLInputElementImpl *>(node);
       }
       return nil;
  @@ -911,7 +910,7 @@
       // maps.google.com crashes otherwise because it is an xslt file
       // that contains <form> elements that aren't in any namespace, so
       // they come out as generic CML elements
  -    if (node && node->hasTagName(HTMLTags::form())) {
  +    if (node && node->hasTagName(formTag)) {
           return static_cast<HTMLFormElementImpl *>(node);
       }
       return nil;
  @@ -1014,7 +1013,7 @@
       // For <area> tags in image maps, walk the tree for the <area>, not the <img> using it.
       for (NodeImpl *titleNode = nodeInfo.innerNode(); titleNode; titleNode = titleNode->parentNode()) {
           if (titleNode->isElementNode()) {
  -            const AtomicString& title = static_cast<ElementImpl *>(titleNode)->getAttribute(HTMLAttributes::title());
  +            const AtomicString& title = static_cast<ElementImpl *>(titleNode)->getAttribute(titleAttr);
               if (!title.isNull()) {
                   // We found a node with a title.
                   QString titleText = title.string();
  @@ -1031,14 +1030,14 @@
           DocumentImpl *doc = e->getDocument();
           ASSERT(doc);
           
  -        const AtomicString& title = e->getAttribute(HTMLAttributes::title());
  +        const AtomicString& title = e->getAttribute(titleAttr);
           if (!title.isEmpty()) {
               QString titleText = title.string();
               titleText.replace(QChar('\\'), _part->backslashAsCurrencySymbol());
               [element setObject:titleText.getNSString() forKey:WebCoreElementLinkTitleKey];
           }
           
  -        const AtomicString& link = e->getAttribute(HTMLAttributes::href());
  +        const AtomicString& link = e->getAttribute(hrefAttr);
           if (!link.isNull()) {
               QString t = plainText(rangeOfContents(e).get());
               if (!t.isEmpty()) {
  @@ -1048,7 +1047,7 @@
               [element setObject:doc->completeURL(URLString).getNSString() forKey:WebCoreElementLinkURLKey];
           }
           
  -        DOMString target = e->getAttribute(HTMLAttributes::target());
  +        DOMString target = e->getAttribute(targetAttr);
           if (target.isEmpty() && doc) { // FIXME: Take out this doc check when we're not just before a release.
               target = doc->baseTarget();
           }
  @@ -1079,10 +1078,10 @@
       
               // FIXME: Code copied from RenderImage::updateFromElement; should share.
               DOMString attr;
  -            if (i->hasTagName(HTMLTags::object())) {
  -                attr = i->getAttribute(HTMLAttributes::data());
  +            if (i->hasTagName(objectTag)) {
  +                attr = i->getAttribute(dataAttr);
               } else {
  -                attr = i->getAttribute(HTMLAttributes::src());
  +                attr = i->getAttribute(srcAttr);
               }
               if (!attr.isEmpty()) {
                   QString URLString = parseURL(attr).string();
  @@ -1091,9 +1090,9 @@
               
               // FIXME: Code copied from RenderImage::updateFromElement; should share.
               DOMString alt;
  -            if (i->hasTagName(HTMLTags::input()))
  +            if (i->hasTagName(inputTag))
                   alt = static_cast<HTMLInputElementImpl *>(i)->altText();
  -            else if (i->hasTagName(HTMLTags::img()))
  +            else if (i->hasTagName(imgTag))
                   alt = static_cast<HTMLImageElementImpl *>(i)->altText();
               if (!alt.isNull()) {
                   QString altText = alt.string();
  
  
  
  1.333     +9 -9      WebCore/khtml/khtml_part.cpp
  
  Index: khtml_part.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/khtml_part.cpp,v
  retrieving revision 1.332
  retrieving revision 1.333
  diff -u -r1.332 -r1.333
  --- khtml_part.cpp	29 Jul 2005 23:02:41 -0000	1.332
  +++ khtml_part.cpp	30 Jul 2005 02:33:11 -0000	1.333
  @@ -61,6 +61,7 @@
   #include "xml/xml_tokenizer.h"
   
   using namespace DOM;
  +using namespace HTMLNames;
   
   #include "khtmlview.h"
   #include <kparts/partmanager.h>
  @@ -208,8 +209,7 @@
   {
     AtomicString::init();
     QualifiedName::init();
  -  HTMLTags::init(); // FIXME: We should make this happen only when HTML is used.
  -  HTMLAttributes::init(); // FIXME: Ditto.
  +  HTMLNames::initHTMLNames(); // FIXME: We should make this happen only when HTML is used.
     if ( prof == DefaultGUI )
       setXMLFile( "khtml.rc" );
     else if ( prof == BrowserViewGUI )
  @@ -2988,7 +2988,7 @@
     if (!d->m_doc || !d->m_doc->isHTMLDocument())
       return KURL();
   
  -  QString relURL = static_cast<HTMLDocumentImpl*>(d->m_doc)->body()->getAttribute( HTMLAttributes::background() ).string();
  +  QString relURL = static_cast<HTMLDocumentImpl*>(d->m_doc)->body()->getAttribute( backgroundAttr ).string();
   
     return KURL( m_url, relURL );
   }
  @@ -3153,7 +3153,7 @@
   
     // ### frames
     if ( d->m_doc && d->m_doc->isHTMLDocument() && static_cast<HTMLDocumentImpl*>(d->m_doc)->body() && !d->m_bClearing )
  -    bgURL = static_cast<HTMLDocumentImpl*>(d->m_doc)->body()->getAttribute( HTMLAttributes::background() ).string();
  +    bgURL = static_cast<HTMLDocumentImpl*>(d->m_doc)->body()->getAttribute( backgroundAttr ).string();
   
     d->m_paSaveBackground->setEnabled( !bgURL.isEmpty() );
   }
  @@ -4778,7 +4778,7 @@
   			if (i) {
   				KMultipleDrag *mdrag = new KMultipleDrag( d->m_view->viewport());
   				mdrag->addDragObject(new QImageDrag(i->currentImage(), 0L));
  -				KURL u( completeURL( khtml::parseURL(i->getAttribute(HTMLAttributes::src())).string()));
  +				KURL u( completeURL( khtml::parseURL(i->getAttribute(srcAttr)).string()));
   				KURLDrag* urlDrag = KURLDrag::newDrag(u, 0L);
   				if (!d->m_referrer.isEmpty())
   					urlDrag->metaData()["referrer"] = d->m_referrer;
  @@ -5738,12 +5738,12 @@
       int exceptionCode = 0;
   
       if (d->m_typingStyle) {
  -        styleElement = xmlDocImpl()->createElementNS(HTMLTags::xhtmlNamespaceURI(), "span", exceptionCode);
  +        styleElement = xmlDocImpl()->createElementNS(xhtmlNamespaceURI, "span", exceptionCode);
           assert(exceptionCode == 0);
   
           styleElement->ref();
           
  -        styleElement->setAttribute(HTMLAttributes::style(), d->m_typingStyle->cssText().implementation(), exceptionCode);
  +        styleElement->setAttribute(styleAttr, d->m_typingStyle->cssText().implementation(), exceptionCode);
           assert(exceptionCode == 0);
           
           TextImpl *text = xmlDocImpl()->createEditingTextNode("");
  @@ -5820,7 +5820,7 @@
       CSSMutableStyleDeclarationImpl *mergeStyle = editingStyle();
       if (mergeStyle) {
           currentStyle->merge(mergeStyle);
  -        element->setAttribute(HTMLAttributes::style(), currentStyle->cssText());
  +        element->setAttribute(styleAttr, currentStyle->cssText());
       }
   }
   
  @@ -5841,7 +5841,7 @@
       if (changed)
           currentStyle->setChanged();
   
  -    element->setAttribute(HTMLAttributes::style(), currentStyle->cssText());
  +    element->setAttribute(styleAttr, currentStyle->cssText());
   }
   
   #if !APPLE_CHANGES
  
  
  
  1.138     +4 -3      WebCore/khtml/khtmlview.cpp
  
  Index: khtmlview.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/khtmlview.cpp,v
  retrieving revision 1.137
  retrieving revision 1.138
  diff -u -r1.137 -r1.138
  --- khtmlview.cpp	29 Jul 2005 23:02:41 -0000	1.137
  +++ khtmlview.cpp	30 Jul 2005 02:33:11 -0000	1.138
  @@ -71,6 +71,7 @@
   // #define INSTRUMENT_LAYOUT_SCHEDULING 1
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   class KHTMLToolTip;
   
  @@ -606,12 +607,12 @@
       if (document->isHTMLDocument()) {
           NodeImpl *body = static_cast<HTMLDocumentImpl*>(document)->body();
           if (body && body->renderer()) {
  -            if (body->hasTagName(HTMLTags::frameset())) {
  +            if (body->hasTagName(framesetTag)) {
                   body->renderer()->setNeedsLayout(true);
                   vMode = AlwaysOff;
                   hMode = AlwaysOff;
               }
  -            else if (body->hasTagName(HTMLTags::body())) {
  +            else if (body->hasTagName(bodyTag)) {
                   RenderObject* o = (rootRenderer->style()->overflow() == OVISIBLE) ? body->renderer() : rootRenderer;
                   applyOverflowToViewport(o, hMode, vMode); // Only applies to HTML UAs, not to XML/XHTML UAs
               }
  @@ -876,7 +877,7 @@
   
   static bool isSubmitImage(DOM::NodeImpl *node)
   {
  -    return node && node->hasTagName(HTMLTags::input()) && static_cast<HTMLInputElementImpl*>(node)->inputType() == HTMLInputElementImpl::IMAGE;
  +    return node && node->hasTagName(inputTag) && static_cast<HTMLInputElementImpl*>(node)->inputType() == HTMLInputElementImpl::IMAGE;
   }
   
   void KHTMLView::viewportMouseMoveEvent( QMouseEvent * _mouse )
  
  
  
  1.198     +11 -9     WebCore/khtml/css/cssstyleselector.cpp
  
  Index: cssstyleselector.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/css/cssstyleselector.cpp,v
  retrieving revision 1.197
  retrieving revision 1.198
  diff -u -r1.197 -r1.198
  --- cssstyleselector.cpp	29 Jul 2005 23:02:42 -0000	1.197
  +++ cssstyleselector.cpp	30 Jul 2005 02:33:12 -0000	1.198
  @@ -36,6 +36,8 @@
   #include "khtmlpart_p.h"
   using namespace khtml;
   using namespace DOM;
  +using namespace HTMLNames;
  +
   
   #include "css/cssproperties.h"
   #include "css/cssvalues.h"
  @@ -542,7 +544,7 @@
           return;
       }
       
  -    const AtomicString& attr = e->getAttribute(HTMLAttributes::href());
  +    const AtomicString& attr = e->getAttribute(hrefAttr);
       if (attr.isNull()) {
           pseudoState = PseudoNone;
           return;
  @@ -618,8 +620,8 @@
               (s->focused() == element->focused())) {
               bool classesMatch = true;
               if (s->hasClass()) {
  -                const AtomicString& class1 = element->getAttribute(HTMLAttributes::classAttr());
  -                const AtomicString& class2 = s->getAttribute(HTMLAttributes::classAttr());
  +                const AtomicString& class1 = element->getAttribute(classAttr);
  +                const AtomicString& class2 = s->getAttribute(classAttr);
                   classesMatch = (class1 == class2);
               }
               
  @@ -884,23 +886,23 @@
           // Sites also commonly use display:inline/block on <td>s and <table>s.  In quirks mode we force
           // these tags to retain their display types.
           if (!strictParsing && e) {
  -            if (e->hasTagName(HTMLTags::td())) {
  +            if (e->hasTagName(tdTag)) {
                   style->setDisplay(TABLE_CELL);
                   style->setFloating(FNONE);
               }
  -            else if (e->hasTagName(HTMLTags::table()))
  +            else if (e->hasTagName(tableTag))
                   style->setDisplay(style->isDisplayInlineType() ? INLINE_TABLE : TABLE);
           }
   
           // Frames and framesets never honor position:relative or position:absolute.  This is necessary to
           // fix a crash where a site tries to position these objects.  They also never honor display.
  -        if (e && (e->hasTagName(HTMLTags::frame()) || e->hasTagName(HTMLTags::frameset()))) {
  +        if (e && (e->hasTagName(frameTag) || e->hasTagName(framesetTag))) {
               style->setPosition(STATIC);
               style->setDisplay(BLOCK);
           }
   
           // Table headers with a text-align of auto will change the text-align to center.
  -        if (e && e->hasTagName(HTMLTags::th()) && style->textAlign() == TAAUTO)
  +        if (e && e->hasTagName(thTag) && style->textAlign() == TAAUTO)
               style->setTextAlign(CENTER);
           
           // Mutate the display to BLOCK or TABLE for certain cases, e.g., if someone attempts to
  @@ -1293,7 +1295,7 @@
               case CSSSelector::PseudoHover: {
                   // If we're in quirks mode, then hover should never match anchors with no
                   // href.  This is important for sites like wsj.com.
  -                if (strictParsing || !e->hasTagName(HTMLTags::a()) || e->isLink()) {
  +                if (strictParsing || !e->hasTagName(aTag) || e->isLink()) {
                       if (element == e && style)
                           style->setAffectedByHoverRules(true);
                       if (e->renderer()) {
  @@ -1324,7 +1326,7 @@
               case CSSSelector::PseudoActive:
                   // If we're in quirks mode, then :active should never match anchors with no
                   // href. 
  -                if (strictParsing || !e->hasTagName(HTMLTags::a()) || e->isLink()) {
  +                if (strictParsing || !e->hasTagName(aTag) || e->isLink()) {
                       if (element == e && style)
                           style->setAffectedByActiveRules(true);
                       else if (e->renderer())
  
  
  
  1.43      +3 -2      WebCore/khtml/css/parser.y
  
  Index: parser.y
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/css/parser.y,v
  retrieving revision 1.42
  retrieving revision 1.43
  diff -u -r1.42 -r1.43
  --- parser.y	18 Jul 2005 21:44:13 -0000	1.42
  +++ parser.y	30 Jul 2005 02:33:12 -0000	1.43
  @@ -40,6 +40,7 @@
   // #define CSS_DEBUG
   
   using namespace DOM;
  + using namespace HTMLNames;
   
   //
   // The following file defines the function
  @@ -717,7 +718,7 @@
   	CSSParser *p = static_cast<CSSParser *>(parser);
           if (!p->strict)
               $1.lower();
  -        $$->attr = HTMLAttributes::idAttr();
  +        $$->attr = idAttr;
   	$$->value = atomicString($1);
       }
     | class
  @@ -732,7 +733,7 @@
   	CSSParser *p = static_cast<CSSParser *>(parser);
           if (!p->strict)
               $2.lower();
  -        $$->attr = HTMLAttributes::classAttr();
  +        $$->attr = classAttr;
   	$$->value = atomicString($2);
       }
     ;
  
  
  
  1.32      +2 -2      WebCore/khtml/ecma/kjs_css.cpp
  
  Index: kjs_css.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/ecma/kjs_css.cpp,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- kjs_css.cpp	25 Jul 2005 22:17:18 -0000	1.31
  +++ kjs_css.cpp	30 Jul 2005 02:33:13 -0000	1.32
  @@ -55,7 +55,7 @@
   using DOM::DocumentImpl;
   using DOM::DOMString;
   using DOM::ElementImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   using DOM::HTMLStyleElementImpl;
   using DOM::MediaListImpl;
   using DOM::RectImpl;
  @@ -420,7 +420,7 @@
     // and doesn't look for name attribute (see implementation above).
     // But unicity of stylesheet ids is good practice anyway ;)
     ElementImpl *element = m_doc->getElementById(p.string());
  -  if (element && element->hasTagName(HTMLTags::style())) {
  +  if (element && element->hasTagName(styleTag)) {
       result = getDOMStyleSheet(exec, static_cast<HTMLStyleElementImpl *>(element)->sheet());
       return true;
     }
  
  
  
  1.83      +6 -15     WebCore/khtml/ecma/kjs_dom.cpp
  
  Index: kjs_dom.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/ecma/kjs_dom.cpp,v
  retrieving revision 1.82
  retrieving revision 1.83
  diff -u -r1.82 -r1.83
  --- kjs_dom.cpp	25 Jul 2005 22:17:18 -0000	1.82
  +++ kjs_dom.cpp	30 Jul 2005 02:33:13 -0000	1.83
  @@ -65,7 +65,7 @@
   using DOM::HTMLDocumentImpl;
   using DOM::HTMLElementImpl;
   using DOM::HTMLEmbedElementImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   using DOM::HTMLObjectElementImpl;
   using DOM::NamedNodeMapImpl;
   using DOM::Node;
  @@ -1691,18 +1691,18 @@
       if (!n)
           return 0;
   
  -    if (n->hasTagName(HTMLTags::applet())) {
  +    if (n->hasTagName(appletTag)) {
           HTMLAppletElementImpl *appletElement = static_cast<HTMLAppletElementImpl *>(n);
           if (appletElement->getAppletInstance())
               // The instance is owned by the applet element.
               return new RuntimeObjectImp(appletElement->getAppletInstance(), false);
       }
  -    else if (n->hasTagName(HTMLTags::embed())) {
  +    else if (n->hasTagName(embedTag)) {
           HTMLEmbedElementImpl *embedElement = static_cast<HTMLEmbedElementImpl *>(n);
           if (embedElement->getEmbedInstance())
               return new RuntimeObjectImp(embedElement->getEmbedInstance(), false);
       }
  -    else if (n->hasTagName(HTMLTags::object())) {
  +    else if (n->hasTagName(objectTag)) {
           HTMLObjectElementImpl *objectElement = static_cast<HTMLObjectElementImpl *>(n);
           if (objectElement->getObjectInstance())
               return new RuntimeObjectImp(objectElement->getObjectInstance(), false);
  @@ -1895,17 +1895,8 @@
       QValueListConstIterator< SharedPtr<NodeImpl> > end = m_nodes.end();
       for (QValueListConstIterator< SharedPtr<NodeImpl> > it = m_nodes.begin(); it != end; it++) {
         NodeImpl *node = (*it).get();
  -      NamedNodeMapImpl *attributes = node->attributes();
  -      if (!attributes) {
  -	continue;
  -      }
  -
  -      NodeImpl *idAttr = attributes->getNamedItem("id");
  -      if (!idAttr) {
  -	continue;
  -      }
  -
  -      if (idAttr->nodeValue() == propertyName.string()) {
  +      if (node->hasAttributes() &&
  +          node->attributes()->id() == propertyName.string()) {
   	result = getDOMNode(exec,node);
           return true;
         }
  
  
  
  1.130     +178 -178  WebCore/khtml/ecma/kjs_html.cpp
  
  Index: kjs_html.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/ecma/kjs_html.cpp,v
  retrieving revision 1.129
  retrieving revision 1.130
  diff -u -r1.129 -r1.130
  --- kjs_html.cpp	25 Jul 2005 22:17:19 -0000	1.129
  +++ kjs_html.cpp	30 Jul 2005 02:33:13 -0000	1.130
  @@ -107,7 +107,7 @@
   using DOM::HTMLMenuElementImpl;
   using DOM::HTMLMetaElementImpl;
   using DOM::HTMLModElementImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   using DOM::HTMLOListElementImpl;
   using DOM::HTMLObjectElementImpl;
   using DOM::HTMLOptGroupElementImpl;
  @@ -296,7 +296,7 @@
       if (collection->length() == 1) {
         NodeImpl *node = collection->firstItem();
         KHTMLPart *part;
  -      if (node->hasTagName(HTMLTags::iframe()) && 
  +      if (node->hasTagName(iframeTag) && 
             (part = static_cast<DOM::HTMLIFrameElementImpl *>(node)->contentPart()))
           result = Window::retrieve(part);
         else
  @@ -306,7 +306,7 @@
       return true;
     }
   
  -  HTMLBodyElementImpl *bodyElement = (body && body->hasTagName(HTMLTags::body())) ? static_cast<HTMLBodyElementImpl *>(body) : 0;
  +  HTMLBodyElementImpl *bodyElement = (body && body->hasTagName(bodyTag)) ? static_cast<HTMLBodyElementImpl *>(body) : 0;
       
     const HashEntry* entry = Lookup::findEntry(&HTMLDocumentTable, propertyName);
     if (entry) {
  @@ -451,7 +451,7 @@
     DOMExceptionTranslator exception(exec);
     HTMLDocumentImpl &doc = *static_cast<HTMLDocumentImpl *>(impl());
     HTMLElementImpl *body = doc.body();
  -  HTMLBodyElementImpl *bodyElement = (body && body->hasTagName(HTMLTags::body())) ? static_cast<HTMLBodyElementImpl *>(body) : 0;
  +  HTMLBodyElementImpl *bodyElement = (body && body->hasTagName(bodyTag)) ? static_cast<HTMLBodyElementImpl *>(body) : 0;
   
     switch (token) {
     case Title:
  @@ -608,71 +608,71 @@
       // FIXME: We want to use HashMap here, but there are compiler issues to deal with.
       static QPtrDict<const ClassInfo> classInfoDict;
       if (classInfoDict.isEmpty()) {
  -        classInfoDict.insert(HTMLTags::a().localName().implementation(), &a_info);
  -        classInfoDict.insert(HTMLTags::applet().localName().implementation(), &applet_info);
  -        classInfoDict.insert(HTMLTags::area().localName().implementation(), &area_info);
  -        classInfoDict.insert(HTMLTags::base().localName().implementation(), &base_info);
  -        classInfoDict.insert(HTMLTags::basefont().localName().implementation(), &baseFont_info);
  -        classInfoDict.insert(HTMLTags::blockquote().localName().implementation(), &blockQuote_info);
  -        classInfoDict.insert(HTMLTags::body().localName().implementation(), &body_info);
  -        classInfoDict.insert(HTMLTags::br().localName().implementation(), &br_info);
  -        classInfoDict.insert(HTMLTags::button().localName().implementation(), &button_info);
  -        classInfoDict.insert(HTMLTags::canvas().localName().implementation(), &canvas_info);
  -        classInfoDict.insert(HTMLTags::caption().localName().implementation(), &caption_info);
  -        classInfoDict.insert(HTMLTags::col().localName().implementation(), &col_info);
  -        classInfoDict.insert(HTMLTags::colgroup().localName().implementation(), &col_info);
  -        classInfoDict.insert(HTMLTags::del().localName().implementation(), &mod_info);
  -        classInfoDict.insert(HTMLTags::dir().localName().implementation(), &dir_info);
  -        classInfoDict.insert(HTMLTags::div().localName().implementation(), &div_info);
  -        classInfoDict.insert(HTMLTags::dl().localName().implementation(), &dl_info);
  -        classInfoDict.insert(HTMLTags::fieldset().localName().implementation(), &fieldSet_info);
  -        classInfoDict.insert(HTMLTags::font().localName().implementation(), &font_info);
  -        classInfoDict.insert(HTMLTags::form().localName().implementation(), &form_info);
  -        classInfoDict.insert(HTMLTags::frame().localName().implementation(), &frame_info);
  -        classInfoDict.insert(HTMLTags::frameset().localName().implementation(), &frameSet_info);
  -        classInfoDict.insert(HTMLTags::h1().localName().implementation(), &heading_info);
  -        classInfoDict.insert(HTMLTags::h2().localName().implementation(), &heading_info);
  -        classInfoDict.insert(HTMLTags::h3().localName().implementation(), &heading_info);
  -        classInfoDict.insert(HTMLTags::h4().localName().implementation(), &heading_info);
  -        classInfoDict.insert(HTMLTags::h5().localName().implementation(), &heading_info);
  -        classInfoDict.insert(HTMLTags::h6().localName().implementation(), &heading_info);
  -        classInfoDict.insert(HTMLTags::head().localName().implementation(), &head_info);
  -        classInfoDict.insert(HTMLTags::hr().localName().implementation(), &hr_info);
  -        classInfoDict.insert(HTMLTags::html().localName().implementation(), &html_info);
  -        classInfoDict.insert(HTMLTags::iframe().localName().implementation(), &iFrame_info);
  -        classInfoDict.insert(HTMLTags::img().localName().implementation(), &img_info);
  -        classInfoDict.insert(HTMLTags::input().localName().implementation(), &input_info);
  -        classInfoDict.insert(HTMLTags::ins().localName().implementation(), &mod_info);
  -        classInfoDict.insert(HTMLTags::isindex().localName().implementation(), &isIndex_info);
  -        classInfoDict.insert(HTMLTags::label().localName().implementation(), &label_info);
  -        classInfoDict.insert(HTMLTags::legend().localName().implementation(), &legend_info);
  -        classInfoDict.insert(HTMLTags::li().localName().implementation(), &li_info);
  -        classInfoDict.insert(HTMLTags::link().localName().implementation(), &link_info);
  -        classInfoDict.insert(HTMLTags::map().localName().implementation(), &map_info);
  -        classInfoDict.insert(HTMLTags::marquee().localName().implementation(), &marquee_info);
  -        classInfoDict.insert(HTMLTags::menu().localName().implementation(), &menu_info);
  -        classInfoDict.insert(HTMLTags::meta().localName().implementation(), &meta_info);
  -        classInfoDict.insert(HTMLTags::object().localName().implementation(), &object_info);
  -        classInfoDict.insert(HTMLTags::ol().localName().implementation(), &ol_info);
  -        classInfoDict.insert(HTMLTags::option().localName().implementation(), &option_info);
  -        classInfoDict.insert(HTMLTags::optgroup().localName().implementation(), &optGroup_info);
  -        classInfoDict.insert(HTMLTags::p().localName().implementation(), &p_info);
  -        classInfoDict.insert(HTMLTags::param().localName().implementation(), &param_info);
  -        classInfoDict.insert(HTMLTags::pre().localName().implementation(), &pre_info);
  -        classInfoDict.insert(HTMLTags::q().localName().implementation(), &q_info);
  -        classInfoDict.insert(HTMLTags::script().localName().implementation(), &script_info);
  -        classInfoDict.insert(HTMLTags::select().localName().implementation(), &select_info);
  -        classInfoDict.insert(HTMLTags::style().localName().implementation(), &style_info);
  -        classInfoDict.insert(HTMLTags::table().localName().implementation(), &table_info);
  -        classInfoDict.insert(HTMLTags::tbody().localName().implementation(), &tablesection_info);
  -        classInfoDict.insert(HTMLTags::td().localName().implementation(), &tablecell_info);
  -        classInfoDict.insert(HTMLTags::textarea().localName().implementation(), &textArea_info);
  -        classInfoDict.insert(HTMLTags::th().localName().implementation(), &tablecell_info);
  -        classInfoDict.insert(HTMLTags::thead().localName().implementation(), &tablesection_info);
  -        classInfoDict.insert(HTMLTags::tfoot().localName().implementation(), &tablesection_info);
  -        classInfoDict.insert(HTMLTags::title().localName().implementation(), &title_info);
  -        classInfoDict.insert(HTMLTags::tr().localName().implementation(), &tr_info);
  -        classInfoDict.insert(HTMLTags::ul().localName().implementation(), &ul_info);
  +        classInfoDict.insert(aTag.localName().implementation(), &a_info);
  +        classInfoDict.insert(appletTag.localName().implementation(), &applet_info);
  +        classInfoDict.insert(areaTag.localName().implementation(), &area_info);
  +        classInfoDict.insert(baseTag.localName().implementation(), &base_info);
  +        classInfoDict.insert(basefontTag.localName().implementation(), &baseFont_info);
  +        classInfoDict.insert(blockquoteTag.localName().implementation(), &blockQuote_info);
  +        classInfoDict.insert(bodyTag.localName().implementation(), &body_info);
  +        classInfoDict.insert(brTag.localName().implementation(), &br_info);
  +        classInfoDict.insert(buttonTag.localName().implementation(), &button_info);
  +        classInfoDict.insert(canvasTag.localName().implementation(), &canvas_info);
  +        classInfoDict.insert(captionTag.localName().implementation(), &caption_info);
  +        classInfoDict.insert(colTag.localName().implementation(), &col_info);
  +        classInfoDict.insert(colgroupTag.localName().implementation(), &col_info);
  +        classInfoDict.insert(delTag.localName().implementation(), &mod_info);
  +        classInfoDict.insert(dirTag.localName().implementation(), &dir_info);
  +        classInfoDict.insert(divTag.localName().implementation(), &div_info);
  +        classInfoDict.insert(dlTag.localName().implementation(), &dl_info);
  +        classInfoDict.insert(fieldsetTag.localName().implementation(), &fieldSet_info);
  +        classInfoDict.insert(fontTag.localName().implementation(), &font_info);
  +        classInfoDict.insert(formTag.localName().implementation(), &form_info);
  +        classInfoDict.insert(frameTag.localName().implementation(), &frame_info);
  +        classInfoDict.insert(framesetTag.localName().implementation(), &frameSet_info);
  +        classInfoDict.insert(h1Tag.localName().implementation(), &heading_info);
  +        classInfoDict.insert(h2Tag.localName().implementation(), &heading_info);
  +        classInfoDict.insert(h3Tag.localName().implementation(), &heading_info);
  +        classInfoDict.insert(h4Tag.localName().implementation(), &heading_info);
  +        classInfoDict.insert(h5Tag.localName().implementation(), &heading_info);
  +        classInfoDict.insert(h6Tag.localName().implementation(), &heading_info);
  +        classInfoDict.insert(headTag.localName().implementation(), &head_info);
  +        classInfoDict.insert(hrTag.localName().implementation(), &hr_info);
  +        classInfoDict.insert(htmlTag.localName().implementation(), &html_info);
  +        classInfoDict.insert(iframeTag.localName().implementation(), &iFrame_info);
  +        classInfoDict.insert(imgTag.localName().implementation(), &img_info);
  +        classInfoDict.insert(inputTag.localName().implementation(), &input_info);
  +        classInfoDict.insert(insTag.localName().implementation(), &mod_info);
  +        classInfoDict.insert(isindexTag.localName().implementation(), &isIndex_info);
  +        classInfoDict.insert(labelTag.localName().implementation(), &label_info);
  +        classInfoDict.insert(legendTag.localName().implementation(), &legend_info);
  +        classInfoDict.insert(liTag.localName().implementation(), &li_info);
  +        classInfoDict.insert(linkTag.localName().implementation(), &link_info);
  +        classInfoDict.insert(mapTag.localName().implementation(), &map_info);
  +        classInfoDict.insert(marqueeTag.localName().implementation(), &marquee_info);
  +        classInfoDict.insert(menuTag.localName().implementation(), &menu_info);
  +        classInfoDict.insert(metaTag.localName().implementation(), &meta_info);
  +        classInfoDict.insert(objectTag.localName().implementation(), &object_info);
  +        classInfoDict.insert(olTag.localName().implementation(), &ol_info);
  +        classInfoDict.insert(optionTag.localName().implementation(), &option_info);
  +        classInfoDict.insert(optgroupTag.localName().implementation(), &optGroup_info);
  +        classInfoDict.insert(pTag.localName().implementation(), &p_info);
  +        classInfoDict.insert(paramTag.localName().implementation(), &param_info);
  +        classInfoDict.insert(preTag.localName().implementation(), &pre_info);
  +        classInfoDict.insert(qTag.localName().implementation(), &q_info);
  +        classInfoDict.insert(scriptTag.localName().implementation(), &script_info);
  +        classInfoDict.insert(selectTag.localName().implementation(), &select_info);
  +        classInfoDict.insert(styleTag.localName().implementation(), &style_info);
  +        classInfoDict.insert(tableTag.localName().implementation(), &table_info);
  +        classInfoDict.insert(tbodyTag.localName().implementation(), &tablesection_info);
  +        classInfoDict.insert(tdTag.localName().implementation(), &tablecell_info);
  +        classInfoDict.insert(textareaTag.localName().implementation(), &textArea_info);
  +        classInfoDict.insert(thTag.localName().implementation(), &tablecell_info);
  +        classInfoDict.insert(theadTag.localName().implementation(), &tablesection_info);
  +        classInfoDict.insert(tfootTag.localName().implementation(), &tablesection_info);
  +        classInfoDict.insert(titleTag.localName().implementation(), &title_info);
  +        classInfoDict.insert(trTag.localName().implementation(), &tr_info);
  +        classInfoDict.insert(ulTag.localName().implementation(), &ul_info);
       }
       
       HTMLElementImpl* element = static_cast<HTMLElementImpl*>(impl());
  @@ -743,71 +743,71 @@
       // FIXME: We want to use HashMap here, but there are compiler issues to deal with.
       static QPtrDict<const HTMLElement::Accessors> getSetInfoDict;
       if (getSetInfoDict.isEmpty()) {
  -        getSetInfoDict.insert(HTMLTags::a().localName().implementation(), &a_accessors);
  -        getSetInfoDict.insert(HTMLTags::applet().localName().implementation(), &applet_accessors);
  -        getSetInfoDict.insert(HTMLTags::area().localName().implementation(), &area_accessors);
  -        getSetInfoDict.insert(HTMLTags::base().localName().implementation(), &base_accessors);
  -        getSetInfoDict.insert(HTMLTags::basefont().localName().implementation(), &baseFont_accessors);
  -        getSetInfoDict.insert(HTMLTags::blockquote().localName().implementation(), &blockQuote_accessors); 
  -        getSetInfoDict.insert(HTMLTags::body().localName().implementation(), &body_accessors);
  -        getSetInfoDict.insert(HTMLTags::br().localName().implementation(), &br_accessors);
  -        getSetInfoDict.insert(HTMLTags::button().localName().implementation(), &button_accessors);
  -        getSetInfoDict.insert(HTMLTags::canvas().localName().implementation(), &canvas_accessors);
  -        getSetInfoDict.insert(HTMLTags::caption().localName().implementation(), &caption_accessors);
  -        getSetInfoDict.insert(HTMLTags::col().localName().implementation(), &col_accessors);
  -        getSetInfoDict.insert(HTMLTags::colgroup().localName().implementation(), &col_accessors);
  -        getSetInfoDict.insert(HTMLTags::del().localName().implementation(), &mod_accessors);
  -        getSetInfoDict.insert(HTMLTags::dir().localName().implementation(), &dir_accessors);
  -        getSetInfoDict.insert(HTMLTags::div().localName().implementation(), &div_accessors);
  -        getSetInfoDict.insert(HTMLTags::dl().localName().implementation(), &dl_accessors);
  -        getSetInfoDict.insert(HTMLTags::fieldset().localName().implementation(), &fieldSet_accessors);
  -        getSetInfoDict.insert(HTMLTags::font().localName().implementation(), &font_accessors);
  -        getSetInfoDict.insert(HTMLTags::form().localName().implementation(), &form_accessors);
  -        getSetInfoDict.insert(HTMLTags::frame().localName().implementation(), &frame_accessors);
  -        getSetInfoDict.insert(HTMLTags::frameset().localName().implementation(), &frameSet_accessors);
  -        getSetInfoDict.insert(HTMLTags::h1().localName().implementation(), &heading_accessors);
  -        getSetInfoDict.insert(HTMLTags::h2().localName().implementation(), &heading_accessors);
  -        getSetInfoDict.insert(HTMLTags::h3().localName().implementation(), &heading_accessors);
  -        getSetInfoDict.insert(HTMLTags::h4().localName().implementation(), &heading_accessors);
  -        getSetInfoDict.insert(HTMLTags::h5().localName().implementation(), &heading_accessors);
  -        getSetInfoDict.insert(HTMLTags::h6().localName().implementation(), &heading_accessors);
  -        getSetInfoDict.insert(HTMLTags::head().localName().implementation(), &head_accessors);
  -        getSetInfoDict.insert(HTMLTags::hr().localName().implementation(), &hr_accessors); 
  -        getSetInfoDict.insert(HTMLTags::html().localName().implementation(), &html_accessors);
  -        getSetInfoDict.insert(HTMLTags::iframe().localName().implementation(), &iFrame_accessors);
  -        getSetInfoDict.insert(HTMLTags::img().localName().implementation(), &img_accessors);
  -        getSetInfoDict.insert(HTMLTags::input().localName().implementation(), &input_accessors);
  -        getSetInfoDict.insert(HTMLTags::ins().localName().implementation(), &mod_accessors);
  -        getSetInfoDict.insert(HTMLTags::isindex().localName().implementation(), &isIndex_accessors);
  -        getSetInfoDict.insert(HTMLTags::label().localName().implementation(), &label_accessors);
  -        getSetInfoDict.insert(HTMLTags::legend().localName().implementation(), &legend_accessors);
  -        getSetInfoDict.insert(HTMLTags::li().localName().implementation(), &li_accessors);
  -        getSetInfoDict.insert(HTMLTags::link().localName().implementation(), &link_accessors);
  -        getSetInfoDict.insert(HTMLTags::map().localName().implementation(), &map_accessors);
  -        getSetInfoDict.insert(HTMLTags::marquee().localName().implementation(), &marquee_accessors);
  -        getSetInfoDict.insert(HTMLTags::menu().localName().implementation(), &menu_accessors);
  -        getSetInfoDict.insert(HTMLTags::meta().localName().implementation(), &meta_accessors);
  -        getSetInfoDict.insert(HTMLTags::object().localName().implementation(), &object_accessors);
  -        getSetInfoDict.insert(HTMLTags::ol().localName().implementation(), &ol_accessors);
  -        getSetInfoDict.insert(HTMLTags::option().localName().implementation(), &option_accessors);
  -        getSetInfoDict.insert(HTMLTags::optgroup().localName().implementation(), &optGroup_accessors);
  -        getSetInfoDict.insert(HTMLTags::p().localName().implementation(), &p_accessors);
  -        getSetInfoDict.insert(HTMLTags::param().localName().implementation(), &param_accessors);
  -        getSetInfoDict.insert(HTMLTags::pre().localName().implementation(), &pre_accessors);
  -        getSetInfoDict.insert(HTMLTags::q().localName().implementation(), &q_accessors);
  -        getSetInfoDict.insert(HTMLTags::script().localName().implementation(), &script_accessors);
  -        getSetInfoDict.insert(HTMLTags::select().localName().implementation(), &select_accessors);
  -        getSetInfoDict.insert(HTMLTags::style().localName().implementation(), &style_accessors);
  -        getSetInfoDict.insert(HTMLTags::table().localName().implementation(), &table_accessors);
  -        getSetInfoDict.insert(HTMLTags::tbody().localName().implementation(), &tablesection_accessors);
  -        getSetInfoDict.insert(HTMLTags::td().localName().implementation(), &tablecell_accessors);
  -        getSetInfoDict.insert(HTMLTags::textarea().localName().implementation(), &textArea_accessors);
  -        getSetInfoDict.insert(HTMLTags::th().localName().implementation(), &tablecell_accessors);
  -        getSetInfoDict.insert(HTMLTags::thead().localName().implementation(), &tablesection_accessors);
  -        getSetInfoDict.insert(HTMLTags::tfoot().localName().implementation(), &tablesection_accessors);
  -        getSetInfoDict.insert(HTMLTags::title().localName().implementation(), &title_accessors);
  -        getSetInfoDict.insert(HTMLTags::tr().localName().implementation(), &tr_accessors);
  -        getSetInfoDict.insert(HTMLTags::ul().localName().implementation(), &ul_accessors);
  +        getSetInfoDict.insert(aTag.localName().implementation(), &a_accessors);
  +        getSetInfoDict.insert(appletTag.localName().implementation(), &applet_accessors);
  +        getSetInfoDict.insert(areaTag.localName().implementation(), &area_accessors);
  +        getSetInfoDict.insert(baseTag.localName().implementation(), &base_accessors);
  +        getSetInfoDict.insert(basefontTag.localName().implementation(), &baseFont_accessors);
  +        getSetInfoDict.insert(blockquoteTag.localName().implementation(), &blockQuote_accessors); 
  +        getSetInfoDict.insert(bodyTag.localName().implementation(), &body_accessors);
  +        getSetInfoDict.insert(brTag.localName().implementation(), &br_accessors);
  +        getSetInfoDict.insert(buttonTag.localName().implementation(), &button_accessors);
  +        getSetInfoDict.insert(canvasTag.localName().implementation(), &canvas_accessors);
  +        getSetInfoDict.insert(captionTag.localName().implementation(), &caption_accessors);
  +        getSetInfoDict.insert(colTag.localName().implementation(), &col_accessors);
  +        getSetInfoDict.insert(colgroupTag.localName().implementation(), &col_accessors);
  +        getSetInfoDict.insert(delTag.localName().implementation(), &mod_accessors);
  +        getSetInfoDict.insert(dirTag.localName().implementation(), &dir_accessors);
  +        getSetInfoDict.insert(divTag.localName().implementation(), &div_accessors);
  +        getSetInfoDict.insert(dlTag.localName().implementation(), &dl_accessors);
  +        getSetInfoDict.insert(fieldsetTag.localName().implementation(), &fieldSet_accessors);
  +        getSetInfoDict.insert(fontTag.localName().implementation(), &font_accessors);
  +        getSetInfoDict.insert(formTag.localName().implementation(), &form_accessors);
  +        getSetInfoDict.insert(frameTag.localName().implementation(), &frame_accessors);
  +        getSetInfoDict.insert(framesetTag.localName().implementation(), &frameSet_accessors);
  +        getSetInfoDict.insert(h1Tag.localName().implementation(), &heading_accessors);
  +        getSetInfoDict.insert(h2Tag.localName().implementation(), &heading_accessors);
  +        getSetInfoDict.insert(h3Tag.localName().implementation(), &heading_accessors);
  +        getSetInfoDict.insert(h4Tag.localName().implementation(), &heading_accessors);
  +        getSetInfoDict.insert(h5Tag.localName().implementation(), &heading_accessors);
  +        getSetInfoDict.insert(h6Tag.localName().implementation(), &heading_accessors);
  +        getSetInfoDict.insert(headTag.localName().implementation(), &head_accessors);
  +        getSetInfoDict.insert(hrTag.localName().implementation(), &hr_accessors); 
  +        getSetInfoDict.insert(htmlTag.localName().implementation(), &html_accessors);
  +        getSetInfoDict.insert(iframeTag.localName().implementation(), &iFrame_accessors);
  +        getSetInfoDict.insert(imgTag.localName().implementation(), &img_accessors);
  +        getSetInfoDict.insert(inputTag.localName().implementation(), &input_accessors);
  +        getSetInfoDict.insert(insTag.localName().implementation(), &mod_accessors);
  +        getSetInfoDict.insert(isindexTag.localName().implementation(), &isIndex_accessors);
  +        getSetInfoDict.insert(labelTag.localName().implementation(), &label_accessors);
  +        getSetInfoDict.insert(legendTag.localName().implementation(), &legend_accessors);
  +        getSetInfoDict.insert(liTag.localName().implementation(), &li_accessors);
  +        getSetInfoDict.insert(linkTag.localName().implementation(), &link_accessors);
  +        getSetInfoDict.insert(mapTag.localName().implementation(), &map_accessors);
  +        getSetInfoDict.insert(marqueeTag.localName().implementation(), &marquee_accessors);
  +        getSetInfoDict.insert(menuTag.localName().implementation(), &menu_accessors);
  +        getSetInfoDict.insert(metaTag.localName().implementation(), &meta_accessors);
  +        getSetInfoDict.insert(objectTag.localName().implementation(), &object_accessors);
  +        getSetInfoDict.insert(olTag.localName().implementation(), &ol_accessors);
  +        getSetInfoDict.insert(optionTag.localName().implementation(), &option_accessors);
  +        getSetInfoDict.insert(optgroupTag.localName().implementation(), &optGroup_accessors);
  +        getSetInfoDict.insert(pTag.localName().implementation(), &p_accessors);
  +        getSetInfoDict.insert(paramTag.localName().implementation(), &param_accessors);
  +        getSetInfoDict.insert(preTag.localName().implementation(), &pre_accessors);
  +        getSetInfoDict.insert(qTag.localName().implementation(), &q_accessors);
  +        getSetInfoDict.insert(scriptTag.localName().implementation(), &script_accessors);
  +        getSetInfoDict.insert(selectTag.localName().implementation(), &select_accessors);
  +        getSetInfoDict.insert(styleTag.localName().implementation(), &style_accessors);
  +        getSetInfoDict.insert(tableTag.localName().implementation(), &table_accessors);
  +        getSetInfoDict.insert(tbodyTag.localName().implementation(), &tablesection_accessors);
  +        getSetInfoDict.insert(tdTag.localName().implementation(), &tablecell_accessors);
  +        getSetInfoDict.insert(textareaTag.localName().implementation(), &textArea_accessors);
  +        getSetInfoDict.insert(thTag.localName().implementation(), &tablecell_accessors);
  +        getSetInfoDict.insert(theadTag.localName().implementation(), &tablesection_accessors);
  +        getSetInfoDict.insert(tfootTag.localName().implementation(), &tablesection_accessors);
  +        getSetInfoDict.insert(titleTag.localName().implementation(), &title_accessors);
  +        getSetInfoDict.insert(trTag.localName().implementation(), &tr_accessors);
  +        getSetInfoDict.insert(ulTag.localName().implementation(), &ul_accessors);
       }
       
       HTMLElementImpl* element = static_cast<HTMLElementImpl*>(impl());
  @@ -1305,7 +1305,7 @@
       HTMLElementImpl &element = *static_cast<HTMLElementImpl *>(impl());
   
       // First look at dynamic properties
  -    if (element.hasLocalName(HTMLTags::form())) {
  +    if (element.hasLocalName(formTag)) {
           HTMLFormElementImpl &form = static_cast<HTMLFormElementImpl &>(element);
           // Check if we're retrieving an element (by index or by name)
           bool ok;
  @@ -1321,7 +1321,7 @@
               return true;
           }
       }
  -    else if (element.hasLocalName(HTMLTags::select())) {
  +    else if (element.hasLocalName(selectTag)) {
           HTMLSelectElementImpl &select = static_cast<HTMLSelectElementImpl &>(element);
           bool ok;
           uint u = propertyName.toULong(&ok);
  @@ -1331,9 +1331,9 @@
               return true;
           }
       }
  -    else if (element.hasLocalName(HTMLTags::frameset())) {
  +    else if (element.hasLocalName(framesetTag)) {
           NodeImpl *frame = element.children()->namedItem(propertyName.string());
  -        if (frame && frame->hasTagName(HTMLTags::frame())) {
  +        if (frame && frame->hasTagName(frameTag)) {
               DocumentImpl* doc = static_cast<HTMLFrameElementImpl *>(frame)->contentDocument();
               if (doc) {
                   KHTMLPart* part = doc->part();
  @@ -1347,7 +1347,7 @@
               }
           }
       }
  -    else if (element.hasLocalName(HTMLTags::frame()) || element.hasLocalName(HTMLTags::iframe())) {
  +    else if (element.hasLocalName(frameTag) || element.hasLocalName(iframeTag)) {
           DocumentImpl* doc = static_cast<HTMLFrameElementImpl &>(element).contentDocument();
           if (doc) {
               KHTMLPart* part = doc->part();
  @@ -1361,8 +1361,8 @@
           }
       }
   #if APPLE_CHANGES
  -    else if (element.hasLocalName(HTMLTags::embed()) || element.hasLocalName(HTMLTags::object()) ||
  -             element.hasLocalName(HTMLTags::applet())) {
  +    else if (element.hasLocalName(embedTag) || element.hasLocalName(objectTag) ||
  +             element.hasLocalName(appletTag)) {
           if (propertyName == "__apple_runtime_object") {
   	    result = getRuntimeObject(exec,&element);
               return true;
  @@ -1395,9 +1395,9 @@
   bool KJS::HTMLElement::implementsCall() const
   {
       HTMLElementImpl *element = static_cast<HTMLElementImpl *>(impl());
  -    if (element->hasTagName(HTMLTags::embed()) ||
  -        element->hasTagName(HTMLTags::object()) ||
  -        element->hasTagName(HTMLTags::applet())) {
  +    if (element->hasTagName(embedTag) ||
  +        element->hasTagName(objectTag) ||
  +        element->hasTagName(appletTag)) {
           DocumentImpl* doc = element->getDocument();
           KJSProxy *proxy = KJSProxy::proxy(doc->part());
           ExecState *exec = proxy->interpreter()->globalExec();
  @@ -1413,9 +1413,9 @@
   Value KJS::HTMLElement::call(ExecState *exec, Object &thisObj, const List&args)
   {
       HTMLElementImpl *element = static_cast<HTMLElementImpl *>(impl());
  -    if (element->hasTagName(HTMLTags::embed()) ||
  -        element->hasTagName(HTMLTags::object()) ||
  -        element->hasTagName(HTMLTags::applet())) {
  +    if (element->hasTagName(embedTag) ||
  +        element->hasTagName(objectTag) ||
  +        element->hasTagName(appletTag)) {
           Value runtimeObject = getRuntimeObject(exec,element);
           if (!runtimeObject.isNull()) {
               ObjectImp *imp = static_cast<ObjectImp *>(runtimeObject.imp());
  @@ -2261,7 +2261,7 @@
   #endif
       HTMLElementImpl &element = *static_cast<HTMLElementImpl *>(impl());
       // First look at dynamic properties - keep this in sync with tryGet
  -    if (element.hasLocalName(HTMLTags::form())) {
  +    if (element.hasLocalName(formTag)) {
           HTMLFormElementImpl &form = static_cast<HTMLFormElementImpl &>(element);
           // Check if we're retrieving an element (by index or by name)
           bool ok;
  @@ -2271,14 +2271,14 @@
           if (form.elements()->namedItem(propertyName.string()))
               return true;
       }
  -    else if (element.hasLocalName(HTMLTags::select())) {
  +    else if (element.hasLocalName(selectTag)) {
           HTMLSelectElementImpl &select = static_cast<HTMLSelectElementImpl &>(element);
           bool ok;
           uint u = propertyName.toULong(&ok);
           if (ok && select.optionsHTMLCollection()->item(u))
               return true;
       }
  -    else if (element.hasLocalName(HTMLTags::input())) {
  +    else if (element.hasLocalName(inputTag)) {
           HTMLInputElementImpl &input = static_cast<HTMLInputElementImpl &>(element);
           const HashTable* table = classInfo()->propHashTable;
           const HashEntry* entry = Lookup::findEntry(table, propertyName);
  @@ -2299,7 +2299,7 @@
   
   UString KJS::HTMLElement::toString(ExecState *exec) const
   {
  -    if (impl()->hasTagName(HTMLTags::a()))
  +    if (impl()->hasTagName(aTag))
           return UString(static_cast<const HTMLAnchorElementImpl *>(impl())->href());
       else
           return DOMElement::toString(exec);
  @@ -2309,9 +2309,9 @@
   {
       if (element->isGenericFormElement())
           return static_cast<HTMLGenericFormElementImpl *>(element)->form();
  -    if (element->hasTagName(HTMLTags::label()))
  +    if (element->hasTagName(labelTag))
           return static_cast<HTMLLabelElementImpl *>(element)->form();
  -    if (element->hasTagName(HTMLTags::object()))
  +    if (element->hasTagName(objectTag))
           return static_cast<HTMLObjectElementImpl *>(element)->form();
   
       return 0;
  @@ -2334,7 +2334,7 @@
       scope.push(static_cast<ObjectImp *>(getDOMNode(exec, form)));
     else {
       NodeImpl *form = element->parentNode();
  -    while (form && !form->hasTagName(HTMLTags::form()))
  +    while (form && !form->hasTagName(formTag))
         form = form->parentNode();
       
       if (form)
  @@ -2363,7 +2363,7 @@
       DOMExceptionTranslator exception(exec);
       HTMLElementImpl &element = *static_cast<HTMLElementImpl *>(static_cast<HTMLElement *>(thisObj.imp())->impl());
   
  -    if (element.hasLocalName(HTMLTags::form())) {
  +    if (element.hasLocalName(formTag)) {
           HTMLFormElementImpl &form = static_cast<HTMLFormElementImpl &>(element);
           if (id == KJS::HTMLElement::FormSubmit) {
               form.submit();
  @@ -2374,7 +2374,7 @@
               return Undefined();
           }
       }
  -    else if (element.hasLocalName(HTMLTags::select())) {
  +    else if (element.hasLocalName(selectTag)) {
           HTMLSelectElementImpl &select = static_cast<HTMLSelectElementImpl &>(element);
           if (id == KJS::HTMLElement::SelectAdd) {
               select.add(toHTMLElement(args[0]), toHTMLElement(args[1]));
  @@ -2393,7 +2393,7 @@
               return Undefined();
           }
       }
  -    else if (element.hasLocalName(HTMLTags::input())) {
  +    else if (element.hasLocalName(inputTag)) {
           HTMLInputElementImpl &input = static_cast<HTMLInputElementImpl &>(element);
           if (id == KJS::HTMLElement::InputBlur) {
               input.blur();
  @@ -2416,7 +2416,7 @@
               return Undefined();
           }
       }
  -    else if (element.hasLocalName(HTMLTags::button())) {
  +    else if (element.hasLocalName(buttonTag)) {
           HTMLButtonElementImpl &button = static_cast<HTMLButtonElementImpl &>(element);
           if (id == KJS::HTMLElement::ButtonBlur) {
               button.blur();
  @@ -2427,21 +2427,21 @@
               return Undefined();
           }
       }
  -    else if (element.hasLocalName(HTMLTags::label())) {
  +    else if (element.hasLocalName(labelTag)) {
           HTMLLabelElementImpl &label = static_cast<HTMLLabelElementImpl &>(element);
           if (id == KJS::HTMLElement::LabelFocus) {
               label.focus();
               return Undefined();
           }
       }
  -    else if (element.hasLocalName(HTMLTags::legend())) {
  +    else if (element.hasLocalName(legendTag)) {
           HTMLLegendElementImpl &legend = static_cast<HTMLLegendElementImpl &>(element);
           if (id == KJS::HTMLElement::LegendFocus) {
               legend.focus();
               return Undefined();
           }
       }
  -    else if (element.hasLocalName(HTMLTags::textarea())) {
  +    else if (element.hasLocalName(textareaTag)) {
           HTMLTextAreaElementImpl &textarea = static_cast<HTMLTextAreaElementImpl &>(element);
           if (id == KJS::HTMLElement::TextAreaBlur) {
               textarea.blur();
  @@ -2460,7 +2460,7 @@
               return Undefined();
           }
       }
  -    else if (element.hasLocalName(HTMLTags::a())) {
  +    else if (element.hasLocalName(aTag)) {
           HTMLAnchorElementImpl &anchor = static_cast<HTMLAnchorElementImpl &>(element);
           if (id == KJS::HTMLElement::AnchorBlur) {
               anchor.blur();
  @@ -2473,7 +2473,7 @@
           else if (id == KJS::HTMLElement::AnchorToString)
               return String(thisObj.toString(exec));
       }
  -    else if (element.hasLocalName(HTMLTags::table())) {
  +    else if (element.hasLocalName(tableTag)) {
           HTMLTableElementImpl &table = static_cast<HTMLTableElementImpl &>(element);
           if (id == KJS::HTMLElement::TableCreateTHead)
               return getDOMNode(exec,table.createTHead());
  @@ -2500,9 +2500,9 @@
               return Undefined();
           }
       }
  -    else if (element.hasLocalName(HTMLTags::thead()) ||
  -             element.hasLocalName(HTMLTags::tbody()) ||
  -             element.hasLocalName(HTMLTags::tfoot())) {
  +    else if (element.hasLocalName(theadTag) ||
  +             element.hasLocalName(tbodyTag) ||
  +             element.hasLocalName(tfootTag)) {
           HTMLTableSectionElementImpl &tableSection = static_cast<HTMLTableSectionElementImpl &>(element);
           if (id == KJS::HTMLElement::TableSectionInsertRow)
               return getDOMNode(exec, tableSection.insertRow(args[0].toInt32(exec), exception));
  @@ -2511,7 +2511,7 @@
               return Undefined();
           }
       }
  -    else if (element.hasLocalName(HTMLTags::tr())) {
  +    else if (element.hasLocalName(trTag)) {
           HTMLTableRowElementImpl &tableRow = static_cast<HTMLTableRowElementImpl &>(element);
           if (id == KJS::HTMLElement::TableRowInsertCell)
               return getDOMNode(exec,tableRow.insertCell(args[0].toInt32(exec), exception));
  @@ -2520,7 +2520,7 @@
               return Undefined();
           }
       }
  -    else if (element.hasLocalName(HTMLTags::marquee())) {
  +    else if (element.hasLocalName(marqueeTag)) {
           if (id == KJS::HTMLElement::MarqueeStart && element.renderer() && 
               element.renderer()->layer() &&
               element.renderer()->layer()->marquee()) {
  @@ -2535,7 +2535,7 @@
           }
       }
   #if APPLE_CHANGES
  -    else if (element.hasLocalName(HTMLTags::canvas())) {
  +    else if (element.hasLocalName(canvasTag)) {
           if (id == KJS::HTMLElement::GetContext) {
               if (args.size() == 0 || (args.size() == 1 && args[0].toString(exec).qstring().lower() == "2d")) {
                   return Object(new Context2D(&element));
  @@ -2560,7 +2560,7 @@
                     << " str=" << str.string() << endl;
   #endif
       // First look at dynamic properties
  -    if (element.hasLocalName(HTMLTags::select())) {
  +    if (element.hasLocalName(selectTag)) {
           HTMLSelectElementImpl &select = static_cast<HTMLSelectElementImpl &>(element);
           bool ok;
           /*uint u =*/ propertyName.toULong(&ok);
  @@ -2572,9 +2572,9 @@
           }
       }
   #if APPLE_CHANGES
  -    else if (element.hasLocalName(HTMLTags::embed()) ||
  -             element.hasLocalName(HTMLTags::object()) ||
  -             element.hasLocalName(HTMLTags::applet())) {
  +    else if (element.hasLocalName(embedTag) ||
  +             element.hasLocalName(objectTag) ||
  +             element.hasLocalName(appletTag)) {
   	Value runtimeObject = getRuntimeObject(exec,&element);
   	if (!runtimeObject.isNull()) {
   	    ObjectImp *imp = static_cast<ObjectImp *>(runtimeObject.imp());
  @@ -3313,7 +3313,7 @@
   HTMLTableCaptionElementImpl *toHTMLTableCaptionElement(ValueImp *val)
   {
       HTMLElementImpl *e = toHTMLElement(val);
  -    if (e && e->hasTagName(HTMLTags::caption()))
  +    if (e && e->hasTagName(captionTag))
           return static_cast<HTMLTableCaptionElementImpl *>(e);
       return 0;
   }
  @@ -3321,7 +3321,7 @@
   HTMLTableSectionElementImpl *toHTMLTableSectionElement(ValueImp *val)
   {
       HTMLElementImpl *e = toHTMLElement(val);
  -    if (e && (e->hasTagName(HTMLTags::thead()) || e->hasTagName(HTMLTags::tbody()) || e->hasTagName(HTMLTags::tfoot())))
  +    if (e && (e->hasTagName(theadTag) || e->hasTagName(tbodyTag) || e->hasTagName(tfootTag)))
           return static_cast<HTMLTableSectionElementImpl *>(e);
       return 0;
   }
  @@ -3371,10 +3371,10 @@
   
       // NON-STANDARD options.selectedIndex
       NodeImpl *option = collection.item(0);
  -    if (option->hasTagName(HTMLTags::option())) {
  +    if (option->hasTagName(optionTag)) {
         NodeImpl *select = option;
         while ((select = select->parentNode()))
  -        if (select->hasTagName(HTMLTags::select())) {
  +        if (select->hasTagName(selectTag)) {
   	  result =  Number(static_cast<HTMLSelectElementImpl *>(select)->selectedIndex());
             return true;
           }
  @@ -3559,7 +3559,7 @@
   
     // is v an option element ?
     NodeImpl *option = toNode(value);
  -  if (!option || !option->hasTagName(HTMLTags::option()))
  +  if (!option || !option->hasTagName(optionTag))
       return;
   
     int exception = 0;
  
  
  
  1.9       +28 -29    WebCore/khtml/editing/apply_style_command.cpp
  
  Index: apply_style_command.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/apply_style_command.cpp,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- apply_style_command.cpp	29 Jul 2005 23:42:45 -0000	1.8
  +++ apply_style_command.cpp	30 Jul 2005 02:33:14 -0000	1.9
  @@ -65,8 +65,7 @@
   using DOM::Position;
   using DOM::RangeImpl;
   using DOM::TextImpl;
  -using DOM::HTMLTags;
  -using DOM::HTMLAttributes;
  +using namespace HTMLNames;
   
   namespace khtml {
   
  @@ -251,44 +250,44 @@
           return false;
   
       const HTMLElementImpl *elem = static_cast<const HTMLElementImpl *>(node);
  -    return elem->hasLocalName(HTMLAttributes::span()) && elem->getAttribute(HTMLAttributes::classAttr()) == styleSpanClassString();
  +    return elem->hasLocalName(spanAttr) && elem->getAttribute(classAttr) == styleSpanClassString();
   }
   
   static bool isEmptyStyleSpan(const NodeImpl *node)
   {
  -    if (!node || !node->isHTMLElement() || !node->hasTagName(HTMLTags::span()))
  +    if (!node || !node->isHTMLElement() || !node->hasTagName(spanTag))
           return false;
   
       const HTMLElementImpl *elem = static_cast<const HTMLElementImpl *>(node);
       CSSMutableStyleDeclarationImpl *inlineStyleDecl = elem->inlineStyleDecl();
  -    return (!inlineStyleDecl || inlineStyleDecl->length() == 0) && elem->getAttribute(HTMLAttributes::classAttr()) == styleSpanClassString();
  +    return (!inlineStyleDecl || inlineStyleDecl->length() == 0) && elem->getAttribute(classAttr) == styleSpanClassString();
   }
   
   static bool isEmptyFontTag(const NodeImpl *node)
   {
  -    if (!node || !node->hasTagName(HTMLTags::font()))
  +    if (!node || !node->hasTagName(fontTag))
           return false;
   
       const ElementImpl *elem = static_cast<const ElementImpl *>(node);
       NamedAttrMapImpl *map = elem->attributes(true); // true for read-only
  -    return (!map || map->length() == 1) && elem->getAttribute(HTMLAttributes::classAttr()) == styleSpanClassString();
  +    return (!map || map->length() == 1) && elem->getAttribute(classAttr) == styleSpanClassString();
   }
   
   static ElementImpl *createFontElement(DocumentImpl *document)
   {
       int exceptionCode = 0;
  -    ElementImpl *fontNode = document->createElementNS(HTMLTags::xhtmlNamespaceURI(), "font", exceptionCode);
  +    ElementImpl *fontNode = document->createElementNS(xhtmlNamespaceURI, "font", exceptionCode);
       ASSERT(exceptionCode == 0);
  -    fontNode->setAttribute(HTMLAttributes::classAttr(), styleSpanClassString());
  +    fontNode->setAttribute(classAttr, styleSpanClassString());
       return fontNode;
   }
   
   ElementImpl *createStyleSpanElement(DocumentImpl *document)
   {
       int exceptionCode = 0;
  -    ElementImpl *styleElement = document->createElementNS(HTMLTags::xhtmlNamespaceURI(), "span", exceptionCode);
  +    ElementImpl *styleElement = document->createElementNS(xhtmlNamespaceURI, "span", exceptionCode);
       ASSERT(exceptionCode == 0);
  -    styleElement->setAttribute(HTMLAttributes::classAttr(), styleSpanClassString());
  +    styleElement->setAttribute(classAttr, styleSpanClassString());
       return styleElement;
   }
   
  @@ -498,10 +497,10 @@
               QString desiredFontSizeString = QString::number(desiredFontSize);
               desiredFontSizeString += "px";
               inlineStyleDecl->setProperty(CSS_PROP_FONT_SIZE, desiredFontSizeString, false, false);
  -            setNodeAttribute(elem, HTMLAttributes::style(), inlineStyleDecl->cssText());
  +            setNodeAttribute(elem, styleAttr, inlineStyleDecl->cssText());
           }
           if (inlineStyleDecl->length() == 0) {
  -            removeNodeAttribute(elem, HTMLAttributes::style());
  +            removeNodeAttribute(elem, styleAttr);
               if (isEmptyStyleSpan(elem))
                   emptySpans.append(elem);
           }
  @@ -588,7 +587,7 @@
                       // the current group.
                       if (node == end.node() || 
                           runStart->parentNode() != next->parentNode() || 
  -                        (next->isElementNode() && !next->hasTagName(HTMLTags::br())) || 
  +                        (next->isElementNode() && !next->hasTagName(brTag)) || 
                           (next->renderer() && !next->renderer()->isInline()))
                           break;
                       node = next;
  @@ -613,11 +612,11 @@
       for (QValueListConstIterator<CSSProperty> it = style->valuesIterator(); it != end; ++it) {
           switch ((*it).id()) {
               case CSS_PROP_FONT_WEIGHT:
  -                if (elem->hasLocalName(HTMLTags::b()))
  +                if (elem->hasLocalName(bTag))
                       return true;
                   break;
               case CSS_PROP_FONT_STYLE:
  -                if (elem->hasLocalName(HTMLTags::i()))
  +                if (elem->hasLocalName(iTag))
                       return true;
           }
       }
  @@ -640,7 +639,7 @@
       ASSERT(style);
       ASSERT(elem);
   
  -    if (!elem->hasLocalName(HTMLTags::font()))
  +    if (!elem->hasLocalName(fontTag))
           return;
   
       int exceptionCode = 0;
  @@ -648,15 +647,15 @@
       for (QValueListConstIterator<CSSProperty> it = style->valuesIterator(); it != end; ++it) {
           switch ((*it).id()) {
               case CSS_PROP_COLOR:
  -                elem->removeAttribute(HTMLAttributes::color(), exceptionCode);
  +                elem->removeAttribute(colorAttr, exceptionCode);
                   ASSERT(exceptionCode == 0);
                   break;
               case CSS_PROP_FONT_FAMILY:
  -                elem->removeAttribute(HTMLAttributes::face(), exceptionCode);
  +                elem->removeAttribute(faceAttr, exceptionCode);
                   ASSERT(exceptionCode == 0);
                   break;
               case CSS_PROP_FONT_SIZE:
  -                elem->removeAttribute(HTMLAttributes::size(), exceptionCode);
  +                elem->removeAttribute(sizeAttr, exceptionCode);
                   ASSERT(exceptionCode == 0);
                   break;
           }
  @@ -825,7 +824,7 @@
           CSSMutableStyleDeclarationImpl *decl = element->inlineStyleDecl();
           if (decl)
               cssText += decl->cssText();
  -        setNodeAttribute(element, HTMLAttributes::style(), cssText);
  +        setNodeAttribute(element, styleAttr, cssText);
       }
   }
   
  @@ -1133,7 +1132,7 @@
           endOffset = parentLastOffset;
       }
   
  -    if (!endNode->isElementNode() || endNode->hasTagName(HTMLTags::br()))
  +    if (!endNode->isElementNode() || endNode->hasTagName(brTag))
           return false;
   
       NodeImpl *nextSibling = endNode->nextSibling();
  @@ -1243,7 +1242,7 @@
           CSSMutableStyleDeclarationImpl *decl = block->inlineStyleDecl();
           if (decl)
               cssText += decl->cssText();
  -        setNodeAttribute(block, HTMLAttributes::style(), cssText);
  +        setNodeAttribute(block, styleAttr, cssText);
       }
   }
   
  @@ -1264,32 +1263,32 @@
           ASSERT(exceptionCode == 0);
           insertNodeBefore(fontElement, startNode);
           if (styleChange.applyFontColor())
  -            fontElement->setAttribute(HTMLAttributes::color(), styleChange.fontColor());
  +            fontElement->setAttribute(colorAttr, styleChange.fontColor());
           if (styleChange.applyFontFace())
  -            fontElement->setAttribute(HTMLAttributes::face(), styleChange.fontFace());
  +            fontElement->setAttribute(faceAttr, styleChange.fontFace());
           if (styleChange.applyFontSize())
  -            fontElement->setAttribute(HTMLAttributes::size(), styleChange.fontSize());
  +            fontElement->setAttribute(sizeAttr, styleChange.fontSize());
           surroundNodeRangeWithElement(startNode, endNode, fontElement);
       }
   
       if (styleChange.cssStyle().length() > 0) {
           ElementImpl *styleElement = createStyleSpanElement(document());
           styleElement->ref();
  -        styleElement->setAttribute(HTMLAttributes::style(), styleChange.cssStyle());
  +        styleElement->setAttribute(styleAttr, styleChange.cssStyle());
           insertNodeBefore(styleElement, startNode);
           styleElement->deref();
           surroundNodeRangeWithElement(startNode, endNode, styleElement);
       }
   
       if (styleChange.applyBold()) {
  -        ElementImpl *boldElement = document()->createElementNS(HTMLTags::xhtmlNamespaceURI(), "b", exceptionCode);
  +        ElementImpl *boldElement = document()->createElementNS(xhtmlNamespaceURI, "b", exceptionCode);
           ASSERT(exceptionCode == 0);
           insertNodeBefore(boldElement, startNode);
           surroundNodeRangeWithElement(startNode, endNode, boldElement);
       }
   
       if (styleChange.applyItalic()) {
  -        ElementImpl *italicElement = document()->createElementNS(HTMLTags::xhtmlNamespaceURI(), "i", exceptionCode);
  +        ElementImpl *italicElement = document()->createElementNS(xhtmlNamespaceURI, "i", exceptionCode);
           ASSERT(exceptionCode == 0);
           insertNodeBefore(italicElement, startNode);
           surroundNodeRangeWithElement(startNode, endNode, italicElement);
  
  
  
  1.4       +2 -2      WebCore/khtml/editing/break_blockquote_command.cpp
  
  Index: break_blockquote_command.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/break_blockquote_command.cpp,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- break_blockquote_command.cpp	18 Jul 2005 21:52:20 -0000	1.3
  +++ break_blockquote_command.cpp	30 Jul 2005 02:33:14 -0000	1.4
  @@ -43,7 +43,7 @@
   using DOM::NodeImpl;
   using DOM::Position;
   using DOM::TextImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   
   namespace khtml {
   
  @@ -147,7 +147,7 @@
           bool startIsBR = false;
           if (startNode != topBlockquote) {
               NodeImpl *n = startNode;
  -            startIsBR = n->hasTagName(HTMLTags::br());
  +            startIsBR = n->hasTagName(brTag);
               if (startIsBR)
                   n = n->nextSibling();
               while (n) {
  
  
  
  1.7       +9 -10     WebCore/khtml/editing/composite_edit_command.cpp
  
  Index: composite_edit_command.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/composite_edit_command.cpp,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- composite_edit_command.cpp	18 Jul 2005 21:52:20 -0000	1.6
  +++ composite_edit_command.cpp	30 Jul 2005 02:33:14 -0000	1.7
  @@ -66,9 +66,8 @@
   using DOM::Position;
   using DOM::RangeImpl;
   using DOM::TextImpl;
  -using DOM::HTMLAttributes;
  -using DOM::HTMLTags;
   using DOM::QualifiedName;
  +using namespace HTMLNames;
   
   namespace khtml {
   
  @@ -129,14 +128,14 @@
   
   void CompositeEditCommand::insertNodeBefore(NodeImpl *insertChild, NodeImpl *refChild)
   {
  -    ASSERT(!refChild->hasTagName(HTMLTags::body()));
  +    ASSERT(!refChild->hasTagName(bodyTag));
       EditCommandPtr cmd(new InsertNodeBeforeCommand(document(), insertChild, refChild));
       applyCommandToComposite(cmd);
   }
   
   void CompositeEditCommand::insertNodeAfter(NodeImpl *insertChild, NodeImpl *refChild)
   {
  -    ASSERT(!refChild->hasTagName(HTMLTags::body()));
  +    ASSERT(!refChild->hasTagName(bodyTag));
       if (refChild->parentNode()->lastChild() == refChild) {
           appendNode(insertChild, refChild->parentNode());
       }
  @@ -496,7 +495,7 @@
           if (checkMe->isElementNode()) {
               ElementImpl *element = static_cast<ElementImpl *>(checkMe);
               if (element->enclosingBlockFlowElement() == node && 
  -                element->getAttribute(HTMLAttributes::classAttr()) == blockPlaceholderClassString()) {
  +                element->getAttribute(classAttr) == blockPlaceholderClassString()) {
                   return element;
               }
           }
  @@ -547,7 +546,7 @@
       //       additional level of quoting.
       NodeImpl *startBlock = paragraphStart.node()->enclosingBlockFlowElement();
       NodeImpl *newBlock = 0;
  -    if (startBlock->hasTagName(HTMLTags::body()) || (isMailBlockquote(startBlock) && paragraphStart.node() != startBlock))
  +    if (startBlock->hasTagName(bodyTag) || (isMailBlockquote(startBlock) && paragraphStart.node() != startBlock))
           newBlock = createDefaultParagraphElement(document());
       else
           newBlock = startBlock->cloneNode(false);
  @@ -557,10 +556,10 @@
           moveNode = moveNode->traverseNextNode();
       NodeImpl *endNode = paragraphEnd.node();
   
  -    if (paragraphStart.node()->hasTagName(HTMLTags::body())) {
  +    if (paragraphStart.node()->hasTagName(bodyTag)) {
           insertNodeAt(newBlock, paragraphStart.node(), 0);
       }
  -    else if (paragraphStart.node()->hasTagName(HTMLTags::br())) {
  +    else if (paragraphStart.node()->hasTagName(brTag)) {
           insertNodeAfter(newBlock, paragraphStart.node());
       }
       else {
  @@ -580,9 +579,9 @@
   ElementImpl *createBlockPlaceholderElement(DocumentImpl *document)
   {
       int exceptionCode = 0;
  -    ElementImpl *breakNode = document->createElementNS(HTMLTags::xhtmlNamespaceURI(), "br", exceptionCode);
  +    ElementImpl *breakNode = document->createElementNS(xhtmlNamespaceURI, "br", exceptionCode);
       ASSERT(exceptionCode == 0);
  -    breakNode->setAttribute(HTMLAttributes::classAttr(), blockPlaceholderClassString());
  +    breakNode->setAttribute(classAttr, blockPlaceholderClassString());
       return breakNode;
   }
   
  
  
  
  1.14      +13 -13    WebCore/khtml/editing/delete_selection_command.cpp
  
  Index: delete_selection_command.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/delete_selection_command.cpp,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- delete_selection_command.cpp	29 Jul 2005 23:42:45 -0000	1.13
  +++ delete_selection_command.cpp	30 Jul 2005 02:33:14 -0000	1.14
  @@ -54,7 +54,7 @@
   using DOM::Position;
   using DOM::RangeImpl;
   using DOM::TextImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   
   namespace khtml {
   
  @@ -64,12 +64,12 @@
       // but here we also have to peek at the type of DOM node?
       RenderObject *r = node->renderer();
       return (r && r->isListItem())
  -        || node->hasTagName(HTMLTags::ol())
  -        || node->hasTagName(HTMLTags::ul())
  -        || node->hasTagName(HTMLTags::dd())
  -        || node->hasTagName(HTMLTags::dt())
  -        || node->hasTagName(HTMLTags::dir())
  -        || node->hasTagName(HTMLTags::menu());
  +        || node->hasTagName(olTag)
  +        || node->hasTagName(ulTag)
  +        || node->hasTagName(ddTag)
  +        || node->hasTagName(dtTag)
  +        || node->hasTagName(dirTag)
  +        || node->hasTagName(menuTag);
   }
   
   static int maxDeepOffset(NodeImpl *n)
  @@ -296,8 +296,8 @@
   bool DeleteSelectionCommand::handleSpecialCaseBRDelete()
   {
       // Check for special-case where the selection contains only a BR on a line by itself after another BR.
  -    bool upstreamStartIsBR = m_startNode->hasTagName(HTMLTags::br());
  -    bool downstreamStartIsBR = m_downstreamStart.node()->hasTagName(HTMLTags::br());
  +    bool upstreamStartIsBR = m_startNode->hasTagName(brTag);
  +    bool downstreamStartIsBR = m_downstreamStart.node()->hasTagName(brTag);
       bool isBROnLineByItself = upstreamStartIsBR && downstreamStartIsBR && m_downstreamStart.node() == m_upstreamEnd.node();
       if (isBROnLineByItself) {
           m_endingPosition = Position(m_downstreamStart.node()->parentNode(), m_downstreamStart.node()->nodeIndex());
  @@ -346,11 +346,11 @@
       // end of a block other than the block containing the selection start, then do not delete the 
       // start block, otherwise delete the start block.
       // A similar case is provided to cover selections starting in BR elements.
  -    if (startOffset == 1 && m_startNode && m_startNode->hasTagName(HTMLTags::br())) {
  +    if (startOffset == 1 && m_startNode && m_startNode->hasTagName(brTag)) {
           setStartNode(m_startNode->traverseNextNode());
           startOffset = 0;
       }
  -    if (m_startBlock != m_endBlock && startOffset == 0 && m_startNode && m_startNode->hasTagName(HTMLTags::br()) && endAtEndOfBlock) {
  +    if (m_startBlock != m_endBlock && startOffset == 0 && m_startNode && m_startNode->hasTagName(brTag) && endAtEndOfBlock) {
           // Don't delete the BR element
           setStartNode(m_startNode->traverseNextNode());
       }
  @@ -572,7 +572,7 @@
           NodeImpl *moveNode = node;
           node = node->nextSibling();
           removeNode(moveNode);
  -        if (moveNode->hasTagName(HTMLTags::br()) && !moveNode->renderer()) {
  +        if (moveNode->hasTagName(brTag) && !moveNode->renderer()) {
               // Just remove this node, and don't put it back.
               // If the BR was not rendered (since it was at the end of a block, for instance), 
               // putting it back in the document might make it appear, and that is not desirable.
  @@ -583,7 +583,7 @@
           else
               insertNodeAfter(moveNode, refNode);
           refNode = moveNode;
  -        if (moveNode->hasTagName(HTMLTags::br()))
  +        if (moveNode->hasTagName(brTag))
               break;
       }
   
  
  
  
  1.254     +5 -5      WebCore/khtml/editing/htmlediting.cpp
  
  Index: htmlediting.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/htmlediting.cpp,v
  retrieving revision 1.253
  retrieving revision 1.254
  diff -u -r1.253 -r1.254
  --- htmlediting.cpp	29 Jul 2005 23:42:46 -0000	1.253
  +++ htmlediting.cpp	30 Jul 2005 02:33:14 -0000	1.254
  @@ -81,7 +81,7 @@
   using DOM::RangeImpl;
   using DOM::TextImpl;
   using DOM::TreeWalkerImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   
   #if APPLE_CHANGES
   #include "KWQAssertions.h"
  @@ -138,7 +138,7 @@
       if (n->isLink())
           return true;
   
  -    if (n->hasTagName(HTMLTags::ul()) || n->hasTagName(HTMLTags::ol()) || n->hasTagName(HTMLTags::dl()))
  +    if (n->hasTagName(ulTag) || n->hasTagName(olTag) || n->hasTagName(dlTag))
           return true;
   
       RenderObject *renderer = n->renderer();
  @@ -273,7 +273,7 @@
       // We would need this margin-zeroing code back if we ever return to using <p> elements for default paragraphs.
       // static const DOMString defaultParagraphStyle("margin-top: 0; margin-bottom: 0");    
       int exceptionCode = 0;
  -    ElementImpl *element = document->createElementNS(HTMLTags::xhtmlNamespaceURI(), "div", exceptionCode);
  +    ElementImpl *element = document->createElementNS(xhtmlNamespaceURI, "div", exceptionCode);
       ASSERT(exceptionCode == 0);
       return element;
   }
  @@ -281,7 +281,7 @@
   ElementImpl *createBreakElement(DocumentImpl *document)
   {
       int exceptionCode = 0;
  -    ElementImpl *breakNode = document->createElementNS(HTMLTags::xhtmlNamespaceURI(), "br", exceptionCode);
  +    ElementImpl *breakNode = document->createElementNS(xhtmlNamespaceURI, "br", exceptionCode);
       ASSERT(exceptionCode == 0);
       return breakNode;
   }
  @@ -353,7 +353,7 @@
   
   bool isMailBlockquote(const NodeImpl *node)
   {
  -    if (!node || !node->renderer() || !node->isElementNode() && !node->hasTagName(HTMLTags::blockquote()))
  +    if (!node || !node->renderer() || !node->isElementNode() && !node->hasTagName(blockquoteTag))
           return false;
           
       return static_cast<const ElementImpl *>(node)->getAttribute("type") == "cite";
  
  
  
  1.4       +3 -3      WebCore/khtml/editing/insert_line_break_command.cpp
  
  Index: insert_line_break_command.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/insert_line_break_command.cpp,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- insert_line_break_command.cpp	18 Jul 2005 21:52:21 -0000	1.3
  +++ insert_line_break_command.cpp	30 Jul 2005 02:33:14 -0000	1.4
  @@ -50,7 +50,7 @@
   using DOM::Position;
   using DOM::TextImpl;
   using DOM::CSSMutableStyleDeclarationImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   
   namespace khtml {
   
  @@ -112,13 +112,13 @@
           // This makes the "real" BR we want to insert appear in the rendering without any 
           // significant side effects (and no real worries either since you can't arrow past 
           // this extra one.
  -        if (pos.node()->hasTagName(HTMLTags::br()) && pos.offset() == 0) {
  +        if (pos.node()->hasTagName(brTag) && pos.offset() == 0) {
               // Already placed in a trailing BR. Insert "real" BR before it and leave the selection alone.
               insertNodeBefore(nodeToInsert, pos.node());
           }
           else {
               NodeImpl *next = pos.node()->traverseNextNode();
  -            bool hasTrailingBR = next && next->hasTagName(HTMLTags::br()) && pos.node()->enclosingBlockFlowElement() == next->enclosingBlockFlowElement();
  +            bool hasTrailingBR = next && next->hasTagName(brTag) && pos.node()->enclosingBlockFlowElement() == next->enclosingBlockFlowElement();
               insertNodeAfterPosition(nodeToInsert, pos);
               if (hasTrailingBR) {
                   setEndingSelection(Selection(Position(next, 0), DOWNSTREAM));
  
  
  
  1.4       +2 -2      WebCore/khtml/editing/insert_paragraph_separator_command.cpp
  
  Index: insert_paragraph_separator_command.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/insert_paragraph_separator_command.cpp,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- insert_paragraph_separator_command.cpp	18 Jul 2005 21:52:21 -0000	1.3
  +++ insert_paragraph_separator_command.cpp	30 Jul 2005 02:33:14 -0000	1.4
  @@ -50,7 +50,7 @@
   using DOM::NodeImpl;
   using DOM::Position;
   using DOM::TextImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   
   namespace khtml {
   
  @@ -214,7 +214,7 @@
       // then this <br> will collapse away when we add a block after it. Add an extra <br>.
       if (!document()->inStrictMode()) {
           Position upstreamPos = pos.upstream();
  -        if (upstreamPos.node()->hasTagName(HTMLTags::br()))
  +        if (upstreamPos.node()->hasTagName(brTag))
               insertNodeAfter(createBreakElement(document()), upstreamPos.node());
       }
       
  
  
  
  1.28      +11 -12    WebCore/khtml/editing/markup.cpp
  
  Index: markup.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/markup.cpp,v
  retrieving revision 1.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- markup.cpp	29 Jul 2005 23:42:46 -0000	1.27
  +++ markup.cpp	30 Jul 2005 02:33:14 -0000	1.28
  @@ -46,15 +46,14 @@
   using DOM::DOMString;
   using DOM::ElementImpl;
   using DOM::TagStatusForbidden;
  -using DOM::HTMLAttributes;
   using DOM::HTMLElementImpl;
  -using DOM::HTMLTags;
   using DOM::NamedAttrMapImpl;
   using DOM::Node;
   using DOM::NodeImpl;
   using DOM::Position;
   using DOM::RangeImpl;
   using DOM::TextImpl;
  +using namespace HTMLNames;
   
   #if APPLE_CHANGES
   #include "KWQAssertions.h"
  @@ -176,10 +175,10 @@
       switch (type) {
           case Node::TEXT_NODE: {
               if (node->parentNode()) {
  -                if (node->parentNode()->hasTagName(HTMLTags::pre()) ||
  -                    node->parentNode()->hasTagName(HTMLTags::script()) ||
  -                    node->parentNode()->hasTagName(HTMLTags::style()) ||
  -                    node->parentNode()->hasTagName(HTMLTags::textarea()))
  +                if (node->parentNode()->hasTagName(preTag) ||
  +                    node->parentNode()->hasTagName(scriptTag) ||
  +                    node->parentNode()->hasTagName(styleTag) ||
  +                    node->parentNode()->hasTagName(textareaTag))
                       return stringValueForRange(node, range);
               }
               QString markup = annotate ? escapeHTML(renderedText(node, range)) : escapeHTML(stringValueForRange(node, range));            
  @@ -224,13 +223,13 @@
                   unsigned long length = attrs->length();
                   if (length == 0 && additionalStyle.length() > 0) {
                       // FIXME: Handle case where additionalStyle has illegal characters in it, like "
  -                    markup += " " +  HTMLAttributes::style().localName().string() + "=\"" + additionalStyle.string() + "\"";
  +                    markup += " " +  styleAttr.localName().string() + "=\"" + additionalStyle.string() + "\"";
                   }
                   else {
                       for (unsigned int i=0; i<length; i++) {
                           AttributeImpl *attr = attrs->attributeItem(i);
                           DOMString value = attr->value();
  -                        if (attr->name() == HTMLAttributes::style() && additionalStyle.length() > 0)
  +                        if (attr->name() == styleAttr && additionalStyle.length() > 0)
                               value += "; " + additionalStyle;
                           // FIXME: Handle case where value has illegal characters in it, like "
                           // FIXME: Namespaces! XML! Ack!
  @@ -422,8 +421,8 @@
               bool breakAtEnd = false;
               if (commonAncestorBlock == ancestor) {
                   // Include ancestors that are required to retain the appearance of the copied markup.
  -                if (ancestor->hasTagName(HTMLTags::pre()) || ancestor->hasTagName(HTMLTags::table()) ||
  -                    ancestor->hasTagName(HTMLTags::ol()) || ancestor->hasTagName(HTMLTags::ul())) {
  +                if (ancestor->hasTagName(preTag) || ancestor->hasTagName(tableTag) ||
  +                    ancestor->hasTagName(olTag) || ancestor->hasTagName(ulTag)) {
                       breakAtEnd = true;
                   } else {
                       break;
  @@ -589,10 +588,10 @@
               ElementImpl *element;
               if (s.isEmpty() && list.isEmpty()) {
                   // For last line, use the "magic BR" rather than a P.
  -                element = document->createElementNS(HTMLTags::xhtmlNamespaceURI(), "br", exceptionCode);
  +                element = document->createElementNS(xhtmlNamespaceURI, "br", exceptionCode);
                   ASSERT(exceptionCode == 0);
                   element->ref();
  -                element->setAttribute(HTMLAttributes::classAttr(), AppleInterchangeNewline);            
  +                element->setAttribute(classAttr, AppleInterchangeNewline);            
               } else {
                   element = createDefaultParagraphElement(document);
                   createParagraphContentsFromString(document, element, s);
  
  
  
  1.9       +29 -30    WebCore/khtml/editing/replace_selection_command.cpp
  
  Index: replace_selection_command.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/replace_selection_command.cpp,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- replace_selection_command.cpp	29 Jul 2005 23:42:46 -0000	1.8
  +++ replace_selection_command.cpp	30 Jul 2005 02:33:14 -0000	1.9
  @@ -54,11 +54,10 @@
   using DOM::ElementImpl;
   using DOM::TextImpl;
   using DOM::DOMString;
  -using DOM::HTMLAttributes;
  +using namespace HTMLNames;
   using DOM::HTMLElementImpl;
   using DOM::CSSMutableStyleDeclarationImpl;
   using DOM::Position;
  -using DOM::HTMLTags;
   
   namespace khtml {
   
  @@ -169,13 +168,13 @@
           return false;
       
       // FIXME: This function seems really broken to me.  It isn't even including all the block-level elements.
  -    return (node->hasTagName(HTMLTags::blockquote()) || node->hasTagName(HTMLTags::dd()) || node->hasTagName(HTMLTags::div()) ||
  -            node->hasTagName(HTMLTags::dl()) || node->hasTagName(HTMLTags::dt()) || node->hasTagName(HTMLTags::h1()) ||
  -            node->hasTagName(HTMLTags::h2()) || node->hasTagName(HTMLTags::h3()) || node->hasTagName(HTMLTags::h4()) ||
  -            node->hasTagName(HTMLTags::h5()) || node->hasTagName(HTMLTags::h6()) || node->hasTagName(HTMLTags::hr()) ||
  -            node->hasTagName(HTMLTags::li()) || node->hasTagName(HTMLTags::ol()) || node->hasTagName(HTMLTags::p()) ||
  -            node->hasTagName(HTMLTags::pre()) || node->hasTagName(HTMLTags::td()) || node->hasTagName(HTMLTags::th()) ||
  -            node->hasTagName(HTMLTags::ul()));
  +    return (node->hasTagName(blockquoteTag) || node->hasTagName(ddTag) || node->hasTagName(divTag) ||
  +            node->hasTagName(dlTag) || node->hasTagName(dtTag) || node->hasTagName(h1Tag) ||
  +            node->hasTagName(h2Tag) || node->hasTagName(h3Tag) || node->hasTagName(h4Tag) ||
  +            node->hasTagName(h5Tag) || node->hasTagName(h6Tag) || node->hasTagName(hrTag) ||
  +            node->hasTagName(liTag) || node->hasTagName(olTag) || node->hasTagName(pTag) ||
  +            node->hasTagName(preTag) || node->hasTagName(tdTag) || node->hasTagName(thTag) ||
  +            node->hasTagName(ulTag));
   }
   
   static bool isMailPasteAsQuotationNode(const NodeImpl *node)
  @@ -199,8 +198,8 @@
       if (!node)
           return false;
       
  -    return (node->hasTagName(HTMLTags::table()) || node->hasTagName(HTMLTags::tbody()) || node->hasTagName(HTMLTags::td()) ||
  -            node->hasTagName(HTMLTags::tfoot()) || node->hasTagName(HTMLTags::thead()) || node->hasTagName(HTMLTags::tr()));
  +    return (node->hasTagName(tableTag) || node->hasTagName(tbodyTag) || node->hasTagName(tdTag) ||
  +            node->hasTagName(tfootTag) || node->hasTagName(theadTag) || node->hasTagName(trTag));
   }
   
   void ReplacementFragment::pruneEmptyNodes()
  @@ -227,15 +226,15 @@
   bool ReplacementFragment::isInterchangeNewlineNode(const NodeImpl *node)
   {
       static DOMString interchangeNewlineClassString(AppleInterchangeNewline);
  -    return node && node->hasTagName(HTMLTags::br()) && 
  -           static_cast<const ElementImpl *>(node)->getAttribute(HTMLAttributes::classAttr()) == interchangeNewlineClassString;
  +    return node && node->hasTagName(brTag) && 
  +           static_cast<const ElementImpl *>(node)->getAttribute(classAttr) == interchangeNewlineClassString;
   }
   
   bool ReplacementFragment::isInterchangeConvertedSpaceSpan(const NodeImpl *node)
   {
       static DOMString convertedSpaceSpanClassString(AppleConvertedSpace);
       return node->isHTMLElement() && 
  -           static_cast<const HTMLElementImpl *>(node)->getAttribute(HTMLAttributes::classAttr()) == convertedSpaceSpanClassString;
  +           static_cast<const HTMLElementImpl *>(node)->getAttribute(classAttr) == convertedSpaceSpanClassString;
   }
   
   NodeImpl *ReplacementFragment::enclosingBlock(NodeImpl *node) const
  @@ -487,18 +486,18 @@
           // This list of tags change the appearance of content
           // in ways we can add back on later with CSS, if necessary.
           //  FIXME: This list is incomplete
  -        if (node->hasTagName(HTMLTags::b()) || 
  -            node->hasTagName(HTMLTags::big()) || 
  -            node->hasTagName(HTMLTags::center()) || 
  -            node->hasTagName(HTMLTags::font()) || 
  -            node->hasTagName(HTMLTags::i()) || 
  -            node->hasTagName(HTMLTags::s()) || 
  -            node->hasTagName(HTMLTags::small()) || 
  -            node->hasTagName(HTMLTags::strike()) || 
  -            node->hasTagName(HTMLTags::sub()) || 
  -            node->hasTagName(HTMLTags::sup()) || 
  -            node->hasTagName(HTMLTags::tt()) || 
  -            node->hasTagName(HTMLTags::u()) || 
  +        if (node->hasTagName(bTag) || 
  +            node->hasTagName(bigTag) || 
  +            node->hasTagName(centerTag) || 
  +            node->hasTagName(fontTag) || 
  +            node->hasTagName(iTag) || 
  +            node->hasTagName(sTag) || 
  +            node->hasTagName(smallTag) || 
  +            node->hasTagName(strikeTag) || 
  +            node->hasTagName(subTag) || 
  +            node->hasTagName(supTag) || 
  +            node->hasTagName(ttTag) || 
  +            node->hasTagName(uTag) || 
               isStyleSpan(node)) {
               removeNodePreservingChildren(node);
           }
  @@ -726,7 +725,7 @@
       if (!linePlaceholder) {
           Position downstream = startPos.downstream();
           downstream = positionOutsideContainingSpecialElement(downstream);
  -        if (downstream.node()->hasTagName(HTMLTags::br()) && downstream.offset() == 0 && 
  +        if (downstream.node()->hasTagName(brTag) && downstream.offset() == 0 && 
               m_fragment.hasInterchangeNewlineAtEnd() &&
               isStartOfLine(VisiblePosition(downstream, VP_DEFAULT_AFFINITY)))
               linePlaceholder = downstream.node();
  @@ -888,12 +887,12 @@
           }
       } 
       else {
  -        if (m_lastNodeInserted && m_lastNodeInserted->hasTagName(HTMLTags::br()) && !document()->inStrictMode()) {
  +        if (m_lastNodeInserted && m_lastNodeInserted->hasTagName(brTag) && !document()->inStrictMode()) {
               document()->updateLayout();
               VisiblePosition pos(Position(m_lastNodeInserted, 1), DOWNSTREAM);
               if (isEndOfBlock(pos)) {
                   NodeImpl *next = m_lastNodeInserted->traverseNextNode();
  -                bool hasTrailingBR = next && next->hasTagName(HTMLTags::br()) && m_lastNodeInserted->enclosingBlockFlowElement() == next->enclosingBlockFlowElement();
  +                bool hasTrailingBR = next && next->hasTagName(brTag) && m_lastNodeInserted->enclosingBlockFlowElement() == next->enclosingBlockFlowElement();
                   if (!hasTrailingBR) {
                       // Insert an "extra" BR at the end of the block. 
                       insertNodeBefore(createBreakElement(document()), m_lastNodeInserted);
  @@ -920,7 +919,7 @@
                   insertNodeAfter(node, refNode);
                   refNode = node;
                   // We want to move the first BR we see, so check for that here.
  -                if (node->hasTagName(HTMLTags::br()))
  +                if (node->hasTagName(brTag))
                       break;
                   node = next;
               }
  
  
  
  1.54      +4 -4      WebCore/khtml/editing/visible_position.cpp
  
  Index: visible_position.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/visible_position.cpp,v
  retrieving revision 1.53
  retrieving revision 1.54
  diff -u -r1.53 -r1.54
  --- visible_position.cpp	18 Jul 2005 21:52:21 -0000	1.53
  +++ visible_position.cpp	30 Jul 2005 02:33:15 -0000	1.54
  @@ -50,7 +50,7 @@
   using DOM::Range;
   using DOM::RangeImpl;
   using DOM::TextImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   
   namespace khtml {
   
  @@ -75,7 +75,7 @@
       m_affinity = affinity;
   
       // For <br> 0, it's important not to move past the <br>.
  -    if (pos.node() && pos.node()->hasTagName(HTMLTags::br()) && pos.offset() == 0)
  +    if (pos.node() && pos.node()->hasTagName(brTag) && pos.offset() == 0)
           initUpstream(pos);
       else
           initDownstream(pos);
  @@ -275,7 +275,7 @@
       }
       
       if (renderer->isBlockFlow() && (!renderer->firstChild() || !pos.node()->firstChild()) && 
  -       (renderer->height() || pos.node()->hasTagName(HTMLTags::body()))) {
  +       (renderer->height() || pos.node()->hasTagName(bodyTag))) {
           // return true for offset 0 into rendered blocks that are empty of rendered kids, but have a height
           return pos.offset() == 0;
       }
  @@ -360,7 +360,7 @@
   
   bool VisiblePosition::isAtomicNode(const NodeImpl *node)
   {
  -    return node && (!node->hasChildNodes() || (node->hasTagName(HTMLTags::object()) && node->renderer() && node->renderer()->isReplaced()));
  +    return node && (!node->hasChildNodes() || (node->hasTagName(objectTag) && node->renderer() && node->renderer()->isReplaced()));
   }
   
   QChar VisiblePosition::character() const
  
  
  
  1.31      +36 -36    WebCore/khtml/editing/visible_text.cpp
  
  Index: visible_text.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/visible_text.cpp,v
  retrieving revision 1.30
  retrieving revision 1.31
  diff -u -r1.30 -r1.31
  --- visible_text.cpp	18 Jul 2005 21:52:21 -0000	1.30
  +++ visible_text.cpp	30 Jul 2005 02:33:15 -0000	1.31
  @@ -37,7 +37,7 @@
   using DOM::NodeImpl;
   using DOM::offsetInCharacters;
   using DOM::RangeImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   
   // FIXME: These classes should probably use the render tree and not the DOM tree, since elements could
   // be hidden using CSS, or additional generated content could be added.  For now, we just make sure
  @@ -351,22 +351,22 @@
   
   bool TextIterator::handleNonTextNode()
   {
  -    if (m_node->hasTagName(HTMLTags::br())) {
  +    if (m_node->hasTagName(brTag)) {
           emitCharacter('\n', m_node->parentNode(), m_node, 0, 1);
  -    } else if (m_node->hasTagName(HTMLTags::td()) || m_node->hasTagName(HTMLTags::th())) {
  +    } else if (m_node->hasTagName(tdTag) || m_node->hasTagName(thTag)) {
           if (m_lastCharacter != '\n' && m_lastTextNode) {
               emitCharacter('\t', m_lastTextNode->parentNode(), m_lastTextNode, 0, 1);
           }
  -    } else if (m_node->hasTagName(HTMLTags::blockquote()) || m_node->hasTagName(HTMLTags::dd()) ||
  -               m_node->hasTagName(HTMLTags::div()) ||
  -               m_node->hasTagName(HTMLTags::dl()) || m_node->hasTagName(HTMLTags::dt()) || 
  -               m_node->hasTagName(HTMLTags::h1()) || m_node->hasTagName(HTMLTags::h2()) ||
  -               m_node->hasTagName(HTMLTags::h3()) || m_node->hasTagName(HTMLTags::h4()) ||
  -               m_node->hasTagName(HTMLTags::h5()) || m_node->hasTagName(HTMLTags::h6()) ||
  -               m_node->hasTagName(HTMLTags::hr()) || m_node->hasTagName(HTMLTags::li()) ||
  -               m_node->hasTagName(HTMLTags::ol()) || m_node->hasTagName(HTMLTags::p()) ||
  -               m_node->hasTagName(HTMLTags::pre()) || m_node->hasTagName(HTMLTags::tr()) ||
  -               m_node->hasTagName(HTMLTags::ul())) {
  +    } else if (m_node->hasTagName(blockquoteTag) || m_node->hasTagName(ddTag) ||
  +               m_node->hasTagName(divTag) ||
  +               m_node->hasTagName(dlTag) || m_node->hasTagName(dtTag) || 
  +               m_node->hasTagName(h1Tag) || m_node->hasTagName(h2Tag) ||
  +               m_node->hasTagName(h3Tag) || m_node->hasTagName(h4Tag) ||
  +               m_node->hasTagName(h5Tag) || m_node->hasTagName(h6Tag) ||
  +               m_node->hasTagName(hrTag) || m_node->hasTagName(liTag) ||
  +               m_node->hasTagName(olTag) || m_node->hasTagName(pTag) ||
  +               m_node->hasTagName(preTag) || m_node->hasTagName(trTag) ||
  +               m_node->hasTagName(ulTag)) {
           if (m_lastCharacter != '\n' && m_lastTextNode) {
               emitCharacter('\n', m_lastTextNode->parentNode(), m_lastTextNode, 0, 1);
           }
  @@ -380,18 +380,18 @@
       bool endLine = false;
       bool addNewline = false;
   
  -    if (m_node->hasTagName(HTMLTags::blockquote()) || m_node->hasTagName(HTMLTags::dd()) ||
  -               m_node->hasTagName(HTMLTags::div()) ||
  -               m_node->hasTagName(HTMLTags::dl()) || m_node->hasTagName(HTMLTags::dt()) || 
  -               m_node->hasTagName(HTMLTags::hr()) || m_node->hasTagName(HTMLTags::li()) ||
  -               m_node->hasTagName(HTMLTags::ol()) ||
  -               m_node->hasTagName(HTMLTags::pre()) || m_node->hasTagName(HTMLTags::tr()) ||
  -               m_node->hasTagName(HTMLTags::ul()))
  +    if (m_node->hasTagName(blockquoteTag) || m_node->hasTagName(ddTag) ||
  +               m_node->hasTagName(divTag) ||
  +               m_node->hasTagName(dlTag) || m_node->hasTagName(dtTag) || 
  +               m_node->hasTagName(hrTag) || m_node->hasTagName(liTag) ||
  +               m_node->hasTagName(olTag) ||
  +               m_node->hasTagName(preTag) || m_node->hasTagName(trTag) ||
  +               m_node->hasTagName(ulTag))
           endLine = true;
  -    else if (m_node->hasTagName(HTMLTags::h1()) || m_node->hasTagName(HTMLTags::h2()) ||
  -             m_node->hasTagName(HTMLTags::h3()) || m_node->hasTagName(HTMLTags::h4()) ||
  -             m_node->hasTagName(HTMLTags::h5()) || m_node->hasTagName(HTMLTags::h6()) ||
  -             m_node->hasTagName(HTMLTags::p())) {
  +    else if (m_node->hasTagName(h1Tag) || m_node->hasTagName(h2Tag) ||
  +             m_node->hasTagName(h3Tag) || m_node->hasTagName(h4Tag) ||
  +             m_node->hasTagName(h5Tag) || m_node->hasTagName(h6Tag) ||
  +             m_node->hasTagName(pTag)) {
           endLine = true;
   
           // In certain cases, emit a new newline character for this node
  @@ -647,19 +647,19 @@
   
   bool SimplifiedBackwardsTextIterator::handleNonTextNode()
   {
  -    if (m_node->hasTagName(HTMLTags::br()))
  +    if (m_node->hasTagName(brTag))
           emitNewlineForBROrText();
  -    else if (m_node->hasTagName(HTMLTags::td ()) || m_node->hasTagName(HTMLTags::th()) ||
  -             m_node->hasTagName(HTMLTags::blockquote()) || m_node->hasTagName(HTMLTags::dd()) ||
  -             m_node->hasTagName(HTMLTags::div()) ||
  -             m_node->hasTagName(HTMLTags::dl()) || m_node->hasTagName(HTMLTags::dt()) || 
  -             m_node->hasTagName(HTMLTags::h1()) || m_node->hasTagName(HTMLTags::h2()) ||
  -             m_node->hasTagName(HTMLTags::h3()) || m_node->hasTagName(HTMLTags::h4()) ||
  -             m_node->hasTagName(HTMLTags::h5()) || m_node->hasTagName(HTMLTags::h6()) ||
  -             m_node->hasTagName(HTMLTags::hr()) || m_node->hasTagName(HTMLTags::li()) ||
  -             m_node->hasTagName(HTMLTags::ol()) || m_node->hasTagName(HTMLTags::p()) ||
  -             m_node->hasTagName(HTMLTags::pre()) || m_node->hasTagName(HTMLTags::tr()) ||
  -             m_node->hasTagName(HTMLTags::ul())) {
  +    else if (m_node->hasTagName(tdTag) || m_node->hasTagName(thTag) ||
  +             m_node->hasTagName(blockquoteTag) || m_node->hasTagName(ddTag) ||
  +             m_node->hasTagName(divTag) ||
  +             m_node->hasTagName(dlTag) || m_node->hasTagName(dtTag) || 
  +             m_node->hasTagName(h1Tag) || m_node->hasTagName(h2Tag) ||
  +             m_node->hasTagName(h3Tag) || m_node->hasTagName(h4Tag) ||
  +             m_node->hasTagName(h5Tag) || m_node->hasTagName(h6Tag) ||
  +             m_node->hasTagName(hrTag) || m_node->hasTagName(liTag) ||
  +             m_node->hasTagName(olTag) || m_node->hasTagName(pTag) ||
  +             m_node->hasTagName(preTag) || m_node->hasTagName(trTag) ||
  +             m_node->hasTagName(ulTag)) {
           // Emit a space to "break up" content. Any word break
           // character will do.
           emitCharacter(' ', m_node, 0, 0);
  
  
  
  1.37      +2 -2      WebCore/khtml/editing/visible_units.cpp
  
  Index: visible_units.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/editing/visible_units.cpp,v
  retrieving revision 1.36
  retrieving revision 1.37
  diff -u -r1.36 -r1.37
  --- visible_units.cpp	18 Jul 2005 21:52:21 -0000	1.36
  +++ visible_units.cpp	30 Jul 2005 02:33:15 -0000	1.37
  @@ -41,7 +41,7 @@
   using DOM::NodeImpl;
   using DOM::Position;
   using DOM::RangeImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   
   namespace khtml {
   
  @@ -333,7 +333,7 @@
           return VisiblePosition();
   
       long endOffset = 1;
  -    if (endNode->hasTagName(HTMLTags::br())) {
  +    if (endNode->hasTagName(brTag)) {
           endOffset = 0;
       } else if (endBox->isInlineTextBox()) {
           InlineTextBox *endTextBox = static_cast<InlineTextBox *>(endBox);
  
  
  
  1.78      +120 -119  WebCore/khtml/html/html_baseimpl.cpp
  
  Index: html_baseimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_baseimpl.cpp,v
  retrieving revision 1.77
  retrieving revision 1.78
  diff -u -r1.77 -r1.78
  --- html_baseimpl.cpp	21 Jul 2005 04:10:52 -0000	1.77
  +++ html_baseimpl.cpp	30 Jul 2005 02:33:16 -0000	1.78
  @@ -45,9 +45,10 @@
   
   using namespace DOM;
   using namespace khtml;
  +using namespace HTMLNames;
   
   HTMLBodyElementImpl::HTMLBodyElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::body(), doc), m_linkDecl(0)
  +    : HTMLElementImpl(bodyTag, doc), m_linkDecl(0)
   {
   }
   
  @@ -71,18 +72,18 @@
   
   bool HTMLBodyElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::background()) {
  +    if (attrName == backgroundAttr) {
           result = (MappedAttributeEntry)(eLastEntry + getDocument()->docID());
           return false;
       } 
       
  -    if (attrName == HTMLAttributes::bgcolor() ||
  -        attrName == HTMLAttributes::text() ||
  -        attrName == HTMLAttributes::marginwidth() ||
  -        attrName == HTMLAttributes::leftmargin() ||
  -        attrName == HTMLAttributes::marginheight() ||
  -        attrName == HTMLAttributes::topmargin() ||
  -        attrName == HTMLAttributes::bgproperties()) {
  +    if (attrName == bgcolorAttr ||
  +        attrName == textAttr ||
  +        attrName == marginwidthAttr ||
  +        attrName == leftmarginAttr ||
  +        attrName == marginheightAttr ||
  +        attrName == topmarginAttr ||
  +        attrName == bgpropertiesAttr) {
           result = eUniversal;
           return false;
       }
  @@ -92,34 +93,34 @@
   
   void HTMLBodyElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::background()) {
  +    if (attr->name() == backgroundAttr) {
           QString url = khtml::parseURL(attr->value()).string();
           if (!url.isEmpty())
               addCSSImageProperty(attr, CSS_PROP_BACKGROUND_IMAGE, getDocument()->completeURL(url));
  -    } else if (attr->name() == HTMLAttributes::marginwidth()) {
  +    } else if (attr->name() == marginwidthAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_RIGHT, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_LEFT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::leftmargin()) {
  +    } else if (attr->name() == leftmarginAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_LEFT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::marginheight()) {
  +    } else if (attr->name() == marginheightAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_BOTTOM, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_TOP, attr->value());
  -    } else if (attr->name() == HTMLAttributes::topmargin()) {
  +    } else if (attr->name() == topmarginAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_TOP, attr->value());
  -    } else if (attr->name() == HTMLAttributes::bgcolor()) {
  +    } else if (attr->name() == bgcolorAttr) {
           addCSSColor(attr, CSS_PROP_BACKGROUND_COLOR, attr->value());
  -    } else if (attr->name() == HTMLAttributes::text()) {
  +    } else if (attr->name() == textAttr) {
           addCSSColor(attr, CSS_PROP_COLOR, attr->value());
  -    } else if (attr->name() == HTMLAttributes::bgproperties()) {
  +    } else if (attr->name() == bgpropertiesAttr) {
           if (strcasecmp( attr->value(), "fixed" ) == 0)
               addCSSProperty(attr, CSS_PROP_BACKGROUND_ATTACHMENT, CSS_VAL_FIXED);
  -    } else if (attr->name() == HTMLAttributes::vlink() ||
  -               attr->name() == HTMLAttributes::alink() ||
  -               attr->name() == HTMLAttributes::link()) {
  +    } else if (attr->name() == vlinkAttr ||
  +               attr->name() == alinkAttr ||
  +               attr->name() == linkAttr) {
           if (attr->isNull()) {
  -            if (attr->name() == HTMLAttributes::link())
  +            if (attr->name() == linkAttr)
                   getDocument()->resetLinkColor();
  -            else if (attr->name() == HTMLAttributes::vlink())
  +            else if (attr->name() == vlinkAttr)
                   getDocument()->resetVisitedLinkColor();
               else
                   getDocument()->resetActiveLinkColor();
  @@ -133,9 +134,9 @@
                   val->ref();
                   if (val->isPrimitiveValue()) {
                       QColor col = getDocument()->styleSelector()->getColorFromPrimitiveValue(static_cast<CSSPrimitiveValueImpl*>(val));
  -                    if (attr->name() == HTMLAttributes::link())
  +                    if (attr->name() == linkAttr)
                           getDocument()->setLinkColor(col);
  -                    else if (attr->name() == HTMLAttributes::vlink())
  +                    else if (attr->name() == vlinkAttr)
                           getDocument()->setVisitedLinkColor(col);
                       else
                           getDocument()->setActiveLinkColor(col);
  @@ -146,22 +147,22 @@
           
           if (attached())
               getDocument()->recalcStyle(Force);
  -    } else if (attr->name() == HTMLAttributes::onload()) {
  +    } else if (attr->name() == onloadAttr) {
           getDocument()->setHTMLWindowEventListener(EventImpl::LOAD_EVENT,	    
                                                     getDocument()->createHTMLEventListener(attr->value().string(), NULL));
  -    } else if (attr->name() == HTMLAttributes::onunload()) {
  +    } else if (attr->name() == onunloadAttr) {
           getDocument()->setHTMLWindowEventListener(EventImpl::UNLOAD_EVENT,
                                                     getDocument()->createHTMLEventListener(attr->value().string(), NULL));
  -    } else if (attr->name() == HTMLAttributes::onblur()) {
  +    } else if (attr->name() == onblurAttr) {
           getDocument()->setHTMLWindowEventListener(EventImpl::BLUR_EVENT,
                                                     getDocument()->createHTMLEventListener(attr->value().string(), NULL));
  -    } else if (attr->name() == HTMLAttributes::onfocus()) {
  +    } else if (attr->name() == onfocusAttr) {
           getDocument()->setHTMLWindowEventListener(EventImpl::FOCUS_EVENT,
                                                     getDocument()->createHTMLEventListener(attr->value().string(), NULL));
  -    } else if (attr->name() == HTMLAttributes::onresize()) {
  +    } else if (attr->name() == onresizeAttr) {
           getDocument()->setHTMLWindowEventListener(EventImpl::RESIZE_EVENT,
                                                     getDocument()->createHTMLEventListener(attr->value().string(), NULL));
  -    } else if (attr->name() == HTMLAttributes::onscroll()) {
  +    } else if (attr->name() == onscrollAttr) {
           getDocument()->setHTMLWindowEventListener(EventImpl::SCROLL_EVENT,
                                                     getDocument()->createHTMLEventListener(attr->value().string(), NULL));
       } else
  @@ -179,12 +180,12 @@
       if (w && w->marginWidth() != -1) {
           QString s;
           s.sprintf("%d", w->marginWidth());
  -        setAttribute(HTMLAttributes::marginwidth(), s);
  +        setAttribute(marginwidthAttr, s);
       }
       if (w && w->marginHeight() != -1) {
           QString s;
           s.sprintf("%d", w->marginHeight());
  -        setAttribute(HTMLAttributes::marginheight(), s);
  +        setAttribute(marginheightAttr, s);
       }
   
       if (w)
  @@ -193,73 +194,73 @@
   
   bool HTMLBodyElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return attr->name() == HTMLAttributes::background();
  +    return attr->name() == backgroundAttr;
   }
   
   DOMString HTMLBodyElementImpl::aLink() const
   {
  -    return getAttribute(HTMLAttributes::alink());
  +    return getAttribute(alinkAttr);
   }
   
   void HTMLBodyElementImpl::setALink(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::alink(), value);
  +    setAttribute(alinkAttr, value);
   }
   
   DOMString HTMLBodyElementImpl::background() const
   {
  -    return getAttribute(HTMLAttributes::background());
  +    return getAttribute(backgroundAttr);
   }
   
   void HTMLBodyElementImpl::setBackground(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::background(), value);
  +    setAttribute(backgroundAttr, value);
   }
   
   DOMString HTMLBodyElementImpl::bgColor() const
   {
  -    return getAttribute(HTMLAttributes::bgcolor());
  +    return getAttribute(bgcolorAttr);
   }
   
   void HTMLBodyElementImpl::setBgColor(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::bgcolor(), value);
  +    setAttribute(bgcolorAttr, value);
   }
   
   DOMString HTMLBodyElementImpl::link() const
   {
  -    return getAttribute(HTMLAttributes::link());
  +    return getAttribute(linkAttr);
   }
   
   void HTMLBodyElementImpl::setLink(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::link(), value);
  +    setAttribute(linkAttr, value);
   }
   
   DOMString HTMLBodyElementImpl::text() const
   {
  -    return getAttribute(HTMLAttributes::text());
  +    return getAttribute(textAttr);
   }
   
   void HTMLBodyElementImpl::setText(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::text(), value);
  +    setAttribute(textAttr, value);
   }
   
   DOMString HTMLBodyElementImpl::vLink() const
   {
  -    return getAttribute(HTMLAttributes::vlink());
  +    return getAttribute(vlinkAttr);
   }
   
   void HTMLBodyElementImpl::setVLink(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::vlink(), value);
  +    setAttribute(vlinkAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLFrameElementImpl::HTMLFrameElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::frame(), doc)
  +    : HTMLElementImpl(frameTag, doc)
   {
       init();
   }
  @@ -381,31 +382,31 @@
   
   void HTMLFrameElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::src()) {
  +    if (attr->name() == srcAttr) {
           setLocation(khtml::parseURL(attr->value()));
  -    } else if (attr->name() == HTMLAttributes::idAttr()) {
  +    } else if (attr->name() == idAttr) {
           // Important to call through to base for the id attribute so the hasID bit gets set.
           HTMLElementImpl::parseMappedAttribute(attr);
           m_name = attr->value();
  -    } else if (attr->name() == HTMLAttributes::name()) {
  +    } else if (attr->name() == nameAttr) {
           m_name = attr->value();
           // FIXME: If we are already attached, this doesn't actually change the frame's name.
           // FIXME: If we are already attached, this doesn't check for frame name
           // conflicts and generate a unique frame name.
  -    } else if (attr->name() == HTMLAttributes::frameborder()) {
  +    } else if (attr->name() == frameborderAttr) {
           m_frameBorder = attr->value().toInt();
           m_frameBorderSet = !attr->isNull();
           // FIXME: If we are already attached, this has no effect.
  -    } else if (attr->name() == HTMLAttributes::marginwidth()) {
  +    } else if (attr->name() == marginwidthAttr) {
           m_marginWidth = attr->value().toInt();
           // FIXME: If we are already attached, this has no effect.
  -    } else if (attr->name() == HTMLAttributes::marginheight()) {
  +    } else if (attr->name() == marginheightAttr) {
           m_marginHeight = attr->value().toInt();
           // FIXME: If we are already attached, this has no effect.
  -    } else if (attr->name() == HTMLAttributes::noresize()) {
  +    } else if (attr->name() == noresizeAttr) {
           m_noResize = true;
           // FIXME: If we are already attached, this has no effect.
  -    } else if (attr->name() == HTMLAttributes::scrolling()) {
  +    } else if (attr->name() == scrollingAttr) {
           kdDebug( 6031 ) << "set scroll mode" << endl;
   	// Auto and yes both simply mean "allow scrolling."  No means
   	// "don't allow scrolling."
  @@ -415,10 +416,10 @@
           else if( strcasecmp( attr->value(), "no" ) == 0 )
               m_scrolling = QScrollView::AlwaysOff;
           // FIXME: If we are already attached, this has no effect.
  -    } else if (attr->name() == HTMLAttributes::onload()) {
  +    } else if (attr->name() == onloadAttr) {
           setHTMLEventListener(EventImpl::LOAD_EVENT,
                                   getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onunload()) {
  +    } else if (attr->name() == onunloadAttr) {
           setHTMLEventListener(EventImpl::UNLOAD_EVENT,
                                   getDocument()->createHTMLEventListener(attr->value().string(), this));
       } else
  @@ -438,13 +439,13 @@
   
   void HTMLFrameElementImpl::attach()
   {
  -    m_name = getAttribute(HTMLAttributes::name());
  +    m_name = getAttribute(nameAttr);
       if (m_name.isNull())
  -        m_name = getAttribute(HTMLAttributes::idAttr());
  +        m_name = getAttribute(idAttr);
   
       // inherit default settings from parent frameset
       for (NodeImpl *node = parentNode(); node; node = node->parentNode())
  -        if (node->hasTagName(HTMLTags::frameset())) {
  +        if (node->hasTagName(framesetTag)) {
               HTMLFrameSetElementImpl* frameset = static_cast<HTMLFrameSetElementImpl*>(node);
               if (!m_frameBorderSet)
                   m_frameBorder = frameset->frameBorder();
  @@ -542,88 +543,88 @@
   
   bool HTMLFrameElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return attr->name() == HTMLAttributes::src();
  +    return attr->name() == srcAttr;
   }
   
   DOMString HTMLFrameElementImpl::frameBorder() const
   {
  -    return getAttribute(HTMLAttributes::frameborder());
  +    return getAttribute(frameborderAttr);
   }
   
   void HTMLFrameElementImpl::setFrameBorder(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::frameborder(), value);
  +    setAttribute(frameborderAttr, value);
   }
   
   DOMString HTMLFrameElementImpl::longDesc() const
   {
  -    return getAttribute(HTMLAttributes::longdesc());
  +    return getAttribute(longdescAttr);
   }
   
   void HTMLFrameElementImpl::setLongDesc(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::longdesc(), value);
  +    setAttribute(longdescAttr, value);
   }
   
   DOMString HTMLFrameElementImpl::marginHeight() const
   {
  -    return getAttribute(HTMLAttributes::marginheight());
  +    return getAttribute(marginheightAttr);
   }
   
   void HTMLFrameElementImpl::setMarginHeight(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::marginheight(), value);
  +    setAttribute(marginheightAttr, value);
   }
   
   DOMString HTMLFrameElementImpl::marginWidth() const
   {
  -    return getAttribute(HTMLAttributes::marginwidth());
  +    return getAttribute(marginwidthAttr);
   }
   
   void HTMLFrameElementImpl::setMarginWidth(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::marginwidth(), value);
  +    setAttribute(marginwidthAttr, value);
   }
   
   DOMString HTMLFrameElementImpl::name() const
   {
  -    return getAttribute(HTMLAttributes::name());
  +    return getAttribute(nameAttr);
   }
   
   void HTMLFrameElementImpl::setName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::name(), value);
  +    setAttribute(nameAttr, value);
   }
   
   void HTMLFrameElementImpl::setNoResize(bool noResize)
   {
  -    setAttribute(HTMLAttributes::noresize(), noResize ? "" : 0);
  +    setAttribute(noresizeAttr, noResize ? "" : 0);
   }
   
   DOMString HTMLFrameElementImpl::scrolling() const
   {
  -    return getAttribute(HTMLAttributes::scrolling());
  +    return getAttribute(scrollingAttr);
   }
   
   void HTMLFrameElementImpl::setScrolling(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::scrolling(), value);
  +    setAttribute(scrollingAttr, value);
   }
   
   DOMString HTMLFrameElementImpl::src() const
   {
  -    return getAttribute(HTMLAttributes::src());
  +    return getAttribute(srcAttr);
   }
   
   void HTMLFrameElementImpl::setSrc(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::src(), value);
  +    setAttribute(srcAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLFrameSetElementImpl::HTMLFrameSetElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::frameset(), doc)
  +    : HTMLElementImpl(framesetTag, doc)
   {
       // default value for rows and cols...
       m_totalRows = 1;
  @@ -651,40 +652,40 @@
   {
       // FIXME: Old code had adjacent double returns and seemed to want to do something with NOFRAMES (but didn't).
       // What is the correct behavior?
  -    return newChild->hasTagName(HTMLTags::frameset()) || newChild->hasTagName(HTMLTags::frame());
  +    return newChild->hasTagName(framesetTag) || newChild->hasTagName(frameTag);
   }
   
   void HTMLFrameSetElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::rows()) {
  +    if (attr->name() == rowsAttr) {
           if (!attr->isNull()) {
               if (m_rows) delete [] m_rows;
               m_rows = attr->value().toLengthArray(m_totalRows);
               setChanged();
           }
  -    } else if (attr->name() == HTMLAttributes::cols()) {
  +    } else if (attr->name() == colsAttr) {
           if (!attr->isNull()) {
               delete [] m_cols;
               m_cols = attr->value().toLengthArray(m_totalCols);
               setChanged();
           }
  -    } else if (attr->name() == HTMLAttributes::frameborder()) {
  +    } else if (attr->name() == frameborderAttr) {
           // false or "no" or "0"..
           if ( attr->value().toInt() == 0 ) {
               frameborder = false;
               m_border = 0;
           }
           frameBorderSet = true;
  -    } else if (attr->name() == HTMLAttributes::noresize()) {
  +    } else if (attr->name() == noresizeAttr) {
           noresize = true;
  -    } else if (attr->name() == HTMLAttributes::border()) {
  +    } else if (attr->name() == borderAttr) {
           m_border = attr->value().toInt();
           if(!m_border)
               frameborder = false;
  -    } else if (attr->name() == HTMLAttributes::onload()) {
  +    } else if (attr->name() == onloadAttr) {
           setHTMLEventListener(EventImpl::LOAD_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onunload()) {
  +    } else if (attr->name() == onunloadAttr) {
           setHTMLEventListener(EventImpl::UNLOAD_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
       } else
  @@ -708,7 +709,7 @@
       HTMLElementImpl* node = static_cast<HTMLElementImpl*>(parentNode());
       while(node)
       {
  -        if (node->hasTagName(HTMLTags::frameset())) {
  +        if (node->hasTagName(framesetTag)) {
               HTMLFrameSetElementImpl* frameset = static_cast<HTMLFrameSetElementImpl*>(node);
               if(!frameBorderSet)  frameborder = frameset->frameBorder();
               if(!noresize)  noresize = frameset->noResize();
  @@ -751,28 +752,28 @@
   
   DOMString HTMLFrameSetElementImpl::cols() const
   {
  -    return getAttribute(HTMLAttributes::cols());
  +    return getAttribute(colsAttr);
   }
   
   void HTMLFrameSetElementImpl::setCols(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::cols(), value);
  +    setAttribute(colsAttr, value);
   }
   
   DOMString HTMLFrameSetElementImpl::rows() const
   {
  -    return getAttribute(HTMLAttributes::rows());
  +    return getAttribute(rowsAttr);
   }
   
   void HTMLFrameSetElementImpl::setRows(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::rows(), value);
  +    setAttribute(rowsAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLHeadElementImpl::HTMLHeadElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::head(), doc)
  +    : HTMLElementImpl(headTag, doc)
   {
   }
   
  @@ -782,26 +783,26 @@
   
   DOMString HTMLHeadElementImpl::profile() const
   {
  -    return getAttribute(HTMLAttributes::profile());
  +    return getAttribute(profileAttr);
   }
   
   void HTMLHeadElementImpl::setProfile(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::profile(), value);
  +    setAttribute(profileAttr, value);
   }
   
   bool HTMLHeadElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -    return newChild->hasTagName(HTMLTags::title()) || newChild->hasTagName(HTMLTags::isindex()) ||
  -           newChild->hasTagName(HTMLTags::base()) || newChild->hasTagName(HTMLTags::script()) ||
  -           newChild->hasTagName(HTMLTags::style()) || newChild->hasTagName(HTMLTags::meta()) ||
  -           newChild->hasTagName(HTMLTags::link()) || newChild->isTextNode();
  +    return newChild->hasTagName(titleTag) || newChild->hasTagName(isindexTag) ||
  +           newChild->hasTagName(baseTag) || newChild->hasTagName(scriptTag) ||
  +           newChild->hasTagName(styleTag) || newChild->hasTagName(metaTag) ||
  +           newChild->hasTagName(linkTag) || newChild->isTextNode();
   }
   
   // -------------------------------------------------------------------------
   
   HTMLHtmlElementImpl::HTMLHtmlElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::html(), doc)
  +    : HTMLElementImpl(htmlTag, doc)
   {
   }
   
  @@ -811,25 +812,25 @@
   
   DOMString HTMLHtmlElementImpl::version() const
   {
  -    return getAttribute(HTMLAttributes::version());
  +    return getAttribute(versionAttr);
   }
   
   void HTMLHtmlElementImpl::setVersion(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::version(), value);
  +    setAttribute(versionAttr, value);
   }
   
   bool HTMLHtmlElementImpl::checkDTD(const NodeImpl* newChild)
   {
       // FIXME: Why is <script> allowed here?
  -    return newChild->hasTagName(HTMLTags::head()) || newChild->hasTagName(HTMLTags::body()) ||
  -           newChild->hasTagName(HTMLTags::frameset()) || newChild->hasTagName(HTMLTags::noframes()) ||
  -           newChild->hasTagName(HTMLTags::script());
  +    return newChild->hasTagName(headTag) || newChild->hasTagName(bodyTag) ||
  +           newChild->hasTagName(framesetTag) || newChild->hasTagName(noframesTag) ||
  +           newChild->hasTagName(scriptTag);
   }
   
   // -------------------------------------------------------------------------
   
  -HTMLIFrameElementImpl::HTMLIFrameElementImpl(DocumentPtr *doc) : HTMLFrameElementImpl(HTMLTags::iframe(), doc)
  +HTMLIFrameElementImpl::HTMLIFrameElementImpl(DocumentPtr *doc) : HTMLFrameElementImpl(iframeTag, doc)
   {
       m_frameBorder = false;
       m_marginWidth = -1;
  @@ -843,12 +844,12 @@
   
   bool HTMLIFrameElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::width() || attrName == HTMLAttributes::height()) {
  +    if (attrName == widthAttr || attrName == heightAttr) {
           result = eUniversal;
           return false;
       }
       
  -    if (attrName == HTMLAttributes::align()) {
  +    if (attrName == alignAttr) {
           result = eReplaced; // Share with <img> since the alignment behavior is the same.
           return false;
       }
  @@ -858,13 +859,13 @@
   
   void HTMLIFrameElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::width())
  +    if (attr->name() == widthAttr)
           addCSSLength(attr, CSS_PROP_WIDTH, attr->value());
  -    else if (attr->name() == HTMLAttributes::height())
  +    else if (attr->name() == heightAttr)
           addCSSLength(attr, CSS_PROP_HEIGHT, attr->value());
  -    else if (attr->name() == HTMLAttributes::align())
  +    else if (attr->name() == alignAttr)
           addHTMLAlignment(attr);
  -    else if (attr->name() == HTMLAttributes::name()) {
  +    else if (attr->name() == nameAttr) {
           DOMString newNameAttr = attr->value();
           if (inDocument() && getDocument()->isHTMLDocument()) {
               HTMLDocumentImpl *document = static_cast<HTMLDocumentImpl *>(getDocument());
  @@ -909,9 +910,9 @@
   
   void HTMLIFrameElementImpl::attach()
   {
  -    m_name = getAttribute(HTMLAttributes::name());
  +    m_name = getAttribute(nameAttr);
       if (m_name.isNull())
  -        m_name = getAttribute(HTMLAttributes::idAttr());
  +        m_name = getAttribute(idAttr);
       
       HTMLElementImpl::attach();
   
  @@ -944,40 +945,40 @@
   
   bool HTMLIFrameElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return attr->name() == HTMLAttributes::src();
  +    return attr->name() == srcAttr;
   }
   
   DOMString HTMLIFrameElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLIFrameElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   DOMString HTMLIFrameElementImpl::height() const
   {
  -    return getAttribute(HTMLAttributes::height());
  +    return getAttribute(heightAttr);
   }
   
   void HTMLIFrameElementImpl::setHeight(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::height(), value);
  +    setAttribute(heightAttr, value);
   }
   
   DOMString HTMLIFrameElementImpl::src() const
   {
  -    return getDocument()->completeURL(getAttribute(HTMLAttributes::src()));
  +    return getDocument()->completeURL(getAttribute(srcAttr));
   }
   
   DOMString HTMLIFrameElementImpl::width() const
   {
  -    return getAttribute(HTMLAttributes::width());
  +    return getAttribute(widthAttr);
   }
   
   void HTMLIFrameElementImpl::setWidth(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::width(), value);
  +    setAttribute(widthAttr, value);
   }
  
  
  
  1.23      +63 -62    WebCore/khtml/html/html_blockimpl.cpp
  
  Index: html_blockimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_blockimpl.cpp,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -r1.22 -r1.23
  --- html_blockimpl.cpp	18 Jul 2005 21:52:24 -0000	1.22
  +++ html_blockimpl.cpp	30 Jul 2005 02:33:17 -0000	1.23
  @@ -34,9 +34,10 @@
   
   using namespace khtml;
   using namespace DOM;
  +using namespace HTMLNames;
   
   HTMLBlockquoteElementImpl::HTMLBlockquoteElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::blockquote(), doc)
  +    : HTMLElementImpl(blockquoteTag, doc)
   {
   }
   
  @@ -46,18 +47,18 @@
   
   DOMString HTMLBlockquoteElementImpl::cite() const
   {
  -    return getAttribute(HTMLAttributes::cite());
  +    return getAttribute(citeAttr);
   }
   
   void HTMLBlockquoteElementImpl::setCite(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::cite(), value);
  +    setAttribute(citeAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLDivElementImpl::HTMLDivElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::div(), doc)
  +    : HTMLElementImpl(divTag, doc)
   {
   }
   
  @@ -67,7 +68,7 @@
   
   bool HTMLDivElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::align()) {
  +    if (attrName == alignAttr) {
           result = eBlock;
           return false;
       }
  @@ -76,7 +77,7 @@
           
   void HTMLDivElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::align()) {
  +    if (attr->name() == alignAttr) {
           DOMString v = attr->value();
   	if ( strcasecmp( attr->value(), "middle" ) == 0 || strcasecmp( attr->value(), "center" ) == 0 )
              addCSSProperty(attr, CSS_PROP_TEXT_ALIGN, CSS_VAL__KHTML_CENTER);
  @@ -92,18 +93,18 @@
   
   DOMString HTMLDivElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLDivElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLHRElementImpl::HTMLHRElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::hr(), doc)
  +    : HTMLElementImpl(hrTag, doc)
   {
   }
   
  @@ -113,11 +114,11 @@
   
   bool HTMLHRElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::align() ||
  -        attrName == HTMLAttributes::width() ||
  -        attrName == HTMLAttributes::color() ||
  -        attrName == HTMLAttributes::size() ||
  -        attrName == HTMLAttributes::noshade()) {
  +    if (attrName == alignAttr ||
  +        attrName == widthAttr ||
  +        attrName == colorAttr ||
  +        attrName == sizeAttr ||
  +        attrName == noshadeAttr) {
           result = eHR;
           return false;
       }
  @@ -126,7 +127,7 @@
   
   void HTMLHRElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::align()) {
  +    if (attr->name() == alignAttr) {
           if (strcasecmp(attr->value(), "left") == 0) {
               addCSSProperty(attr, CSS_PROP_MARGIN_LEFT, "0");
   	    addCSSProperty(attr, CSS_PROP_MARGIN_RIGHT, CSS_VAL_AUTO);
  @@ -139,28 +140,28 @@
         	    addCSSProperty(attr, CSS_PROP_MARGIN_LEFT, CSS_VAL_AUTO);
               addCSSProperty(attr, CSS_PROP_MARGIN_RIGHT, CSS_VAL_AUTO);
   	}
  -    } else if (attr->name() == HTMLAttributes::width()) {
  +    } else if (attr->name() == widthAttr) {
           bool ok;
           int v = attr->value().implementation()->toInt(&ok);
           if(ok && !v)
               addCSSLength(attr, CSS_PROP_WIDTH, "1");
           else
               addCSSLength(attr, CSS_PROP_WIDTH, attr->value());
  -    } else if (attr->name() == HTMLAttributes::color()) {
  +    } else if (attr->name() == colorAttr) {
           addCSSProperty(attr, CSS_PROP_BORDER_TOP_STYLE, CSS_VAL_SOLID);
           addCSSProperty(attr, CSS_PROP_BORDER_RIGHT_STYLE, CSS_VAL_SOLID);
           addCSSProperty(attr, CSS_PROP_BORDER_BOTTOM_STYLE, CSS_VAL_SOLID);
           addCSSProperty(attr, CSS_PROP_BORDER_LEFT_STYLE, CSS_VAL_SOLID);
           addCSSColor(attr, CSS_PROP_BORDER_COLOR, attr->value());
           addCSSColor(attr, CSS_PROP_BACKGROUND_COLOR, attr->value());
  -    } else if (attr->name() == HTMLAttributes::noshade()) {
  +    } else if (attr->name() == noshadeAttr) {
           addCSSProperty(attr, CSS_PROP_BORDER_TOP_STYLE, CSS_VAL_SOLID);
           addCSSProperty(attr, CSS_PROP_BORDER_RIGHT_STYLE, CSS_VAL_SOLID);
           addCSSProperty(attr, CSS_PROP_BORDER_BOTTOM_STYLE, CSS_VAL_SOLID);
           addCSSProperty(attr, CSS_PROP_BORDER_LEFT_STYLE, CSS_VAL_SOLID);
           addCSSColor(attr, CSS_PROP_BORDER_COLOR, DOMString("grey"));
           addCSSColor(attr, CSS_PROP_BACKGROUND_COLOR, DOMString("grey"));
  -    } else if (attr->name() == HTMLAttributes::size()) {
  +    } else if (attr->name() == sizeAttr) {
           DOMStringImpl* si = attr->value().implementation();
           int size = si->toInt();
           if (size <= 1)
  @@ -173,42 +174,42 @@
   
   DOMString HTMLHRElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLHRElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   bool HTMLHRElementImpl::noShade() const
   {
  -    return !getAttribute(HTMLAttributes::noshade()).isNull();
  +    return !getAttribute(noshadeAttr).isNull();
   }
   
   void HTMLHRElementImpl::setNoShade(bool noShade)
   {
  -    setAttribute(HTMLAttributes::noshade(), noShade ? "" : 0);
  +    setAttribute(noshadeAttr, noShade ? "" : 0);
   }
   
   DOMString HTMLHRElementImpl::size() const
   {
  -    return getAttribute(HTMLAttributes::size());
  +    return getAttribute(sizeAttr);
   }
   
   void HTMLHRElementImpl::setSize(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::size(), value);
  +    setAttribute(sizeAttr, value);
   }
   
   DOMString HTMLHRElementImpl::width() const
   {
  -    return getAttribute(HTMLAttributes::width());
  +    return getAttribute(widthAttr);
   }
   
   void HTMLHRElementImpl::setWidth(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::width(), value);
  +    setAttribute(widthAttr, value);
   }
   
   // -------------------------------------------------------------------------
  @@ -220,9 +221,9 @@
   
   bool HTMLHeadingElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -    if (newChild->hasTagName(HTMLTags::h1()) || newChild->hasTagName(HTMLTags::h2()) ||
  -        newChild->hasTagName(HTMLTags::h3()) || newChild->hasTagName(HTMLTags::h4()) ||
  -        newChild->hasTagName(HTMLTags::h5()) || newChild->hasTagName(HTMLTags::h6()))
  +    if (newChild->hasTagName(h1Tag) || newChild->hasTagName(h2Tag) ||
  +        newChild->hasTagName(h3Tag) || newChild->hasTagName(h4Tag) ||
  +        newChild->hasTagName(h5Tag) || newChild->hasTagName(h6Tag))
           return false;
   
       return inEitherTagList(newChild);
  @@ -230,29 +231,29 @@
   
   DOMString HTMLHeadingElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLHeadingElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLParagraphElementImpl::HTMLParagraphElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::p(), doc)
  +    : HTMLElementImpl(pTag, doc)
   {
   }
   
   bool HTMLParagraphElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -    return inInlineTagList(newChild) || (getDocument()->inCompatMode() && newChild->hasTagName(HTMLTags::table()));
  +    return inInlineTagList(newChild) || (getDocument()->inCompatMode() && newChild->hasTagName(tableTag));
   }
   
   bool HTMLParagraphElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::align()) {
  +    if (attrName == alignAttr) {
           result = eBlock; // We can share with DIV here.
           return false;
       }
  @@ -261,7 +262,7 @@
   
   void HTMLParagraphElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::align()) {
  +    if (attr->name() == alignAttr) {
           DOMString v = attr->value();
           if ( strcasecmp( attr->value(), "middle" ) == 0 || strcasecmp( attr->value(), "center" ) == 0 )
               addCSSProperty(attr, CSS_PROP_TEXT_ALIGN, CSS_VAL__KHTML_CENTER);
  @@ -277,12 +278,12 @@
   
   DOMString HTMLParagraphElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLParagraphElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   // -------------------------------------------------------------------------
  @@ -294,12 +295,12 @@
   
   long HTMLPreElementImpl::width() const
   {
  -    return getAttribute(HTMLAttributes::width()).toInt();
  +    return getAttribute(widthAttr).toInt();
   }
   
   void HTMLPreElementImpl::setWidth(long width)
   {
  -    setAttribute(HTMLAttributes::width(), QString::number(width));
  +    setAttribute(widthAttr, QString::number(width));
   }
   
   // -------------------------------------------------------------------------
  @@ -308,23 +309,23 @@
   const int defaultMinimumDelay = 60;
   
   HTMLMarqueeElementImpl::HTMLMarqueeElementImpl(DocumentPtr *doc)
  -: HTMLElementImpl(HTMLTags::marquee(), doc),
  +: HTMLElementImpl(marqueeTag, doc),
     m_minimumDelay(defaultMinimumDelay)
   {
   }
   
   bool HTMLMarqueeElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::width() ||
  -        attrName == HTMLAttributes::height() ||
  -        attrName == HTMLAttributes::bgcolor() ||
  -        attrName == HTMLAttributes::vspace() ||
  -        attrName == HTMLAttributes::hspace() ||
  -        attrName == HTMLAttributes::scrollamount() ||
  -        attrName == HTMLAttributes::scrolldelay() ||
  -        attrName == HTMLAttributes::loop() ||
  -        attrName == HTMLAttributes::behavior() ||
  -        attrName == HTMLAttributes::direction()) {
  +    if (attrName == widthAttr ||
  +        attrName == heightAttr ||
  +        attrName == bgcolorAttr ||
  +        attrName == vspaceAttr ||
  +        attrName == hspaceAttr ||
  +        attrName == scrollamountAttr ||
  +        attrName == scrolldelayAttr ||
  +        attrName == loopAttr ||
  +        attrName == behaviorAttr ||
  +        attrName == directionAttr) {
           result = eUniversal;
           return false;
       }
  @@ -334,45 +335,45 @@
   
   void HTMLMarqueeElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::width()) {
  +    if (attr->name() == widthAttr) {
           if (!attr->value().isEmpty())
               addCSSLength(attr, CSS_PROP_WIDTH, attr->value());
  -    } else if (attr->name() == HTMLAttributes::height()) {
  +    } else if (attr->name() == heightAttr) {
           if (!attr->value().isEmpty())
               addCSSLength(attr, CSS_PROP_HEIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::bgcolor()) {
  +    } else if (attr->name() == bgcolorAttr) {
           if (!attr->value().isEmpty())
               addCSSColor(attr, CSS_PROP_BACKGROUND_COLOR, attr->value());
  -    } else if (attr->name() == HTMLAttributes::vspace()) {
  +    } else if (attr->name() == vspaceAttr) {
           if (!attr->value().isEmpty()) {
               addCSSLength(attr, CSS_PROP_MARGIN_TOP, attr->value());
               addCSSLength(attr, CSS_PROP_MARGIN_BOTTOM, attr->value());
           }
  -    } else if (attr->name() == HTMLAttributes::hspace()) {
  +    } else if (attr->name() == hspaceAttr) {
           if (!attr->value().isEmpty()) {
               addCSSLength(attr, CSS_PROP_MARGIN_LEFT, attr->value());
               addCSSLength(attr, CSS_PROP_MARGIN_RIGHT, attr->value());
           }
  -    } else if (attr->name() == HTMLAttributes::scrollamount()) {
  +    } else if (attr->name() == scrollamountAttr) {
           if (!attr->value().isEmpty())
               addCSSLength(attr, CSS_PROP__KHTML_MARQUEE_INCREMENT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::scrolldelay()) {
  +    } else if (attr->name() == scrolldelayAttr) {
           if (!attr->value().isEmpty())
               addCSSLength(attr, CSS_PROP__KHTML_MARQUEE_SPEED, attr->value());
  -    } else if (attr->name() == HTMLAttributes::loop()) {
  +    } else if (attr->name() == loopAttr) {
           if (!attr->value().isEmpty()) {
               if (attr->value() == "-1" || strcasecmp(attr->value(), "infinite") == 0)
                   addCSSProperty(attr, CSS_PROP__KHTML_MARQUEE_REPETITION, CSS_VAL_INFINITE);
               else
                   addCSSLength(attr, CSS_PROP__KHTML_MARQUEE_REPETITION, attr->value());
           }
  -    } else if (attr->name() == HTMLAttributes::behavior()) {
  +    } else if (attr->name() == behaviorAttr) {
           if (!attr->value().isEmpty())
               addCSSProperty(attr, CSS_PROP__KHTML_MARQUEE_STYLE, attr->value());
  -    } else if (attr->name() == HTMLAttributes::direction()) {
  +    } else if (attr->name() == directionAttr) {
           if (!attr->value().isEmpty())
               addCSSProperty(attr, CSS_PROP__KHTML_MARQUEE_DIRECTION, attr->value());
  -    } else if (attr->name() == HTMLAttributes::truespeed()) {
  +    } else if (attr->name() == truespeedAttr) {
           m_minimumDelay = !attr->isNull() ? 0 : defaultMinimumDelay;
       } else
           HTMLElementImpl::parseMappedAttribute(attr);
  
  
  
  1.7       +5 -4      WebCore/khtml/html/html_canvasimpl.cpp
  
  Index: html_canvasimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_canvasimpl.cpp,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- html_canvasimpl.cpp	18 Jul 2005 21:52:24 -0000	1.6
  +++ html_canvasimpl.cpp	30 Jul 2005 02:33:17 -0000	1.7
  @@ -49,12 +49,13 @@
   #include <qpointarray.h>
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   // -------------------------------------------------------------------------
   
   HTMLCanvasElementImpl::HTMLCanvasElementImpl(DocumentPtr *doc)
  -    : HTMLImageElementImpl(HTMLTags::canvas(), doc)
  +    : HTMLImageElementImpl(canvasTag, doc)
   {
   }
   
  @@ -64,14 +65,14 @@
   
   bool HTMLCanvasElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName != HTMLAttributes::src()) // Ignore the src attribute
  +    if (attrName != srcAttr) // Ignore the src attribute
           return HTMLImageElementImpl::mapToEntry(attrName, result);
       return false;
   }
   
   void HTMLCanvasElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() != HTMLAttributes::src()) // Canvas ignores the src attribute
  +    if (attr->name() != srcAttr) // Canvas ignores the src attribute
           HTMLImageElementImpl::parseMappedAttribute(attr);
   }
   
  @@ -94,5 +95,5 @@
   
   bool HTMLCanvasElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return ((attr->name() == HTMLAttributes::usemap() && attr->value().domString()[0] != '#'));
  +    return ((attr->name() == usemapAttr && attr->value().domString()[0] != '#'));
   }
  
  
  
  1.66      +2 -1      WebCore/khtml/html/html_documentimpl.cpp
  
  Index: html_documentimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_documentimpl.cpp,v
  retrieving revision 1.65
  retrieving revision 1.66
  diff -u -r1.65 -r1.66
  --- html_documentimpl.cpp	21 Jul 2005 04:10:52 -0000	1.65
  +++ html_documentimpl.cpp	30 Jul 2005 02:33:17 -0000	1.66
  @@ -101,6 +101,7 @@
   
   template class QPtrStack<DOM::NodeImpl>;
   
  +using namespace HTMLNames;
   using namespace khtml;
   
   namespace DOM {
  @@ -245,7 +246,7 @@
   bool HTMLDocumentImpl::childAllowed( NodeImpl *newChild )
   {
       // ### support comments. etc as a child
  -    return (newChild->hasTagName(HTMLTags::html()) || newChild->isCommentNode());
  +    return (newChild->hasTagName(htmlTag) || newChild->isCommentNode());
   }
   
   ElementImpl *HTMLDocumentImpl::createElement(const DOMString &name, int &exceptioncode)
  
  
  
  1.92      +246 -245  WebCore/khtml/html/html_elementimpl.cpp
  
  Index: html_elementimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_elementimpl.cpp,v
  retrieving revision 1.91
  retrieving revision 1.92
  diff -u -r1.91 -r1.92
  --- html_elementimpl.cpp	19 Jul 2005 18:43:23 -0000	1.91
  +++ html_elementimpl.cpp	30 Jul 2005 02:33:17 -0000	1.92
  @@ -54,6 +54,7 @@
   #include <kdebug.h>
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   // ------------------------------------------------------------------
  @@ -78,7 +79,7 @@
       
   HTMLTagStatus HTMLElementImpl::endTagRequirement() const
   {
  -    if (hasLocalName(HTMLTags::dt()) || hasLocalName(HTMLTags::dd()))
  +    if (hasLocalName(dtTag) || hasLocalName(ddTag))
           return TagStatusOptional;
   
       // Same values as <span>.  This way custom tag name elements will behave like inline spans.
  @@ -87,11 +88,11 @@
   
   int HTMLElementImpl::tagPriority() const
   {
  -    if (hasLocalName(HTMLTags::address()) || hasLocalName(HTMLTags::dd()) || hasLocalName(HTMLTags::dt()) || hasLocalName(HTMLTags::noscript()))
  +    if (hasLocalName(addressTag) || hasLocalName(ddTag) || hasLocalName(dtTag) || hasLocalName(noscriptTag))
           return 3;
  -    if (hasLocalName(HTMLTags::center()) || hasLocalName(HTMLTags::nobr()))
  +    if (hasLocalName(centerTag) || hasLocalName(nobrTag))
           return 5;
  -    if (hasLocalName(HTMLTags::noembed()) || hasLocalName(HTMLTags::noframes()))
  +    if (hasLocalName(noembedTag) || hasLocalName(noframesTag))
           return 10;
   
       // Same values as <span>.  This way custom tag name elements will behave like inline spans.
  @@ -118,9 +119,9 @@
   
   bool HTMLElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::align() ||
  -        attrName == HTMLAttributes::contenteditable() ||
  -        attrName == HTMLAttributes::dir()) {
  +    if (attrName == alignAttr ||
  +        attrName == contenteditableAttr ||
  +        attrName == dirAttr) {
           result = eUniversal;
           return false;
       }
  @@ -130,110 +131,110 @@
       
   void HTMLElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::idAttr() || attr->name() == HTMLAttributes::classAttr() || attr->name() == HTMLAttributes::style())
  +    if (attr->name() == idAttr || attr->name() == classAttr || attr->name() == styleAttr)
           return StyledElementImpl::parseMappedAttribute(attr);
   
       DOMString indexstring;
  -    if (attr->name() == HTMLAttributes::align()) {
  +    if (attr->name() == alignAttr) {
           if (strcasecmp(attr->value(), "middle" ) == 0)
               addCSSProperty(attr, CSS_PROP_TEXT_ALIGN, "center");
           else
               addCSSProperty(attr, CSS_PROP_TEXT_ALIGN, attr->value());
  -    } else if (attr->name() == HTMLAttributes::contenteditable()) {
  +    } else if (attr->name() == contenteditableAttr) {
           setContentEditable(attr);
  -    } else if (attr->name() == HTMLAttributes::tabindex()) {
  -        indexstring = getAttribute(HTMLAttributes::tabindex());
  +    } else if (attr->name() == tabindexAttr) {
  +        indexstring = getAttribute(tabindexAttr);
           if (indexstring.length())
               setTabIndex(indexstring.toInt());
  -    } else if (attr->name() == HTMLAttributes::lang()) {
  +    } else if (attr->name() == langAttr) {
           // FIXME: Implement
  -    } else if (attr->name() == HTMLAttributes::dir()) {
  +    } else if (attr->name() == dirAttr) {
           addCSSProperty(attr, CSS_PROP_DIRECTION, attr->value());
           addCSSProperty(attr, CSS_PROP_UNICODE_BIDI, CSS_VAL_EMBED);
       }
   // standard events
  -    else if (attr->name() == HTMLAttributes::onclick()) {
  +    else if (attr->name() == onclickAttr) {
           setHTMLEventListener(EventImpl::KHTML_CLICK_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::oncontextmenu()) {
  +    } else if (attr->name() == oncontextmenuAttr) {
       	setHTMLEventListener(EventImpl::CONTEXTMENU_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::ondblclick()) {
  +    } else if (attr->name() == ondblclickAttr) {
   	setHTMLEventListener(EventImpl::KHTML_DBLCLICK_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onmousedown()) {
  +    } else if (attr->name() == onmousedownAttr) {
           setHTMLEventListener(EventImpl::MOUSEDOWN_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onmousemove()) {
  +    } else if (attr->name() == onmousemoveAttr) {
           setHTMLEventListener(EventImpl::MOUSEMOVE_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onmouseout()) {
  +    } else if (attr->name() == onmouseoutAttr) {
           setHTMLEventListener(EventImpl::MOUSEOUT_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onmouseover()) {
  +    } else if (attr->name() == onmouseoverAttr) {
           setHTMLEventListener(EventImpl::MOUSEOVER_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onmouseup()) {
  +    } else if (attr->name() == onmouseupAttr) {
           setHTMLEventListener(EventImpl::MOUSEUP_EVENT,
   	                     getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onmousewheel()) {
  +    } else if (attr->name() == onmousewheelAttr) {
           setHTMLEventListener(EventImpl::MOUSEWHEEL_EVENT,
                               getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onfocus()) {
  +    } else if (attr->name() == onfocusAttr) {
           setHTMLEventListener(EventImpl::DOMFOCUSIN_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onkeydown()) {
  +    } else if (attr->name() == onkeydownAttr) {
           setHTMLEventListener(EventImpl::KEYDOWN_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onkeypress()) {
  +    } else if (attr->name() == onkeypressAttr) {
           setHTMLEventListener(EventImpl::KEYPRESS_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onkeyup()) {
  +    } else if (attr->name() == onkeyupAttr) {
           setHTMLEventListener(EventImpl::KEYUP_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onscroll()) {
  +    } else if (attr->name() == onscrollAttr) {
           setHTMLEventListener(EventImpl::SCROLL_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onbeforecut()) {
  +    } else if (attr->name() == onbeforecutAttr) {
           setHTMLEventListener(EventImpl::BEFORECUT_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::oncut()) {
  +    } else if (attr->name() == oncutAttr) {
           setHTMLEventListener(EventImpl::CUT_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onbeforecopy()) {
  +    } else if (attr->name() == onbeforecopyAttr) {
           setHTMLEventListener(EventImpl::BEFORECOPY_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::oncopy()) {
  +    } else if (attr->name() == oncopyAttr) {
           setHTMLEventListener(EventImpl::COPY_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onbeforepaste()) {
  +    } else if (attr->name() == onbeforepasteAttr) {
           setHTMLEventListener(EventImpl::BEFOREPASTE_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onpaste()) {
  +    } else if (attr->name() == onpasteAttr) {
           setHTMLEventListener(EventImpl::PASTE_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::ondragenter()) {
  +    } else if (attr->name() == ondragenterAttr) {
           setHTMLEventListener(EventImpl::DRAGENTER_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::ondragover()) {
  +    } else if (attr->name() == ondragoverAttr) {
           setHTMLEventListener(EventImpl::DRAGOVER_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::ondragleave()) {
  +    } else if (attr->name() == ondragleaveAttr) {
           setHTMLEventListener(EventImpl::DRAGLEAVE_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::ondrop()) {
  +    } else if (attr->name() == ondropAttr) {
           setHTMLEventListener(EventImpl::DROP_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::ondragstart()) {
  +    } else if (attr->name() == ondragstartAttr) {
           setHTMLEventListener(EventImpl::DRAGSTART_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::ondrag()) {
  +    } else if (attr->name() == ondragAttr) {
           setHTMLEventListener(EventImpl::DRAG_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::ondragend()) {
  +    } else if (attr->name() == ondragendAttr) {
           setHTMLEventListener(EventImpl::DRAGEND_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onselectstart()) {
  +    } else if (attr->name() == onselectstartAttr) {
           setHTMLEventListener(EventImpl::SELECTSTART_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
       } 
  @@ -272,8 +273,8 @@
       if (endTagRequirement() == TagStatusForbidden)
           return 0;
   
  -    if (hasLocalName(HTMLTags::col()) || hasLocalName(HTMLTags::colgroup()) || hasLocalName(HTMLTags::frameset()) ||
  -        hasLocalName(HTMLTags::head()) || hasLocalName(HTMLTags::style()) || hasLocalName(HTMLTags::title()))
  +    if (hasLocalName(colTag) || hasLocalName(colgroupTag) || hasLocalName(framesetTag) ||
  +        hasLocalName(headTag) || hasLocalName(styleTag) || hasLocalName(titleTag))
           return 0;
   
       if (!getDocument()->isHTMLDocument())
  @@ -300,7 +301,7 @@
       for (NodeImpl *node = fragment->firstChild(); node != NULL; node = nextNode) {
           nextNode = node->nextSibling();
   	node->ref();
  -        if (node->hasTagName(HTMLTags::html()) || node->hasTagName(HTMLTags::body())) {
  +        if (node->hasTagName(htmlTag) || node->hasTagName(bodyTag)) {
   	    NodeImpl *firstChild = node->firstChild();
               if (firstChild != NULL) {
                   nextNode = firstChild;
  @@ -314,7 +315,7 @@
                   child->deref();
   	    }
               fragment->removeChild(node, ignoredExceptionCode);
  -	} else if (node->hasTagName(HTMLTags::head()))
  +	} else if (node->hasTagName(headTag))
   	    fragment->removeChild(node, ignoredExceptionCode);
   
           // Important to do this deref after removeChild, because if the only thing
  @@ -374,10 +375,10 @@
           return;
       }
   
  -    if (hasLocalName(HTMLTags::col()) || hasLocalName(HTMLTags::colgroup()) || hasLocalName(HTMLTags::frameset()) ||
  -        hasLocalName(HTMLTags::head()) || hasLocalName(HTMLTags::html()) || hasLocalName(HTMLTags::table()) || 
  -        hasLocalName(HTMLTags::tbody()) || hasLocalName(HTMLTags::tfoot()) || hasLocalName(HTMLTags::thead()) ||
  -        hasLocalName(HTMLTags::tr())) {
  +    if (hasLocalName(colTag) || hasLocalName(colgroupTag) || hasLocalName(framesetTag) ||
  +        hasLocalName(headTag) || hasLocalName(htmlTag) || hasLocalName(tableTag) || 
  +        hasLocalName(tbodyTag) || hasLocalName(tfootTag) || hasLocalName(theadTag) ||
  +        hasLocalName(trTag)) {
           exception = DOMException::NO_MODIFICATION_ALLOWED_ERR;
           return;
       }
  @@ -394,10 +395,10 @@
           return;
       }
   
  -    if (hasLocalName(HTMLTags::col()) || hasLocalName(HTMLTags::colgroup()) || hasLocalName(HTMLTags::frameset()) ||
  -        hasLocalName(HTMLTags::head()) || hasLocalName(HTMLTags::html()) || hasLocalName(HTMLTags::table()) || 
  -        hasLocalName(HTMLTags::tbody()) || hasLocalName(HTMLTags::tfoot()) || hasLocalName(HTMLTags::thead()) ||
  -        hasLocalName(HTMLTags::tr())) {
  +    if (hasLocalName(colTag) || hasLocalName(colgroupTag) || hasLocalName(framesetTag) ||
  +        hasLocalName(headTag) || hasLocalName(htmlTag) || hasLocalName(tableTag) || 
  +        hasLocalName(tbodyTag) || hasLocalName(tfootTag) || hasLocalName(theadTag) ||
  +        hasLocalName(trTag)) {
           exception = DOMException::NO_MODIFICATION_ALLOWED_ERR;
           return;
       }
  @@ -540,10 +541,10 @@
   void HTMLElementImpl::setContentEditable(const DOMString &enabled) {
       if (enabled == "inherit") {
           int exceptionCode;
  -        removeAttribute(HTMLAttributes::contenteditable(), exceptionCode);
  +        removeAttribute(contenteditableAttr, exceptionCode);
       }
       else
  -        setAttribute(HTMLAttributes::contenteditable(), enabled.isEmpty() ? "true" : enabled);
  +        setAttribute(contenteditableAttr, enabled.isEmpty() ? "true" : enabled);
   }
   
   void HTMLElementImpl::click(bool sendMouseEvents)
  @@ -600,52 +601,52 @@
   
   DOMString HTMLElementImpl::id() const
   {
  -    return getAttribute(HTMLAttributes::idAttr());
  +    return getAttribute(idAttr);
   }
   
   void HTMLElementImpl::setId(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::idAttr(), value);
  +    setAttribute(idAttr, value);
   }
   
   DOMString HTMLElementImpl::title() const
   {
  -    return getAttribute(HTMLAttributes::title());
  +    return getAttribute(titleAttr);
   }
   
   void HTMLElementImpl::setTitle(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::title(), value);
  +    setAttribute(titleAttr, value);
   }
   
   DOMString HTMLElementImpl::lang() const
   {
  -    return getAttribute(HTMLAttributes::lang());
  +    return getAttribute(langAttr);
   }
   
   void HTMLElementImpl::setLang(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::lang(), value);
  +    setAttribute(langAttr, value);
   }
   
   DOMString HTMLElementImpl::dir() const
   {
  -    return getAttribute(HTMLAttributes::dir());
  +    return getAttribute(dirAttr);
   }
   
   void HTMLElementImpl::setDir(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::dir(), value);
  +    setAttribute(dirAttr, value);
   }
   
   DOMString HTMLElementImpl::className() const
   {
  -    return getAttribute(HTMLAttributes::classAttr());
  +    return getAttribute(classAttr);
   }
   
   void HTMLElementImpl::setClassName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::classAttr(), value);
  +    setAttribute(classAttr, value);
   }
   
   SharedPtr<HTMLCollectionImpl> HTMLElementImpl::children()
  @@ -685,108 +686,108 @@
   {
       static HashSet<DOMStringImpl*, PointerHash<DOMStringImpl*> > tagList;
       if (tagList.isEmpty()) {
  -        tagList.insert(HTMLTags::a().localName().implementation());
  -        tagList.insert(HTMLTags::abbr().localName().implementation());
  -        tagList.insert(HTMLTags::acronym().localName().implementation());
  -        tagList.insert(HTMLTags::address().localName().implementation());
  -        tagList.insert(HTMLTags::applet().localName().implementation());
  -        tagList.insert(HTMLTags::area().localName().implementation());
  -        tagList.insert(HTMLTags::b().localName().implementation());
  -        tagList.insert(HTMLTags::base().localName().implementation());
  -        tagList.insert(HTMLTags::basefont().localName().implementation());
  -        tagList.insert(HTMLTags::bdo().localName().implementation());
  -        tagList.insert(HTMLTags::big().localName().implementation());
  -        tagList.insert(HTMLTags::blockquote().localName().implementation());
  -        tagList.insert(HTMLTags::body().localName().implementation());
  -        tagList.insert(HTMLTags::br().localName().implementation());
  -        tagList.insert(HTMLTags::button().localName().implementation());
  -        tagList.insert(HTMLTags::canvas().localName().implementation());
  -        tagList.insert(HTMLTags::caption().localName().implementation());
  -        tagList.insert(HTMLTags::center().localName().implementation());
  -        tagList.insert(HTMLTags::cite().localName().implementation());
  -        tagList.insert(HTMLTags::code().localName().implementation());
  -        tagList.insert(HTMLTags::col().localName().implementation());
  -        tagList.insert(HTMLTags::colgroup().localName().implementation());
  -        tagList.insert(HTMLTags::dd().localName().implementation());
  -        tagList.insert(HTMLTags::del().localName().implementation());
  -        tagList.insert(HTMLTags::dfn().localName().implementation());
  -        tagList.insert(HTMLTags::dir().localName().implementation());
  -        tagList.insert(HTMLTags::div().localName().implementation());
  -        tagList.insert(HTMLTags::dl().localName().implementation());
  -        tagList.insert(HTMLTags::dt().localName().implementation());
  -        tagList.insert(HTMLTags::em().localName().implementation());
  -        tagList.insert(HTMLTags::embed().localName().implementation());
  -        tagList.insert(HTMLTags::fieldset().localName().implementation());
  -        tagList.insert(HTMLTags::font().localName().implementation());
  -        tagList.insert(HTMLTags::form().localName().implementation());
  -        tagList.insert(HTMLTags::frame().localName().implementation());
  -        tagList.insert(HTMLTags::frameset().localName().implementation());
  -        tagList.insert(HTMLTags::head().localName().implementation());
  -        tagList.insert(HTMLTags::h1().localName().implementation());
  -        tagList.insert(HTMLTags::h2().localName().implementation());
  -        tagList.insert(HTMLTags::h3().localName().implementation());
  -        tagList.insert(HTMLTags::h4().localName().implementation());
  -        tagList.insert(HTMLTags::h5().localName().implementation());
  -        tagList.insert(HTMLTags::h6().localName().implementation());
  -        tagList.insert(HTMLTags::hr().localName().implementation());
  -        tagList.insert(HTMLTags::html().localName().implementation());
  -        tagList.insert(HTMLTags::i().localName().implementation());
  -        tagList.insert(HTMLTags::iframe().localName().implementation());
  -        tagList.insert(HTMLTags::img().localName().implementation());
  -        tagList.insert(HTMLTags::input().localName().implementation());
  -        tagList.insert(HTMLTags::ins().localName().implementation());
  -        tagList.insert(HTMLTags::isindex().localName().implementation());
  -        tagList.insert(HTMLTags::kbd().localName().implementation());
  -        tagList.insert(HTMLTags::keygen().localName().implementation());
  -        tagList.insert(HTMLTags::label().localName().implementation());
  -        tagList.insert(HTMLTags::layer().localName().implementation());
  -        tagList.insert(HTMLTags::legend().localName().implementation());
  -        tagList.insert(HTMLTags::li().localName().implementation());
  -        tagList.insert(HTMLTags::link().localName().implementation());
  -        tagList.insert(HTMLTags::map().localName().implementation());
  -        tagList.insert(HTMLTags::marquee().localName().implementation());
  -        tagList.insert(HTMLTags::menu().localName().implementation());
  -        tagList.insert(HTMLTags::meta().localName().implementation());
  -        tagList.insert(HTMLTags::nobr().localName().implementation());
  -        tagList.insert(HTMLTags::noembed().localName().implementation());
  -        tagList.insert(HTMLTags::noframes().localName().implementation());
  -        tagList.insert(HTMLTags::nolayer().localName().implementation());
  -        tagList.insert(HTMLTags::noscript().localName().implementation());
  -        tagList.insert(HTMLTags::object().localName().implementation());
  -        tagList.insert(HTMLTags::ol().localName().implementation());
  -        tagList.insert(HTMLTags::optgroup().localName().implementation());
  -        tagList.insert(HTMLTags::option().localName().implementation());
  -        tagList.insert(HTMLTags::p().localName().implementation());
  -        tagList.insert(HTMLTags::param().localName().implementation());
  -        tagList.insert(HTMLTags::plaintext().localName().implementation());
  -        tagList.insert(HTMLTags::pre().localName().implementation());
  -        tagList.insert(HTMLTags::q().localName().implementation());
  -        tagList.insert(HTMLTags::s().localName().implementation());
  -        tagList.insert(HTMLTags::samp().localName().implementation());
  -        tagList.insert(HTMLTags::script().localName().implementation());
  -        tagList.insert(HTMLTags::select().localName().implementation());
  -        tagList.insert(HTMLTags::small().localName().implementation());
  -        tagList.insert(HTMLTags::span().localName().implementation());
  -        tagList.insert(HTMLTags::strike().localName().implementation());
  -        tagList.insert(HTMLTags::strong().localName().implementation());
  -        tagList.insert(HTMLTags::style().localName().implementation());
  -        tagList.insert(HTMLTags::sub().localName().implementation());
  -        tagList.insert(HTMLTags::sup().localName().implementation());
  -        tagList.insert(HTMLTags::table().localName().implementation());
  -        tagList.insert(HTMLTags::tbody().localName().implementation());
  -        tagList.insert(HTMLTags::td().localName().implementation());
  -        tagList.insert(HTMLTags::textarea().localName().implementation());
  -        tagList.insert(HTMLTags::tfoot().localName().implementation());
  -        tagList.insert(HTMLTags::th().localName().implementation());
  -        tagList.insert(HTMLTags::thead().localName().implementation());
  -        tagList.insert(HTMLTags::title().localName().implementation());
  -        tagList.insert(HTMLTags::tr().localName().implementation());
  -        tagList.insert(HTMLTags::tt().localName().implementation());
  -        tagList.insert(HTMLTags::u().localName().implementation());
  -        tagList.insert(HTMLTags::ul().localName().implementation());
  -        tagList.insert(HTMLTags::var().localName().implementation());
  -        tagList.insert(HTMLTags::wbr().localName().implementation());
  -        tagList.insert(HTMLTags::xmp().localName().implementation());
  +        tagList.insert(aTag.localName().implementation());
  +        tagList.insert(abbrTag.localName().implementation());
  +        tagList.insert(acronymTag.localName().implementation());
  +        tagList.insert(addressTag.localName().implementation());
  +        tagList.insert(appletTag.localName().implementation());
  +        tagList.insert(areaTag.localName().implementation());
  +        tagList.insert(bTag.localName().implementation());
  +        tagList.insert(baseTag.localName().implementation());
  +        tagList.insert(basefontTag.localName().implementation());
  +        tagList.insert(bdoTag.localName().implementation());
  +        tagList.insert(bigTag.localName().implementation());
  +        tagList.insert(blockquoteTag.localName().implementation());
  +        tagList.insert(bodyTag.localName().implementation());
  +        tagList.insert(brTag.localName().implementation());
  +        tagList.insert(buttonTag.localName().implementation());
  +        tagList.insert(canvasTag.localName().implementation());
  +        tagList.insert(captionTag.localName().implementation());
  +        tagList.insert(centerTag.localName().implementation());
  +        tagList.insert(citeTag.localName().implementation());
  +        tagList.insert(codeTag.localName().implementation());
  +        tagList.insert(colTag.localName().implementation());
  +        tagList.insert(colgroupTag.localName().implementation());
  +        tagList.insert(ddTag.localName().implementation());
  +        tagList.insert(delTag.localName().implementation());
  +        tagList.insert(dfnTag.localName().implementation());
  +        tagList.insert(dirTag.localName().implementation());
  +        tagList.insert(divTag.localName().implementation());
  +        tagList.insert(dlTag.localName().implementation());
  +        tagList.insert(dtTag.localName().implementation());
  +        tagList.insert(emTag.localName().implementation());
  +        tagList.insert(embedTag.localName().implementation());
  +        tagList.insert(fieldsetTag.localName().implementation());
  +        tagList.insert(fontTag.localName().implementation());
  +        tagList.insert(formTag.localName().implementation());
  +        tagList.insert(frameTag.localName().implementation());
  +        tagList.insert(framesetTag.localName().implementation());
  +        tagList.insert(headTag.localName().implementation());
  +        tagList.insert(h1Tag.localName().implementation());
  +        tagList.insert(h2Tag.localName().implementation());
  +        tagList.insert(h3Tag.localName().implementation());
  +        tagList.insert(h4Tag.localName().implementation());
  +        tagList.insert(h5Tag.localName().implementation());
  +        tagList.insert(h6Tag.localName().implementation());
  +        tagList.insert(hrTag.localName().implementation());
  +        tagList.insert(htmlTag.localName().implementation());
  +        tagList.insert(iTag.localName().implementation());
  +        tagList.insert(iframeTag.localName().implementation());
  +        tagList.insert(imgTag.localName().implementation());
  +        tagList.insert(inputTag.localName().implementation());
  +        tagList.insert(insTag.localName().implementation());
  +        tagList.insert(isindexTag.localName().implementation());
  +        tagList.insert(kbdTag.localName().implementation());
  +        tagList.insert(keygenTag.localName().implementation());
  +        tagList.insert(labelTag.localName().implementation());
  +        tagList.insert(layerTag.localName().implementation());
  +        tagList.insert(legendTag.localName().implementation());
  +        tagList.insert(liTag.localName().implementation());
  +        tagList.insert(linkTag.localName().implementation());
  +        tagList.insert(mapTag.localName().implementation());
  +        tagList.insert(marqueeTag.localName().implementation());
  +        tagList.insert(menuTag.localName().implementation());
  +        tagList.insert(metaTag.localName().implementation());
  +        tagList.insert(nobrTag.localName().implementation());
  +        tagList.insert(noembedTag.localName().implementation());
  +        tagList.insert(noframesTag.localName().implementation());
  +        tagList.insert(nolayerTag.localName().implementation());
  +        tagList.insert(noscriptTag.localName().implementation());
  +        tagList.insert(objectTag.localName().implementation());
  +        tagList.insert(olTag.localName().implementation());
  +        tagList.insert(optgroupTag.localName().implementation());
  +        tagList.insert(optionTag.localName().implementation());
  +        tagList.insert(pTag.localName().implementation());
  +        tagList.insert(paramTag.localName().implementation());
  +        tagList.insert(plaintextTag.localName().implementation());
  +        tagList.insert(preTag.localName().implementation());
  +        tagList.insert(qTag.localName().implementation());
  +        tagList.insert(sTag.localName().implementation());
  +        tagList.insert(sampTag.localName().implementation());
  +        tagList.insert(scriptTag.localName().implementation());
  +        tagList.insert(selectTag.localName().implementation());
  +        tagList.insert(smallTag.localName().implementation());
  +        tagList.insert(spanTag.localName().implementation());
  +        tagList.insert(strikeTag.localName().implementation());
  +        tagList.insert(strongTag.localName().implementation());
  +        tagList.insert(styleTag.localName().implementation());
  +        tagList.insert(subTag.localName().implementation());
  +        tagList.insert(supTag.localName().implementation());
  +        tagList.insert(tableTag.localName().implementation());
  +        tagList.insert(tbodyTag.localName().implementation());
  +        tagList.insert(tdTag.localName().implementation());
  +        tagList.insert(textareaTag.localName().implementation());
  +        tagList.insert(tfootTag.localName().implementation());
  +        tagList.insert(thTag.localName().implementation());
  +        tagList.insert(theadTag.localName().implementation());
  +        tagList.insert(titleTag.localName().implementation());
  +        tagList.insert(trTag.localName().implementation());
  +        tagList.insert(ttTag.localName().implementation());
  +        tagList.insert(uTag.localName().implementation());
  +        tagList.insert(ulTag.localName().implementation());
  +        tagList.insert(varTag.localName().implementation());
  +        tagList.insert(wbrTag.localName().implementation());
  +        tagList.insert(xmpTag.localName().implementation());
       }
   
       return tagList.contains(tagName.localName().implementation());
  @@ -797,51 +798,51 @@
   HashSet<DOMStringImpl*, PointerHash<DOMStringImpl*> >* inlineTagList() {
       static HashSet<DOMStringImpl*, PointerHash<DOMStringImpl*> > tagList;
       if (tagList.isEmpty()) {
  -        tagList.insert(HTMLTags::tt().localName().implementation());
  -        tagList.insert(HTMLTags::i().localName().implementation());
  -        tagList.insert(HTMLTags::b().localName().implementation());
  -        tagList.insert(HTMLTags::u().localName().implementation());
  -        tagList.insert(HTMLTags::s().localName().implementation());
  -        tagList.insert(HTMLTags::strike().localName().implementation());
  -        tagList.insert(HTMLTags::big().localName().implementation());
  -        tagList.insert(HTMLTags::small().localName().implementation());
  -        tagList.insert(HTMLTags::em().localName().implementation());
  -        tagList.insert(HTMLTags::strong().localName().implementation());
  -        tagList.insert(HTMLTags::dfn().localName().implementation());
  -        tagList.insert(HTMLTags::code().localName().implementation());
  -        tagList.insert(HTMLTags::samp().localName().implementation());
  -        tagList.insert(HTMLTags::kbd().localName().implementation());
  -        tagList.insert(HTMLTags::var().localName().implementation());
  -        tagList.insert(HTMLTags::cite().localName().implementation());
  -        tagList.insert(HTMLTags::abbr().localName().implementation());
  -        tagList.insert(HTMLTags::acronym().localName().implementation());
  -        tagList.insert(HTMLTags::a().localName().implementation());
  -        tagList.insert(HTMLTags::canvas().localName().implementation());
  -        tagList.insert(HTMLTags::img().localName().implementation());
  -        tagList.insert(HTMLTags::applet().localName().implementation());
  -        tagList.insert(HTMLTags::object().localName().implementation());
  -        tagList.insert(HTMLTags::embed().localName().implementation());
  -        tagList.insert(HTMLTags::font().localName().implementation());
  -        tagList.insert(HTMLTags::basefont().localName().implementation());
  -        tagList.insert(HTMLTags::br().localName().implementation());
  -        tagList.insert(HTMLTags::script().localName().implementation());
  -        tagList.insert(HTMLTags::map().localName().implementation());
  -        tagList.insert(HTMLTags::q().localName().implementation());
  -        tagList.insert(HTMLTags::sub().localName().implementation());
  -        tagList.insert(HTMLTags::sup().localName().implementation());
  -        tagList.insert(HTMLTags::span().localName().implementation());
  -        tagList.insert(HTMLTags::bdo().localName().implementation());
  -        tagList.insert(HTMLTags::iframe().localName().implementation());
  -        tagList.insert(HTMLTags::input().localName().implementation());
  -        tagList.insert(HTMLTags::keygen().localName().implementation());
  -        tagList.insert(HTMLTags::select().localName().implementation());
  -        tagList.insert(HTMLTags::textarea().localName().implementation());
  -        tagList.insert(HTMLTags::label().localName().implementation());
  -        tagList.insert(HTMLTags::button().localName().implementation());
  -        tagList.insert(HTMLTags::ins().localName().implementation());
  -        tagList.insert(HTMLTags::del().localName().implementation());
  -        tagList.insert(HTMLTags::nobr().localName().implementation());
  -        tagList.insert(HTMLTags::wbr().localName().implementation());
  +        tagList.insert(ttTag.localName().implementation());
  +        tagList.insert(iTag.localName().implementation());
  +        tagList.insert(bTag.localName().implementation());
  +        tagList.insert(uTag.localName().implementation());
  +        tagList.insert(sTag.localName().implementation());
  +        tagList.insert(strikeTag.localName().implementation());
  +        tagList.insert(bigTag.localName().implementation());
  +        tagList.insert(smallTag.localName().implementation());
  +        tagList.insert(emTag.localName().implementation());
  +        tagList.insert(strongTag.localName().implementation());
  +        tagList.insert(dfnTag.localName().implementation());
  +        tagList.insert(codeTag.localName().implementation());
  +        tagList.insert(sampTag.localName().implementation());
  +        tagList.insert(kbdTag.localName().implementation());
  +        tagList.insert(varTag.localName().implementation());
  +        tagList.insert(citeTag.localName().implementation());
  +        tagList.insert(abbrTag.localName().implementation());
  +        tagList.insert(acronymTag.localName().implementation());
  +        tagList.insert(aTag.localName().implementation());
  +        tagList.insert(canvasTag.localName().implementation());
  +        tagList.insert(imgTag.localName().implementation());
  +        tagList.insert(appletTag.localName().implementation());
  +        tagList.insert(objectTag.localName().implementation());
  +        tagList.insert(embedTag.localName().implementation());
  +        tagList.insert(fontTag.localName().implementation());
  +        tagList.insert(basefontTag.localName().implementation());
  +        tagList.insert(brTag.localName().implementation());
  +        tagList.insert(scriptTag.localName().implementation());
  +        tagList.insert(mapTag.localName().implementation());
  +        tagList.insert(qTag.localName().implementation());
  +        tagList.insert(subTag.localName().implementation());
  +        tagList.insert(supTag.localName().implementation());
  +        tagList.insert(spanTag.localName().implementation());
  +        tagList.insert(bdoTag.localName().implementation());
  +        tagList.insert(iframeTag.localName().implementation());
  +        tagList.insert(inputTag.localName().implementation());
  +        tagList.insert(keygenTag.localName().implementation());
  +        tagList.insert(selectTag.localName().implementation());
  +        tagList.insert(textareaTag.localName().implementation());
  +        tagList.insert(labelTag.localName().implementation());
  +        tagList.insert(buttonTag.localName().implementation());
  +        tagList.insert(insTag.localName().implementation());
  +        tagList.insert(delTag.localName().implementation());
  +        tagList.insert(nobrTag.localName().implementation());
  +        tagList.insert(wbrTag.localName().implementation());
       }
       return &tagList;
   }
  @@ -849,37 +850,37 @@
   HashSet<DOMStringImpl*, PointerHash<DOMStringImpl*> >* blockTagList() {
       static HashSet<DOMStringImpl*, PointerHash<DOMStringImpl*> > tagList;
       if (tagList.isEmpty()) {
  -        tagList.insert(HTMLTags::p().localName().implementation());
  -        tagList.insert(HTMLTags::h1().localName().implementation());
  -        tagList.insert(HTMLTags::h2().localName().implementation());
  -        tagList.insert(HTMLTags::h3().localName().implementation());
  -        tagList.insert(HTMLTags::h4().localName().implementation());
  -        tagList.insert(HTMLTags::h5().localName().implementation());
  -        tagList.insert(HTMLTags::h6().localName().implementation());
  -        tagList.insert(HTMLTags::ul().localName().implementation());
  -        tagList.insert(HTMLTags::ol().localName().implementation());
  -        tagList.insert(HTMLTags::dir().localName().implementation());
  -        tagList.insert(HTMLTags::menu().localName().implementation());
  -        tagList.insert(HTMLTags::pre().localName().implementation());
  -        tagList.insert(HTMLTags::plaintext().localName().implementation());
  -        tagList.insert(HTMLTags::xmp().localName().implementation());
  -        tagList.insert(HTMLTags::dl().localName().implementation());
  -        tagList.insert(HTMLTags::div().localName().implementation());
  -        tagList.insert(HTMLTags::layer().localName().implementation());
  -        tagList.insert(HTMLTags::center().localName().implementation());
  -        tagList.insert(HTMLTags::noscript().localName().implementation());
  -        tagList.insert(HTMLTags::noframes().localName().implementation());
  -        tagList.insert(HTMLTags::blockquote().localName().implementation());
  -        tagList.insert(HTMLTags::form().localName().implementation());
  -        tagList.insert(HTMLTags::isindex().localName().implementation());
  -        tagList.insert(HTMLTags::hr().localName().implementation());
  -        tagList.insert(HTMLTags::table().localName().implementation());
  -        tagList.insert(HTMLTags::fieldset().localName().implementation());
  -        tagList.insert(HTMLTags::address().localName().implementation());
  -        tagList.insert(HTMLTags::li().localName().implementation());
  -        tagList.insert(HTMLTags::dd().localName().implementation());
  -        tagList.insert(HTMLTags::dt().localName().implementation());
  -        tagList.insert(HTMLTags::marquee().localName().implementation());
  +        tagList.insert(pTag.localName().implementation());
  +        tagList.insert(h1Tag.localName().implementation());
  +        tagList.insert(h2Tag.localName().implementation());
  +        tagList.insert(h3Tag.localName().implementation());
  +        tagList.insert(h4Tag.localName().implementation());
  +        tagList.insert(h5Tag.localName().implementation());
  +        tagList.insert(h6Tag.localName().implementation());
  +        tagList.insert(ulTag.localName().implementation());
  +        tagList.insert(olTag.localName().implementation());
  +        tagList.insert(dirTag.localName().implementation());
  +        tagList.insert(menuTag.localName().implementation());
  +        tagList.insert(preTag.localName().implementation());
  +        tagList.insert(plaintextTag.localName().implementation());
  +        tagList.insert(xmpTag.localName().implementation());
  +        tagList.insert(dlTag.localName().implementation());
  +        tagList.insert(divTag.localName().implementation());
  +        tagList.insert(layerTag.localName().implementation());
  +        tagList.insert(centerTag.localName().implementation());
  +        tagList.insert(noscriptTag.localName().implementation());
  +        tagList.insert(noframesTag.localName().implementation());
  +        tagList.insert(blockquoteTag.localName().implementation());
  +        tagList.insert(formTag.localName().implementation());
  +        tagList.insert(isindexTag.localName().implementation());
  +        tagList.insert(hrTag.localName().implementation());
  +        tagList.insert(tableTag.localName().implementation());
  +        tagList.insert(fieldsetTag.localName().implementation());
  +        tagList.insert(addressTag.localName().implementation());
  +        tagList.insert(liTag.localName().implementation());
  +        tagList.insert(ddTag.localName().implementation());
  +        tagList.insert(dtTag.localName().implementation());
  +        tagList.insert(marqueeTag.localName().implementation());
       }
       return &tagList;
   }
  @@ -931,7 +932,7 @@
   
   bool HTMLElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -    if (hasTagName(HTMLTags::address()) && newChild->hasTagName(HTMLTags::p()))
  +    if (hasTagName(addressTag) && newChild->hasTagName(pTag))
           return true;
       return inEitherTagList(newChild);
   }
  
  
  
  1.181     +199 -198  WebCore/khtml/html/html_formimpl.cpp
  
  Index: html_formimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_formimpl.cpp,v
  retrieving revision 1.180
  retrieving revision 1.181
  diff -u -r1.180 -r1.181
  --- html_formimpl.cpp	29 Jul 2005 21:16:50 -0000	1.180
  +++ html_formimpl.cpp	30 Jul 2005 02:33:17 -0000	1.181
  @@ -63,6 +63,7 @@
   
   #include <assert.h>
   
  +using namespace HTMLNames;
   using namespace khtml;
   
   namespace DOM {
  @@ -103,7 +104,7 @@
   };
   
   HTMLFormElementImpl::HTMLFormElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::form(), doc)
  +    : HTMLElementImpl(formTag, doc)
   {
       collectionInfo = 0;
       m_post = false;
  @@ -190,7 +191,7 @@
   {
       bool submitFound = false;
       for (unsigned i = 0; i < formElements.count(); ++i) {
  -        if (formElements[i]->hasLocalName(HTMLTags::input())) {
  +        if (formElements[i]->hasLocalName(inputTag)) {
               HTMLInputElementImpl *element = static_cast<HTMLInputElementImpl *>(formElements[i]);
               if (element->isSuccessfulSubmitButton() && element->renderer()) {
                   submitFound = true;
  @@ -397,7 +398,7 @@
   
                       // if the current type is FILE, then we also need to
                       // include the filename
  -                    if (current->hasLocalName(HTMLTags::input()) &&
  +                    if (current->hasLocalName(inputTag) &&
                           static_cast<HTMLInputElementImpl*>(current)->inputType() == HTMLInputElementImpl::FILE)
                       {
                           QString path = static_cast<HTMLInputElementImpl*>(current)->value().string();
  @@ -545,7 +546,7 @@
   #if APPLE_CHANGES
           // Our app needs to get form values for password fields for doing password autocomplete,
           // so we are more lenient in pushing values, and let the app decide what to save when.
  -        if (current->hasLocalName(HTMLTags::input())) {
  +        if (current->hasLocalName(inputTag)) {
               HTMLInputElementImpl *input = static_cast<HTMLInputElementImpl*>(current);
               if (input->inputType() == HTMLInputElementImpl::TEXT
                   || input->inputType() ==  HTMLInputElementImpl::PASSWORD
  @@ -626,7 +627,7 @@
   
   void HTMLFormElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::action()) 
  +    if (attr->name() == actionAttr) 
   #if APPLE_CHANGES
       {
           bool oldURLWasSecure = formWouldHaveSecureSubmission(m_url);
  @@ -642,30 +643,30 @@
                   getDocument()->secureFormRemoved();
       }
   #endif
  -    else if (attr->name() == HTMLAttributes::target()) {
  +    else if (attr->name() == targetAttr) {
           m_target = attr->value();
  -    } else if (attr->name() == HTMLAttributes::method()) {
  +    } else if (attr->name() == methodAttr) {
           if ( strcasecmp( attr->value(), "post" ) == 0 )
               m_post = true;
           else if ( strcasecmp( attr->value(), "get" ) == 0 )
               m_post = false;
  -    } else if (attr->name() == HTMLAttributes::enctype()) {
  +    } else if (attr->name() == enctypeAttr) {
           parseEnctype(attr->value());
  -    } else if (attr->name() == HTMLAttributes::accept_charset()) {
  +    } else if (attr->name() == accept_charsetAttr) {
           // space separated list of charsets the server
           // accepts - see rfc2045
           m_acceptcharset = attr->value();
  -    } else if (attr->name() == HTMLAttributes::accept()) {
  +    } else if (attr->name() == acceptAttr) {
           // ignore this one for the moment...
  -    } else if (attr->name() == HTMLAttributes::autocomplete()) {
  +    } else if (attr->name() == autocompleteAttr) {
           m_autocomplete = strcasecmp( attr->value(), "off" );
  -    } else if (attr->name() == HTMLAttributes::onsubmit()) {
  +    } else if (attr->name() == onsubmitAttr) {
           setHTMLEventListener(EventImpl::SUBMIT_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onreset()) {
  +    } else if (attr->name() == onresetAttr) {
           setHTMLEventListener(EventImpl::RESET_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::name()) {
  +    } else if (attr->name() == nameAttr) {
           DOMString newNameAttr = attr->value();
           if (inDocument() && getDocument()->isHTMLDocument()) {
               HTMLDocumentImpl *document = static_cast<HTMLDocumentImpl *>(getDocument());
  @@ -681,7 +682,7 @@
   {
       for (unsigned i = 0; i < formElements.count(); ++i) {
           HTMLGenericFormElementImpl *current = formElements[i];
  -        if (current->hasLocalName(HTMLTags::input()) &&
  +        if (current->hasLocalName(inputTag) &&
               static_cast<HTMLInputElementImpl*>(current)->inputType() == HTMLInputElementImpl::RADIO &&
               current != caller && current->form() == caller->form() && current->name() == caller->name()) {
               static_cast<HTMLInputElementImpl*>(current)->setChecked(false);
  @@ -761,7 +762,7 @@
   
   bool HTMLFormElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return attr->name() == HTMLAttributes::action();
  +    return attr->name() == actionAttr;
   }
   
   void HTMLFormElementImpl::registerImgElement(HTMLImageElementImpl *e)
  @@ -781,57 +782,57 @@
   
   DOMString HTMLFormElementImpl::name() const
   {
  -    return getAttribute(HTMLAttributes::name());
  +    return getAttribute(nameAttr);
   }
   
   void HTMLFormElementImpl::setName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::name(), value);
  +    setAttribute(nameAttr, value);
   }
   
   DOMString HTMLFormElementImpl::acceptCharset() const
   {
  -    return getAttribute(HTMLAttributes::accept_charset());
  +    return getAttribute(accept_charsetAttr);
   }
   
   void HTMLFormElementImpl::setAcceptCharset(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::accept_charset(), value);
  +    setAttribute(accept_charsetAttr, value);
   }
   
   DOMString HTMLFormElementImpl::action() const
   {
  -    return getAttribute(HTMLAttributes::action());
  +    return getAttribute(actionAttr);
   }
   
   void HTMLFormElementImpl::setAction(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::action(), value);
  +    setAttribute(actionAttr, value);
   }
   
   void HTMLFormElementImpl::setEnctype(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::enctype(), value);
  +    setAttribute(enctypeAttr, value);
   }
   
   DOMString HTMLFormElementImpl::method() const
   {
  -    return getAttribute(HTMLAttributes::method());
  +    return getAttribute(methodAttr);
   }
   
   void HTMLFormElementImpl::setMethod(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::method(), value);
  +    setAttribute(methodAttr, value);
   }
   
   DOMString HTMLFormElementImpl::target() const
   {
  -    return getAttribute(HTMLAttributes::target());
  +    return getAttribute(targetAttr);
   }
   
   void HTMLFormElementImpl::setTarget(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::target(), value);
  +    setAttribute(targetAttr, value);
   }
   
   // -------------------------------------------------------------------------
  @@ -858,9 +859,9 @@
   
   void HTMLGenericFormElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::name()) {
  +    if (attr->name() == nameAttr) {
           // Do nothing.
  -    } else if (attr->name() == HTMLAttributes::disabled()) {
  +    } else if (attr->name() == disabledAttr) {
           bool oldDisabled = m_disabled;
           m_disabled = !attr->isNull();
           if (oldDisabled != m_disabled) {
  @@ -868,7 +869,7 @@
               if (renderer() && renderer()->style()->hasAppearance())
                   theme()->stateChanged(renderer(), EnabledState);
           }
  -    } else if (attr->name() == HTMLAttributes::readonly()) {
  +    } else if (attr->name() == readonlyAttr) {
           bool oldReadOnly = m_readOnly;
           m_readOnly = !attr->isNull();
           if (oldReadOnly != m_readOnly) setChanged();
  @@ -936,7 +937,7 @@
   {
       NodeImpl *p = parentNode();
       while(p) {
  -        if (p->hasTagName(HTMLTags::form()))
  +        if (p->hasTagName(formTag))
               return static_cast<HTMLFormElementImpl *>(p);
           p = p->parentNode();
       }
  @@ -951,13 +952,13 @@
       if (!m_overrideName.isNull())
           return m_overrideName;
   
  -    DOMString n = getAttribute(HTMLAttributes::name());
  +    DOMString n = getAttribute(nameAttr);
       return n.isNull() ? "" : n;
   }
   
   void HTMLGenericFormElementImpl::setName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::name(), value);
  +    setAttribute(nameAttr, value);
   }
   
   void HTMLGenericFormElementImpl::setOverrideName(const DOMString& value)
  @@ -984,12 +985,12 @@
   
   void HTMLGenericFormElementImpl::setDisabled(bool b)
   {
  -    setAttribute(HTMLAttributes::disabled(), b ? "" : 0);
  +    setAttribute(disabledAttr, b ? "" : 0);
   }
   
   void HTMLGenericFormElementImpl::setReadOnly(bool b)
   {
  -    setAttribute(HTMLAttributes::readonly(), b ? "" : 0);
  +    setAttribute(readonlyAttr, b ? "" : 0);
   }
   
   void HTMLGenericFormElementImpl::recalcStyle( StyleChange ch )
  @@ -1147,18 +1148,18 @@
   
   long HTMLGenericFormElementImpl::tabIndex() const
   {
  -    return getAttribute(HTMLAttributes::tabindex()).toInt();
  +    return getAttribute(tabindexAttr).toInt();
   }
   
   void HTMLGenericFormElementImpl::setTabIndex(long value)
   {
  -    setAttribute(HTMLAttributes::tabindex(), QString::number(value));
  +    setAttribute(tabindexAttr, QString::number(value));
   }
   
   // -------------------------------------------------------------------------
   
   HTMLButtonElementImpl::HTMLButtonElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f)
  -    : HTMLGenericFormElementImpl(HTMLTags::button(), doc, f)
  +    : HTMLGenericFormElementImpl(buttonTag, doc, f)
   {
       m_type = SUBMIT;
       m_dirty = true;
  @@ -1171,7 +1172,7 @@
   
   DOMString HTMLButtonElementImpl::type() const
   {
  -    return getAttribute(HTMLAttributes::type());
  +    return getAttribute(typeAttr);
   }
   
   void HTMLButtonElementImpl::blur()
  @@ -1187,22 +1188,22 @@
   
   void HTMLButtonElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() ==  HTMLAttributes::type()) {
  +    if (attr->name() ==  typeAttr) {
           if ( strcasecmp( attr->value(), "submit" ) == 0 )
               m_type = SUBMIT;
           else if ( strcasecmp( attr->value(), "reset" ) == 0 )
               m_type = RESET;
           else if ( strcasecmp( attr->value(), "button" ) == 0 )
               m_type = BUTTON;
  -    } else if (attr->name() == HTMLAttributes::value()) {
  +    } else if (attr->name() == valueAttr) {
           m_value = attr->value();
           m_currValue = m_value;
  -    } else if (attr->name() == HTMLAttributes::accesskey()) {
  +    } else if (attr->name() == accesskeyAttr) {
           // Do nothing.
  -    } else if (attr->name() == HTMLAttributes::onfocus()) {
  +    } else if (attr->name() == onfocusAttr) {
           setHTMLEventListener(EventImpl::FOCUS_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onblur()) {
  +    } else if (attr->name() == onblurAttr) {
           setHTMLEventListener(EventImpl::BLUR_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
       } else
  @@ -1262,28 +1263,28 @@
   
   DOMString HTMLButtonElementImpl::accessKey() const
   {
  -    return getAttribute(HTMLAttributes::accesskey());
  +    return getAttribute(accesskeyAttr);
   }
   
   void HTMLButtonElementImpl::setAccessKey(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::accesskey(), value);
  +    setAttribute(accesskeyAttr, value);
   }
   
   DOMString HTMLButtonElementImpl::value() const
   {
  -    return getAttribute(HTMLAttributes::value());
  +    return getAttribute(valueAttr);
   }
   
   void HTMLButtonElementImpl::setValue(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::value(), value);
  +    setAttribute(valueAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLFieldSetElementImpl::HTMLFieldSetElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f)
  -   : HTMLGenericFormElementImpl(HTMLTags::fieldset(), doc, f)
  +   : HTMLGenericFormElementImpl(fieldsetTag, doc, f)
   {
   }
   
  @@ -1293,7 +1294,7 @@
   
   bool HTMLFieldSetElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -	return newChild->hasTagName(HTMLTags::legend()) || HTMLElementImpl::checkDTD(newChild);
  +	return newChild->hasTagName(legendTag) || HTMLElementImpl::checkDTD(newChild);
   }
   
   bool HTMLFieldSetElementImpl::isFocusable() const
  @@ -1314,7 +1315,7 @@
   // -------------------------------------------------------------------------
   
   HTMLInputElementImpl::HTMLInputElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f)
  -    : HTMLGenericFormElementImpl(HTMLTags::input(), doc, f)
  +    : HTMLGenericFormElementImpl(inputTag, doc, f)
   {
       init();
   }
  @@ -1396,7 +1397,7 @@
           if (newType == FILE && m_haveType) {
               // Set the attribute back to the old value.
               // Useful in case we were called from inside parseMappedAttribute.
  -            setAttribute(HTMLAttributes::type(), type());
  +            setAttribute(typeAttr, type());
           } else {
               bool wasAttached = m_attached;
               if (wasAttached)
  @@ -1405,11 +1406,11 @@
               m_type = newType;
               bool willStoreValue = storesValueSeparateFromAttribute();
               if (didStoreValue && !willStoreValue && !m_value.isNull()) {
  -                setAttribute(HTMLAttributes::value(), m_value);
  +                setAttribute(valueAttr, m_value);
                   m_value = DOMString();
               }
               if (!didStoreValue && willStoreValue) {
  -                m_value = getAttribute(HTMLAttributes::value());
  +                m_value = getAttribute(valueAttr);
               }
               if (wasAttached)
                   attach();
  @@ -1690,15 +1691,15 @@
   
   bool HTMLInputElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::width() ||
  -        attrName == HTMLAttributes::height() ||
  -        attrName == HTMLAttributes::vspace() ||
  -        attrName == HTMLAttributes::hspace()) {
  +    if (attrName == widthAttr ||
  +        attrName == heightAttr ||
  +        attrName == vspaceAttr ||
  +        attrName == hspaceAttr) {
           result = eUniversal;
           return false;
       } 
       
  -    if (attrName == HTMLAttributes::align()) {
  +    if (attrName == alignAttr) {
           result = eReplaced; // Share with <img> since the alignment behavior is the same.
           return false;
       }
  @@ -1708,84 +1709,84 @@
   
   void HTMLInputElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::autocomplete()) {
  +    if (attr->name() == autocompleteAttr) {
           m_autocomplete = strcasecmp( attr->value(), "off" );
  -    } else if (attr->name() ==  HTMLAttributes::type()) {
  +    } else if (attr->name() ==  typeAttr) {
           setType(attr->value());
           if (m_type != IMAGE && m_imageLoader) {
               delete m_imageLoader;
               m_imageLoader = 0;
           }
  -    } else if (attr->name() == HTMLAttributes::value()) {
  +    } else if (attr->name() == valueAttr) {
           // We only need to setChanged if the form is looking at the default value right now.
           if (m_value.isNull())
               setChanged();
           m_valueMatchesRenderer = false;
  -    } else if (attr->name() == HTMLAttributes::checked()) {
  +    } else if (attr->name() == checkedAttr) {
           m_defaultChecked = !attr->isNull();
           if (m_useDefaultChecked) {
               setChecked(m_defaultChecked);
               m_useDefaultChecked = true;
           }
  -    } else if (attr->name() == HTMLAttributes::maxlength()) {
  +    } else if (attr->name() == maxlengthAttr) {
           m_maxLen = !attr->isNull() ? attr->value().toInt() : -1;
           setChanged();
  -    } else if (attr->name() == HTMLAttributes::size()) {
  +    } else if (attr->name() == sizeAttr) {
           m_size = !attr->isNull() ? attr->value().toInt() : 20;
  -    } else if (attr->name() == HTMLAttributes::alt()) {
  +    } else if (attr->name() == altAttr) {
           if (m_render && m_type == IMAGE)
               static_cast<RenderImage*>(m_render)->updateAltText();
  -    } else if (attr->name() == HTMLAttributes::src()) {
  +    } else if (attr->name() == srcAttr) {
           if (m_render && m_type == IMAGE) {
               if (!m_imageLoader)
                   m_imageLoader = new HTMLImageLoader(this);
               m_imageLoader->updateFromElement();
           }
  -    } else if (attr->name() == HTMLAttributes::usemap() ||
  -               attr->name() == HTMLAttributes::accesskey()) {
  +    } else if (attr->name() == usemapAttr ||
  +               attr->name() == accesskeyAttr) {
           // FIXME: ignore for the moment
  -    } else if (attr->name() == HTMLAttributes::vspace()) {
  +    } else if (attr->name() == vspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_TOP, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_BOTTOM, attr->value());
  -    } else if (attr->name() == HTMLAttributes::hspace()) {
  +    } else if (attr->name() == hspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_LEFT, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_RIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::align()) {
  +    } else if (attr->name() == alignAttr) {
           addHTMLAlignment(attr);
  -    } else if (attr->name() == HTMLAttributes::width()) {
  +    } else if (attr->name() == widthAttr) {
           addCSSLength(attr, CSS_PROP_WIDTH, attr->value());
  -    } else if (attr->name() == HTMLAttributes::height()) {
  +    } else if (attr->name() == heightAttr) {
           addCSSLength(attr, CSS_PROP_HEIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::onfocus()) {
  +    } else if (attr->name() == onfocusAttr) {
           setHTMLEventListener(EventImpl::FOCUS_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onblur()) {
  +    } else if (attr->name() == onblurAttr) {
           setHTMLEventListener(EventImpl::BLUR_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onselect()) {
  +    } else if (attr->name() == onselectAttr) {
           setHTMLEventListener(EventImpl::SELECT_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onchange()) {
  +    } else if (attr->name() == onchangeAttr) {
           setHTMLEventListener(EventImpl::CHANGE_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::oninput()) {
  +    } else if (attr->name() == oninputAttr) {
           setHTMLEventListener(EventImpl::INPUT_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
       }
       // Search field and slider attributes all just cause updateFromElement to be called through style
       // recalcing.
  -    else if (attr->name() == HTMLAttributes::onsearch()) {
  +    else if (attr->name() == onsearchAttr) {
           setHTMLEventListener(EventImpl::SEARCH_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::results()) {
  +    } else if (attr->name() == resultsAttr) {
           m_maxResults = !attr->isNull() ? attr->value().toInt() : -1;
           setChanged();
  -    } else if (attr->name() == HTMLAttributes::autosave() ||
  -               attr->name() == HTMLAttributes::incremental() ||
  -               attr->name() == HTMLAttributes::placeholder() ||
  -               attr->name() == HTMLAttributes::min() ||
  -               attr->name() == HTMLAttributes::max() ||
  -               attr->name() == HTMLAttributes::precision()) {
  +    } else if (attr->name() == autosaveAttr ||
  +               attr->name() == incrementalAttr ||
  +               attr->name() == placeholderAttr ||
  +               attr->name() == minAttr ||
  +               attr->name() == maxAttr ||
  +               attr->name() == precisionAttr) {
           setChanged();
       } else
           HTMLGenericFormElementImpl::parseMappedAttribute(attr);
  @@ -1849,11 +1850,11 @@
   {
       if (!m_inited) {
           if (!m_haveType)
  -            setType(getAttribute(HTMLAttributes::type()));
  +            setType(getAttribute(typeAttr));
   
           // FIXME: This needs to be dynamic, doesn't it, since someone could set this
           // after attachment?
  -        DOMString val = getAttribute(HTMLAttributes::value());
  +        DOMString val = getAttribute(valueAttr);
           if ((uint) m_type <= ISINDEX && !val.isEmpty()) {
               // remove newline stuff..
               QString nvalue;
  @@ -1862,10 +1863,10 @@
                       nvalue += val[i];
   
               if (val.length() != nvalue.length())
  -                setAttribute(HTMLAttributes::value(), nvalue);
  +                setAttribute(valueAttr, nvalue);
           }
   
  -        m_defaultChecked = (!getAttribute(HTMLAttributes::checked()).isNull());
  +        m_defaultChecked = (!getAttribute(checkedAttr).isNull());
           
           m_inited = true;
       }
  @@ -1873,9 +1874,9 @@
       // Disallow the width attribute on inputs other than HIDDEN and IMAGE.
       // Dumb Web sites will try to set the width as an attribute on form controls that aren't
       // images or hidden.
  -    if (hasMappedAttributes() && m_type != HIDDEN && m_type != IMAGE && !getAttribute(HTMLAttributes::width()).isEmpty()) {
  +    if (hasMappedAttributes() && m_type != HIDDEN && m_type != IMAGE && !getAttribute(widthAttr).isEmpty()) {
           int excCode;
  -        removeAttribute(HTMLAttributes::width(), excCode);
  +        removeAttribute(widthAttr, excCode);
       }
   
       HTMLGenericFormElementImpl::attach();
  @@ -1909,12 +1910,12 @@
       // http://www.w3.org/TR/1998/REC-html40-19980424/appendix/notes.html#altgen
       // also heavily discussed by Hixie on bugzilla
       // note this is intentionally different to HTMLImageElementImpl::altText()
  -    DOMString alt = getAttribute(HTMLAttributes::alt());
  +    DOMString alt = getAttribute(altAttr);
       // fall back to title attribute
       if (alt.isNull())
  -        alt = getAttribute(HTMLAttributes::title());
  +        alt = getAttribute(titleAttr);
       if (alt.isNull())
  -        alt = getAttribute(HTMLAttributes::value());
  +        alt = getAttribute(valueAttr);
       if (alt.isEmpty())
   #if APPLE_CHANGES
           alt = inputElementAltText();
  @@ -2094,7 +2095,7 @@
       // because that would allow a malicious web page to upload files by setting the
       // value attribute in markup.
       if (value.isNull() && m_type != FILE)
  -        value = getAttribute(HTMLAttributes::value());
  +        value = getAttribute(valueAttr);
   
       // If no attribute exists, then just use "on" or "" based off the checked() state of the control.
       if (value.isNull() && (m_type == CHECKBOX || m_type == RADIO))
  @@ -2154,7 +2155,7 @@
               m_render->updateFromElement();
           setChanged();
       } else {
  -        setAttribute(HTMLAttributes::value(), value);
  +        setAttribute(valueAttr, value);
       }
   }
   
  @@ -2323,103 +2324,103 @@
   
   bool HTMLInputElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return (attr->name() == HTMLAttributes::src());
  +    return (attr->name() == srcAttr);
   }
   
   DOMString HTMLInputElementImpl::defaultValue() const
   {
  -    return getAttribute(HTMLAttributes::value());
  +    return getAttribute(valueAttr);
   }
   
   void HTMLInputElementImpl::setDefaultValue(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::value(), value);
  +    setAttribute(valueAttr, value);
   }
   
   bool HTMLInputElementImpl::defaultChecked() const
   {
  -    return !getAttribute(HTMLAttributes::checked()).isNull();
  +    return !getAttribute(checkedAttr).isNull();
   }
   
   void HTMLInputElementImpl::setDefaultChecked(bool defaultChecked)
   {
  -    setAttribute(HTMLAttributes::checked(), defaultChecked ? "" : 0);
  +    setAttribute(checkedAttr, defaultChecked ? "" : 0);
   }
   
   DOMString HTMLInputElementImpl::accept() const
   {
  -    return getAttribute(HTMLAttributes::accept());
  +    return getAttribute(acceptAttr);
   }
   
   void HTMLInputElementImpl::setAccept(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::accept(), value);
  +    setAttribute(acceptAttr, value);
   }
   
   DOMString HTMLInputElementImpl::accessKey() const
   {
  -    return getAttribute(HTMLAttributes::accesskey());
  +    return getAttribute(accesskeyAttr);
   }
   
   void HTMLInputElementImpl::setAccessKey(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::accesskey(), value);
  +    setAttribute(accesskeyAttr, value);
   }
   
   DOMString HTMLInputElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLInputElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   DOMString HTMLInputElementImpl::alt() const
   {
  -    return getAttribute(HTMLAttributes::alt());
  +    return getAttribute(altAttr);
   }
   
   void HTMLInputElementImpl::setAlt(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::alt(), value);
  +    setAttribute(altAttr, value);
   }
   
   void HTMLInputElementImpl::setMaxLength(long _maxLength)
   {
  -    setAttribute(HTMLAttributes::maxlength(), QString::number(_maxLength));
  +    setAttribute(maxlengthAttr, QString::number(_maxLength));
   }
   
   void HTMLInputElementImpl::setSize(unsigned long _size)
   {
  -    setAttribute(HTMLAttributes::size(), QString::number(_size));
  +    setAttribute(sizeAttr, QString::number(_size));
   }
   
   DOMString HTMLInputElementImpl::src() const
   {
  -    return getDocument()->completeURL(getAttribute(HTMLAttributes::src()));
  +    return getDocument()->completeURL(getAttribute(srcAttr));
   }
   
   void HTMLInputElementImpl::setSrc(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::src(), value);
  +    setAttribute(srcAttr, value);
   }
   
   DOMString HTMLInputElementImpl::useMap() const
   {
  -    return getAttribute(HTMLAttributes::usemap());
  +    return getAttribute(usemapAttr);
   }
   
   void HTMLInputElementImpl::setUseMap(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::usemap(), value);
  +    setAttribute(usemapAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLLabelElementImpl::HTMLLabelElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::label(), doc)
  +    : HTMLElementImpl(labelTag, doc)
   {
   }
   
  @@ -2434,10 +2435,10 @@
   
   void HTMLLabelElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::onfocus()) {
  +    if (attr->name() == onfocusAttr) {
           setHTMLEventListener(EventImpl::FOCUS_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onblur()) {
  +    } else if (attr->name() == onblurAttr) {
           setHTMLEventListener(EventImpl::BLUR_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
       } else
  @@ -2446,7 +2447,7 @@
   
   ElementImpl *HTMLLabelElementImpl::formElement()
   {
  -    DOMString formElementId = getAttribute(HTMLAttributes::forAttr());
  +    DOMString formElementId = getAttribute(forAttr);
       if (formElementId.isNull()) {
           // Search children of the label element for a form element.
           NodeImpl *node = this;
  @@ -2480,7 +2481,7 @@
   HTMLFormElementImpl *HTMLLabelElementImpl::form()
   {
       for (NodeImpl *p = parentNode(); p != 0; p = p->parentNode()) {
  -        if (p->hasTagName(HTMLTags::form()))
  +        if (p->hasTagName(formTag))
               return static_cast<HTMLFormElementImpl *>(p);
       }
       
  @@ -2489,28 +2490,28 @@
   
   DOMString HTMLLabelElementImpl::accessKey() const
   {
  -    return getAttribute(HTMLAttributes::accesskey());
  +    return getAttribute(accesskeyAttr);
   }
   
   void HTMLLabelElementImpl::setAccessKey(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::accesskey(), value);
  +    setAttribute(accesskeyAttr, value);
   }
   
   DOMString HTMLLabelElementImpl::htmlFor() const
   {
  -    return getAttribute(HTMLAttributes::forAttr());
  +    return getAttribute(forAttr);
   }
   
   void HTMLLabelElementImpl::setHtmlFor(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::forAttr(), value);
  +    setAttribute(forAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLLegendElementImpl::HTMLLegendElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f)
  -: HTMLGenericFormElementImpl(HTMLTags::legend(), doc, f)
  +: HTMLGenericFormElementImpl(legendTag, doc, f)
   {
   }
   
  @@ -2535,29 +2536,29 @@
   
   DOMString HTMLLegendElementImpl::accessKey() const
   {
  -    return getAttribute(HTMLAttributes::accesskey());
  +    return getAttribute(accesskeyAttr);
   }
   
   void HTMLLegendElementImpl::setAccessKey(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::accesskey(), value);
  +    setAttribute(accesskeyAttr, value);
   }
   
   DOMString HTMLLegendElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLLegendElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   ElementImpl *HTMLLegendElementImpl::formElement()
   {
       // Check if there's a fieldset belonging to this legend.
       NodeImpl *fieldset = parentNode();
  -    while (fieldset && !fieldset->hasTagName(HTMLTags::fieldset()))
  +    while (fieldset && !fieldset->hasTagName(fieldsetTag))
           fieldset = fieldset->parentNode();
       if (!fieldset)
           return 0;
  @@ -2568,7 +2569,7 @@
       while ((node = node->traverseNextNode(fieldset))) {
           if (node->isHTMLElement()) {
               HTMLElementImpl *element = static_cast<HTMLElementImpl *>(node);
  -            if (!element->hasLocalName(HTMLTags::legend()) && element->isGenericFormElement())
  +            if (!element->hasLocalName(legendTag) && element->isGenericFormElement())
                   return element;
           }
       }
  @@ -2591,7 +2592,7 @@
   // -------------------------------------------------------------------------
   
   HTMLSelectElementImpl::HTMLSelectElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f)
  -    : HTMLGenericFormElementImpl(HTMLTags::select(), doc, f), m_options(0)
  +    : HTMLGenericFormElementImpl(selectTag, doc, f), m_options(0)
   {
       init();
   }
  @@ -2623,8 +2624,8 @@
   
   bool HTMLSelectElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -	return newChild->isTextNode() || newChild->hasTagName(HTMLTags::option()) || newChild->hasTagName(HTMLTags::optgroup()) ||
  -		   newChild->hasTagName(HTMLTags::script());
  +	return newChild->isTextNode() || newChild->hasTagName(optionTag) || newChild->hasTagName(optgroupTag) ||
  +		   newChild->hasTagName(scriptTag);
   }
   
   void HTMLSelectElementImpl::recalcStyle( StyleChange ch )
  @@ -2648,7 +2649,7 @@
       uint o = 0;
       QMemArray<HTMLGenericFormElementImpl*> items = listItems();
       for (unsigned int i = 0; i < items.size(); i++) {
  -        if (items[i]->hasLocalName(HTMLTags::option())) {
  +        if (items[i]->hasLocalName(optionTag)) {
               if (static_cast<HTMLOptionElementImpl*>(items[i])->selected())
                   return o;
               o++;
  @@ -2664,7 +2665,7 @@
       QMemArray<HTMLGenericFormElementImpl*> items = listItems();
       int listIndex;
       for (listIndex = 0; listIndex < int(items.size()); listIndex++) {
  -        if (items[listIndex]->hasLocalName(HTMLTags::option()))
  +        if (items[listIndex]->hasLocalName(optionTag))
               static_cast<HTMLOptionElementImpl*>(items[listIndex])->setSelected(false);
       }
       listIndex = optionToListIndex(index);
  @@ -2680,7 +2681,7 @@
       uint i;
       QMemArray<HTMLGenericFormElementImpl*> items = listItems();
       for (i = 0; i < items.size(); i++) {
  -        if (items[i]->hasLocalName(HTMLTags::option()))
  +        if (items[i]->hasLocalName(optionTag))
               len++;
       }
       return len;
  @@ -2688,7 +2689,7 @@
   
   void HTMLSelectElementImpl::add( HTMLElementImpl *element, HTMLElementImpl *before )
   {
  -    if (!element || !element->hasLocalName(HTMLTags::option()))
  +    if (!element || !element->hasLocalName(optionTag))
           return;
   
       int exceptioncode = 0;
  @@ -2727,7 +2728,7 @@
       uint i;
       QMemArray<HTMLGenericFormElementImpl*> items = listItems();
       for (i = 0; i < items.size(); i++) {
  -        if (items[i]->hasLocalName(HTMLTags::option()) && static_cast<HTMLOptionElementImpl*>(items[i])->selected())
  +        if (items[i]->hasLocalName(optionTag) && static_cast<HTMLOptionElementImpl*>(items[i])->selected())
               return static_cast<HTMLOptionElementImpl*>(items[i])->value();
       }
       return DOMString("");
  @@ -2741,7 +2742,7 @@
       // and make it the current selection.
       QMemArray<HTMLGenericFormElementImpl*> items = listItems();
       for (unsigned i = 0; i < items.size(); i++)
  -        if (items[i]->hasLocalName(HTMLTags::option()) && static_cast<HTMLOptionElementImpl*>(items[i])->value() == value) {
  +        if (items[i]->hasLocalName(optionTag) && static_cast<HTMLOptionElementImpl*>(items[i])->value() == value) {
               static_cast<HTMLOptionElementImpl*>(items[i])->setSelected(true);
               return;
           }
  @@ -2760,7 +2761,7 @@
       QChar stateChars[l];
       
       for(int i = 0; i < l; i++)
  -        if(items[i]->hasLocalName(HTMLTags::option()) && static_cast<HTMLOptionElementImpl*>(items[i])->selected())
  +        if(items[i]->hasLocalName(optionTag) && static_cast<HTMLOptionElementImpl*>(items[i])->selected())
               stateChars[i] = 'X';
           else
               stateChars[i] = '.';
  @@ -2797,7 +2798,7 @@
   
       int l = items.count();
       for(int i = 0; i < l; i++) {
  -        if(items[i]->hasLocalName(HTMLTags::option())) {
  +        if(items[i]->hasLocalName(optionTag)) {
               HTMLOptionElementImpl* oe = static_cast<HTMLOptionElementImpl*>(items[i]);
               oe->setSelected(state[i] == 'X');
           }
  @@ -2846,21 +2847,21 @@
   
   void HTMLSelectElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::size()) {
  +    if (attr->name() == sizeAttr) {
           m_size = kMax(attr->value().toInt(), 1);
  -    } else if (attr->name() == HTMLAttributes::width()) {
  +    } else if (attr->name() == widthAttr) {
           m_minwidth = kMax( attr->value().toInt(), 0 );
  -    } else if (attr->name() == HTMLAttributes::multiple()) {
  +    } else if (attr->name() == multipleAttr) {
           m_multiple = (!attr->isNull());
  -    } else if (attr->name() == HTMLAttributes::accesskey()) {
  +    } else if (attr->name() == accesskeyAttr) {
           // FIXME: ignore for the moment
  -    } else if (attr->name() == HTMLAttributes::onfocus()) {
  +    } else if (attr->name() == onfocusAttr) {
           setHTMLEventListener(EventImpl::FOCUS_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onblur()) {
  +    } else if (attr->name() == onblurAttr) {
           setHTMLEventListener(EventImpl::BLUR_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onchange()) {
  +    } else if (attr->name() == onchangeAttr) {
           setHTMLEventListener(EventImpl::CHANGE_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
       } else
  @@ -2879,7 +2880,7 @@
   
       uint i;
       for (i = 0; i < items.size(); i++) {
  -        if (items[i]->hasLocalName(HTMLTags::option())) {
  +        if (items[i]->hasLocalName(optionTag)) {
               HTMLOptionElementImpl *option = static_cast<HTMLOptionElementImpl*>(items[i]);
               if (option->selected()) {
                   encoded_values.appendData(name(), option->value());
  @@ -2892,7 +2893,7 @@
       // in any case. otherwise we have no consistency with the DOM interface. FIXME!
       // we return the first one if it was a combobox select
       if (!successful && !m_multiple && m_size <= 1 && items.size() &&
  -        (items[0]->hasLocalName(HTMLTags::option()))) {
  +        (items[0]->hasLocalName(optionTag))) {
           HTMLOptionElementImpl *option = static_cast<HTMLOptionElementImpl*>(items[0]);
           if (option->value().isNull())
               encoded_values.appendData(name(), option->text().string().stripWhiteSpace());
  @@ -2915,7 +2916,7 @@
       for (;
            optionIndex2 < int(items.size()) && optionIndex2 <= optionIndex;
            listIndex++) { // not a typo!
  -        if (items[listIndex]->hasLocalName(HTMLTags::option()))
  +        if (items[listIndex]->hasLocalName(optionTag))
               optionIndex2++;
       }
       listIndex--;
  @@ -2926,13 +2927,13 @@
   {
       QMemArray<HTMLGenericFormElementImpl*> items = listItems();
       if (listIndex < 0 || listIndex >= int(items.size()) ||
  -        !items[listIndex]->hasLocalName(HTMLTags::option()))
  +        !items[listIndex]->hasLocalName(optionTag))
           return -1;
   
       int optionIndex = 0; // actual index of option not counting OPTGROUP entries that may be in list
       int i;
       for (i = 0; i < listIndex; i++)
  -        if (items[i]->hasLocalName(HTMLTags::option()))
  +        if (items[i]->hasLocalName(optionTag))
               optionIndex++;
       return optionIndex;
   }
  @@ -2960,13 +2961,13 @@
       m_listItems.resize(0);
       HTMLOptionElementImpl* foundSelected = 0;
       while(current) {
  -        if (current->hasTagName(HTMLTags::optgroup()) && current->firstChild()) {
  +        if (current->hasTagName(optgroupTag) && current->firstChild()) {
               // ### what if optgroup contains just comments? don't want one of no options in it...
               m_listItems.resize(m_listItems.size()+1);
               m_listItems[m_listItems.size()-1] = static_cast<HTMLGenericFormElementImpl*>(current);
               current = current->firstChild();
           }
  -        if (current->hasTagName(HTMLTags::option())) {
  +        if (current->hasTagName(optionTag)) {
               m_listItems.resize(m_listItems.size()+1);
               m_listItems[m_listItems.size()-1] = static_cast<HTMLGenericFormElementImpl*>(current);
               if (!foundSelected && !m_multiple && m_size <= 1) {
  @@ -3008,9 +3009,9 @@
       QMemArray<HTMLGenericFormElementImpl*> items = listItems();
       uint i;
       for (i = 0; i < items.size(); i++) {
  -        if (items[i]->hasLocalName(HTMLTags::option())) {
  +        if (items[i]->hasLocalName(optionTag)) {
               HTMLOptionElementImpl *option = static_cast<HTMLOptionElementImpl*>(items[i]);
  -            bool selected = (!option->getAttribute(HTMLAttributes::selected()).isNull());
  +            bool selected = (!option->getAttribute(selectedAttr).isNull());
               option->setSelected(selected);
           }
       }
  @@ -3026,7 +3027,7 @@
           QMemArray<HTMLGenericFormElementImpl*> items = listItems();
           uint i;
           for (i = 0; i < items.size(); i++) {
  -            if (items[i]->hasLocalName(HTMLTags::option()))
  +            if (items[i]->hasLocalName(optionTag))
                   static_cast<HTMLOptionElementImpl*>(items[i])->m_selected = (items[i] == selectedOption);
           }
       }
  @@ -3062,18 +3063,18 @@
   
   void HTMLSelectElementImpl::setMultiple(bool multiple)
   {
  -    setAttribute(HTMLAttributes::multiple(), multiple ? "" : 0);
  +    setAttribute(multipleAttr, multiple ? "" : 0);
   }
   
   void HTMLSelectElementImpl::setSize(long size)
   {
  -    setAttribute(HTMLAttributes::size(), QString::number(size));
  +    setAttribute(sizeAttr, QString::number(size));
   }
   
   // -------------------------------------------------------------------------
   
   HTMLKeygenElementImpl::HTMLKeygenElementImpl(DocumentPtr* doc, HTMLFormElementImpl* f)
  -    : HTMLSelectElementImpl(HTMLTags::keygen(), doc, f)
  +    : HTMLSelectElementImpl(keygenTag, doc, f)
   {
       QStringList keys = KSSLKeyGen::supportedKeySizes();
       for (QStringList::Iterator i = keys.begin(); i != keys.end(); ++i) {
  @@ -3090,9 +3091,9 @@
   
   void HTMLKeygenElementImpl::parseMappedAttribute(MappedAttributeImpl* attr)
   {
  -    if (attr->name() == HTMLAttributes::challenge())
  +    if (attr->name() == challengeAttr)
           m_challenge = attr->value();
  -    else if (attr->name() == HTMLAttributes::keytype())
  +    else if (attr->name() == keytypeAttr)
           m_keyType = attr->value();
       else
           // skip HTMLSelectElementImpl parsing!
  @@ -3132,7 +3133,7 @@
   // -------------------------------------------------------------------------
   
   HTMLOptGroupElementImpl::HTMLOptGroupElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f)
  -    : HTMLGenericFormElementImpl(HTMLTags::optgroup(), doc, f)
  +    : HTMLGenericFormElementImpl(optgroupTag, doc, f)
   {
   }
   
  @@ -3198,7 +3199,7 @@
   void HTMLOptGroupElementImpl::recalcSelectOptions()
   {
       NodeImpl *select = parentNode();
  -    while (select && !select->hasTagName(HTMLTags::select()))
  +    while (select && !select->hasTagName(selectTag))
           select = select->parentNode();
       if (select)
           static_cast<HTMLSelectElementImpl*>(select)->setRecalcListItems();
  @@ -3206,18 +3207,18 @@
   
   DOMString HTMLOptGroupElementImpl::label() const
   {
  -    return getAttribute(HTMLAttributes::label());
  +    return getAttribute(labelAttr);
   }
   
   void HTMLOptGroupElementImpl::setLabel(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::label(), value);
  +    setAttribute(labelAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLOptionElementImpl::HTMLOptionElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f)
  -    : HTMLGenericFormElementImpl(HTMLTags::option(), doc, f)
  +    : HTMLGenericFormElementImpl(optionTag, doc, f)
   {
       m_selected = false;
   }
  @@ -3238,7 +3239,7 @@
   
       // WinIE does not use the label attribute, so as a quirk, we ignore it.
       if (getDocument() && !getDocument()->inCompatMode()) {
  -        DOMString text = getAttribute(HTMLAttributes::label());
  +        DOMString text = getAttribute(labelAttr);
           if (!text.isEmpty())
               return text;
       }
  @@ -3273,7 +3274,7 @@
       int l = items.count();
       int optionIndex = 0;
       for(int i = 0; i < l; i++) {
  -        if (items[i]->hasLocalName(HTMLTags::option())) {
  +        if (items[i]->hasLocalName(optionTag)) {
               if (static_cast<HTMLOptionElementImpl*>(items[i]) == this)
                   return optionIndex;
               optionIndex++;
  @@ -3292,9 +3293,9 @@
   
   void HTMLOptionElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::selected())
  +    if (attr->name() == selectedAttr)
           m_selected = (!attr->isNull());
  -    else if (attr->name() == HTMLAttributes::value())
  +    else if (attr->name() == valueAttr)
           m_value = attr->value();
       else
           HTMLGenericFormElementImpl::parseMappedAttribute(attr);
  @@ -3310,7 +3311,7 @@
   
   void HTMLOptionElementImpl::setValue(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::value(), value);
  +    setAttribute(valueAttr, value);
   }
   
   void HTMLOptionElementImpl::setSelected(bool _selected)
  @@ -3333,35 +3334,35 @@
   HTMLSelectElementImpl *HTMLOptionElementImpl::getSelect() const
   {
       NodeImpl *select = parentNode();
  -    while (select && !select->hasTagName(HTMLTags::select()))
  +    while (select && !select->hasTagName(selectTag))
           select = select->parentNode();
       return static_cast<HTMLSelectElementImpl*>(select);
   }
   
   bool HTMLOptionElementImpl::defaultSelected() const
   {
  -    return !getAttribute(HTMLAttributes::selected()).isNull();
  +    return !getAttribute(selectedAttr).isNull();
   }
   
   void HTMLOptionElementImpl::setDefaultSelected(bool b)
   {
  -    setAttribute(HTMLAttributes::selected(), b ? "" : 0);
  +    setAttribute(selectedAttr, b ? "" : 0);
   }
   
   DOMString HTMLOptionElementImpl::label() const
   {
  -    return getAttribute(HTMLAttributes::label());
  +    return getAttribute(labelAttr);
   }
   
   void HTMLOptionElementImpl::setLabel(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::label(), value);
  +    setAttribute(labelAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLTextAreaElementImpl::HTMLTextAreaElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f)
  -    : HTMLGenericFormElementImpl(HTMLTags::textarea(), doc, f), m_valueIsValid(false), m_valueMatchesRenderer(false)
  +    : HTMLGenericFormElementImpl(textareaTag, doc, f), m_valueIsValid(false), m_valueMatchesRenderer(false)
   {
       // DTD requires rows & cols be specified, but we will provide reasonable defaults
       m_rows = 2;
  @@ -3438,15 +3439,15 @@
       
   void HTMLTextAreaElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::rows()) {
  +    if (attr->name() == rowsAttr) {
           m_rows = !attr->isNull() ? attr->value().toInt() : 3;
           if (renderer())
               renderer()->setNeedsLayoutAndMinMaxRecalc();
  -    } else if (attr->name() == HTMLAttributes::cols()) {
  +    } else if (attr->name() == colsAttr) {
           m_cols = !attr->isNull() ? attr->value().toInt() : 60;
           if (renderer())
               renderer()->setNeedsLayoutAndMinMaxRecalc();
  -    } else if (attr->name() == HTMLAttributes::wrap()) {
  +    } else if (attr->name() == wrapAttr) {
           // virtual / physical is Netscape extension of HTML 3.0, now deprecated
           // soft/ hard / off is recommendation for HTML 4 extension by IE and NS 4
           if ( strcasecmp( attr->value(), "virtual" ) == 0  || strcasecmp( attr->value(), "soft") == 0)
  @@ -3459,18 +3460,18 @@
               m_wrap = ta_NoWrap;
           if (renderer())
               renderer()->setNeedsLayoutAndMinMaxRecalc();
  -    } else if (attr->name() == HTMLAttributes::accesskey()) {
  +    } else if (attr->name() == accesskeyAttr) {
           // ignore for the moment
  -    } else if (attr->name() == HTMLAttributes::onfocus()) {
  +    } else if (attr->name() == onfocusAttr) {
           setHTMLEventListener(EventImpl::FOCUS_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onblur()) {
  +    } else if (attr->name() == onblurAttr) {
           setHTMLEventListener(EventImpl::BLUR_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onselect()) {
  +    } else if (attr->name() == onselectAttr) {
           setHTMLEventListener(EventImpl::SELECT_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onchange()) {
  +    } else if (attr->name() == onchangeAttr) {
           setHTMLEventListener(EventImpl::CHANGE_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
       } else
  @@ -3598,28 +3599,28 @@
   
   DOMString HTMLTextAreaElementImpl::accessKey() const
   {
  -    return getAttribute(HTMLAttributes::accesskey());
  +    return getAttribute(accesskeyAttr);
   }
   
   void HTMLTextAreaElementImpl::setAccessKey(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::accesskey(), value);
  +    setAttribute(accesskeyAttr, value);
   }
   
   void HTMLTextAreaElementImpl::setCols(long cols)
   {
  -    setAttribute(HTMLAttributes::cols(), QString::number(cols));
  +    setAttribute(colsAttr, QString::number(cols));
   }
   
   void HTMLTextAreaElementImpl::setRows(long rows)
   {
  -    setAttribute(HTMLAttributes::rows(), QString::number(rows));
  +    setAttribute(rowsAttr, QString::number(rows));
   }
   
   // -------------------------------------------------------------------------
   
   HTMLIsIndexElementImpl::HTMLIsIndexElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f)
  -    : HTMLInputElementImpl(HTMLTags::isindex(), doc, f)
  +    : HTMLInputElementImpl(isindexTag, doc, f)
   {
       m_type = TEXT;
       setOverrideName("isindex");
  @@ -3627,7 +3628,7 @@
   
   void HTMLIsIndexElementImpl::parseMappedAttribute(MappedAttributeImpl* attr)
   {
  -    if (attr->name() == HTMLAttributes::prompt())
  +    if (attr->name() == promptAttr)
   	setValue(attr->value());
       else
           // don't call HTMLInputElement::parseMappedAttribute here, as it would
  @@ -3637,12 +3638,12 @@
   
   DOMString HTMLIsIndexElementImpl::prompt() const
   {
  -    return getAttribute(HTMLAttributes::prompt());
  +    return getAttribute(promptAttr);
   }
   
   void HTMLIsIndexElementImpl::setPrompt(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::prompt(), value);
  +    setAttribute(promptAttr, value);
   }
   
   // -------------------------------------------------------------------------
  
  
  
  1.82      +1 -1      WebCore/khtml/html/html_formimpl.h
  
  Index: html_formimpl.h
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_formimpl.h,v
  retrieving revision 1.81
  retrieving revision 1.82
  diff -u -r1.81 -r1.82
  --- html_formimpl.h	28 Jul 2005 23:27:13 -0000	1.81
  +++ html_formimpl.h	30 Jul 2005 02:33:17 -0000	1.82
  @@ -648,7 +648,7 @@
       HTMLOptGroupElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f = 0);
       virtual ~HTMLOptGroupElementImpl();
   
  -    virtual bool checkDTD(const NodeImpl* newChild) { return newChild->hasTagName(HTMLTags::option()); }
  +    virtual bool checkDTD(const NodeImpl* newChild) { return newChild->hasTagName(HTMLNames::optionTag); }
   
       DOMString type() const;
   
  
  
  
  1.54      +66 -65    WebCore/khtml/html/html_headimpl.cpp
  
  Index: html_headimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_headimpl.cpp,v
  retrieving revision 1.53
  retrieving revision 1.54
  diff -u -r1.53 -r1.54
  --- html_headimpl.cpp	18 Jul 2005 21:52:25 -0000	1.53
  +++ html_headimpl.cpp	30 Jul 2005 02:33:17 -0000	1.54
  @@ -42,10 +42,11 @@
   #include <kdebug.h>
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   HTMLBaseElementImpl::HTMLBaseElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::base(), doc)
  +    : HTMLElementImpl(baseTag, doc)
   {
   }
   
  @@ -55,10 +56,10 @@
   
   void HTMLBaseElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::href()) {
  +    if (attr->name() == hrefAttr) {
   	m_href = khtml::parseURL(attr->value());
   	process();
  -    } else if (attr->name() == HTMLAttributes::target()) {
  +    } else if (attr->name() == targetAttr) {
       	m_target = attr->value();
   	process();
       } else
  @@ -97,18 +98,18 @@
   
   void HTMLBaseElementImpl::setHref(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::href(), value);
  +    setAttribute(hrefAttr, value);
   }
   
   void HTMLBaseElementImpl::setTarget(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::target(), value);
  +    setAttribute(targetAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLLinkElementImpl::HTMLLinkElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::link(), doc)
  +    : HTMLElementImpl(linkTag, doc)
   {
       m_sheet = 0;
       m_loading = false;
  @@ -163,19 +164,19 @@
   
   void HTMLLinkElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::rel()) {
  +    if (attr->name() == relAttr) {
           tokenizeRelAttribute(attr->value());
           process();
  -    } else if (attr->name() == HTMLAttributes::href()) {
  +    } else if (attr->name() == hrefAttr) {
           m_url = getDocument()->completeURL( khtml::parseURL(attr->value()).string() );
   	process();
  -    } else if (attr->name() == HTMLAttributes::type()) {
  +    } else if (attr->name() == typeAttr) {
           m_type = attr->value();
   	process();
  -    } else if (attr->name() == HTMLAttributes::media()) {
  +    } else if (attr->name() == mediaAttr) {
           m_media = attr->value().string().lower();
           process();
  -    } else if (attr->name() == HTMLAttributes::disabled()) {
  +    } else if (attr->name() == disabledAttr) {
           setDisabledState(!attr->isNull());
       } else
           HTMLElementImpl::parseMappedAttribute(attr);
  @@ -237,7 +238,7 @@
               if (!isAlternate())
                   getDocument()->addPendingSheet();
               
  -            QString chset = getAttribute(HTMLAttributes::charset()).string();
  +            QString chset = getAttribute(charsetAttr).string();
               if (m_cachedSheet)
                   m_cachedSheet->deref(this);
               m_cachedSheet = getDocument()->docLoader()->requestStyleSheet(m_url, chset);
  @@ -304,102 +305,102 @@
   
   bool HTMLLinkElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return attr->name() == HTMLAttributes::href();
  +    return attr->name() == hrefAttr;
   }
   
   bool HTMLLinkElementImpl::disabled() const
   {
  -    return !getAttribute(HTMLAttributes::disabled()).isNull();
  +    return !getAttribute(disabledAttr).isNull();
   }
   
   void HTMLLinkElementImpl::setDisabled(bool disabled)
   {
  -    setAttribute(HTMLAttributes::disabled(), disabled ? "" : 0);
  +    setAttribute(disabledAttr, disabled ? "" : 0);
   }
   
   DOMString HTMLLinkElementImpl::charset() const
   {
  -    return getAttribute(HTMLAttributes::charset());
  +    return getAttribute(charsetAttr);
   }
   
   void HTMLLinkElementImpl::setCharset(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charset(), value);
  +    setAttribute(charsetAttr, value);
   }
   
   DOMString HTMLLinkElementImpl::href() const
   {
  -    return getDocument()->completeURL(getAttribute(HTMLAttributes::href()));
  +    return getDocument()->completeURL(getAttribute(hrefAttr));
   }
   
   void HTMLLinkElementImpl::setHref(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::href(), value);
  +    setAttribute(hrefAttr, value);
   }
   
   DOMString HTMLLinkElementImpl::hreflang() const
   {
  -    return getAttribute(HTMLAttributes::hreflang());
  +    return getAttribute(hreflangAttr);
   }
   
   void HTMLLinkElementImpl::setHreflang(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::hreflang(), value);
  +    setAttribute(hreflangAttr, value);
   }
   
   DOMString HTMLLinkElementImpl::media() const
   {
  -    return getAttribute(HTMLAttributes::media());
  +    return getAttribute(mediaAttr);
   }
   
   void HTMLLinkElementImpl::setMedia(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::media(), value);
  +    setAttribute(mediaAttr, value);
   }
   
   DOMString HTMLLinkElementImpl::rel() const
   {
  -    return getAttribute(HTMLAttributes::rel());
  +    return getAttribute(relAttr);
   }
   
   void HTMLLinkElementImpl::setRel(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::rel(), value);
  +    setAttribute(relAttr, value);
   }
   
   DOMString HTMLLinkElementImpl::rev() const
   {
  -    return getAttribute(HTMLAttributes::rev());
  +    return getAttribute(revAttr);
   }
   
   void HTMLLinkElementImpl::setRev(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::rev(), value);
  +    setAttribute(revAttr, value);
   }
   
   DOMString HTMLLinkElementImpl::target() const
   {
  -    return getAttribute(HTMLAttributes::target());
  +    return getAttribute(targetAttr);
   }
   
   void HTMLLinkElementImpl::setTarget(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::target(), value);
  +    setAttribute(targetAttr, value);
   }
   
   DOMString HTMLLinkElementImpl::type() const
   {
  -    return getAttribute(HTMLAttributes::type());
  +    return getAttribute(typeAttr);
   }
   
   void HTMLLinkElementImpl::setType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::type(), value);
  +    setAttribute(typeAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
  -HTMLMetaElementImpl::HTMLMetaElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLTags::meta(), doc)
  +HTMLMetaElementImpl::HTMLMetaElementImpl(DocumentPtr *doc) : HTMLElementImpl(metaTag, doc)
   {
   }
   
  @@ -409,13 +410,13 @@
   
   void HTMLMetaElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::http_equiv()) {
  +    if (attr->name() == http_equivAttr) {
   	m_equiv = attr->value();
   	process();
  -    } else if (attr->name() == HTMLAttributes::content()) {
  +    } else if (attr->name() == contentAttr) {
   	m_content = attr->value();
   	process();
  -    } else if (attr->name() == HTMLAttributes::name()) {
  +    } else if (attr->name() == nameAttr) {
           // Do nothing.
       } else
           HTMLElementImpl::parseMappedAttribute(attr);
  @@ -437,48 +438,48 @@
   
   DOMString HTMLMetaElementImpl::content() const
   {
  -    return getAttribute(HTMLAttributes::content());
  +    return getAttribute(contentAttr);
   }
   
   void HTMLMetaElementImpl::setContent(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::content(), value);
  +    setAttribute(contentAttr, value);
   }
   
   DOMString HTMLMetaElementImpl::httpEquiv() const
   {
  -    return getAttribute(HTMLAttributes::http_equiv());
  +    return getAttribute(http_equivAttr);
   }
   
   void HTMLMetaElementImpl::setHttpEquiv(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::http_equiv(), value);
  +    setAttribute(http_equivAttr, value);
   }
   
   DOMString HTMLMetaElementImpl::name() const
   {
  -    return getAttribute(HTMLAttributes::name());
  +    return getAttribute(nameAttr);
   }
   
   void HTMLMetaElementImpl::setName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::name(), value);
  +    setAttribute(nameAttr, value);
   }
   
   DOMString HTMLMetaElementImpl::scheme() const
   {
  -    return getAttribute(HTMLAttributes::scheme());
  +    return getAttribute(schemeAttr);
   }
   
   void HTMLMetaElementImpl::setScheme(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::scheme(), value);
  +    setAttribute(schemeAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLScriptElementImpl::HTMLScriptElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::script(), doc), m_cachedScript(0), m_createdByParser(false), m_evaluated(false)
  +    : HTMLElementImpl(scriptTag, doc), m_cachedScript(0), m_createdByParser(false), m_evaluated(false)
   {
   }
   
  @@ -490,7 +491,7 @@
   
   bool HTMLScriptElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return attr->name() == HTMLAttributes::src();
  +    return attr->name() == srcAttr;
   }
   
   void HTMLScriptElementImpl::childrenChanged()
  @@ -511,9 +512,9 @@
       if (m_createdByParser)
           return;
       
  -    QString url = getAttribute(HTMLAttributes::src()).string();
  +    QString url = getAttribute(srcAttr).string();
       if (!url.isEmpty()) {
  -        QString charset = getAttribute(HTMLAttributes::charset()).string();
  +        QString charset = getAttribute(charsetAttr).string();
           m_cachedScript = getDocument()->docLoader()->requestScript(DOMString(url), charset);
           m_cachedScript->ref(this);
           return;
  @@ -618,47 +619,47 @@
   
   DOMString HTMLScriptElementImpl::charset() const
   {
  -    return getAttribute(HTMLAttributes::charset());
  +    return getAttribute(charsetAttr);
   }
   
   void HTMLScriptElementImpl::setCharset(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charset(), value);
  +    setAttribute(charsetAttr, value);
   }
   
   bool HTMLScriptElementImpl::defer() const
   {
  -    return !getAttribute(HTMLAttributes::defer()).isNull();
  +    return !getAttribute(deferAttr).isNull();
   }
   
   void HTMLScriptElementImpl::setDefer(bool defer)
   {
  -    setAttribute(HTMLAttributes::defer(), defer ? "" : 0);
  +    setAttribute(deferAttr, defer ? "" : 0);
   }
   
   DOMString HTMLScriptElementImpl::src() const
   {
  -    return getDocument()->completeURL(getAttribute(HTMLAttributes::src()));
  +    return getDocument()->completeURL(getAttribute(srcAttr));
   }
   
   void HTMLScriptElementImpl::setSrc(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::src(), value);
  +    setAttribute(srcAttr, value);
   }
   
   DOMString HTMLScriptElementImpl::type() const
   {
  -    return getAttribute(HTMLAttributes::type());
  +    return getAttribute(typeAttr);
   }
   
   void HTMLScriptElementImpl::setType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::type(), value);
  +    setAttribute(typeAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
  -HTMLStyleElementImpl::HTMLStyleElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLTags::style(), doc)
  +HTMLStyleElementImpl::HTMLStyleElementImpl(DocumentPtr *doc) : HTMLElementImpl(styleTag, doc)
   {
       m_sheet = 0;
       m_loading = false;
  @@ -672,9 +673,9 @@
   // other stuff...
   void HTMLStyleElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::type())
  +    if (attr->name() == typeAttr)
           m_type = attr->value().domString().lower();
  -    else if (attr->name() == HTMLAttributes::media())
  +    else if (attr->name() == mediaAttr)
           m_media = attr->value().string().lower();
       else
           HTMLElementImpl::parseMappedAttribute(attr);
  @@ -744,38 +745,38 @@
   
   bool HTMLStyleElementImpl::disabled() const
   {
  -    return !getAttribute(HTMLAttributes::disabled()).isNull();
  +    return !getAttribute(disabledAttr).isNull();
   }
   
   void HTMLStyleElementImpl::setDisabled(bool disabled)
   {
  -    setAttribute(HTMLAttributes::disabled(), disabled ? "" : 0);
  +    setAttribute(disabledAttr, disabled ? "" : 0);
   }
   
   DOMString HTMLStyleElementImpl::media() const
   {
  -    return getAttribute(HTMLAttributes::media());
  +    return getAttribute(mediaAttr);
   }
   
   void HTMLStyleElementImpl::setMedia(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::media(), value);
  +    setAttribute(mediaAttr, value);
   }
   
   DOMString HTMLStyleElementImpl::type() const
   {
  -    return getAttribute(HTMLAttributes::type());
  +    return getAttribute(typeAttr);
   }
   
   void HTMLStyleElementImpl::setType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::type(), value);
  +    setAttribute(typeAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLTitleElementImpl::HTMLTitleElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::title(), doc), m_title("")
  +    : HTMLElementImpl(titleTag, doc), m_title("")
   {
   }
   
  
  
  
  1.48      +84 -83    WebCore/khtml/html/html_imageimpl.cpp
  
  Index: html_imageimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_imageimpl.cpp,v
  retrieving revision 1.47
  retrieving revision 1.48
  diff -u -r1.47 -r1.48
  --- html_imageimpl.cpp	20 Jul 2005 02:35:31 -0000	1.47
  +++ html_imageimpl.cpp	30 Jul 2005 02:33:17 -0000	1.48
  @@ -48,6 +48,7 @@
   #include <qpointarray.h>
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   // #define INSTRUMENT_LAYOUT_SCHEDULING 1
  @@ -74,10 +75,10 @@
           return;
   
       AtomicString attr;
  -    if (element()->hasLocalName(HTMLTags::object()))
  -        attr = element()->getAttribute(HTMLAttributes::data());
  +    if (element()->hasLocalName(objectTag))
  +        attr = element()->getAttribute(dataAttr);
       else
  -        attr = element()->getAttribute(HTMLAttributes::src());
  +        attr = element()->getAttribute(srcAttr);
       
       // Treat a lack of src or empty string for src as no image at all.
       CachedImage* newImage = 0;
  @@ -136,7 +137,7 @@
   // -------------------------------------------------------------------------
   
   HTMLImageElementImpl::HTMLImageElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f)
  -    : HTMLElementImpl(HTMLTags::img(), doc), m_imageLoader(this), ismap(false), m_form(f)
  +    : HTMLElementImpl(imgTag, doc), m_imageLoader(this), ismap(false), m_form(f)
   {
       if (m_form)
           m_form->registerImgElement(this);
  @@ -155,17 +156,17 @@
   
   bool HTMLImageElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::width() ||
  -        attrName == HTMLAttributes::height() ||
  -        attrName == HTMLAttributes::vspace() ||
  -        attrName == HTMLAttributes::hspace() ||
  -        attrName == HTMLAttributes::valign()) {
  +    if (attrName == widthAttr ||
  +        attrName == heightAttr ||
  +        attrName == vspaceAttr ||
  +        attrName == hspaceAttr ||
  +        attrName == valignAttr) {
           result = eUniversal;
           return false;
       }
       
  -    if (attrName == HTMLAttributes::border() ||
  -        attrName == HTMLAttributes::align()) {
  +    if (attrName == borderAttr ||
  +        attrName == alignAttr) {
           result = eReplaced; // Shared with embeds and iframes
           return false;
       }
  @@ -175,15 +176,15 @@
   
   void HTMLImageElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::alt()) {
  +    if (attr->name() == altAttr) {
           if (m_render) static_cast<RenderImage*>(m_render)->updateAltText();
  -    } else if (attr->name() == HTMLAttributes::src()) {
  +    } else if (attr->name() == srcAttr) {
           m_imageLoader.updateFromElement();
  -    } else if (attr->name() == HTMLAttributes::width()) {
  +    } else if (attr->name() == widthAttr) {
           addCSSLength(attr, CSS_PROP_WIDTH, attr->value());
  -    } else if (attr->name() == HTMLAttributes::height()) {
  +    } else if (attr->name() == heightAttr) {
           addCSSLength(attr, CSS_PROP_HEIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::border()) {
  +    } else if (attr->name() == borderAttr) {
           // border="noborder" -> border="0"
           if(attr->value().toInt()) {
               addCSSLength(attr, CSS_PROP_BORDER_WIDTH, attr->value());
  @@ -192,17 +193,17 @@
               addCSSProperty(attr, CSS_PROP_BORDER_BOTTOM_STYLE, CSS_VAL_SOLID);
               addCSSProperty(attr, CSS_PROP_BORDER_LEFT_STYLE, CSS_VAL_SOLID);
           }
  -    } else if (attr->name() == HTMLAttributes::vspace()) {
  +    } else if (attr->name() == vspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_TOP, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_BOTTOM, attr->value());
  -    } else if (attr->name() == HTMLAttributes::hspace()) {
  +    } else if (attr->name() == hspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_LEFT, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_RIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::align()) {
  +    } else if (attr->name() == alignAttr) {
           addHTMLAlignment(attr);
  -    } else if (attr->name() == HTMLAttributes::valign()) {
  +    } else if (attr->name() == valignAttr) {
           addCSSProperty(attr, CSS_PROP_VERTICAL_ALIGN, attr->value());
  -    } else if (attr->name() == HTMLAttributes::usemap()) {
  +    } else if (attr->name() == usemapAttr) {
           if (attr->value().domString()[0] == '#')
               usemap = attr->value();
           else {
  @@ -212,23 +213,23 @@
               usemap = url;
           }
           m_isLink = !attr->isNull();
  -    } else if (attr->name() == HTMLAttributes::ismap()) {
  +    } else if (attr->name() == ismapAttr) {
           ismap = true;
  -    } else if (attr->name() == HTMLAttributes::onabort()) {
  +    } else if (attr->name() == onabortAttr) {
           setHTMLEventListener(EventImpl::ABORT_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onerror()) {
  +    } else if (attr->name() == onerrorAttr) {
           setHTMLEventListener(EventImpl::ERROR_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onload()) {
  +    } else if (attr->name() == onloadAttr) {
           setHTMLEventListener(EventImpl::LOAD_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
       }
   #if APPLE_CHANGES
  -    else if (attr->name() == HTMLAttributes::composite())
  +    else if (attr->name() == compositeAttr)
           _compositeOperator = attr->value().string();
   #endif
  -    else if (attr->name() == HTMLAttributes::name()) {
  +    else if (attr->name() == nameAttr) {
           DOMString newNameAttr = attr->value();
           if (inDocument() && getDocument()->isHTMLDocument()) {
               HTMLDocumentImpl *document = static_cast<HTMLDocumentImpl *>(getDocument());
  @@ -245,10 +246,10 @@
       // lets figure out the alt text.. magic stuff
       // http://www.w3.org/TR/1998/REC-html40-19980424/appendix/notes.html#altgen
       // also heavily discussed by Hixie on bugzilla
  -    DOMString alt(getAttribute(HTMLAttributes::alt()));
  +    DOMString alt(getAttribute(altAttr));
       // fall back to title attribute
       if (alt.isNull())
  -        alt = getAttribute(HTMLAttributes::title());
  +        alt = getAttribute(titleAttr);
       return alt;
   }
   
  @@ -291,7 +292,7 @@
   {
       if (!m_render) {
   	// check the attribute first for an explicit pixel value
  -	DOM::DOMString attrWidth = getAttribute(HTMLAttributes::width());
  +	DOM::DOMString attrWidth = getAttribute(widthAttr);
   	bool ok;
   	long width = attrWidth.string().toLong(&ok);
   	if (ok) {
  @@ -318,7 +319,7 @@
   {
       if (!m_render) {
   	// check the attribute first for an explicit pixel value
  -	DOM::DOMString attrHeight = getAttribute(HTMLAttributes::height());
  +	DOM::DOMString attrHeight = getAttribute(heightAttr);
   	bool ok;
   	long height = attrHeight.string().toLong(&ok);
   	if (ok) {
  @@ -351,120 +352,120 @@
   
   bool HTMLImageElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return (attr->name() == HTMLAttributes::src() || (attr->name() == HTMLAttributes::usemap() && attr->value().domString()[0] != '#'));
  +    return (attr->name() == srcAttr || (attr->name() == usemapAttr && attr->value().domString()[0] != '#'));
   }
   
   DOMString HTMLImageElementImpl::name() const
   {
  -    return getAttribute(HTMLAttributes::name());
  +    return getAttribute(nameAttr);
   }
   
   void HTMLImageElementImpl::setName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::name(), value);
  +    setAttribute(nameAttr, value);
   }
   
   DOMString HTMLImageElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLImageElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   DOMString HTMLImageElementImpl::alt() const
   {
  -    return getAttribute(HTMLAttributes::alt());
  +    return getAttribute(altAttr);
   }
   
   void HTMLImageElementImpl::setAlt(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::alt(), value);
  +    setAttribute(altAttr, value);
   }
   
   long HTMLImageElementImpl::border() const
   {
       // ### return value in pixels
  -    return getAttribute(HTMLAttributes::border()).toInt();
  +    return getAttribute(borderAttr).toInt();
   }
   
   void HTMLImageElementImpl::setBorder(long value)
   {
  -    setAttribute(HTMLAttributes::border(), QString::number(value));
  +    setAttribute(borderAttr, QString::number(value));
   }
   
   void HTMLImageElementImpl::setHeight(long value)
   {
  -    setAttribute(HTMLAttributes::height(), QString::number(value));
  +    setAttribute(heightAttr, QString::number(value));
   }
   
   long HTMLImageElementImpl::hspace() const
   {
       // ### return actual value
  -    return getAttribute(HTMLAttributes::hspace()).toInt();
  +    return getAttribute(hspaceAttr).toInt();
   }
   
   void HTMLImageElementImpl::setHspace(long value)
   {
  -    setAttribute(HTMLAttributes::hspace(), QString::number(value));
  +    setAttribute(hspaceAttr, QString::number(value));
   }
   
   bool HTMLImageElementImpl::isMap() const
   {
  -    return !getAttribute(HTMLAttributes::ismap()).isNull();
  +    return !getAttribute(ismapAttr).isNull();
   }
   
   void HTMLImageElementImpl::setIsMap(bool isMap)
   {
  -    setAttribute(HTMLAttributes::ismap(), isMap ? "" : 0);
  +    setAttribute(ismapAttr, isMap ? "" : 0);
   }
   
   DOMString HTMLImageElementImpl::longDesc() const
   {
  -    return getAttribute(HTMLAttributes::longdesc());
  +    return getAttribute(longdescAttr);
   }
   
   void HTMLImageElementImpl::setLongDesc(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::longdesc(), value);
  +    setAttribute(longdescAttr, value);
   }
   
   DOMString HTMLImageElementImpl::src() const
   {
  -    return getDocument()->completeURL(getAttribute(HTMLAttributes::src()));
  +    return getDocument()->completeURL(getAttribute(srcAttr));
   }
   
   void HTMLImageElementImpl::setSrc(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::src(), value);
  +    setAttribute(srcAttr, value);
   }
   
   DOMString HTMLImageElementImpl::useMap() const
   {
  -    return getAttribute(HTMLAttributes::usemap());
  +    return getAttribute(usemapAttr);
   }
   
   void HTMLImageElementImpl::setUseMap(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::usemap(), value);
  +    setAttribute(usemapAttr, value);
   }
   
   long HTMLImageElementImpl::vspace() const
   {
       // ### return actual vspace
  -    return getAttribute(HTMLAttributes::vspace()).toInt();
  +    return getAttribute(vspaceAttr).toInt();
   }
   
   void HTMLImageElementImpl::setVspace(long value)
   {
  -    setAttribute(HTMLAttributes::vspace(), QString::number(value));
  +    setAttribute(vspaceAttr, QString::number(value));
   }
   
   void HTMLImageElementImpl::setWidth(long value)
   {
  -    setAttribute(HTMLAttributes::width(), QString::number(value));
  +    setAttribute(widthAttr, QString::number(value));
   }
   
   long HTMLImageElementImpl::x() const
  @@ -490,7 +491,7 @@
   // -------------------------------------------------------------------------
   
   HTMLMapElementImpl::HTMLMapElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::map(), doc)
  +    : HTMLElementImpl(mapTag, doc)
   {
   }
   
  @@ -503,7 +504,7 @@
   bool HTMLMapElementImpl::checkDTD(const NodeImpl* newChild)
   {
       // FIXME: This seems really odd, allowing only blocks inside map.
  -    return newChild->hasTagName(HTMLTags::area()) || newChild->hasTagName(HTMLTags::script()) ||
  +    return newChild->hasTagName(areaTag) || newChild->hasTagName(scriptTag) ||
              inBlockTagList(newChild);
   }
   
  @@ -524,7 +525,7 @@
               continue;
           }
           
  -        if (current->hasTagName(HTMLTags::area())) {
  +        if (current->hasTagName(areaTag)) {
               //cout << "area found " << endl;
               HTMLAreaElementImpl* area = static_cast<HTMLAreaElementImpl*>(current);
               if (area->mapMouseEvent(x_,y_,width_,height_, info))
  @@ -545,8 +546,8 @@
   
   void HTMLMapElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::idAttr() || attr->name() == HTMLAttributes::name()) {
  -        if (attr->name() == HTMLAttributes::idAttr()) {
  +    if (attr->name() == idAttr || attr->name() == nameAttr) {
  +        if (attr->name() == idAttr) {
               // Must call base class so that hasID bit gets set.
               HTMLElementImpl::parseMappedAttribute(attr);
               if (getDocument()->htmlMode() != DocumentImpl::XHtml)
  @@ -568,18 +569,18 @@
   
   DOMString HTMLMapElementImpl::name() const
   {
  -    return getAttribute(HTMLAttributes::name());
  +    return getAttribute(nameAttr);
   }
   
   void HTMLMapElementImpl::setName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::name(), value);
  +    setAttribute(nameAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLAreaElementImpl::HTMLAreaElementImpl(DocumentPtr *doc)
  -    : HTMLAnchorElementImpl(HTMLTags::area(), doc)
  +    : HTMLAnchorElementImpl(areaTag, doc)
   {
       m_coords=0;
       m_coordsLen = 0;
  @@ -594,7 +595,7 @@
   
   void HTMLAreaElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::shape()) {
  +    if (attr->name() == shapeAttr) {
           if ( strcasecmp( attr->value(), "default" ) == 0 )
               m_shape = Default;
           else if ( strcasecmp( attr->value(), "circle" ) == 0 )
  @@ -603,13 +604,13 @@
               m_shape = Poly;
           else if ( strcasecmp( attr->value(), "rect" ) == 0 )
               m_shape = Rect;
  -    } else if (attr->name() == HTMLAttributes::coords()) {
  +    } else if (attr->name() == coordsAttr) {
           if (m_coords) delete [] m_coords;
           m_coords = attr->value().toCoordsArray(m_coordsLen);
  -    } else if (attr->name() == HTMLAttributes::target()) {
  +    } else if (attr->name() == targetAttr) {
           m_hasTarget = !attr->isNull();
  -    } else if (attr->name() == HTMLAttributes::alt() ||
  -               attr->name() == HTMLAttributes::accesskey()) {
  +    } else if (attr->name() == altAttr ||
  +               attr->name() == accesskeyAttr) {
           // Do nothing
       } else
           HTMLAnchorElementImpl::parseMappedAttribute(attr);
  @@ -685,80 +686,80 @@
   
   DOMString HTMLAreaElementImpl::accessKey() const
   {
  -    return getAttribute(HTMLAttributes::accesskey());
  +    return getAttribute(accesskeyAttr);
   }
   
   void HTMLAreaElementImpl::setAccessKey(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::accesskey(), value);
  +    setAttribute(accesskeyAttr, value);
   }
   
   DOMString HTMLAreaElementImpl::alt() const
   {
  -    return getAttribute(HTMLAttributes::alt());
  +    return getAttribute(altAttr);
   }
   
   void HTMLAreaElementImpl::setAlt(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::alt(), value);
  +    setAttribute(altAttr, value);
   }
   
   DOMString HTMLAreaElementImpl::coords() const
   {
  -    return getAttribute(HTMLAttributes::coords());
  +    return getAttribute(coordsAttr);
   }
   
   void HTMLAreaElementImpl::setCoords(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::coords(), value);
  +    setAttribute(coordsAttr, value);
   }
   
   DOMString HTMLAreaElementImpl::href() const
   {
  -    return getDocument()->completeURL(getAttribute(HTMLAttributes::href()));
  +    return getDocument()->completeURL(getAttribute(hrefAttr));
   }
   
   void HTMLAreaElementImpl::setHref(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::href(), value);
  +    setAttribute(hrefAttr, value);
   }
   
   bool HTMLAreaElementImpl::noHref() const
   {
  -    return !getAttribute(HTMLAttributes::nohref()).isNull();
  +    return !getAttribute(nohrefAttr).isNull();
   }
   
   void HTMLAreaElementImpl::setNoHref(bool noHref)
   {
  -    setAttribute(HTMLAttributes::nohref(), noHref ? "" : 0);
  +    setAttribute(nohrefAttr, noHref ? "" : 0);
   }
   
   DOMString HTMLAreaElementImpl::shape() const
   {
  -    return getAttribute(HTMLAttributes::shape());
  +    return getAttribute(shapeAttr);
   }
   
   void HTMLAreaElementImpl::setShape(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::shape(), value);
  +    setAttribute(shapeAttr, value);
   }
   
   long HTMLAreaElementImpl::tabIndex() const
   {
  -    return getAttribute(HTMLAttributes::tabindex()).toInt();
  +    return getAttribute(tabindexAttr).toInt();
   }
   
   void HTMLAreaElementImpl::setTabIndex(long tabIndex)
   {
  -    setAttribute(HTMLAttributes::tabindex(), QString::number(tabIndex));
  +    setAttribute(tabindexAttr, QString::number(tabIndex));
   }
   
   DOMString HTMLAreaElementImpl::target() const
   {
  -    return getAttribute(HTMLAttributes::target());
  +    return getAttribute(targetAttr);
   }
   
   void HTMLAreaElementImpl::setTarget(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::target(), value);
  +    setAttribute(targetAttr, value);
   }
  
  
  
  1.46      +60 -59    WebCore/khtml/html/html_inlineimpl.cpp
  
  Index: html_inlineimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_inlineimpl.cpp,v
  retrieving revision 1.45
  retrieving revision 1.46
  diff -u -r1.45 -r1.46
  --- html_inlineimpl.cpp	18 Jul 2005 21:52:26 -0000	1.45
  +++ html_inlineimpl.cpp	30 Jul 2005 02:33:17 -0000	1.46
  @@ -39,12 +39,13 @@
   
   #include <kdebug.h>
   
  +using namespace HTMLNames;
   using namespace khtml;
   
   namespace DOM {
   
   HTMLAnchorElementImpl::HTMLAnchorElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::a(), doc)
  +    : HTMLElementImpl(aTag, doc)
   {
       m_hasTarget = false;
   }
  @@ -145,14 +146,14 @@
               }
           }
   
  -        url = khtml::parseURL(getAttribute(HTMLAttributes::href())).string();
  +        url = khtml::parseURL(getAttribute(hrefAttr)).string();
   
  -        utarget = getAttribute(HTMLAttributes::target()).string();
  +        utarget = getAttribute(targetAttr).string();
   
           if ( e && e->button() == 1 )
               utarget = "_blank";
   
  -        if (evt->target()->hasTagName(HTMLTags::img())) {
  +        if (evt->target()->hasTagName(imgTag)) {
               HTMLImageElementImpl* img = static_cast<HTMLImageElementImpl*>( evt->target() );
               if ( img && img->isServerMap() )
               {
  @@ -216,13 +217,13 @@
   
   void HTMLAnchorElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::href()) {
  +    if (attr->name() == hrefAttr) {
           m_isLink = !attr->isNull();
  -    } else if (attr->name() == HTMLAttributes::target()) {
  +    } else if (attr->name() == targetAttr) {
           m_hasTarget = !attr->isNull();
  -    } else if (attr->name() == HTMLAttributes::name() ||
  -             attr->name() == HTMLAttributes::title() ||
  -             attr->name() == HTMLAttributes::rel()) {
  +    } else if (attr->name() == nameAttr ||
  +             attr->name() == titleAttr ||
  +             attr->name() == relAttr) {
           // Do nothing.
       } else
           HTMLElementImpl::parseMappedAttribute(attr);
  @@ -237,42 +238,42 @@
   
   bool HTMLAnchorElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return attr->name() == HTMLAttributes::href();
  +    return attr->name() == hrefAttr;
   }
   
   DOMString HTMLAnchorElementImpl::accessKey() const
   {
  -    return getAttribute(HTMLAttributes::accesskey());
  +    return getAttribute(accesskeyAttr);
   }
   
   void HTMLAnchorElementImpl::setAccessKey(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::accesskey(), value);
  +    setAttribute(accesskeyAttr, value);
   }
   
   DOMString HTMLAnchorElementImpl::charset() const
   {
  -    return getAttribute(HTMLAttributes::charset());
  +    return getAttribute(charsetAttr);
   }
   
   void HTMLAnchorElementImpl::setCharset(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charset(), value);
  +    setAttribute(charsetAttr, value);
   }
   
   DOMString HTMLAnchorElementImpl::coords() const
   {
  -    return getAttribute(HTMLAttributes::coords());
  +    return getAttribute(coordsAttr);
   }
   
   void HTMLAnchorElementImpl::setCoords(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::coords(), value);
  +    setAttribute(coordsAttr, value);
   }
   
   DOMString HTMLAnchorElementImpl::href() const
   {
  -    DOMString href = getAttribute(HTMLAttributes::href());
  +    DOMString href = getAttribute(hrefAttr);
       if (href.isNull())
           return href;
       return getDocument()->completeURL(href);
  @@ -280,87 +281,87 @@
   
   void HTMLAnchorElementImpl::setHref(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::href(), value);
  +    setAttribute(hrefAttr, value);
   }
   
   DOMString HTMLAnchorElementImpl::hreflang() const
   {
  -    return getAttribute(HTMLAttributes::hreflang());
  +    return getAttribute(hreflangAttr);
   }
   
   void HTMLAnchorElementImpl::setHreflang(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::hreflang(), value);
  +    setAttribute(hreflangAttr, value);
   }
   
   DOMString HTMLAnchorElementImpl::name() const
   {
  -    return getAttribute(HTMLAttributes::name());
  +    return getAttribute(nameAttr);
   }
   
   void HTMLAnchorElementImpl::setName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::name(), value);
  +    setAttribute(nameAttr, value);
   }
   
   DOMString HTMLAnchorElementImpl::rel() const
   {
  -    return getAttribute(HTMLAttributes::rel());
  +    return getAttribute(relAttr);
   }
   
   void HTMLAnchorElementImpl::setRel(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::rel(), value);
  +    setAttribute(relAttr, value);
   }
   
   DOMString HTMLAnchorElementImpl::rev() const
   {
  -    return getAttribute(HTMLAttributes::rev());
  +    return getAttribute(revAttr);
   }
   
   void HTMLAnchorElementImpl::setRev(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::rev(), value);
  +    setAttribute(revAttr, value);
   }
   
   DOMString HTMLAnchorElementImpl::shape() const
   {
  -    return getAttribute(HTMLAttributes::shape());
  +    return getAttribute(shapeAttr);
   }
   
   void HTMLAnchorElementImpl::setShape(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::shape(), value);
  +    setAttribute(shapeAttr, value);
   }
   
   long HTMLAnchorElementImpl::tabIndex() const
   {
  -    return getAttribute(HTMLAttributes::tabindex()).toInt();
  +    return getAttribute(tabindexAttr).toInt();
   }
   
   void HTMLAnchorElementImpl::setTabIndex(long tabIndex)
   {
  -    setAttribute(HTMLAttributes::tabindex(), QString::number(tabIndex));
  +    setAttribute(tabindexAttr, QString::number(tabIndex));
   }
   
   DOMString HTMLAnchorElementImpl::target() const
   {
  -    return getAttribute(HTMLAttributes::target());
  +    return getAttribute(targetAttr);
   }
   
   void HTMLAnchorElementImpl::setTarget(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::target(), value);
  +    setAttribute(targetAttr, value);
   }
   
   DOMString HTMLAnchorElementImpl::type() const
   {
  -    return getAttribute(HTMLAttributes::type());
  +    return getAttribute(typeAttr);
   }
   
   void HTMLAnchorElementImpl::setType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::type(), value);
  +    setAttribute(typeAttr, value);
   }
   
   void HTMLAnchorElementImpl::blur()
  @@ -377,7 +378,7 @@
   
   // -------------------------------------------------------------------------
   
  -HTMLBRElementImpl::HTMLBRElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLTags::br(), doc)
  +HTMLBRElementImpl::HTMLBRElementImpl(DocumentPtr *doc) : HTMLElementImpl(brTag, doc)
   {
   }
   
  @@ -387,7 +388,7 @@
   
   bool HTMLBRElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::clear()) {
  +    if (attrName == clearAttr) {
           result = eUniversal;
           return false;
       }
  @@ -397,7 +398,7 @@
   
   void HTMLBRElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::clear()) {
  +    if (attr->name() == clearAttr) {
           DOMString str = attr->value();
           // If the string is empty, then don't add the clear property. 
           // <br clear> and <br clear=""> are just treated like <br> by Gecko,
  @@ -418,18 +419,18 @@
   
   DOMString HTMLBRElementImpl::clear() const
   {
  -    return getAttribute(HTMLAttributes::clear());
  +    return getAttribute(clearAttr);
   }
   
   void HTMLBRElementImpl::setClear(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::clear(), value);
  +    setAttribute(clearAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLFontElementImpl::HTMLFontElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::font(), doc)
  +    : HTMLElementImpl(fontTag, doc)
   {
   }
   
  @@ -485,9 +486,9 @@
   
   bool HTMLFontElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::size() ||
  -        attrName == HTMLAttributes::color() ||
  -        attrName == HTMLAttributes::face()) {
  +    if (attrName == sizeAttr ||
  +        attrName == colorAttr ||
  +        attrName == faceAttr) {
           result = eUniversal;
           return false;
       }
  @@ -497,7 +498,7 @@
   
   void HTMLFontElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::size()) {
  +    if (attr->name() == sizeAttr) {
           int num;
           if (parseFontSizeNumber(attr->value(), num)) {
               int size;
  @@ -517,9 +518,9 @@
               }
               addCSSProperty(attr, CSS_PROP_FONT_SIZE, size);
           }
  -    } else if (attr->name() == HTMLAttributes::color()) {
  +    } else if (attr->name() == colorAttr) {
           addCSSColor(attr, CSS_PROP_COLOR, attr->value());
  -    } else if (attr->name() == HTMLAttributes::face()) {
  +    } else if (attr->name() == faceAttr) {
           addCSSProperty(attr, CSS_PROP_FONT_FAMILY, attr->value());
       } else
           HTMLElementImpl::parseMappedAttribute(attr);
  @@ -527,32 +528,32 @@
   
   DOMString HTMLFontElementImpl::color() const
   {
  -    return getAttribute(HTMLAttributes::color());
  +    return getAttribute(colorAttr);
   }
   
   void HTMLFontElementImpl::setColor(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::color(), value);
  +    setAttribute(colorAttr, value);
   }
   
   DOMString HTMLFontElementImpl::face() const
   {
  -    return getAttribute(HTMLAttributes::face());
  +    return getAttribute(faceAttr);
   }
   
   void HTMLFontElementImpl::setFace(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::face(), value);
  +    setAttribute(faceAttr, value);
   }
   
   DOMString HTMLFontElementImpl::size() const
   {
  -    return getAttribute(HTMLAttributes::size());
  +    return getAttribute(sizeAttr);
   }
   
   void HTMLFontElementImpl::setSize(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::size(), value);
  +    setAttribute(sizeAttr, value);
   }
   
   // -------------------------------------------------------------------------
  @@ -564,39 +565,39 @@
   
   DOMString HTMLModElementImpl::cite() const
   {
  -    return getAttribute(HTMLAttributes::cite());
  +    return getAttribute(citeAttr);
   }
   
   void HTMLModElementImpl::setCite(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::cite(), value);
  +    setAttribute(citeAttr, value);
   }
   
   DOMString HTMLModElementImpl::dateTime() const
   {
  -    return getAttribute(HTMLAttributes::datetime());
  +    return getAttribute(datetimeAttr);
   }
   
   void HTMLModElementImpl::setDateTime(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::datetime(), value);
  +    setAttribute(datetimeAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLQuoteElementImpl::HTMLQuoteElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::q(), doc)
  +    : HTMLElementImpl(qTag, doc)
   {
   }
   
   DOMString HTMLQuoteElementImpl::cite() const
   {
  -    return getAttribute(HTMLAttributes::cite());
  +    return getAttribute(citeAttr);
   }
   
   void HTMLQuoteElementImpl::setCite(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::cite(), value);
  +    setAttribute(citeAttr, value);
   }
   
   }
  
  
  
  1.13      +29 -29    WebCore/khtml/html/html_listimpl.cpp
  
  Index: html_listimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_listimpl.cpp,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- html_listimpl.cpp	18 Jul 2005 21:52:26 -0000	1.12
  +++ html_listimpl.cpp	30 Jul 2005 02:33:17 -0000	1.13
  @@ -33,7 +33,7 @@
   
   bool HTMLUListElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::type()) {
  +    if (attrName == typeAttr) {
           result = eUnorderedList;
           return false;
       }
  @@ -43,7 +43,7 @@
   
   void HTMLUListElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::type())
  +    if (attr->name() == typeAttr)
           addCSSProperty(attr, CSS_PROP_LIST_STYLE_TYPE, attr->value());
       else
           HTMLElementImpl::parseMappedAttribute(attr);
  @@ -51,53 +51,53 @@
   
   bool HTMLUListElementImpl::compact() const
   {
  -    return !getAttribute(HTMLAttributes::compact()).isNull();
  +    return !getAttribute(compactAttr).isNull();
   }
   
   void HTMLUListElementImpl::setCompact(bool b)
   {
  -    setAttribute(HTMLAttributes::compact(), b ? "" : 0);
  +    setAttribute(compactAttr, b ? "" : 0);
   }
   
   DOMString HTMLUListElementImpl::type() const
   {
  -    return getAttribute(HTMLAttributes::type());
  +    return getAttribute(typeAttr);
   }
   
   void HTMLUListElementImpl::setType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::type(), value);
  +    setAttribute(typeAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   bool HTMLDirectoryElementImpl::compact() const
   {
  -    return !getAttribute(HTMLAttributes::compact()).isNull();
  +    return !getAttribute(compactAttr).isNull();
   }
   
   void HTMLDirectoryElementImpl::setCompact(bool b)
   {
  -    setAttribute(HTMLAttributes::compact(), b ? "" : 0);
  +    setAttribute(compactAttr, b ? "" : 0);
   }
   
   // -------------------------------------------------------------------------
   
   bool HTMLMenuElementImpl::compact() const
   {
  -    return !getAttribute(HTMLAttributes::compact()).isNull();
  +    return !getAttribute(compactAttr).isNull();
   }
   
   void HTMLMenuElementImpl::setCompact(bool b)
   {
  -    setAttribute(HTMLAttributes::compact(), b ? "" : 0);
  +    setAttribute(compactAttr, b ? "" : 0);
   }
   
   // -------------------------------------------------------------------------
   
   bool HTMLOListElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::type()) {
  +    if (attrName == typeAttr) {
           result = eListItem; // Share with <li>
           return false;
       }
  @@ -107,7 +107,7 @@
   
   void HTMLOListElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::type()) {
  +    if (attr->name() == typeAttr) {
           if ( strcmp( attr->value(), "a" ) == 0 )
               addCSSProperty(attr, CSS_PROP_LIST_STYLE_TYPE, CSS_VAL_LOWER_ALPHA);
           else if ( strcmp( attr->value(), "A" ) == 0 )
  @@ -118,7 +118,7 @@
               addCSSProperty(attr, CSS_PROP_LIST_STYLE_TYPE, CSS_VAL_UPPER_ROMAN);
           else if ( strcmp( attr->value(), "1" ) == 0 )
               addCSSProperty(attr, CSS_PROP_LIST_STYLE_TYPE, CSS_VAL_DECIMAL);
  -    } else if (attr->name() == HTMLAttributes::start()) {
  +    } else if (attr->name() == startAttr) {
           _start = !attr->isNull() ? attr->value().toInt() : 1;
       } else
           HTMLElementImpl::parseMappedAttribute(attr);
  @@ -126,34 +126,34 @@
   
   bool HTMLOListElementImpl::compact() const
   {
  -    return !getAttribute(HTMLAttributes::compact()).isNull();
  +    return !getAttribute(compactAttr).isNull();
   }
   
   void HTMLOListElementImpl::setCompact(bool b)
   {
  -    setAttribute(HTMLAttributes::compact(), b ? "" : 0);
  +    setAttribute(compactAttr, b ? "" : 0);
   }
   
   void HTMLOListElementImpl::setStart(long start)
   {
  -    setAttribute(HTMLAttributes::start(), QString::number(start));
  +    setAttribute(startAttr, QString::number(start));
   }
   
   DOMString HTMLOListElementImpl::type() const
   {
  -    return getAttribute(HTMLAttributes::type());
  +    return getAttribute(typeAttr);
   }
   
   void HTMLOListElementImpl::setType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::type(), value);
  +    setAttribute(typeAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   bool HTMLLIElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::type()) {
  +    if (attrName == typeAttr) {
           result = eListItem; // Share with <ol> since all the values are the same
           return false;
       }
  @@ -163,7 +163,7 @@
   
   void HTMLLIElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::value()) {
  +    if (attr->name() == valueAttr) {
           isValued = true;
           requestedValue = !attr->isNull() ? attr->value().toInt() : 0;
   
  @@ -174,7 +174,7 @@
   
               list->setValue(requestedValue);
           }
  -    } else if (attr->name() == HTMLAttributes::type()) {
  +    } else if (attr->name() == typeAttr) {
           if ( strcmp( attr->value(), "a" ) == 0 )
               addCSSProperty(attr, CSS_PROP_LIST_STYLE_TYPE, CSS_VAL_LOWER_ALPHA);
           else if ( strcmp( attr->value(), "A" ) == 0 )
  @@ -204,7 +204,7 @@
           NodeImpl *listNode = 0;
           NodeImpl *n = this;
           while (!listNode && (n = n->parentNode())) {
  -            if (n->hasTagName(HTMLTags::ul()) || n->hasTagName(HTMLTags::ol()))
  +            if (n->hasTagName(ulTag) || n->hasTagName(olTag))
                   listNode = n;
           }
           
  @@ -214,7 +214,7 @@
               render->setNotInList(true);
   
   	// If we are first, and the OL has a start attr, set the value.
  -	if (listNode && listNode->hasTagName(HTMLTags::ol()) && !m_render->previousSibling()) {
  +	if (listNode && listNode->hasTagName(olTag) && !m_render->previousSibling()) {
   	    HTMLOListElementImpl *ol = static_cast<HTMLOListElementImpl *>(listNode);
               render->setValue(ol->start());
   	}
  @@ -227,34 +227,34 @@
   
   DOMString HTMLLIElementImpl::type() const
   {
  -    return getAttribute(HTMLAttributes::type());
  +    return getAttribute(typeAttr);
   }
   
   void HTMLLIElementImpl::setType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::type(), value);
  +    setAttribute(typeAttr, value);
   }
   
   long HTMLLIElementImpl::value() const
   {
  -    return getAttribute(HTMLAttributes::value()).toInt();
  +    return getAttribute(valueAttr).toInt();
   }
   
   void HTMLLIElementImpl::setValue(long value)
   {
  -    setAttribute(HTMLAttributes::value(), QString::number(value));
  +    setAttribute(valueAttr, QString::number(value));
   }
   
   // -------------------------------------------------------------------------
   
   bool HTMLDListElementImpl::compact() const
   {
  -    return !getAttribute(HTMLAttributes::compact()).isNull();
  +    return !getAttribute(compactAttr).isNull();
   }
   
   void HTMLDListElementImpl::setCompact(bool b)
   {
  -    setAttribute(HTMLAttributes::compact(), b ? "" : 0);
  +    setAttribute(compactAttr, b ? "" : 0);
   }
   
   }
  
  
  
  1.11      +8 -6      WebCore/khtml/html/html_listimpl.h
  
  Index: html_listimpl.h
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_listimpl.h,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- html_listimpl.h	18 Jul 2005 21:52:26 -0000	1.10
  +++ html_listimpl.h	30 Jul 2005 02:33:17 -0000	1.11
  @@ -29,13 +29,15 @@
   
   #include "html_elementimpl.h"
   
  +using namespace HTMLNames;
  +
   namespace DOM
   {
   
   class HTMLUListElementImpl : public HTMLElementImpl
   {
   public:
  -    HTMLUListElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLTags::ul(), doc) {}
  +    HTMLUListElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLNames::ulTag, doc) {}
       virtual ~HTMLUListElementImpl() {}
   
       virtual HTMLTagStatus endTagRequirement() const { return TagStatusRequired; }
  @@ -58,7 +60,7 @@
   class HTMLDirectoryElementImpl : public HTMLElementImpl
   {
   public:
  -    HTMLDirectoryElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLTags::dir(), doc) {}
  +    HTMLDirectoryElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLNames::dirTag, doc) {}
   
       virtual HTMLTagStatus endTagRequirement() const { return TagStatusRequired; }
       virtual int tagPriority() const { return 5; }
  @@ -72,7 +74,7 @@
   class HTMLMenuElementImpl : public HTMLElementImpl
   {
   public:
  -    HTMLMenuElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLTags::menu(), doc) {}
  +    HTMLMenuElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLNames::menuTag, doc) {}
   
       virtual HTMLTagStatus endTagRequirement() const { return TagStatusRequired; }
       virtual int tagPriority() const { return 5; }
  @@ -87,7 +89,7 @@
   {
   public:
       HTMLOListElementImpl(DocumentPtr *doc)
  -        : HTMLElementImpl(HTMLTags::ol(), doc) { _start = 1; }
  +        : HTMLElementImpl(HTMLNames::olTag, doc) { _start = 1; }
       
       virtual HTMLTagStatus endTagRequirement() const { return TagStatusRequired; }
       virtual int tagPriority() const { return 5; }
  @@ -114,7 +116,7 @@
   {
   public:
       HTMLLIElementImpl(DocumentPtr *doc)
  -        : HTMLElementImpl(HTMLTags::li(), doc) { isValued = false; }
  +        : HTMLElementImpl(HTMLNames::liTag, doc) { isValued = false; }
       virtual ~HTMLLIElementImpl() {}
   
       virtual HTMLTagStatus endTagRequirement() const { return TagStatusOptional; }
  @@ -141,7 +143,7 @@
   class HTMLDListElementImpl : public HTMLElementImpl
   {
   public:
  -    HTMLDListElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLTags::dl(), doc) {}
  +    HTMLDListElementImpl(DocumentPtr *doc) : HTMLElementImpl(HTMLNames::dlTag, doc) {}
       virtual ~HTMLDListElementImpl() {}
   
       virtual HTMLTagStatus endTagRequirement() const { return TagStatusRequired; }
  
  
  
  1.32      +89 -87    WebCore/khtml/html/html_miscimpl.cpp
  
  Index: html_miscimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_miscimpl.cpp,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- html_miscimpl.cpp	21 Jul 2005 04:10:52 -0000	1.31
  +++ html_miscimpl.cpp	30 Jul 2005 02:33:17 -0000	1.32
  @@ -31,41 +31,43 @@
   
   #include <kdebug.h>
   
  +using namespace HTMLNames;
  +
   namespace DOM {
   
   HTMLBaseFontElementImpl::HTMLBaseFontElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::basefont(), doc)
  +    : HTMLElementImpl(basefontTag, doc)
   {
   }
   
   DOMString HTMLBaseFontElementImpl::color() const
   {
  -    return getAttribute(HTMLAttributes::color());
  +    return getAttribute(colorAttr);
   }
   
   void HTMLBaseFontElementImpl::setColor(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::color(), value);
  +    setAttribute(colorAttr, value);
   }
   
   DOMString HTMLBaseFontElementImpl::face() const
   {
  -    return getAttribute(HTMLAttributes::face());
  +    return getAttribute(faceAttr);
   }
   
   void HTMLBaseFontElementImpl::setFace(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::face(), value);
  +    setAttribute(faceAttr, value);
   }
   
   DOMString HTMLBaseFontElementImpl::size() const
   {
  -    return getAttribute(HTMLAttributes::size());
  +    return getAttribute(sizeAttr);
   }
   
   void HTMLBaseFontElementImpl::setSize(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::size(), value);
  +    setAttribute(sizeAttr, value);
   }
   
   // -------------------------------------------------------------------------
  @@ -137,60 +139,60 @@
               HTMLElementImpl *e = static_cast<HTMLElementImpl *>(current);
               switch(type) {
               case DOC_IMAGES:
  -                if (e->hasLocalName(HTMLTags::img()))
  +                if (e->hasLocalName(imgTag))
                       found = true;
                   break;
               case DOC_FORMS:
  -                if(e->hasLocalName(HTMLTags::form()))
  +                if(e->hasLocalName(formTag))
                       found = true;
                   break;
               case TABLE_TBODIES:
  -                if (e->hasLocalName(HTMLTags::tbody()))
  +                if (e->hasLocalName(tbodyTag))
                       found = true;
  -                else if (e->hasLocalName(HTMLTags::table()))
  +                else if (e->hasLocalName(tableTag))
                       deep = false;
                   break;
               case TR_CELLS:
  -                if (e->hasLocalName(HTMLTags::td()) || e->hasLocalName(HTMLTags::th()))
  +                if (e->hasLocalName(tdTag) || e->hasLocalName(thTag))
                       found = true;
  -                else if (e->hasLocalName(HTMLTags::table()))
  +                else if (e->hasLocalName(tableTag))
                       deep = false;
                   break;
               case TABLE_ROWS:
               case TSECTION_ROWS:
  -                if (e->hasLocalName(HTMLTags::tr()))
  +                if (e->hasLocalName(trTag))
                       found = true;
  -                else if (e->hasLocalName(HTMLTags::table()))
  +                else if (e->hasLocalName(tableTag))
                       deep = false;
                   break;
               case SELECT_OPTIONS:
  -                if (e->hasLocalName(HTMLTags::option()))
  +                if (e->hasLocalName(optionTag))
                       found = true;
                   break;
               case MAP_AREAS:
  -                if (e->hasLocalName(HTMLTags::area()))
  +                if (e->hasLocalName(areaTag))
                       found = true;
                   break;
               case DOC_APPLETS:   // all OBJECT and APPLET elements
  -                if (e->hasLocalName(HTMLTags::object()) || e->hasLocalName(HTMLTags::applet()))
  +                if (e->hasLocalName(objectTag) || e->hasLocalName(appletTag))
                       found = true;
                   break;
               case DOC_EMBEDS:   // all EMBED elements
  -                if (e->hasLocalName(HTMLTags::embed()))
  +                if (e->hasLocalName(embedTag))
                       found = true;
                   break;
               case DOC_OBJECTS:   // all OBJECT elements
  -                if (e->hasLocalName(HTMLTags::object()))
  +                if (e->hasLocalName(objectTag))
                       found = true;
                   break;
               case DOC_LINKS:     // all A _and_ AREA elements with a value for href
  -                if (e->hasLocalName(HTMLTags::a()) || e->hasLocalName(HTMLTags::area()))
  -                    if (!e->getAttribute(HTMLAttributes::href()).isNull())
  +                if (e->hasLocalName(aTag) || e->hasLocalName(areaTag))
  +                    if (!e->getAttribute(hrefAttr).isNull())
                           found = true;
                   break;
               case DOC_ANCHORS:      // all A elements with a value for name or an id attribute
  -                if (e->hasLocalName(HTMLTags::a()))
  -                    if (!e->getAttribute(HTMLAttributes::name()).isNull())
  +                if (e->hasLocalName(aTag))
  +                    if (!e->getAttribute(nameAttr).isNull())
                           found = true;
                   break;
               case DOC_ALL:
  @@ -291,28 +293,28 @@
               // document.all returns only images, forms, applets, objects and embeds
               // by name (though everything by id)
               if (type == DOC_ALL && 
  -                !(e->hasLocalName(HTMLTags::img()) || e->hasLocalName(HTMLTags::form()) ||
  -                  e->hasLocalName(HTMLTags::applet()) || e->hasLocalName(HTMLTags::object()) ||
  -                  e->hasLocalName(HTMLTags::embed())))
  +                !(e->hasLocalName(imgTag) || e->hasLocalName(formTag) ||
  +                  e->hasLocalName(appletTag) || e->hasLocalName(objectTag) ||
  +                  e->hasLocalName(embedTag)))
                   return false;
   
  -            return e->getAttribute(HTMLAttributes::name()) == name && e->getAttribute(HTMLAttributes::idAttr()) != name;
  +            return e->getAttribute(nameAttr) == name && e->getAttribute(idAttr) != name;
           } else
  -            return e->getAttribute(HTMLAttributes::idAttr()) == name;
  +            return e->getAttribute(idAttr) == name;
       } else {
           if (checkName) {
               // document.all returns only images, forms, applets, objects and embeds
               // by name (though everything by id)
               if (type == DOC_ALL && 
  -                !(e->hasLocalName(HTMLTags::img()) || e->hasLocalName(HTMLTags::form()) ||
  -                  e->hasLocalName(HTMLTags::applet()) || e->hasLocalName(HTMLTags::object()) ||
  -                  e->hasLocalName(HTMLTags::embed())))
  +                !(e->hasLocalName(imgTag) || e->hasLocalName(formTag) ||
  +                  e->hasLocalName(appletTag) || e->hasLocalName(objectTag) ||
  +                  e->hasLocalName(embedTag)))
                   return false;
   
  -            return e->getAttribute(HTMLAttributes::name()).domString().lower() == name.lower() &&
  -                e->getAttribute(HTMLAttributes::idAttr()).domString().lower() != name.lower();
  +            return e->getAttribute(nameAttr).domString().lower() == name.lower() &&
  +                e->getAttribute(idAttr).domString().lower() != name.lower();
           } else {
  -            return e->getAttribute(HTMLAttributes::idAttr()).domString().lower() == name.lower();
  +            return e->getAttribute(idAttr).domString().lower() == name.lower();
           }
       }
   }
  @@ -370,26 +372,26 @@
               case WINDOW_NAMED_ITEMS:
                   // find only images, forms, applets, embeds and objects by name, 
                   // but anything by id
  -                if (e->hasTagName(HTMLTags::img()) ||
  -                    e->hasTagName(HTMLTags::form()) ||
  -                    e->hasTagName(HTMLTags::applet()) ||
  -                    e->hasTagName(HTMLTags::embed()) ||
  -                    e->hasTagName(HTMLTags::object()))
  -                    found = e->getAttribute(HTMLAttributes::name()) == m_name;
  -                found |= e->getAttribute(HTMLAttributes::idAttr()) == m_name;
  +                if (e->hasTagName(imgTag) ||
  +                    e->hasTagName(formTag) ||
  +                    e->hasTagName(appletTag) ||
  +                    e->hasTagName(embedTag) ||
  +                    e->hasTagName(objectTag))
  +                    found = e->getAttribute(nameAttr) == m_name;
  +                found |= e->getAttribute(idAttr) == m_name;
                   break;
               case DOCUMENT_NAMED_ITEMS:
                   // find images, forms, applets, embeds, objects and iframes by name, 
                   // but only applets and object by id (this strange rule matches IE)
  -                if (e->hasTagName(HTMLTags::img()) ||
  -                    e->hasTagName(HTMLTags::form()) ||
  -                    e->hasTagName(HTMLTags::embed()) ||
  -                    e->hasTagName(HTMLTags::iframe()))
  -                    found = e->getAttribute(HTMLAttributes::name()) == m_name;
  -                else if (e->hasTagName(HTMLTags::applet()) ||
  -                         e->hasTagName(HTMLTags::object()))
  -                    found = e->getAttribute(HTMLAttributes::name()) == m_name ||
  -                        e->getAttribute(HTMLAttributes::idAttr()) == m_name;
  +                if (e->hasTagName(imgTag) ||
  +                    e->hasTagName(formTag) ||
  +                    e->hasTagName(embedTag) ||
  +                    e->hasTagName(iframeTag))
  +                    found = e->getAttribute(nameAttr) == m_name;
  +                else if (e->hasTagName(appletTag) ||
  +                         e->hasTagName(objectTag))
  +                    found = e->getAttribute(nameAttr) == m_name ||
  +                        e->getAttribute(idAttr) == m_name;
                   break;
               default:
                   assert(0);
  @@ -421,27 +423,27 @@
           if (!n->isHTMLElement())
               continue;
           HTMLElementImpl* e = static_cast<HTMLElementImpl*>(n);
  -        QString idAttr = e->getAttribute(HTMLAttributes::idAttr()).string();
  -        QString nameAttr = e->getAttribute(HTMLAttributes::name()).string();
  -        if (!idAttr.isEmpty()) {
  +        QString idAttrVal = e->getAttribute(idAttr).string();
  +        QString nameAttrVal = e->getAttribute(nameAttr).string();
  +        if (!idAttrVal.isEmpty()) {
               // add to id cache
  -            QPtrVector<NodeImpl> *idVector = info->idCache.find(idAttr);
  +            QPtrVector<NodeImpl> *idVector = info->idCache.find(idAttrVal);
               if (!idVector) {
                   idVector = new QPtrVector<NodeImpl>;
  -                info->idCache.insert(idAttr, idVector);
  +                info->idCache.insert(idAttrVal, idVector);
               }
               appendToVector(idVector, n);
           }
  -        if (!nameAttr.isEmpty() && idAttr != nameAttr
  +        if (!nameAttrVal.isEmpty() && idAttrVal != nameAttrVal
               && (type != DOC_ALL || 
  -                (e->hasLocalName(HTMLTags::img()) || e->hasLocalName(HTMLTags::form()) ||
  -                 e->hasLocalName(HTMLTags::applet()) || e->hasLocalName(HTMLTags::object()) ||
  -                 e->hasLocalName(HTMLTags::embed())))) {
  +                (e->hasLocalName(imgTag) || e->hasLocalName(formTag) ||
  +                 e->hasLocalName(appletTag) || e->hasLocalName(objectTag) ||
  +                 e->hasLocalName(embedTag)))) {
               // add to name cache
  -            QPtrVector<NodeImpl> *nameVector = info->nameCache.find(nameAttr);
  +            QPtrVector<NodeImpl> *nameVector = info->nameCache.find(nameAttrVal);
               if (!nameVector) {
                   nameVector = new QPtrVector<NodeImpl>;
  -                info->nameCache.insert(nameAttr, nameVector);
  +                info->nameCache.insert(nameAttrVal, nameVector);
               }
               appendToVector(nameVector, n);
           }
  @@ -576,7 +578,7 @@
       if (m_base->isElementNode()) {
           HTMLElementImpl* baseElement = static_cast<HTMLElementImpl*>(m_base.get());
           bool foundInputElements = false;
  -        if (baseElement->hasLocalName(HTMLTags::form())) {
  +        if (baseElement->hasLocalName(formTag)) {
               HTMLFormElementImpl* f = static_cast<HTMLFormElementImpl*>(baseElement);
               for (unsigned i = 0; i < f->formElements.count(); ++i) {
                   HTMLGenericFormElementImpl* e = f->formElements[i];
  @@ -630,14 +632,14 @@
   
   NodeImpl * HTMLFormCollectionImpl::nextNamedItemInternal( const DOMString &name ) const
   {
  -    NodeImpl *retval = getNamedFormItem( idsDone ? HTMLAttributes::name() : HTMLAttributes::idAttr(), name, ++info->position, true );
  +    NodeImpl *retval = getNamedFormItem( idsDone ? nameAttr : idAttr, name, ++info->position, true );
       if ( retval )
           return retval;
       if ( idsDone ) // we're done
           return 0;
       // After doing id, do name
       idsDone = true;
  -    return getNamedItem(m_base->firstChild(), HTMLAttributes::name(), name, true);
  +    return getNamedItem(m_base->firstChild(), nameAttr, name, true);
   }
   
   NodeImpl *HTMLFormCollectionImpl::namedItem( const DOMString &name, bool caseSensitive ) const
  @@ -649,11 +651,11 @@
       // that are allowed a name attribute.
       resetCollectionInfo();
       idsDone = false;
  -    info->current = getNamedItem(m_base->firstChild(), HTMLAttributes::idAttr(), name, true);
  +    info->current = getNamedItem(m_base->firstChild(), idAttr, name, true);
       if(info->current)
           return info->current;
       idsDone = true;
  -    info->current = getNamedItem(m_base->firstChild(), HTMLAttributes::name(), name, true);
  +    info->current = getNamedItem(m_base->firstChild(), nameAttr, name, true);
       return info->current;
   }
   
  @@ -672,7 +674,7 @@
           if(impl->isElementNode())
           {
               HTMLElementImpl *e = static_cast<HTMLElementImpl *>(impl);
  -            ok = (e->getAttribute(HTMLAttributes::idAttr()) != name);
  +            ok = (e->getAttribute(idAttr) != name);
               if (!ok)
                   impl = nextNamedItemInternal( name );
           } else // can't happen
  @@ -688,7 +690,7 @@
   
       QDict<char> foundInputElements;
   
  -    if (!m_base->hasTagName(HTMLTags::form())) {
  +    if (!m_base->hasTagName(formTag)) {
           info->hasNameCache = true;
           return;
       }
  @@ -699,50 +701,50 @@
       for (unsigned i = 0; i < f->formElements.count(); ++i) {
           HTMLGenericFormElementImpl* e = f->formElements[i];
           if (e->isEnumeratable()) {
  -            QString idAttr = e->getAttribute(HTMLAttributes::idAttr()).string();
  -            QString nameAttr = e->getAttribute(HTMLAttributes::name()).string();
  -            if (!idAttr.isEmpty()) {
  +            QString idAttrVal = e->getAttribute(idAttr).string();
  +            QString nameAttrVal = e->getAttribute(nameAttr).string();
  +            if (!idAttrVal.isEmpty()) {
                   // add to id cache
  -                QPtrVector<NodeImpl> *idVector = info->idCache.find(idAttr);
  +                QPtrVector<NodeImpl> *idVector = info->idCache.find(idAttrVal);
                   if (!idVector) {
                       idVector = new QPtrVector<NodeImpl>;
  -                    info->idCache.insert(idAttr, idVector);
  +                    info->idCache.insert(idAttrVal, idVector);
                   }
                   appendToVector(idVector, static_cast<NodeImpl *>(e));
  -                foundInputElements.insert(idAttr, (char *)true);
  +                foundInputElements.insert(idAttrVal, (char *)true);
               }
  -            if (!nameAttr.isEmpty() && idAttr != nameAttr) {
  +            if (!nameAttrVal.isEmpty() && idAttrVal != nameAttrVal) {
                   // add to name cache
  -                QPtrVector<NodeImpl> *nameVector = info->nameCache.find(nameAttr);
  +                QPtrVector<NodeImpl> *nameVector = info->nameCache.find(nameAttrVal);
                   if (!nameVector) {
                       nameVector = new QPtrVector<NodeImpl>;
  -                    info->nameCache.insert(nameAttr, nameVector);
  +                    info->nameCache.insert(nameAttrVal, nameVector);
                   }
                   appendToVector(nameVector, static_cast<NodeImpl *>(e));
  -                foundInputElements.insert(nameAttr, (char *)true);
  +                foundInputElements.insert(nameAttrVal, (char *)true);
               }
           }
       }
   
       for (unsigned i = 0; i < f->imgElements.count(); ++i) {
           HTMLImageElementImpl* e = f->imgElements[i];
  -        QString idAttr = e->getAttribute(HTMLAttributes::idAttr()).string();
  -        QString nameAttr = e->getAttribute(HTMLAttributes::name()).string();
  -        if (!idAttr.isEmpty() && !foundInputElements.find(idAttr)) {
  +        QString idAttrVal = e->getAttribute(idAttr).string();
  +        QString nameAttrVal = e->getAttribute(nameAttr).string();
  +        if (!idAttrVal.isEmpty() && !foundInputElements.find(idAttrVal)) {
               // add to id cache
  -            QPtrVector<NodeImpl> *idVector = info->idCache.find(idAttr);
  +            QPtrVector<NodeImpl> *idVector = info->idCache.find(idAttrVal);
               if (!idVector) {
                   idVector = new QPtrVector<NodeImpl>;
  -                info->idCache.insert(idAttr, idVector);
  +                info->idCache.insert(idAttrVal, idVector);
               }
               appendToVector(idVector, static_cast<NodeImpl *>(e));
           }
  -        if (!nameAttr.isEmpty() && idAttr != nameAttr && !foundInputElements.find(nameAttr)) {
  +        if (!nameAttrVal.isEmpty() && idAttrVal != nameAttrVal && !foundInputElements.find(nameAttrVal)) {
               // add to name cache
  -            QPtrVector<NodeImpl> *nameVector = info->nameCache.find(nameAttr);
  +            QPtrVector<NodeImpl> *nameVector = info->nameCache.find(nameAttrVal);
               if (!nameVector) {
                   nameVector = new QPtrVector<NodeImpl>;
  -                info->nameCache.insert(nameAttr, nameVector);
  +                info->nameCache.insert(nameAttrVal, nameVector);
               }
               appendToVector(nameVector, static_cast<NodeImpl *>(e));
           }
  
  
  
  1.74      +143 -142  WebCore/khtml/html/html_objectimpl.cpp
  
  Index: html_objectimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_objectimpl.cpp,v
  retrieving revision 1.73
  retrieving revision 1.74
  diff -u -r1.73 -r1.74
  --- html_objectimpl.cpp	21 Jul 2005 04:10:52 -0000	1.73
  +++ html_objectimpl.cpp	30 Jul 2005 02:33:18 -0000	1.74
  @@ -51,6 +51,7 @@
   #include "KWQKHTMLPart.h"
   #endif
   
  +using namespace HTMLNames;
   using namespace khtml;
   
   namespace DOM {
  @@ -58,7 +59,7 @@
   // -------------------------------------------------------------------------
   
   HTMLAppletElementImpl::HTMLAppletElementImpl(DocumentPtr *doc)
  -  : HTMLElementImpl(HTMLTags::applet(), doc)
  +  : HTMLElementImpl(appletTag, doc)
   {
       appletInstance = 0;
       m_allParamsAvailable = false;
  @@ -71,20 +72,20 @@
   
   bool HTMLAppletElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -    return newChild->hasTagName(HTMLTags::param()) || HTMLElementImpl::checkDTD(newChild);
  +    return newChild->hasTagName(paramTag) || HTMLElementImpl::checkDTD(newChild);
   }
   
   bool HTMLAppletElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::width() ||
  -        attrName == HTMLAttributes::height() ||
  -        attrName == HTMLAttributes::vspace() ||
  -        attrName == HTMLAttributes::hspace()) {
  +    if (attrName == widthAttr ||
  +        attrName == heightAttr ||
  +        attrName == vspaceAttr ||
  +        attrName == hspaceAttr) {
               result = eUniversal;
               return false;
       }
       
  -    if (attrName == HTMLAttributes::align()) {
  +    if (attrName == alignAttr) {
           result = eReplaced; // Share with <img> since the alignment behavior is the same.
           return false;
       }
  @@ -94,26 +95,26 @@
   
   void HTMLAppletElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::alt() ||
  -        attr->name() == HTMLAttributes::archive() ||
  -        attr->name() == HTMLAttributes::code() ||
  -        attr->name() == HTMLAttributes::codebase() ||
  -        attr->name() == HTMLAttributes::mayscript() ||
  -        attr->name() == HTMLAttributes::object()) {
  +    if (attr->name() == altAttr ||
  +        attr->name() == archiveAttr ||
  +        attr->name() == codeAttr ||
  +        attr->name() == codebaseAttr ||
  +        attr->name() == mayscriptAttr ||
  +        attr->name() == objectAttr) {
           // Do nothing.
  -    } else if (attr->name() == HTMLAttributes::width()) {
  +    } else if (attr->name() == widthAttr) {
           addCSSLength(attr, CSS_PROP_WIDTH, attr->value());
  -    } else if (attr->name() == HTMLAttributes::height()) {
  +    } else if (attr->name() == heightAttr) {
           addCSSLength(attr, CSS_PROP_HEIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::vspace()) {
  +    } else if (attr->name() == vspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_TOP, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_BOTTOM, attr->value());
  -    } else if (attr->name() == HTMLAttributes::hspace()) {
  +    } else if (attr->name() == hspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_LEFT, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_RIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::align()) {
  +    } else if (attr->name() == alignAttr) {
           addHTMLAlignment(attr);
  -    } else if (attr->name() == HTMLAttributes::name()) {
  +    } else if (attr->name() == nameAttr) {
           DOMString newNameAttr = attr->value();
           if (inDocument() && getDocument()->isHTMLDocument()) {
               HTMLDocumentImpl *document = static_cast<HTMLDocumentImpl *>(getDocument());
  @@ -121,7 +122,7 @@
               document->addNamedItem(newNameAttr);
           }
           oldNameAttr = newNameAttr;
  -    } else if (attr->name() == HTMLAttributes::idAttr()) {
  +    } else if (attr->name() == idAttr) {
           DOMString newIdAttr = attr->value();
           if (inDocument() && getDocument()->isHTMLDocument()) {
               HTMLDocumentImpl *document = static_cast<HTMLDocumentImpl *>(getDocument());
  @@ -159,7 +160,7 @@
   
   bool HTMLAppletElementImpl::rendererIsNeeded(RenderStyle *style)
   {
  -    return !getAttribute(HTMLAttributes::code()).isNull();
  +    return !getAttribute(codeAttr).isNull();
   }
   
   RenderObject *HTMLAppletElementImpl::createRenderer(RenderArena *arena, RenderStyle *style)
  @@ -171,21 +172,21 @@
       {
   	QMap<QString, QString> args;
   
  -	args.insert( "code", getAttribute(HTMLAttributes::code()).string());
  -	DOMString codeBase = getAttribute(HTMLAttributes::codebase());
  +	args.insert( "code", getAttribute(codeAttr).string());
  +	DOMString codeBase = getAttribute(codebaseAttr);
   	if(!codeBase.isNull())
   	    args.insert( "codeBase", codeBase.string() );
   	DOMString name = getDocument()->htmlMode() != DocumentImpl::XHtml ?
  -			 getAttribute(HTMLAttributes::name()) : getAttribute(HTMLAttributes::idAttr());
  +			 getAttribute(nameAttr) : getAttribute(idAttr);
   	if(!name.isNull())
   	    args.insert( "name", name.string() );
  -	DOMString archive = getAttribute(HTMLAttributes::archive());
  +	DOMString archive = getAttribute(archiveAttr);
   	if(!archive.isNull())
   	    args.insert( "archive", archive.string() );
   
   	args.insert( "baseURL", getDocument()->baseURL() );
   
  -        DOMString mayScript = getAttribute(HTMLAttributes::mayscript());
  +        DOMString mayScript = getAttribute(mayscriptAttr);
           if (!mayScript.isNull())
               args.insert("mayScript", mayScript.string());
   
  @@ -273,118 +274,118 @@
   
   DOMString HTMLAppletElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLAppletElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   DOMString HTMLAppletElementImpl::alt() const
   {
  -    return getAttribute(HTMLAttributes::alt());
  +    return getAttribute(altAttr);
   }
   
   void HTMLAppletElementImpl::setAlt(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::alt(), value);
  +    setAttribute(altAttr, value);
   }
   
   DOMString HTMLAppletElementImpl::archive() const
   {
  -    return getAttribute(HTMLAttributes::archive());
  +    return getAttribute(archiveAttr);
   }
   
   void HTMLAppletElementImpl::setArchive(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::archive(), value);
  +    setAttribute(archiveAttr, value);
   }
   
   DOMString HTMLAppletElementImpl::code() const
   {
  -    return getAttribute(HTMLAttributes::code());
  +    return getAttribute(codeAttr);
   }
   
   void HTMLAppletElementImpl::setCode(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::code(), value);
  +    setAttribute(codeAttr, value);
   }
   
   DOMString HTMLAppletElementImpl::codeBase() const
   {
  -    return getAttribute(HTMLAttributes::codebase());
  +    return getAttribute(codebaseAttr);
   }
   
   void HTMLAppletElementImpl::setCodeBase(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::codebase(), value);
  +    setAttribute(codebaseAttr, value);
   }
   
   DOMString HTMLAppletElementImpl::height() const
   {
  -    return getAttribute(HTMLAttributes::height());
  +    return getAttribute(heightAttr);
   }
   
   void HTMLAppletElementImpl::setHeight(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::height(), value);
  +    setAttribute(heightAttr, value);
   }
   
   DOMString HTMLAppletElementImpl::hspace() const
   {
  -    return getAttribute(HTMLAttributes::hspace());
  +    return getAttribute(hspaceAttr);
   }
   
   void HTMLAppletElementImpl::setHspace(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::hspace(), value);
  +    setAttribute(hspaceAttr, value);
   }
   
   DOMString HTMLAppletElementImpl::name() const
   {
  -    return getAttribute(HTMLAttributes::name());
  +    return getAttribute(nameAttr);
   }
   
   void HTMLAppletElementImpl::setName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::name(), value);
  +    setAttribute(nameAttr, value);
   }
   
   DOMString HTMLAppletElementImpl::object() const
   {
  -    return getAttribute(HTMLAttributes::object());
  +    return getAttribute(objectAttr);
   }
   
   void HTMLAppletElementImpl::setObject(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::object(), value);
  +    setAttribute(objectAttr, value);
   }
   
   DOMString HTMLAppletElementImpl::vspace() const
   {
  -    return getAttribute(HTMLAttributes::vspace());
  +    return getAttribute(vspaceAttr);
   }
   
   void HTMLAppletElementImpl::setVspace(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::vspace(), value);
  +    setAttribute(vspaceAttr, value);
   }
   
   DOMString HTMLAppletElementImpl::width() const
   {
  -    return getAttribute(HTMLAttributes::width());
  +    return getAttribute(widthAttr);
   }
   
   void HTMLAppletElementImpl::setWidth(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::width(), value);
  +    setAttribute(widthAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLEmbedElementImpl::HTMLEmbedElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::embed(), doc), embedInstance(0)
  +    : HTMLElementImpl(embedTag, doc), embedInstance(0)
   {}
   
   HTMLEmbedElementImpl::~HTMLEmbedElementImpl()
  @@ -393,7 +394,7 @@
   
   bool HTMLEmbedElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -    return newChild->hasTagName(HTMLTags::param()) || HTMLElementImpl::checkDTD(newChild);
  +    return newChild->hasTagName(paramTag) || HTMLElementImpl::checkDTD(newChild);
   }
   
   #if APPLE_CHANGES
  @@ -424,18 +425,18 @@
   
   bool HTMLEmbedElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::width() ||
  -        attrName == HTMLAttributes::height() ||
  -        attrName == HTMLAttributes::border() ||
  -        attrName == HTMLAttributes::vspace() ||
  -        attrName == HTMLAttributes::hspace() ||
  -        attrName == HTMLAttributes::valign() ||
  -        attrName == HTMLAttributes::hidden()) {
  +    if (attrName == widthAttr ||
  +        attrName == heightAttr ||
  +        attrName == borderAttr ||
  +        attrName == vspaceAttr ||
  +        attrName == hspaceAttr ||
  +        attrName == valignAttr ||
  +        attrName == hiddenAttr) {
           result = eUniversal;
           return false;
       }
           
  -    if (attrName == HTMLAttributes::align()) {
  +    if (attrName == alignAttr) {
           result = eReplaced; // Share with <img> since the alignment behavior is the same.
           return false;
       }
  @@ -448,45 +449,45 @@
       QString val = attr->value().string();
     
       int pos;
  -    if (attr->name() == HTMLAttributes::type()) {
  +    if (attr->name() == typeAttr) {
           serviceType = val.lower();
           pos = serviceType.find( ";" );
           if ( pos!=-1 )
               serviceType = serviceType.left( pos );
  -    } else if (attr->name() == HTMLAttributes::code() ||
  -               attr->name() == HTMLAttributes::src()) {
  +    } else if (attr->name() == codeAttr ||
  +               attr->name() == srcAttr) {
            url = khtml::parseURL(attr->value()).string();
  -    } else if (attr->name() == HTMLAttributes::width()) {
  +    } else if (attr->name() == widthAttr) {
           addCSSLength( attr, CSS_PROP_WIDTH, attr->value() );
  -    } else if (attr->name() == HTMLAttributes::height()) {
  +    } else if (attr->name() == heightAttr) {
           addCSSLength( attr, CSS_PROP_HEIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::border()) {
  +    } else if (attr->name() == borderAttr) {
           addCSSLength(attr, CSS_PROP_BORDER_WIDTH, attr->value());
           addCSSProperty( attr, CSS_PROP_BORDER_TOP_STYLE, CSS_VAL_SOLID );
           addCSSProperty( attr, CSS_PROP_BORDER_RIGHT_STYLE, CSS_VAL_SOLID );
           addCSSProperty( attr, CSS_PROP_BORDER_BOTTOM_STYLE, CSS_VAL_SOLID );
           addCSSProperty( attr, CSS_PROP_BORDER_LEFT_STYLE, CSS_VAL_SOLID );
  -    } else if (attr->name() == HTMLAttributes::vspace()) {
  +    } else if (attr->name() == vspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_TOP, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_BOTTOM, attr->value());
  -    } else if (attr->name() == HTMLAttributes::hspace()) {
  +    } else if (attr->name() == hspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_LEFT, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_RIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::align()) {
  +    } else if (attr->name() == alignAttr) {
   	addHTMLAlignment(attr);
  -    } else if (attr->name() == HTMLAttributes::valign()) {
  +    } else if (attr->name() == valignAttr) {
           addCSSProperty(attr, CSS_PROP_VERTICAL_ALIGN, attr->value());
  -    } else if (attr->name() == HTMLAttributes::pluginpage() ||
  -               attr->name() == HTMLAttributes::pluginspage()) {
  +    } else if (attr->name() == pluginpageAttr ||
  +               attr->name() == pluginspageAttr) {
           pluginPage = val;
  -    } else if (attr->name() == HTMLAttributes::hidden()) {
  +    } else if (attr->name() == hiddenAttr) {
           if (val.lower()=="yes" || val.lower()=="true") {
               // FIXME: Not dynamic, but it's not really important that such a rarely-used
               // feature work dynamically.
               addCSSLength( attr, CSS_PROP_WIDTH, "0" );
               addCSSLength( attr, CSS_PROP_HEIGHT, "0" );
           }
  -    } else if (attr->name() == HTMLAttributes::name()) {
  +    } else if (attr->name() == nameAttr) {
           DOMString newNameAttr = attr->value();
           if (inDocument() && getDocument()->isHTMLDocument()) {
               HTMLDocumentImpl *document = static_cast<HTMLDocumentImpl *>(getDocument());
  @@ -503,7 +504,7 @@
       KHTMLPart *part = getDocument()->part();
       if (!part)
   	return false;
  -    return part->pluginsEnabled() && !parentNode()->hasTagName(HTMLTags::object());
  +    return part->pluginsEnabled() && !parentNode()->hasTagName(objectTag);
   }
   
   RenderObject *HTMLEmbedElementImpl::createRenderer(RenderArena *arena, RenderStyle *style)
  @@ -542,16 +543,16 @@
   
   bool HTMLEmbedElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return attr->name() == HTMLAttributes::src();
  +    return attr->name() == srcAttr;
   }
   
   // -------------------------------------------------------------------------
   
   HTMLObjectElementImpl::HTMLObjectElementImpl(DocumentPtr *doc) 
   #if APPLE_CHANGES
  -: HTMLElementImpl(HTMLTags::object(), doc), m_imageLoader(0), objectInstance(0)
  +: HTMLElementImpl(objectTag, doc), m_imageLoader(0), objectInstance(0)
   #else
  -: HTMLElementImpl(HTMLTags::object(), doc), m_imageLoader(0)
  +: HTMLElementImpl(objectTag, doc), m_imageLoader(0)
   #endif
   {
       needWidgetUpdate = false;
  @@ -565,7 +566,7 @@
   
   bool HTMLObjectElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -    return newChild->hasTagName(HTMLTags::param()) || HTMLElementImpl::checkDTD(newChild);
  +    return newChild->hasTagName(paramTag) || HTMLElementImpl::checkDTD(newChild);
   }
   
   #if APPLE_CHANGES
  @@ -600,7 +601,7 @@
   HTMLFormElementImpl *HTMLObjectElementImpl::form() const
   {
       for (NodeImpl *p = parentNode(); p != 0; p = p->parentNode()) {
  -        if (p->hasTagName(HTMLTags::form()))
  +        if (p->hasTagName(formTag))
               return static_cast<HTMLFormElementImpl *>(p);
       }
       
  @@ -609,15 +610,15 @@
   
   bool HTMLObjectElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::width() ||
  -        attrName == HTMLAttributes::height() ||
  -        attrName == HTMLAttributes::vspace() ||
  -        attrName == HTMLAttributes::hspace()) {
  +    if (attrName == widthAttr ||
  +        attrName == heightAttr ||
  +        attrName == vspaceAttr ||
  +        attrName == hspaceAttr) {
           result = eUniversal;
           return false;
       }
       
  -    if (attrName == HTMLAttributes::align()) {
  +    if (attrName == alignAttr) {
           result = eReplaced; // Share with <img> since the alignment behavior is the same.
           return false;
       }
  @@ -629,7 +630,7 @@
   {
       QString val = attr->value().string();
       int pos;
  -    if (attr->name() == HTMLAttributes::type()) {
  +    if (attr->name() == typeAttr) {
           serviceType = val.lower();
           pos = serviceType.find( ";" );
           if ( pos!=-1 )
  @@ -640,7 +641,7 @@
             delete m_imageLoader;
             m_imageLoader = 0;
           }
  -    } else if (attr->name() == HTMLAttributes::data()) {
  +    } else if (attr->name() == dataAttr) {
           url = khtml::parseURL(  val ).string();
           if (m_render)
             needWidgetUpdate = true;
  @@ -649,29 +650,29 @@
                 m_imageLoader = new HTMLImageLoader(this);
             m_imageLoader->updateFromElement();
           }
  -    } else if (attr->name() == HTMLAttributes::width()) {
  +    } else if (attr->name() == widthAttr) {
           addCSSLength( attr, CSS_PROP_WIDTH, attr->value());
  -    } else if (attr->name() == HTMLAttributes::height()) {
  +    } else if (attr->name() == heightAttr) {
           addCSSLength( attr, CSS_PROP_HEIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::vspace()) {
  +    } else if (attr->name() == vspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_TOP, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_BOTTOM, attr->value());
  -    } else if (attr->name() == HTMLAttributes::hspace()) {
  +    } else if (attr->name() == hspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_LEFT, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_RIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::align()) {
  +    } else if (attr->name() == alignAttr) {
           addHTMLAlignment(attr);
  -    } else if (attr->name() == HTMLAttributes::classid()) {
  +    } else if (attr->name() == classidAttr) {
           classId = val;
           if (m_render)
             needWidgetUpdate = true;
  -    } else if (attr->name() == HTMLAttributes::onload()) {
  +    } else if (attr->name() == onloadAttr) {
           setHTMLEventListener(EventImpl::LOAD_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::onunload()) {
  +    } else if (attr->name() == onunloadAttr) {
           setHTMLEventListener(EventImpl::UNLOAD_EVENT,
                                getDocument()->createHTMLEventListener(attr->value().string(), this));
  -    } else if (attr->name() == HTMLAttributes::name()) {
  +    } else if (attr->name() == nameAttr) {
   	    DOMString newNameAttr = attr->value();
   	    if (inDocument() && getDocument()->isHTMLDocument()) {
   		HTMLDocumentImpl *document = static_cast<HTMLDocumentImpl *>(getDocument());
  @@ -679,7 +680,7 @@
   		document->addNamedItem(newNameAttr);
   	    }
   	    oldNameAttr = newNameAttr;
  -    } else if (attr->name() == HTMLAttributes::idAttr()) {
  +    } else if (attr->name() == idAttr) {
           DOMString newIdAttr = attr->value();
           if (inDocument() && getDocument()->isHTMLDocument()) {
               HTMLDocumentImpl *document = static_cast<HTMLDocumentImpl *>(getDocument());
  @@ -812,7 +813,7 @@
   
   bool HTMLObjectElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return (attr->name() == HTMLAttributes::data() || (attr->name() == HTMLAttributes::usemap() && attr->value().domString()[0] != '#'));
  +    return (attr->name() == dataAttr || (attr->name() == usemapAttr && attr->value().domString()[0] != '#'));
   }
   
   bool HTMLObjectElementImpl::isImageType()
  @@ -850,178 +851,178 @@
   
   DOMString HTMLObjectElementImpl::code() const
   {
  -    return getAttribute(HTMLAttributes::code());
  +    return getAttribute(codeAttr);
   }
   
   void HTMLObjectElementImpl::setCode(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::code(), value);
  +    setAttribute(codeAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLObjectElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::archive() const
   {
  -    return getAttribute(HTMLAttributes::archive());
  +    return getAttribute(archiveAttr);
   }
   
   void HTMLObjectElementImpl::setArchive(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::archive(), value);
  +    setAttribute(archiveAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::border() const
   {
  -    return getAttribute(HTMLAttributes::border());
  +    return getAttribute(borderAttr);
   }
   
   void HTMLObjectElementImpl::setBorder(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::border(), value);
  +    setAttribute(borderAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::codeBase() const
   {
  -    return getAttribute(HTMLAttributes::codebase());
  +    return getAttribute(codebaseAttr);
   }
   
   void HTMLObjectElementImpl::setCodeBase(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::codebase(), value);
  +    setAttribute(codebaseAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::codeType() const
   {
  -    return getAttribute(HTMLAttributes::codetype());
  +    return getAttribute(codetypeAttr);
   }
   
   void HTMLObjectElementImpl::setCodeType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::codetype(), value);
  +    setAttribute(codetypeAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::data() const
   {
  -    return getAttribute(HTMLAttributes::data());
  +    return getAttribute(dataAttr);
   }
   
   void HTMLObjectElementImpl::setData(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::data(), value);
  +    setAttribute(dataAttr, value);
   }
   
   bool HTMLObjectElementImpl::declare() const
   {
  -    return !getAttribute(HTMLAttributes::declare()).isNull();
  +    return !getAttribute(declareAttr).isNull();
   }
   
   void HTMLObjectElementImpl::setDeclare(bool declare)
   {
  -    setAttribute(HTMLAttributes::declare(), declare ? "" : 0);
  +    setAttribute(declareAttr, declare ? "" : 0);
   }
   
   DOMString HTMLObjectElementImpl::height() const
   {
  -    return getAttribute(HTMLAttributes::height());
  +    return getAttribute(heightAttr);
   }
   
   void HTMLObjectElementImpl::setHeight(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::height(), value);
  +    setAttribute(heightAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::hspace() const
   {
  -    return getAttribute(HTMLAttributes::hspace());
  +    return getAttribute(hspaceAttr);
   }
   
   void HTMLObjectElementImpl::setHspace(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::hspace(), value);
  +    setAttribute(hspaceAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::name() const
   {
  -    return getAttribute(HTMLAttributes::name());
  +    return getAttribute(nameAttr);
   }
   
   void HTMLObjectElementImpl::setName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::name(), value);
  +    setAttribute(nameAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::standby() const
   {
  -    return getAttribute(HTMLAttributes::standby());
  +    return getAttribute(standbyAttr);
   }
   
   void HTMLObjectElementImpl::setStandby(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::standby(), value);
  +    setAttribute(standbyAttr, value);
   }
   
   long HTMLObjectElementImpl::tabIndex() const
   {
  -    return getAttribute(HTMLAttributes::tabindex()).toInt();
  +    return getAttribute(tabindexAttr).toInt();
   }
   
   void HTMLObjectElementImpl::setTabIndex(long tabIndex)
   {
  -    setAttribute(HTMLAttributes::tabindex(), QString::number(tabIndex));
  +    setAttribute(tabindexAttr, QString::number(tabIndex));
   }
   
   DOMString HTMLObjectElementImpl::type() const
   {
  -    return getAttribute(HTMLAttributes::type());
  +    return getAttribute(typeAttr);
   }
   
   void HTMLObjectElementImpl::setType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::type(), value);
  +    setAttribute(typeAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::useMap() const
   {
  -    return getAttribute(HTMLAttributes::usemap());
  +    return getAttribute(usemapAttr);
   }
   
   void HTMLObjectElementImpl::setUseMap(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::usemap(), value);
  +    setAttribute(usemapAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::vspace() const
   {
  -    return getAttribute(HTMLAttributes::vspace());
  +    return getAttribute(vspaceAttr);
   }
   
   void HTMLObjectElementImpl::setVspace(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::vspace(), value);
  +    setAttribute(vspaceAttr, value);
   }
   
   DOMString HTMLObjectElementImpl::width() const
   {
  -    return getAttribute(HTMLAttributes::width());
  +    return getAttribute(widthAttr);
   }
   
   void HTMLObjectElementImpl::setWidth(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::width(), value);
  +    setAttribute(widthAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   HTMLParamElementImpl::HTMLParamElementImpl(DocumentPtr *doc)
  -    : HTMLElementImpl(HTMLTags::param(), doc)
  +    : HTMLElementImpl(paramTag, doc)
   {
   }
   
  @@ -1031,15 +1032,15 @@
   
   void HTMLParamElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::idAttr()) {
  +    if (attr->name() == idAttr) {
           // Must call base class so that hasID bit gets set.
           HTMLElementImpl::parseMappedAttribute(attr);
           if (getDocument()->htmlMode() != DocumentImpl::XHtml)
               return;
           m_name = attr->value();
  -    } else if (attr->name() == HTMLAttributes::name()) {
  +    } else if (attr->name() == nameAttr) {
           m_name = attr->value();
  -    } else if (attr->name() == HTMLAttributes::value()) {
  +    } else if (attr->name() == valueAttr) {
           m_value = attr->value();
       } else
           HTMLElementImpl::parseMappedAttribute(attr);
  @@ -1047,8 +1048,8 @@
   
   bool HTMLParamElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    if (attr->name() == HTMLAttributes::value()) {
  -        AttributeImpl *attr = attributes()->getAttributeItem(HTMLAttributes::name());
  +    if (attr->name() == valueAttr) {
  +        AttributeImpl *attr = attributes()->getAttributeItem(nameAttr);
           if (attr) {
               DOMString value = attr->value().string().lower();
               if (value == "src" || value == "movie" || value == "data") {
  @@ -1061,32 +1062,32 @@
   
   void HTMLParamElementImpl::setName(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::name(), value);
  +    setAttribute(nameAttr, value);
   }
   
   DOMString HTMLParamElementImpl::type() const
   {
  -    return getAttribute(HTMLAttributes::type());
  +    return getAttribute(typeAttr);
   }
   
   void HTMLParamElementImpl::setType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::type(), value);
  +    setAttribute(typeAttr, value);
   }
   
   void HTMLParamElementImpl::setValue(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::value(), value);
  +    setAttribute(valueAttr, value);
   }
   
   DOMString HTMLParamElementImpl::valueType() const
   {
  -    return getAttribute(HTMLAttributes::valuetype());
  +    return getAttribute(valuetypeAttr);
   }
   
   void HTMLParamElementImpl::setValueType(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::valuetype(), value);
  +    setAttribute(valuetypeAttr, value);
   }
   
   }
  
  
  
  1.58      +163 -162  WebCore/khtml/html/html_tableimpl.cpp
  
  Index: html_tableimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_tableimpl.cpp,v
  retrieving revision 1.57
  retrieving revision 1.58
  diff -u -r1.57 -r1.58
  --- html_tableimpl.cpp	18 Jul 2005 21:52:26 -0000	1.57
  +++ html_tableimpl.cpp	30 Jul 2005 02:33:18 -0000	1.58
  @@ -45,12 +45,13 @@
   #include <kdebug.h>
   #include <kglobal.h>
   
  +using namespace HTMLNames;
   using namespace khtml;
   
   namespace DOM {
   
   HTMLTableElementImpl::HTMLTableElementImpl(DocumentPtr *doc)
  -  : HTMLElementImpl(HTMLTags::table(), doc)
  +  : HTMLElementImpl(tableTag, doc)
   {
       tCaption = 0;
       head = 0;
  @@ -76,11 +77,11 @@
   
   bool HTMLTableElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -    return newChild->isTextNode() || newChild->hasTagName(HTMLTags::caption()) ||
  -           newChild->hasTagName(HTMLTags::col()) || newChild->hasTagName(HTMLTags::colgroup()) ||
  -           newChild->hasTagName(HTMLTags::thead()) || newChild->hasTagName(HTMLTags::tfoot()) ||
  -           newChild->hasTagName(HTMLTags::tbody()) || newChild->hasTagName(HTMLTags::form()) ||
  -           newChild->hasTagName(HTMLTags::script());
  +    return newChild->isTextNode() || newChild->hasTagName(captionTag) ||
  +           newChild->hasTagName(colTag) || newChild->hasTagName(colgroupTag) ||
  +           newChild->hasTagName(theadTag) || newChild->hasTagName(tfootTag) ||
  +           newChild->hasTagName(tbodyTag) || newChild->hasTagName(formTag) ||
  +           newChild->hasTagName(scriptTag);
   }
   
   NodeImpl* HTMLTableElementImpl::setCaption( HTMLTableCaptionElementImpl *c )
  @@ -153,7 +154,7 @@
       if(!head)
       {
           int exceptioncode = 0;
  -        head = new HTMLTableSectionElementImpl(HTMLTags::thead(), docPtr(), true /* implicit */);
  +        head = new HTMLTableSectionElementImpl(theadTag, docPtr(), true /* implicit */);
           if(foot)
               insertBefore( head, foot, exceptioncode );
           else if(firstBody)
  @@ -178,7 +179,7 @@
       if(!foot)
       {
           int exceptioncode = 0;
  -        foot = new HTMLTableSectionElementImpl(HTMLTags::tfoot(), docPtr(), true /*implicit */);
  +        foot = new HTMLTableSectionElementImpl(tfootTag, docPtr(), true /*implicit */);
           if(firstBody)
               insertBefore( foot, firstBody, exceptioncode );
           else
  @@ -223,7 +224,7 @@
       // (note: this is different from "if the table has no sections", since we can have
       // <TABLE><TR>)
       if(!firstBody && !head && !foot)
  -        setTBody( new HTMLTableSectionElementImpl(HTMLTags::tbody(), docPtr(), true /* implicit */) );
  +        setTBody( new HTMLTableSectionElementImpl(tbodyTag, docPtr(), true /* implicit */) );
   
       //kdDebug(6030) << k_funcinfo << index << endl;
       // IE treats index=-1 as default value meaning 'append after last'
  @@ -237,8 +238,8 @@
       {
   	// there could be 2 tfoot elements in the table. Only the first one is the "foot", that's why we have the more
   	// complicated if statement below.
  -        if (node != foot && (node->hasTagName(HTMLTags::thead()) || node->hasTagName(HTMLTags::tfoot()) || 
  -            node->hasTagName(HTMLTags::tbody())))
  +        if (node != foot && (node->hasTagName(theadTag) || node->hasTagName(tfootTag) || 
  +            node->hasTagName(tbodyTag)))
           {
               section = static_cast<HTMLTableSectionElementImpl *>(node);
               lastSection = section;
  @@ -284,8 +285,8 @@
       bool found = false;
       for ( ; node ; node = node->nextSibling() )
       {
  -        if (node != foot && (node->hasTagName(HTMLTags::thead()) || node->hasTagName(HTMLTags::tfoot()) || 
  -            node->hasTagName(HTMLTags::tbody()))) {
  +        if (node != foot && (node->hasTagName(theadTag) || node->hasTagName(tfootTag) || 
  +            node->hasTagName(tbodyTag))) {
               section = static_cast<HTMLTableSectionElementImpl *>(node);
               lastSection = section;
               int rows = section->numRows();
  @@ -317,7 +318,7 @@
       kdDebug( 6030 ) << nodeName().string() << "(Table)::addChild( " << child->nodeName().string() << " )" << endl;
   #endif
   
  -    if (child->hasTagName(HTMLTags::form())) {
  +    if (child->hasTagName(formTag)) {
           // First add the child.
           HTMLElementImpl::addChild(child);
           // Now simply return ourselves as the newnode.  This has the effect of
  @@ -346,13 +347,13 @@
       int exceptioncode = 0;
       NodeImpl *retval = appendChild( child, exceptioncode );
       if (retval) {
  -        if (!tCaption && child->hasTagName(HTMLTags::caption()))
  +        if (!tCaption && child->hasTagName(captionTag))
               tCaption = static_cast<HTMLTableCaptionElementImpl *>(child);
  -        else if (!head && child->hasTagName(HTMLTags::thead()))
  +        else if (!head && child->hasTagName(theadTag))
               head = static_cast<HTMLTableSectionElementImpl *>(child);
  -        else if (!foot && child->hasTagName(HTMLTags::tfoot()))
  +        else if (!foot && child->hasTagName(tfootTag))
               foot = static_cast<HTMLTableSectionElementImpl *>(child);
  -	else if (!firstBody && child->hasTagName(HTMLTags::tbody())) {
  +	else if (!firstBody && child->hasTagName(tbodyTag)) {
   	    firstBody = static_cast<HTMLTableSectionElementImpl *>(child);
               firstBody->ref();
           }
  @@ -372,33 +373,33 @@
   
   bool HTMLTableElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::background()) {
  +    if (attrName == backgroundAttr) {
           result = (MappedAttributeEntry)(eLastEntry + getDocument()->docID());
           return false;
       }
       
  -    if (attrName == HTMLAttributes::width() ||
  -        attrName == HTMLAttributes::height() ||
  -        attrName == HTMLAttributes::bgcolor() ||
  -        attrName == HTMLAttributes::cellspacing() ||
  -        attrName == HTMLAttributes::vspace() ||
  -        attrName == HTMLAttributes::hspace() ||
  -        attrName == HTMLAttributes::valign()) {
  +    if (attrName == widthAttr ||
  +        attrName == heightAttr ||
  +        attrName == bgcolorAttr ||
  +        attrName == cellspacingAttr ||
  +        attrName == vspaceAttr ||
  +        attrName == hspaceAttr ||
  +        attrName == valignAttr) {
           result = eUniversal;
           return false;
       }
       
  -    if (attrName == HTMLAttributes::bordercolor()) {
  +    if (attrName == bordercolorAttr) {
           result = eUniversal;
           return true;
       }
       
  -    if (attrName == HTMLAttributes::border()) {
  +    if (attrName == borderAttr) {
           result = eTable;
           return true;
       }
       
  -    if (attrName == HTMLAttributes::align()) {
  +    if (attrName == alignAttr) {
           result = eTable;
           return false;
       } 
  @@ -408,11 +409,11 @@
   
   void HTMLTableElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::width()) {
  +    if (attr->name() == widthAttr) {
           addCSSLength(attr, CSS_PROP_WIDTH, attr->value());
  -    } else if (attr->name() == HTMLAttributes::height()) {
  +    } else if (attr->name() == heightAttr) {
           addCSSLength(attr, CSS_PROP_HEIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::border())  {
  +    } else if (attr->name() == borderAttr)  {
           m_noBorder = true;
           if (attr->decl()) {
               CSSValueImpl* val = attr->decl()->getPropertyCSSValue(CSS_PROP_BORDER_LEFT_WIDTH);
  @@ -447,9 +448,9 @@
           else
               frame = Box, rules = All;
   #endif
  -    } else if (attr->name() == HTMLAttributes::bgcolor()) {
  +    } else if (attr->name() == bgcolorAttr) {
           addCSSColor(attr, CSS_PROP_BACKGROUND_COLOR, attr->value());
  -    } else if (attr->name() == HTMLAttributes::bordercolor()) {
  +    } else if (attr->name() == bordercolorAttr) {
           m_solid = attr->decl();
           if (!attr->decl() && !attr->isEmpty()) {
               addCSSColor(attr, CSS_PROP_BORDER_COLOR, attr->value());
  @@ -459,11 +460,11 @@
               addCSSProperty(attr, CSS_PROP_BORDER_RIGHT_STYLE, CSS_VAL_SOLID);
               m_solid = true;
           }
  -    } else if (attr->name() == HTMLAttributes::background()) {
  +    } else if (attr->name() == backgroundAttr) {
           QString url = khtml::parseURL( attr->value() ).string();
           if (!url.isEmpty())
               addCSSImageProperty(attr, CSS_PROP_BACKGROUND_IMAGE, getDocument()->completeURL(url));
  -    } else if (attr->name() == HTMLAttributes::frame()) {
  +    } else if (attr->name() == frameAttr) {
   #if 0
           if ( strcasecmp( attr->value(), "void" ) == 0 )
               frame = Void;
  @@ -484,7 +485,7 @@
           else if ( strcasecmp( attr->value(), "rhs" ) == 0 )
               frame = Rhs;
   #endif
  -    } else if (attr->name() == HTMLAttributes::rules()) {
  +    } else if (attr->name() == rulesAttr) {
   #if 0
           if ( strcasecmp( attr->value(), "none" ) == 0 )
               rules = None;
  @@ -497,10 +498,10 @@
           else if ( strcasecmp( attr->value(), "all" ) == 0 )
               rules = All;
   #endif
  -    } else if (attr->name() == HTMLAttributes::cellspacing()) {
  +    } else if (attr->name() == cellspacingAttr) {
           if (!attr->value().isEmpty())
               addCSSLength(attr, CSS_PROP_BORDER_SPACING, attr->value());
  -    } else if (attr->name() == HTMLAttributes::cellpadding()) {
  +    } else if (attr->name() == cellpaddingAttr) {
           if (!attr->value().isEmpty())
               padding = kMax( 0, attr->value().toInt() );
           else
  @@ -510,23 +511,23 @@
   	    if (!m_render->needsLayout())
   	        m_render->setNeedsLayout(true);
           }
  -    } else if (attr->name() == HTMLAttributes::cols()) {
  +    } else if (attr->name() == colsAttr) {
           // ###
   #if 0
           int c;
           c = attr->val()->toInt();
           addColumns(c-totalCols);
   #endif
  -    } else if (attr->name() == HTMLAttributes::vspace()) {
  +    } else if (attr->name() == vspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_TOP, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_BOTTOM, attr->value());
  -    } else if (attr->name() == HTMLAttributes::hspace()) {
  +    } else if (attr->name() == hspaceAttr) {
           addCSSLength(attr, CSS_PROP_MARGIN_LEFT, attr->value());
           addCSSLength(attr, CSS_PROP_MARGIN_RIGHT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::align()) {
  +    } else if (attr->name() == alignAttr) {
           if (!attr->value().isEmpty())
               addCSSProperty(attr, CSS_PROP_FLOAT, attr->value());
  -    } else if (attr->name() == HTMLAttributes::valign()) {
  +    } else if (attr->name() == valignAttr) {
           if (!attr->value().isEmpty())
               addCSSProperty(attr, CSS_PROP_VERTICAL_ALIGN, attr->value());
       } else
  @@ -537,7 +538,7 @@
   {
       if (m_noBorder)
           return 0;
  -    MappedAttributeImpl attr(HTMLAttributes::tableborder(), m_solid ? "solid" : "outset");
  +    MappedAttributeImpl attr(tableborderAttr, m_solid ? "solid" : "outset");
       CSSMappedAttributeDeclarationImpl* decl = getMappedAttributeDecl(ePersistent, &attr);
       if (!decl) {
           decl = new CSSMappedAttributeDeclarationImpl(0);
  @@ -563,7 +564,7 @@
   
   CSSMutableStyleDeclarationImpl* HTMLTableElementImpl::getSharedCellDecl()
   {
  -    MappedAttributeImpl attr(HTMLAttributes::cellborder(), m_noBorder ? "none" : (m_solid ? "solid" : "inset"));
  +    MappedAttributeImpl attr(cellborderAttr, m_noBorder ? "none" : (m_solid ? "solid" : "inset"));
       CSSMappedAttributeDeclarationImpl* decl = getMappedAttributeDecl(ePersistent, &attr);
       if (!decl) {
           decl = new CSSMappedAttributeDeclarationImpl(0);
  @@ -603,7 +604,7 @@
   
   bool HTMLTableElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return attr->name() == HTMLAttributes::background();
  +    return attr->name() == backgroundAttr;
   }
   
   SharedPtr<HTMLCollectionImpl> HTMLTableElementImpl::rows()
  @@ -618,112 +619,112 @@
   
   DOMString HTMLTableElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLTableElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   DOMString HTMLTableElementImpl::bgColor() const
   {
  -    return getAttribute(HTMLAttributes::bgcolor());
  +    return getAttribute(bgcolorAttr);
   }
   
   void HTMLTableElementImpl::setBgColor(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::bgcolor(), value);
  +    setAttribute(bgcolorAttr, value);
   }
   
   DOMString HTMLTableElementImpl::border() const
   {
  -    return getAttribute(HTMLAttributes::border());
  +    return getAttribute(borderAttr);
   }
   
   void HTMLTableElementImpl::setBorder(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::border(), value);
  +    setAttribute(borderAttr, value);
   }
   
   DOMString HTMLTableElementImpl::cellPadding() const
   {
  -    return getAttribute(HTMLAttributes::cellpadding());
  +    return getAttribute(cellpaddingAttr);
   }
   
   void HTMLTableElementImpl::setCellPadding(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::cellpadding(), value);
  +    setAttribute(cellpaddingAttr, value);
   }
   
   DOMString HTMLTableElementImpl::cellSpacing() const
   {
  -    return getAttribute(HTMLAttributes::cellspacing());
  +    return getAttribute(cellspacingAttr);
   }
   
   void HTMLTableElementImpl::setCellSpacing(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::cellspacing(), value);
  +    setAttribute(cellspacingAttr, value);
   }
   
   DOMString HTMLTableElementImpl::frame() const
   {
  -    return getAttribute(HTMLAttributes::frame());
  +    return getAttribute(frameAttr);
   }
   
   void HTMLTableElementImpl::setFrame(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::frame(), value);
  +    setAttribute(frameAttr, value);
   }
   
   DOMString HTMLTableElementImpl::rules() const
   {
  -    return getAttribute(HTMLAttributes::rules());
  +    return getAttribute(rulesAttr);
   }
   
   void HTMLTableElementImpl::setRules(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::rules(), value);
  +    setAttribute(rulesAttr, value);
   }
   
   DOMString HTMLTableElementImpl::summary() const
   {
  -    return getAttribute(HTMLAttributes::summary());
  +    return getAttribute(summaryAttr);
   }
   
   void HTMLTableElementImpl::setSummary(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::summary(), value);
  +    setAttribute(summaryAttr, value);
   }
   
   DOMString HTMLTableElementImpl::width() const
   {
  -    return getAttribute(HTMLAttributes::width());
  +    return getAttribute(widthAttr);
   }
   
   void HTMLTableElementImpl::setWidth(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::width(), value);
  +    setAttribute(widthAttr, value);
   }
   
   // --------------------------------------------------------------------------
   
   bool HTMLTablePartElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::background()) {
  +    if (attrName == backgroundAttr) {
           result = (MappedAttributeEntry)(eLastEntry + getDocument()->docID());
           return false;
       }
       
  -    if (attrName == HTMLAttributes::bgcolor() ||
  -        attrName == HTMLAttributes::bordercolor() ||
  -        attrName == HTMLAttributes::valign() ||
  -        attrName == HTMLAttributes::height()) {
  +    if (attrName == bgcolorAttr ||
  +        attrName == bordercolorAttr ||
  +        attrName == valignAttr ||
  +        attrName == heightAttr) {
           result = eUniversal;
           return false;
       }
       
  -    if (attrName == HTMLAttributes::align()) {
  +    if (attrName == alignAttr) {
           result = eCell; // All table parts will just share in the TD space.
           return false;
       }
  @@ -733,13 +734,13 @@
   
   void HTMLTablePartElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::bgcolor()) {
  +    if (attr->name() == bgcolorAttr) {
           addCSSColor(attr, CSS_PROP_BACKGROUND_COLOR, attr->value());
  -    } else if (attr->name() == HTMLAttributes::background()) {
  +    } else if (attr->name() == backgroundAttr) {
           QString url = khtml::parseURL( attr->value() ).string();
           if (!url.isEmpty())
               addCSSImageProperty(attr, CSS_PROP_BACKGROUND_IMAGE, getDocument()->completeURL(url));
  -    } else if (attr->name() == HTMLAttributes::bordercolor()) {
  +    } else if (attr->name() == bordercolorAttr) {
           if (!attr->value().isEmpty()) {
               addCSSColor(attr, CSS_PROP_BORDER_COLOR, attr->value());
               addCSSProperty(attr, CSS_PROP_BORDER_TOP_STYLE, CSS_VAL_SOLID);
  @@ -747,10 +748,10 @@
               addCSSProperty(attr, CSS_PROP_BORDER_LEFT_STYLE, CSS_VAL_SOLID);
               addCSSProperty(attr, CSS_PROP_BORDER_RIGHT_STYLE, CSS_VAL_SOLID);
           }
  -    } else if (attr->name() == HTMLAttributes::valign()) {
  +    } else if (attr->name() == valignAttr) {
           if (!attr->value().isEmpty())
               addCSSProperty(attr, CSS_PROP_VERTICAL_ALIGN, attr->value());
  -    } else if (attr->name() == HTMLAttributes::align()) {
  +    } else if (attr->name() == alignAttr) {
           DOMString v = attr->value();
           if ( strcasecmp( attr->value(), "middle" ) == 0 || strcasecmp( attr->value(), "center" ) == 0 )
               addCSSProperty(attr, CSS_PROP_TEXT_ALIGN, CSS_VAL__KHTML_CENTER);
  @@ -762,7 +763,7 @@
               addCSSProperty(attr, CSS_PROP_TEXT_ALIGN, CSS_VAL__KHTML_RIGHT);
           else
               addCSSProperty(attr, CSS_PROP_TEXT_ALIGN, v);
  -    } else if (attr->name() == HTMLAttributes::height()) {
  +    } else if (attr->name() == heightAttr) {
           if (!attr->value().isEmpty())
               addCSSLength(attr, CSS_PROP_HEIGHT, attr->value());
       } else
  @@ -779,8 +780,8 @@
   
   bool HTMLTableSectionElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -    return newChild->hasTagName(HTMLTags::tr()) || newChild->hasTagName(HTMLTags::form()) ||
  -           newChild->hasTagName(HTMLTags::script());
  +    return newChild->hasTagName(trTag) || newChild->hasTagName(formTag) ||
  +           newChild->hasTagName(scriptTag);
   }
   
   NodeImpl *HTMLTableSectionElementImpl::addChild(NodeImpl *child)
  @@ -789,7 +790,7 @@
       kdDebug( 6030 ) << nodeName().string() << "(Tbody)::addChild( " << child->nodeName().string() << " )" << endl;
   #endif
   
  -    if (child->hasTagName(HTMLTags::form())) {
  +    if (child->hasTagName(formTag)) {
           // First add the child.
           HTMLElementImpl::addChild(child);
           // Now simply return ourselves as the newnode.  This has the effect of
  @@ -845,7 +846,7 @@
       int rows = 0;
       const NodeImpl *n = firstChild();
       while (n) {
  -        if (n->hasTagName(HTMLTags::tr()))
  +        if (n->hasTagName(trTag))
               rows++;
           n = n->nextSibling();
       }
  @@ -855,42 +856,42 @@
   
   DOMString HTMLTableSectionElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLTableSectionElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   DOMString HTMLTableSectionElementImpl::ch() const
   {
  -    return getAttribute(HTMLAttributes::charAttr());
  +    return getAttribute(charAttr);
   }
   
   void HTMLTableSectionElementImpl::setCh(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charAttr(), value);
  +    setAttribute(charAttr, value);
   }
   
   DOMString HTMLTableSectionElementImpl::chOff() const
   {
  -    return getAttribute(HTMLAttributes::charoff());
  +    return getAttribute(charoffAttr);
   }
   
   void HTMLTableSectionElementImpl::setChOff(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charoff(), value);
  +    setAttribute(charoffAttr, value);
   }
   
   DOMString HTMLTableSectionElementImpl::vAlign() const
   {
  -    return getAttribute(HTMLAttributes::valign());
  +    return getAttribute(valignAttr);
   }
   
   void HTMLTableSectionElementImpl::setVAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::valign(), value);
  +    setAttribute(valignAttr, value);
   }
   
   SharedPtr<HTMLCollectionImpl> HTMLTableSectionElementImpl::rows()
  @@ -902,8 +903,8 @@
   
   bool HTMLTableRowElementImpl::checkDTD(const NodeImpl* newChild)
   {
  -    return newChild->hasTagName(HTMLTags::td()) || newChild->hasTagName(HTMLTags::th()) ||
  -           newChild->hasTagName(HTMLTags::form()) || newChild->hasTagName(HTMLTags::script());
  +    return newChild->hasTagName(tdTag) || newChild->hasTagName(thTag) ||
  +           newChild->hasTagName(formTag) || newChild->hasTagName(scriptTag);
   }
   
   NodeImpl *HTMLTableRowElementImpl::addChild(NodeImpl *child)
  @@ -912,7 +913,7 @@
       kdDebug( 6030 ) << nodeName().string() << "(Trow)::addChild( " << child->nodeName().string() << " )" << endl;
   #endif
   
  -    if (child->hasTagName(HTMLTags::form())) {
  +    if (child->hasTagName(formTag)) {
           // First add the child.
           HTMLElementImpl::addChild(child);
           // Now simply return ourselves as the newnode.  This has the effect of
  @@ -930,13 +931,13 @@
       if (!table)
   	return -1;
       table = table->parentNode();
  -    if (!table || !table->hasTagName(HTMLTags::table()))
  +    if (!table || !table->hasTagName(tableTag))
   	return -1;
   
       HTMLTableSectionElementImpl *foot = static_cast<HTMLTableElementImpl *>(table)->tFoot();
       NodeImpl *node = table->firstChild();
       while (node) {
  -        if (node != foot && (node->hasTagName(HTMLTags::thead()) || node->hasTagName(HTMLTags::tfoot()) || node->hasTagName(HTMLTags::tbody()))) {
  +        if (node != foot && (node->hasTagName(theadTag) || node->hasTagName(tfootTag) || node->hasTagName(tbodyTag))) {
   	    HTMLTableSectionElementImpl* section = static_cast<HTMLTableSectionElementImpl *>(node);
   	    const NodeImpl *row = section->firstChild();
   	    while ( row ) {
  @@ -965,7 +966,7 @@
       const NodeImpl *n = this;
       do {
           n = n->previousSibling();
  -        if (n && n->hasTagName(HTMLTags::tr()))
  +        if (n && n->hasTagName(trTag))
               rIndex++;
       }
       while (n);
  @@ -982,7 +983,7 @@
           exceptioncode = DOMException::INDEX_SIZE_ERR; // per the DOM
       else
       {
  -        c = new HTMLTableCellElementImpl(HTMLTags::td(), docPtr());
  +        c = new HTMLTableCellElementImpl(tdTag, docPtr());
           if(numCells == index || index == -1)
               appendChild(c, exceptioncode);
           else {
  @@ -1022,52 +1023,52 @@
   
   DOMString HTMLTableRowElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLTableRowElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   DOMString HTMLTableRowElementImpl::bgColor() const
   {
  -    return getAttribute(HTMLAttributes::bgcolor());
  +    return getAttribute(bgcolorAttr);
   }
   
   void HTMLTableRowElementImpl::setBgColor(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::bgcolor(), value);
  +    setAttribute(bgcolorAttr, value);
   }
   
   DOMString HTMLTableRowElementImpl::ch() const
   {
  -    return getAttribute(HTMLAttributes::charAttr());
  +    return getAttribute(charAttr);
   }
   
   void HTMLTableRowElementImpl::setCh(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charAttr(), value);
  +    setAttribute(charAttr, value);
   }
   
   DOMString HTMLTableRowElementImpl::chOff() const
   {
  -    return getAttribute(HTMLAttributes::charoff());
  +    return getAttribute(charoffAttr);
   }
   
   void HTMLTableRowElementImpl::setChOff(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charoff(), value);
  +    setAttribute(charoffAttr, value);
   }
   
   DOMString HTMLTableRowElementImpl::vAlign() const
   {
  -    return getAttribute(HTMLAttributes::valign());
  +    return getAttribute(valignAttr);
   }
   
   void HTMLTableRowElementImpl::setVAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::valign(), value);
  +    setAttribute(valignAttr, value);
   }
   
   // -------------------------------------------------------------------------
  @@ -1090,7 +1091,7 @@
   {
       int index = 0;
       for (const NodeImpl * node = previousSibling(); node; node = node->previousSibling()) {
  -        if (node->hasTagName(HTMLTags::td()) || node->hasTagName(HTMLTags::th()))
  +        if (node->hasTagName(tdTag) || node->hasTagName(thTag))
               index++;
       }
       
  @@ -1099,13 +1100,13 @@
   
   bool HTMLTableCellElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::nowrap()) {
  +    if (attrName == nowrapAttr) {
           result = eUniversal;
           return false;
       }
       
  -    if (attrName == HTMLAttributes::width() ||
  -        attrName == HTMLAttributes::height()) {
  +    if (attrName == widthAttr ||
  +        attrName == heightAttr) {
           result = eCell; // Because of the quirky behavior of ignoring 0 values, cells are special.
           return false;
       }
  @@ -1115,26 +1116,26 @@
   
   void HTMLTableCellElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::rowspan()) {
  +    if (attr->name() == rowspanAttr) {
           rSpan = !attr->isNull() ? attr->value().toInt() : 1;
           if (rSpan < 1) rSpan = 1;
           if (renderer() && renderer()->isTableCell())
               static_cast<RenderTableCell*>(renderer())->updateFromElement();
  -    } else if (attr->name() == HTMLAttributes::colspan()) {
  +    } else if (attr->name() == colspanAttr) {
           cSpan = !attr->isNull() ? attr->value().toInt() : 1;
           if (cSpan < 1) cSpan = 1;
           if (renderer() && renderer()->isTableCell())
               static_cast<RenderTableCell*>(renderer())->updateFromElement();
  -    } else if (attr->name() == HTMLAttributes::nowrap()) {
  +    } else if (attr->name() == nowrapAttr) {
           if (!attr->isNull())
               addCSSProperty(attr, CSS_PROP_WHITE_SPACE, CSS_VAL__KHTML_NOWRAP);
  -    } else if (attr->name() == HTMLAttributes::width()) {
  +    } else if (attr->name() == widthAttr) {
           if (!attr->value().isEmpty()) {
               int widthInt = attr->value().toInt();
               if (widthInt > 0) // width="0" is ignored for compatibility with WinIE.
                   addCSSLength(attr, CSS_PROP_WIDTH, attr->value());
           }
  -    } else if (attr->name() == HTMLAttributes::height()) {
  +    } else if (attr->name() == heightAttr) {
           if (!attr->value().isEmpty()) {
               int heightInt = attr->value().toInt();
               if (heightInt > 0) // height="0" is ignored for compatibility with WinIE.
  @@ -1148,7 +1149,7 @@
   CSSMutableStyleDeclarationImpl* HTMLTableCellElementImpl::additionalAttributeStyleDecl()
   {
       NodeImpl* p = parentNode();
  -    while (p && !p->hasTagName(HTMLTags::table()))
  +    while (p && !p->hasTagName(tableTag))
           p = p->parentNode();
   
       if (p) {
  @@ -1161,137 +1162,137 @@
   
   bool HTMLTableCellElementImpl::isURLAttribute(AttributeImpl *attr) const
   {
  -    return attr->name() == HTMLAttributes::background();
  +    return attr->name() == backgroundAttr;
   }
   
   DOMString HTMLTableCellElementImpl::abbr() const
   {
  -    return getAttribute(HTMLAttributes::abbr());
  +    return getAttribute(abbrAttr);
   }
   
   void HTMLTableCellElementImpl::setAbbr(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::abbr(), value);
  +    setAttribute(abbrAttr, value);
   }
   
   DOMString HTMLTableCellElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLTableCellElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   DOMString HTMLTableCellElementImpl::axis() const
   {
  -    return getAttribute(HTMLAttributes::axis());
  +    return getAttribute(axisAttr);
   }
   
   void HTMLTableCellElementImpl::setAxis(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::axis(), value);
  +    setAttribute(axisAttr, value);
   }
   
   DOMString HTMLTableCellElementImpl::bgColor() const
   {
  -    return getAttribute(HTMLAttributes::bgcolor());
  +    return getAttribute(bgcolorAttr);
   }
   
   void HTMLTableCellElementImpl::setBgColor(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::bgcolor(), value);
  +    setAttribute(bgcolorAttr, value);
   }
   
   DOMString HTMLTableCellElementImpl::ch() const
   {
  -    return getAttribute(HTMLAttributes::charAttr());
  +    return getAttribute(charAttr);
   }
   
   void HTMLTableCellElementImpl::setCh(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charAttr(), value);
  +    setAttribute(charAttr, value);
   }
   
   DOMString HTMLTableCellElementImpl::chOff() const
   {
  -    return getAttribute(HTMLAttributes::charoff());
  +    return getAttribute(charoffAttr);
   }
   
   void HTMLTableCellElementImpl::setChOff(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charoff(), value);
  +    setAttribute(charoffAttr, value);
   }
   
   void HTMLTableCellElementImpl::setColSpan(long n)
   {
  -    setAttribute(HTMLAttributes::colspan(), QString::number(n));
  +    setAttribute(colspanAttr, QString::number(n));
   }
   
   DOMString HTMLTableCellElementImpl::headers() const
   {
  -    return getAttribute(HTMLAttributes::headers());
  +    return getAttribute(headersAttr);
   }
   
   void HTMLTableCellElementImpl::setHeaders(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::headers(), value);
  +    setAttribute(headersAttr, value);
   }
   
   DOMString HTMLTableCellElementImpl::height() const
   {
  -    return getAttribute(HTMLAttributes::height());
  +    return getAttribute(heightAttr);
   }
   
   void HTMLTableCellElementImpl::setHeight(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::height(), value);
  +    setAttribute(heightAttr, value);
   }
   
   bool HTMLTableCellElementImpl::noWrap() const
   {
  -    return !getAttribute(HTMLAttributes::nowrap()).isNull();
  +    return !getAttribute(nowrapAttr).isNull();
   }
   
   void HTMLTableCellElementImpl::setNoWrap(bool b)
   {
  -    setAttribute(HTMLAttributes::nowrap(), b ? "" : 0);
  +    setAttribute(nowrapAttr, b ? "" : 0);
   }
   
   void HTMLTableCellElementImpl::setRowSpan(long n)
   {
  -    setAttribute(HTMLAttributes::rowspan(), QString::number(n));
  +    setAttribute(rowspanAttr, QString::number(n));
   }
   
   DOMString HTMLTableCellElementImpl::scope() const
   {
  -    return getAttribute(HTMLAttributes::scope());
  +    return getAttribute(scopeAttr);
   }
   
   void HTMLTableCellElementImpl::setScope(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::scope(), value);
  +    setAttribute(scopeAttr, value);
   }
   
   DOMString HTMLTableCellElementImpl::vAlign() const
   {
  -    return getAttribute(HTMLAttributes::valign());
  +    return getAttribute(valignAttr);
   }
   
   void HTMLTableCellElementImpl::setVAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::valign(), value);
  +    setAttribute(valignAttr, value);
   }
   
   DOMString HTMLTableCellElementImpl::width() const
   {
  -    return getAttribute(HTMLAttributes::width());
  +    return getAttribute(widthAttr);
   }
   
   void HTMLTableCellElementImpl::setWidth(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::width(), value);
  +    setAttribute(widthAttr, value);
   }
   
   // -------------------------------------------------------------------------
  @@ -1299,12 +1300,12 @@
   HTMLTableColElementImpl::HTMLTableColElementImpl(const QualifiedName& tagName, DocumentPtr *doc)
       : HTMLTablePartElementImpl(tagName, doc)
   {
  -    _span = (tagName.matches(HTMLTags::colgroup()) ? 0 : 1);
  +    _span = (tagName.matches(colgroupTag) ? 0 : 1);
   }
   
   bool HTMLTableColElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::width()) {
  +    if (attrName == widthAttr) {
           result = eUniversal;
           return false;
       }
  @@ -1314,11 +1315,11 @@
   
   void HTMLTableColElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::span()) {
  +    if (attr->name() == spanAttr) {
           _span = !attr->isNull() ? attr->value().toInt() : 1;
           if (renderer() && renderer()->isTableCol())
               static_cast<RenderTableCol*>(renderer())->updateFromElement();
  -    } else if (attr->name() == HTMLAttributes::width()) {
  +    } else if (attr->name() == widthAttr) {
           if (!attr->value().isEmpty())
               addCSSLength(attr, CSS_PROP_WIDTH, attr->value());
       } else
  @@ -1327,64 +1328,64 @@
   
   DOMString HTMLTableColElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLTableColElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   DOMString HTMLTableColElementImpl::ch() const
   {
  -    return getAttribute(HTMLAttributes::charAttr());
  +    return getAttribute(charAttr);
   }
   
   void HTMLTableColElementImpl::setCh(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charAttr(), value);
  +    setAttribute(charAttr, value);
   }
   
   DOMString HTMLTableColElementImpl::chOff() const
   {
  -    return getAttribute(HTMLAttributes::charoff());
  +    return getAttribute(charoffAttr);
   }
   
   void HTMLTableColElementImpl::setChOff(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::charoff(), value);
  +    setAttribute(charoffAttr, value);
   }
   
   void HTMLTableColElementImpl::setSpan(long n)
   {
  -    setAttribute(HTMLAttributes::span(), QString::number(n));
  +    setAttribute(spanAttr, QString::number(n));
   }
   
   DOMString HTMLTableColElementImpl::vAlign() const
   {
  -    return getAttribute(HTMLAttributes::valign());
  +    return getAttribute(valignAttr);
   }
   
   void HTMLTableColElementImpl::setVAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::valign(), value);
  +    setAttribute(valignAttr, value);
   }
   
   DOMString HTMLTableColElementImpl::width() const
   {
  -    return getAttribute(HTMLAttributes::width());
  +    return getAttribute(widthAttr);
   }
   
   void HTMLTableColElementImpl::setWidth(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::width(), value);
  +    setAttribute(widthAttr, value);
   }
   
   // -------------------------------------------------------------------------
   
   bool HTMLTableCaptionElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
  -    if (attrName == HTMLAttributes::align()) {
  +    if (attrName == alignAttr) {
           result = eCaption;
           return false;
       }
  @@ -1394,7 +1395,7 @@
   
   void HTMLTableCaptionElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::align()) {
  +    if (attr->name() == alignAttr) {
           if (!attr->value().isEmpty())
               addCSSProperty(attr, CSS_PROP_CAPTION_SIDE, attr->value());
       } else
  @@ -1403,12 +1404,12 @@
   
   DOMString HTMLTableCaptionElementImpl::align() const
   {
  -    return getAttribute(HTMLAttributes::align());
  +    return getAttribute(alignAttr);
   }
   
   void HTMLTableCaptionElementImpl::setAlign(const DOMString &value)
   {
  -    setAttribute(HTMLAttributes::align(), value);
  +    setAttribute(alignAttr, value);
   }
   
   }
  
  
  
  1.26      +5 -5      WebCore/khtml/html/html_tableimpl.h
  
  Index: html_tableimpl.h
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/html_tableimpl.h,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- html_tableimpl.h	18 Jul 2005 21:52:26 -0000	1.25
  +++ html_tableimpl.h	30 Jul 2005 02:33:18 -0000	1.26
  @@ -197,7 +197,7 @@
   {
   public:
       HTMLTableRowElementImpl(DocumentPtr *doc)
  -        : HTMLTablePartElementImpl(HTMLTags::tr(), doc) {}
  +        : HTMLTablePartElementImpl(HTMLNames::trTag, doc) {}
   
       virtual HTMLTagStatus endTagRequirement() const { return TagStatusOptional; }
       virtual int tagPriority() const { return 7; }
  @@ -324,9 +324,9 @@
   public:
       HTMLTableColElementImpl(const QualifiedName& tagName, DocumentPtr *doc);
   
  -    virtual HTMLTagStatus endTagRequirement() const { return hasLocalName(HTMLTags::col()) ? TagStatusForbidden : TagStatusOptional; }
  -    virtual int tagPriority() const { return hasLocalName(HTMLTags::col()) ? 0 : 1; }
  -    virtual bool checkDTD(const NodeImpl* newChild) { return hasLocalName(HTMLTags::colgroup()) && newChild->hasTagName(HTMLTags::col()); }
  +    virtual HTMLTagStatus endTagRequirement() const { return hasLocalName(HTMLNames::colTag) ? TagStatusForbidden : TagStatusOptional; }
  +    virtual int tagPriority() const { return hasLocalName(HTMLNames::colTag) ? 0 : 1; }
  +    virtual bool checkDTD(const NodeImpl* newChild) { return hasLocalName(HTMLNames::colgroupTag) && newChild->hasTagName(HTMLNames::colTag); }
       void setTable(HTMLTableElementImpl *t) { table = t; }
   
       // overrides
  @@ -363,7 +363,7 @@
   {
   public:
       HTMLTableCaptionElementImpl(DocumentPtr *doc)
  -        : HTMLTablePartElementImpl(HTMLTags::caption(), doc) {}
  +        : HTMLTablePartElementImpl(HTMLNames::captionTag, doc) {}
   
       virtual HTMLTagStatus endTagRequirement() const { return TagStatusRequired; }
       virtual int tagPriority() const { return 5; }
  
  
  
  1.3       +74 -74    WebCore/khtml/html/htmlfactory.cpp
  
  Index: htmlfactory.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/htmlfactory.cpp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- htmlfactory.cpp	18 Jul 2005 21:52:26 -0000	1.2
  +++ htmlfactory.cpp	30 Jul 2005 02:33:18 -0000	1.3
  @@ -199,7 +199,7 @@
   
   HTMLElementImpl* headingConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
   {
  -    return new HTMLHeadingElementImpl(QualifiedName(nullAtom, tagName, HTMLTags::xhtmlNamespaceURI()), docPtr);
  +    return new HTMLHeadingElementImpl(QualifiedName(nullAtom, tagName, xhtmlNamespaceURI), docPtr);
   }
   
   HTMLElementImpl* hrConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
  @@ -214,7 +214,7 @@
   
   HTMLElementImpl* preConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
   {
  -    return new HTMLPreElementImpl(QualifiedName(nullAtom, tagName, HTMLTags::xhtmlNamespaceURI()), docPtr);
  +    return new HTMLPreElementImpl(QualifiedName(nullAtom, tagName, xhtmlNamespaceURI), docPtr);
   }
   
   HTMLElementImpl* basefontConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
  @@ -229,7 +229,7 @@
   
   HTMLElementImpl* modConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
   {
  -    return new HTMLModElementImpl(QualifiedName(nullAtom, tagName, HTMLTags::xhtmlNamespaceURI()), docPtr);
  +    return new HTMLModElementImpl(QualifiedName(nullAtom, tagName, xhtmlNamespaceURI), docPtr);
   }
   
   HTMLElementImpl* anchorConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
  @@ -296,7 +296,7 @@
   
   HTMLElementImpl* tableColConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
   {
  -    return new HTMLTableColElementImpl(QualifiedName(nullAtom, tagName, HTMLTags::xhtmlNamespaceURI()), docPtr);
  +    return new HTMLTableColElementImpl(QualifiedName(nullAtom, tagName, xhtmlNamespaceURI), docPtr);
   }
   
   HTMLElementImpl* tableRowConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
  @@ -306,12 +306,12 @@
   
   HTMLElementImpl* tableCellConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
   {
  -    return new HTMLTableCellElementImpl(QualifiedName(nullAtom, tagName, HTMLTags::xhtmlNamespaceURI()), docPtr);
  +    return new HTMLTableCellElementImpl(QualifiedName(nullAtom, tagName, xhtmlNamespaceURI), docPtr);
   }
   
   HTMLElementImpl* tableSectionConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
   {
  -    return new HTMLTableSectionElementImpl(QualifiedName(nullAtom, tagName, HTMLTags::xhtmlNamespaceURI()), docPtr, false);
  +    return new HTMLTableSectionElementImpl(QualifiedName(nullAtom, tagName, xhtmlNamespaceURI), docPtr, false);
   }
   
   HTMLElementImpl* brConstructor(const AtomicString& tagName, DocumentPtr* docPtr, HTMLFormElementImpl* form, bool createdByParser)
  @@ -340,73 +340,73 @@
           gFunctionMap = new FunctionMap;
           
           // Populate it with constructor functions.
  -        gFunctionMap->insert(HTMLTags::html().localName().implementation(), (void*)&htmlConstructor);
  -        gFunctionMap->insert(HTMLTags::head().localName().implementation(), (void*)&headConstructor);
  -        gFunctionMap->insert(HTMLTags::body().localName().implementation(), (void*)&bodyConstructor);
  -        gFunctionMap->insert(HTMLTags::base().localName().implementation(), (void*)&baseConstructor);
  -        gFunctionMap->insert(HTMLTags::link().localName().implementation(), (void*)&linkConstructor);
  -        gFunctionMap->insert(HTMLTags::meta().localName().implementation(), (void*)&metaConstructor);
  -        gFunctionMap->insert(HTMLTags::style().localName().implementation(), (void*)&styleConstructor);
  -        gFunctionMap->insert(HTMLTags::title().localName().implementation(), (void*)&titleConstructor);
  -        gFunctionMap->insert(HTMLTags::frame().localName().implementation(), (void*)&frameConstructor);
  -        gFunctionMap->insert(HTMLTags::frameset().localName().implementation(), (void*)&framesetConstructor);
  -        gFunctionMap->insert(HTMLTags::iframe().localName().implementation(), (void*)&iframeConstructor);
  -        gFunctionMap->insert(HTMLTags::form().localName().implementation(), (void*)&formConstructor);
  -        gFunctionMap->insert(HTMLTags::button().localName().implementation(), (void*)&buttonConstructor);
  -        gFunctionMap->insert(HTMLTags::input().localName().implementation(), (void*)&inputConstructor);
  -        gFunctionMap->insert(HTMLTags::isindex().localName().implementation(), (void*)&isindexConstructor);
  -        gFunctionMap->insert(HTMLTags::fieldset().localName().implementation(), (void*)&fieldsetConstructor);
  -        gFunctionMap->insert(HTMLTags::label().localName().implementation(), (void*)&labelConstructor);
  -        gFunctionMap->insert(HTMLTags::legend().localName().implementation(), (void*)&legendConstructor);
  -        gFunctionMap->insert(HTMLTags::optgroup().localName().implementation(), (void*)&optgroupConstructor);
  -        gFunctionMap->insert(HTMLTags::option().localName().implementation(), (void*)&optionConstructor);
  -        gFunctionMap->insert(HTMLTags::select().localName().implementation(), (void*)&selectConstructor);
  -        gFunctionMap->insert(HTMLTags::textarea().localName().implementation(), (void*)&textareaConstructor);
  -        gFunctionMap->insert(HTMLTags::dl().localName().implementation(), (void*)&dlConstructor);
  -        gFunctionMap->insert(HTMLTags::ol().localName().implementation(), (void*)&olConstructor);
  -        gFunctionMap->insert(HTMLTags::ul().localName().implementation(), (void*)&ulConstructor);
  -        gFunctionMap->insert(HTMLTags::dir().localName().implementation(), (void*)&dirConstructor);
  -        gFunctionMap->insert(HTMLTags::menu().localName().implementation(), (void*)&menuConstructor);
  -        gFunctionMap->insert(HTMLTags::li().localName().implementation(), (void*)&liConstructor);
  -        gFunctionMap->insert(HTMLTags::blockquote().localName().implementation(), (void*)&blockquoteConstructor);
  -        gFunctionMap->insert(HTMLTags::div().localName().implementation(), (void*)&divConstructor);
  -        gFunctionMap->insert(HTMLTags::h1().localName().implementation(), (void*)&headingConstructor);
  -        gFunctionMap->insert(HTMLTags::h2().localName().implementation(), (void*)&headingConstructor);
  -        gFunctionMap->insert(HTMLTags::h3().localName().implementation(), (void*)&headingConstructor);
  -        gFunctionMap->insert(HTMLTags::h4().localName().implementation(), (void*)&headingConstructor);
  -        gFunctionMap->insert(HTMLTags::h5().localName().implementation(), (void*)&headingConstructor);
  -        gFunctionMap->insert(HTMLTags::h6().localName().implementation(), (void*)&headingConstructor);
  -        gFunctionMap->insert(HTMLTags::hr().localName().implementation(), (void*)&hrConstructor);
  -        gFunctionMap->insert(HTMLTags::p().localName().implementation(), (void*)&paragraphConstructor);
  -        gFunctionMap->insert(HTMLTags::pre().localName().implementation(), (void*)&preConstructor);
  -        gFunctionMap->insert(HTMLTags::xmp().localName().implementation(), (void*)&preConstructor);
  -        gFunctionMap->insert(HTMLTags::basefont().localName().implementation(), (void*)&basefontConstructor);
  -        gFunctionMap->insert(HTMLTags::font().localName().implementation(), (void*)&fontConstructor);
  -        gFunctionMap->insert(HTMLTags::del().localName().implementation(), (void*)&modConstructor);
  -        gFunctionMap->insert(HTMLTags::ins().localName().implementation(), (void*)&modConstructor);
  -        gFunctionMap->insert(HTMLTags::a().localName().implementation(), (void*)&anchorConstructor);
  -        gFunctionMap->insert(HTMLTags::img().localName().implementation(), (void*)&imageConstructor);
  -        gFunctionMap->insert(HTMLTags::map().localName().implementation(), (void*)&mapConstructor);
  -        gFunctionMap->insert(HTMLTags::area().localName().implementation(), (void*)&areaConstructor);
  -        gFunctionMap->insert(HTMLTags::canvas().localName().implementation(), (void*)&canvasConstructor);
  -        gFunctionMap->insert(HTMLTags::applet().localName().implementation(), (void*)&appletConstructor);
  -        gFunctionMap->insert(HTMLTags::embed().localName().implementation(), (void*)&embedConstructor);
  -        gFunctionMap->insert(HTMLTags::object().localName().implementation(), (void*)&objectConstructor);
  -        gFunctionMap->insert(HTMLTags::param().localName().implementation(), (void*)&paramConstructor);
  -        gFunctionMap->insert(HTMLTags::script().localName().implementation(), (void*)&scriptConstructor);
  -        gFunctionMap->insert(HTMLTags::table().localName().implementation(), (void*)&tableConstructor);
  -        gFunctionMap->insert(HTMLTags::caption().localName().implementation(), (void*)&tableCaptionConstructor);
  -        gFunctionMap->insert(HTMLTags::colgroup().localName().implementation(), (void*)&tableColConstructor);
  -        gFunctionMap->insert(HTMLTags::col().localName().implementation(), (void*)&tableColConstructor);
  -        gFunctionMap->insert(HTMLTags::tr().localName().implementation(), (void*)&tableRowConstructor);
  -        gFunctionMap->insert(HTMLTags::td().localName().implementation(), (void*)&tableCellConstructor);
  -        gFunctionMap->insert(HTMLTags::th().localName().implementation(), (void*)&tableCellConstructor);
  -        gFunctionMap->insert(HTMLTags::thead().localName().implementation(), (void*)&tableSectionConstructor);
  -        gFunctionMap->insert(HTMLTags::tbody().localName().implementation(), (void*)&tableSectionConstructor);
  -        gFunctionMap->insert(HTMLTags::tfoot().localName().implementation(), (void*)&tableSectionConstructor);
  -        gFunctionMap->insert(HTMLTags::br().localName().implementation(), (void*)&brConstructor);
  -        gFunctionMap->insert(HTMLTags::q().localName().implementation(), (void*)&quoteConstructor);
  -        gFunctionMap->insert(HTMLTags::marquee().localName().implementation(), (void*)&marqueeConstructor);
  +        gFunctionMap->insert(htmlTag.localName().implementation(), (void*)&htmlConstructor);
  +        gFunctionMap->insert(headTag.localName().implementation(), (void*)&headConstructor);
  +        gFunctionMap->insert(bodyTag.localName().implementation(), (void*)&bodyConstructor);
  +        gFunctionMap->insert(baseTag.localName().implementation(), (void*)&baseConstructor);
  +        gFunctionMap->insert(linkTag.localName().implementation(), (void*)&linkConstructor);
  +        gFunctionMap->insert(metaTag.localName().implementation(), (void*)&metaConstructor);
  +        gFunctionMap->insert(styleTag.localName().implementation(), (void*)&styleConstructor);
  +        gFunctionMap->insert(titleTag.localName().implementation(), (void*)&titleConstructor);
  +        gFunctionMap->insert(frameTag.localName().implementation(), (void*)&frameConstructor);
  +        gFunctionMap->insert(framesetTag.localName().implementation(), (void*)&framesetConstructor);
  +        gFunctionMap->insert(iframeTag.localName().implementation(), (void*)&iframeConstructor);
  +        gFunctionMap->insert(formTag.localName().implementation(), (void*)&formConstructor);
  +        gFunctionMap->insert(buttonTag.localName().implementation(), (void*)&buttonConstructor);
  +        gFunctionMap->insert(inputTag.localName().implementation(), (void*)&inputConstructor);
  +        gFunctionMap->insert(isindexTag.localName().implementation(), (void*)&isindexConstructor);
  +        gFunctionMap->insert(fieldsetTag.localName().implementation(), (void*)&fieldsetConstructor);
  +        gFunctionMap->insert(labelTag.localName().implementation(), (void*)&labelConstructor);
  +        gFunctionMap->insert(legendTag.localName().implementation(), (void*)&legendConstructor);
  +        gFunctionMap->insert(optgroupTag.localName().implementation(), (void*)&optgroupConstructor);
  +        gFunctionMap->insert(optionTag.localName().implementation(), (void*)&optionConstructor);
  +        gFunctionMap->insert(selectTag.localName().implementation(), (void*)&selectConstructor);
  +        gFunctionMap->insert(textareaTag.localName().implementation(), (void*)&textareaConstructor);
  +        gFunctionMap->insert(dlTag.localName().implementation(), (void*)&dlConstructor);
  +        gFunctionMap->insert(olTag.localName().implementation(), (void*)&olConstructor);
  +        gFunctionMap->insert(ulTag.localName().implementation(), (void*)&ulConstructor);
  +        gFunctionMap->insert(dirTag.localName().implementation(), (void*)&dirConstructor);
  +        gFunctionMap->insert(menuTag.localName().implementation(), (void*)&menuConstructor);
  +        gFunctionMap->insert(liTag.localName().implementation(), (void*)&liConstructor);
  +        gFunctionMap->insert(blockquoteTag.localName().implementation(), (void*)&blockquoteConstructor);
  +        gFunctionMap->insert(divTag.localName().implementation(), (void*)&divConstructor);
  +        gFunctionMap->insert(h1Tag.localName().implementation(), (void*)&headingConstructor);
  +        gFunctionMap->insert(h2Tag.localName().implementation(), (void*)&headingConstructor);
  +        gFunctionMap->insert(h3Tag.localName().implementation(), (void*)&headingConstructor);
  +        gFunctionMap->insert(h4Tag.localName().implementation(), (void*)&headingConstructor);
  +        gFunctionMap->insert(h5Tag.localName().implementation(), (void*)&headingConstructor);
  +        gFunctionMap->insert(h6Tag.localName().implementation(), (void*)&headingConstructor);
  +        gFunctionMap->insert(hrTag.localName().implementation(), (void*)&hrConstructor);
  +        gFunctionMap->insert(pTag.localName().implementation(), (void*)&paragraphConstructor);
  +        gFunctionMap->insert(preTag.localName().implementation(), (void*)&preConstructor);
  +        gFunctionMap->insert(xmpTag.localName().implementation(), (void*)&preConstructor);
  +        gFunctionMap->insert(basefontTag.localName().implementation(), (void*)&basefontConstructor);
  +        gFunctionMap->insert(fontTag.localName().implementation(), (void*)&fontConstructor);
  +        gFunctionMap->insert(delTag.localName().implementation(), (void*)&modConstructor);
  +        gFunctionMap->insert(insTag.localName().implementation(), (void*)&modConstructor);
  +        gFunctionMap->insert(aTag.localName().implementation(), (void*)&anchorConstructor);
  +        gFunctionMap->insert(imgTag.localName().implementation(), (void*)&imageConstructor);
  +        gFunctionMap->insert(mapTag.localName().implementation(), (void*)&mapConstructor);
  +        gFunctionMap->insert(areaTag.localName().implementation(), (void*)&areaConstructor);
  +        gFunctionMap->insert(canvasTag.localName().implementation(), (void*)&canvasConstructor);
  +        gFunctionMap->insert(appletTag.localName().implementation(), (void*)&appletConstructor);
  +        gFunctionMap->insert(embedTag.localName().implementation(), (void*)&embedConstructor);
  +        gFunctionMap->insert(objectTag.localName().implementation(), (void*)&objectConstructor);
  +        gFunctionMap->insert(paramTag.localName().implementation(), (void*)&paramConstructor);
  +        gFunctionMap->insert(scriptTag.localName().implementation(), (void*)&scriptConstructor);
  +        gFunctionMap->insert(tableTag.localName().implementation(), (void*)&tableConstructor);
  +        gFunctionMap->insert(captionTag.localName().implementation(), (void*)&tableCaptionConstructor);
  +        gFunctionMap->insert(colgroupTag.localName().implementation(), (void*)&tableColConstructor);
  +        gFunctionMap->insert(colTag.localName().implementation(), (void*)&tableColConstructor);
  +        gFunctionMap->insert(trTag.localName().implementation(), (void*)&tableRowConstructor);
  +        gFunctionMap->insert(tdTag.localName().implementation(), (void*)&tableCellConstructor);
  +        gFunctionMap->insert(thTag.localName().implementation(), (void*)&tableCellConstructor);
  +        gFunctionMap->insert(theadTag.localName().implementation(), (void*)&tableSectionConstructor);
  +        gFunctionMap->insert(tbodyTag.localName().implementation(), (void*)&tableSectionConstructor);
  +        gFunctionMap->insert(tfootTag.localName().implementation(), (void*)&tableSectionConstructor);
  +        gFunctionMap->insert(brTag.localName().implementation(), (void*)&brConstructor);
  +        gFunctionMap->insert(qTag.localName().implementation(), (void*)&quoteConstructor);
  +        gFunctionMap->insert(marqueeTag.localName().implementation(), (void*)&marqueeConstructor);
       }
       
       void* result = gFunctionMap->get(tagName.implementation());
  @@ -416,7 +416,7 @@
       }
    
       // elements with no special representation in the DOM
  -    return new HTMLElementImpl(QualifiedName(nullAtom, tagName, HTMLTags::xhtmlNamespaceURI()), docPtr);
  +    return new HTMLElementImpl(QualifiedName(nullAtom, tagName, xhtmlNamespaceURI), docPtr);
   
   }
   
  
  
  
  1.6       +20 -23    WebCore/khtml/html/htmlnames.cpp
  
  Index: htmlnames.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/htmlnames.cpp,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- htmlnames.cpp	18 Jul 2005 21:52:26 -0000	1.5
  +++ htmlnames.cpp	30 Jul 2005 02:33:18 -0000	1.6
  @@ -1,7 +1,7 @@
   /*
    * This file is part of the HTML DOM implementation for KDE.
    *
  - * Copyright (C) QualifiedName(nullAtom, " 2005 Apple Computer, Inc.
  + * Copyright (C) 2005 Apple Computer, Inc.
    *
    * This library is free software; you can redistribute it and/or
    * modify it under the terms of the GNU Library General Public
  @@ -22,13 +22,15 @@
   
   #define KHTML_HTMLNAMES_HIDE_GLOBALS 1
   
  -#include <qptrdict.h>
   #include "htmlnames.h"
  -#include "dom_qname.h"
   
  -namespace DOM {
  +using DOM::AtomicString;
  +using DOM::QualifiedName;
  +using DOM::nullAtom;
   
  -void* xhtmlNamespaceURIAtom[(sizeof(AtomicString) + sizeof(void*) - 1) / sizeof(void*)];
  +namespace HTMLNames {
  +
  +void* xhtmlNamespaceURI[(sizeof(AtomicString) + sizeof(void*) - 1) / sizeof(void*)];
   
   // Define a QualifiedName-sized array of pointers to avoid static initialization.
   // Use an array of pointers instead of an array of char in case there is some alignment issue.
  @@ -162,14 +164,14 @@
   DEFINE_ATTR_GLOBAL(bordercolor)
   DEFINE_ATTR_GLOBAL(cellpadding)
   DEFINE_ATTR_GLOBAL(cellspacing)
  -DEFINE_ATTR_GLOBAL(charAttr)
  +DEFINE_ATTR_GLOBAL(char)
   DEFINE_ATTR_GLOBAL(challenge)
   DEFINE_ATTR_GLOBAL(charoff)
   DEFINE_ATTR_GLOBAL(charset)
   DEFINE_ATTR_GLOBAL(checked)
   DEFINE_ATTR_GLOBAL(cellborder)
   DEFINE_ATTR_GLOBAL(cite)
  -DEFINE_ATTR_GLOBAL(classAttr)
  +DEFINE_ATTR_GLOBAL(class)
   DEFINE_ATTR_GLOBAL(classid)
   DEFINE_ATTR_GLOBAL(clear)
   DEFINE_ATTR_GLOBAL(code)
  @@ -192,7 +194,7 @@
   DEFINE_ATTR_GLOBAL(disabled)
   DEFINE_ATTR_GLOBAL(enctype)
   DEFINE_ATTR_GLOBAL(face)
  -DEFINE_ATTR_GLOBAL(forAttr)
  +DEFINE_ATTR_GLOBAL(for)
   DEFINE_ATTR_GLOBAL(frame)
   DEFINE_ATTR_GLOBAL(frameborder)
   DEFINE_ATTR_GLOBAL(headers)
  @@ -202,7 +204,7 @@
   DEFINE_ATTR_GLOBAL(hreflang)
   DEFINE_ATTR_GLOBAL(hspace)
   DEFINE_ATTR_GLOBAL(http_equiv)
  -DEFINE_ATTR_GLOBAL(idAttr)
  +DEFINE_ATTR_GLOBAL(id)
   DEFINE_ATTR_GLOBAL(incremental)
   DEFINE_ATTR_GLOBAL(ismap)
   DEFINE_ATTR_GLOBAL(keytype)
  @@ -319,13 +321,15 @@
   DEFINE_ATTR_GLOBAL(width)
   DEFINE_ATTR_GLOBAL(wrap)
   
  -void HTMLTags::init()
  +void initHTMLNames()
   {
       static bool initialized;
       if (!initialized) {
           // Use placement new to initialize the globals.
  -        static AtomicString xhtmlNS("http://www.w3.org/1999/xhtml");
  -        new (&xhtmlNamespaceURIAtom) AtomicString(xhtmlNS);
  +
  +        AtomicString xhtmlNS("http://www.w3.org/1999/xhtml");
  +        new (&xhtmlNamespaceURI) AtomicString(xhtmlNS);
  +
           new (&aTag) QualifiedName(nullAtom, "a", xhtmlNS);
           new (&abbrTag) QualifiedName(nullAtom, "abbr", xhtmlNS);
           new (&acronymTag) QualifiedName(nullAtom, "acronym", xhtmlNS);
  @@ -428,14 +432,7 @@
           new (&varTag) QualifiedName(nullAtom, "var", xhtmlNS);
           new (&wbrTag) QualifiedName(nullAtom, "wbr", xhtmlNS);
           new (&xmpTag) QualifiedName(nullAtom, "xmp", xhtmlNS);
  -        initialized = true;
  -    }
  -}
   
  -void HTMLAttributes::init()
  -{
  -    static bool initialized;
  -    if (!initialized) {
           // Attribute names.
           new (&abbrAttr) QualifiedName(nullAtom, "abbr", nullAtom);
           new (&accept_charsetAttr) QualifiedName(nullAtom, "accept-charset", nullAtom);
  @@ -457,14 +454,14 @@
           new (&bordercolorAttr) QualifiedName(nullAtom, "bordercolor", nullAtom);
           new (&cellpaddingAttr) QualifiedName(nullAtom, "cellpadding", nullAtom);
           new (&cellspacingAttr) QualifiedName(nullAtom, "cellspacing", nullAtom);
  -        new (&charAttrAttr) QualifiedName(nullAtom, "char", nullAtom);
  +        new (&charAttr) QualifiedName(nullAtom, "char", nullAtom);
           new (&challengeAttr) QualifiedName(nullAtom, "challenge", nullAtom);
           new (&charoffAttr) QualifiedName(nullAtom, "charoff", nullAtom);
           new (&charsetAttr) QualifiedName(nullAtom, "charset", nullAtom);
           new (&checkedAttr) QualifiedName(nullAtom, "checked", nullAtom);
           new (&cellborderAttr) QualifiedName(nullAtom, "cellborder", nullAtom);
           new (&citeAttr) QualifiedName(nullAtom, "cite", nullAtom);
  -        new (&classAttrAttr) QualifiedName(nullAtom, "class", nullAtom);
  +        new (&classAttr) QualifiedName(nullAtom, "class", nullAtom);
           new (&classidAttr) QualifiedName(nullAtom, "classid", nullAtom);
           new (&clearAttr) QualifiedName(nullAtom, "clear", nullAtom);
           new (&codeAttr) QualifiedName(nullAtom, "code", nullAtom);
  @@ -487,7 +484,7 @@
           new (&disabledAttr) QualifiedName(nullAtom, "disabled", nullAtom);
           new (&enctypeAttr) QualifiedName(nullAtom, "enctype", nullAtom);
           new (&faceAttr) QualifiedName(nullAtom, "face", nullAtom);
  -        new (&forAttrAttr) QualifiedName(nullAtom, "for", nullAtom);
  +        new (&forAttr) QualifiedName(nullAtom, "for", nullAtom);
           new (&frameAttr) QualifiedName(nullAtom, "frame", nullAtom);
           new (&frameborderAttr) QualifiedName(nullAtom, "frameborder", nullAtom);
           new (&headersAttr) QualifiedName(nullAtom, "headers", nullAtom);
  @@ -497,7 +494,7 @@
           new (&hreflangAttr) QualifiedName(nullAtom, "hreflang", nullAtom);
           new (&hspaceAttr) QualifiedName(nullAtom, "hspace", nullAtom);
           new (&http_equivAttr) QualifiedName(nullAtom, "http-equiv", nullAtom);
  -        new (&idAttrAttr) QualifiedName(nullAtom, "id", nullAtom);
  +        new (&idAttr) QualifiedName(nullAtom, "id", nullAtom);
           new (&incrementalAttr) QualifiedName(nullAtom, "incremental", nullAtom);
           new (&ismapAttr) QualifiedName(nullAtom, "ismap", nullAtom);
           new (&keytypeAttr) QualifiedName(nullAtom, "keytype", nullAtom);
  
  
  
  1.6       +284 -601  WebCore/khtml/html/htmlnames.h
  
  Index: htmlnames.h
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/htmlnames.h,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- htmlnames.h	18 Jul 2005 21:52:26 -0000	1.5
  +++ htmlnames.h	30 Jul 2005 02:33:18 -0000	1.6
  @@ -24,614 +24,297 @@
   
   #include "dom_qname.h"
   
  -namespace DOM
  -{
  +namespace HTMLNames {
   
  -class QualifiedName;
  -
  -// The globals.
  -// Define external global variables for all HTML names above.
  -#if !KHTML_HTMLNAMES_HIDE_GLOBALS
  -    extern const AtomicString  xhtmlNamespaceURIAtom;
  -    extern const QualifiedName aTag;
  -    extern const QualifiedName abbrTag;
  -    extern const QualifiedName acronymTag;
  -    extern const QualifiedName addressTag;
  -    extern const QualifiedName appletTag;
  -    extern const QualifiedName areaTag;
  -    extern const QualifiedName bTag;
  -    extern const QualifiedName baseTag;
  -    extern const QualifiedName basefontTag;
  -    extern const QualifiedName bdoTag;
  -    extern const QualifiedName bigTag;
  -    extern const QualifiedName blockquoteTag;
  -    extern const QualifiedName bodyTag;
  -    extern const QualifiedName brTag;
  -    extern const QualifiedName buttonTag;
  -    extern const QualifiedName canvasTag;
  -    extern const QualifiedName captionTag;
  -    extern const QualifiedName centerTag;
  -    extern const QualifiedName citeTag;
  -    extern const QualifiedName codeTag;
  -    extern const QualifiedName colTag;
  -    extern const QualifiedName colgroupTag;
  -    extern const QualifiedName ddTag;
  -    extern const QualifiedName delTag;
  -    extern const QualifiedName dfnTag;
  -    extern const QualifiedName dirTag;
  -    extern const QualifiedName divTag;
  -    extern const QualifiedName dlTag;
  -    extern const QualifiedName dtTag;
  -    extern const QualifiedName emTag;
  -    extern const QualifiedName embedTag;
  -    extern const QualifiedName fieldsetTag;
  -    extern const QualifiedName fontTag;
  -    extern const QualifiedName formTag;
  -    extern const QualifiedName frameTag;
  -    extern const QualifiedName framesetTag;
  -    extern const QualifiedName headTag;
  -    extern const QualifiedName h1Tag;
  -    extern const QualifiedName h2Tag;
  -    extern const QualifiedName h3Tag;
  -    extern const QualifiedName h4Tag;
  -    extern const QualifiedName h5Tag;
  -    extern const QualifiedName h6Tag;
  -    extern const QualifiedName hrTag;
  -    extern const QualifiedName htmlTag;
  -    extern const QualifiedName iTag;
  -    extern const QualifiedName iframeTag;
  -    extern const QualifiedName imgTag;
  -    extern const QualifiedName inputTag;
  -    extern const QualifiedName insTag;
  -    extern const QualifiedName isindexTag;
  -    extern const QualifiedName kbdTag;
  -    extern const QualifiedName keygenTag;
  -    extern const QualifiedName labelTag;
  -    extern const QualifiedName layerTag;
  -    extern const QualifiedName legendTag;
  -    extern const QualifiedName liTag;
  -    extern const QualifiedName linkTag;
  -    extern const QualifiedName mapTag;
  -    extern const QualifiedName marqueeTag;
  -    extern const QualifiedName menuTag;
  -    extern const QualifiedName metaTag;
  -    extern const QualifiedName nobrTag;
  -    extern const QualifiedName noembedTag;
  -    extern const QualifiedName noframesTag;
  -    extern const QualifiedName nolayerTag;
  -    extern const QualifiedName noscriptTag;
  -    extern const QualifiedName objectTag;
  -    extern const QualifiedName olTag;
  -    extern const QualifiedName optgroupTag;
  -    extern const QualifiedName optionTag;
  -    extern const QualifiedName pTag;
  -    extern const QualifiedName paramTag;
  -    extern const QualifiedName plaintextTag;
  -    extern const QualifiedName preTag;
  -    extern const QualifiedName qTag;
  -    extern const QualifiedName sTag;
  -    extern const QualifiedName sampTag;
  -    extern const QualifiedName scriptTag;
  -    extern const QualifiedName selectTag;
  -    extern const QualifiedName smallTag;
  -    extern const QualifiedName spanTag;
  -    extern const QualifiedName strikeTag;
  -    extern const QualifiedName strongTag;
  -    extern const QualifiedName styleTag;
  -    extern const QualifiedName subTag;
  -    extern const QualifiedName supTag;
  -    extern const QualifiedName tableTag;
  -    extern const QualifiedName tbodyTag;
  -    extern const QualifiedName tdTag;
  -    extern const QualifiedName textareaTag;
  -    extern const QualifiedName tfootTag;
  -    extern const QualifiedName thTag;
  -    extern const QualifiedName theadTag;
  -    extern const QualifiedName titleTag;
  -    extern const QualifiedName trTag;
  -    extern const QualifiedName ttTag;
  -    extern const QualifiedName uTag;
  -    extern const QualifiedName ulTag;
  -    extern const QualifiedName varTag;
  -    extern const QualifiedName wbrTag;
  -    extern const QualifiedName xmpTag;
  -
  -    // Attributes
  -    extern const QualifiedName abbrAttr;
  -    extern const QualifiedName accept_charsetAttr;
  -    extern const QualifiedName acceptAttr;
  -    extern const QualifiedName accesskeyAttr;
  -    extern const QualifiedName actionAttr;
  -    extern const QualifiedName alignAttr;
  -    extern const QualifiedName alinkAttr;
  -    extern const QualifiedName altAttr;
  -    extern const QualifiedName archiveAttr;
  -    extern const QualifiedName autocompleteAttr;
  -    extern const QualifiedName autosaveAttr;
  -    extern const QualifiedName axisAttr;
  -    extern const QualifiedName backgroundAttr;
  -    extern const QualifiedName behaviorAttr;
  -    extern const QualifiedName bgcolorAttr;
  -    extern const QualifiedName bgpropertiesAttr;
  -    extern const QualifiedName borderAttr;
  -    extern const QualifiedName bordercolorAttr;
  -    extern const QualifiedName cellpaddingAttr;
  -    extern const QualifiedName cellspacingAttr;
  -    extern const QualifiedName charAttrAttr;
  -    extern const QualifiedName challengeAttr;
  -    extern const QualifiedName charoffAttr;
  -    extern const QualifiedName charsetAttr;
  -    extern const QualifiedName checkedAttr;
  -    extern const QualifiedName cellborderAttr;
  -    extern const QualifiedName citeAttr;
  -    extern const QualifiedName classAttrAttr;
  -    extern const QualifiedName classidAttr;
  -    extern const QualifiedName clearAttr;
  -    extern const QualifiedName codeAttr;
  -    extern const QualifiedName codebaseAttr;
  -    extern const QualifiedName codetypeAttr;
  -    extern const QualifiedName colorAttr;
  -    extern const QualifiedName colsAttr;
  -    extern const QualifiedName colspanAttr;
  -    extern const QualifiedName compactAttr;
  -    extern const QualifiedName compositeAttr;
  -    extern const QualifiedName contentAttr;
  -    extern const QualifiedName contenteditableAttr;
  -    extern const QualifiedName coordsAttr;
  -    extern const QualifiedName dataAttr;
  -    extern const QualifiedName datetimeAttr;
  -    extern const QualifiedName declareAttr;
  -    extern const QualifiedName deferAttr;
  -    extern const QualifiedName dirAttr;
  -    extern const QualifiedName directionAttr;
  -    extern const QualifiedName disabledAttr;
  -    extern const QualifiedName enctypeAttr;
  -    extern const QualifiedName faceAttr;
  -    extern const QualifiedName forAttrAttr;
  -    extern const QualifiedName frameAttr;
  -    extern const QualifiedName frameborderAttr;
  -    extern const QualifiedName headersAttr;
  -    extern const QualifiedName heightAttr;
  -    extern const QualifiedName hiddenAttr;
  -    extern const QualifiedName hrefAttr;
  -    extern const QualifiedName hreflangAttr;
  -    extern const QualifiedName hspaceAttr;
  -    extern const QualifiedName http_equivAttr;
  -    extern const QualifiedName idAttrAttr;
  -    extern const QualifiedName incrementalAttr;
  -    extern const QualifiedName ismapAttr;
  -    extern const QualifiedName keytypeAttr;
  -    extern const QualifiedName labelAttr;
  -    extern const QualifiedName langAttr;
  -    extern const QualifiedName languageAttr;
  -    extern const QualifiedName leftAttr;
  -    extern const QualifiedName leftmarginAttr;
  -    extern const QualifiedName linkAttr;
  -    extern const QualifiedName longdescAttr;
  -    extern const QualifiedName loopAttr;
  -    extern const QualifiedName marginheightAttr;
  -    extern const QualifiedName marginwidthAttr;
  -    extern const QualifiedName maxAttr;
  -    extern const QualifiedName maxlengthAttr;
  -    extern const QualifiedName mayscriptAttr;
  -    extern const QualifiedName mediaAttr;
  -    extern const QualifiedName methodAttr;
  -    extern const QualifiedName minAttr;
  -    extern const QualifiedName multipleAttr;
  -    extern const QualifiedName nameAttr;
  -    extern const QualifiedName nohrefAttr;
  -    extern const QualifiedName noresizeAttr;
  -    extern const QualifiedName noshadeAttr;
  -    extern const QualifiedName nowrapAttr;
  -    extern const QualifiedName objectAttr;
  -    extern const QualifiedName onabortAttr;
  -    extern const QualifiedName onbeforecopyAttr;
  -    extern const QualifiedName onbeforecutAttr;
  -    extern const QualifiedName onbeforepasteAttr;
  -    extern const QualifiedName onblurAttr;
  -    extern const QualifiedName onchangeAttr;
  -    extern const QualifiedName onclickAttr;
  -    extern const QualifiedName oncontextmenuAttr;
  -    extern const QualifiedName oncopyAttr;
  -    extern const QualifiedName oncutAttr;
  -    extern const QualifiedName ondblclickAttr;
  -    extern const QualifiedName ondragAttr;
  -    extern const QualifiedName ondragendAttr;
  -    extern const QualifiedName ondragenterAttr;
  -    extern const QualifiedName ondragleaveAttr;
  -    extern const QualifiedName ondragoverAttr;
  -    extern const QualifiedName ondragstartAttr;
  -    extern const QualifiedName ondropAttr;
  -    extern const QualifiedName onerrorAttr;
  -    extern const QualifiedName onfocusAttr;
  -    extern const QualifiedName oninputAttr;
  -    extern const QualifiedName onkeydownAttr;
  -    extern const QualifiedName onkeypressAttr;
  -    extern const QualifiedName onkeyupAttr;
  -    extern const QualifiedName onloadAttr;
  -    extern const QualifiedName onmousedownAttr;
  -    extern const QualifiedName onmousemoveAttr;
  -    extern const QualifiedName onmouseoutAttr;
  -    extern const QualifiedName onmouseoverAttr;
  -    extern const QualifiedName onmouseupAttr;
  -    extern const QualifiedName onmousewheelAttr;
  -    extern const QualifiedName onpasteAttr;
  -    extern const QualifiedName onresetAttr;
  -    extern const QualifiedName onresizeAttr;
  -    extern const QualifiedName onscrollAttr;
  -    extern const QualifiedName onsearchAttr;
  -    extern const QualifiedName onselectAttr;
  -    extern const QualifiedName onselectstartAttr;
  -    extern const QualifiedName onsubmitAttr;
  -    extern const QualifiedName onunloadAttr;
  -    extern const QualifiedName pagexAttr;
  -    extern const QualifiedName pageyAttr;
  -    extern const QualifiedName placeholderAttr;
  -    extern const QualifiedName plainAttr;
  -    extern const QualifiedName pluginpageAttr;
  -    extern const QualifiedName pluginspageAttr;
  -    extern const QualifiedName pluginurlAttr;
  -    extern const QualifiedName precisionAttr;
  -    extern const QualifiedName profileAttr;
  -    extern const QualifiedName promptAttr;
  -    extern const QualifiedName readonlyAttr;
  -    extern const QualifiedName relAttr;
  -    extern const QualifiedName resultsAttr;
  -    extern const QualifiedName revAttr;
  -    extern const QualifiedName rowsAttr;
  -    extern const QualifiedName rowspanAttr;
  -    extern const QualifiedName rulesAttr;
  -    extern const QualifiedName schemeAttr;
  -    extern const QualifiedName scopeAttr;
  -    extern const QualifiedName scrollamountAttr;
  -    extern const QualifiedName scrolldelayAttr;
  -    extern const QualifiedName scrollingAttr;
  -    extern const QualifiedName selectedAttr;
  -    extern const QualifiedName shapeAttr;
  -    extern const QualifiedName sizeAttr;
  -    extern const QualifiedName spanAttr;
  -    extern const QualifiedName srcAttr;
  -    extern const QualifiedName standbyAttr;
  -    extern const QualifiedName startAttr;
  -    extern const QualifiedName styleAttr;
  -    extern const QualifiedName summaryAttr;
  -    extern const QualifiedName tabindexAttr;
  -    extern const QualifiedName tableborderAttr;
  -    extern const QualifiedName targetAttr;
  -    extern const QualifiedName textAttr;
  -    extern const QualifiedName titleAttr;
  -    extern const QualifiedName topAttr;
  -    extern const QualifiedName topmarginAttr;
  -    extern const QualifiedName truespeedAttr;
  -    extern const QualifiedName typeAttr;
  -    extern const QualifiedName usemapAttr;
  -    extern const QualifiedName valignAttr;
  -    extern const QualifiedName valueAttr;
  -    extern const QualifiedName valuetypeAttr;
  -    extern const QualifiedName versionAttr;
  -    extern const QualifiedName vlinkAttr;
  -    extern const QualifiedName vspaceAttr;
  -    extern const QualifiedName widthAttr;
  -    extern const QualifiedName wrapAttr;
  -
  -#endif
  -
  -// FIXME: Make this a namespace instead of a class.
  -// FIXME: Rename this to HTMLTags
  -// FIXME: Just make the xhtmlNamespaceURI() a global outside of any class
  -class HTMLTags
  -{
  -public:
  -#if !KHTML_HTMLNAMES_HIDE_GLOBALS
  -    // The namespace URI.
  -    static const AtomicString& xhtmlNamespaceURI() { return xhtmlNamespaceURIAtom; }
  -    
  -// Full tag names.
  -#define DEFINE_TAG_GETTER(name) \
  -    static const QualifiedName& name() { return name ## Tag; }
  -
  -    DEFINE_TAG_GETTER(a)
  -    DEFINE_TAG_GETTER(abbr)
  -    DEFINE_TAG_GETTER(acronym)
  -    DEFINE_TAG_GETTER(address)
  -    DEFINE_TAG_GETTER(applet)
  -    DEFINE_TAG_GETTER(area)
  -    DEFINE_TAG_GETTER(b)
  -    DEFINE_TAG_GETTER(base)
  -    DEFINE_TAG_GETTER(basefont)
  -    DEFINE_TAG_GETTER(bdo)
  -    DEFINE_TAG_GETTER(big)
  -    DEFINE_TAG_GETTER(blockquote)
  -    DEFINE_TAG_GETTER(body)
  -    DEFINE_TAG_GETTER(br)
  -    DEFINE_TAG_GETTER(button)
  -    DEFINE_TAG_GETTER(canvas)
  -    DEFINE_TAG_GETTER(caption)
  -    DEFINE_TAG_GETTER(center)
  -    DEFINE_TAG_GETTER(cite)
  -    DEFINE_TAG_GETTER(code)
  -    DEFINE_TAG_GETTER(col)
  -    DEFINE_TAG_GETTER(colgroup)
  -    DEFINE_TAG_GETTER(dd)
  -    DEFINE_TAG_GETTER(del)
  -    DEFINE_TAG_GETTER(dfn)
  -    DEFINE_TAG_GETTER(dir)
  -    DEFINE_TAG_GETTER(div)
  -    DEFINE_TAG_GETTER(dl)
  -    DEFINE_TAG_GETTER(dt)
  -    DEFINE_TAG_GETTER(em)
  -    DEFINE_TAG_GETTER(embed)
  -    DEFINE_TAG_GETTER(fieldset)
  -    DEFINE_TAG_GETTER(font)
  -    DEFINE_TAG_GETTER(form)
  -    DEFINE_TAG_GETTER(frame)
  -    DEFINE_TAG_GETTER(frameset)
  -    DEFINE_TAG_GETTER(head)
  -    DEFINE_TAG_GETTER(h1)
  -    DEFINE_TAG_GETTER(h2)
  -    DEFINE_TAG_GETTER(h3)
  -    DEFINE_TAG_GETTER(h4)
  -    DEFINE_TAG_GETTER(h5)
  -    DEFINE_TAG_GETTER(h6)
  -    DEFINE_TAG_GETTER(hr)
  -    DEFINE_TAG_GETTER(html)
  -    DEFINE_TAG_GETTER(i)
  -    DEFINE_TAG_GETTER(iframe)
  -    DEFINE_TAG_GETTER(img)
  -    DEFINE_TAG_GETTER(input)
  -    DEFINE_TAG_GETTER(ins)
  -    DEFINE_TAG_GETTER(isindex)
  -    DEFINE_TAG_GETTER(kbd)
  -    DEFINE_TAG_GETTER(keygen)
  -    DEFINE_TAG_GETTER(label)
  -    DEFINE_TAG_GETTER(layer)
  -    DEFINE_TAG_GETTER(legend)
  -    DEFINE_TAG_GETTER(li)
  -    DEFINE_TAG_GETTER(link)
  -    DEFINE_TAG_GETTER(map)
  -    DEFINE_TAG_GETTER(marquee)
  -    DEFINE_TAG_GETTER(menu)
  -    DEFINE_TAG_GETTER(meta)
  -    DEFINE_TAG_GETTER(nobr)
  -    DEFINE_TAG_GETTER(noembed)
  -    DEFINE_TAG_GETTER(noframes)
  -    DEFINE_TAG_GETTER(nolayer)
  -    DEFINE_TAG_GETTER(noscript)
  -    DEFINE_TAG_GETTER(object)
  -    DEFINE_TAG_GETTER(ol)
  -    DEFINE_TAG_GETTER(optgroup)
  -    DEFINE_TAG_GETTER(option)
  -    DEFINE_TAG_GETTER(p)
  -    DEFINE_TAG_GETTER(param)
  -    DEFINE_TAG_GETTER(plaintext)
  -    DEFINE_TAG_GETTER(pre)
  -    DEFINE_TAG_GETTER(q)
  -    DEFINE_TAG_GETTER(s)
  -    DEFINE_TAG_GETTER(samp)
  -    DEFINE_TAG_GETTER(script)
  -    DEFINE_TAG_GETTER(select)
  -    DEFINE_TAG_GETTER(small)
  -    DEFINE_TAG_GETTER(span)
  -    DEFINE_TAG_GETTER(strike)
  -    DEFINE_TAG_GETTER(strong)
  -    DEFINE_TAG_GETTER(style)
  -    DEFINE_TAG_GETTER(sub)
  -    DEFINE_TAG_GETTER(sup)
  -    DEFINE_TAG_GETTER(table)
  -    DEFINE_TAG_GETTER(tbody)
  -    DEFINE_TAG_GETTER(td)
  -    DEFINE_TAG_GETTER(textarea)
  -    DEFINE_TAG_GETTER(tfoot)
  -    DEFINE_TAG_GETTER(th)
  -    DEFINE_TAG_GETTER(thead)
  -    DEFINE_TAG_GETTER(title)
  -    DEFINE_TAG_GETTER(tr)
  -    DEFINE_TAG_GETTER(tt)
  -    DEFINE_TAG_GETTER(u)
  -    DEFINE_TAG_GETTER(ul)
  -    DEFINE_TAG_GETTER(var)
  -    DEFINE_TAG_GETTER(wbr)
  -    DEFINE_TAG_GETTER(xmp)
  -#endif
  -
  -    // Init routine
  -    static void init();
  -};
  -
  -// FIXME: Make this a namespace instead of a class.
  -class HTMLAttributes
  -{
  -public:
   #if !KHTML_HTMLNAMES_HIDE_GLOBALS
  +    // Namespace
  +    extern const DOM::AtomicString  xhtmlNamespaceURI;
   
  -// Full tag names.
  -#define DEFINE_ATTR_GETTER(name) \
  -    static const QualifiedName& name() { return name ## Attr; }
  -
  -    // Attribute names.
  -    DEFINE_ATTR_GETTER(abbr)
  -    DEFINE_ATTR_GETTER(accept_charset)
  -    DEFINE_ATTR_GETTER(accept)
  -    DEFINE_ATTR_GETTER(accesskey)
  -    DEFINE_ATTR_GETTER(action)
  -    DEFINE_ATTR_GETTER(align)
  -    DEFINE_ATTR_GETTER(alink)
  -    DEFINE_ATTR_GETTER(alt)
  -    DEFINE_ATTR_GETTER(archive)
  -    DEFINE_ATTR_GETTER(autocomplete)
  -    DEFINE_ATTR_GETTER(autosave)
  -    DEFINE_ATTR_GETTER(axis)
  -    DEFINE_ATTR_GETTER(background)
  -    DEFINE_ATTR_GETTER(behavior)
  -    DEFINE_ATTR_GETTER(bgcolor)
  -    DEFINE_ATTR_GETTER(bgproperties)
  -    DEFINE_ATTR_GETTER(border)
  -    DEFINE_ATTR_GETTER(bordercolor)
  -    DEFINE_ATTR_GETTER(cellpadding)
  -    DEFINE_ATTR_GETTER(cellspacing)
  -    DEFINE_ATTR_GETTER(charAttr)
  -    DEFINE_ATTR_GETTER(challenge)
  -    DEFINE_ATTR_GETTER(charoff)
  -    DEFINE_ATTR_GETTER(charset)
  -    DEFINE_ATTR_GETTER(checked)
  -    DEFINE_ATTR_GETTER(cellborder)
  -    DEFINE_ATTR_GETTER(cite)
  -    DEFINE_ATTR_GETTER(classAttr)
  -    DEFINE_ATTR_GETTER(classid)
  -    DEFINE_ATTR_GETTER(clear)
  -    DEFINE_ATTR_GETTER(code)
  -    DEFINE_ATTR_GETTER(codebase)
  -    DEFINE_ATTR_GETTER(codetype)
  -    DEFINE_ATTR_GETTER(color)
  -    DEFINE_ATTR_GETTER(cols)
  -    DEFINE_ATTR_GETTER(colspan)
  -    DEFINE_ATTR_GETTER(compact)
  -    DEFINE_ATTR_GETTER(composite)
  -    DEFINE_ATTR_GETTER(content)
  -    DEFINE_ATTR_GETTER(contenteditable)
  -    DEFINE_ATTR_GETTER(coords)
  -    DEFINE_ATTR_GETTER(data)
  -    DEFINE_ATTR_GETTER(datetime)
  -    DEFINE_ATTR_GETTER(declare)
  -    DEFINE_ATTR_GETTER(defer)
  -    DEFINE_ATTR_GETTER(dir)
  -    DEFINE_ATTR_GETTER(direction)
  -    DEFINE_ATTR_GETTER(disabled)
  -    DEFINE_ATTR_GETTER(enctype)
  -    DEFINE_ATTR_GETTER(face)
  -    DEFINE_ATTR_GETTER(forAttr)
  -    DEFINE_ATTR_GETTER(frame)
  -    DEFINE_ATTR_GETTER(frameborder)
  -    DEFINE_ATTR_GETTER(headers)
  -    DEFINE_ATTR_GETTER(height)
  -    DEFINE_ATTR_GETTER(hidden)
  -    DEFINE_ATTR_GETTER(href)
  -    DEFINE_ATTR_GETTER(hreflang)
  -    DEFINE_ATTR_GETTER(hspace)
  -    DEFINE_ATTR_GETTER(http_equiv)
  -    DEFINE_ATTR_GETTER(idAttr)
  -    DEFINE_ATTR_GETTER(incremental)
  -    DEFINE_ATTR_GETTER(ismap)
  -    DEFINE_ATTR_GETTER(keytype)
  -    DEFINE_ATTR_GETTER(label)
  -    DEFINE_ATTR_GETTER(lang)
  -    DEFINE_ATTR_GETTER(language)
  -    DEFINE_ATTR_GETTER(left)
  -    DEFINE_ATTR_GETTER(leftmargin)
  -    DEFINE_ATTR_GETTER(link)
  -    DEFINE_ATTR_GETTER(longdesc)
  -    DEFINE_ATTR_GETTER(loop)
  -    DEFINE_ATTR_GETTER(marginheight)
  -    DEFINE_ATTR_GETTER(marginwidth)
  -    DEFINE_ATTR_GETTER(max)
  -    DEFINE_ATTR_GETTER(maxlength)
  -    DEFINE_ATTR_GETTER(mayscript)
  -    DEFINE_ATTR_GETTER(media)
  -    DEFINE_ATTR_GETTER(method)
  -    DEFINE_ATTR_GETTER(min)
  -    DEFINE_ATTR_GETTER(multiple)
  -    DEFINE_ATTR_GETTER(name)
  -    DEFINE_ATTR_GETTER(nohref)
  -    DEFINE_ATTR_GETTER(noresize)
  -    DEFINE_ATTR_GETTER(noshade)
  -    DEFINE_ATTR_GETTER(nowrap)
  -    DEFINE_ATTR_GETTER(object)
  -    DEFINE_ATTR_GETTER(onabort)
  -    DEFINE_ATTR_GETTER(onbeforecopy)
  -    DEFINE_ATTR_GETTER(onbeforecut)
  -    DEFINE_ATTR_GETTER(onbeforepaste)
  -    DEFINE_ATTR_GETTER(onblur)
  -    DEFINE_ATTR_GETTER(onchange)
  -    DEFINE_ATTR_GETTER(onclick)
  -    DEFINE_ATTR_GETTER(oncontextmenu)
  -    DEFINE_ATTR_GETTER(oncopy)
  -    DEFINE_ATTR_GETTER(oncut)
  -    DEFINE_ATTR_GETTER(ondblclick)
  -    DEFINE_ATTR_GETTER(ondrag)
  -    DEFINE_ATTR_GETTER(ondragend)
  -    DEFINE_ATTR_GETTER(ondragenter)
  -    DEFINE_ATTR_GETTER(ondragleave)
  -    DEFINE_ATTR_GETTER(ondragover)
  -    DEFINE_ATTR_GETTER(ondragstart)
  -    DEFINE_ATTR_GETTER(ondrop)
  -    DEFINE_ATTR_GETTER(onerror)
  -    DEFINE_ATTR_GETTER(onfocus)
  -    DEFINE_ATTR_GETTER(oninput)
  -    DEFINE_ATTR_GETTER(onkeydown)
  -    DEFINE_ATTR_GETTER(onkeypress)
  -    DEFINE_ATTR_GETTER(onkeyup)
  -    DEFINE_ATTR_GETTER(onload)
  -    DEFINE_ATTR_GETTER(onmousedown)
  -    DEFINE_ATTR_GETTER(onmousemove)
  -    DEFINE_ATTR_GETTER(onmouseout)
  -    DEFINE_ATTR_GETTER(onmouseover)
  -    DEFINE_ATTR_GETTER(onmouseup)
  -    DEFINE_ATTR_GETTER(onmousewheel)
  -    DEFINE_ATTR_GETTER(onpaste)
  -    DEFINE_ATTR_GETTER(onreset)
  -    DEFINE_ATTR_GETTER(onresize)
  -    DEFINE_ATTR_GETTER(onscroll)
  -    DEFINE_ATTR_GETTER(onsearch)
  -    DEFINE_ATTR_GETTER(onselect)
  -    DEFINE_ATTR_GETTER(onselectstart)
  -    DEFINE_ATTR_GETTER(onsubmit)
  -    DEFINE_ATTR_GETTER(onunload)
  -    DEFINE_ATTR_GETTER(pagex)
  -    DEFINE_ATTR_GETTER(pagey)
  -    DEFINE_ATTR_GETTER(placeholder)
  -    DEFINE_ATTR_GETTER(plain)
  -    DEFINE_ATTR_GETTER(pluginpage)
  -    DEFINE_ATTR_GETTER(pluginspage)
  -    DEFINE_ATTR_GETTER(pluginurl)
  -    DEFINE_ATTR_GETTER(precision)
  -    DEFINE_ATTR_GETTER(profile)
  -    DEFINE_ATTR_GETTER(prompt)
  -    DEFINE_ATTR_GETTER(readonly)
  -    DEFINE_ATTR_GETTER(rel)
  -    DEFINE_ATTR_GETTER(results)
  -    DEFINE_ATTR_GETTER(rev)
  -    DEFINE_ATTR_GETTER(rows)
  -    DEFINE_ATTR_GETTER(rowspan)
  -    DEFINE_ATTR_GETTER(rules)
  -    DEFINE_ATTR_GETTER(scheme)
  -    DEFINE_ATTR_GETTER(scope)
  -    DEFINE_ATTR_GETTER(scrollamount)
  -    DEFINE_ATTR_GETTER(scrolldelay)
  -    DEFINE_ATTR_GETTER(scrolling)
  -    DEFINE_ATTR_GETTER(selected)
  -    DEFINE_ATTR_GETTER(shape)
  -    DEFINE_ATTR_GETTER(size)
  -    DEFINE_ATTR_GETTER(span)
  -    DEFINE_ATTR_GETTER(src)
  -    DEFINE_ATTR_GETTER(standby)
  -    DEFINE_ATTR_GETTER(start)
  -    DEFINE_ATTR_GETTER(style)
  -    DEFINE_ATTR_GETTER(summary)
  -    DEFINE_ATTR_GETTER(tabindex)
  -    DEFINE_ATTR_GETTER(tableborder)
  -    DEFINE_ATTR_GETTER(target)
  -    DEFINE_ATTR_GETTER(text)
  -    DEFINE_ATTR_GETTER(title)
  -    DEFINE_ATTR_GETTER(top)
  -    DEFINE_ATTR_GETTER(topmargin)
  -    DEFINE_ATTR_GETTER(truespeed)
  -    DEFINE_ATTR_GETTER(type)
  -    DEFINE_ATTR_GETTER(usemap)
  -    DEFINE_ATTR_GETTER(valign)
  -    DEFINE_ATTR_GETTER(value)
  -    DEFINE_ATTR_GETTER(valuetype)
  -    DEFINE_ATTR_GETTER(version)
  -    DEFINE_ATTR_GETTER(vlink)
  -    DEFINE_ATTR_GETTER(vspace)
  -    DEFINE_ATTR_GETTER(width)
  -    DEFINE_ATTR_GETTER(wrap)
  +    // Tags
  +    extern const DOM::QualifiedName aTag;
  +    extern const DOM::QualifiedName abbrTag;
  +    extern const DOM::QualifiedName acronymTag;
  +    extern const DOM::QualifiedName addressTag;
  +    extern const DOM::QualifiedName appletTag;
  +    extern const DOM::QualifiedName areaTag;
  +    extern const DOM::QualifiedName bTag;
  +    extern const DOM::QualifiedName baseTag;
  +    extern const DOM::QualifiedName basefontTag;
  +    extern const DOM::QualifiedName bdoTag;
  +    extern const DOM::QualifiedName bigTag;
  +    extern const DOM::QualifiedName blockquoteTag;
  +    extern const DOM::QualifiedName bodyTag;
  +    extern const DOM::QualifiedName brTag;
  +    extern const DOM::QualifiedName buttonTag;
  +    extern const DOM::QualifiedName canvasTag;
  +    extern const DOM::QualifiedName captionTag;
  +    extern const DOM::QualifiedName centerTag;
  +    extern const DOM::QualifiedName citeTag;
  +    extern const DOM::QualifiedName codeTag;
  +    extern const DOM::QualifiedName colTag;
  +    extern const DOM::QualifiedName colgroupTag;
  +    extern const DOM::QualifiedName ddTag;
  +    extern const DOM::QualifiedName delTag;
  +    extern const DOM::QualifiedName dfnTag;
  +    extern const DOM::QualifiedName dirTag;
  +    extern const DOM::QualifiedName divTag;
  +    extern const DOM::QualifiedName dlTag;
  +    extern const DOM::QualifiedName dtTag;
  +    extern const DOM::QualifiedName emTag;
  +    extern const DOM::QualifiedName embedTag;
  +    extern const DOM::QualifiedName fieldsetTag;
  +    extern const DOM::QualifiedName fontTag;
  +    extern const DOM::QualifiedName formTag;
  +    extern const DOM::QualifiedName frameTag;
  +    extern const DOM::QualifiedName framesetTag;
  +    extern const DOM::QualifiedName headTag;
  +    extern const DOM::QualifiedName h1Tag;
  +    extern const DOM::QualifiedName h2Tag;
  +    extern const DOM::QualifiedName h3Tag;
  +    extern const DOM::QualifiedName h4Tag;
  +    extern const DOM::QualifiedName h5Tag;
  +    extern const DOM::QualifiedName h6Tag;
  +    extern const DOM::QualifiedName hrTag;
  +    extern const DOM::QualifiedName htmlTag;
  +    extern const DOM::QualifiedName iTag;
  +    extern const DOM::QualifiedName iframeTag;
  +    extern const DOM::QualifiedName imgTag;
  +    extern const DOM::QualifiedName inputTag;
  +    extern const DOM::QualifiedName insTag;
  +    extern const DOM::QualifiedName isindexTag;
  +    extern const DOM::QualifiedName kbdTag;
  +    extern const DOM::QualifiedName keygenTag;
  +    extern const DOM::QualifiedName labelTag;
  +    extern const DOM::QualifiedName layerTag;
  +    extern const DOM::QualifiedName legendTag;
  +    extern const DOM::QualifiedName liTag;
  +    extern const DOM::QualifiedName linkTag;
  +    extern const DOM::QualifiedName mapTag;
  +    extern const DOM::QualifiedName marqueeTag;
  +    extern const DOM::QualifiedName menuTag;
  +    extern const DOM::QualifiedName metaTag;
  +    extern const DOM::QualifiedName nobrTag;
  +    extern const DOM::QualifiedName noembedTag;
  +    extern const DOM::QualifiedName noframesTag;
  +    extern const DOM::QualifiedName nolayerTag;
  +    extern const DOM::QualifiedName noscriptTag;
  +    extern const DOM::QualifiedName objectTag;
  +    extern const DOM::QualifiedName olTag;
  +    extern const DOM::QualifiedName optgroupTag;
  +    extern const DOM::QualifiedName optionTag;
  +    extern const DOM::QualifiedName pTag;
  +    extern const DOM::QualifiedName paramTag;
  +    extern const DOM::QualifiedName plaintextTag;
  +    extern const DOM::QualifiedName preTag;
  +    extern const DOM::QualifiedName qTag;
  +    extern const DOM::QualifiedName sTag;
  +    extern const DOM::QualifiedName sampTag;
  +    extern const DOM::QualifiedName scriptTag;
  +    extern const DOM::QualifiedName selectTag;
  +    extern const DOM::QualifiedName smallTag;
  +    extern const DOM::QualifiedName spanTag;
  +    extern const DOM::QualifiedName strikeTag;
  +    extern const DOM::QualifiedName strongTag;
  +    extern const DOM::QualifiedName styleTag;
  +    extern const DOM::QualifiedName subTag;
  +    extern const DOM::QualifiedName supTag;
  +    extern const DOM::QualifiedName tableTag;
  +    extern const DOM::QualifiedName tbodyTag;
  +    extern const DOM::QualifiedName tdTag;
  +    extern const DOM::QualifiedName textareaTag;
  +    extern const DOM::QualifiedName tfootTag;
  +    extern const DOM::QualifiedName thTag;
  +    extern const DOM::QualifiedName theadTag;
  +    extern const DOM::QualifiedName titleTag;
  +    extern const DOM::QualifiedName trTag;
  +    extern const DOM::QualifiedName ttTag;
  +    extern const DOM::QualifiedName uTag;
  +    extern const DOM::QualifiedName ulTag;
  +    extern const DOM::QualifiedName varTag;
  +    extern const DOM::QualifiedName wbrTag;
  +    extern const DOM::QualifiedName xmpTag;
   
  +    // Attributes
  +    extern const DOM::QualifiedName abbrAttr;
  +    extern const DOM::QualifiedName accept_charsetAttr;
  +    extern const DOM::QualifiedName acceptAttr;
  +    extern const DOM::QualifiedName accesskeyAttr;
  +    extern const DOM::QualifiedName actionAttr;
  +    extern const DOM::QualifiedName alignAttr;
  +    extern const DOM::QualifiedName alinkAttr;
  +    extern const DOM::QualifiedName altAttr;
  +    extern const DOM::QualifiedName archiveAttr;
  +    extern const DOM::QualifiedName autocompleteAttr;
  +    extern const DOM::QualifiedName autosaveAttr;
  +    extern const DOM::QualifiedName axisAttr;
  +    extern const DOM::QualifiedName backgroundAttr;
  +    extern const DOM::QualifiedName behaviorAttr;
  +    extern const DOM::QualifiedName bgcolorAttr;
  +    extern const DOM::QualifiedName bgpropertiesAttr;
  +    extern const DOM::QualifiedName borderAttr;
  +    extern const DOM::QualifiedName bordercolorAttr;
  +    extern const DOM::QualifiedName cellpaddingAttr;
  +    extern const DOM::QualifiedName cellspacingAttr;
  +    extern const DOM::QualifiedName charAttr;
  +    extern const DOM::QualifiedName challengeAttr;
  +    extern const DOM::QualifiedName charoffAttr;
  +    extern const DOM::QualifiedName charsetAttr;
  +    extern const DOM::QualifiedName checkedAttr;
  +    extern const DOM::QualifiedName cellborderAttr;
  +    extern const DOM::QualifiedName citeAttr;
  +    extern const DOM::QualifiedName classAttr;
  +    extern const DOM::QualifiedName classidAttr;
  +    extern const DOM::QualifiedName clearAttr;
  +    extern const DOM::QualifiedName codeAttr;
  +    extern const DOM::QualifiedName codebaseAttr;
  +    extern const DOM::QualifiedName codetypeAttr;
  +    extern const DOM::QualifiedName colorAttr;
  +    extern const DOM::QualifiedName colsAttr;
  +    extern const DOM::QualifiedName colspanAttr;
  +    extern const DOM::QualifiedName compactAttr;
  +    extern const DOM::QualifiedName compositeAttr;
  +    extern const DOM::QualifiedName contentAttr;
  +    extern const DOM::QualifiedName contenteditableAttr;
  +    extern const DOM::QualifiedName coordsAttr;
  +    extern const DOM::QualifiedName dataAttr;
  +    extern const DOM::QualifiedName datetimeAttr;
  +    extern const DOM::QualifiedName declareAttr;
  +    extern const DOM::QualifiedName deferAttr;
  +    extern const DOM::QualifiedName dirAttr;
  +    extern const DOM::QualifiedName directionAttr;
  +    extern const DOM::QualifiedName disabledAttr;
  +    extern const DOM::QualifiedName enctypeAttr;
  +    extern const DOM::QualifiedName faceAttr;
  +    extern const DOM::QualifiedName forAttr;
  +    extern const DOM::QualifiedName frameAttr;
  +    extern const DOM::QualifiedName frameborderAttr;
  +    extern const DOM::QualifiedName headersAttr;
  +    extern const DOM::QualifiedName heightAttr;
  +    extern const DOM::QualifiedName hiddenAttr;
  +    extern const DOM::QualifiedName hrefAttr;
  +    extern const DOM::QualifiedName hreflangAttr;
  +    extern const DOM::QualifiedName hspaceAttr;
  +    extern const DOM::QualifiedName http_equivAttr;
  +    extern const DOM::QualifiedName idAttr;
  +    extern const DOM::QualifiedName incrementalAttr;
  +    extern const DOM::QualifiedName ismapAttr;
  +    extern const DOM::QualifiedName keytypeAttr;
  +    extern const DOM::QualifiedName labelAttr;
  +    extern const DOM::QualifiedName langAttr;
  +    extern const DOM::QualifiedName languageAttr;
  +    extern const DOM::QualifiedName leftAttr;
  +    extern const DOM::QualifiedName leftmarginAttr;
  +    extern const DOM::QualifiedName linkAttr;
  +    extern const DOM::QualifiedName longdescAttr;
  +    extern const DOM::QualifiedName loopAttr;
  +    extern const DOM::QualifiedName marginheightAttr;
  +    extern const DOM::QualifiedName marginwidthAttr;
  +    extern const DOM::QualifiedName maxAttr;
  +    extern const DOM::QualifiedName maxlengthAttr;
  +    extern const DOM::QualifiedName mayscriptAttr;
  +    extern const DOM::QualifiedName mediaAttr;
  +    extern const DOM::QualifiedName methodAttr;
  +    extern const DOM::QualifiedName minAttr;
  +    extern const DOM::QualifiedName multipleAttr;
  +    extern const DOM::QualifiedName nameAttr;
  +    extern const DOM::QualifiedName nohrefAttr;
  +    extern const DOM::QualifiedName noresizeAttr;
  +    extern const DOM::QualifiedName noshadeAttr;
  +    extern const DOM::QualifiedName nowrapAttr;
  +    extern const DOM::QualifiedName objectAttr;
  +    extern const DOM::QualifiedName onabortAttr;
  +    extern const DOM::QualifiedName onbeforecopyAttr;
  +    extern const DOM::QualifiedName onbeforecutAttr;
  +    extern const DOM::QualifiedName onbeforepasteAttr;
  +    extern const DOM::QualifiedName onblurAttr;
  +    extern const DOM::QualifiedName onchangeAttr;
  +    extern const DOM::QualifiedName onclickAttr;
  +    extern const DOM::QualifiedName oncontextmenuAttr;
  +    extern const DOM::QualifiedName oncopyAttr;
  +    extern const DOM::QualifiedName oncutAttr;
  +    extern const DOM::QualifiedName ondblclickAttr;
  +    extern const DOM::QualifiedName ondragAttr;
  +    extern const DOM::QualifiedName ondragendAttr;
  +    extern const DOM::QualifiedName ondragenterAttr;
  +    extern const DOM::QualifiedName ondragleaveAttr;
  +    extern const DOM::QualifiedName ondragoverAttr;
  +    extern const DOM::QualifiedName ondragstartAttr;
  +    extern const DOM::QualifiedName ondropAttr;
  +    extern const DOM::QualifiedName onerrorAttr;
  +    extern const DOM::QualifiedName onfocusAttr;
  +    extern const DOM::QualifiedName oninputAttr;
  +    extern const DOM::QualifiedName onkeydownAttr;
  +    extern const DOM::QualifiedName onkeypressAttr;
  +    extern const DOM::QualifiedName onkeyupAttr;
  +    extern const DOM::QualifiedName onloadAttr;
  +    extern const DOM::QualifiedName onmousedownAttr;
  +    extern const DOM::QualifiedName onmousemoveAttr;
  +    extern const DOM::QualifiedName onmouseoutAttr;
  +    extern const DOM::QualifiedName onmouseoverAttr;
  +    extern const DOM::QualifiedName onmouseupAttr;
  +    extern const DOM::QualifiedName onmousewheelAttr;
  +    extern const DOM::QualifiedName onpasteAttr;
  +    extern const DOM::QualifiedName onresetAttr;
  +    extern const DOM::QualifiedName onresizeAttr;
  +    extern const DOM::QualifiedName onscrollAttr;
  +    extern const DOM::QualifiedName onsearchAttr;
  +    extern const DOM::QualifiedName onselectAttr;
  +    extern const DOM::QualifiedName onselectstartAttr;
  +    extern const DOM::QualifiedName onsubmitAttr;
  +    extern const DOM::QualifiedName onunloadAttr;
  +    extern const DOM::QualifiedName pagexAttr;
  +    extern const DOM::QualifiedName pageyAttr;
  +    extern const DOM::QualifiedName placeholderAttr;
  +    extern const DOM::QualifiedName plainAttr;
  +    extern const DOM::QualifiedName pluginpageAttr;
  +    extern const DOM::QualifiedName pluginspageAttr;
  +    extern const DOM::QualifiedName pluginurlAttr;
  +    extern const DOM::QualifiedName precisionAttr;
  +    extern const DOM::QualifiedName profileAttr;
  +    extern const DOM::QualifiedName promptAttr;
  +    extern const DOM::QualifiedName readonlyAttr;
  +    extern const DOM::QualifiedName relAttr;
  +    extern const DOM::QualifiedName resultsAttr;
  +    extern const DOM::QualifiedName revAttr;
  +    extern const DOM::QualifiedName rowsAttr;
  +    extern const DOM::QualifiedName rowspanAttr;
  +    extern const DOM::QualifiedName rulesAttr;
  +    extern const DOM::QualifiedName schemeAttr;
  +    extern const DOM::QualifiedName scopeAttr;
  +    extern const DOM::QualifiedName scrollamountAttr;
  +    extern const DOM::QualifiedName scrolldelayAttr;
  +    extern const DOM::QualifiedName scrollingAttr;
  +    extern const DOM::QualifiedName selectedAttr;
  +    extern const DOM::QualifiedName shapeAttr;
  +    extern const DOM::QualifiedName sizeAttr;
  +    extern const DOM::QualifiedName spanAttr;
  +    extern const DOM::QualifiedName srcAttr;
  +    extern const DOM::QualifiedName standbyAttr;
  +    extern const DOM::QualifiedName startAttr;
  +    extern const DOM::QualifiedName styleAttr;
  +    extern const DOM::QualifiedName summaryAttr;
  +    extern const DOM::QualifiedName tabindexAttr;
  +    extern const DOM::QualifiedName tableborderAttr;
  +    extern const DOM::QualifiedName targetAttr;
  +    extern const DOM::QualifiedName textAttr;
  +    extern const DOM::QualifiedName titleAttr;
  +    extern const DOM::QualifiedName topAttr;
  +    extern const DOM::QualifiedName topmarginAttr;
  +    extern const DOM::QualifiedName truespeedAttr;
  +    extern const DOM::QualifiedName typeAttr;
  +    extern const DOM::QualifiedName usemapAttr;
  +    extern const DOM::QualifiedName valignAttr;
  +    extern const DOM::QualifiedName valueAttr;
  +    extern const DOM::QualifiedName valuetypeAttr;
  +    extern const DOM::QualifiedName versionAttr;
  +    extern const DOM::QualifiedName vlinkAttr;
  +    extern const DOM::QualifiedName vspaceAttr;
  +    extern const DOM::QualifiedName widthAttr;
  +    extern const DOM::QualifiedName wrapAttr;
   #endif
   
       // Init routine
  -    static void init();
  -};
  -
  +    void initHTMLNames();
   }
   
   #endif
  
  
  
  1.100     +173 -173  WebCore/khtml/html/htmlparser.cpp
  
  Index: htmlparser.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/htmlparser.cpp,v
  retrieving revision 1.99
  retrieving revision 1.100
  diff -u -r1.99 -r1.100
  --- htmlparser.cpp	18 Jul 2005 21:52:26 -0000	1.99
  +++ htmlparser.cpp	30 Jul 2005 02:33:18 -0000	1.100
  @@ -200,7 +200,7 @@
       }
   
       // Apparently some sites use </br> instead of <br>.  Be compatible with IE and Firefox and treat this like <br>.
  -    if (t->isCloseTag(HTMLTags::br()) && doc()->inCompatMode())
  +    if (t->isCloseTag(brTag) && doc()->inCompatMode())
           t->beginTag = true;
   
       if (!t->beginTag) {
  @@ -210,8 +210,8 @@
   
       // ignore spaces, if we're not inside a paragraph or other inline code
       if (t->tagName == textAtom && t->text) {
  -        if (inBody && !skipMode() && current->localName() != HTMLTags::style() && current->localName() != HTMLTags::title() && 
  -            current->localName() != HTMLTags::script() && !t->text->containsOnlyWhitespace()) 
  +        if (inBody && !skipMode() && current->localName() != styleTag && current->localName() != titleTag && 
  +            current->localName() != scriptTag && !t->text->containsOnlyWhitespace()) 
               haveContent = true;
       }
   
  @@ -253,18 +253,18 @@
   
   static bool isTableSection(NodeImpl* n)
   {
  -    return n->hasTagName(HTMLTags::tbody()) || n->hasTagName(HTMLTags::tfoot()) || n->hasTagName(HTMLTags::thead());
  +    return n->hasTagName(tbodyTag) || n->hasTagName(tfootTag) || n->hasTagName(theadTag);
   }
   
   static bool isTablePart(NodeImpl* n)
   {
  -    return n->hasTagName(HTMLTags::tr()) || n->hasTagName(HTMLTags::td()) || n->hasTagName(HTMLTags::th()) ||
  +    return n->hasTagName(trTag) || n->hasTagName(tdTag) || n->hasTagName(thTag) ||
              isTableSection(n);
   }
   
   static bool isTableRelated(NodeImpl* n)
   {
  -    return n->hasTagName(HTMLTags::table()) || isTablePart(n);
  +    return n->hasTagName(tableTag) || isTablePart(n);
   }
   
   bool HTMLParser::insertNode(NodeImpl *n, bool flat)
  @@ -313,22 +313,22 @@
   
       // 1. Check out the element's tag name to decide how to deal with errors.
       if (n->isTextNode()) {
  -        if (current->hasTagName(HTMLTags::select()))
  +        if (current->hasTagName(selectTag))
               return false;
       } else if (n->isHTMLElement()) {
           HTMLElementImpl* h = static_cast<HTMLElementImpl*>(n);
  -        if (h->hasLocalName(HTMLTags::tr()) || h->hasLocalName(HTMLTags::th()) ||
  -            h->hasLocalName(HTMLTags::td())) {
  +        if (h->hasLocalName(trTag) || h->hasLocalName(thTag) ||
  +            h->hasLocalName(tdTag)) {
               if (inStrayTableContent && !isTableRelated(current)) {
                   // pop out to the nearest enclosing table-related tag.
                   while (blockStack && !isTableRelated(current))
                       popOneBlock();
                   return insertNode(n);
               }
  -        } else if (h->hasLocalName(HTMLTags::head())) {
  -            if (!current->isDocumentNode() && !current->hasTagName(HTMLTags::html()))
  +        } else if (h->hasLocalName(headTag)) {
  +            if (!current->isDocumentNode() && !current->hasTagName(htmlTag))
                   return false;
  -        } else if (h->hasLocalName(HTMLTags::meta()) || h->hasLocalName(HTMLTags::link()) || h->hasLocalName(HTMLTags::base())) {
  +        } else if (h->hasLocalName(metaTag) || h->hasLocalName(linkTag) || h->hasLocalName(baseTag)) {
               if (!head)
                   createHead();
               if (head) {
  @@ -339,9 +339,9 @@
                   } else
                       return false;
               }
  -        } else if (h->hasLocalName(HTMLTags::html())) {
  +        } else if (h->hasLocalName(htmlTag)) {
               if (!current->isDocumentNode() ) {
  -                if (doc()->firstChild()->hasTagName(HTMLTags::html())) {
  +                if (doc()->firstChild()->hasTagName(htmlTag)) {
                       // we have another <HTML> element.... apply attributes to existing one
                       // make sure we don't overwrite already existing attributes
                       NamedAttrMapImpl *map = static_cast<ElementImpl*>(n)->attributes(true);
  @@ -357,7 +357,7 @@
                   }
                   return false;
               }
  -        } else if (h->hasLocalName(HTMLTags::title()) || h->hasLocalName(HTMLTags::style())) {
  +        } else if (h->hasLocalName(titleTag) || h->hasLocalName(styleTag)) {
               if (!head)
                   createHead();
               if (head) {
  @@ -368,15 +368,15 @@
                       if (!n->attached() && HTMLWidget)
                           n->attach();
                   } else {
  -                    setSkipMode(HTMLTags::style());
  +                    setSkipMode(styleTag);
                       return false;
                   }
                   return true;
               } else if(inBody) {
  -                setSkipMode(HTMLTags::style());
  +                setSkipMode(styleTag);
                   return false;
               }
  -        } else if (h->hasLocalName(HTMLTags::body())) {
  +        } else if (h->hasLocalName(bodyTag)) {
               if (inBody && doc()->body()) {
                   // we have another <BODY> element.... apply attributes to existing one
                   // make sure we don't overwrite already existing attributes
  @@ -395,21 +395,21 @@
               }
               else if (!current->isDocumentNode())
                   return false;
  -        } else if (h->hasLocalName(HTMLTags::input())) {
  -            DOMString type = h->getAttribute(HTMLAttributes::type());
  +        } else if (h->hasLocalName(inputTag)) {
  +            DOMString type = h->getAttribute(typeAttr);
               if (strcasecmp(type, "hidden") == 0 && form) {
                   form->addChild(n);
                   if (!n->attached() && HTMLWidget)
                       n->attach();
                   return true;
               }
  -        } else if (h->hasLocalName(HTMLTags::dd()) || h->hasLocalName(HTMLTags::dt())) {
  +        } else if (h->hasLocalName(ddTag) || h->hasLocalName(dtTag)) {
               e = new HTMLDListElementImpl(document);
               if (insertNode(e)) {
                   insertNode(n);
                   return true;
               }
  -        } else if (h->hasLocalName(HTMLTags::area())) {
  +        } else if (h->hasLocalName(areaTag)) {
               if (map) {
                   map->addChild(n);
                   if (!n->attached() && HTMLWidget)
  @@ -419,12 +419,12 @@
               else
                   return false;
               return true;
  -        } else if (h->hasLocalName(HTMLTags::caption())) {
  +        } else if (h->hasLocalName(captionTag)) {
               if (isTablePart(current)) {
                   NodeImpl* tsection = current;
  -                if (current->hasTagName(HTMLTags::tr()))
  +                if (current->hasTagName(trTag))
                       tsection = current->parent();
  -                else if (current->hasTagName(HTMLTags::td()) || current->hasTagName(HTMLTags::th()))
  +                else if (current->hasTagName(tdTag) || current->hasTagName(thTag))
                       tsection = current->parent()->parent();
                   NodeImpl* table = tsection->parent();
                   int exceptioncode = 0;
  @@ -435,8 +435,8 @@
                   blockStack->strayTableContent = true;
                   return true;
               }
  -        } else if (h->hasLocalName(HTMLTags::thead()) || h->hasLocalName(HTMLTags::tbody()) ||
  -                   h->hasLocalName(HTMLTags::tfoot()) || h->hasLocalName(HTMLTags::colgroup())) {
  +        } else if (h->hasLocalName(theadTag) || h->hasLocalName(tbodyTag) ||
  +                   h->hasLocalName(tfootTag) || h->hasLocalName(colgroupTag)) {
               if (isTableRelated(current)) {
                   while (blockStack && isTablePart(current))
                       popOneBlock();
  @@ -449,13 +449,13 @@
       if (current->isHTMLElement()) {
           HTMLElementImpl* h = static_cast<HTMLElementImpl*>(current);
           const AtomicString& currentTagName = current->localName();
  -        if (h->hasLocalName(HTMLTags::html())) {
  +        if (h->hasLocalName(htmlTag)) {
               HTMLElementImpl* elt = n->isHTMLElement() ? static_cast<HTMLElementImpl*>(n) : 0;
  -            if (elt && (elt->hasLocalName(HTMLTags::script()) || elt->hasLocalName(HTMLTags::style()) ||
  -                elt->hasLocalName(HTMLTags::meta()) || elt->hasLocalName(HTMLTags::link()) ||
  -                elt->hasLocalName(HTMLTags::object()) || elt->hasLocalName(HTMLTags::embed()) ||
  -                elt->hasLocalName(HTMLTags::title()) || elt->hasLocalName(HTMLTags::isindex()) ||
  -                elt->hasLocalName(HTMLTags::base()))) {
  +            if (elt && (elt->hasLocalName(scriptTag) || elt->hasLocalName(styleTag) ||
  +                elt->hasLocalName(metaTag) || elt->hasLocalName(linkTag) ||
  +                elt->hasLocalName(objectTag) || elt->hasLocalName(embedTag) ||
  +                elt->hasLocalName(titleTag) || elt->hasLocalName(isindexTag) ||
  +                elt->hasLocalName(baseTag))) {
                   if (!head) {
                       head = new HTMLHeadElementImpl(document);
                       e = head;
  @@ -475,8 +475,8 @@
   					handled = true;
   				}
               }
  -        } else if (h->hasLocalName(HTMLTags::head())) {
  -            if (n->hasTagName(HTMLTags::html()))
  +        } else if (h->hasLocalName(headTag)) {
  +            if (n->hasTagName(htmlTag))
                   return false;
               else {
                   // This means the body starts here...
  @@ -488,13 +488,13 @@
                       handled = true;
                   }
               }
  -        } else if (h->hasLocalName(HTMLTags::caption())) {
  +        } else if (h->hasLocalName(captionTag)) {
               // Illegal content in a caption. Close the caption and try again.
               popBlock(currentTagName);
               if (isTablePart(n))
                   return insertNode(n, flat);
  -        } else if (h->hasLocalName(HTMLTags::table()) || h->hasLocalName(HTMLTags::tr()) || isTableSection(h)) {
  -            if (n->hasTagName(HTMLTags::table())) {
  +        } else if (h->hasLocalName(tableTag) || h->hasLocalName(trTag) || isTableSection(h)) {
  +            if (n->hasTagName(tableTag)) {
                   popBlock(localName); // end the table
                   handled = true;      // ...and start a new one
               } else {
  @@ -517,13 +517,13 @@
                       NodeImpl *grandparent = parent->parentNode();
   
                       if (n->isTextNode() ||
  -                        (h->hasLocalName(HTMLTags::tr()) &&
  -                         isTableSection(parent) && grandparent->hasTagName(HTMLTags::table())) ||
  -                         ((!n->hasTagName(HTMLTags::td()) && !n->hasTagName(HTMLTags::th()) &&
  -                           !n->hasTagName(HTMLTags::form()) && !n->hasTagName(HTMLTags::script())) && isTableSection(node) &&
  -                         parent->hasTagName(HTMLTags::table()))) {
  -                        node = (node->hasTagName(HTMLTags::table())) ? node :
  -                                ((node->hasTagName(HTMLTags::tr())) ? grandparent : parent);
  +                        (h->hasLocalName(trTag) &&
  +                         isTableSection(parent) && grandparent->hasTagName(tableTag)) ||
  +                         ((!n->hasTagName(tdTag) && !n->hasTagName(thTag) &&
  +                           !n->hasTagName(formTag) && !n->hasTagName(scriptTag)) && isTableSection(node) &&
  +                         parent->hasTagName(tableTag))) {
  +                        node = (node->hasTagName(tableTag)) ? node :
  +                                ((node->hasTagName(trTag)) ? grandparent : parent);
                           NodeImpl *parent = node->parentNode();
                           parent->insertBefore(n, node, exceptionCode);
                           if (!exceptionCode) {
  @@ -540,10 +540,10 @@
                       }
   
                       if (!exceptionCode) {
  -                        if (current->hasTagName(HTMLTags::tr()))
  -                            e = new HTMLTableCellElementImpl(HTMLTags::td(), document);
  -                        else if (current->hasTagName(HTMLTags::table()))
  -                            e = new HTMLTableSectionElementImpl(HTMLTags::tbody(), document, true); // implicit 
  +                        if (current->hasTagName(trTag))
  +                            e = new HTMLTableCellElementImpl(tdTag, document);
  +                        else if (current->hasTagName(tableTag))
  +                            e = new HTMLTableSectionElementImpl(tbodyTag, document, true); // implicit 
                           else
                               e = new HTMLTableRowElementImpl(document);
                           
  @@ -553,46 +553,46 @@
                   }
               }
           }
  -        else if (h->hasLocalName(HTMLTags::object())) {
  -            setSkipMode(HTMLTags::object());
  +        else if (h->hasLocalName(objectTag)) {
  +            setSkipMode(objectTag);
               return false;
  -        } else if (h->hasLocalName(HTMLTags::ul()) || h->hasLocalName(HTMLTags::ol()) ||
  -                 h->hasLocalName(HTMLTags::dir()) || h->hasLocalName(HTMLTags::menu())) {
  +        } else if (h->hasLocalName(ulTag) || h->hasLocalName(olTag) ||
  +                 h->hasLocalName(dirTag) || h->hasLocalName(menuTag)) {
               e = new HTMLDivElementImpl(document);
               insertNode(e);
               handled = true;
  -        } else if (h->hasLocalName(HTMLTags::dl()) || h->hasLocalName(HTMLTags::dt())) {
  +        } else if (h->hasLocalName(dlTag) || h->hasLocalName(dtTag)) {
               popBlock(currentTagName);
               handled = true;
  -        } else if (h->hasLocalName(HTMLTags::select())) {
  +        } else if (h->hasLocalName(selectTag)) {
               if (isInline(n))
                   return false;
  -        } else if (h->hasLocalName(HTMLTags::p()) || isHeaderTag(currentTagName)) {
  +        } else if (h->hasLocalName(pTag) || isHeaderTag(currentTagName)) {
               if (!isInline(n)) {
                   popBlock(currentTagName);
                   handled = true;
               }
  -        } else if (h->hasLocalName(HTMLTags::option()) || h->hasLocalName(HTMLTags::optgroup())) {
  -            if (localName == HTMLTags::optgroup()) {
  +        } else if (h->hasLocalName(optionTag) || h->hasLocalName(optgroupTag)) {
  +            if (localName == optgroupTag) {
                   popBlock(currentTagName);
                   handled = true;
               }
  -            else if (localName == HTMLTags::select()) {
  +            else if (localName == selectTag) {
                   // IE treats a nested select as </select>. Let's do the same
                   popBlock(localName);
               }
  -        } else if (h->hasLocalName(HTMLTags::address())) {
  +        } else if (h->hasLocalName(addressTag)) {
               popBlock(currentTagName);
               handled = true;
  -        } else if (h->hasLocalName(HTMLTags::colgroup())) {
  +        } else if (h->hasLocalName(colgroupTag)) {
               if (!n->isTextNode()) {
                   popBlock(currentTagName);
                   handled = true;
               }
  -        } else if (h->hasLocalName(HTMLTags::font())) {
  +        } else if (h->hasLocalName(fontTag)) {
               popBlock(currentTagName);
               handled = true;
  -        } else if (!h->hasLocalName(HTMLTags::body())) {
  +        } else if (!h->hasLocalName(bodyTag)) {
               if (isInline(current)) {
                   popInlineBlocks();
                   handled = true;
  @@ -631,7 +631,7 @@
   
   bool HTMLParser::headCreateErrorCheck(Token* t, NodeImpl*& result)
   {
  -    return (!head || current->localName() == HTMLTags::html());
  +    return (!head || current->localName() == htmlTag);
   }
   
   bool HTMLParser::bodyCreateErrorCheck(Token* t, NodeImpl*& result)
  @@ -639,25 +639,25 @@
       // body no longer allowed if we have a frameset
       if (haveFrameSet)
           return false;
  -    popBlock(HTMLTags::head());
  +    popBlock(headTag);
       startBody();
       return true;
   }
   
   bool HTMLParser::framesetCreateErrorCheck(Token* t, NodeImpl*& result)
   {
  -    popBlock(HTMLTags::head());
  +    popBlock(headTag);
       if (inBody && !haveFrameSet && !haveContent) {
  -        popBlock(HTMLTags::body());
  +        popBlock(bodyTag);
           // ### actually for IE document.body returns the now hidden "body" element
           // we can't implement that behaviour now because it could cause too many
           // regressions and the headaches are not worth the work as long as there is
           // no site actually relying on that detail (Dirk)
           if (doc()->body())
  -            doc()->body()->setAttribute(HTMLAttributes::style(), "display:none");
  +            doc()->body()->setAttribute(styleAttr, "display:none");
           inBody = false;
       }
  -    if ((haveContent || haveFrameSet) && current->localName() == HTMLTags::html())
  +    if ((haveContent || haveFrameSet) && current->localName() == htmlTag)
           return false;
       haveFrameSet = true;
       startBody();
  @@ -667,7 +667,7 @@
   bool HTMLParser::iframeCreateErrorCheck(Token* t, NodeImpl*& result)
   {
       // a bit of a special case, since the frame is inlined
  -    setSkipMode(HTMLTags::iframe());
  +    setSkipMode(iframeTag);
       return true;
   }
   
  @@ -701,15 +701,15 @@
   
   bool HTMLParser::ddCreateErrorCheck(Token* t, NodeImpl*& result)
   {
  -    popBlock(HTMLTags::dt());
  -    popBlock(HTMLTags::dd());
  +    popBlock(dtTag);
  +    popBlock(ddTag);
       return true;
   }
   
   bool HTMLParser::dtCreateErrorCheck(Token* t, NodeImpl*& result)
   {
  -    popBlock(HTMLTags::dd());
  -    popBlock(HTMLTags::dt());
  +    popBlock(ddTag);
  +    popBlock(dtTag);
       return true;
   }
   
  @@ -726,35 +726,35 @@
   
   bool HTMLParser::tableCellCreateErrorCheck(Token* t, NodeImpl*& result)
   {
  -    popBlock(HTMLTags::td());
  -    popBlock(HTMLTags::th());
  +    popBlock(tdTag);
  +    popBlock(thTag);
       return true;
   }
   
   bool HTMLParser::tableSectionCreateErrorCheck(Token* t, NodeImpl*& result)
   {
  -    popBlock(HTMLTags::thead());
  -    popBlock(HTMLTags::tbody());
  -    popBlock(HTMLTags::tfoot());
  +    popBlock(theadTag);
  +    popBlock(tbodyTag);
  +    popBlock(tfootTag);
       return true;
   }
   
   bool HTMLParser::noembedCreateErrorCheck(Token* t, NodeImpl*& result)
   {
  -    setSkipMode(HTMLTags::noembed());
  +    setSkipMode(noembedTag);
       return false;
   }
   
   bool HTMLParser::noframesCreateErrorCheck(Token* t, NodeImpl*& result)
   {
  -    setSkipMode(HTMLTags::noframes());
  +    setSkipMode(noframesTag);
       return false;
   }
   
   bool HTMLParser::noscriptCreateErrorCheck(Token* t, NodeImpl*& result)
   {
       if (HTMLWidget && HTMLWidget->part()->jScriptEnabled())
  -        setSkipMode(HTMLTags::noscript());
  +        setSkipMode(noscriptTag);
       return false;
   }
   
  @@ -770,37 +770,37 @@
       if (gFunctionMap.isEmpty()) {
           gFunctionMap.insert(textAtom.implementation(), &HTMLParser::textCreateErrorCheck);
           gFunctionMap.insert(commentAtom.implementation(), &HTMLParser::commentCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::head().localName().implementation(), &HTMLParser::headCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::body().localName().implementation(), &HTMLParser::bodyCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::frameset().localName().implementation(), &HTMLParser::framesetCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::iframe().localName().implementation(), &HTMLParser::iframeCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::form().localName().implementation(), &HTMLParser::formCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::isindex().localName().implementation(), &HTMLParser::isindexCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::select().localName().implementation(), &HTMLParser::selectCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::dd().localName().implementation(), &HTMLParser::ddCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::dt().localName().implementation(), &HTMLParser::dtCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::li().localName().implementation(), &HTMLParser::nestedCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::a().localName().implementation(), &HTMLParser::nestedCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::nobr().localName().implementation(), &HTMLParser::nestedCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::wbr().localName().implementation(), &HTMLParser::nestedCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::tr().localName().implementation(), &HTMLParser::nestedCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::td().localName().implementation(), &HTMLParser::tableCellCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::th().localName().implementation(), &HTMLParser::tableCellCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::tbody().localName().implementation(), &HTMLParser::tableSectionCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::thead().localName().implementation(), &HTMLParser::tableSectionCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::tfoot().localName().implementation(), &HTMLParser::tableSectionCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::tt().localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::u().localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::b().localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::i().localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::s().localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::strike().localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::big().localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::small().localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::noembed().localName().implementation(), &HTMLParser::noembedCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::noframes().localName().implementation(), &HTMLParser::noframesCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::noscript().localName().implementation(), &HTMLParser::noscriptCreateErrorCheck);
  -        gFunctionMap.insert(HTMLTags::nolayer().localName().implementation(), &HTMLParser::nolayerCreateErrorCheck);
  +        gFunctionMap.insert(headTag.localName().implementation(), &HTMLParser::headCreateErrorCheck);
  +        gFunctionMap.insert(bodyTag.localName().implementation(), &HTMLParser::bodyCreateErrorCheck);
  +        gFunctionMap.insert(framesetTag.localName().implementation(), &HTMLParser::framesetCreateErrorCheck);
  +        gFunctionMap.insert(iframeTag.localName().implementation(), &HTMLParser::iframeCreateErrorCheck);
  +        gFunctionMap.insert(formTag.localName().implementation(), &HTMLParser::formCreateErrorCheck);
  +        gFunctionMap.insert(isindexTag.localName().implementation(), &HTMLParser::isindexCreateErrorCheck);
  +        gFunctionMap.insert(selectTag.localName().implementation(), &HTMLParser::selectCreateErrorCheck);
  +        gFunctionMap.insert(ddTag.localName().implementation(), &HTMLParser::ddCreateErrorCheck);
  +        gFunctionMap.insert(dtTag.localName().implementation(), &HTMLParser::dtCreateErrorCheck);
  +        gFunctionMap.insert(liTag.localName().implementation(), &HTMLParser::nestedCreateErrorCheck);
  +        gFunctionMap.insert(aTag.localName().implementation(), &HTMLParser::nestedCreateErrorCheck);
  +        gFunctionMap.insert(nobrTag.localName().implementation(), &HTMLParser::nestedCreateErrorCheck);
  +        gFunctionMap.insert(wbrTag.localName().implementation(), &HTMLParser::nestedCreateErrorCheck);
  +        gFunctionMap.insert(trTag.localName().implementation(), &HTMLParser::nestedCreateErrorCheck);
  +        gFunctionMap.insert(tdTag.localName().implementation(), &HTMLParser::tableCellCreateErrorCheck);
  +        gFunctionMap.insert(thTag.localName().implementation(), &HTMLParser::tableCellCreateErrorCheck);
  +        gFunctionMap.insert(tbodyTag.localName().implementation(), &HTMLParser::tableSectionCreateErrorCheck);
  +        gFunctionMap.insert(theadTag.localName().implementation(), &HTMLParser::tableSectionCreateErrorCheck);
  +        gFunctionMap.insert(tfootTag.localName().implementation(), &HTMLParser::tableSectionCreateErrorCheck);
  +        gFunctionMap.insert(ttTag.localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  +        gFunctionMap.insert(uTag.localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  +        gFunctionMap.insert(bTag.localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  +        gFunctionMap.insert(iTag.localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  +        gFunctionMap.insert(sTag.localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  +        gFunctionMap.insert(strikeTag.localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  +        gFunctionMap.insert(bigTag.localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  +        gFunctionMap.insert(smallTag.localName().implementation(), &HTMLParser::nestedStyleCreateErrorCheck);
  +        gFunctionMap.insert(noembedTag.localName().implementation(), &HTMLParser::noembedCreateErrorCheck);
  +        gFunctionMap.insert(noframesTag.localName().implementation(), &HTMLParser::noframesCreateErrorCheck);
  +        gFunctionMap.insert(noscriptTag.localName().implementation(), &HTMLParser::noscriptCreateErrorCheck);
  +        gFunctionMap.insert(nolayerTag.localName().implementation(), &HTMLParser::nolayerCreateErrorCheck);
       }
   
       bool proceed = true;
  @@ -811,7 +811,7 @@
   
       if (proceed) {
           result = HTMLElementFactory::createHTMLElement(t->tagName, doc(), form);
  -        if (t->tagName == HTMLTags::form())
  +        if (t->tagName == formTag)
               form = static_cast<HTMLFormElementImpl*>(result);
       }
       return result;
  @@ -836,19 +836,19 @@
       // Support for really broken html.
       // we never close the body tag, since some stupid web pages close it before the actual end of the doc.
       // let's rely on the end() call to close things.
  -    if (t->tagName == HTMLTags::html() || t->tagName == HTMLTags::body())
  +    if (t->tagName == htmlTag || t->tagName == bodyTag)
           return;
       
  -    if (t->tagName == HTMLTags::form())
  +    if (t->tagName == formTag)
           form = 0;
  -    else if (t->tagName == HTMLTags::map())
  +    else if (t->tagName == mapTag)
           map = 0;
  -    else if (t->tagName == HTMLTags::select())
  +    else if (t->tagName == selectTag)
           inSelect = false;
           
       HTMLStackElem* oldElem = blockStack;
       popBlock(t->tagName);
  -    if (oldElem == blockStack && t->tagName == HTMLTags::p()) {
  +    if (oldElem == blockStack && t->tagName == pTag) {
           // We encountered a stray </p>.  Amazingly Gecko, WinIE, and MacIE all treat
           // this as a valid break, i.e., <p></p>.  So go ahead and make the empty
           // paragraph.
  @@ -865,12 +865,12 @@
   {
       static HashSet<DOMStringImpl*, PointerHash<DOMStringImpl*> > headerTags;
       if (headerTags.isEmpty()) {
  -        headerTags.insert(HTMLTags::h1().localName().implementation());
  -        headerTags.insert(HTMLTags::h2().localName().implementation());
  -        headerTags.insert(HTMLTags::h3().localName().implementation());
  -        headerTags.insert(HTMLTags::h4().localName().implementation());
  -        headerTags.insert(HTMLTags::h5().localName().implementation());
  -        headerTags.insert(HTMLTags::h6().localName().implementation());
  +        headerTags.insert(h1Tag.localName().implementation());
  +        headerTags.insert(h2Tag.localName().implementation());
  +        headerTags.insert(h3Tag.localName().implementation());
  +        headerTags.insert(h4Tag.localName().implementation());
  +        headerTags.insert(h5Tag.localName().implementation());
  +        headerTags.insert(h6Tag.localName().implementation());
       }
       
       return headerTags.contains(tagName.implementation());
  @@ -898,15 +898,15 @@
   
       if (node->isHTMLElement()) {
           HTMLElementImpl* e = static_cast<HTMLElementImpl*>(node);
  -        if (e->hasLocalName(HTMLTags::a()) || e->hasLocalName(HTMLTags::font()) || e->hasLocalName(HTMLTags::tt()) ||
  -            e->hasLocalName(HTMLTags::u()) || e->hasLocalName(HTMLTags::b()) || e->hasLocalName(HTMLTags::i()) ||
  -            e->hasLocalName(HTMLTags::s()) || e->hasLocalName(HTMLTags::strike()) || e->hasLocalName(HTMLTags::big()) ||
  -            e->hasLocalName(HTMLTags::small()) || e->hasLocalName(HTMLTags::em()) || e->hasLocalName(HTMLTags::strong()) ||
  -            e->hasLocalName(HTMLTags::dfn()) || e->hasLocalName(HTMLTags::code()) || e->hasLocalName(HTMLTags::samp()) ||
  -            e->hasLocalName(HTMLTags::kbd()) || e->hasLocalName(HTMLTags::var()) || e->hasLocalName(HTMLTags::cite()) ||
  -            e->hasLocalName(HTMLTags::abbr()) || e->hasLocalName(HTMLTags::acronym()) || e->hasLocalName(HTMLTags::sub()) ||
  -            e->hasLocalName(HTMLTags::sup()) || e->hasLocalName(HTMLTags::span()) || e->hasLocalName(HTMLTags::nobr()) ||
  -            e->hasLocalName(HTMLTags::wbr()))
  +        if (e->hasLocalName(aTag) || e->hasLocalName(fontTag) || e->hasLocalName(ttTag) ||
  +            e->hasLocalName(uTag) || e->hasLocalName(bTag) || e->hasLocalName(iTag) ||
  +            e->hasLocalName(sTag) || e->hasLocalName(strikeTag) || e->hasLocalName(bigTag) ||
  +            e->hasLocalName(smallTag) || e->hasLocalName(emTag) || e->hasLocalName(strongTag) ||
  +            e->hasLocalName(dfnTag) || e->hasLocalName(codeTag) || e->hasLocalName(sampTag) ||
  +            e->hasLocalName(kbdTag) || e->hasLocalName(varTag) || e->hasLocalName(citeTag) ||
  +            e->hasLocalName(abbrTag) || e->hasLocalName(acronymTag) || e->hasLocalName(subTag) ||
  +            e->hasLocalName(supTag) || e->hasLocalName(spanTag) || e->hasLocalName(nobrTag) ||
  +            e->hasLocalName(wbrTag))
               return true;
       }
       
  @@ -917,23 +917,23 @@
   {
       static HashSet<DOMStringImpl*, PointerHash<DOMStringImpl*> > residualStyleTags;
       if (residualStyleTags.isEmpty()) {
  -        residualStyleTags.insert(HTMLTags::a().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::font().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::tt().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::u().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::b().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::i().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::s().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::strike().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::big().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::small().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::em().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::strong().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::dfn().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::code().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::samp().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::kbd().localName().implementation());
  -        residualStyleTags.insert(HTMLTags::var().localName().implementation());
  +        residualStyleTags.insert(aTag.localName().implementation());
  +        residualStyleTags.insert(fontTag.localName().implementation());
  +        residualStyleTags.insert(ttTag.localName().implementation());
  +        residualStyleTags.insert(uTag.localName().implementation());
  +        residualStyleTags.insert(bTag.localName().implementation());
  +        residualStyleTags.insert(iTag.localName().implementation());
  +        residualStyleTags.insert(sTag.localName().implementation());
  +        residualStyleTags.insert(strikeTag.localName().implementation());
  +        residualStyleTags.insert(bigTag.localName().implementation());
  +        residualStyleTags.insert(smallTag.localName().implementation());
  +        residualStyleTags.insert(emTag.localName().implementation());
  +        residualStyleTags.insert(strongTag.localName().implementation());
  +        residualStyleTags.insert(dfnTag.localName().implementation());
  +        residualStyleTags.insert(codeTag.localName().implementation());
  +        residualStyleTags.insert(sampTag.localName().implementation());
  +        residualStyleTags.insert(kbdTag.localName().implementation());
  +        residualStyleTags.insert(varTag.localName().implementation());
       }
       
       return residualStyleTags.contains(tagName.implementation());
  @@ -946,24 +946,24 @@
   
       static HashSet<DOMStringImpl*, PointerHash<DOMStringImpl*> > affectedBlockTags;
       if (affectedBlockTags.isEmpty()) {
  -        affectedBlockTags.insert(HTMLTags::h1().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::h2().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::h3().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::h4().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::h5().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::h6().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::p().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::div().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::blockquote().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::address().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::center().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::ul().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::ol().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::li().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::dl().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::dt().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::dd().localName().implementation());
  -        affectedBlockTags.insert(HTMLTags::pre().localName().implementation());
  +        affectedBlockTags.insert(h1Tag.localName().implementation());
  +        affectedBlockTags.insert(h2Tag.localName().implementation());
  +        affectedBlockTags.insert(h3Tag.localName().implementation());
  +        affectedBlockTags.insert(h4Tag.localName().implementation());
  +        affectedBlockTags.insert(h5Tag.localName().implementation());
  +        affectedBlockTags.insert(h6Tag.localName().implementation());
  +        affectedBlockTags.insert(pTag.localName().implementation());
  +        affectedBlockTags.insert(divTag.localName().implementation());
  +        affectedBlockTags.insert(blockquoteTag.localName().implementation());
  +        affectedBlockTags.insert(addressTag.localName().implementation());
  +        affectedBlockTags.insert(centerTag.localName().implementation());
  +        affectedBlockTags.insert(ulTag.localName().implementation());
  +        affectedBlockTags.insert(olTag.localName().implementation());
  +        affectedBlockTags.insert(liTag.localName().implementation());
  +        affectedBlockTags.insert(dlTag.localName().implementation());
  +        affectedBlockTags.insert(dtTag.localName().implementation());
  +        affectedBlockTags.insert(ddTag.localName().implementation());
  +        affectedBlockTags.insert(preTag.localName().implementation());
       }
       
       return affectedBlockTags.contains(tagName.implementation());
  @@ -1219,13 +1219,13 @@
               // must also know that it is the root of malformed content inside a <tbody>/<tr>.
               if (strayTable && (inStrayTableContent < strayTable) && residualStyleStack) {
                   NodeImpl* curr = current;
  -                while (curr && !curr->hasTagName(HTMLTags::table()))
  +                while (curr && !curr->hasTagName(tableTag))
                       curr = curr->parentNode();
                   malformedTableParent = curr ? curr->parentNode() : 0;
               }
           }
           else {
  -            if (form && Elem->tagName == HTMLTags::form())
  +            if (form && Elem->tagName == formTag)
                   // A <form> is being closed prematurely (and this is
                   // malformed HTML).  Set an attribute on the form to clear out its
                   // bottom margin.
  @@ -1326,7 +1326,7 @@
           n = new HTMLDivElementImpl( document );
       NodeImpl *child = new HTMLHRElementImpl( document );
       n->addChild( child );
  -    AttributeImpl* a = t->attrs ? t->attrs->getAttributeItem(HTMLAttributes::prompt()) : 0;
  +    AttributeImpl* a = t->attrs ? t->attrs->getAttributeItem(promptAttr) : 0;
   #if APPLE_CHANGES
       DOMString text = searchableIndexIntroduction();
   #else
  @@ -1337,7 +1337,7 @@
       child = new TextImpl(document, text);
       n->addChild( child );
       child = new HTMLIsIndexElementImpl(document, myform);
  -    static_cast<ElementImpl *>(child)->setAttribute(HTMLAttributes::type(), "khtml_isindex");
  +    static_cast<ElementImpl *>(child)->setAttribute(typeAttr, "khtml_isindex");
       n->addChild( child );
       child = new HTMLHRElementImpl( document );
       n->addChild( child );
  
  
  
  1.103     +21 -22    WebCore/khtml/html/htmltokenizer.cpp
  
  Index: htmltokenizer.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/html/htmltokenizer.cpp,v
  retrieving revision 1.102
  retrieving revision 1.103
  diff -u -r1.102 -r1.103
  --- htmltokenizer.cpp	29 Jul 2005 23:42:48 -0000	1.102
  +++ htmltokenizer.cpp	30 Jul 2005 02:33:18 -0000	1.103
  @@ -64,8 +64,7 @@
   using DOM::commentAtom;
   using DOM::nullAtom;
   using DOM::textAtom;
  -using DOM::HTMLAttributes;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   using DOM::QualifiedName;
   using DOM::MappedAttributeImpl;
   using DOM::NamedMappedAttrMapImpl;
  @@ -453,10 +452,10 @@
               else {
                   processListing(TokenizerString(scriptCode, scriptCodeSize));
                   processToken();
  -                if ( style )         { currToken.tagName = HTMLTags::style().localName(); currToken.beginTag = false; }
  -                else if ( textarea ) { currToken.tagName = HTMLTags::textarea().localName(); currToken.beginTag = false; }
  -                else if ( title ) { currToken.tagName = HTMLTags::title().localName(); currToken.beginTag = false; }
  -                else if ( xmp )  { currToken.tagName = HTMLTags::xmp().localName(); currToken.beginTag = false; }
  +                if ( style )         { currToken.tagName = styleTag.localName(); currToken.beginTag = false; }
  +                else if ( textarea ) { currToken.tagName = textareaTag.localName(); currToken.beginTag = false; }
  +                else if ( title ) { currToken.tagName = titleTag.localName(); currToken.beginTag = false; }
  +                else if ( xmp )  { currToken.tagName = xmpTag.localName(); currToken.beginTag = false; }
                   processToken();
                   style = script = style = textarea = title = xmp = false;
                   tquote = NoQuote;
  @@ -527,7 +526,7 @@
       processListing(TokenizerString(scriptCode, scriptCodeSize));
       QString exScript( buffer, dest-buffer );
       processToken();
  -    currToken.tagName = HTMLTags::script().localName();
  +    currToken.tagName = scriptTag.localName();
       currToken.beginTag = false;
       processToken();
   
  @@ -1115,7 +1114,7 @@
                       // <script src="foo.js"/>.  Both Moz and Opera will honor this, despite it
                       // being bogus HTML.  They do not honor the "/" for other tags.  This behavior
                       // also deviates from WinIE, but in this case we'll just copy Moz and Opera.
  -                    if (currToken.tagName == HTMLTags::script() && curchar == '>' && attrName == "/")
  +                    if (currToken.tagName == scriptTag && curchar == '>' && attrName == "/")
                           currToken.flat = true;
                       break;
                   }
  @@ -1318,9 +1317,9 @@
   
               // Handle <script src="foo"/> like Mozilla/Opera. We have to do this now for Dashboard
               // compatibility.
  -            bool isSelfClosingScript = currToken.flat && currToken.beginTag && currToken.tagName == HTMLTags::script();
  +            bool isSelfClosingScript = currToken.flat && currToken.beginTag && currToken.tagName == scriptTag;
               bool beginTag = !currToken.flat && currToken.beginTag;
  -            if (currToken.beginTag && currToken.tagName == HTMLTags::script()) {
  +            if (currToken.beginTag && currToken.tagName == scriptTag) {
                   AttributeImpl* a = 0;
                   bool foundTypeAttribute = false;
                   scriptSrc = QString::null;
  @@ -1330,17 +1329,17 @@
                        parser->doc()->part()->jScriptEnabled() && /* jscript allowed at all? */
                        view /* are we a regular tokenizer or just for innerHTML ? */
                       ) {
  -                    if ((a = currToken.attrs->getAttributeItem(HTMLAttributes::src())))
  +                    if ((a = currToken.attrs->getAttributeItem(srcAttr)))
                           scriptSrc = parser->doc()->completeURL(parseURL( a->value() ).string() );
  -                    if ((a = currToken.attrs->getAttributeItem(HTMLAttributes::charset())))
  +                    if ((a = currToken.attrs->getAttributeItem(charsetAttr)))
                           scriptSrcCharset = a->value().string().stripWhiteSpace();
                       if ( scriptSrcCharset.isEmpty() )
                           scriptSrcCharset = parser->doc()->part()->encoding();
                       /* Check type before language, since language is deprecated */
  -                    if ((a = currToken.attrs->getAttributeItem(HTMLAttributes::type())) != 0 && !a->value().string().isEmpty())
  +                    if ((a = currToken.attrs->getAttributeItem(typeAttr)) != 0 && !a->value().string().isEmpty())
                           foundTypeAttribute = true;
                       else
  -                        a = currToken.attrs->getAttributeItem(HTMLAttributes::language());
  +                        a = currToken.attrs->getAttributeItem(languageAttr);
                   }
                   javascript = true;
   
  @@ -1395,9 +1394,9 @@
   
               processToken();
   
  -            if (tagName == HTMLTags::pre()) {
  +            if (tagName == preTag) {
                   discard = LFDiscard; // Discard the first LF after we open a pre.
  -            } else if (tagName == HTMLTags::script()) {
  +            } else if (tagName == scriptTag) {
                   if (beginTag) {
                       searchStopper = scriptEnd;
                       searchStopperLen = 8;
  @@ -1407,37 +1406,37 @@
                       script = true;
                       scriptHandler();
                   }
  -            } else if (tagName == HTMLTags::style()) {
  +            } else if (tagName == styleTag) {
                   if (beginTag) {
                       searchStopper = styleEnd;
                       searchStopperLen = 7;
                       style = true;
                       parseSpecial(src);
                   }
  -            } else if (tagName == HTMLTags::textarea()) {
  +            } else if (tagName == textareaTag) {
                   if(beginTag) {
                       searchStopper = textareaEnd;
                       searchStopperLen = 10;
                       textarea = true;
                       parseSpecial(src);
                   }
  -            } else if (tagName == HTMLTags::title()) {
  +            } else if (tagName == titleTag) {
                    if (beginTag) {
                       searchStopper = titleEnd;
                       searchStopperLen = 7;
                       title = true;
                       parseSpecial(src);
                   }
  -            } else if (tagName == HTMLTags::xmp()) {
  +            } else if (tagName == xmpTag) {
                   if (beginTag) {
                       searchStopper = xmpEnd;
                       searchStopperLen = 5;
                       xmp = true;
                       parseSpecial(src);
                   }
  -            } else if (tagName == HTMLTags::select())
  +            } else if (tagName == selectTag)
                   select = beginTag;
  -            else if (tagName == HTMLTags::plaintext())
  +            else if (tagName == plaintextTag)
                   plaintext = beginTag;
               return; // Finished parsing tag!
           }
  
  
  
  1.39      +7 -7      WebCore/khtml/misc/decoder.cpp
  
  Index: decoder.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/misc/decoder.cpp,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- decoder.cpp	18 Jul 2005 21:52:30 -0000	1.38
  +++ decoder.cpp	30 Jul 2005 02:33:21 -0000	1.39
  @@ -42,7 +42,7 @@
   #include "htmlnames.h"
   
   using DOM::AtomicString;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   using DOM::nullAtom;
   
   class KanjiCode
  @@ -531,7 +531,7 @@
                       }
   		    tmp[len] = 0;
                       AtomicString tag(tmp);
  -                    if (!end && tag == HTMLTags::meta()) {
  +                    if (!end && tag == metaTag) {
                           // found a meta tag...
                           //ptr += 5;
                           const char * end = ptr;
  @@ -570,11 +570,11 @@
   
   			    pos = endpos + 1;
   			}
  -		    } else if (tag != HTMLTags::script() && tag != HTMLTags::noscript() && tag != HTMLTags::style() &&
  -                               tag != HTMLTags::link() && tag != HTMLTags::meta() && tag != HTMLTags::object() &&
  -                               tag != HTMLTags::title() && tag != HTMLTags::base() && 
  -                               (end || tag != HTMLTags::html()) &&
  -                               (end || tag != HTMLTags::head()) && isalpha(tmp[0])) {
  +		    } else if (tag != scriptTag && tag != noscriptTag && tag != styleTag &&
  +                               tag != linkTag && tag != metaTag && tag != objectTag &&
  +                               tag != titleTag && tag != baseTag && 
  +                               (end || tag != htmlTag) &&
  +                               (end || tag != headTag) && isalpha(tmp[0])) {
                           body = true;
   #ifdef DECODE_DEBUG
   			kdDebug( 6005 ) << "Decoder: no charset found. Id=" << id << endl;
  
  
  
  1.11      +1 -1      WebCore/khtml/misc/hashtable.h
  
  Index: hashtable.h
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/misc/hashtable.h,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- hashtable.h	14 Jul 2005 04:48:44 -0000	1.10
  +++ hashtable.h	30 Jul 2005 02:33:21 -0000	1.11
  @@ -292,8 +292,8 @@
           else if (EqualT(extractKey(*entry), key))
               return makeLookupResult(entry, true, h);
   #if DUMP_HASHTABLE_STATS
  -        HashTableStats::recordCollisionAtCount(probeCount);
           ++probeCount;
  +        HashTableStats::recordCollisionAtCount(probeCount);
   #endif
           if (k == 0)
               k = 1 | (h % sizeMask);
  
  
  
  1.33      +2 -1      WebCore/khtml/rendering/render_applet.cpp
  
  Index: render_applet.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_applet.cpp,v
  retrieving revision 1.32
  retrieving revision 1.33
  diff -u -r1.32 -r1.33
  --- render_applet.cpp	18 Jul 2005 21:52:31 -0000	1.32
  +++ render_applet.cpp	30 Jul 2005 02:33:22 -0000	1.33
  @@ -38,6 +38,7 @@
   #include "java/kjavaappletwidget.h"
   #include "html/html_objectimpl.h"
   
  +using namespace HTMLNames;
   using namespace khtml;
   using namespace DOM;
   
  @@ -102,7 +103,7 @@
                            m_height - borderTop() - borderBottom() - paddingTop() - paddingBottom();
               NodeImpl *child = element()->firstChild();
               while (child) {
  -                if (child->hasTagName(HTMLTags::param())) {
  +                if (child->hasTagName(paramTag)) {
                       HTMLParamElementImpl *p = static_cast<HTMLParamElementImpl *>(child);
                       m_args.insert(p->name().string(), p->value().string());
                   }
  
  
  
  1.195     +2 -1      WebCore/khtml/rendering/render_block.cpp
  
  Index: render_block.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_block.cpp,v
  retrieving revision 1.194
  retrieving revision 1.195
  diff -u -r1.194 -r1.195
  --- render_block.cpp	29 Jul 2005 23:42:49 -0000	1.194
  +++ render_block.cpp	30 Jul 2005 02:33:22 -0000	1.195
  @@ -43,6 +43,7 @@
   #include "khtml_part.h"
   
   using namespace DOM;
  +using namespace HTMLNames;
   
   namespace khtml {
   
  @@ -479,7 +480,7 @@
           m_topMarginQuirk = style()->marginTop().quirk;
           m_bottomMarginQuirk = style()->marginBottom().quirk;
   
  -        if (element() && element()->hasTagName(HTMLTags::form()) && element()->isMalformed())
  +        if (element() && element()->hasTagName(formTag) && element()->isMalformed())
               // See if this form is malformed (i.e., unclosed). If so, don't give the form
               // a bottom margin.
               m_maxBottomPosMargin = m_maxBottomNegMargin = 0;
  
  
  
  1.160     +4 -3      WebCore/khtml/rendering/render_box.cpp
  
  Index: render_box.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_box.cpp,v
  retrieving revision 1.159
  retrieving revision 1.160
  diff -u -r1.159 -r1.160
  --- render_box.cpp	27 Jul 2005 01:12:28 -0000	1.159
  +++ render_box.cpp	30 Jul 2005 02:33:22 -0000	1.160
  @@ -47,6 +47,7 @@
   
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   #define TABLECELLMARGIN -0x4000
  @@ -256,7 +257,7 @@
           // anonymous blocks created by inline <body> tags etc.  We can locate the <body>
           // render object very easily via the DOM.
           HTMLElementImpl* body = document()->body();
  -        RenderObject* bodyObject = (body && body->hasLocalName(HTMLTags::body())) ? body->renderer() : 0;
  +        RenderObject* bodyObject = (body && body->hasLocalName(bodyTag)) ? body->renderer() : 0;
           if (bodyObject) {
               bgLayer = bodyObject->style()->backgroundLayers();
               bgColor = bodyObject->style()->backgroundColor();
  @@ -373,7 +374,7 @@
           bool isTransparent;
           DOM::NodeImpl* elt = document()->ownerElement();
           if (elt) {
  -            if (elt->hasTagName(HTMLTags::frame()))
  +            if (elt->hasTagName(frameTag))
                   isTransparent = false;
               else {
                   // Locate the <body> element using the DOM.  This is easier than trying
  @@ -381,7 +382,7 @@
                   // anonymous blocks created by inline <body> tags etc.  We can locate the <body>
                   // render object very easily via the DOM.
                   HTMLElementImpl* body = document()->body();
  -                isTransparent = !body || !body->hasLocalName(HTMLTags::frameset()); // Can't scroll a frameset document anyway.
  +                isTransparent = !body || !body->hasLocalName(framesetTag); // Can't scroll a frameset document anyway.
               }
           } else
               isTransparent = canvas()->view()->isTransparent();
  
  
  
  1.17      +2 -1      WebCore/khtml/rendering/render_canvasimage.cpp
  
  Index: render_canvasimage.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_canvasimage.cpp,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- render_canvasimage.cpp	27 Jul 2005 01:53:16 -0000	1.16
  +++ render_canvasimage.cpp	30 Jul 2005 02:33:22 -0000	1.17
  @@ -57,6 +57,7 @@
   #endif
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   // -------------------------------------------------------------------------
  @@ -189,7 +190,7 @@
       }
       
       if (drawnImage()) {
  -        HTMLCanvasElementImpl* i = (element() && element()->hasTagName(HTMLTags::canvas())) ? static_cast<HTMLCanvasElementImpl*>(element()) : 0;
  +        HTMLCanvasElementImpl* i = (element() && element()->hasTagName(canvasTag)) ? static_cast<HTMLCanvasElementImpl*>(element()) : 0;
           int oldOperation = 0;
           if (i && !i->compositeOperator().isNull()){
               oldOperation = QPainter::getCompositeOperation(p->currentContext());
  
  
  
  1.163     +2 -1      WebCore/khtml/rendering/render_flow.cpp
  
  Index: render_flow.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_flow.cpp,v
  retrieving revision 1.162
  retrieving revision 1.163
  diff -u -r1.162 -r1.163
  --- render_flow.cpp	18 Jul 2005 21:52:31 -0000	1.162
  +++ render_flow.cpp	30 Jul 2005 02:33:22 -0000	1.163
  @@ -42,6 +42,7 @@
   #include "khtmlview.h"
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   RenderFlow* RenderFlow::createAnonymousFlow(DOM::DocumentImpl* doc, RenderStyle* style)
  @@ -653,7 +654,7 @@
       // Only paint focus ring around outermost contenteditable element.
       // But skip the body element if it is outermost.
       if (element() && element()->isContentEditable()) {
  -        if (element()->parentNode() && !element()->parentNode()->isContentEditable() && !element()->hasTagName(HTMLTags::body()))
  +        if (element()->parentNode() && !element()->parentNode()->isContentEditable() && !element()->hasTagName(bodyTag))
               p->addFocusRingRect(_tx, _ty, width(), height());
           return;
       }
  
  
  
  1.112     +21 -20    WebCore/khtml/rendering/render_form.cpp
  
  Index: render_form.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_form.cpp,v
  retrieving revision 1.111
  retrieving revision 1.112
  diff -u -r1.111 -r1.112
  --- render_form.cpp	18 Jul 2005 21:52:31 -0000	1.111
  +++ render_form.cpp	30 Jul 2005 02:33:23 -0000	1.112
  @@ -49,6 +49,7 @@
   #include "KWQSlider.h"
   #endif
   
  +using namespace HTMLNames;
   using namespace khtml;
   using namespace DOM;
   
  @@ -693,10 +694,10 @@
       
   #if APPLE_CHANGES
       // Handle updating the search attributes.
  -    w->setPlaceholderString(e->getAttribute(HTMLAttributes::placeholder()).string());
  +    w->setPlaceholderString(e->getAttribute(placeholderAttr).string());
       if (w->type() == QLineEdit::Search) {
  -        w->setLiveSearch(!e->getAttribute(HTMLAttributes::incremental()).isNull());
  -        w->setAutoSaveName(e->getAttribute(HTMLAttributes::autosave()).string());
  +        w->setLiveSearch(!e->getAttribute(incrementalAttr).isNull());
  +        w->setAutoSaveName(e->getAttribute(autosaveAttr).string());
           w->setMaxResults(e->maxResults());
       }
   #endif
  @@ -796,7 +797,7 @@
   {
       for (RenderObject* legend = firstChild(); legend; legend = legend->nextSibling()) {
         if (!legend->isFloatingOrPositioned() && legend->element() &&
  -          legend->element()->hasTagName(HTMLTags::legend()))
  +          legend->element()->hasTagName(legendTag))
           return legend;
       }
       return 0;
  @@ -1190,8 +1191,8 @@
               static_cast<KComboBox*>(m_widget)->clear();
   
           for (listIndex = 0; listIndex < int(listItems.size()); listIndex++) {
  -            if (listItems[listIndex]->hasTagName(HTMLTags::optgroup())) {
  -                QString label = listItems[listIndex]->getAttribute(HTMLAttributes::label()).string();
  +            if (listItems[listIndex]->hasTagName(optgroupTag)) {
  +                QString label = listItems[listIndex]->getAttribute(labelAttr).string();
                   label.replace(QChar('\\'), backslashAsCurrencySymbol());
   
                   // In WinIE, an optgroup can't start or end with whitespace (other than the indent
  @@ -1214,14 +1215,14 @@
                       static_cast<KComboBox*>(m_widget)->insertItem(label, listIndex);
   #endif
               }
  -            else if (listItems[listIndex]->hasTagName(HTMLTags::option())) {
  +            else if (listItems[listIndex]->hasTagName(optionTag)) {
                   QString itemText = static_cast<HTMLOptionElementImpl*>(listItems[listIndex])->text().string();
                   itemText.replace(QChar('\\'), backslashAsCurrencySymbol());
   
                   // In WinIE, leading and trailing whitespace is ignored in options. We match this behavior.
                   itemText = itemText.stripWhiteSpace();
                   
  -                if (listItems[listIndex]->parentNode()->hasTagName(HTMLTags::optgroup()))
  +                if (listItems[listIndex]->parentNode()->hasTagName(optgroupTag))
                       itemText.prepend("    ");
   
   #if APPLE_CHANGES
  @@ -1347,7 +1348,7 @@
   
       bool foundOption = false;
       for (uint i = 0; i < listItems.size() && !foundOption; i++)
  -	foundOption = (listItems[i]->hasTagName(HTMLTags::option()));
  +	foundOption = (listItems[i]->hasTagName(optionTag));
   
       m_widget->setEnabled(foundOption && ! element()->disabled());
   }
  @@ -1361,12 +1362,12 @@
       QMemArray<HTMLGenericFormElementImpl*> listItems = element()->listItems();
       if(index >= 0 && index < int(listItems.size()))
       {
  -        bool found = (listItems[index]->hasTagName(HTMLTags::option()));
  +        bool found = (listItems[index]->hasTagName(optionTag));
   
           if ( !found ) {
               // this one is not selectable,  we need to find an option element
               while ( ( unsigned ) index < listItems.size() ) {
  -                if (listItems[index]->hasTagName(HTMLTags::option())) {
  +                if (listItems[index]->hasTagName(optionTag)) {
                       found = true;
                       break;
                   }
  @@ -1375,7 +1376,7 @@
   
               if ( !found ) {
                   while ( index >= 0 ) {
  -                    if (listItems[index]->hasTagName(HTMLTags::option())) {
  +                    if (listItems[index]->hasTagName(optionTag)) {
                           found = true;
                           break;
                       }
  @@ -1389,7 +1390,7 @@
                   static_cast<ComboBoxWidget*>( m_widget )->setCurrentItem( index );
   
               for ( unsigned int i = 0; i < listItems.size(); ++i )
  -                if (listItems[i]->hasTagName(HTMLTags::option()) && i != (unsigned int) index)
  +                if (listItems[i]->hasTagName(optionTag) && i != (unsigned int) index)
                       static_cast<HTMLOptionElementImpl*>( listItems[i] )->m_selected = false;
   
               static_cast<HTMLOptionElementImpl*>(listItems[index])->m_selected = true;
  @@ -1410,7 +1411,7 @@
       for ( unsigned i = 0; i < listItems.count(); i++ )
           // don't use setSelected() here because it will cause us to be called
           // again with updateSelection.
  -        if (listItems[i]->hasTagName(HTMLTags::option()))
  +        if (listItems[i]->hasTagName(optionTag))
               static_cast<HTMLOptionElementImpl*>( listItems[i] )
                   ->m_selected = static_cast<KListBox*>( m_widget )->isSelected( i );
   
  @@ -1452,7 +1453,7 @@
           // if multi-select, we select only the new selected index
           KListBox *listBox = static_cast<KListBox*>(m_widget);
           for (i = 0; i < int(listItems.size()); i++)
  -            listBox->setSelected(i, listItems[i]->hasTagName(HTMLTags::option()) &&
  +            listBox->setSelected(i, listItems[i]->hasTagName(optionTag) &&
                                   static_cast<HTMLOptionElementImpl*>(listItems[i])->selected());
       }
       else {
  @@ -1460,7 +1461,7 @@
           unsigned firstOption = listItems.size();
           i = listItems.size();
           while (i--)
  -            if (listItems[i]->hasTagName(HTMLTags::option())) {
  +            if (listItems[i]->hasTagName(optionTag)) {
                   if (found)
                       static_cast<HTMLOptionElementImpl*>(listItems[i])->m_selected = false;
                   else if (static_cast<HTMLOptionElementImpl*>(listItems[i])->selected()) {
  @@ -1794,9 +1795,9 @@
   void RenderSlider::updateFromElement()
   {
       const DOMString& value = element()->value();
  -    const DOMString& min = element()->getAttribute(HTMLAttributes::min());
  -    const DOMString& max = element()->getAttribute(HTMLAttributes::max());
  -    const DOMString& precision = element()->getAttribute(HTMLAttributes::precision());
  +    const DOMString& min = element()->getAttribute(minAttr);
  +    const DOMString& max = element()->getAttribute(maxAttr);
  +    const DOMString& precision = element()->getAttribute(precisionAttr);
       
       double minVal = min.isNull() ? 0.0 : min.string().toDouble();
       double maxVal = max.isNull() ? 100.0 : max.string().toDouble();
  @@ -1825,7 +1826,7 @@
       QSlider* slider = (QSlider*)widget();
   
       double val = slider->value();
  -    const DOMString& precision = element()->getAttribute(HTMLAttributes::precision());
  +    const DOMString& precision = element()->getAttribute(precisionAttr);
   
       // Force integer value if not float (strcasecmp returns confusingly backward boolean).
       if (strcasecmp(precision, "float"))
  
  
  
  1.73      +15 -14    WebCore/khtml/rendering/render_frames.cpp
  
  Index: render_frames.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_frames.cpp,v
  retrieving revision 1.72
  retrieving revision 1.73
  diff -u -r1.72 -r1.73
  --- render_frames.cpp	18 Jul 2005 21:52:31 -0000	1.72
  +++ render_frames.cpp	30 Jul 2005 02:33:23 -0000	1.73
  @@ -48,6 +48,7 @@
   #include <qpainter.h>
   #include "qdict.h"
   
  +using namespace HTMLNames;
   using namespace khtml;
   using namespace DOM;
   
  @@ -667,17 +668,17 @@
   
     setNeedsLayoutAndMinMaxRecalc();
   
  -  if (element()->hasTagName(HTMLTags::object())) {
  +  if (element()->hasTagName(objectTag)) {
   
         HTMLObjectElementImpl *o = static_cast<HTMLObjectElementImpl *>(element());
   
         // Check for a child EMBED tag.
         HTMLEmbedElementImpl *embed = 0;
         for (NodeImpl *child = o->firstChild(); child; ) {
  -          if (child->hasTagName(HTMLTags::embed())) {
  +          if (child->hasTagName(embedTag)) {
                 embed = static_cast<HTMLEmbedElementImpl *>( child );
                 break;
  -          } else if (child->hasTagName(HTMLTags::object())) {
  +          } else if (child->hasTagName(objectTag)) {
                 child = child->nextSibling();         // Don't descend into nested OBJECT tags
             } else {
                 child = child->traverseNextNode(o);   // Otherwise descend (EMBEDs may be inside COMMENT tags)
  @@ -688,13 +689,13 @@
         HTMLElementImpl *embedOrObject;
         if (embed) {
             embedOrObject = (HTMLElementImpl *)embed;
  -          DOMString attribute = embedOrObject->getAttribute(HTMLAttributes::width());
  +          DOMString attribute = embedOrObject->getAttribute(widthAttr);
             if (!attribute.isEmpty()) {
  -              o->setAttribute(HTMLAttributes::width(), attribute);
  +              o->setAttribute(widthAttr, attribute);
             }
  -          attribute = embedOrObject->getAttribute(HTMLAttributes::height());
  +          attribute = embedOrObject->getAttribute(heightAttr);
             if (!attribute.isEmpty()) {
  -              o->setAttribute(HTMLAttributes::height(), attribute);
  +              o->setAttribute(heightAttr, attribute);
             }
             url = embed->url;
             serviceType = embed->serviceType;
  @@ -717,7 +718,7 @@
         // Get the attributes from the params if there is no EMBED tag.
         NodeImpl *child = o->firstChild();
         while (child && (url.isEmpty() || serviceType.isEmpty() || !embed)) {
  -          if (child->hasTagName(HTMLTags::param())) {
  +          if (child->hasTagName(paramTag)) {
                 HTMLParamElementImpl *p = static_cast<HTMLParamElementImpl *>( child );
                 QString name = p->name().string().lower();
                 if (url.isEmpty() && (name == "src" || name == "movie" || name == "code" || name == "url")) {
  @@ -802,20 +803,20 @@
               
   #if !APPLE_CHANGES      
         params.append( QString::fromLatin1("__KHTML__CLASSID=\"%1\"").arg( o->classId ) );
  -      params.append( QString::fromLatin1("__KHTML__CODEBASE=\"%1\"").arg( o->getAttribute(HTMLAttributes::codebase()).string() ) );
  +      params.append( QString::fromLatin1("__KHTML__CODEBASE=\"%1\"").arg( o->getAttribute(codebaseAttr).string() ) );
   #endif
   
         // Find out if we support fallback content.
         m_hasFallbackContent = false;
         for (NodeImpl *child = o->firstChild(); child && !m_hasFallbackContent; child = child->nextSibling()) {
  -          if ((!child->isTextNode() && !child->hasTagName(HTMLTags::embed()) && !child->hasTagName(HTMLTags::param())) || // Discount <embed> and <param>
  +          if ((!child->isTextNode() && !child->hasTagName(embedTag) && !child->hasTagName(paramTag)) || // Discount <embed> and <param>
                 (child->isTextNode() && !child->containsOnlyWhitespace()))
                 m_hasFallbackContent = true;
         }
         bool success = part->requestObject( this, url, serviceType, paramNames, paramValues );
         if (!success && m_hasFallbackContent)
             o->renderFallbackContent();
  -  } else if (element()->hasTagName(HTMLTags::embed())) {
  +  } else if (element()->hasTagName(embedTag)) {
   
         HTMLEmbedElementImpl *o = static_cast<HTMLEmbedElementImpl *>(element());
         url = o->url;
  @@ -842,7 +843,7 @@
         }
         part->requestObject( this, url, serviceType, paramNames, paramValues );
     } else {
  -      assert(element()->hasTagName(HTMLTags::iframe()));
  +      assert(element()->hasTagName(iframeTag));
         HTMLIFrameElementImpl *o = static_cast<HTMLIFrameElementImpl *>(element());
         url = o->m_URL.string();
         if (url.isEmpty()) {
  @@ -888,7 +889,7 @@
         QScrollView::ScrollBarMode scroll = QScrollView::Auto;
         int marginw = -1;
         int marginh = -1;
  -      if (element()->hasTagName(HTMLTags::iframe())) {
  +      if (element()->hasTagName(iframeTag)) {
   	  HTMLIFrameElementImpl *frame = static_cast<HTMLIFrameElementImpl *>(element());
   	  if(frame->m_frameBorder)
   	      frameStyle = QFrame::Box;
  @@ -908,7 +909,7 @@
             kdDebug(6031) << "frame is a KHTMLview!" << endl;
   #endif
             KHTMLView *htmlView = static_cast<KHTMLView *>(view);
  -          htmlView->setIgnoreWheelEvents(element()->hasTagName(HTMLTags::iframe()));
  +          htmlView->setIgnoreWheelEvents(element()->hasTagName(iframeTag));
             if(marginw != -1) htmlView->setMarginWidth(marginw);
             if(marginh != -1) htmlView->setMarginHeight(marginh);
           }
  
  
  
  1.84      +5 -4      WebCore/khtml/rendering/render_image.cpp
  
  Index: render_image.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_image.cpp,v
  retrieving revision 1.83
  retrieving revision 1.84
  diff -u -r1.83 -r1.84
  --- render_image.cpp	29 Jul 2005 23:42:50 -0000	1.83
  +++ render_image.cpp	30 Jul 2005 02:33:23 -0000	1.84
  @@ -48,6 +48,7 @@
   #include <cmath>
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   // -------------------------------------------------------------------------
  @@ -421,7 +422,7 @@
   
   
   //             p->drawPixmap( offs.x(), y, pix, rect.x(), rect.y(), rect.width(), rect.height() );
  -             HTMLImageElementImpl* i = (element() && element()->hasTagName(HTMLTags::img())) ? static_cast<HTMLImageElementImpl*>(element()) : 0;
  +             HTMLImageElementImpl* i = (element() && element()->hasTagName(imgTag)) ? static_cast<HTMLImageElementImpl*>(element()) : 0;
                if (i && !i->compositeOperator().isNull()){
                   p->drawPixmap (offs, pix, rect, i->compositeOperator());
                }
  @@ -488,7 +489,7 @@
   
   HTMLMapElementImpl* RenderImage::imageMap()
   {
  -    HTMLImageElementImpl* i = element()->hasTagName(HTMLTags::img()) ? static_cast<HTMLImageElementImpl*>(element()) : 0;
  +    HTMLImageElementImpl* i = element()->hasTagName(imgTag) ? static_cast<HTMLImageElementImpl*>(element()) : 0;
       return i ? i->getDocument()->getImageMap(i->imageMap()) : 0;
   }
   
  @@ -514,9 +515,9 @@
   
   void RenderImage::updateAltText()
   {
  -    if (element()->hasTagName(HTMLTags::input()))
  +    if (element()->hasTagName(inputTag))
           alt = static_cast<HTMLInputElementImpl*>(element())->altText();
  -    else if (element()->hasTagName(HTMLTags::img()))
  +    else if (element()->hasTagName(imgTag))
           alt = static_cast<HTMLImageElementImpl*>(element())->altText();
   }
   
  
  
  
  1.102     +2 -1      WebCore/khtml/rendering/render_layer.cpp
  
  Index: render_layer.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_layer.cpp,v
  retrieving revision 1.101
  retrieving revision 1.102
  diff -u -r1.101 -r1.102
  --- render_layer.cpp	29 Jul 2005 23:02:43 -0000	1.101
  +++ render_layer.cpp	30 Jul 2005 02:33:23 -0000	1.102
  @@ -64,6 +64,7 @@
   #define PAGE_KEEP   40
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   #ifdef APPLE_CHANGES
  @@ -1485,7 +1486,7 @@
   {
       int result = m_layer->renderer()->style()->marqueeSpeed();
       DOM::NodeImpl* elt = m_layer->renderer()->element();
  -    if (elt && elt->hasTagName(HTMLTags::marquee())) {
  +    if (elt && elt->hasTagName(marqueeTag)) {
           HTMLMarqueeElementImpl* marqueeElt = static_cast<HTMLMarqueeElementImpl*>(elt);
           result = kMax(result, marqueeElt->minimumDelay());
       }
  
  
  
  1.66      +2 -2      WebCore/khtml/rendering/render_list.cpp
  
  Index: render_list.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_list.cpp,v
  retrieving revision 1.65
  retrieving revision 1.66
  diff -u -r1.65 -r1.66
  --- render_list.cpp	29 Jul 2005 23:42:50 -0000	1.65
  +++ render_list.cpp	30 Jul 2005 02:33:23 -0000	1.66
  @@ -38,7 +38,7 @@
   //#define BOX_DEBUG
   
   using DOM::DocumentImpl;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   using namespace khtml;
   
   const int cMarkerPadding = 7;
  @@ -215,7 +215,7 @@
               break;
           
           if (currChild->style()->htmlHacks() && currChild->element() &&
  -            (currChild->element()->hasTagName(HTMLTags::ul())|| currChild->element()->hasTagName(HTMLTags::ol())))
  +            (currChild->element()->hasTagName(ulTag)|| currChild->element()->hasTagName(olTag)))
               break;
               
           RenderObject* lineBox = getParentOfFirstLineBox(currChild, marker);
  
  
  
  1.204     +8 -7      WebCore/khtml/rendering/render_object.cpp
  
  Index: render_object.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_object.cpp,v
  retrieving revision 1.203
  retrieving revision 1.204
  diff -u -r1.203 -r1.204
  --- render_object.cpp	29 Jul 2005 23:42:50 -0000	1.203
  +++ render_object.cpp	30 Jul 2005 02:33:23 -0000	1.204
  @@ -51,6 +51,7 @@
   
   #include <assert.h>
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   #ifndef NDEBUG
  @@ -174,17 +175,17 @@
   
   bool RenderObject::isBody() const
   {
  -    return element() && element()->renderer() == this && element()->hasTagName(HTMLTags::body());
  +    return element() && element()->renderer() == this && element()->hasTagName(bodyTag);
   }
   
   bool RenderObject::isHR() const
   {
  -    return element() && element()->hasTagName(HTMLTags::hr());
  +    return element() && element()->hasTagName(hrTag);
   }
   
   bool RenderObject::isHTMLMarquee() const
   {
  -    return element() && element()->renderer() == this && element()->hasTagName(HTMLTags::marquee());
  +    return element() && element()->renderer() == this && element()->hasTagName(marqueeTag);
   }
   
   bool RenderObject::canHaveChildren() const
  @@ -736,7 +737,7 @@
       // but they allow text to sit on the same line as the marquee.
       if (isFloating() || (isCompact() && isInline()) || 
           (isInlineBlockOrInlineTable() && !isHTMLMarquee()) ||
  -        (element() && (element()->hasTagName(HTMLTags::button()) || element()->hasTagName(HTMLTags::legend()))))
  +        (element() && (element()->hasTagName(buttonTag) || element()->hasTagName(legendTag))))
           return true;
       
       // Children of a horizontal marquee do not fill the container by default.
  @@ -1559,7 +1560,7 @@
           // The background of the root element or the body element could propagate up to
           // the canvas.  Just dirty the entire canvas when our style changes substantially.
           if (d >= RenderStyle::Repaint && element() &&
  -            (element()->hasTagName(HTMLTags::html()) || element()->hasTagName(HTMLTags::body())))
  +            (element()->hasTagName(htmlTag) || element()->hasTagName(bodyTag)))
               canvas()->repaint();
           else if (m_parent && !isText()) {
               // Do a repaint with the old style first, e.g., for example if we go from
  @@ -2189,7 +2190,7 @@
           if (curr && curr->isRenderBlock() && curr->continuation())
               curr = curr->continuation();
       } while (curr && decorations && (!quirksMode || !curr->element() ||
  -                                     (!curr->element()->hasTagName(HTMLTags::a()) && !curr->element()->hasTagName(HTMLTags::font()))));
  +                                     (!curr->element()->hasTagName(aTag) && !curr->element()->hasTagName(fontTag))));
   
       // If we bailed out, use the element we bailed out at (typically a <font> or <a> element).
       if (decorations && curr) {
  @@ -2323,7 +2324,7 @@
       // would avoid putting this function and the CachedObjectClient base class into RenderObject.
   
       if (image && image->pixmap_size() == image->valid_rect().size() && parent()) {
  -        if (canvas() && element() && (element()->hasTagName(HTMLTags::html()) || element()->hasTagName(HTMLTags::body())))
  +        if (canvas() && element() && (element()->hasTagName(htmlTag) || element()->hasTagName(bodyTag)))
               canvas()->repaint();    // repaint the entire canvas since the background gets propagated up
           else
               repaint();              // repaint object, which is a box or a container with boxes inside it
  
  
  
  1.130     +8 -7      WebCore/khtml/rendering/render_table.cpp
  
  Index: render_table.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_table.cpp,v
  retrieving revision 1.129
  retrieving revision 1.130
  diff -u -r1.129 -r1.130
  --- render_table.cpp	18 Jul 2005 21:52:32 -0000	1.129
  +++ render_table.cpp	30 Jul 2005 02:33:23 -0000	1.130
  @@ -44,6 +44,7 @@
   
   #include "khtmlview.h"
   
  +using namespace HTMLNames;
   using namespace khtml;
   using namespace DOM;
   
  @@ -111,7 +112,7 @@
   #endif
       RenderObject *o = child;
   
  -    if (child->element() && child->element()->hasTagName(HTMLTags::form())) {
  +    if (child->element() && child->element()->hasTagName(formTag)) {
           RenderContainer::addChild(child,beforeChild);
           return;
       }
  @@ -261,7 +262,7 @@
   
       RenderObject *child = firstChild();
       while( child ) {
  -	if ( child->needsLayout() && !(child->element() && child->element()->hasTagName(HTMLTags::form())))
  +	if ( child->needsLayout() && !(child->element() && child->element()->hasTagName(formTag)))
   	    child->layout();
   	if ( child->isTableSection() ) {
   	    static_cast<RenderTableSection *>(child)->calcRowHeight();
  @@ -848,7 +849,7 @@
   #endif
       RenderObject *row = child;
   
  -    if (child->element() && child->element()->hasTagName(HTMLTags::form())) {
  +    if (child->element() && child->element()->hasTagName(formTag)) {
           RenderContainer::addChild(child,beforeChild);
           return;
       }
  @@ -1494,7 +1495,7 @@
       kdDebug( 6040 ) << renderName() << "(TableRow)::addChild( " << child->renderName() << " )"  << ", " <<
                          (beforeChild ? beforeChild->renderName() : "0") << " )" << endl;
   #endif
  -    if (child->element() && child->element()->hasTagName(HTMLTags::form())) {
  +    if (child->element() && child->element()->hasTagName(formTag)) {
           RenderContainer::addChild(child,beforeChild);
           return;
       }
  @@ -1605,7 +1606,7 @@
       int oldRSpan = rSpan;
       int oldCSpan = cSpan;
       DOM::NodeImpl* node = element();
  -    if (node && (node->hasTagName(HTMLTags::td()) || node->hasTagName(HTMLTags::th()))) {
  +    if (node && (node->hasTagName(tdTag) || node->hasTagName(thTag))) {
           DOM::HTMLTableCellElementImpl *tc = static_cast<DOM::HTMLTableCellElementImpl *>(node);
           cSpan = tc->colSpan();
           rSpan = tc->rowSpan();
  @@ -1619,7 +1620,7 @@
       RenderBlock::calcMinMaxWidth();
       if (element() && style()->whiteSpace() == NORMAL) {
           // See if nowrap was set.
  -        DOMString nowrap = static_cast<ElementImpl*>(element())->getAttribute(HTMLAttributes::nowrap());
  +        DOMString nowrap = static_cast<ElementImpl*>(element())->getAttribute(nowrapAttr);
           if (!nowrap.isNull() && style()->width().isFixed())
               // Nowrap is set, but we didn't actually use it because of the
               // fixed width set on the cell.  Even so, it is a WinIE/Moz trait
  @@ -2289,7 +2290,7 @@
   {
       int oldSpan = _span;
       DOM::NodeImpl *node = element();
  -    if (node && (node->hasTagName(HTMLTags::col()) || node->hasTagName(HTMLTags::colgroup()))) {
  +    if (node && (node->hasTagName(colTag) || node->hasTagName(colgroupTag))) {
           DOM::HTMLTableColElementImpl *tc = static_cast<DOM::HTMLTableColElementImpl *>(node);
           _span = tc->span();
       } 
  
  
  
  1.7       +1 -1      WebCore/khtml/rendering/render_theme.cpp
  
  Index: render_theme.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/rendering/render_theme.cpp,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- render_theme.cpp	29 Jul 2005 02:40:40 -0000	1.6
  +++ render_theme.cpp	30 Jul 2005 02:33:23 -0000	1.7
  @@ -24,7 +24,7 @@
   #include "htmlnames.h"
   #include "html_formimpl.h"
   
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   using DOM::HTMLInputElementImpl;
   
   // The methods in this file are shared by all themes on every platform.
  
  
  
  1.242     +16 -15    WebCore/khtml/xml/dom_docimpl.cpp
  
  Index: dom_docimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/xml/dom_docimpl.cpp,v
  retrieving revision 1.241
  retrieving revision 1.242
  diff -u -r1.241 -r1.242
  --- dom_docimpl.cpp	29 Jul 2005 23:02:44 -0000	1.241
  +++ dom_docimpl.cpp	30 Jul 2005 02:33:25 -0000	1.242
  @@ -92,6 +92,7 @@
   #endif
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   // #define INSTRUMENT_LAYOUT_SCHEDULING 1
  @@ -623,7 +624,7 @@
           localName = _qualifiedName;
       
       // FIXME: Use registered namespaces and look up in a hash to find the right factory.
  -    if (_namespaceURI == HTMLTags::xhtmlNamespaceURI()) {
  +    if (_namespaceURI == xhtmlNamespaceURI) {
           // FIXME: Really should only be done from the public DOM API.  Internal callers know the name is valid.
           if (!isValidName(localName)) {
               exceptioncode = DOMException::INVALID_CHARACTER_ERR;
  @@ -664,7 +665,7 @@
               
               element = static_cast<ElementImpl *>(n);
               
  -            if (element->hasID() && element->getAttribute(HTMLAttributes::idAttr()) == elementId) {
  +            if (element->hasID() && element->getAttribute(idAttr) == elementId) {
                   if (idCount == 1) 
                       m_idCount.remove(qId);
                   else
  @@ -737,7 +738,7 @@
               if (!n->isElementNode())
                   continue;
               const ElementImpl *elementImpl = static_cast<const ElementImpl *>(n);
  -            DOMString accessKey(elementImpl->getAttribute(HTMLAttributes::accesskey()));;
  +            DOMString accessKey(elementImpl->getAttribute(accesskeyAttr));;
               if (!accessKey.isEmpty()) {
                   QString ak = accessKey.string().lower();
                   if (m_elementsByAccessKey.find(ak) == NULL)
  @@ -1269,10 +1270,10 @@
       // try to prefer a FRAMESET element over BODY
       NodeImpl* body = 0;
       for (NodeImpl* i = de->firstChild(); i; i = i->nextSibling()) {
  -        if (i->hasTagName(HTMLTags::frameset()))
  +        if (i->hasTagName(framesetTag))
               return static_cast<HTMLElementImpl*>(i);
           
  -        if (i->hasTagName(HTMLTags::body()))
  +        if (i->hasTagName(bodyTag))
               body = i;
       }
       return static_cast<HTMLElementImpl *>(body);
  @@ -1402,7 +1403,7 @@
       // (c) we have a <body>
       return (renderer() && renderer()->needsLayout() && haveStylesheetsLoaded() &&
               documentElement() && documentElement()->renderer() &&
  -            (!documentElement()->hasTagName(HTMLTags::html()) || body()));
  +            (!documentElement()->hasTagName(htmlTag) || body()));
   }
   
   int DocumentImpl::minimumLayoutDelay()
  @@ -1835,8 +1836,8 @@
           if (renderInfo.URLElement()) {
               assert(renderInfo.URLElement()->isElementNode());
               ElementImpl* e =  static_cast<ElementImpl*>(renderInfo.URLElement());
  -            DOMString href = khtml::parseURL(e->getAttribute(HTMLAttributes::href()));
  -            DOMString target = e->getAttribute(HTMLAttributes::target());
  +            DOMString href = khtml::parseURL(e->getAttribute(hrefAttr));
  +            DOMString target = e->getAttribute(targetAttr);
   
               if (!target.isNull() && !href.isNull()) {
                   ev->target = target;
  @@ -2024,11 +2025,11 @@
               }
   
           }
  -        else if (n->isHTMLElement() && (n->hasTagName(HTMLTags::link()) || n->hasTagName(HTMLTags::style()))) {
  +        else if (n->isHTMLElement() && (n->hasTagName(linkTag) || n->hasTagName(styleTag))) {
               HTMLElementImpl *e = static_cast<HTMLElementImpl *>(n);
  -            QString title = e->getAttribute(HTMLAttributes::title()).string();
  +            QString title = e->getAttribute(titleAttr).string();
               bool enabledViaScript = false;
  -            if (e->hasLocalName(HTMLTags::link())) {
  +            if (e->hasLocalName(linkTag)) {
                   // <LINK> element
                   HTMLLinkElementImpl* l = static_cast<HTMLLinkElementImpl*>(n);
                   if (l->isLoading() || l->isDisabled())
  @@ -2040,7 +2041,7 @@
   
               // Get the current preferred styleset.  This is the
               // set of sheets that will be enabled.
  -            if (e->hasLocalName(HTMLTags::link()))
  +            if (e->hasLocalName(linkTag))
                   sheet = static_cast<HTMLLinkElementImpl*>(n)->sheet();
               else
                   // <STYLE> element
  @@ -2056,8 +2057,8 @@
                       // we are NOT an alternate sheet, then establish
                       // us as the preferred set.  Otherwise, just ignore
                       // this sheet.
  -                    QString rel = e->getAttribute(HTMLAttributes::rel()).string();
  -                    if (e->hasLocalName(HTMLTags::style()) || !rel.contains("alternate"))
  +                    QString rel = e->getAttribute(relAttr).string();
  +                    if (e->hasLocalName(styleTag) || !rel.contains("alternate"))
                           m_preferredStylesheetSet = view()->part()->d->m_sheetUsed = title;
                   }
                         
  @@ -2076,7 +2077,7 @@
       
           // For HTML documents, stylesheets are not allowed within/after the <BODY> tag. So we
           // can stop searching here.
  -        if (isHTMLDocument() && n->hasTagName(HTMLTags::body()))
  +        if (isHTMLDocument() && n->hasTagName(bodyTag))
               break;
       }
   
  
  
  
  1.71      +22 -21    WebCore/khtml/xml/dom_elementimpl.cpp
  
  Index: dom_elementimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/xml/dom_elementimpl.cpp,v
  retrieving revision 1.70
  retrieving revision 1.71
  diff -u -r1.70 -r1.71
  --- dom_elementimpl.cpp	19 Jul 2005 22:41:47 -0000	1.70
  +++ dom_elementimpl.cpp	30 Jul 2005 02:33:26 -0000	1.71
  @@ -48,6 +48,7 @@
   #include <kdebug.h>
   
   using namespace DOM;
  +using namespace HTMLNames;
   using namespace khtml;
   
   AttributeImpl* AttributeImpl::clone(bool) const
  @@ -278,7 +279,7 @@
   
   const AtomicString& ElementImpl::getAttribute(const QualifiedName& name) const
   {
  -    if (name == HTMLAttributes::style())
  +    if (name == styleAttr)
           updateStyleAttributeIfNeeded();
   
       if (namedAttrMap) {
  @@ -328,7 +329,7 @@
           return;
       }
   
  -    if (name == HTMLAttributes::idAttr())
  +    if (name == idAttr)
   	updateId(old ? old->value() : nullAtom, value);
       
       if (old && !value)
  @@ -354,8 +355,8 @@
       // If setting the whole map changes the id attribute, we need to
       // call updateId.
   
  -    AttributeImpl *oldId = namedAttrMap ? namedAttrMap->getAttributeItem(HTMLAttributes::idAttr()) : 0;
  -    AttributeImpl *newId = list ? list->getAttributeItem(HTMLAttributes::idAttr()) : 0;
  +    AttributeImpl *oldId = namedAttrMap ? namedAttrMap->getAttributeItem(idAttr) : 0;
  +    AttributeImpl *newId = list ? list->getAttributeItem(idAttr) : 0;
   
       if (oldId || newId) {
   	updateId(oldId ? oldId->value() : nullAtom, newId ? newId->value() : nullAtom);
  @@ -432,9 +433,9 @@
       if (hasID()) {
           NamedAttrMapImpl *attrs = attributes(true);
           if (attrs) {
  -            AttributeImpl *idAttr = attrs->getAttributeItem(HTMLAttributes::idAttr());
  -            if (idAttr && !idAttr->isNull()) {
  -                updateId(nullAtom, idAttr->value());
  +            AttributeImpl *idAttrImpl = attrs->getAttributeItem(idAttr);
  +            if (idAttrImpl && !idAttrImpl->isNull()) {
  +                updateId(nullAtom, idAttrImpl->value());
               }
           }
       }
  @@ -445,9 +446,9 @@
       if (hasID()) {
           NamedAttrMapImpl *attrs = attributes(true);
           if (attrs) {
  -            AttributeImpl *idAttr = attrs->getAttributeItem(HTMLAttributes::idAttr());
  -            if (idAttr && !idAttr->isNull()) {
  -                updateId(idAttr->value(), nullAtom);
  +            AttributeImpl *idAttrImpl = attrs->getAttributeItem(idAttr);
  +            if (idAttrImpl && !idAttrImpl->isNull()) {
  +                updateId(idAttrImpl->value(), nullAtom);
               }
           }
       }
  @@ -655,7 +656,7 @@
           result += s;
       }
             
  -    s = getAttribute(HTMLAttributes::idAttr());
  +    s = getAttribute(idAttr);
       if (s.length() > 0) {
           if (result.length() > 0)
               result += "; ";
  @@ -663,7 +664,7 @@
           result += s;
       }
             
  -    s = getAttribute(HTMLAttributes::classAttr());
  +    s = getAttribute(classAttr);
       if (s.length() > 0) {
           if (result.length() > 0)
               result += "; ";
  @@ -863,7 +864,7 @@
           return SharedPtr<NodeImpl>();
       }
   
  -    if (a->name() == HTMLAttributes::idAttr())
  +    if (a->name() == idAttr)
   	element->updateId(old ? old->value() : nullAtom, a->value());
   
       // ### slightly inefficient - resizes attribute array twice.
  @@ -900,7 +901,7 @@
       if (!a->attrImpl())  a->allocateImpl(element);
       SharedPtr<NodeImpl> r(a->attrImpl());
   
  -    if (name == HTMLAttributes::idAttr())
  +    if (name == idAttr)
   	element->updateId(a->value(), nullAtom);
   
       removeAttribute(name);
  @@ -958,8 +959,8 @@
       // If assigning the map changes the id attribute, we need to call
       // updateId.
   
  -    AttributeImpl *oldId = getAttributeItem(HTMLAttributes::idAttr());
  -    AttributeImpl *newId = other.getAttributeItem(HTMLAttributes::idAttr());
  +    AttributeImpl *oldId = getAttributeItem(idAttr);
  +    AttributeImpl *newId = other.getAttributeItem(idAttr);
   
       if (oldId || newId) {
   	element->updateId(oldId ? oldId->value() : nullAtom, newId ? newId->value() : nullAtom);
  @@ -1132,7 +1133,7 @@
           m_isStyleAttributeValid = true;
           m_synchronizingStyleAttribute = true;
           if (m_inlineStyleDecl)
  -            const_cast<StyledElementImpl*>(this)->setAttribute(HTMLAttributes::style(), m_inlineStyleDecl->cssText());
  +            const_cast<StyledElementImpl*>(this)->setAttribute(styleAttr, m_inlineStyleDecl->cssText());
           m_synchronizingStyleAttribute = false;
       }
   }
  @@ -1314,14 +1315,14 @@
   bool StyledElementImpl::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
   {
       result = eNone;
  -    if (attrName == HTMLAttributes::style())
  +    if (attrName == styleAttr)
           return !m_synchronizingStyleAttribute;
       return true;
   }
   
   void StyledElementImpl::parseMappedAttribute(MappedAttributeImpl *attr)
   {
  -    if (attr->name() == HTMLAttributes::idAttr()) {
  +    if (attr->name() == idAttr) {
           // unique id
           setHasID(!attr->isNull());
           if (namedAttrMap) {
  @@ -1333,12 +1334,12 @@
                   namedAttrMap->setID(attr->value());
           }
           setChanged();
  -    } else if (attr->name() == HTMLAttributes::classAttr()) {
  +    } else if (attr->name() == classAttr) {
           // class
           setHasClass(!attr->isNull());
           if (namedAttrMap) static_cast<NamedMappedAttrMapImpl*>(namedAttrMap)->parseClassAttribute(attr->value());
           setChanged();
  -    } else if (attr->name() == HTMLAttributes::style()) {
  +    } else if (attr->name() == styleAttr) {
           setHasStyle(!attr->isNull());
           if (attr->isNull())
               destroyInlineStyleDecl();
  
  
  
  1.164     +11 -10    WebCore/khtml/xml/dom_nodeimpl.cpp
  
  Index: dom_nodeimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/xml/dom_nodeimpl.cpp,v
  retrieving revision 1.163
  retrieving revision 1.164
  diff -u -r1.163 -r1.164
  --- dom_nodeimpl.cpp	29 Jul 2005 23:02:44 -0000	1.163
  +++ dom_nodeimpl.cpp	30 Jul 2005 02:33:26 -0000	1.164
  @@ -64,6 +64,7 @@
   #define LOG(channel, formatAndArgs...) ((void)0)
   #endif
   
  +using namespace HTMLNames;
   using namespace khtml;
   
   namespace DOM {
  @@ -1425,7 +1426,7 @@
       if (offsetInCharacters(nodeType()))
           return static_cast<const TextImpl*>(this)->length();
           
  -    if (hasTagName(HTMLTags::br()) || (renderer() && renderer()->isReplaced()))
  +    if (hasTagName(brTag) || (renderer() && renderer()->isReplaced()))
           return 1;
   
       return childNodeCount();
  @@ -1481,7 +1482,7 @@
           n = n->parentNode();
           if (!n)
               break;
  -        if (n->isBlockFlowOrTable() || n->hasTagName(HTMLTags::body()))
  +        if (n->isBlockFlowOrTable() || n->hasTagName(bodyTag))
               return static_cast<ElementImpl *>(n);
       }
       return 0;
  @@ -1497,7 +1498,7 @@
           n = n->parentNode();
           if (!n)
               break;
  -        if (n->isBlockFlow() || n->hasTagName(HTMLTags::body()))
  +        if (n->isBlockFlow() || n->hasTagName(bodyTag))
               return static_cast<ElementImpl *>(n);
       }
       return 0;
  @@ -1510,7 +1511,7 @@
   
       while (1) {
           p = n->parentNode();
  -        if (!p || p->isBlockFlow() || p->hasTagName(HTMLTags::body()))
  +        if (!p || p->isBlockFlow() || p->hasTagName(bodyTag))
               return static_cast<ElementImpl *>(n);
           // Also stop if any previous sibling is a block
           for (NodeImpl *sibling = n->previousSibling(); sibling; sibling = sibling->previousSibling()) {
  @@ -1529,7 +1530,7 @@
           return 0;
   
       NodeImpl *n = const_cast<NodeImpl *>(this);
  -    if (n->hasTagName(HTMLTags::body()))
  +    if (n->hasTagName(bodyTag))
           return static_cast<ElementImpl *>(n);
   
       NodeImpl *result = n->isEditableBlock() ? n : 0;
  @@ -1537,7 +1538,7 @@
           n = n->parentNode();
           if (!n || !n->isContentEditable())
               break;
  -        if (n->hasTagName(HTMLTags::body())) {
  +        if (n->hasTagName(bodyTag)) {
               result = n;
               break;
           }
  @@ -1625,8 +1626,8 @@
           fprintf(stderr, "%s%s\t%p \"%s\"\n", prefix, nodeName().string().local8Bit().data(), this, value.local8Bit().data());
       } else {
           QString attrs = "";
  -        appendAttributeDesc(this, attrs, HTMLAttributes::classAttr(), " CLASS=");
  -        appendAttributeDesc(this, attrs, HTMLAttributes::style(), " STYLE=");
  +        appendAttributeDesc(this, attrs, classAttr, " CLASS=");
  +        appendAttributeDesc(this, attrs, styleAttr, " STYLE=");
           fprintf(stderr, "%s%s\t%p%s\n", prefix, nodeName().string().local8Bit().data(), this, attrs.ascii());
       }
   }
  @@ -1640,7 +1641,7 @@
   {
       NodeImpl *rootNode;
       NodeImpl *node = (NodeImpl *)this;
  -    while (node->parentNode() && !node->hasTagName(HTMLTags::body()))
  +    while (node->parentNode() && !node->hasTagName(bodyTag))
           node = node->parentNode();
       rootNode = node;
   	
  @@ -2602,7 +2603,7 @@
   
   bool NameNodeListImpl::nodeMatches(NodeImpl *testNode) const
   {
  -    return static_cast<ElementImpl *>(testNode)->getAttribute(HTMLAttributes::name()) == nodeName;
  +    return static_cast<ElementImpl *>(testNode)->getAttribute(nameAttr) == nodeName;
   }
   
   // ---------------------------------------------------------------------------
  
  
  
  1.74      +7 -6      WebCore/khtml/xml/dom_position.cpp
  
  Index: dom_position.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/xml/dom_position.cpp,v
  retrieving revision 1.73
  retrieving revision 1.74
  diff -u -r1.73 -r1.74
  --- dom_position.cpp	18 Jul 2005 21:52:34 -0000	1.73
  +++ dom_position.cpp	30 Jul 2005 02:33:26 -0000	1.74
  @@ -54,6 +54,7 @@
   #define LOG(channel, formatAndArgs...) ((void)0)
   #endif
   
  +using namespace HTMLNames;
   using khtml::EAffinity;
   using khtml::InlineBox;
   using khtml::InlineTextBox;
  @@ -440,7 +441,7 @@
   
           // stop before going above the body, up into the head
           // return the last visible streamer position
  -        if (currentNode->hasTagName(HTMLTags::body()) && currentOffset >= (int) currentNode->childNodeCount())
  +        if (currentNode->hasTagName(bodyTag) && currentOffset >= (int) currentNode->childNodeCount())
               break;
               
           // limit traversal to block or table enclosing the original element
  @@ -694,7 +695,7 @@
           return false;
       
       if (node() == pos.node()) {
  -        if (node()->hasTagName(HTMLTags::br()))
  +        if (node()->hasTagName(brTag))
               return false;
   
           if (offset() == pos.offset())
  @@ -706,10 +707,10 @@
           }
       }
       
  -    if (node()->hasTagName(HTMLTags::br()) && pos.inRenderedContent())
  +    if (node()->hasTagName(brTag) && pos.inRenderedContent())
           return true;
                   
  -    if (pos.node()->hasTagName(HTMLTags::br()) && inRenderedContent())
  +    if (pos.node()->hasTagName(brTag) && inRenderedContent())
           return true;
                   
       if (node()->enclosingBlockFlowElement() != pos.node()->enclosingBlockFlowElement())
  @@ -764,7 +765,7 @@
       if (isNull())
           return Position();
       
  -    if (upstream().node()->hasTagName(HTMLTags::br()))
  +    if (upstream().node()->hasTagName(brTag))
           return Position();
   
       Position prev = previousCharacterPosition(affinity);
  @@ -794,7 +795,7 @@
           }
       }
   
  -    if (downstream().node()->hasTagName(HTMLTags::br()))
  +    if (downstream().node()->hasTagName(brTag))
           return Position();
   
       Position next = nextCharacterPosition(affinity);
  
  
  
  1.35      +18 -19    WebCore/khtml/xml/xml_tokenizer.cpp
  
  Index: xml_tokenizer.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/xml/xml_tokenizer.cpp,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- xml_tokenizer.cpp	18 Jul 2005 21:52:34 -0000	1.34
  +++ xml_tokenizer.cpp	30 Jul 2005 02:33:26 -0000	1.35
  @@ -43,8 +43,7 @@
   using DOM::DocumentPtr;
   using DOM::DOMString;
   using DOM::ElementImpl;
  -using DOM::HTMLAttributes;
  -using DOM::HTMLTags;
  +using namespace HTMLNames;
   using DOM::HTMLScriptElementImpl;
   using DOM::HTMLTableSectionElementImpl;
   using DOM::Node;
  @@ -322,18 +321,18 @@
       // FIXME: This hack ensures implicit table bodies get constructed in XHTML and XML files.
       // We want to consolidate this with the HTML parser and HTML DOM code at some point.
       // For now, it's too risky to rip that code up.
  -    if (m_currentNode->hasTagName(HTMLTags::table()) &&
  -        newElement->hasTagName(HTMLTags::tr()) &&
  +    if (m_currentNode->hasTagName(tableTag) &&
  +        newElement->hasTagName(trTag) &&
           m_currentNode->isHTMLElement() && newElement->isHTMLElement()) {
           NodeImpl* implicitTBody =
  -           new HTMLTableSectionElementImpl(HTMLTags::tbody(), m_doc, true /* implicit */);
  +           new HTMLTableSectionElementImpl(tbodyTag, m_doc, true /* implicit */);
           m_currentNode->addChild(implicitTBody);
           if (m_view && !implicitTBody->attached())
               implicitTBody->attach();
           m_currentNode = implicitTBody;
       }
   
  -    if (newElement->hasTagName(HTMLTags::script()))
  +    if (newElement->hasTagName(scriptTag))
           static_cast<HTMLScriptElementImpl *>(newElement)->setCreatedByParser(true);
   
       if (m_currentNode->addChild(newElement)) {
  @@ -607,32 +606,32 @@
       DocumentImpl *doc = m_doc->document();
       NodeImpl* root = doc->documentElement();
       if (!root) {
  -        root = doc->createElementNS(HTMLTags::xhtmlNamespaceURI(), "html", exceptioncode);
  -        NodeImpl* body = doc->createElementNS(HTMLTags::xhtmlNamespaceURI(), "body", exceptioncode);
  +        root = doc->createElementNS(xhtmlNamespaceURI, "html", exceptioncode);
  +        NodeImpl* body = doc->createElementNS(xhtmlNamespaceURI, "body", exceptioncode);
           root->appendChild(body, exceptioncode);
           doc->appendChild(root, exceptioncode);
           root = body;
       }
   
  -    ElementImpl* reportElement = doc->createElementNS(HTMLTags::xhtmlNamespaceURI(), "parsererror", exceptioncode);
  -    reportElement->setAttribute(HTMLAttributes::style(), "white-space: pre; border: 2px solid #c77; padding: 0 1em 0 1em; margin: 1em; background-color: #fdd; color: black");
  -    ElementImpl* h3 = doc->createElementNS(HTMLTags::xhtmlNamespaceURI(), "h3", exceptioncode);
  +    ElementImpl* reportElement = doc->createElementNS(xhtmlNamespaceURI, "parsererror", exceptioncode);
  +    reportElement->setAttribute(styleAttr, "white-space: pre; border: 2px solid #c77; padding: 0 1em 0 1em; margin: 1em; background-color: #fdd; color: black");
  +    ElementImpl* h3 = doc->createElementNS(xhtmlNamespaceURI, "h3", exceptioncode);
       h3->appendChild(doc->createTextNode("This page contains the following errors:"), exceptioncode);
       reportElement->appendChild(h3, exceptioncode);
  -    ElementImpl* fixed = doc->createElementNS(HTMLTags::xhtmlNamespaceURI(), "div", exceptioncode);
  -    fixed->setAttribute(HTMLAttributes::style(), "font-family:monospace;font-size:12px");
  +    ElementImpl* fixed = doc->createElementNS(xhtmlNamespaceURI, "div", exceptioncode);
  +    fixed->setAttribute(styleAttr, "font-family:monospace;font-size:12px");
       NodeImpl* textNode = doc->createTextNode(m_errorMessages);
       fixed->appendChild(textNode, exceptioncode);
       reportElement->appendChild(fixed, exceptioncode);
  -    h3 = doc->createElementNS(HTMLTags::xhtmlNamespaceURI(), "h3", exceptioncode);
  +    h3 = doc->createElementNS(xhtmlNamespaceURI, "h3", exceptioncode);
       reportElement->appendChild(h3, exceptioncode);
       
       h3->appendChild(doc->createTextNode("Below is a rendering of the page up to the first error."), exceptioncode);
   #ifdef KHTML_XSLT
       if (doc->transformSourceDocument()) {
  -        ElementImpl* par = doc->createElementNS(HTMLTags::xhtmlNamespaceURI(), "p", exceptioncode);
  +        ElementImpl* par = doc->createElementNS(xhtmlNamespaceURI, "p", exceptioncode);
           reportElement->appendChild(par, exceptioncode);
  -        par->setAttribute(HTMLAttributes::style(), "white-space: normal");
  +        par->setAttribute(styleAttr, "white-space: normal");
           par->appendChild(doc->createTextNode("This document was created as the result of an XSL transformation. The line and column numbers given are from the transformed result."), exceptioncode);
       }
   #endif
  @@ -646,7 +645,7 @@
       // Recursively go through the entire document tree, looking for html <script> tags. For each of these
       // that is found, add it to the m_scripts list from which they will be executed
   
  -    if (n->hasTagName(HTMLTags::script())) {
  +    if (n->hasTagName(scriptTag)) {
           m_scripts.append(static_cast<HTMLScriptElementImpl*>(n));
       }
   
  @@ -662,8 +661,8 @@
       // and continue where it left off). For scripts that don't have a src attribute, execute the code
       // inside the tag
       while (m_scriptsIt->current()) {
  -        DOMString scriptSrc = m_scriptsIt->current()->getAttribute(HTMLAttributes::src());
  -        QString charset = m_scriptsIt->current()->getAttribute(HTMLAttributes::charset()).string();
  +        DOMString scriptSrc = m_scriptsIt->current()->getAttribute(srcAttr);
  +        QString charset = m_scriptsIt->current()->getAttribute(charsetAttr).string();
   
   	// don't load external scripts for standalone documents (for now)
           if (scriptSrc != "" && m_doc->document()->part()) {
  
  
  



More information about the webkit-changes mailing list