| // Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef StylePropertyMap_h |
| #define StylePropertyMap_h |
| |
| #include "core/css/cssom/StylePropertyMapReadonly.h" |
| |
| namespace blink { |
| |
| class ExceptionState; |
| class ExecutionContext; |
| |
| class CORE_EXPORT StylePropertyMap : public StylePropertyMapReadonly { |
| DEFINE_WRAPPERTYPEINFO(); |
| WTF_MAKE_NONCOPYABLE(StylePropertyMap); |
| |
| public: |
| void set(const ExecutionContext*, |
| const String& property_name, |
| CSSStyleValueOrCSSStyleValueSequenceOrString& item, |
| ExceptionState&); |
| void append(const ExecutionContext*, |
| const String& property_name, |
| CSSStyleValueOrCSSStyleValueSequenceOrString& item, |
| ExceptionState&); |
| void remove(const String& property_name, ExceptionState&); |
| |
| virtual void set(const ExecutionContext*, |
| CSSPropertyID, |
| CSSStyleValueOrCSSStyleValueSequenceOrString& item, |
| ExceptionState&) = 0; |
| virtual void append(const ExecutionContext*, |
| CSSPropertyID, |
| CSSStyleValueOrCSSStyleValueSequenceOrString& item, |
| ExceptionState&) = 0; |
| virtual void remove(CSSPropertyID, ExceptionState&) = 0; |
| |
| protected: |
| StylePropertyMap() {} |
| |
| }; |
| |
| } // namespace blink |
| |
| #endif |