/* * Copyright (c) 2025, Lucien Fiorini * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include #include namespace Web::SVG { class SVGFEBlendElement final : public SVGElement , public SVGFilterPrimitiveStandardAttributes { WEB_PLATFORM_OBJECT(SVGFEBlendElement, SVGElement); GC_DECLARE_ALLOCATOR(SVGFEBlendElement); public: virtual ~SVGFEBlendElement() override = default; GC::Ref in1(); GC::Ref in2(); Gfx::CompositingAndBlendingOperator mode() const; GC::Ref mode_for_bindings() const; private: SVGFEBlendElement(DOM::Document&, DOM::QualifiedName); virtual void initialize(JS::Realm&) override; virtual void visit_edges(Cell::Visitor&) override; virtual void attribute_changed(FlyString const& name, Optional const& old_value, Optional const& new_value, Optional const& namespace_) override; GC::Ptr m_in1; GC::Ptr m_in2; Optional m_mode; }; }