JSValue jsHTMLTableCellElementRowSpan(ExecState* exec, const Identifier&, const PropertySlot& slot) { JSHTMLTableCellElement* castedThis = static_cast<JSHTMLTableCellElement*>(asObject(slot.slotBase())); UNUSED_PARAM(exec); HTMLTableCellElement* imp = static_cast<HTMLTableCellElement*>(castedThis->impl()); return jsNumber(exec, imp->rowSpan()); }
static v8::Handle<v8::Value> rowSpanAttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info) { INC_STATS("DOM.HTMLTableCellElement.rowSpan._get"); HTMLTableCellElement* imp = V8HTMLTableCellElement::toNative(info.Holder()); if (!R_check(imp)) return v8::Handle<v8::Value>(v8::Undefined()); return v8::Integer::New(imp->rowSpan()); }
JSValue jsHTMLTableCellElementRowSpan(ExecState* exec, JSValue slotBase, const Identifier&) { JSHTMLTableCellElement* castedThis = static_cast<JSHTMLTableCellElement*>(asObject(slotBase)); UNUSED_PARAM(exec); HTMLTableCellElement* imp = static_cast<HTMLTableCellElement*>(castedThis->impl()); JSValue result = jsNumber(exec, imp->rowSpan()); return result; }
void RenderTableCell::updateFromElement() { Node* n = node(); if (n && (n->hasTagName(tdTag) || n->hasTagName(thTag))) { HTMLTableCellElement* tc = static_cast<HTMLTableCellElement*>(n); int oldRSpan = m_rowSpan; int oldCSpan = m_columnSpan; m_columnSpan = tc->colSpan(); m_rowSpan = tc->rowSpan(); if ((oldRSpan != m_rowSpan || oldCSpan != m_columnSpan) && style() && parent()) { setNeedsLayoutAndPrefWidthsRecalc(); if (section()) section()->setNeedsCellRecalc(); } } }