OLD | NEW |
1 /* | 1 /* |
2 * (C) 1999 Lars Knoll (knoll@kde.org) | 2 * (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 2000 Dirk Mueller (mueller@kde.org) | 3 * (C) 2000 Dirk Mueller (mueller@kde.org) |
4 * Copyright (C) 2004, 2005, 2006, 2009, 2010, 2011 Apple Inc. | 4 * Copyright (C) 2004, 2005, 2006, 2009, 2010, 2011 Apple Inc. |
5 * All rights reserved. | 5 * All rights reserved. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 17 matching lines...) Expand all Loading... |
28 #include "core/layout/api/LineLayoutText.h" | 28 #include "core/layout/api/LineLayoutText.h" |
29 #include "core/layout/api/SelectionState.h" | 29 #include "core/layout/api/SelectionState.h" |
30 #include "core/layout/line/InlineBox.h" | 30 #include "core/layout/line/InlineBox.h" |
31 #include "platform/text/TextRun.h" | 31 #include "platform/text/TextRun.h" |
32 #include "platform/wtf/Forward.h" | 32 #include "platform/wtf/Forward.h" |
33 | 33 |
34 namespace blink { | 34 namespace blink { |
35 | 35 |
36 class DocumentMarker; | 36 class DocumentMarker; |
37 class GraphicsContext; | 37 class GraphicsContext; |
| 38 class TextMatchMarker; |
38 | 39 |
39 // The two truncation values below are used as tokens representing truncation | 40 // The two truncation values below are used as tokens representing truncation |
40 // state for the text box, are intended to be relative to |m_start|, and are set | 41 // state for the text box, are intended to be relative to |m_start|, and are set |
41 // directly into |m_truncation|. In the case where there is some truncation of | 42 // directly into |m_truncation|. In the case where there is some truncation of |
42 // the text but it is not full, |m_truncation| is set to the character offset | 43 // the text but it is not full, |m_truncation| is set to the character offset |
43 // from |m_start| representing the characters that are not truncated. | 44 // from |m_start| representing the characters that are not truncated. |
44 // | 45 // |
45 // Thus the maximum possible length of the text displayed before an ellipsis in | 46 // Thus the maximum possible length of the text displayed before an ellipsis in |
46 // a single InlineTextBox is |USHRT_MAX - 2| to allow for the no-truncation and | 47 // a single InlineTextBox is |USHRT_MAX - 2| to allow for the no-truncation and |
47 // full-truncation states. | 48 // full-truncation states. |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
141 void SelectionStartEnd(int& s_pos, int& e_pos) const; | 142 void SelectionStartEnd(int& s_pos, int& e_pos) const; |
142 | 143 |
143 virtual void PaintDocumentMarker(GraphicsContext&, | 144 virtual void PaintDocumentMarker(GraphicsContext&, |
144 const LayoutPoint& box_origin, | 145 const LayoutPoint& box_origin, |
145 const DocumentMarker&, | 146 const DocumentMarker&, |
146 const ComputedStyle&, | 147 const ComputedStyle&, |
147 const Font&, | 148 const Font&, |
148 bool grammar) const; | 149 bool grammar) const; |
149 virtual void PaintTextMatchMarkerForeground(const PaintInfo&, | 150 virtual void PaintTextMatchMarkerForeground(const PaintInfo&, |
150 const LayoutPoint& box_origin, | 151 const LayoutPoint& box_origin, |
151 const DocumentMarker&, | 152 const TextMatchMarker&, |
152 const ComputedStyle&, | 153 const ComputedStyle&, |
153 const Font&) const; | 154 const Font&) const; |
154 virtual void PaintTextMatchMarkerBackground(const PaintInfo&, | 155 virtual void PaintTextMatchMarkerBackground(const PaintInfo&, |
155 const LayoutPoint& box_origin, | 156 const LayoutPoint& box_origin, |
156 const DocumentMarker&, | 157 const TextMatchMarker&, |
157 const ComputedStyle&, | 158 const ComputedStyle&, |
158 const Font&) const; | 159 const Font&) const; |
159 | 160 |
160 void Move(const LayoutSize&) final; | 161 void Move(const LayoutSize&) final; |
161 | 162 |
162 protected: | 163 protected: |
163 void Paint(const PaintInfo&, | 164 void Paint(const PaintInfo&, |
164 const LayoutPoint&, | 165 const LayoutPoint&, |
165 LayoutUnit line_top, | 166 LayoutUnit line_top, |
166 LayoutUnit line_bottom) const override; | 167 LayoutUnit line_bottom) const override; |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
243 (Expansion() && NextLeafChild() ? TextRun::kAllowTrailingExpansion | 244 (Expansion() && NextLeafChild() ? TextRun::kAllowTrailingExpansion |
244 : TextRun::kForbidTrailingExpansion); | 245 : TextRun::kForbidTrailingExpansion); |
245 } | 246 } |
246 }; | 247 }; |
247 | 248 |
248 DEFINE_INLINE_BOX_TYPE_CASTS(InlineTextBox); | 249 DEFINE_INLINE_BOX_TYPE_CASTS(InlineTextBox); |
249 | 250 |
250 } // namespace blink | 251 } // namespace blink |
251 | 252 |
252 #endif // InlineTextBox_h | 253 #endif // InlineTextBox_h |
OLD | NEW |