KHTML
html_image.cpp
Go to the documentation of this file.00001
00022
00023
00024 #include "dom/dom_doc.h"
00025 #include "dom/html_image.h"
00026 #include "dom/html_misc.h"
00027
00028 #include "html/html_imageimpl.h"
00029 #include "html/html_miscimpl.h"
00030 #include "misc/htmlhashes.h"
00031 #include "xml/dom_docimpl.h"
00032
00033 using namespace DOM;
00034
00035 HTMLAreaElement::HTMLAreaElement() : HTMLElement()
00036 {
00037 }
00038
00039 HTMLAreaElement::HTMLAreaElement(const HTMLAreaElement &other) : HTMLElement(other)
00040 {
00041 }
00042
00043 HTMLAreaElement::HTMLAreaElement(HTMLAreaElementImpl *impl) : HTMLElement(impl)
00044 {
00045 }
00046
00047 HTMLAreaElement &HTMLAreaElement::operator = (const Node &other)
00048 {
00049 assignOther( other, ID_AREA );
00050 return *this;
00051 }
00052
00053 HTMLAreaElement &HTMLAreaElement::operator = (const HTMLAreaElement &other)
00054 {
00055 HTMLElement::operator = (other);
00056 return *this;
00057 }
00058
00059 HTMLAreaElement::~HTMLAreaElement()
00060 {
00061 }
00062
00063 DOMString HTMLAreaElement::accessKey() const
00064 {
00065 if(!impl) return DOMString();
00066 return ((ElementImpl *)impl)->getAttribute(ATTR_ACCESSKEY);
00067 }
00068
00069 void HTMLAreaElement::setAccessKey( const DOMString &value )
00070 {
00071 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_ACCESSKEY, value);
00072 }
00073
00074 DOMString HTMLAreaElement::alt() const
00075 {
00076 if(!impl) return DOMString();
00077 return ((ElementImpl *)impl)->getAttribute(ATTR_ALT);
00078 }
00079
00080 void HTMLAreaElement::setAlt( const DOMString &value )
00081 {
00082 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_ALT, value);
00083 }
00084
00085 DOMString HTMLAreaElement::coords() const
00086 {
00087 if(!impl) return DOMString();
00088 return ((ElementImpl *)impl)->getAttribute(ATTR_COORDS);
00089 }
00090
00091 void HTMLAreaElement::setCoords( const DOMString &value )
00092 {
00093 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_COORDS, value);
00094 }
00095
00096 DOMString HTMLAreaElement::href() const
00097 {
00098 if(!impl) return DOMString();
00099 DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF);
00100 return !href.isNull() ? impl->getDocument()->completeURL(href.string()) : href;
00101 }
00102
00103 void HTMLAreaElement::setHref( const DOMString &value )
00104 {
00105 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_HREF, value);
00106 }
00107
00108 bool HTMLAreaElement::noHref() const
00109 {
00110 if(!impl) return 0;
00111 return !((ElementImpl *)impl)->getAttribute(ATTR_NOHREF).isNull();
00112 }
00113
00114 void HTMLAreaElement::setNoHref( bool _noHref )
00115 {
00116 if(impl)
00117 {
00118 DOMString str;
00119 if( _noHref )
00120 str = "";
00121 ((ElementImpl *)impl)->setAttribute(ATTR_NOHREF, str);
00122 }
00123 }
00124
00125 DOMString HTMLAreaElement::shape() const
00126 {
00127 if(!impl) return DOMString();
00128 return ((ElementImpl *)impl)->getAttribute(ATTR_SHAPE);
00129 }
00130
00131 void HTMLAreaElement::setShape( const DOMString &value )
00132 {
00133 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_SHAPE, value);
00134 }
00135
00136 long HTMLAreaElement::tabIndex() const
00137 {
00138 if(!impl) return 0;
00139 return ((ElementImpl *)impl)->getAttribute(ATTR_TABINDEX).toInt();
00140 }
00141
00142 void HTMLAreaElement::setTabIndex( long _tabIndex )
00143 {
00144 if(impl) {
00145 DOMString value(QString::number(_tabIndex));
00146 ((ElementImpl *)impl)->setAttribute(ATTR_TABINDEX,value);
00147 }
00148 }
00149
00150 DOMString HTMLAreaElement::target() const
00151 {
00152 if(!impl) return DOMString();
00153 return ((ElementImpl *)impl)->getAttribute(ATTR_TARGET);
00154 }
00155
00156 void HTMLAreaElement::setTarget( const DOMString &value )
00157 {
00158 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_TARGET, value);
00159 }
00160
00161
00162
00163 HTMLImageElement::HTMLImageElement() : HTMLElement()
00164 {
00165 }
00166
00167 HTMLImageElement::HTMLImageElement(const HTMLImageElement &other) : HTMLElement(other)
00168 {
00169 }
00170
00171 HTMLImageElement::HTMLImageElement(HTMLImageElementImpl *impl) : HTMLElement(impl)
00172 {
00173 }
00174
00175 HTMLImageElement &HTMLImageElement::operator = (const Node &other)
00176 {
00177 assignOther( other, ID_IMG );
00178 return *this;
00179 }
00180
00181 HTMLImageElement &HTMLImageElement::operator = (const HTMLImageElement &other)
00182 {
00183 HTMLElement::operator = (other);
00184 return *this;
00185 }
00186
00187 HTMLImageElement::~HTMLImageElement()
00188 {
00189 }
00190
00191 DOMString HTMLImageElement::name() const
00192 {
00193 if(!impl) return DOMString();
00194 return ((ElementImpl *)impl)->getAttribute(ATTR_NAME);
00195 }
00196
00197 void HTMLImageElement::setName( const DOMString &value )
00198 {
00199 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_NAME, value);
00200 }
00201
00202 DOMString HTMLImageElement::align() const
00203 {
00204 if(!impl) return DOMString();
00205 return ((ElementImpl *)impl)->getAttribute(ATTR_ALIGN);
00206 }
00207
00208 void HTMLImageElement::setAlign( const DOMString &value )
00209 {
00210 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_ALIGN, value);
00211 }
00212
00213 DOMString HTMLImageElement::alt() const
00214 {
00215 if(!impl) return DOMString();
00216 return ((ElementImpl *)impl)->getAttribute(ATTR_ALT);
00217 }
00218
00219 void HTMLImageElement::setAlt( const DOMString &value )
00220 {
00221 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_ALT, value);
00222 }
00223
00224 long HTMLImageElement::border() const
00225 {
00226 if(!impl) return 0;
00227
00228 return static_cast<HTMLImageElementImpl*>(impl)->getAttribute(ATTR_BORDER).toInt();
00229 }
00230
00231 void HTMLImageElement::setBorder( long value )
00232 {
00233 if (impl) static_cast<HTMLImageElementImpl*>(impl)->setAttribute(ATTR_BORDER, QString::number(value));
00234 }
00235
00236 DOMString HTMLImageElement::getBorder() const
00237 {
00238 if(!impl) return DOMString();
00239 return static_cast<HTMLImageElementImpl*>(impl)->getAttribute(ATTR_BORDER);
00240 }
00241
00242 void HTMLImageElement::setBorder( const DOMString& value )
00243 {
00244 if (impl) static_cast<HTMLImageElementImpl*>(impl)->setAttribute(ATTR_BORDER, value);
00245 }
00246
00247
00248 long HTMLImageElement::height() const
00249 {
00250 if(!impl) return 0;
00251 return static_cast<HTMLImageElementImpl*>(impl)->height();
00252 }
00253
00254 void HTMLImageElement::setHeight( long value )
00255 {
00256 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_HEIGHT, QString::number(value));
00257 }
00258
00259 long HTMLImageElement::hspace() const
00260 {
00261 if(!impl) return 0;
00262
00263 return ((ElementImpl *)impl)->getAttribute(ATTR_HSPACE).toInt();
00264 }
00265
00266 void HTMLImageElement::setHspace( long value )
00267 {
00268 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_HSPACE, QString::number(value));
00269 }
00270
00271 bool HTMLImageElement::isMap() const
00272 {
00273 if(!impl) return 0;
00274 return !((ElementImpl *)impl)->getAttribute(ATTR_DISABLED).isNull();
00275 }
00276
00277 void HTMLImageElement::setIsMap( bool _isMap )
00278 {
00279 if(impl)
00280 {
00281 DOMString str;
00282 if( _isMap )
00283 str = "";
00284 ((ElementImpl *)impl)->setAttribute(ATTR_ISMAP, str);
00285 }
00286 }
00287
00288 DOMString HTMLImageElement::longDesc() const
00289 {
00290 if(!impl) return DOMString();
00291 return ((ElementImpl *)impl)->getAttribute(ATTR_LONGDESC);
00292 }
00293
00294 void HTMLImageElement::setLongDesc( const DOMString &value )
00295 {
00296 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_LONGDESC, value);
00297 }
00298
00299 DOMString HTMLImageElement::src() const
00300 {
00301 if(!impl) return DOMString();
00302 DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC);
00303 return !s.isNull() ? impl->getDocument()->completeURL( s.string() ) : s;
00304 }
00305
00306 void HTMLImageElement::setSrc( const DOMString &value )
00307 {
00308 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_SRC, value);
00309 }
00310
00311 DOMString HTMLImageElement::useMap() const
00312 {
00313 if(!impl) return DOMString();
00314 return ((ElementImpl *)impl)->getAttribute(ATTR_USEMAP);
00315 }
00316
00317 void HTMLImageElement::setUseMap( const DOMString &value )
00318 {
00319 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_USEMAP, value);
00320 }
00321
00322 long HTMLImageElement::vspace() const
00323 {
00324 if(!impl) return 0;
00325
00326 return ((ElementImpl *)impl)->getAttribute(ATTR_VSPACE).toInt();
00327 }
00328
00329 void HTMLImageElement::setVspace( long value )
00330 {
00331 if(impl) static_cast<ElementImpl*>(impl)->setAttribute(ATTR_VSPACE, QString::number(value));
00332 }
00333
00334 long HTMLImageElement::width() const
00335 {
00336 if(!impl) return 0;
00337 return static_cast<HTMLImageElementImpl*>(impl)->width();
00338 }
00339
00340 void HTMLImageElement::setWidth( long value )
00341 {
00342 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_WIDTH, QString::number(value));
00343 }
00344
00345 long HTMLImageElement::x() const
00346 {
00347 if (impl && impl->renderer()) {
00348 int x = 0;
00349 int y = 0;
00350 impl->renderer()->absolutePosition(x,y);
00351 return x;
00352 }
00353 return 0;
00354 }
00355
00356 long HTMLImageElement::y() const
00357 {
00358 if (impl && impl->renderer()) {
00359 int x = 0;
00360 int y = 0;
00361 impl->renderer()->absolutePosition(x,y);
00362 return y;
00363 }
00364 return 0;
00365 }
00366
00367
00368
00369 HTMLMapElement::HTMLMapElement() : HTMLElement()
00370 {
00371 }
00372
00373 HTMLMapElement::HTMLMapElement(const HTMLMapElement &other) : HTMLElement(other)
00374 {
00375 }
00376
00377 HTMLMapElement::HTMLMapElement(HTMLMapElementImpl *impl) : HTMLElement(impl)
00378 {
00379 }
00380
00381 HTMLMapElement &HTMLMapElement::operator = (const Node &other)
00382 {
00383 assignOther( other, ID_MAP );
00384 return *this;
00385 }
00386
00387 HTMLMapElement &HTMLMapElement::operator = (const HTMLMapElement &other)
00388 {
00389 HTMLElement::operator = (other);
00390 return *this;
00391 }
00392
00393 HTMLMapElement::~HTMLMapElement()
00394 {
00395 }
00396
00397 HTMLCollection HTMLMapElement::areas() const
00398 {
00399 if(!impl) return HTMLCollection();
00400 return HTMLCollection(impl, HTMLCollectionImpl::MAP_AREAS);
00401 }
00402
00403 DOMString HTMLMapElement::name() const
00404 {
00405 if(!impl) return DOMString();
00406 return ((ElementImpl *)impl)->getAttribute(ATTR_NAME);
00407 }
00408
00409 void HTMLMapElement::setName( const DOMString &value )
00410 {
00411 if(impl) ((ElementImpl *)impl)->setAttribute(ATTR_NAME, value);
00412 }
00413