OLD | NEW |
1 /* | 1 /* |
2 * This file is part of the render object implementation for KHTML. | 2 * This file is part of the render object implementation for KHTML. |
3 * | 3 * |
4 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 4 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
5 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 5 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
6 * Copyright (C) 2003 Apple Computer, Inc. | 6 * Copyright (C) 2003 Apple Computer, Inc. |
7 * | 7 * |
8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 virtual bool requiresLayer() const { return isRelPositioned() || isTranspare
nt() || hasMask(); } | 66 virtual bool requiresLayer() const { return isRelPositioned() || isTranspare
nt() || hasMask(); } |
67 | 67 |
68 virtual int offsetLeft() const; | 68 virtual int offsetLeft() const; |
69 virtual int offsetTop() const; | 69 virtual int offsetTop() const; |
70 virtual int offsetWidth() const { return linesBoundingBox().width(); } | 70 virtual int offsetWidth() const { return linesBoundingBox().width(); } |
71 virtual int offsetHeight() const { return linesBoundingBox().height(); } | 71 virtual int offsetHeight() const { return linesBoundingBox().height(); } |
72 | 72 |
73 virtual void absoluteRects(Vector<IntRect>&, int tx, int ty, bool topLevel =
true); | 73 virtual void absoluteRects(Vector<IntRect>&, int tx, int ty, bool topLevel =
true); |
74 virtual void absoluteQuads(Vector<FloatQuad>&, bool topLevel = true); | 74 virtual void absoluteQuads(Vector<FloatQuad>&, bool topLevel = true); |
75 | 75 |
76 virtual IntRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintC
ontainer); | 76 virtual IntRect clippedOverflowRectForRepaint(RenderBox* repaintContainer); |
77 virtual IntRect rectWithOutlineForRepaint(RenderBoxModelObject* repaintConta
iner, int outlineWidth); | 77 virtual IntRect rectWithOutlineForRepaint(RenderBox* repaintContainer, int o
utlineWidth); |
78 | 78 |
79 virtual VisiblePosition positionForCoordinates(int x, int y); | 79 virtual VisiblePosition positionForCoordinates(int x, int y); |
80 | 80 |
81 IntRect linesBoundingBox() const; | 81 IntRect linesBoundingBox() const; |
82 | 82 |
83 virtual IntRect borderBoundingBox() const | 83 virtual IntRect borderBoundingBox() const |
84 { | 84 { |
85 IntRect boundingBox = linesBoundingBox(); | 85 IntRect boundingBox = linesBoundingBox(); |
86 return IntRect(0, 0, boundingBox.width(), boundingBox.height()); | 86 return IntRect(0, 0, boundingBox.width(), boundingBox.height()); |
87 } | 87 } |
(...skipping 13 matching lines...) Expand all Loading... |
101 RenderBox* continuation() const { return m_continuation; } | 101 RenderBox* continuation() const { return m_continuation; } |
102 RenderInline* inlineContinuation() const; | 102 RenderInline* inlineContinuation() const; |
103 void setContinuation(RenderBox* c) { m_continuation = c; } | 103 void setContinuation(RenderBox* c) { m_continuation = c; } |
104 | 104 |
105 virtual void updateDragState(bool dragOn); | 105 virtual void updateDragState(bool dragOn); |
106 | 106 |
107 virtual void childBecameNonInline(RenderObject* child); | 107 virtual void childBecameNonInline(RenderObject* child); |
108 | 108 |
109 virtual void updateHitTestResult(HitTestResult&, const IntPoint&); | 109 virtual void updateHitTestResult(HitTestResult&, const IntPoint&); |
110 | 110 |
111 IntSize relativePositionedInlineOffset(const RenderBox* child) const; | 111 IntSize relativePositionedInlineOffset(const RenderObject* child) const; |
112 | 112 |
113 virtual void addFocusRingRects(GraphicsContext*, int tx, int ty); | 113 virtual void addFocusRingRects(GraphicsContext*, int tx, int ty); |
114 void paintOutline(GraphicsContext*, int tx, int ty); | 114 void paintOutline(GraphicsContext*, int tx, int ty); |
115 | 115 |
116 void calcMargins(int containerWidth) | 116 void calcMargins(int containerWidth) |
117 { | 117 { |
118 m_marginLeft = style()->marginLeft().calcMinValue(containerWidth); | 118 m_marginLeft = style()->marginLeft().calcMinValue(containerWidth); |
119 m_marginRight = style()->marginRight().calcMinValue(containerWidth); | 119 m_marginRight = style()->marginRight().calcMinValue(containerWidth); |
120 } | 120 } |
121 | 121 |
122 #if ENABLE(DASHBOARD_SUPPORT) | 122 #if ENABLE(DASHBOARD_SUPPORT) |
123 virtual void addDashboardRegions(Vector<DashboardRegionValue>&); | 123 virtual void addDashboardRegions(Vector<DashboardRegionValue>&); |
124 #endif | 124 #endif |
125 | 125 |
126 protected: | 126 protected: |
127 virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle); | 127 virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle); |
128 virtual void updateBoxModelInfoFromStyle(); | |
129 | 128 |
130 static RenderInline* cloneInline(RenderInline* src); | 129 static RenderInline* cloneInline(RenderInline* src); |
131 | 130 |
132 private: | 131 private: |
133 void paintOutlineForLine(GraphicsContext*, int tx, int ty, const IntRect& pr
evLine, const IntRect& thisLine, const IntRect& nextLine); | 132 void paintOutlineForLine(GraphicsContext*, int tx, int ty, const IntRect& pr
evLine, const IntRect& thisLine, const IntRect& nextLine); |
134 RenderBox* continuationBefore(RenderObject* beforeChild); | 133 RenderBox* continuationBefore(RenderObject* beforeChild); |
135 | 134 |
136 protected: | 135 protected: |
137 RenderObjectChildList m_children; | 136 RenderObjectChildList m_children; |
138 RenderLineBoxList m_lineBoxes; // All of the line boxes created for this i
nline flow. For example, <i>Hello<br>world.</i> will have two <i> line boxes. | 137 RenderLineBoxList m_lineBoxes; // All of the line boxes created for this i
nline flow. For example, <i>Hello<br>world.</i> will have two <i> line boxes. |
(...skipping 15 matching lines...) Expand all Loading... |
154 ASSERT(!o || o->isRenderInline()); | 153 ASSERT(!o || o->isRenderInline()); |
155 return static_cast<const RenderInline*>(o); | 154 return static_cast<const RenderInline*>(o); |
156 } | 155 } |
157 | 156 |
158 // This will catch anyone doing an unnecessary cast. | 157 // This will catch anyone doing an unnecessary cast. |
159 void toRenderInline(const RenderInline*); | 158 void toRenderInline(const RenderInline*); |
160 | 159 |
161 } // namespace WebCore | 160 } // namespace WebCore |
162 | 161 |
163 #endif // RenderInline_h | 162 #endif // RenderInline_h |
OLD | NEW |