ladybird/Userland/Libraries/LibWeb/Geometry/DOMMatrix.idl
Shannon Booth d4a890080d LibWeb: Switch IDL from UseNewAKString to UseDeprecatedAKString
NewAKString is effectively the default for any new IDL interface, so
let's mark this as the default behavior. It also makes it much easier to
figure out whatever interfaces are still left to port over to new AK
String.
2023-09-02 19:23:41 +01:00

52 lines
3.2 KiB
Text

#import <Geometry/DOMMatrixReadOnly.idl>
// https://drafts.fxtf.org/geometry/#dommatrix
// FIXME: LegacyWindowAlias currently doesn't do anything.
[Exposed=(Window,Worker), Serializable, LegacyWindowAlias=(SVGMatrix, WebKitCSSMatrix)]
interface DOMMatrix : DOMMatrixReadOnly {
constructor(optional (DOMString or sequence<unrestricted double>) init);
// FIXME: [NewObject] static DOMMatrix fromMatrix(optional DOMMatrixInit other = {});
// FIXME: [NewObject] static DOMMatrix fromFloat32Array(Float32Array array32);
// FIXME: [NewObject] static DOMMatrix fromFloat64Array(Float64Array array64);
// These attributes are simple aliases for certain elements of the 4x4 matrix
inherit attribute unrestricted double a;
inherit attribute unrestricted double b;
inherit attribute unrestricted double c;
inherit attribute unrestricted double d;
inherit attribute unrestricted double e;
inherit attribute unrestricted double f;
inherit attribute unrestricted double m11;
inherit attribute unrestricted double m12;
inherit attribute unrestricted double m13;
inherit attribute unrestricted double m14;
inherit attribute unrestricted double m21;
inherit attribute unrestricted double m22;
inherit attribute unrestricted double m23;
inherit attribute unrestricted double m24;
inherit attribute unrestricted double m31;
inherit attribute unrestricted double m32;
inherit attribute unrestricted double m33;
inherit attribute unrestricted double m34;
inherit attribute unrestricted double m41;
inherit attribute unrestricted double m42;
inherit attribute unrestricted double m43;
inherit attribute unrestricted double m44;
// Mutable transform methods
// FIXME: DOMMatrix multiplySelf(optional DOMMatrixInit other = {});
// FIXME: DOMMatrix preMultiplySelf(optional DOMMatrixInit other = {});
// FIXME: DOMMatrix translateSelf(optional unrestricted double tx = 0, optional unrestricted double ty = 0, optional unrestricted double tz = 0);
// FIXME: DOMMatrix scaleSelf(optional unrestricted double scaleX = 1, optional unrestricted double scaleY, optional unrestricted double scaleZ = 1, optional unrestricted double originX = 0, optional unrestricted double originY = 0, optional unrestricted double originZ = 0);
// FIXME: DOMMatrix scale3dSelf(optional unrestricted double scale = 1, optional unrestricted double originX = 0, optional unrestricted double originY = 0, optional unrestricted double originZ = 0);
// FIXME: DOMMatrix rotateSelf(optional unrestricted double rotX = 0, optional unrestricted double rotY, optional unrestricted double rotZ);
// FIXME: DOMMatrix rotateFromVectorSelf(optional unrestricted double x = 0, optional unrestricted double y = 0);
// FIXME: DOMMatrix rotateAxisAngleSelf(optional unrestricted double x = 0, optional unrestricted double y = 0, optional unrestricted double z = 0, optional unrestricted double angle = 0);
// FIXME: DOMMatrix skewXSelf(optional unrestricted double sx = 0);
// FIXME: DOMMatrix skewYSelf(optional unrestricted double sy = 0);
DOMMatrix invertSelf();
// FIXME: [Exposed=Window] DOMMatrix setMatrixValue(DOMString transformList);
};