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, 2010 Apple Inc. All rights reserv
ed. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2009, 2010 Apple Inc. All rights reserv
ed. |
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 18 matching lines...) Expand all Loading... |
29 #include "core/rendering/RenderBlock.h" | 29 #include "core/rendering/RenderBlock.h" |
30 #include "core/rendering/style/CollapsedBorderValue.h" | 30 #include "core/rendering/style/CollapsedBorderValue.h" |
31 #include "wtf/Vector.h" | 31 #include "wtf/Vector.h" |
32 | 32 |
33 namespace WebCore { | 33 namespace WebCore { |
34 | 34 |
35 class RenderTableCol; | 35 class RenderTableCol; |
36 class RenderTableCaption; | 36 class RenderTableCaption; |
37 class RenderTableCell; | 37 class RenderTableCell; |
38 class RenderTableSection; | 38 class RenderTableSection; |
| 39 class SubtreeLayoutScope; |
39 class TableLayout; | 40 class TableLayout; |
40 | 41 |
41 enum SkipEmptySectionsValue { DoNotSkipEmptySections, SkipEmptySections }; | 42 enum SkipEmptySectionsValue { DoNotSkipEmptySections, SkipEmptySections }; |
42 | 43 |
43 class RenderTable FINAL : public RenderBlock { | 44 class RenderTable FINAL : public RenderBlock { |
44 public: | 45 public: |
45 explicit RenderTable(Element*); | 46 explicit RenderTable(Element*); |
46 virtual ~RenderTable(); | 47 virtual ~RenderTable(); |
47 | 48 |
48 // Per CSS 3 writing-mode: "The first and second values of the 'border-spaci
ng' property represent spacing between columns | 49 // Per CSS 3 writing-mode: "The first and second values of the 'border-spaci
ng' property represent spacing between columns |
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
277 | 278 |
278 virtual bool isTable() const OVERRIDE { return true; } | 279 virtual bool isTable() const OVERRIDE { return true; } |
279 | 280 |
280 virtual bool avoidsFloats() const OVERRIDE { return true; } | 281 virtual bool avoidsFloats() const OVERRIDE { return true; } |
281 | 282 |
282 virtual void paint(PaintInfo&, const LayoutPoint&) OVERRIDE; | 283 virtual void paint(PaintInfo&, const LayoutPoint&) OVERRIDE; |
283 virtual void paintObject(PaintInfo&, const LayoutPoint&) OVERRIDE; | 284 virtual void paintObject(PaintInfo&, const LayoutPoint&) OVERRIDE; |
284 virtual void paintBoxDecorations(PaintInfo&, const LayoutPoint&) OVERRIDE; | 285 virtual void paintBoxDecorations(PaintInfo&, const LayoutPoint&) OVERRIDE; |
285 virtual void paintMask(PaintInfo&, const LayoutPoint&) OVERRIDE; | 286 virtual void paintMask(PaintInfo&, const LayoutPoint&) OVERRIDE; |
286 virtual void layout() OVERRIDE; | 287 virtual void layout() OVERRIDE; |
| 288 void layoutContents(SubtreeLayoutScope&, bool& sectionMoved, LayoutUnit& mov
edSectionLogicalTop); |
287 virtual bool supportsPartialLayout() const OVERRIDE { return false; } | 289 virtual bool supportsPartialLayout() const OVERRIDE { return false; } |
288 virtual void computeIntrinsicLogicalWidths(LayoutUnit& minWidth, LayoutUnit&
maxWidth) const OVERRIDE; | 290 virtual void computeIntrinsicLogicalWidths(LayoutUnit& minWidth, LayoutUnit&
maxWidth) const OVERRIDE; |
289 virtual void computePreferredLogicalWidths() OVERRIDE; | 291 virtual void computePreferredLogicalWidths() OVERRIDE; |
290 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes
tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct
ion) OVERRIDE; | 292 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes
tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct
ion) OVERRIDE; |
291 | 293 |
292 virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode
, LinePositionMode = PositionOnContainingLine) const OVERRIDE; | 294 virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode
, LinePositionMode = PositionOnContainingLine) const OVERRIDE; |
293 virtual int firstLineBoxBaseline() const OVERRIDE; | 295 virtual int firstLineBoxBaseline() const OVERRIDE; |
294 virtual int inlineBlockBaseline(LineDirectionMode) const OVERRIDE; | 296 virtual int inlineBlockBaseline(LineDirectionMode) const OVERRIDE; |
295 | 297 |
296 RenderTableCol* slowColElement(unsigned col, bool* startEdge, bool* endEdge)
const; | 298 RenderTableCol* slowColElement(unsigned col, bool* startEdge, bool* endEdge)
const; |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
362 if (m_firstBody) | 364 if (m_firstBody) |
363 return m_firstBody; | 365 return m_firstBody; |
364 return m_foot; | 366 return m_foot; |
365 } | 367 } |
366 | 368 |
367 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderTable, isTable()); | 369 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderTable, isTable()); |
368 | 370 |
369 } // namespace WebCore | 371 } // namespace WebCore |
370 | 372 |
371 #endif // RenderTable_h | 373 #endif // RenderTable_h |
OLD | NEW |