OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009 Apple Inc. All rights reserv
ed. | 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009 Apple Inc. All rights reserv
ed. |
5 * | 5 * |
6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
10 * | 10 * |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
53 | 53 |
54 const String& markerText() const; | 54 const String& markerText() const; |
55 | 55 |
56 void updateListMarkerNumbers(); | 56 void updateListMarkerNumbers(); |
57 | 57 |
58 static void updateItemValuesForOrderedList(const HTMLOListElement*); | 58 static void updateItemValuesForOrderedList(const HTMLOListElement*); |
59 static unsigned itemCountForOrderedList(const HTMLOListElement*); | 59 static unsigned itemCountForOrderedList(const HTMLOListElement*); |
60 | 60 |
61 bool isEmpty() const; | 61 bool isEmpty() const; |
62 | 62 |
| 63 LayoutListMarker* marker() const { return m_marker; } |
| 64 |
63 virtual const char* name() const override { return "LayoutListItem"; } | 65 virtual const char* name() const override { return "LayoutListItem"; } |
64 | 66 |
65 private: | 67 private: |
66 virtual bool isOfType(LayoutObjectType type) const override { return type ==
LayoutObjectListItem || LayoutBlockFlow::isOfType(type); } | 68 virtual bool isOfType(LayoutObjectType type) const override { return type ==
LayoutObjectListItem || LayoutBlockFlow::isOfType(type); } |
67 | 69 |
68 virtual void willBeDestroyed() override; | 70 virtual void willBeDestroyed() override; |
69 | 71 |
70 virtual void insertedIntoTree() override; | 72 virtual void insertedIntoTree() override; |
71 virtual void willBeRemovedFromTree() override; | 73 virtual void willBeRemovedFromTree() override; |
72 | 74 |
73 virtual void paint(const PaintInfo&, const LayoutPoint&) override; | 75 virtual void paint(const PaintInfo&, const LayoutPoint&) override; |
74 | 76 |
75 virtual void layout() override; | 77 virtual void subtreeDidChange() final; |
76 | 78 |
77 // Returns true if we re-attached and updated the location of the marker. | 79 // Returns true if we re-attached and updated the location of the marker. |
78 bool updateMarkerLocation(); | 80 bool updateMarkerLocation(); |
79 void updateMarkerLocationAndInvalidateWidth(); | |
80 | 81 |
81 void positionListMarker(); | 82 void positionListMarker(); |
82 | 83 |
83 virtual void styleDidChange(StyleDifference, const ComputedStyle* oldStyle)
override; | 84 virtual void styleDidChange(StyleDifference, const ComputedStyle* oldStyle)
override; |
84 | 85 |
85 virtual void addOverflowFromChildren() override; | 86 virtual void addOverflowFromChildren() override; |
86 | 87 |
87 inline int calcValue() const; | 88 inline int calcValue() const; |
88 void updateValueNow() const; | 89 void updateValueNow() const; |
89 void explicitValueChanged(); | 90 void explicitValueChanged(); |
90 | 91 |
91 int m_explicitValue; | 92 int m_explicitValue; |
92 LayoutListMarker* m_marker; | 93 LayoutListMarker* m_marker; |
93 mutable int m_value; | 94 mutable int m_value; |
94 | 95 |
95 bool m_hasExplicitValue : 1; | 96 bool m_hasExplicitValue : 1; |
96 mutable bool m_isValueUpToDate : 1; | 97 mutable bool m_isValueUpToDate : 1; |
97 bool m_notInList : 1; | 98 bool m_notInList : 1; |
98 }; | 99 }; |
99 | 100 |
100 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutListItem, isListItem()); | 101 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutListItem, isListItem()); |
101 | 102 |
102 } // namespace blink | 103 } // namespace blink |
103 | 104 |
104 #endif // LayoutListItem_h | 105 #endif // LayoutListItem_h |
OLD | NEW |