OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Adobe Systems Incorporated. All rights reserved. | 2 * Copyright (C) 2011 Adobe Systems Incorporated. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above | 8 * 1. Redistributions of source code must retain the above |
9 * copyright notice, this list of conditions and the following | 9 * copyright notice, this list of conditions and the following |
10 * disclaimer. | 10 * disclaimer. |
(...skipping 25 matching lines...) Expand all Loading... |
36 namespace blink { | 36 namespace blink { |
37 | 37 |
38 struct LayerFragment; | 38 struct LayerFragment; |
39 typedef Vector<LayerFragment, 1> LayerFragments; | 39 typedef Vector<LayerFragment, 1> LayerFragments; |
40 class RenderFlowThread; | 40 class RenderFlowThread; |
41 | 41 |
42 class RenderRegion : public RenderBlockFlow { | 42 class RenderRegion : public RenderBlockFlow { |
43 public: | 43 public: |
44 explicit RenderRegion(Element*, RenderFlowThread*); | 44 explicit RenderRegion(Element*, RenderFlowThread*); |
45 | 45 |
46 virtual bool isRenderRegion() const OVERRIDE FINAL { return true; } | 46 virtual bool isRenderRegion() const override final { return true; } |
47 | 47 |
48 void setFlowThreadPortionRect(const LayoutRect& rect) { m_flowThreadPortionR
ect = rect; } | 48 void setFlowThreadPortionRect(const LayoutRect& rect) { m_flowThreadPortionR
ect = rect; } |
49 LayoutRect flowThreadPortionRect() const { return m_flowThreadPortionRect; } | 49 LayoutRect flowThreadPortionRect() const { return m_flowThreadPortionRect; } |
50 LayoutRect flowThreadPortionOverflowRect() const; | 50 LayoutRect flowThreadPortionOverflowRect() const; |
51 | 51 |
52 RenderFlowThread* flowThread() const { return m_flowThread; } | 52 RenderFlowThread* flowThread() const { return m_flowThread; } |
53 | 53 |
54 // Valid regions do not create circular dependencies with other flows. | 54 // Valid regions do not create circular dependencies with other flows. |
55 bool isValid() const { return m_isValid; } | 55 bool isValid() const { return m_isValid; } |
56 void setIsValid(bool valid) { m_isValid = valid; } | 56 void setIsValid(bool valid) { m_isValid = valid; } |
57 | 57 |
58 bool isFirstRegion() const; | 58 bool isFirstRegion() const; |
59 bool isLastRegion() const; | 59 bool isLastRegion() const; |
60 | 60 |
61 // These methods represent the width and height of a "page" and for a Render
Region they are just | 61 // These methods represent the width and height of a "page" and for a Render
Region they are just |
62 // the content width and content height of a region. For RenderMultiColumnSe
ts, however, they | 62 // the content width and content height of a region. For RenderMultiColumnSe
ts, however, they |
63 // will be the width and height of a single column or page in the set. | 63 // will be the width and height of a single column or page in the set. |
64 virtual LayoutUnit pageLogicalWidth() const; | 64 virtual LayoutUnit pageLogicalWidth() const; |
65 virtual LayoutUnit pageLogicalHeight() const; | 65 virtual LayoutUnit pageLogicalHeight() const; |
66 | 66 |
67 virtual bool canHaveChildren() const OVERRIDE FINAL { return false; } | 67 virtual bool canHaveChildren() const override final { return false; } |
68 virtual bool canHaveGeneratedChildren() const OVERRIDE FINAL { return true;
} | 68 virtual bool canHaveGeneratedChildren() const override final { return true;
} |
69 | 69 |
70 virtual const char* renderName() const OVERRIDE { return "RenderRegion"; } | 70 virtual const char* renderName() const override { return "RenderRegion"; } |
71 | 71 |
72 protected: | 72 protected: |
73 virtual void computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, Layo
utUnit& maxLogicalWidth) const OVERRIDE FINAL; | 73 virtual void computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, Layo
utUnit& maxLogicalWidth) const override final; |
74 | 74 |
75 LayoutRect overflowRectForFlowThreadPortion(const LayoutRect& flowThreadPort
ionRect, bool isFirstPortion, bool isLastPortion) const; | 75 LayoutRect overflowRectForFlowThreadPortion(const LayoutRect& flowThreadPort
ionRect, bool isFirstPortion, bool isLastPortion) const; |
76 void paintInvalidationOfFlowThreadContentRectangle(const LayoutRect& paintIn
validationRect, const LayoutRect& flowThreadPortionRect, | 76 void paintInvalidationOfFlowThreadContentRectangle(const LayoutRect& paintIn
validationRect, const LayoutRect& flowThreadPortionRect, |
77 const LayoutRect& flowThreadPortionOverflowRect, const LayoutPoint& regi
onLocation) const; | 77 const LayoutRect& flowThreadPortionOverflowRect, const LayoutPoint& regi
onLocation) const; |
78 | 78 |
79 private: | 79 private: |
80 virtual void layoutBlock(bool relayoutChildren) OVERRIDE FINAL; | 80 virtual void layoutBlock(bool relayoutChildren) override final; |
81 | 81 |
82 protected: | 82 protected: |
83 RenderFlowThread* m_flowThread; | 83 RenderFlowThread* m_flowThread; |
84 | 84 |
85 private: | 85 private: |
86 LayoutRect m_flowThreadPortionRect; | 86 LayoutRect m_flowThreadPortionRect; |
87 bool m_isValid : 1; | 87 bool m_isValid : 1; |
88 }; | 88 }; |
89 | 89 |
90 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderRegion, isRenderRegion()); | 90 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderRegion, isRenderRegion()); |
91 | 91 |
92 } // namespace blink | 92 } // namespace blink |
93 | 93 |
94 #endif // RenderRegion_h | 94 #endif // RenderRegion_h |
OLD | NEW |