/* * Copyright (c) 2024, Andreas Kling * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include namespace Web::SVG { class SVGAnimatedRect final : public Bindings::PlatformObject { WEB_PLATFORM_OBJECT(SVGAnimatedRect, Bindings::PlatformObject); GC_DECLARE_ALLOCATOR(SVGAnimatedRect); public: virtual ~SVGAnimatedRect(); GC::Ptr base_val() const; GC::Ptr anim_val() const; void set_base_val(Gfx::DoubleRect const&); void set_anim_val(Gfx::DoubleRect const&); void set_nulled(bool); private: virtual void initialize(JS::Realm&) override; virtual void visit_edges(Visitor&) override; explicit SVGAnimatedRect(JS::Realm&); GC::Ptr m_base_val; GC::Ptr m_anim_val; bool m_nulled { true }; }; }