OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2002 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2002 Lars Knoll (knoll@kde.org) |
3 * (C) 2002 Dirk Mueller (mueller@kde.org) | 3 * (C) 2002 Dirk Mueller (mueller@kde.org) |
4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. | 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. |
5 * | 5 * |
6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
9 * version 2 of the License. | 9 * version 2 of the License. |
10 * | 10 * |
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
141 for (RenderObject* child = firstRow->firstChild(); child; child = child->nex
tSibling()) { | 141 for (RenderObject* child = firstRow->firstChild(); child; child = child->nex
tSibling()) { |
142 if (!child->isTableCell()) | 142 if (!child->isTableCell()) |
143 continue; | 143 continue; |
144 | 144 |
145 RenderTableCell* cell = toRenderTableCell(child); | 145 RenderTableCell* cell = toRenderTableCell(child); |
146 | 146 |
147 Length logicalWidth = cell->styleOrColLogicalWidth(); | 147 Length logicalWidth = cell->styleOrColLogicalWidth(); |
148 unsigned span = cell->colSpan(); | 148 unsigned span = cell->colSpan(); |
149 int fixedBorderBoxLogicalWidth = 0; | 149 int fixedBorderBoxLogicalWidth = 0; |
150 // FIXME: Support other length types. If the width is non-auto, it shoul
d probably just use | 150 // FIXME: Support other length types. If the width is non-auto, it shoul
d probably just use |
151 // RenderBox::computeLogicalWidthInRegionUsing to compute the width. | 151 // RenderBox::computeLogicalWidthUsing to compute the width. |
152 if (logicalWidth.isFixed() && logicalWidth.isPositive()) { | 152 if (logicalWidth.isFixed() && logicalWidth.isPositive()) { |
153 fixedBorderBoxLogicalWidth = cell->adjustBorderBoxLogicalWidthForBox
Sizing(logicalWidth.value()); | 153 fixedBorderBoxLogicalWidth = cell->adjustBorderBoxLogicalWidthForBox
Sizing(logicalWidth.value()); |
154 logicalWidth.setValue(fixedBorderBoxLogicalWidth); | 154 logicalWidth.setValue(fixedBorderBoxLogicalWidth); |
155 } | 155 } |
156 | 156 |
157 unsigned usedSpan = 0; | 157 unsigned usedSpan = 0; |
158 while (usedSpan < span && currentColumn < nEffCols) { | 158 while (usedSpan < span && currentColumn < nEffCols) { |
159 float eSpan = m_table->spanOfEffCol(currentColumn); | 159 float eSpan = m_table->spanOfEffCol(currentColumn); |
160 // Only set if no col element has already set it. | 160 // Only set if no col element has already set it. |
161 if (m_width[currentColumn].isAuto() && logicalWidth.type() != Auto)
{ | 161 if (m_width[currentColumn].isAuto() && logicalWidth.type() != Auto)
{ |
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
333 for (RenderObject* cell = row->firstChild(); cell; cell = cell->next
Sibling()) { | 333 for (RenderObject* cell = row->firstChild(); cell; cell = cell->next
Sibling()) { |
334 if (!cell->isTableCell()) | 334 if (!cell->isTableCell()) |
335 continue; | 335 continue; |
336 cell->setPreferredLogicalWidthsDirty(); | 336 cell->setPreferredLogicalWidthsDirty(); |
337 } | 337 } |
338 } | 338 } |
339 } | 339 } |
340 } | 340 } |
341 | 341 |
342 } // namespace WebCore | 342 } // namespace WebCore |
OLD | NEW |