OLD | NEW |
1 /* | 1 /* |
2 * (C) 1999-2003 Lars Knoll (knoll@kde.org) | 2 * (C) 1999-2003 Lars Knoll (knoll@kde.org) |
3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All r
ights reserved. | 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All r
ights reserved. |
4 * Copyright (C) 2011 Research In Motion Limited. All rights reserved. | 4 * Copyright (C) 2011 Research In Motion Limited. All rights reserved. |
5 * Copyright (C) 2013 Intel Corporation. All rights reserved. | 5 * Copyright (C) 2013 Intel Corporation. All rights reserved. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 // Only StylePropertySerializer uses the following two classes. | 58 // Only StylePropertySerializer uses the following two classes. |
59 class PropertyValueForSerializer { | 59 class PropertyValueForSerializer { |
60 public: | 60 public: |
61 explicit PropertyValueForSerializer(StylePropertySet::PropertyReference
property) | 61 explicit PropertyValueForSerializer(StylePropertySet::PropertyReference
property) |
62 : m_value(property.value()) | 62 : m_value(property.value()) |
63 , m_id(property.id()) | 63 , m_id(property.id()) |
64 , m_isImportant(property.isImportant()) | 64 , m_isImportant(property.isImportant()) |
65 , m_isImplicit(property.isImplicit()) | 65 , m_isImplicit(property.isImplicit()) |
66 , m_isInherited(property.isInherited()) { } | 66 , m_isInherited(property.isInherited()) { } |
67 | 67 |
68 PropertyValueForSerializer(CSSPropertyID id, const CSSValue* value, bool
isImportant) | 68 PropertyValueForSerializer(CSSPropertyID id, const CSSValue value, bool
isImportant) |
69 : m_value(value) | 69 : m_value(value) |
70 , m_id(id) | 70 , m_id(id) |
71 , m_isImportant(isImportant) | 71 , m_isImportant(isImportant) |
72 , m_isImplicit(value->isImplicitInitialValue()) | 72 , m_isImplicit(value.isImplicitInitialValue()) |
73 , m_isInherited(value->isInheritedValue()) { } | 73 , m_isInherited(value.isInheritedValue()) { } |
74 | 74 |
75 CSSPropertyID id() const { return m_id; } | 75 CSSPropertyID id() const { return m_id; } |
76 const CSSValue* value() const { return m_value; } | 76 const CSSValue value() const { return m_value; } |
77 bool isImportant() const { return m_isImportant; } | 77 bool isImportant() const { return m_isImportant; } |
78 bool isImplicit() const { return m_isImplicit; } | 78 bool isImplicit() const { return m_isImplicit; } |
79 bool isInherited() const { return m_isInherited; } | 79 bool isInherited() const { return m_isInherited; } |
80 bool isValid() const { return m_value; } | |
81 | 80 |
82 private: | 81 private: |
83 const CSSValue* m_value; | 82 const CSSValue m_value; |
84 CSSPropertyID m_id; | 83 CSSPropertyID m_id; |
85 bool m_isImportant; | 84 bool m_isImportant; |
86 bool m_isImplicit; | 85 bool m_isImplicit; |
87 bool m_isInherited; | 86 bool m_isInherited; |
88 }; | 87 }; |
89 | 88 |
90 class StylePropertySetForSerializer { | 89 class StylePropertySetForSerializer { |
91 public: | 90 public: |
92 explicit StylePropertySetForSerializer(const StylePropertySet&); | 91 explicit StylePropertySetForSerializer(const StylePropertySet&); |
93 | 92 |
94 unsigned propertyCount() const; | 93 unsigned propertyCount() const; |
95 PropertyValueForSerializer propertyAt(unsigned index) const; | 94 PropertyValueForSerializer propertyAt(unsigned index) const; |
96 bool shouldProcessPropertyAt(unsigned index) const; | 95 bool shouldProcessPropertyAt(unsigned index) const; |
97 int findPropertyIndex(CSSPropertyID) const; | 96 int findPropertyIndex(CSSPropertyID) const; |
98 const CSSValue* getPropertyCSSValue(CSSPropertyID) const; | 97 const NullableCSSValue getPropertyCSSValue(CSSPropertyID) const; |
99 String getPropertyValue(CSSPropertyID) const; | 98 String getPropertyValue(CSSPropertyID) const; |
100 bool isPropertyImplicit(CSSPropertyID) const; | 99 bool isPropertyImplicit(CSSPropertyID) const; |
101 bool propertyIsImportant(CSSPropertyID) const; | 100 bool propertyIsImportant(CSSPropertyID) const; |
102 | 101 |
103 private: | 102 private: |
104 bool hasExpandedAllProperty() const { return hasAllProperty() && m_needT
oExpandAll; } | 103 bool hasExpandedAllProperty() const { return hasAllProperty() && m_needT
oExpandAll; } |
105 bool hasAllProperty() const { return m_allIndex != -1; } | 104 bool hasAllProperty() const { return m_allIndex != -1; } |
106 | 105 |
107 const StylePropertySet& m_propertySet; | 106 const StylePropertySet& m_propertySet; |
108 int m_allIndex; | 107 int m_allIndex; |
109 BitArray<numCSSProperties> m_longhandPropertyUsed; | 108 BitArray<numCSSProperties> m_longhandPropertyUsed; |
110 bool m_needToExpandAll; | 109 bool m_needToExpandAll; |
111 }; | 110 }; |
112 | 111 |
113 const StylePropertySetForSerializer m_propertySet; | 112 const StylePropertySetForSerializer m_propertySet; |
114 }; | 113 }; |
115 | 114 |
116 } // namespace blink | 115 } // namespace blink |
117 | 116 |
118 #endif | 117 #endif |
OLD | NEW |