OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (C) 1997 Martin Jones (mjones@kde.org) | 2 * Copyright (C) 1997 Martin Jones (mjones@kde.org) |
3 * (C) 1997 Torben Weis (weis@kde.org) | 3 * (C) 1997 Torben Weis (weis@kde.org) |
4 * (C) 1998 Waldo Bastian (bastian@kde.org) | 4 * (C) 1998 Waldo Bastian (bastian@kde.org) |
5 * (C) 1999 Lars Knoll (knoll@kde.org) | 5 * (C) 1999 Lars Knoll (knoll@kde.org) |
6 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 6 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
7 * Copyright (C) 2003, 2004, 2005, 2006, 2009 Apple Inc. All rights reserved. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2009 Apple Inc. All rights reserved. |
8 * | 8 * |
9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
119 } | 119 } |
120 | 120 |
121 void reportMemoryUsage(MemoryObjectInfo*) const; | 121 void reportMemoryUsage(MemoryObjectInfo*) const; |
122 | 122 |
123 Row row; | 123 Row row; |
124 RenderTableRow* rowRenderer; | 124 RenderTableRow* rowRenderer; |
125 LayoutUnit baseline; | 125 LayoutUnit baseline; |
126 Length logicalHeight; | 126 Length logicalHeight; |
127 }; | 127 }; |
128 | 128 |
129 struct SpanningRowsHeight { | |
Julien - ping for review
2013/07/16 17:22:13
It should probably be WTF_MAKE_NONCOPYABLE as we d
| |
130 SpanningRowsHeight() | |
131 : totalRowsHeight(0) | |
132 , spanningCellHeightIgnoringBorderSpacing(0) | |
133 { | |
134 } | |
135 | |
136 Vector<int> rowHeight; | |
137 int totalRowsHeight; | |
138 int spanningCellHeightIgnoringBorderSpacing; | |
139 }; | |
140 | |
129 const BorderValue& borderAdjoiningTableStart() const | 141 const BorderValue& borderAdjoiningTableStart() const |
130 { | 142 { |
131 if (hasSameDirectionAs(table())) | 143 if (hasSameDirectionAs(table())) |
132 return style()->borderStart(); | 144 return style()->borderStart(); |
133 | 145 |
134 return style()->borderEnd(); | 146 return style()->borderEnd(); |
135 } | 147 } |
136 | 148 |
137 const BorderValue& borderAdjoiningTableEnd() const | 149 const BorderValue& borderAdjoiningTableEnd() const |
138 { | 150 { |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
225 virtual void paintObject(PaintInfo&, const LayoutPoint&); | 237 virtual void paintObject(PaintInfo&, const LayoutPoint&); |
226 | 238 |
227 virtual void imageChanged(WrappedImagePtr, const IntRect* = 0); | 239 virtual void imageChanged(WrappedImagePtr, const IntRect* = 0); |
228 | 240 |
229 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct ion) OVERRIDE; | 241 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct ion) OVERRIDE; |
230 | 242 |
231 int borderSpacingForRow(unsigned row) const { return m_grid[row].rowRenderer ? table()->vBorderSpacing() : 0; } | 243 int borderSpacingForRow(unsigned row) const { return m_grid[row].rowRenderer ? table()->vBorderSpacing() : 0; } |
232 | 244 |
233 void ensureRows(unsigned); | 245 void ensureRows(unsigned); |
234 | 246 |
247 void calcRowsHeightInRowSpan(RenderTableCell*, struct SpanningRowsHeight&); | |
248 void distributeExtraRowSpanHeightToPercentRows(RenderTableCell*, int, int, i nt&); | |
249 void distributeExtraRowSpanHeightToAutoRows(RenderTableCell*, int, int&, Vec tor<int>&); | |
250 void distributeExtraRowSpanHeightToRemainingRows(RenderTableCell*, int, int& , Vector<int>&); | |
235 void distributeRowSpanHeightToRows(SpanningRenderTableCells& rowSpanCells); | 251 void distributeRowSpanHeightToRows(SpanningRenderTableCells& rowSpanCells); |
236 | 252 |
237 void distributeExtraLogicalHeightToPercentRows(int& extraLogicalHeight, int totalPercent); | 253 void distributeExtraLogicalHeightToPercentRows(int& extraLogicalHeight, int totalPercent); |
238 void distributeExtraLogicalHeightToAutoRows(int& extraLogicalHeight, unsigne d autoRowsCount); | 254 void distributeExtraLogicalHeightToAutoRows(int& extraLogicalHeight, unsigne d autoRowsCount); |
239 void distributeRemainingExtraLogicalHeight(int& extraLogicalHeight); | 255 void distributeRemainingExtraLogicalHeight(int& extraLogicalHeight); |
240 | 256 |
241 void updateBaselineForCell(RenderTableCell*, unsigned row, LayoutUnit& basel ineDescent); | 257 void updateBaselineForCell(RenderTableCell*, unsigned row, LayoutUnit& basel ineDescent); |
242 | 258 |
243 bool hasOverflowingCell() const { return m_overflowingCells.size() || m_forc eSlowPaintPathWithOverflowingCell; } | 259 bool hasOverflowingCell() const { return m_overflowingCells.size() || m_forc eSlowPaintPathWithOverflowingCell; } |
244 void computeOverflowFromCells(unsigned totalRows, unsigned nEffCols); | 260 void computeOverflowFromCells(unsigned totalRows, unsigned nEffCols); |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
299 ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isTableSection()); | 315 ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isTableSection()); |
300 return static_cast<const RenderTableSection*>(object); | 316 return static_cast<const RenderTableSection*>(object); |
301 } | 317 } |
302 | 318 |
303 // This will catch anyone doing an unnecessary cast. | 319 // This will catch anyone doing an unnecessary cast. |
304 void toRenderTableSection(const RenderTableSection*); | 320 void toRenderTableSection(const RenderTableSection*); |
305 | 321 |
306 } // namespace WebCore | 322 } // namespace WebCore |
307 | 323 |
308 #endif // RenderTableSection_h | 324 #endif // RenderTableSection_h |
OLD | NEW |