OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). | 2 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). |
3 * | 3 * |
4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
8 * | 8 * |
9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
12 * Library General Public License for more details. | 12 * Library General Public License for more details. |
13 * | 13 * |
14 * You should have received a copy of the GNU Library General Public License | 14 * You should have received a copy of the GNU Library General Public License |
15 * along with this library; see the file COPYING.LIB. If not, write to | 15 * along with this library; see the file COPYING.LIB. If not, write to |
16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
17 * Boston, MA 02110-1301, USA. | 17 * Boston, MA 02110-1301, USA. |
18 * | 18 * |
19 */ | 19 */ |
20 | 20 |
21 #ifndef HTMLMeterElement_h | 21 #ifndef HTMLMeterElement_h |
22 #define HTMLMeterElement_h | 22 #define HTMLMeterElement_h |
23 | 23 |
24 #include "core/CoreExport.h" | 24 #include "core/CoreExport.h" |
25 #include "core/html/LabelableElement.h" | 25 #include "core/html/LabelableElement.h" |
26 | 26 |
27 namespace blink { | 27 namespace blink { |
28 | 28 |
29 class MeterValueElement; | 29 class HTMLDivElement; |
30 class LayoutMeter; | |
31 | 30 |
32 class CORE_EXPORT HTMLMeterElement final : public LabelableElement { | 31 class CORE_EXPORT HTMLMeterElement final : public LabelableElement { |
33 DEFINE_WRAPPERTYPEINFO(); | 32 DEFINE_WRAPPERTYPEINFO(); |
34 public: | 33 public: |
35 static PassRefPtrWillBeRawPtr<HTMLMeterElement> create(Document&); | 34 static PassRefPtrWillBeRawPtr<HTMLMeterElement> create(Document&); |
36 | 35 |
37 enum GaugeRegion { | 36 enum GaugeRegion { |
38 GaugeRegionOptimum, | 37 GaugeRegionOptimum, |
39 GaugeRegionSuboptimal, | 38 GaugeRegionSuboptimal, |
40 GaugeRegionEvenLessGood | 39 GaugeRegionEvenLessGood |
(...skipping 23 matching lines...) Expand all Loading... |
64 bool canContainRangeEndPoint() const override { return false; } | 63 bool canContainRangeEndPoint() const override { return false; } |
65 | 64 |
66 DECLARE_VIRTUAL_TRACE(); | 65 DECLARE_VIRTUAL_TRACE(); |
67 | 66 |
68 private: | 67 private: |
69 explicit HTMLMeterElement(Document&); | 68 explicit HTMLMeterElement(Document&); |
70 ~HTMLMeterElement() override; | 69 ~HTMLMeterElement() override; |
71 | 70 |
72 bool areAuthorShadowsAllowed() const override { return false; } | 71 bool areAuthorShadowsAllowed() const override { return false; } |
73 void willAddFirstAuthorShadowRoot() override; | 72 void willAddFirstAuthorShadowRoot() override; |
74 LayoutMeter* layoutMeter() const; | |
75 | 73 |
76 bool supportLabels() const override { return true; } | 74 bool supportLabels() const override { return true; } |
77 | 75 |
78 LayoutObject* createLayoutObject(const ComputedStyle&) override; | 76 LayoutObject* createLayoutObject(const ComputedStyle&) override; |
79 void parseAttribute(const QualifiedName&, const AtomicString&, const AtomicS
tring&) override; | 77 void parseAttribute(const QualifiedName&, const AtomicString&, const AtomicS
tring&) override; |
80 | 78 |
81 void didElementStateChange(); | 79 void didElementStateChange(); |
| 80 void updateValueAppearance(double percentage); |
82 void didAddUserAgentShadowRoot(ShadowRoot&) override; | 81 void didAddUserAgentShadowRoot(ShadowRoot&) override; |
83 | 82 |
84 RefPtrWillBeMember<MeterValueElement> m_value; | 83 RefPtrWillBeMember<HTMLDivElement> m_value; |
85 }; | 84 }; |
86 | 85 |
87 } // namespace blink | 86 } // namespace blink |
88 | 87 |
89 #endif // HTMLMeterElement_h | 88 #endif // HTMLMeterElement_h |
OLD | NEW |