already_AddRefed<SVGAnimatedNumber> nsSVGNumberPair::ToDOMAnimatedNumber(PairIndex aIndex, nsSVGElement* aSVGElement) { nsRefPtr<DOMAnimatedNumber> domAnimatedNumber = aIndex == eFirst ? sSVGFirstAnimatedNumberTearoffTable.GetTearoff(this) : sSVGSecondAnimatedNumberTearoffTable.GetTearoff(this); if (!domAnimatedNumber) { domAnimatedNumber = new DOMAnimatedNumber(this, aIndex, aSVGElement); if (aIndex == eFirst) { sSVGFirstAnimatedNumberTearoffTable.AddTearoff(this, domAnimatedNumber); } else { sSVGSecondAnimatedNumberTearoffTable.AddTearoff(this, domAnimatedNumber); } } return domAnimatedNumber.forget(); }
already_AddRefed<SVGAnimatedAngle> nsSVGAngle::ToDOMAnimatedAngle(nsSVGElement *aSVGElement) { RefPtr<SVGAnimatedAngle> domAnimatedAngle = sSVGAnimatedAngleTearoffTable.GetTearoff(this); if (!domAnimatedAngle) { domAnimatedAngle = new SVGAnimatedAngle(this, aSVGElement); sSVGAnimatedAngleTearoffTable.AddTearoff(this, domAnimatedAngle); } return domAnimatedAngle.forget(); }
already_AddRefed<SVGAngle> nsSVGAngle::ToDOMAnimVal(nsSVGElement *aSVGElement) { RefPtr<SVGAngle> domAnimVal = sAnimSVGAngleTearoffTable.GetTearoff(this); if (!domAnimVal) { domAnimVal = new SVGAngle(this, aSVGElement, SVGAngle::AnimValue); sAnimSVGAngleTearoffTable.AddTearoff(this, domAnimVal); } return domAnimVal.forget(); }
already_AddRefed<SVGAnimatedNumber> nsSVGNumber2::ToDOMAnimatedNumber(nsSVGElement* aSVGElement) { nsRefPtr<DOMAnimatedNumber> domAnimatedNumber = sSVGAnimatedNumberTearoffTable.GetTearoff(this); if (!domAnimatedNumber) { domAnimatedNumber = new DOMAnimatedNumber(this, aSVGElement); sSVGAnimatedNumberTearoffTable.AddTearoff(this, domAnimatedNumber); } return domAnimatedNumber.forget(); }
already_AddRefed<SVGAngle> nsSVGAngle::ToDOMBaseVal(nsSVGElement *aSVGElement) { nsRefPtr<SVGAngle> domBaseVal = sBaseSVGAngleTearoffTable.GetTearoff(this); if (!domBaseVal) { domBaseVal = new SVGAngle(this, aSVGElement, SVGAngle::BaseValue); sBaseSVGAngleTearoffTable.AddTearoff(this, domBaseVal); } return domBaseVal.forget(); }
already_AddRefed<SVGAnimatedLength> nsSVGLength2::ToDOMAnimatedLength(nsSVGElement* aSVGElement) { nsRefPtr<SVGAnimatedLength> svgAnimatedLength = sSVGAnimatedLengthTearoffTable.GetTearoff(this); if (!svgAnimatedLength) { svgAnimatedLength = new SVGAnimatedLength(this, aSVGElement); sSVGAnimatedLengthTearoffTable.AddTearoff(this, svgAnimatedLength); } return svgAnimatedLength.forget(); }
already_AddRefed<nsIDOMSVGAnimatedLength> nsSVGLength2::ToDOMAnimatedLength(nsSVGElement* aSVGElement) { nsRefPtr<DOMAnimatedLength> domAnimatedLength = sSVGAnimatedLengthTearoffTable.GetTearoff(this); if (!domAnimatedLength) { domAnimatedLength = new DOMAnimatedLength(this, aSVGElement); sSVGAnimatedLengthTearoffTable.AddTearoff(this, domAnimatedLength); } return domAnimatedLength.forget(); }
nsresult nsSVGLength2::ToDOMAnimVal(nsIDOMSVGLength **aResult, nsSVGElement *aSVGElement) { nsRefPtr<DOMAnimVal> domAnimVal = sAnimSVGLengthTearoffTable.GetTearoff(this); if (!domAnimVal) { domAnimVal = new DOMAnimVal(this, aSVGElement); sAnimSVGLengthTearoffTable.AddTearoff(this, domAnimVal); } domAnimVal.forget(aResult); return NS_OK; }
nsresult nsSVGViewBox::ToDOMBaseVal(nsIDOMSVGRect **aResult, nsSVGElement *aSVGElement) { nsRefPtr<DOMBaseVal> domBaseVal = sBaseSVGViewBoxTearoffTable.GetTearoff(this); if (!domBaseVal) { domBaseVal = new DOMBaseVal(this, aSVGElement); sBaseSVGViewBoxTearoffTable.AddTearoff(this, domBaseVal); } domBaseVal.forget(aResult); return NS_OK; }
nsresult nsSVGLength2::ToDOMAnimVal(nsIDOMSVGLength **aResult, nsSVGElement *aSVGElement) { *aResult = sAnimSVGLengthTearoffTable.GetTearoff(this); if (!*aResult) { *aResult = new DOMAnimVal(this, aSVGElement); if (!*aResult) return NS_ERROR_OUT_OF_MEMORY; sAnimSVGLengthTearoffTable.AddTearoff(this, *aResult); } NS_ADDREF(*aResult); return NS_OK; }
nsresult nsSVGLength2::ToDOMAnimatedLength(nsIDOMSVGAnimatedLength **aResult, nsSVGElement *aSVGElement) { nsRefPtr<DOMAnimatedLength> domAnimatedLength = sSVGAnimatedLengthTearoffTable.GetTearoff(this); if (!domAnimatedLength) { domAnimatedLength = new DOMAnimatedLength(this, aSVGElement); sSVGAnimatedLengthTearoffTable.AddTearoff(this, domAnimatedLength); } domAnimatedLength.forget(aResult); return NS_OK; }
already_AddRefed<dom::SVGIRect> nsSVGViewBox::ToDOMAnimVal(nsSVGElement *aSVGElement) { if ((mAnimVal && mAnimVal->none) || (!mAnimVal && (!mHasBaseVal || mBaseVal.none))) { return nullptr; } RefPtr<DOMAnimVal> domAnimVal = sAnimSVGViewBoxTearoffTable.GetTearoff(this); if (!domAnimVal) { domAnimVal = new DOMAnimVal(this, aSVGElement); sAnimSVGViewBoxTearoffTable.AddTearoff(this, domAnimVal); } return domAnimVal.forget(); }
nsresult nsSVGViewBox::ToDOMAnimVal(dom::SVGIRect **aResult, nsSVGElement *aSVGElement) { if ((mAnimVal && mAnimVal->none) || (!mAnimVal && (!mHasBaseVal || mBaseVal.none))) { *aResult = nullptr; return NS_OK; } nsRefPtr<DOMAnimVal> domAnimVal = sAnimSVGViewBoxTearoffTable.GetTearoff(this); if (!domAnimVal) { domAnimVal = new DOMAnimVal(this, aSVGElement); sAnimSVGViewBoxTearoffTable.AddTearoff(this, domAnimVal); } domAnimVal.forget(aResult); return NS_OK; }
nsresult nsSVGIntegerPair::ToDOMAnimatedInteger(nsIDOMSVGAnimatedInteger **aResult, PairIndex aIndex, nsSVGElement *aSVGElement) { nsRefPtr<DOMAnimatedInteger> domAnimatedInteger = aIndex == eFirst ? sSVGFirstAnimatedIntegerTearoffTable.GetTearoff(this) : sSVGSecondAnimatedIntegerTearoffTable.GetTearoff(this); if (!domAnimatedInteger) { domAnimatedInteger = new DOMAnimatedInteger(this, aIndex, aSVGElement); if (aIndex == eFirst) { sSVGFirstAnimatedIntegerTearoffTable.AddTearoff(this, domAnimatedInteger); } else { sSVGSecondAnimatedIntegerTearoffTable.AddTearoff(this, domAnimatedInteger); } } domAnimatedInteger.forget(aResult); return NS_OK; }