Move parseFontFaceDescriptor to CSSPropertyParser.cpp
[chromium-blink-merge.git] / third_party / WebKit / Source / core / style / AppliedTextDecoration.h
blobb8eb30ce563b075fdb43b984347dcfb4b5a56bad
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef AppliedTextDecoration_h
6 #define AppliedTextDecoration_h
8 #include "core/css/StyleColor.h"
9 #include "core/style/ComputedStyleConstants.h"
10 #include "wtf/Allocator.h"
12 namespace blink {
14 class AppliedTextDecoration {
15 ALLOW_ONLY_INLINE_ALLOCATION();
16 public:
17 AppliedTextDecoration(TextDecoration, TextDecorationStyle, StyleColor);
18 explicit AppliedTextDecoration(TextDecoration);
20 TextDecoration line() const { return static_cast<TextDecoration>(m_line); }
21 TextDecorationStyle style() const { return static_cast<TextDecorationStyle>(m_style); }
23 bool isSimpleUnderline() const { return m_line == TextDecorationUnderline && m_style == TextDecorationStyleSolid && m_color.isCurrentColor(); }
24 bool operator==(const AppliedTextDecoration&) const;
25 bool operator!=(const AppliedTextDecoration& o) const { return !(*this == o); }
27 private:
28 unsigned m_line : TextDecorationBits;
29 unsigned m_style : 3; // TextDecorationStyle
30 StyleColor m_color;
33 } // namespace blink
35 #endif // AppliedTextDecoration_h