コード例 #1
0
/* static */ int
DOM_CSSMatrix::inverse(DOM_Object* this_object, ES_Value* argv, int argc, ES_Value* return_value, DOM_Runtime* origining_runtime)
{
	DOM_THIS_OBJECT(matrix, DOM_TYPE_CSS_MATRIX, DOM_CSSMatrix);

	AffineTransform transform = matrix->transform;
	if (!transform.Invert())
		return DOM_CALL_DOMEXCEPTION(NOT_SUPPORTED_ERR);

	DOM_CSSMatrix *inverse_matrix;
	if (OpStatus::IsMemoryError(DOM_CSSMatrix::Make(inverse_matrix, transform, matrix->style_declaration)))
		return ES_NO_MEMORY;

	DOMSetObject(return_value, inverse_matrix);
	return ES_VALUE;
}