1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-18 20:35:06 +00:00
serenity/Userland/Libraries/LibWeb/SVG/SVGSymbolElement.h
Ali Mohammad Pur aeee98b3a1 AK+Everywhere: Remove the null state of DeprecatedString
This commit removes DeprecatedString's "null" state, and replaces all
its users with one of the following:
- A normal, empty DeprecatedString
- Optional<DeprecatedString>

Note that null states of DeprecatedFlyString/StringView/etc are *not*
affected by this commit. However, DeprecatedString::empty() is now
considered equal to a null StringView.
2023-10-13 18:33:21 +03:30

37 lines
976 B
C++

/*
* Copyright (c) 2023, Preston Taylor <95388976+PrestonLTaylor@users.noreply.github.com>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <LibWeb/SVG/SVGGraphicsElement.h>
namespace Web::SVG {
class SVGSymbolElement final : public SVGGraphicsElement {
WEB_PLATFORM_OBJECT(SVGSymbolElement, SVGGraphicsElement);
public:
virtual ~SVGSymbolElement() override = default;
void apply_presentational_hints(CSS::StyleProperties& style) const override;
Optional<ViewBox> view_box() const { return m_view_box; }
private:
SVGSymbolElement(DOM::Document&, DOM::QualifiedName);
virtual void initialize(JS::Realm&) override;
virtual JS::GCPtr<Layout::Node> create_layout_node(NonnullRefPtr<CSS::StyleProperties>) override;
bool is_direct_child_of_use_shadow_tree() const;
virtual void attribute_changed(FlyString const& name, Optional<DeprecatedString> const& value) override;
Optional<ViewBox> m_view_box;
};
}