Issue #2737 - Part 1: Base implementation of SVGGeometryElement.

Mostly mechanical changes to generalize path geometry for all SVG draw
elements. No user-exposed changes.
This commit is contained in:
Moonchild 2025-04-27 18:03:48 +02:00 committed by roytam1
commit fd4a224d1d
45 changed files with 368 additions and 319 deletions

View file

@ -6,7 +6,7 @@
#ifndef mozilla_dom_SVGLineElement_h
#define mozilla_dom_SVGLineElement_h
#include "nsSVGPathGeometryElement.h"
#include "SVGGeometryElement.h"
#include "nsSVGLength2.h"
nsresult NS_NewSVGLineElement(nsIContent **aResult,
@ -15,7 +15,7 @@ nsresult NS_NewSVGLineElement(nsIContent **aResult,
namespace mozilla {
namespace dom {
typedef nsSVGPathGeometryElement SVGLineElementBase;
typedef SVGGeometryElement SVGLineElementBase;
class SVGLineElement final : public SVGLineElementBase
{
@ -33,7 +33,7 @@ public:
// nsIContent interface
NS_IMETHOD_(bool) IsAttributeMapped(const nsIAtom* name) const override;
// nsSVGPathGeometryElement methods:
// SVGGeometryElement methods:
virtual bool IsMarkable() override { return true; }
virtual void GetMarkPoints(nsTArray<nsSVGMark> *aMarks) override;
virtual void GetAsSimplePath(SimplePath* aSimplePath) override;