/*
* Copyright (C) 2004 Apple Computer, Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#import "DOMHTML.h"
#import "dom_doc.h"
#import "dom_string.h"
#import "html_element.h"
#import "html_misc.h"
#import "html_baseimpl.h"
#import "html_blockimpl.h"
#import "html_documentimpl.h"
#import "html_elementimpl.h"
#import "html_formimpl.h"
#import "html_headimpl.h"
#import "html_imageimpl.h"
#import "html_inlineimpl.h"
#import "html_listimpl.h"
#import "html_miscimpl.h"
#import "html_objectimpl.h"
#import "html_tableimpl.h"
#import "htmlattrs.h"
#import "dom_elementimpl.h"
#import "dom_nodeimpl.h"
#import "markup.h"
#import "DOMExtensions.h"
#import "DOMInternal.h"
#import "DOMHTMLInternal.h"
#import "KWQAssertions.h"
#import "KWQFoundationExtras.h"
using DOM::Document;
using DOM::DocumentFragmentImpl;
using DOM::DOMString;
using DOM::ElementImpl;
using DOM::HTMLAnchorElementImpl;
using DOM::HTMLAppletElementImpl;
using DOM::HTMLAreaElementImpl;
using DOM::HTMLBaseElementImpl;
using DOM::HTMLBaseFontElementImpl;
using DOM::HTMLBodyElementImpl;
using DOM::HTMLBRElementImpl;
using DOM::HTMLButtonElementImpl;
using DOM::HTMLCollectionImpl;
using DOM::HTMLDirectoryElementImpl;
using DOM::HTMLDivElementImpl;
using DOM::HTMLDListElementImpl;
using DOM::HTMLDocumentImpl;
using DOM::HTMLElementImpl;
using DOM::HTMLEmbedElementImpl;
using DOM::HTMLFieldSetElementImpl;
using DOM::HTMLFontElementImpl;
using DOM::HTMLFormCollectionImpl;
using DOM::HTMLFormElementImpl;
using DOM::HTMLFrameElementImpl;
using DOM::HTMLFrameSetElementImpl;
using DOM::HTMLGenericElementImpl;
using DOM::HTMLGenericFormElementImpl;
using DOM::HTMLHeadElementImpl;
using DOM::HTMLHeadingElementImpl;
using DOM::HTMLHRElementImpl;
using DOM::HTMLHtmlElementImpl;
using DOM::HTMLIFrameElementImpl;
using DOM::HTMLImageElementImpl;
using DOM::HTMLInputElementImpl;
using DOM::HTMLIsIndexElementImpl;
using DOM::HTMLLabelElementImpl;
using DOM::HTMLLegendElementImpl;
using DOM::HTMLLIElementImpl;
using DOM::HTMLLinkElementImpl;
using DOM::HTMLMapElementImpl;
using DOM::HTMLMenuElementImpl;
using DOM::HTMLMetaElementImpl;
using DOM::HTMLObjectElementImpl;
using DOM::HTMLOListElementImpl;
using DOM::HTMLOptGroupElementImpl;
using DOM::HTMLOptionElementImpl;
using DOM::HTMLOptionsCollectionImpl;
using DOM::HTMLParagraphElementImpl;
using DOM::HTMLParamElementImpl;
using DOM::HTMLPreElementImpl;
using DOM::HTMLScriptElementImpl;
using DOM::HTMLSelectElementImpl;
using DOM::HTMLStyleElementImpl;
using DOM::HTMLTableElementImpl;
using DOM::HTMLTableCaptionElementImpl;
using DOM::HTMLTableCellElementImpl;
using DOM::HTMLTableColElementImpl;
using DOM::HTMLTableRowElementImpl;
using DOM::HTMLTableSectionElementImpl;
using DOM::HTMLTextAreaElementImpl;
using DOM::HTMLTitleElementImpl;
using DOM::HTMLUListElementImpl;
using DOM::NameNodeListImpl;
using DOM::NodeImpl;
@interface DOMHTMLCollection (WebCoreInternal)
+ (DOMHTMLCollection *)_collectionWithImpl:(HTMLCollectionImpl *)impl;
@end
@interface DOMHTMLElement (WebCoreInternal)
+ (DOMHTMLElement *)_elementWithImpl:(HTMLElementImpl *)impl;
- (HTMLElementImpl *)_HTMLElementImpl;
@end
@interface DOMHTMLFormElement (WebCoreInternal)
+ (DOMHTMLFormElement *)_formElementWithImpl:(HTMLFormElementImpl *)impl;
@end
@interface DOMHTMLTableCaptionElement (WebCoreInternal)
+ (DOMHTMLTableCaptionElement *)_tableCaptionElementWithImpl:(HTMLTableCaptionElementImpl *)impl;
- (HTMLTableCaptionElementImpl *)_tableCaptionElementImpl;
@end
@interface DOMHTMLTableSectionElement (WebCoreInternal)
+ (DOMHTMLTableSectionElement *)_tableSectionElementWithImpl:(HTMLTableSectionElementImpl *)impl;
- (HTMLTableSectionElementImpl *)_tableSectionElementImpl;
@end
@interface DOMHTMLTableElement (WebCoreInternal)
+ (DOMHTMLTableElement *)_tableElementWithImpl:(HTMLTableElementImpl *)impl;
- (HTMLTableElementImpl *)_tableElementImpl;
@end
@interface DOMHTMLTableCellElement (WebCoreInternal)
+ (DOMHTMLTableCellElement *)_tableCellElementWithImpl:(HTMLTableCellElementImpl *)impl;
- (HTMLTableCellElementImpl *)_tableCellElementImpl;
@end
//------------------------------------------------------------------------------------------
@implementation DOMHTMLCollection
- (void)dealloc
{
if (_internal) {
DOM_cast<HTMLCollectionImpl *>(_internal)->deref();
}
[super dealloc];
}
- (void)finalize
{
if (_internal) {
DOM_cast<HTMLCollectionImpl *>(_internal)->deref();
}
[super finalize];
}
- (HTMLCollectionImpl *)_collectionImpl
{
return DOM_cast<HTMLCollectionImpl *>(_internal);
}
- (unsigned long)length
{
return [self _collectionImpl]->length();
}
- (DOMNode *)item:(unsigned long)index
{
return [DOMNode _nodeWithImpl:[self _collectionImpl]->item(index)];
}
- (DOMNode *)namedItem:(NSString *)name
{
return [DOMNode _nodeWithImpl:[self _collectionImpl]->namedItem(name)];
}
@end
@implementation DOMHTMLCollection (WebCoreInternal)
- (id)_initWithCollectionImpl:(HTMLCollectionImpl *)impl
{
ASSERT(impl);
[super _init];
_internal = DOM_cast<DOMObjectInternal *>(impl);
impl->ref();
addDOMWrapper(self, impl);
return self;
}
+ (DOMHTMLCollection *)_collectionWithImpl:(HTMLCollectionImpl *)impl
{
if (!impl)
return nil;
id cachedInstance;
cachedInstance = getDOMWrapper(impl);
if (cachedInstance)
return [[cachedInstance retain] autorelease];
return [[[self alloc] _initWithCollectionImpl:impl] autorelease];
}
@end
@implementation DOMHTMLOptionsCollection
- (void)dealloc
{
if (_internal) {
DOM_cast<HTMLOptionsCollectionImpl *>(_internal)->deref();
}
[super dealloc];
}
- (void)finalize
{
if (_internal) {
DOM_cast<HTMLOptionsCollectionImpl *>(_internal)->deref();
}
[super finalize];
}
- (id)_initWithOptionsCollectionImpl:(HTMLOptionsCollectionImpl *)impl
{
ASSERT(impl);
[super _init];
_internal = DOM_cast<DOMObjectInternal *>(impl);
impl->ref();
addDOMWrapper(self, impl);
return self;
}
+ (DOMHTMLOptionsCollection *)_optionsCollectionWithImpl:(HTMLOptionsCollectionImpl *)impl
{
if (!impl)
return nil;
id cachedInstance;
cachedInstance = getDOMWrapper(impl);
if (cachedInstance)
return [[cachedInstance retain] autorelease];
return [[[self alloc] _initWithOptionsCollectionImpl:impl] autorelease];
}
- (HTMLOptionsCollectionImpl *)_optionsCollectionImpl
{
return DOM_cast<HTMLOptionsCollectionImpl *>(_internal);
}
- (unsigned long)length
{
return [self _optionsCollectionImpl]->length();
}
- (void)setLength:(unsigned long)length
{
[self _optionsCollectionImpl]->setLength(length);
}
- (DOMNode *)item:(unsigned long)index
{
return [DOMNode _nodeWithImpl:[self _optionsCollectionImpl]->item(index)];
}
- (DOMNode *)namedItem:(NSString *)name
{
return [DOMNode _nodeWithImpl:[self _optionsCollectionImpl]->namedItem(name)];
}
@end
@implementation DOMHTMLElement
- (NSString *)idName
{
return [self _HTMLElementImpl]->getAttribute(ATTR_ID);
}
- (void)setIdName:(NSString *)idName
{
[self _HTMLElementImpl]->setAttribute(ATTR_ID, idName);
}
- (NSString *)title
{
return [self _HTMLElementImpl]->getAttribute(ATTR_TITLE);
}
- (void)setTitle:(NSString *)title
{
[self _HTMLElementImpl]->setAttribute(ATTR_TITLE, title);
}
- (NSString *)lang
{
return [self _HTMLElementImpl]->getAttribute(ATTR_LANG);
}
- (void)setLang:(NSString *)lang
{
[self _HTMLElementImpl]->setAttribute(ATTR_LANG, lang);
}
- (NSString *)dir
{
return [self _HTMLElementImpl]->getAttribute(ATTR_DIR);
}
- (void)setDir:(NSString *)dir
{
[self _HTMLElementImpl]->setAttribute(ATTR_DIR, dir);
}
- (NSString *)className
{
return [self _HTMLElementImpl]->getAttribute(ATTR_CLASS);
}
- (void)setClassName:(NSString *)className
{
[self _HTMLElementImpl]->setAttribute(ATTR_CLASS, className);
}
@end
@implementation DOMHTMLElement (WebCoreInternal)
+ (DOMHTMLElement *)_elementWithImpl:(HTMLElementImpl *)impl
{
return static_cast<DOMHTMLElement *>([DOMNode _nodeWithImpl:impl]);
}
- (HTMLElementImpl *)_HTMLElementImpl
{
return static_cast<HTMLElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
@end
@implementation DOMHTMLElement (DOMHTMLElementExtensions)
- (NSString *)innerHTML
{
return [self _HTMLElementImpl]->innerHTML();
}
- (void)setInnerHTML:(NSString *)innerHTML
{
[self _HTMLElementImpl]->setInnerHTML(innerHTML);
}
- (NSString *)outerHTML
{
return [self _HTMLElementImpl]->outerHTML();
}
- (void)setOuterHTML:(NSString *)outerHTML
{
[self _HTMLElementImpl]->setOuterHTML(outerHTML);
}
- (NSString *)innerText
{
return [self _HTMLElementImpl]->innerText();
}
- (void)setInnerText:(NSString *)innerText
{
[self _HTMLElementImpl]->setInnerText(innerText);
}
- (NSString *)outerText
{
return [self _HTMLElementImpl]->outerText();
}
- (void)setOuterText:(NSString *)outerText
{
[self _HTMLElementImpl]->setOuterText(outerText);
}
- (DOMHTMLCollection *)children
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _HTMLElementImpl], HTMLCollectionImpl::NODE_CHILDREN);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (NSString *)contentEditable
{
return [self _HTMLElementImpl]->contentEditable();
}
- (void)setContentEditable:(NSString *)contentEditable
{
[self _HTMLElementImpl]->setContentEditable(contentEditable);
}
- (BOOL)isContentEditable
{
return [self _HTMLElementImpl]->isContentEditable();
}
@end
@implementation DOMHTMLDocument
- (HTMLDocumentImpl *)_HTMLDocumentImpl
{
return static_cast<HTMLDocumentImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)title
{
return [self _HTMLDocumentImpl]->title();
}
- (void)setTitle:(NSString *)title
{
[self _HTMLDocumentImpl]->setTitle(title);
}
- (NSString *)referrer
{
return [self _HTMLDocumentImpl]->referrer();
}
- (NSString *)domain
{
return [self _HTMLDocumentImpl]->domain();
}
- (NSString *)URL
{
return [self _HTMLDocumentImpl]->URL().getNSString();
}
- (DOMHTMLElement *)body
{
return [DOMHTMLElement _elementWithImpl:[self _HTMLDocumentImpl]->body()];
}
- (DOMHTMLCollection *)images
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _HTMLDocumentImpl], HTMLCollectionImpl::DOC_IMAGES);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (DOMHTMLCollection *)applets
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _HTMLDocumentImpl], HTMLCollectionImpl::DOC_APPLETS);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (DOMHTMLCollection *)links
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _HTMLDocumentImpl], HTMLCollectionImpl::DOC_LINKS);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (DOMHTMLCollection *)forms
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _HTMLDocumentImpl], HTMLCollectionImpl::DOC_FORMS);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (DOMHTMLCollection *)anchors
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _HTMLDocumentImpl], HTMLCollectionImpl::DOC_ANCHORS);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (void)setBody:(DOMHTMLElement *)body
{
int exceptionCode = 0;
[self _HTMLDocumentImpl]->setBody([body _HTMLElementImpl], exceptionCode);
raiseOnDOMError(exceptionCode);
}
- (NSString *)cookie
{
return [self _HTMLDocumentImpl]->cookie();
}
- (void)setCookie:(NSString *)cookie
{
[self _HTMLDocumentImpl]->setCookie(cookie);
}
- (void)open
{
[self _HTMLDocumentImpl]->open();
}
- (void)close
{
[self _HTMLDocumentImpl]->close();
}
- (void)write:(NSString *)text
{
[self _HTMLDocumentImpl]->write(text);
}
- (void)writeln:(NSString *)text
{
[self _HTMLDocumentImpl]->writeln(text);
}
- (DOMElement *)getElementById:(NSString *)elementId
{
return [DOMElement _elementWithImpl:[self _HTMLDocumentImpl]->getElementById(elementId)];
}
- (DOMNodeList *)getElementsByName:(NSString *)elementName
{
NameNodeListImpl *nodeList = new NameNodeListImpl([self _HTMLDocumentImpl], elementName);
return [DOMNodeList _nodeListWithImpl:nodeList];
}
@end
@implementation DOMHTMLDocument (WebPrivate)
- (DOMDocumentFragment *)_createDocumentFragmentWithMarkupString:(NSString *)markupString baseURLString:(NSString *)baseURLString
{
DocumentFragmentImpl *fragment = createFragmentFromMarkup([self _documentImpl], QString::fromNSString(markupString), QString::fromNSString(baseURLString));
return [DOMDocumentFragment _documentFragmentWithImpl:fragment];
}
- (DOMDocumentFragment *)_createDocumentFragmentWithText:(NSString *)text
{
return [DOMDocumentFragment _documentFragmentWithImpl:createFragmentFromText([self _documentImpl], QString::fromNSString(text))];
}
@end
@implementation DOMHTMLHtmlElement
- (HTMLHtmlElementImpl *)_HTMLHtmlElementImpl
{
return static_cast<HTMLHtmlElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)version
{
return [self _HTMLHtmlElementImpl]->getAttribute(ATTR_VERSION);
}
- (void)setVersion:(NSString *)version
{
[self _HTMLHtmlElementImpl]->setAttribute(ATTR_VERSION, version);
}
@end
@implementation DOMHTMLHeadElement
- (HTMLHeadElementImpl *)_headElementImpl
{
return static_cast<HTMLHeadElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)profile
{
return [self _headElementImpl]->getAttribute(ATTR_PROFILE);
}
- (void)setProfile:(NSString *)profile
{
[self _headElementImpl]->setAttribute(ATTR_PROFILE, profile);
}
@end
@implementation DOMHTMLLinkElement
- (HTMLLinkElementImpl *)_linkElementImpl
{
return static_cast<HTMLLinkElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (BOOL)disabled
{
return ![self _linkElementImpl]->getAttribute(ATTR_DISABLED).isNull();
}
- (void)setDisabled:(BOOL)disabled
{
[self _linkElementImpl]->setAttribute(ATTR_DISABLED, disabled ? "" : 0);
[self _linkElementImpl]->setDisabledState(disabled);
}
- (NSString *)charset
{
return [self _linkElementImpl]->getAttribute(ATTR_CHARSET);
}
- (void)setCharset:(NSString *)charset
{
[self _linkElementImpl]->setAttribute(ATTR_CHARSET, charset);
}
- (NSString *)href
{
DOMString s = [self _linkElementImpl]->getAttribute(ATTR_HREF);
if (!s.isNull()) {
Document doc([self _linkElementImpl]->getDocument());
s = doc.completeURL(s);
}
return s;
}
- (void)setHref:(NSString *)href
{
[self _linkElementImpl]->setAttribute(ATTR_HREF, href);
}
- (NSString *)hreflang
{
return [self _linkElementImpl]->getAttribute(ATTR_HREFLANG);
}
- (void)setHreflang:(NSString *)hreflang
{
[self _linkElementImpl]->setAttribute(ATTR_HREFLANG, hreflang);
}
- (NSString *)media
{
return [self _linkElementImpl]->getAttribute(ATTR_MEDIA);
}
- (void)setMedia:(NSString *)media
{
[self _linkElementImpl]->setAttribute(ATTR_MEDIA, media);
}
- (NSString *)rel
{
return [self _linkElementImpl]->getAttribute(ATTR_REL);
}
- (void)setRel:(NSString *)rel
{
[self _linkElementImpl]->setAttribute(ATTR_REL, rel);
}
- (NSString *)rev
{
return [self _linkElementImpl]->getAttribute(ATTR_REV);
}
- (void)setRev:(NSString *)rev
{
[self _linkElementImpl]->setAttribute(ATTR_REV, rev);
}
- (NSString *)target
{
return [self _linkElementImpl]->getAttribute(ATTR_TARGET);
}
- (void)setTarget:(NSString *)target
{
[self _linkElementImpl]->setAttribute(ATTR_TARGET, target);
}
- (NSString *)type
{
return [self _linkElementImpl]->getAttribute(ATTR_TYPE);
}
- (void)setType:(NSString *)type
{
[self _linkElementImpl]->setAttribute(ATTR_TYPE, type);
}
@end
@implementation DOMHTMLTitleElement
- (HTMLTitleElementImpl *)_titleElementImpl
{
return static_cast<HTMLTitleElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)text
{
return [self _titleElementImpl]->getAttribute(ATTR_TEXT);
}
- (void)setText:(NSString *)text
{
[self _titleElementImpl]->setAttribute(ATTR_TEXT, text);
}
@end
@implementation DOMHTMLMetaElement
- (HTMLMetaElementImpl *)_metaElementImpl
{
return static_cast<HTMLMetaElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)content
{
return [self _metaElementImpl]->getAttribute(ATTR_CONTENT);
}
- (void)setContent:(NSString *)content
{
[self _metaElementImpl]->setAttribute(ATTR_CONTENT, content);
}
- (NSString *)httpEquiv
{
return [self _metaElementImpl]->getAttribute(ATTR_HTTP_EQUIV);
}
- (void)setHttpEquiv:(NSString *)httpEquiv
{
[self _metaElementImpl]->setAttribute(ATTR_HTTP_EQUIV, httpEquiv);
}
- (NSString *)name
{
return [self _metaElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _metaElementImpl]->setAttribute(ATTR_NAME, name);
}
- (NSString *)scheme
{
return [self _metaElementImpl]->getAttribute(ATTR_SCHEME);
}
- (void)setScheme:(NSString *)scheme
{
[self _metaElementImpl]->setAttribute(ATTR_SCHEME, scheme);
}
@end
@implementation DOMHTMLBaseElement
- (HTMLBaseElementImpl *)_baseElementImpl
{
return static_cast<HTMLBaseElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)href
{
DOMString s = [self _baseElementImpl]->getAttribute(ATTR_HREF);
if (!s.isNull()) {
Document doc([self _baseElementImpl]->getDocument());
s = doc.completeURL(s);
}
return s;
}
- (void)setHref:(NSString *)href
{
[self _baseElementImpl]->setAttribute(ATTR_HREF, href);
}
- (NSString *)target
{
return [self _baseElementImpl]->getAttribute(ATTR_TARGET);
}
- (void)setTarget:(NSString *)target
{
[self _baseElementImpl]->setAttribute(ATTR_SCHEME, target);
}
@end
@implementation DOMHTMLStyleElement
- (HTMLStyleElementImpl *)_styleElementImpl
{
return static_cast<HTMLStyleElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (BOOL)disabled
{
return ![self _styleElementImpl]->getAttribute(ATTR_DISABLED).isNull();
}
- (void)setDisabled:(BOOL)disabled
{
[self _styleElementImpl]->setAttribute(ATTR_DISABLED, disabled ? "" : 0);
}
- (NSString *)media
{
return [self _styleElementImpl]->getAttribute(ATTR_MEDIA);
}
- (void)setMedia:(NSString *)media
{
[self _styleElementImpl]->setAttribute(ATTR_MEDIA, media);
}
- (NSString *)type
{
return [self _styleElementImpl]->getAttribute(ATTR_TYPE);
}
- (void)setType:(NSString *)type
{
[self _styleElementImpl]->setAttribute(ATTR_TYPE, type);
}
@end
@implementation DOMHTMLBodyElement
- (HTMLBodyElementImpl *)_bodyElementImpl
{
return static_cast<HTMLBodyElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)aLink
{
return [self _bodyElementImpl]->getAttribute(ATTR_ALINK);
}
- (void)setALink:(NSString *)aLink
{
[self _bodyElementImpl]->setAttribute(ATTR_ALINK, aLink);
}
- (NSString *)background
{
return [self _bodyElementImpl]->getAttribute(ATTR_BACKGROUND);
}
- (void)setBackground:(NSString *)background
{
[self _bodyElementImpl]->setAttribute(ATTR_BACKGROUND, background);
}
- (NSString *)bgColor
{
return [self _bodyElementImpl]->getAttribute(ATTR_BGCOLOR);
}
- (void)setBgColor:(NSString *)bgColor
{
[self _bodyElementImpl]->setAttribute(ATTR_BGCOLOR, bgColor);
}
- (NSString *)link
{
return [self _bodyElementImpl]->getAttribute(ATTR_LINK);
}
- (void)setLink:(NSString *)link
{
[self _bodyElementImpl]->setAttribute(ATTR_LINK, link);
}
- (NSString *)text
{
return [self _bodyElementImpl]->getAttribute(ATTR_TEXT);
}
- (void)setText:(NSString *)text
{
[self _bodyElementImpl]->setAttribute(ATTR_TEXT, text);
}
- (NSString *)vLink
{
return [self _bodyElementImpl]->getAttribute(ATTR_VLINK);
}
- (void)setVLink:(NSString *)vLink
{
[self _bodyElementImpl]->setAttribute(ATTR_VLINK, vLink);
}
@end
@implementation DOMHTMLFormElement
- (HTMLFormElementImpl *)_formElementImpl
{
return static_cast<HTMLFormElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (DOMHTMLCollection *)elements
{
HTMLCollectionImpl *collection = new HTMLFormCollectionImpl([self _formElementImpl]);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (long)length
{
return [self _formElementImpl]->length();
}
- (NSString *)name
{
return [self _formElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _formElementImpl]->setAttribute(ATTR_NAME, name);
}
- (NSString *)acceptCharset
{
return [self _formElementImpl]->getAttribute(ATTR_ACCEPT_CHARSET);
}
- (void)setAcceptCharset:(NSString *)acceptCharset
{
[self _formElementImpl]->setAttribute(ATTR_ACCEPT_CHARSET, acceptCharset);
}
- (NSString *)action
{
return [self _formElementImpl]->getAttribute(ATTR_ACTION);
}
- (void)setAction:(NSString *)action
{
[self _formElementImpl]->setAttribute(ATTR_ACTION, action);
}
- (NSString *)enctype
{
return [self _formElementImpl]->getAttribute(ATTR_ENCTYPE);
}
- (void)setEnctype:(NSString *)enctype
{
[self _formElementImpl]->setAttribute(ATTR_ENCTYPE, enctype);
}
- (NSString *)method
{
return [self _formElementImpl]->getAttribute(ATTR_METHOD);
}
- (void)setMethod:(NSString *)method
{
[self _formElementImpl]->setAttribute(ATTR_METHOD, method);
}
- (NSString *)target
{
return [self _formElementImpl]->getAttribute(ATTR_TARGET);
}
- (void)setTarget:(NSString *)target
{
[self _formElementImpl]->setAttribute(ATTR_TARGET, target);
}
- (void)submit
{
[self _formElementImpl]->submit(false);
}
- (void)reset
{
[self _formElementImpl]->reset();
}
@end
@implementation DOMHTMLFormElement (WebCoreInternal)
+ (DOMHTMLFormElement *)_formElementWithImpl:(HTMLFormElementImpl *)impl
{
return static_cast<DOMHTMLFormElement *>([DOMNode _nodeWithImpl:impl]);
}
@end
@implementation DOMHTMLIsIndexElement
- (HTMLIsIndexElementImpl *)_isIndexElementImpl
{
return static_cast<HTMLIsIndexElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (DOMHTMLFormElement *)form
{
return [DOMHTMLFormElement _formElementWithImpl:[self _isIndexElementImpl]->form()];
}
- (NSString *)prompt
{
return [self _isIndexElementImpl]->getAttribute(ATTR_PROMPT);
}
- (void)setPrompt:(NSString *)prompt
{
[self _isIndexElementImpl]->setAttribute(ATTR_PROMPT, prompt);
}
@end
@implementation DOMHTMLSelectElement
- (HTMLSelectElementImpl *)_selectElementImpl
{
return static_cast<HTMLSelectElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)type
{
return [self _selectElementImpl]->type();
}
- (long)selectedIndex
{
return [self _selectElementImpl]->selectedIndex();
}
- (void)setSelectedIndex:(long)selectedIndex
{
[self _selectElementImpl]->setSelectedIndex(selectedIndex);
}
- (NSString *)value
{
return [self _selectElementImpl]->value();
}
- (void)setValue:(NSString *)value
{
DOMString s(value);
[self _selectElementImpl]->setValue(s.implementation());
}
- (long)length
{
return [self _selectElementImpl]->length();
}
- (void)setLength:(long)length
{
ASSERT_WITH_MESSAGE(0, "not implemented by khtml");
}
- (DOMHTMLFormElement *)form
{
return [DOMHTMLFormElement _formElementWithImpl:[self _selectElementImpl]->form()];
}
- (DOMHTMLOptionsCollection *)options
{
return [DOMHTMLOptionsCollection _optionsCollectionWithImpl:[self _selectElementImpl]->options()];
}
- (BOOL)disabled
{
return ![self _selectElementImpl]->getAttribute(ATTR_DISABLED).isNull();
}
- (void)setDisabled:(BOOL)disabled
{
[self _selectElementImpl]->setAttribute(ATTR_DISABLED, disabled ? "" : 0);
}
- (BOOL)multiple
{
return ![self _selectElementImpl]->getAttribute(ATTR_MULTIPLE).isNull();
}
- (void)setMultiple:(BOOL)multiple
{
[self _selectElementImpl]->setAttribute(ATTR_MULTIPLE, multiple ? "" : 0);
}
- (NSString *)name
{
return [self _selectElementImpl]->name();
}
- (void)setName:(NSString *)name
{
[self _selectElementImpl]->setName(name);
}
- (long)size
{
return [self _selectElementImpl]->getAttribute(ATTR_SIZE).toInt();
}
- (void)setSize:(long)size
{
DOMString value(QString::number(size));
[self _selectElementImpl]->setAttribute(ATTR_SIZE, value);
}
- (long)tabIndex
{
return [self _selectElementImpl]->tabIndex();
}
- (void)setTabIndex:(long)tabIndex
{
[self _selectElementImpl]->setTabIndex(tabIndex);
}
- (void)add:(DOMHTMLElement *)element :(DOMHTMLElement *)before
{
[self _selectElementImpl]->add([element _HTMLElementImpl], [before _HTMLElementImpl]);
}
- (void)remove:(long)index
{
[self _selectElementImpl]->remove(index);
}
- (void)blur
{
[self _selectElementImpl]->blur();
}
- (void)focus
{
[self _selectElementImpl]->focus();
}
@end
@implementation DOMHTMLOptGroupElement
- (HTMLOptGroupElementImpl *)_optGroupElementImpl
{
return static_cast<HTMLOptGroupElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (BOOL)disabled
{
return ![self _optGroupElementImpl]->getAttribute(ATTR_DISABLED).isNull();
}
- (void)setDisabled:(BOOL)disabled
{
[self _optGroupElementImpl]->setAttribute(ATTR_DISABLED, disabled ? "" : 0);
}
- (NSString *)label
{
return [self _optGroupElementImpl]->getAttribute(ATTR_LABEL);
}
- (void)setLabel:(NSString *)label
{
[self _optGroupElementImpl]->setAttribute(ATTR_LABEL, label);
}
@end
@implementation DOMHTMLOptionElement
- (HTMLOptionElementImpl *)_optionElementImpl
{
return static_cast<HTMLOptionElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (DOMHTMLFormElement *)form
{
return [DOMHTMLFormElement _formElementWithImpl:[self _optionElementImpl]->form()];
}
- (BOOL)defaultSelected
{
return ![self _optionElementImpl]->getAttribute(ATTR_SELECTED).isNull();
}
- (void)setDefaultSelected:(BOOL)defaultSelected
{
[self _optionElementImpl]->setAttribute(ATTR_SELECTED, defaultSelected ? "" : 0);
}
- (NSString *)text
{
return [self _optionElementImpl]->text();
}
- (long)index
{
return [self _optionElementImpl]->index();
}
- (BOOL)disabled
{
return ![self _optionElementImpl]->getAttribute(ATTR_DISABLED).isNull();
}
- (void)setDisabled:(BOOL)disabled
{
[self _optionElementImpl]->setAttribute(ATTR_DISABLED, disabled ? "" : 0);
}
- (NSString *)label
{
return [self _optionElementImpl]->getAttribute(ATTR_LABEL);
}
- (void)setLabel:(NSString *)label
{
[self _optionElementImpl]->setAttribute(ATTR_LABEL, label);
}
- (BOOL)selected
{
return [self _optionElementImpl]->selected();
}
- (void)setSelected:(BOOL)selected
{
[self _optionElementImpl]->setSelected(selected);
}
- (NSString *)value
{
return [self _optionElementImpl]->value();
}
- (void)setValue:(NSString *)value
{
DOMString string = value;
[self _optionElementImpl]->setValue(string.implementation());
}
@end
@implementation DOMHTMLInputElement
- (HTMLInputElementImpl *)_inputElementImpl
{
return static_cast<HTMLInputElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)defaultValue
{
return [self _inputElementImpl]->getAttribute(ATTR_VALUE);
}
- (void)setDefaultValue:(NSString *)defaultValue
{
[self _inputElementImpl]->setAttribute(ATTR_VALUE, defaultValue);
}
- (BOOL)defaultChecked
{
return [self _inputElementImpl]->getAttribute(ATTR_CHECKED).isNull();
}
- (void)setDefaultChecked:(BOOL)defaultChecked
{
[self _inputElementImpl]->setAttribute(ATTR_CHECKED, defaultChecked ? "" : 0);
}
- (DOMHTMLFormElement *)form
{
return [DOMHTMLFormElement _formElementWithImpl:[self _inputElementImpl]->form()];
}
- (NSString *)accept
{
return [self _inputElementImpl]->getAttribute(ATTR_ACCEPT);
}
- (void)setAccept:(NSString *)accept
{
[self _inputElementImpl]->setAttribute(ATTR_ACCEPT, accept);
}
- (NSString *)accessKey
{
return [self _inputElementImpl]->getAttribute(ATTR_ACCESSKEY);
}
- (void)setAccessKey:(NSString *)accessKey
{
[self _inputElementImpl]->setAttribute(ATTR_ACCESSKEY, accessKey);
}
- (NSString *)align
{
return [self _inputElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _inputElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (NSString *)alt
{
return [self _inputElementImpl]->getAttribute(ATTR_ALT);
}
- (void)setAlt:(NSString *)alt
{
[self _inputElementImpl]->setAttribute(ATTR_ALT, alt);
}
- (BOOL)checked
{
return [self _inputElementImpl]->checked();
}
- (void)setChecked:(BOOL)checked
{
return [self _inputElementImpl]->setChecked(checked);
}
- (BOOL)disabled
{
return [self _inputElementImpl]->getAttribute(ATTR_DISABLED).isNull();
}
- (void)setDisabled:(BOOL)disabled
{
[self _inputElementImpl]->setAttribute(ATTR_DISABLED, disabled ? "" : 0);
}
- (long)maxLength
{
return [self _inputElementImpl]->getAttribute(ATTR_MAXLENGTH).toInt();
}
- (void)setMaxLength:(long)maxLength
{
DOMString value(QString::number(maxLength));
[self _inputElementImpl]->setAttribute(ATTR_MAXLENGTH, value);
}
- (NSString *)name
{
return [self _inputElementImpl]->name();
}
- (void)setName:(NSString *)name
{
[self _inputElementImpl]->setName(name);
}
- (BOOL)readOnly
{
return [self _inputElementImpl]->getAttribute(ATTR_READONLY).isNull();
}
- (void)setReadOnly:(BOOL)readOnly
{
[self _inputElementImpl]->setAttribute(ATTR_READONLY, readOnly ? "" : 0);
}
- (NSString *)size
{
return [self _inputElementImpl]->getAttribute(ATTR_SIZE);
}
- (void)setSize:(NSString *)size
{
[self _inputElementImpl]->setAttribute(ATTR_SIZE, size);
}
- (NSString *)src
{
DOMString s = [self _inputElementImpl]->getAttribute(ATTR_SRC);
if (!s.isNull()) {
Document doc([self _inputElementImpl]->getDocument());
s = doc.completeURL(s);
}
return s;
}
- (void)setSrc:(NSString *)src
{
[self _inputElementImpl]->setAttribute(ATTR_SRC, src);
}
- (long)tabIndex
{
return [self _inputElementImpl]->tabIndex();
}
- (void)setTabIndex:(long)tabIndex
{
[self _inputElementImpl]->setTabIndex(tabIndex);
}
- (NSString *)type
{
return [self _inputElementImpl]->type();
}
- (void)setType:(NSString *)type
{
[self _inputElementImpl]->setType(type);
}
- (NSString *)useMap
{
return [self _inputElementImpl]->getAttribute(ATTR_USEMAP);
}
- (void)setUseMap:(NSString *)useMap
{
[self _inputElementImpl]->setAttribute(ATTR_USEMAP, useMap);
}
- (NSString *)value
{
return [self _inputElementImpl]->value();
}
- (void)setValue:(NSString *)value
{
[self _inputElementImpl]->setValue(value);
}
- (void)blur
{
[self _inputElementImpl]->blur();
}
- (void)focus
{
[self _inputElementImpl]->focus();
}
- (void)select
{
[self _inputElementImpl]->select();
}
- (void)click
{
[self _inputElementImpl]->click(false);
}
@end
@implementation DOMHTMLTextAreaElement
- (HTMLTextAreaElementImpl *)_textAreaElementImpl
{
return static_cast<HTMLTextAreaElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)defaultValue
{
return [self _textAreaElementImpl]->defaultValue();
}
- (void)setDefaultValue:(NSString *)defaultValue
{
[self _textAreaElementImpl]->setDefaultValue(defaultValue);
}
- (DOMHTMLFormElement *)form
{
return [DOMHTMLFormElement _formElementWithImpl:[self _textAreaElementImpl]->form()];
}
- (NSString *)accessKey
{
return [self _textAreaElementImpl]->getAttribute(ATTR_ACCESSKEY);
}
- (void)setAccessKey:(NSString *)accessKey
{
[self _textAreaElementImpl]->setAttribute(ATTR_ACCESSKEY, accessKey);
}
- (long)cols
{
return [self _textAreaElementImpl]->getAttribute(ATTR_ACCESSKEY).toInt();
}
- (void)setCols:(long)cols
{
DOMString value(QString::number(cols));
[self _textAreaElementImpl]->setAttribute(ATTR_COLS, value);
}
- (BOOL)disabled
{
return [self _textAreaElementImpl]->getAttribute(ATTR_DISABLED).isNull();
}
- (void)setDisabled:(BOOL)disabled
{
[self _textAreaElementImpl]->setAttribute(ATTR_DISABLED, disabled ? "" : 0);
}
- (NSString *)name
{
return [self _textAreaElementImpl]->name();
}
- (void)setName:(NSString *)name
{
[self _textAreaElementImpl]->setName(name);
}
- (BOOL)readOnly
{
return [self _textAreaElementImpl]->getAttribute(ATTR_READONLY).isNull();
}
- (void)setReadOnly:(BOOL)readOnly
{
[self _textAreaElementImpl]->setAttribute(ATTR_READONLY, readOnly ? "" : 0);
}
- (long)rows
{
return [self _textAreaElementImpl]->getAttribute(ATTR_ROWS).toInt();
}
- (void)setRows:(long)rows
{
DOMString value(QString::number(rows));
[self _textAreaElementImpl]->setAttribute(ATTR_ROWS, value);
}
- (long)tabIndex
{
return [self _textAreaElementImpl]->tabIndex();
}
- (void)setTabIndex:(long)tabIndex
{
[self _textAreaElementImpl]->setTabIndex(tabIndex);
}
- (NSString *)type
{
return [self _textAreaElementImpl]->type();
}
- (void)setType:(NSString *)type
{
ASSERT_WITH_MESSAGE(0, "not implemented");
}
- (NSString *)value
{
return [self _textAreaElementImpl]->value();
}
- (void)setValue:(NSString *)value
{
[self _textAreaElementImpl]->setValue(value);
}
- (void)blur
{
[self _textAreaElementImpl]->blur();
}
- (void)focus
{
[self _textAreaElementImpl]->focus();
}
- (void)select
{
[self _textAreaElementImpl]->select();
}
@end
@implementation DOMHTMLButtonElement
- (HTMLButtonElementImpl *)_buttonElementImpl
{
return static_cast<HTMLButtonElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (DOMHTMLFormElement *)form
{
return [DOMHTMLFormElement _formElementWithImpl:[self _buttonElementImpl]->form()];
}
- (NSString *)accessKey
{
return [self _buttonElementImpl]->getAttribute(ATTR_ACCESSKEY);
}
- (void)setAccessKey:(NSString *)accessKey
{
[self _buttonElementImpl]->setAttribute(ATTR_ACCESSKEY, accessKey);
}
- (BOOL)disabled
{
return [self _buttonElementImpl]->getAttribute(ATTR_DISABLED).isNull();
}
- (void)setDisabled:(BOOL)disabled
{
[self _buttonElementImpl]->setAttribute(ATTR_DISABLED, disabled ? "" : 0);
}
- (NSString *)name
{
return [self _buttonElementImpl]->name();
}
- (void)setName:(NSString *)name
{
[self _buttonElementImpl]->setName(name);
}
- (long)tabIndex
{
return [self _buttonElementImpl]->tabIndex();
}
- (void)setTabIndex:(long)tabIndex
{
[self _buttonElementImpl]->setTabIndex(tabIndex);
}
- (NSString *)type
{
return [self _buttonElementImpl]->type();
}
- (NSString *)value
{
return [self _buttonElementImpl]->getAttribute(ATTR_VALUE);
}
- (void)setValue:(NSString *)value
{
[self _buttonElementImpl]->setAttribute(ATTR_VALUE, value);
}
@end
@implementation DOMHTMLLabelElement
- (HTMLLabelElementImpl *)_labelElementImpl
{
return static_cast<HTMLLabelElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (DOMHTMLFormElement *)form
{
ElementImpl *formElement = [self _labelElementImpl]->formElement();
if (!formElement)
return 0;
return [DOMHTMLFormElement _formElementWithImpl:static_cast<HTMLGenericFormElementImpl *>(formElement)->form()];
}
- (NSString *)accessKey
{
return [self _labelElementImpl]->getAttribute(ATTR_ACCESSKEY);
}
- (void)setAccessKey:(NSString *)accessKey
{
[self _labelElementImpl]->setAttribute(ATTR_ACCESSKEY, accessKey);
}
- (NSString *)htmlFor
{
return [self _labelElementImpl]->getAttribute(ATTR_FOR);
}
- (void)setHtmlFor:(NSString *)htmlFor
{
[self _labelElementImpl]->setAttribute(ATTR_FOR, htmlFor);
}
@end
@implementation DOMHTMLFieldSetElement
- (HTMLFieldSetElementImpl *)_fieldSetElementImpl
{
return static_cast<HTMLFieldSetElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (DOMHTMLFormElement *)form
{
return [DOMHTMLFormElement _formElementWithImpl:[self _fieldSetElementImpl]->form()];
}
@end
@implementation DOMHTMLLegendElement
- (HTMLLegendElementImpl *)_legendElementImpl
{
return static_cast<HTMLLegendElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (DOMHTMLFormElement *)form
{
return [DOMHTMLFormElement _formElementWithImpl:[self _legendElementImpl]->form()];
}
- (NSString *)accessKey
{
return [self _legendElementImpl]->getAttribute(ATTR_ACCESSKEY);
}
- (void)setAccessKey:(NSString *)accessKey
{
[self _legendElementImpl]->setAttribute(ATTR_ACCESSKEY, accessKey);
}
- (NSString *)align
{
return [self _legendElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _legendElementImpl]->setAttribute(ATTR_ALIGN, align);
}
@end
@implementation DOMHTMLUListElement
- (HTMLUListElementImpl *)_uListElementImpl
{
return static_cast<HTMLUListElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (BOOL)compact
{
return [self _uListElementImpl]->getAttribute(ATTR_COMPACT).isNull();
}
- (void)setCompact:(BOOL)compact
{
[self _uListElementImpl]->setAttribute(ATTR_COMPACT, compact ? "" : 0);
}
- (NSString *)type
{
return [self _uListElementImpl]->getAttribute(ATTR_TYPE);
}
- (void)setType:(NSString *)type
{
[self _uListElementImpl]->setAttribute(ATTR_TYPE, type);
}
@end
@implementation DOMHTMLOListElement
- (HTMLOListElementImpl *)_oListElementImpl
{
return static_cast<HTMLOListElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (BOOL)compact
{
return [self _oListElementImpl]->getAttribute(ATTR_COMPACT).isNull();
}
- (void)setCompact:(BOOL)compact
{
[self _oListElementImpl]->setAttribute(ATTR_COMPACT, compact ? "" : 0);
}
- (long)start
{
return [self _oListElementImpl]->getAttribute(ATTR_START).toInt();
}
- (void)setStart:(long)start
{
DOMString value(QString::number(start));
[self _oListElementImpl]->setAttribute(ATTR_START, value);
}
- (NSString *)type
{
return [self _oListElementImpl]->getAttribute(ATTR_TYPE);
}
- (void)setType:(NSString *)type
{
[self _oListElementImpl]->setAttribute(ATTR_TYPE, type);
}
@end
@implementation DOMHTMLDListElement
- (HTMLDListElementImpl *)_dListElementImpl
{
return static_cast<HTMLDListElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (BOOL)compact
{
return [self _dListElementImpl]->getAttribute(ATTR_COMPACT).isNull();
}
- (void)setCompact:(BOOL)compact
{
[self _dListElementImpl]->setAttribute(ATTR_COMPACT, compact ? "" : 0);
}
@end
@implementation DOMHTMLDirectoryElement
- (HTMLDirectoryElementImpl *)_directoryListElementImpl
{
return static_cast<HTMLDirectoryElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (BOOL)compact
{
return [self _directoryListElementImpl]->getAttribute(ATTR_COMPACT).isNull();
}
- (void)setCompact:(BOOL)compact
{
[self _directoryListElementImpl]->setAttribute(ATTR_COMPACT, compact ? "" : 0);
}
@end
@implementation DOMHTMLMenuElement
- (HTMLMenuElementImpl *)_menuListElementImpl
{
return static_cast<HTMLMenuElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (BOOL)compact
{
return [self _menuListElementImpl]->getAttribute(ATTR_COMPACT).isNull();
}
- (void)setCompact:(BOOL)compact
{
[self _menuListElementImpl]->setAttribute(ATTR_COMPACT, compact ? "" : 0);
}
@end
@implementation DOMHTMLLIElement
- (HTMLLIElementImpl *)_liElementImpl
{
return static_cast<HTMLLIElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)type
{
return [self _liElementImpl]->getAttribute(ATTR_TYPE);
}
- (void)setType:(NSString *)type
{
[self _liElementImpl]->setAttribute(ATTR_TYPE, type);
}
- (long)value
{
return [self _liElementImpl]->getAttribute(ATTR_START).toInt();
}
- (void)setValue:(long)value
{
DOMString string(QString::number(value));
[self _liElementImpl]->setAttribute(ATTR_VALUE, string);
}
@end
@implementation DOMHTMLQuoteElement
- (HTMLGenericElementImpl *)_quoteElementImpl
{
return static_cast<HTMLGenericElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)cite
{
return [self _quoteElementImpl]->getAttribute(ATTR_CITE);
}
- (void)setCite:(NSString *)cite
{
[self _quoteElementImpl]->setAttribute(ATTR_CITE, cite);
}
@end
@implementation DOMHTMLDivElement
- (HTMLDivElementImpl *)_divElementImpl
{
return static_cast<HTMLDivElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)align
{
return [self _divElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _divElementImpl]->setAttribute(ATTR_ALIGN, align);
}
@end
@implementation DOMHTMLParagraphElement
- (HTMLParagraphElementImpl *)_paragraphElementImpl
{
return static_cast<HTMLParagraphElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)align
{
return [self _paragraphElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _paragraphElementImpl]->setAttribute(ATTR_ALIGN, align);
}
@end
@implementation DOMHTMLHeadingElement
- (HTMLHeadingElementImpl *)_headingElementImpl
{
return static_cast<HTMLHeadingElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)align
{
return [self _headingElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _headingElementImpl]->setAttribute(ATTR_ALIGN, align);
}
@end
@implementation DOMHTMLPreElement
- (HTMLPreElementImpl *)_preElementImpl
{
return static_cast<HTMLPreElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (long)width
{
return [self _preElementImpl]->getAttribute(ATTR_WIDTH).toInt();
}
- (void)setWidth:(long)width
{
DOMString string(QString::number(width));
[self _preElementImpl]->setAttribute(ATTR_WIDTH, string);
}
@end
@implementation DOMHTMLBRElement
- (HTMLBRElementImpl *)_BRElementImpl
{
return static_cast<HTMLBRElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)clear
{
return [self _BRElementImpl]->getAttribute(ATTR_CLEAR);
}
- (void)setClear:(NSString *)clear
{
[self _BRElementImpl]->setAttribute(ATTR_CLEAR, clear);
}
@end
@implementation DOMHTMLBaseFontElement
- (HTMLBaseFontElementImpl *)_baseFontElementImpl
{
return static_cast<HTMLBaseFontElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)color
{
return [self _baseFontElementImpl]->getAttribute(ATTR_COLOR);
}
- (void)setColor:(NSString *)color
{
[self _baseFontElementImpl]->setAttribute(ATTR_COLOR, color);
}
- (NSString *)face
{
return [self _baseFontElementImpl]->getAttribute(ATTR_FACE);
}
- (void)setFace:(NSString *)face
{
[self _baseFontElementImpl]->setAttribute(ATTR_FACE, face);
}
- (NSString *)size
{
return [self _baseFontElementImpl]->getAttribute(ATTR_SIZE);
}
- (void)setSize:(NSString *)size
{
[self _baseFontElementImpl]->setAttribute(ATTR_SIZE, size);
}
@end
@implementation DOMHTMLFontElement
- (HTMLFontElementImpl *)_fontElementImpl
{
return static_cast<HTMLFontElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)color
{
return [self _fontElementImpl]->getAttribute(ATTR_COLOR);
}
- (void)setColor:(NSString *)color
{
[self _fontElementImpl]->setAttribute(ATTR_COLOR, color);
}
- (NSString *)face
{
return [self _fontElementImpl]->getAttribute(ATTR_FACE);
}
- (void)setFace:(NSString *)face
{
[self _fontElementImpl]->setAttribute(ATTR_FACE, face);
}
- (NSString *)size
{
return [self _fontElementImpl]->getAttribute(ATTR_SIZE);
}
- (void)setSize:(NSString *)size
{
[self _fontElementImpl]->setAttribute(ATTR_SIZE, size);
}
@end
@implementation DOMHTMLHRElement
- (HTMLHRElementImpl *)_HRElementImpl
{
return static_cast<HTMLHRElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)align
{
return [self _HRElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _HRElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (BOOL)noShade
{
return [self _HRElementImpl]->getAttribute(ATTR_NOSHADE).isNull();
}
- (void)setNoShade:(BOOL)noShade
{
[self _HRElementImpl]->setAttribute(ATTR_CHECKED, noShade ? "" : 0);
}
- (NSString *)size
{
return [self _HRElementImpl]->getAttribute(ATTR_SIZE);
}
- (void)setSize:(NSString *)size
{
[self _HRElementImpl]->setAttribute(ATTR_SIZE, size);
}
- (NSString *)width
{
return [self _HRElementImpl]->getAttribute(ATTR_WIDTH);
}
- (void)setWidth:(NSString *)width
{
[self _HRElementImpl]->setAttribute(ATTR_WIDTH, width);
}
@end
@implementation DOMHTMLModElement
- (HTMLElementImpl *)_modElementImpl
{
return static_cast<HTMLElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)cite
{
return [self _modElementImpl]->getAttribute(ATTR_CITE);
}
- (void)setCite:(NSString *)cite
{
[self _modElementImpl]->setAttribute(ATTR_CITE, cite);
}
- (NSString *)dateTime
{
return [self _modElementImpl]->getAttribute(ATTR_DATETIME);
}
- (void)setDateTime:(NSString *)dateTime
{
[self _modElementImpl]->setAttribute(ATTR_DATETIME, dateTime);
}
@end
@implementation DOMHTMLAnchorElement
- (HTMLAnchorElementImpl *)_anchorElementImpl
{
return static_cast<HTMLAnchorElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)accessKey
{
return [self _anchorElementImpl]->getAttribute(ATTR_ACCESSKEY);
}
- (void)setAccessKey:(NSString *)accessKey
{
[self _anchorElementImpl]->setAttribute(ATTR_ACCESSKEY, accessKey);
}
- (NSString *)charset
{
return [self _anchorElementImpl]->getAttribute(ATTR_CHARSET);
}
- (void)setCharset:(NSString *)charset
{
[self _anchorElementImpl]->setAttribute(ATTR_CHARSET, charset);
}
- (NSString *)coords
{
return [self _anchorElementImpl]->getAttribute(ATTR_COORDS);
}
- (void)setCoords:(NSString *)coords
{
[self _anchorElementImpl]->setAttribute(ATTR_COORDS, coords);
}
- (NSString *)href
{
DOMString s = [self _anchorElementImpl]->getAttribute(ATTR_HREF);
if (!s.isNull()) {
Document doc([self _anchorElementImpl]->getDocument());
s = doc.completeURL(s);
}
return s;
}
- (void)setHref:(NSString *)href
{
[self _anchorElementImpl]->setAttribute(ATTR_HREF, href);
}
- (NSString *)hreflang
{
return [self _anchorElementImpl]->getAttribute(ATTR_HREFLANG);
}
- (void)setHreflang:(NSString *)hreflang
{
[self _anchorElementImpl]->setAttribute(ATTR_HREFLANG, hreflang);
}
- (NSString *)name
{
return [self _anchorElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _anchorElementImpl]->setAttribute(ATTR_NAME, name);
}
- (NSString *)rel
{
return [self _anchorElementImpl]->getAttribute(ATTR_REL);
}
- (void)setRel:(NSString *)rel
{
[self _anchorElementImpl]->setAttribute(ATTR_REL, rel);
}
- (NSString *)rev
{
return [self _anchorElementImpl]->getAttribute(ATTR_REV);
}
- (void)setRev:(NSString *)rev
{
[self _anchorElementImpl]->setAttribute(ATTR_REV, rev);
}
- (NSString *)shape
{
return [self _anchorElementImpl]->getAttribute(ATTR_SHAPE);
}
- (void)setShape:(NSString *)shape
{
[self _anchorElementImpl]->setAttribute(ATTR_SHAPE, shape);
}
- (long)tabIndex
{
return [self _anchorElementImpl]->getAttribute(ATTR_TABINDEX).toInt();
}
- (void)setTabIndex:(long)tabIndex
{
DOMString string(QString::number(tabIndex));
[self _anchorElementImpl]->setAttribute(ATTR_TABINDEX, string);
}
- (NSString *)target
{
return [self _anchorElementImpl]->getAttribute(ATTR_TARGET);
}
- (void)setTarget:(NSString *)target
{
[self _anchorElementImpl]->setAttribute(ATTR_TARGET, target);
}
- (NSString *)type
{
return [self _anchorElementImpl]->getAttribute(ATTR_TYPE);
}
- (void)setType:(NSString *)type
{
[self _anchorElementImpl]->setAttribute(ATTR_TYPE, type);
}
- (void)blur
{
HTMLAnchorElementImpl *impl = [self _anchorElementImpl];
if (impl->getDocument()->focusNode() == impl)
impl->getDocument()->setFocusNode(0);
}
- (void)focus
{
HTMLAnchorElementImpl *impl = [self _anchorElementImpl];
impl->getDocument()->setFocusNode(static_cast<ElementImpl*>(impl));
}
@end
@implementation DOMHTMLImageElement
- (HTMLImageElementImpl *)_imageElementImpl
{
return static_cast<HTMLImageElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)name
{
return [self _imageElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _imageElementImpl]->setAttribute(ATTR_NAME, name);
}
- (NSString *)align
{
return [self _imageElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _imageElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (NSString *)alt
{
return [self _imageElementImpl]->getAttribute(ATTR_ALT);
}
- (void)setAlt:(NSString *)alt
{
[self _imageElementImpl]->setAttribute(ATTR_ALT, alt);
}
- (NSString *)border
{
return [self _imageElementImpl]->getAttribute(ATTR_BORDER);
}
- (void)setBorder:(NSString *)border
{
[self _imageElementImpl]->setAttribute(ATTR_BORDER, border);
}
- (long)height
{
return [self _imageElementImpl]->getAttribute(ATTR_HEIGHT).toInt();
}
- (void)setHeight:(long)height
{
DOMString string(QString::number(height));
[self _imageElementImpl]->setAttribute(ATTR_HEIGHT, string);
}
- (long)hspace
{
return [self _imageElementImpl]->getAttribute(ATTR_HSPACE).toInt();
}
- (void)setHspace:(long)hspace
{
DOMString string(QString::number(hspace));
[self _imageElementImpl]->setAttribute(ATTR_HSPACE, string);
}
- (BOOL)isMap
{
return [self _imageElementImpl]->getAttribute(ATTR_ISMAP).isNull();
}
- (void)setIsMap:(BOOL)isMap
{
[self _imageElementImpl]->setAttribute(ATTR_ISMAP, isMap ? "" : 0);
}
- (NSString *)longDesc
{
return [self _imageElementImpl]->getAttribute(ATTR_LONGDESC);
}
- (void)setLongDesc:(NSString *)longDesc
{
[self _imageElementImpl]->setAttribute(ATTR_LONGDESC, longDesc);
}
- (NSString *)src
{
DOMString s = [self _imageElementImpl]->getAttribute(ATTR_SRC);
if (!s.isNull()) {
Document doc([self _imageElementImpl]->getDocument());
s = doc.completeURL(s);
}
return s;
}
- (void)setSrc:(NSString *)src
{
[self _imageElementImpl]->setAttribute(ATTR_SRC, src);
}
- (NSString *)useMap
{
return [self _imageElementImpl]->getAttribute(ATTR_USEMAP);
}
- (void)setUseMap:(NSString *)useMap
{
[self _imageElementImpl]->setAttribute(ATTR_USEMAP, useMap);
}
- (long)vspace
{
return [self _imageElementImpl]->getAttribute(ATTR_VSPACE).toInt();
}
- (void)setVspace:(long)vspace
{
DOMString string(QString::number(vspace));
[self _imageElementImpl]->setAttribute(ATTR_VSPACE, string);
}
- (long)width
{
return [self _imageElementImpl]->getAttribute(ATTR_WIDTH).toInt();
}
- (void)setWidth:(long)width
{
DOMString string(QString::number(width));
[self _imageElementImpl]->setAttribute(ATTR_WIDTH, string);
}
@end
@implementation DOMHTMLObjectElement
- (HTMLObjectElementImpl *)_objectElementImpl
{
return static_cast<HTMLObjectElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (DOMHTMLFormElement *)form
{
return [DOMHTMLFormElement _formElementWithImpl:[self _objectElementImpl]->form()];
}
- (NSString *)code
{
return [self _objectElementImpl]->getAttribute(ATTR_CODE);
}
- (void)setCode:(NSString *)code
{
[self _objectElementImpl]->setAttribute(ATTR_CODE, code);
}
- (NSString *)align
{
return [self _objectElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _objectElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (NSString *)archive
{
return [self _objectElementImpl]->getAttribute(ATTR_ARCHIVE);
}
- (void)setArchive:(NSString *)archive
{
[self _objectElementImpl]->setAttribute(ATTR_ARCHIVE, archive);
}
- (NSString *)border
{
return [self _objectElementImpl]->getAttribute(ATTR_BORDER);
}
- (void)setBorder:(NSString *)border
{
[self _objectElementImpl]->setAttribute(ATTR_BORDER, border);
}
- (NSString *)codeBase
{
return [self _objectElementImpl]->getAttribute(ATTR_CODEBASE);
}
- (void)setCodeBase:(NSString *)codeBase
{
[self _objectElementImpl]->setAttribute(ATTR_CODEBASE, codeBase);
}
- (NSString *)codeType
{
return [self _objectElementImpl]->getAttribute(ATTR_CODETYPE);
}
- (void)setCodeType:(NSString *)codeType
{
[self _objectElementImpl]->setAttribute(ATTR_CODETYPE, codeType);
}
- (NSString *)data
{
return [self _objectElementImpl]->getAttribute(ATTR_DATA);
}
- (void)setData:(NSString *)data
{
[self _objectElementImpl]->setAttribute(ATTR_DATA, data);
}
- (BOOL)declare
{
return [self _objectElementImpl]->getAttribute(ATTR_DECLARE).isNull();
}
- (void)setDeclare:(BOOL)declare
{
[self _objectElementImpl]->setAttribute(ATTR_DECLARE, declare ? "" : 0);
}
- (NSString *)height
{
return [self _objectElementImpl]->getAttribute(ATTR_HEIGHT);
}
- (void)setHeight:(NSString *)height
{
[self _objectElementImpl]->setAttribute(ATTR_HEIGHT, height);
}
- (long)hspace
{
return [self _objectElementImpl]->getAttribute(ATTR_HSPACE).toInt();
}
- (void)setHspace:(long)hspace
{
DOMString string(QString::number(hspace));
[self _objectElementImpl]->setAttribute(ATTR_HSPACE, string);
}
- (NSString *)name
{
return [self _objectElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _objectElementImpl]->setAttribute(ATTR_NAME, name);
}
- (NSString *)standby
{
return [self _objectElementImpl]->getAttribute(ATTR_STANDBY);
}
- (void)setStandby:(NSString *)standby
{
[self _objectElementImpl]->setAttribute(ATTR_STANDBY, standby);
}
- (long)tabIndex
{
return [self _objectElementImpl]->getAttribute(ATTR_TABINDEX).toInt();
}
- (void)setTabIndex:(long)tabIndex
{
DOMString string(QString::number(tabIndex));
[self _objectElementImpl]->setAttribute(ATTR_TABINDEX, string);
}
- (NSString *)type
{
return [self _objectElementImpl]->getAttribute(ATTR_TYPE);
}
- (void)setType:(NSString *)type
{
[self _objectElementImpl]->setAttribute(ATTR_TYPE, type);
}
- (NSString *)useMap
{
return [self _objectElementImpl]->getAttribute(ATTR_USEMAP);
}
- (void)setUseMap:(NSString *)useMap
{
[self _objectElementImpl]->setAttribute(ATTR_USEMAP, useMap);
}
- (long)vspace
{
return [self _objectElementImpl]->getAttribute(ATTR_VSPACE).toInt();
}
- (void)setVspace:(long)vspace
{
DOMString string(QString::number(vspace));
[self _objectElementImpl]->setAttribute(ATTR_VSPACE, string);
}
- (NSString *)width
{
return [self _objectElementImpl]->getAttribute(ATTR_WIDTH);
}
- (void)setWidth:(NSString *)width
{
[self _objectElementImpl]->setAttribute(ATTR_WIDTH, width);
}
- (DOMDocument *)contentDocument
{
return [DOMDocument _documentWithImpl:[self _objectElementImpl]->contentDocument()];
}
@end
@implementation DOMHTMLParamElement
- (HTMLParamElementImpl *)_paramElementImpl
{
return static_cast<HTMLParamElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)name
{
return [self _paramElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _paramElementImpl]->setAttribute(ATTR_NAME, name);
}
- (NSString *)type
{
return [self _paramElementImpl]->getAttribute(ATTR_TYPE);
}
- (void)setType:(NSString *)type
{
[self _paramElementImpl]->setAttribute(ATTR_TYPE, type);
}
- (NSString *)value
{
return [self _paramElementImpl]->getAttribute(ATTR_VALUE);
}
- (void)setValue:(NSString *)value
{
[self _paramElementImpl]->setAttribute(ATTR_VALUE, value);
}
- (NSString *)valueType
{
return [self _paramElementImpl]->getAttribute(ATTR_VALUETYPE);
}
- (void)setValueType:(NSString *)valueType
{
[self _paramElementImpl]->setAttribute(ATTR_VALUETYPE, valueType);
}
@end
@implementation DOMHTMLAppletElement
- (HTMLAppletElementImpl *)_appletElementImpl
{
return static_cast<HTMLAppletElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)align
{
return [self _appletElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _appletElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (NSString *)alt
{
return [self _appletElementImpl]->getAttribute(ATTR_ALT);
}
- (void)setAlt:(NSString *)alt
{
[self _appletElementImpl]->setAttribute(ATTR_ALT, alt);
}
- (NSString *)archive
{
return [self _appletElementImpl]->getAttribute(ATTR_ARCHIVE);
}
- (void)setArchive:(NSString *)archive
{
[self _appletElementImpl]->setAttribute(ATTR_ARCHIVE, archive);
}
- (NSString *)code
{
return [self _appletElementImpl]->getAttribute(ATTR_CODE);
}
- (void)setCode:(NSString *)code
{
[self _appletElementImpl]->setAttribute(ATTR_CODE, code);
}
- (NSString *)codeBase
{
return [self _appletElementImpl]->getAttribute(ATTR_CODEBASE);
}
- (void)setCodeBase:(NSString *)codeBase
{
[self _appletElementImpl]->setAttribute(ATTR_CODEBASE, codeBase);
}
- (NSString *)height
{
return [self _appletElementImpl]->getAttribute(ATTR_HEIGHT);
}
- (void)setHeight:(NSString *)height
{
[self _appletElementImpl]->setAttribute(ATTR_HEIGHT, height);
}
- (long)hspace
{
return [self _appletElementImpl]->getAttribute(ATTR_HSPACE).toInt();
}
- (void)setHspace:(long)hspace
{
DOMString string(QString::number(hspace));
[self _appletElementImpl]->setAttribute(ATTR_HSPACE, string);
}
- (NSString *)name
{
return [self _appletElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _appletElementImpl]->setAttribute(ATTR_NAME, name);
}
- (NSString *)object
{
return [self _appletElementImpl]->getAttribute(ATTR_OBJECT);
}
- (void)setObject:(NSString *)object
{
[self _appletElementImpl]->setAttribute(ATTR_OBJECT, object);
}
- (long)vspace
{
return [self _appletElementImpl]->getAttribute(ATTR_VSPACE).toInt();
}
- (void)setVspace:(long)vspace
{
DOMString string(QString::number(vspace));
[self _appletElementImpl]->setAttribute(ATTR_VSPACE, string);
}
- (NSString *)width
{
return [self _appletElementImpl]->getAttribute(ATTR_WIDTH);
}
- (void)setWidth:(NSString *)width
{
[self _appletElementImpl]->setAttribute(ATTR_WIDTH, width);
}
@end
@implementation DOMHTMLMapElement
- (HTMLMapElementImpl *)_mapElementImpl
{
return static_cast<HTMLMapElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (DOMHTMLCollection *)areas
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _mapElementImpl], HTMLCollectionImpl::MAP_AREAS);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (NSString *)name
{
return [self _mapElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _mapElementImpl]->setAttribute(ATTR_NAME, name);
}
@end
@implementation DOMHTMLAreaElement
- (HTMLAreaElementImpl *)_areaElementImpl
{
return static_cast<HTMLAreaElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)accessKey
{
return [self _areaElementImpl]->getAttribute(ATTR_ACCESSKEY);
}
- (void)setAccessKey:(NSString *)accessKey
{
[self _areaElementImpl]->setAttribute(ATTR_ACCESSKEY, accessKey);
}
- (NSString *)alt
{
return [self _areaElementImpl]->getAttribute(ATTR_ALT);
}
- (void)setAlt:(NSString *)alt
{
[self _areaElementImpl]->setAttribute(ATTR_ALT, alt);
}
- (NSString *)coords
{
return [self _areaElementImpl]->getAttribute(ATTR_COORDS);
}
- (void)setCoords:(NSString *)coords
{
[self _areaElementImpl]->setAttribute(ATTR_COORDS, coords);
}
- (NSString *)href
{
DOMString s = [self _areaElementImpl]->getAttribute(ATTR_HREF);
if (!s.isNull()) {
Document doc([self _areaElementImpl]->getDocument());
s = doc.completeURL(s);
}
return s;
}
- (void)setHref:(NSString *)href
{
[self _areaElementImpl]->setAttribute(ATTR_HREF, href);
}
- (BOOL)noHref
{
return [self _areaElementImpl]->getAttribute(ATTR_NOHREF).isNull();
}
- (void)setNoHref:(BOOL)noHref
{
[self _areaElementImpl]->setAttribute(ATTR_NOHREF, noHref ? "" : 0);
}
- (NSString *)shape
{
return [self _areaElementImpl]->getAttribute(ATTR_SHAPE);
}
- (void)setShape:(NSString *)shape
{
[self _areaElementImpl]->setAttribute(ATTR_SHAPE, shape);
}
- (long)tabIndex
{
return [self _areaElementImpl]->getAttribute(ATTR_TABINDEX).toInt();
}
- (void)setTabIndex:(long)tabIndex
{
DOMString string(QString::number(tabIndex));
[self _areaElementImpl]->setAttribute(ATTR_TABINDEX, string);
}
- (NSString *)target
{
return [self _areaElementImpl]->getAttribute(ATTR_TARGET);
}
- (void)setTarget:(NSString *)target
{
[self _areaElementImpl]->setAttribute(ATTR_TARGET, target);
}
@end
@implementation DOMHTMLScriptElement
- (HTMLScriptElementImpl *)_scriptElementImpl
{
return static_cast<HTMLScriptElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)text
{
return [self _scriptElementImpl]->getAttribute(ATTR_TEXT);
}
- (void)setText:(NSString *)text
{
[self _scriptElementImpl]->setAttribute(ATTR_TEXT, text);
}
- (NSString *)htmlFor
{
ASSERT_WITH_MESSAGE(0, "not implemented by khtml");
return nil;
}
- (void)setHtmlFor:(NSString *)htmlFor
{
ASSERT_WITH_MESSAGE(0, "not implemented by khtml");
}
- (NSString *)event
{
ASSERT_WITH_MESSAGE(0, "not implemented by khtml");
return nil;
}
- (void)setEvent:(NSString *)event
{
ASSERT_WITH_MESSAGE(0, "not implemented by khtml");
}
- (NSString *)charset
{
return [self _scriptElementImpl]->getAttribute(ATTR_CHARSET);
}
- (void)setCharset:(NSString *)charset
{
[self _scriptElementImpl]->setAttribute(ATTR_CHARSET, charset);
}
- (BOOL)defer
{
return [self _scriptElementImpl]->getAttribute(ATTR_DEFER).isNull();
}
- (void)setDefer:(BOOL)defer
{
[self _scriptElementImpl]->setAttribute(ATTR_DEFER, defer ? "" : 0);
}
- (NSString *)src
{
return [self _scriptElementImpl]->getAttribute(ATTR_SRC);
}
- (void)setSrc:(NSString *)src
{
[self _scriptElementImpl]->setAttribute(ATTR_SRC, src);
}
- (NSString *)type
{
return [self _scriptElementImpl]->getAttribute(ATTR_TYPE);
}
- (void)setType:(NSString *)type
{
[self _scriptElementImpl]->setAttribute(ATTR_TYPE, type);
}
@end
@implementation DOMHTMLTableCaptionElement
- (NSString *)align
{
return [self _tableCaptionElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _tableCaptionElementImpl]->setAttribute(ATTR_ALIGN, align);
}
@end
@implementation DOMHTMLTableCaptionElement (WebCoreInternal)
+ (DOMHTMLTableCaptionElement *)_tableCaptionElementWithImpl:(HTMLTableCaptionElementImpl *)impl
{
return static_cast<DOMHTMLTableCaptionElement *>([DOMNode _nodeWithImpl:impl]);
}
- (HTMLTableCaptionElementImpl *)_tableCaptionElementImpl
{
return static_cast<HTMLTableCaptionElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
@end
@implementation DOMHTMLTableSectionElement
- (NSString *)align
{
return [self _tableSectionElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _tableSectionElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (NSString *)ch
{
return [self _tableSectionElementImpl]->getAttribute(ATTR_CHAR);
}
- (void)setCh:(NSString *)ch
{
[self _tableSectionElementImpl]->setAttribute(ATTR_CHAR, ch);
}
- (NSString *)chOff
{
return [self _tableSectionElementImpl]->getAttribute(ATTR_CHAROFF);
}
- (void)setChOff:(NSString *)chOff
{
[self _tableSectionElementImpl]->setAttribute(ATTR_CHAROFF, chOff);
}
- (NSString *)vAlign
{
return [self _tableSectionElementImpl]->getAttribute(ATTR_VALIGN);
}
- (void)setVAlign:(NSString *)vAlign
{
[self _tableSectionElementImpl]->setAttribute(ATTR_VALIGN, vAlign);
}
- (DOMHTMLCollection *)rows
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _tableSectionElementImpl], HTMLCollectionImpl::TABLE_ROWS);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (DOMHTMLElement *)insertRow:(long)index
{
int exceptioncode = 0;
HTMLTableElementImpl *impl = static_cast<HTMLTableElementImpl *>([self _tableSectionElementImpl]->insertRow(index, exceptioncode));
raiseOnDOMError(exceptioncode);
return [DOMHTMLTableElement _tableElementWithImpl:impl];
}
- (void)deleteRow:(long)index
{
int exceptioncode = 0;
[self _tableSectionElementImpl]->deleteRow(index, exceptioncode);
raiseOnDOMError(exceptioncode);
}
@end
@implementation DOMHTMLTableSectionElement (WebCoreInternal)
+ (DOMHTMLTableSectionElement *)_tableSectionElementWithImpl:(HTMLTableSectionElementImpl *)impl
{
return static_cast<DOMHTMLTableSectionElement *>([DOMNode _nodeWithImpl:impl]);
}
- (HTMLTableSectionElementImpl *)_tableSectionElementImpl
{
return static_cast<HTMLTableSectionElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
@end
@implementation DOMHTMLTableElement
- (DOMHTMLTableCaptionElement *)caption
{
return [DOMHTMLTableCaptionElement _tableCaptionElementWithImpl:[self _tableElementImpl]->caption()];
}
- (void)setCaption:(DOMHTMLTableCaptionElement *)caption
{
[self _tableElementImpl]->setCaption([caption _tableCaptionElementImpl]);
}
- (DOMHTMLTableSectionElement *)tHead
{
return [DOMHTMLTableSectionElement _tableSectionElementWithImpl:[self _tableElementImpl]->tHead()];
}
- (void)setTHead:(DOMHTMLTableSectionElement *)tHead
{
[self _tableElementImpl]->setTHead([tHead _tableSectionElementImpl]);
}
- (DOMHTMLTableSectionElement *)tFoot
{
return [DOMHTMLTableSectionElement _tableSectionElementWithImpl:[self _tableElementImpl]->tFoot()];
}
- (void)setTFoot:(DOMHTMLTableSectionElement *)tFoot
{
[self _tableElementImpl]->setTFoot([tFoot _tableSectionElementImpl]);
}
- (DOMHTMLCollection *)rows
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _tableElementImpl], HTMLCollectionImpl::TABLE_ROWS);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (DOMHTMLCollection *)tBodies
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _tableElementImpl], HTMLCollectionImpl::TABLE_TBODIES);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (NSString *)align
{
return [self _tableElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _tableElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (NSString *)bgColor
{
return [self _tableElementImpl]->getAttribute(ATTR_BGCOLOR);
}
- (void)setBgColor:(NSString *)bgColor
{
[self _tableElementImpl]->setAttribute(ATTR_BGCOLOR, bgColor);
}
- (NSString *)border
{
return [self _tableElementImpl]->getAttribute(ATTR_BORDER);
}
- (void)setBorder:(NSString *)border
{
[self _tableElementImpl]->setAttribute(ATTR_BORDER, border);
}
- (NSString *)cellPadding
{
return [self _tableElementImpl]->getAttribute(ATTR_CELLPADDING);
}
- (void)setCellPadding:(NSString *)cellPadding
{
[self _tableElementImpl]->setAttribute(ATTR_CELLPADDING, cellPadding);
}
- (NSString *)cellSpacing
{
return [self _tableElementImpl]->getAttribute(ATTR_CELLSPACING);
}
- (void)setCellSpacing:(NSString *)cellSpacing
{
[self _tableElementImpl]->setAttribute(ATTR_CELLSPACING, cellSpacing);
}
- (NSString *)frameBorders
{
return [self _tableElementImpl]->getAttribute(ATTR_FRAME);
}
- (void)setFrameBorders:(NSString *)frameBorders
{
[self _tableElementImpl]->setAttribute(ATTR_FRAME, frameBorders);
}
- (NSString *)rules
{
return [self _tableElementImpl]->getAttribute(ATTR_RULES);
}
- (void)setRules:(NSString *)rules
{
[self _tableElementImpl]->setAttribute(ATTR_RULES, rules);
}
- (NSString *)summary
{
return [self _tableElementImpl]->getAttribute(ATTR_SUMMARY);
}
- (void)setSummary:(NSString *)summary
{
[self _tableElementImpl]->setAttribute(ATTR_SUMMARY, summary);
}
- (NSString *)width
{
return [self _tableElementImpl]->getAttribute(ATTR_WIDTH);
}
- (void)setWidth:(NSString *)width
{
[self _tableElementImpl]->setAttribute(ATTR_WIDTH, width);
}
- (DOMHTMLElement *)createTHead
{
HTMLTableSectionElementImpl *impl = static_cast<HTMLTableSectionElementImpl *>([self _tableElementImpl]->createTHead());
return [DOMHTMLTableSectionElement _tableSectionElementWithImpl:impl];
}
- (void)deleteTHead
{
[self _tableElementImpl]->deleteTHead();
}
- (DOMHTMLElement *)createTFoot
{
HTMLTableSectionElementImpl *impl = static_cast<HTMLTableSectionElementImpl *>([self _tableElementImpl]->createTFoot());
return [DOMHTMLTableSectionElement _tableSectionElementWithImpl:impl];
}
- (void)deleteTFoot
{
[self _tableElementImpl]->deleteTFoot();
}
- (DOMHTMLElement *)createCaption
{
HTMLTableCaptionElementImpl *impl = static_cast<HTMLTableCaptionElementImpl *>([self _tableElementImpl]->createCaption());
return [DOMHTMLTableCaptionElement _tableCaptionElementWithImpl:impl];
}
- (void)deleteCaption
{
[self _tableElementImpl]->deleteCaption();
}
- (DOMHTMLElement *)insertRow:(long)index
{
int exceptioncode = 0;
HTMLTableElementImpl *impl = static_cast<HTMLTableElementImpl *>([self _tableElementImpl]->insertRow(index, exceptioncode));
raiseOnDOMError(exceptioncode);
return [DOMHTMLTableElement _tableElementWithImpl:impl];
}
- (void)deleteRow:(long)index
{
int exceptioncode = 0;
[self _tableElementImpl]->deleteRow(index, exceptioncode);
raiseOnDOMError(exceptioncode);
}
@end
@implementation DOMHTMLTableElement (WebCoreInternal)
+ (DOMHTMLTableElement *)_tableElementWithImpl:(HTMLTableElementImpl *)impl
{
return static_cast<DOMHTMLTableElement *>([DOMNode _nodeWithImpl:impl]);
}
- (HTMLTableElementImpl *)_tableElementImpl
{
return static_cast<HTMLTableElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
@end
@implementation DOMHTMLTableColElement
- (HTMLTableColElementImpl *)_tableColElementImpl
{
return static_cast<HTMLTableColElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)align
{
return [self _tableColElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _tableColElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (NSString *)ch
{
return [self _tableColElementImpl]->getAttribute(ATTR_CHAR);
}
- (void)setCh:(NSString *)ch
{
[self _tableColElementImpl]->setAttribute(ATTR_CHAR, ch);
}
- (NSString *)chOff
{
return [self _tableColElementImpl]->getAttribute(ATTR_CHAROFF);
}
- (void)setChOff:(NSString *)chOff
{
[self _tableColElementImpl]->setAttribute(ATTR_CHAROFF, chOff);
}
- (long)span
{
return [self _tableColElementImpl]->getAttribute(ATTR_SPAN).toInt();
}
- (void)setSpan:(long)span
{
DOMString string(QString::number(span));
[self _tableColElementImpl]->setAttribute(ATTR_SPAN, string);
}
- (NSString *)vAlign
{
return [self _tableColElementImpl]->getAttribute(ATTR_VALIGN);
}
- (void)setVAlign:(NSString *)vAlign
{
[self _tableColElementImpl]->setAttribute(ATTR_VALIGN, vAlign);
}
- (NSString *)width
{
return [self _tableColElementImpl]->getAttribute(ATTR_WIDTH);
}
- (void)setWidth:(NSString *)width
{
[self _tableColElementImpl]->setAttribute(ATTR_WIDTH, width);
}
@end
@implementation DOMHTMLTableRowElement
- (HTMLTableRowElementImpl *)_tableRowElementImpl
{
return static_cast<HTMLTableRowElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (long)rowIndex
{
return [self _tableRowElementImpl]->rowIndex();
}
- (long)sectionRowIndex
{
return [self _tableRowElementImpl]->sectionRowIndex();
}
- (DOMHTMLCollection *)cells
{
HTMLCollectionImpl *collection = new HTMLCollectionImpl([self _tableRowElementImpl], HTMLCollectionImpl::TR_CELLS);
return [DOMHTMLCollection _collectionWithImpl:collection];
}
- (NSString *)align
{
return [self _tableRowElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _tableRowElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (NSString *)bgColor
{
return [self _tableRowElementImpl]->getAttribute(ATTR_BGCOLOR);
}
- (void)setBgColor:(NSString *)bgColor
{
[self _tableRowElementImpl]->setAttribute(ATTR_BGCOLOR, bgColor);
}
- (NSString *)ch
{
return [self _tableRowElementImpl]->getAttribute(ATTR_CHAR);
}
- (void)setCh:(NSString *)ch
{
[self _tableRowElementImpl]->setAttribute(ATTR_CHAR, ch);
}
- (NSString *)chOff
{
return [self _tableRowElementImpl]->getAttribute(ATTR_CHAROFF);
}
- (void)setChOff:(NSString *)chOff
{
[self _tableRowElementImpl]->setAttribute(ATTR_CHAROFF, chOff);
}
- (NSString *)vAlign
{
return [self _tableRowElementImpl]->getAttribute(ATTR_VALIGN);
}
- (void)setVAlign:(NSString *)vAlign
{
[self _tableRowElementImpl]->setAttribute(ATTR_VALIGN, vAlign);
}
- (DOMHTMLElement *)insertCell:(long)index
{
int exceptioncode = 0;
HTMLTableCellElementImpl *impl = static_cast<HTMLTableCellElementImpl *>([self _tableRowElementImpl]->insertCell(index, exceptioncode));
raiseOnDOMError(exceptioncode);
return [DOMHTMLTableCellElement _tableCellElementWithImpl:impl];
}
- (void)deleteCell:(long)index
{
int exceptioncode = 0;
[self _tableRowElementImpl]->deleteCell(index, exceptioncode);
raiseOnDOMError(exceptioncode);
}
@end
@implementation DOMHTMLTableCellElement
- (long)cellIndex
{
return [self _tableCellElementImpl]->cellIndex();
}
- (NSString *)abbr
{
return [self _tableCellElementImpl]->getAttribute(ATTR_ABBR);
}
- (void)setAbbr:(NSString *)abbr
{
[self _tableCellElementImpl]->setAttribute(ATTR_ABBR, abbr);
}
- (NSString *)align
{
return [self _tableCellElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _tableCellElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (NSString *)axis
{
return [self _tableCellElementImpl]->getAttribute(ATTR_AXIS);
}
- (void)setAxis:(NSString *)axis
{
[self _tableCellElementImpl]->setAttribute(ATTR_AXIS, axis);
}
- (NSString *)bgColor
{
return [self _tableCellElementImpl]->getAttribute(ATTR_BGCOLOR);
}
- (void)setBgColor:(NSString *)bgColor
{
[self _tableCellElementImpl]->setAttribute(ATTR_BGCOLOR, bgColor);
}
- (NSString *)ch
{
return [self _tableCellElementImpl]->getAttribute(ATTR_CHAR);
}
- (void)setCh:(NSString *)ch
{
[self _tableCellElementImpl]->setAttribute(ATTR_CHAR, ch);
}
- (NSString *)chOff
{
return [self _tableCellElementImpl]->getAttribute(ATTR_CHAROFF);
}
- (void)setChOff:(NSString *)chOff
{
[self _tableCellElementImpl]->setAttribute(ATTR_CHAROFF, chOff);
}
- (long)colSpan
{
return [self _tableCellElementImpl]->getAttribute(ATTR_COLSPAN).toInt();
}
- (void)setColSpan:(long)colSpan
{
DOMString string(QString::number(colSpan));
[self _tableCellElementImpl]->setAttribute(ATTR_COLSPAN, string);
}
- (NSString *)headers
{
return [self _tableCellElementImpl]->getAttribute(ATTR_HEADERS);
}
- (void)setHeaders:(NSString *)headers
{
[self _tableCellElementImpl]->setAttribute(ATTR_HEADERS, headers);
}
- (NSString *)height
{
return [self _tableCellElementImpl]->getAttribute(ATTR_HEIGHT);
}
- (void)setHeight:(NSString *)height
{
[self _tableCellElementImpl]->setAttribute(ATTR_HEIGHT, height);
}
- (BOOL)noWrap
{
return [self _tableCellElementImpl]->getAttribute(ATTR_NOWRAP).isNull();
}
- (void)setNoWrap:(BOOL)noWrap
{
[self _tableCellElementImpl]->setAttribute(ATTR_NOWRAP, noWrap ? "" : 0);
}
- (long)rowSpan
{
return [self _tableCellElementImpl]->getAttribute(ATTR_ROWSPAN).toInt();
}
- (void)setRowSpan:(long)rowSpan
{
DOMString string(QString::number(rowSpan));
[self _tableCellElementImpl]->setAttribute(ATTR_ROWSPAN, string);
}
- (NSString *)scope
{
return [self _tableCellElementImpl]->getAttribute(ATTR_SCOPE);
}
- (void)setScope:(NSString *)scope
{
[self _tableCellElementImpl]->setAttribute(ATTR_SCOPE, scope);
}
- (NSString *)vAlign
{
return [self _tableCellElementImpl]->getAttribute(ATTR_VALIGN);
}
- (void)setVAlign:(NSString *)vAlign
{
[self _tableCellElementImpl]->setAttribute(ATTR_VALIGN, vAlign);
}
- (NSString *)width
{
return [self _tableCellElementImpl]->getAttribute(ATTR_WIDTH);
}
- (void)setWidth:(NSString *)width
{
[self _tableCellElementImpl]->setAttribute(ATTR_WIDTH, width);
}
@end
@implementation DOMHTMLTableCellElement (WebCoreInternal)
+ (DOMHTMLTableCellElement *)_tableCellElementWithImpl:(HTMLTableCellElementImpl *)impl
{
return static_cast<DOMHTMLTableCellElement *>([DOMNode _nodeWithImpl:impl]);
}
- (HTMLTableCellElementImpl *)_tableCellElementImpl
{
return static_cast<HTMLTableCellElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
@end
@implementation DOMHTMLFrameSetElement
- (HTMLFrameSetElementImpl *)_frameSetElementImpl
{
return static_cast<HTMLFrameSetElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)rows
{
return [self _frameSetElementImpl]->getAttribute(ATTR_ROWS);
}
- (void)setRows:(NSString *)rows
{
[self _frameSetElementImpl]->setAttribute(ATTR_ROWS, rows);
}
- (NSString *)cols
{
return [self _frameSetElementImpl]->getAttribute(ATTR_COLS);
}
- (void)setCols:(NSString *)cols
{
[self _frameSetElementImpl]->setAttribute(ATTR_COLS, cols);
}
@end
@implementation DOMHTMLFrameElement
- (HTMLFrameElementImpl *)_frameElementImpl
{
return static_cast<HTMLFrameElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)frameBorder
{
return [self _frameElementImpl]->getAttribute(ATTR_FRAMEBORDER);
}
- (void)setFrameBorder:(NSString *)frameBorder
{
[self _frameElementImpl]->setAttribute(ATTR_FRAMEBORDER, frameBorder);
}
- (NSString *)longDesc
{
return [self _frameElementImpl]->getAttribute(ATTR_LONGDESC);
}
- (void)setLongDesc:(NSString *)longDesc
{
[self _frameElementImpl]->setAttribute(ATTR_LONGDESC, longDesc);
}
- (NSString *)marginHeight
{
return [self _frameElementImpl]->getAttribute(ATTR_MARGINHEIGHT);
}
- (void)setMarginHeight:(NSString *)marginHeight
{
[self _frameElementImpl]->setAttribute(ATTR_MARGINHEIGHT, marginHeight);
}
- (NSString *)marginWidth
{
return [self _frameElementImpl]->getAttribute(ATTR_MARGINWIDTH);
}
- (void)setMarginWidth:(NSString *)marginWidth
{
[self _frameElementImpl]->setAttribute(ATTR_MARGINWIDTH, marginWidth);
}
- (NSString *)name
{
return [self _frameElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _frameElementImpl]->setAttribute(ATTR_NAME, name);
}
- (BOOL)noResize
{
return [self _frameElementImpl]->getAttribute(ATTR_NORESIZE).isNull();
}
- (void)setNoResize:(BOOL)noResize
{
[self _frameElementImpl]->setAttribute(ATTR_NORESIZE, noResize ? "" : 0);
}
- (NSString *)scrolling
{
return [self _frameElementImpl]->getAttribute(ATTR_SCROLLING);
}
- (void)setScrolling:(NSString *)scrolling
{
[self _frameElementImpl]->setAttribute(ATTR_SCROLLING, scrolling);
}
- (NSString *)src
{
return [self _frameElementImpl]->getAttribute(ATTR_SRC);
}
- (void)setSrc:(NSString *)src
{
[self _frameElementImpl]->setAttribute(ATTR_SRC, src);
}
- (DOMDocument *)contentDocument
{
return [DOMDocument _documentWithImpl:[self _frameElementImpl]->contentDocument()];
}
@end
@implementation DOMHTMLIFrameElement
- (HTMLIFrameElementImpl *)_IFrameElementImpl
{
return static_cast<HTMLIFrameElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)align
{
return [self _IFrameElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _IFrameElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (NSString *)frameBorder
{
return [self _IFrameElementImpl]->getAttribute(ATTR_FRAMEBORDER);
}
- (void)setFrameBorder:(NSString *)frameBorder
{
[self _IFrameElementImpl]->setAttribute(ATTR_FRAMEBORDER, frameBorder);
}
- (NSString *)height
{
return [self _IFrameElementImpl]->getAttribute(ATTR_HEIGHT);
}
- (void)setHeight:(NSString *)height
{
[self _IFrameElementImpl]->setAttribute(ATTR_HEIGHT, height);
}
- (NSString *)longDesc
{
return [self _IFrameElementImpl]->getAttribute(ATTR_LONGDESC);
}
- (void)setLongDesc:(NSString *)longDesc
{
[self _IFrameElementImpl]->setAttribute(ATTR_LONGDESC, longDesc);
}
- (NSString *)marginHeight
{
return [self _IFrameElementImpl]->getAttribute(ATTR_MARGINHEIGHT);
}
- (void)setMarginHeight:(NSString *)marginHeight
{
[self _IFrameElementImpl]->setAttribute(ATTR_MARGINHEIGHT, marginHeight);
}
- (NSString *)marginWidth
{
return [self _IFrameElementImpl]->getAttribute(ATTR_MARGINWIDTH);
}
- (void)setMarginWidth:(NSString *)marginWidth
{
[self _IFrameElementImpl]->setAttribute(ATTR_MARGINWIDTH, marginWidth);
}
- (NSString *)name
{
return [self _IFrameElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _IFrameElementImpl]->setAttribute(ATTR_NAME, name);
}
- (BOOL)noResize
{
return [self _IFrameElementImpl]->getAttribute(ATTR_NORESIZE).isNull();
}
- (void)setNoResize:(BOOL)noResize
{
[self _IFrameElementImpl]->setAttribute(ATTR_NORESIZE, noResize ? "" : 0);
}
- (NSString *)scrolling
{
return [self _IFrameElementImpl]->getAttribute(ATTR_SCROLLING);
}
- (void)setScrolling:(NSString *)scrolling
{
[self _IFrameElementImpl]->setAttribute(ATTR_SCROLLING, scrolling);
}
- (NSString *)src
{
return [self _IFrameElementImpl]->getAttribute(ATTR_SRC);
}
- (void)setSrc:(NSString *)src
{
[self _IFrameElementImpl]->setAttribute(ATTR_SRC, src);
}
- (NSString *)width
{
return [self _IFrameElementImpl]->getAttribute(ATTR_WIDTH);
}
- (void)setWidth:(NSString *)width
{
[self _IFrameElementImpl]->setAttribute(ATTR_WIDTH, width);
}
- (DOMDocument *)contentDocument
{
return [DOMDocument _documentWithImpl:[self _IFrameElementImpl]->contentDocument()];
}
@end
#pragma mark DOM EXTENSIONS
@implementation DOMHTMLEmbedElement
- (HTMLEmbedElementImpl *)_embedElementImpl
{
return static_cast<HTMLEmbedElementImpl *>(DOM_cast<NodeImpl *>(_internal));
}
- (NSString *)align
{
return [self _embedElementImpl]->getAttribute(ATTR_ALIGN);
}
- (void)setAlign:(NSString *)align
{
[self _embedElementImpl]->setAttribute(ATTR_ALIGN, align);
}
- (long)height
{
return [self _embedElementImpl]->getAttribute(ATTR_HEIGHT).toInt();
}
- (void)setHeight:(long)height
{
DOMString string(QString::number(height));
[self _embedElementImpl]->setAttribute(ATTR_HEIGHT, string);
}
- (NSString *)name
{
return [self _embedElementImpl]->getAttribute(ATTR_NAME);
}
- (void)setName:(NSString *)name
{
[self _embedElementImpl]->setAttribute(ATTR_NAME, name);
}
- (NSString *)src
{
return [self _embedElementImpl]->getAttribute(ATTR_SRC);
}
- (void)setSrc:(NSString *)src
{
[self _embedElementImpl]->setAttribute(ATTR_SRC, src);
}
- (NSString *)type
{
return [self _embedElementImpl]->getAttribute(ATTR_TYPE);
}
- (void)setType:(NSString *)type
{
[self _embedElementImpl]->setAttribute(ATTR_TYPE, type);
}
- (long)width
{
return [self _embedElementImpl]->getAttribute(ATTR_WIDTH).toInt();
}
- (void)setWidth:(long)width
{
DOMString string(QString::number(width));
[self _embedElementImpl]->setAttribute(ATTR_WIDTH, string);
}
@end