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) 2010 Apple Inc. All rights reserved. | 4 * Copyright (C) 2010 Apple Inc. All rights reserved. |
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 * |
11 * This library is distributed in the hope that it will be useful, | 11 * This library is distributed in the hope that it will be useful, |
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
14 * Library General Public License for more details. | 14 * Library General Public License for more details. |
15 * | 15 * |
16 * You should have received a copy of the GNU Library General Public License | 16 * You should have received a copy of the GNU Library General Public License |
17 * along with this library; see the file COPYING.LIB. If not, write to | 17 * along with this library; see the file COPYING.LIB. If not, write to |
18 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 18 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
19 * Boston, MA 02110-1301, USA. | 19 * Boston, MA 02110-1301, USA. |
20 * | 20 * |
21 */ | 21 */ |
22 | 22 |
23 #ifndef HTMLOListElement_h | 23 #ifndef HTMLOListElement_h |
24 #define HTMLOListElement_h | 24 #define HTMLOListElement_h |
25 | 25 |
26 #include "core/html/HTMLElement.h" | 26 #include "core/html/HTMLElement.h" |
27 | 27 |
28 namespace blink { | 28 namespace blink { |
29 | 29 |
30 class HTMLOListElement FINAL : public HTMLElement { | 30 class HTMLOListElement final : public HTMLElement { |
31 DEFINE_WRAPPERTYPEINFO(); | 31 DEFINE_WRAPPERTYPEINFO(); |
32 public: | 32 public: |
33 DECLARE_NODE_FACTORY(HTMLOListElement); | 33 DECLARE_NODE_FACTORY(HTMLOListElement); |
34 | 34 |
35 int start() const { return m_hasExplicitStart ? m_start : (m_isReversed ? it
emCount() : 1); } | 35 int start() const { return m_hasExplicitStart ? m_start : (m_isReversed ? it
emCount() : 1); } |
36 void setStart(int); | 36 void setStart(int); |
37 | 37 |
38 bool isReversed() const { return m_isReversed; } | 38 bool isReversed() const { return m_isReversed; } |
39 | 39 |
40 void itemCountChanged() { m_shouldRecalculateItemCount = true; } | 40 void itemCountChanged() { m_shouldRecalculateItemCount = true; } |
41 | 41 |
42 private: | 42 private: |
43 explicit HTMLOListElement(Document&); | 43 explicit HTMLOListElement(Document&); |
44 | 44 |
45 void updateItemValues(); | 45 void updateItemValues(); |
46 | 46 |
47 unsigned itemCount() const | 47 unsigned itemCount() const |
48 { | 48 { |
49 if (m_shouldRecalculateItemCount) | 49 if (m_shouldRecalculateItemCount) |
50 const_cast<HTMLOListElement*>(this)->recalculateItemCount(); | 50 const_cast<HTMLOListElement*>(this)->recalculateItemCount(); |
51 return m_itemCount; | 51 return m_itemCount; |
52 } | 52 } |
53 | 53 |
54 void recalculateItemCount(); | 54 void recalculateItemCount(); |
55 | 55 |
56 virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERR
IDE; | 56 virtual void parseAttribute(const QualifiedName&, const AtomicString&) overr
ide; |
57 virtual bool isPresentationAttribute(const QualifiedName&) const OVERRIDE; | 57 virtual bool isPresentationAttribute(const QualifiedName&) const override; |
58 virtual void collectStyleForPresentationAttribute(const QualifiedName&, cons
t AtomicString&, MutableStylePropertySet*) OVERRIDE; | 58 virtual void collectStyleForPresentationAttribute(const QualifiedName&, cons
t AtomicString&, MutableStylePropertySet*) override; |
59 | 59 |
60 int m_start; | 60 int m_start; |
61 unsigned m_itemCount; | 61 unsigned m_itemCount; |
62 | 62 |
63 bool m_hasExplicitStart : 1; | 63 bool m_hasExplicitStart : 1; |
64 bool m_isReversed : 1; | 64 bool m_isReversed : 1; |
65 bool m_shouldRecalculateItemCount : 1; | 65 bool m_shouldRecalculateItemCount : 1; |
66 }; | 66 }; |
67 | 67 |
68 } // namespace blink | 68 } // namespace blink |
69 | 69 |
70 #endif // HTMLOListElement_h | 70 #endif // HTMLOListElement_h |
OLD | NEW |