OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) | 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
5 * Copyright (C) 2003, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 5 * Copyright (C) 2003, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
6 * Copyright (C) 2006 Graham Dennis (graham.dennis@gmail.com) | 6 * Copyright (C) 2006 Graham Dennis (graham.dennis@gmail.com) |
7 * | 7 * |
8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
11 * version 2 of the License, or (at your option) any later version. | 11 * version 2 of the License, or (at your option) any later version. |
12 * | 12 * |
13 * This library is distributed in the hope that it will be useful, | 13 * This library is distributed in the hope that it will be useful, |
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
16 * Library General Public License for more details. | 16 * Library General Public License for more details. |
17 * | 17 * |
18 * You should have received a copy of the GNU Library General Public License | 18 * You should have received a copy of the GNU Library General Public License |
19 * along with this library; see the file COPYING.LIB. If not, write to | 19 * along with this library; see the file COPYING.LIB. If not, write to |
20 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 20 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
21 * Boston, MA 02110-1301, USA. | 21 * Boston, MA 02110-1301, USA. |
22 * | 22 * |
23 */ | 23 */ |
24 | 24 |
25 #ifndef BorderValue_h | 25 #ifndef BorderValue_h |
26 #define BorderValue_h | 26 #define BorderValue_h |
27 | 27 |
28 #include "core/css/StyleColor.h" | 28 #include "core/css/StyleColor.h" |
29 #include "core/layout/style/LayoutStyleConstants.h" | 29 #include "core/layout/style/ComputedStyleConstants.h" |
30 #include "platform/graphics/Color.h" | 30 #include "platform/graphics/Color.h" |
31 | 31 |
32 namespace blink { | 32 namespace blink { |
33 | 33 |
34 class BorderValue { | 34 class BorderValue { |
35 friend class LayoutStyle; | 35 friend class ComputedStyle; |
36 public: | 36 public: |
37 BorderValue() | 37 BorderValue() |
38 : m_color(0) | 38 : m_color(0) |
39 , m_colorIsCurrentColor(true) | 39 , m_colorIsCurrentColor(true) |
40 , m_width(3) | 40 , m_width(3) |
41 , m_style(BNONE) | 41 , m_style(BNONE) |
42 , m_isAuto(AUTO_OFF) | 42 , m_isAuto(AUTO_OFF) |
43 { | 43 { |
44 } | 44 } |
45 | 45 |
(...skipping 10 matching lines...) Expand all Loading... |
56 bool isVisible(bool checkStyle = true) const | 56 bool isVisible(bool checkStyle = true) const |
57 { | 57 { |
58 return nonZero(checkStyle) && !isTransparent() && (!checkStyle || m_styl
e != BHIDDEN); | 58 return nonZero(checkStyle) && !isTransparent() && (!checkStyle || m_styl
e != BHIDDEN); |
59 } | 59 } |
60 | 60 |
61 bool operator==(const BorderValue& o) const | 61 bool operator==(const BorderValue& o) const |
62 { | 62 { |
63 return m_width == o.m_width && m_style == o.m_style && m_color == o.m_co
lor && m_colorIsCurrentColor == o.m_colorIsCurrentColor; | 63 return m_width == o.m_width && m_style == o.m_style && m_color == o.m_co
lor && m_colorIsCurrentColor == o.m_colorIsCurrentColor; |
64 } | 64 } |
65 | 65 |
66 // The default width is 3px, but if the style is none we compute a value of
0 (in LayoutStyle itself) | 66 // The default width is 3px, but if the style is none we compute a value of
0 (in ComputedStyle itself) |
67 bool visuallyEqual(const BorderValue& o) const | 67 bool visuallyEqual(const BorderValue& o) const |
68 { | 68 { |
69 if (m_style == BNONE && o.m_style == BNONE) | 69 if (m_style == BNONE && o.m_style == BNONE) |
70 return true; | 70 return true; |
71 if (m_style == BHIDDEN && o.m_style == BHIDDEN) | 71 if (m_style == BHIDDEN && o.m_style == BHIDDEN) |
72 return true; | 72 return true; |
73 return *this == o; | 73 return *this == o; |
74 } | 74 } |
75 | 75 |
76 bool operator!=(const BorderValue& o) const | 76 bool operator!=(const BorderValue& o) const |
(...skipping 21 matching lines...) Expand all Loading... |
98 unsigned m_width : 26; | 98 unsigned m_width : 26; |
99 unsigned m_style : 4; // EBorderStyle | 99 unsigned m_style : 4; // EBorderStyle |
100 | 100 |
101 // This is only used by OutlineValue but moved here to keep the bits packed. | 101 // This is only used by OutlineValue but moved here to keep the bits packed. |
102 unsigned m_isAuto : 1; // OutlineIsAuto | 102 unsigned m_isAuto : 1; // OutlineIsAuto |
103 }; | 103 }; |
104 | 104 |
105 } // namespace blink | 105 } // namespace blink |
106 | 106 |
107 #endif // BorderValue_h | 107 #endif // BorderValue_h |
OLD | NEW |