JSValue* jsCSSStyleSheetPrototypeFunctionAddRule(ExecState* exec, JSObject*, JSValue* thisValue, const ArgList& args) { if (!thisValue->isObject(&JSCSSStyleSheet::s_info)) return throwError(exec, TypeError); JSCSSStyleSheet* castedThisObj = static_cast<JSCSSStyleSheet*>(thisValue); CSSStyleSheet* imp = static_cast<CSSStyleSheet*>(castedThisObj->impl()); ExceptionCode ec = 0; const UString& selector = args[0]->toString(exec); const UString& style = args[1]->toString(exec); int argsCount = args.size(); if (argsCount < 3) { KJS::JSValue* result = jsNumber(exec, imp->addRule(selector, style, ec)); setDOMException(exec, ec); return result; } unsigned index = args[2]->toInt32(exec); KJS::JSValue* result = jsNumber(exec, imp->addRule(selector, style, index, ec)); setDOMException(exec, ec); return result; }
JSValue JSC_HOST_CALL jsCSSStyleSheetPrototypeFunctionAddRule(ExecState* exec, JSObject*, JSValue thisValue, const ArgList& args) { UNUSED_PARAM(args); if (!thisValue.inherits(&JSCSSStyleSheet::s_info)) return throwError(exec, TypeError); JSCSSStyleSheet* castedThisObj = static_cast<JSCSSStyleSheet*>(asObject(thisValue)); CSSStyleSheet* imp = static_cast<CSSStyleSheet*>(castedThisObj->impl()); ExceptionCode ec = 0; const UString& selector = args.at(0).toString(exec); const UString& style = args.at(1).toString(exec); int argsCount = args.size(); if (argsCount < 3) { JSC::JSValue result = jsNumber(exec, imp->addRule(selector, style, ec)); setDOMException(exec, ec); return result; } unsigned index = args.at(2).toInt32(exec); JSC::JSValue result = jsNumber(exec, imp->addRule(selector, style, index, ec)); setDOMException(exec, ec); return result; }
JSValue* jsCSSStyleSheetPrototypeFunctionRemoveRule(ExecState* exec, JSObject*, JSValue* thisValue, const ArgList& args) { if (!thisValue->isObject(&JSCSSStyleSheet::s_info)) return throwError(exec, TypeError); JSCSSStyleSheet* castedThisObj = static_cast<JSCSSStyleSheet*>(thisValue); CSSStyleSheet* imp = static_cast<CSSStyleSheet*>(castedThisObj->impl()); ExceptionCode ec = 0; unsigned index = args[0]->toInt32(exec); imp->removeRule(index, ec); setDOMException(exec, ec); return jsUndefined(); }
JSValue JSC_HOST_CALL jsCSSStyleSheetPrototypeFunctionRemoveRule(ExecState* exec, JSObject*, JSValue thisValue, const ArgList& args) { UNUSED_PARAM(args); if (!thisValue.inherits(&JSCSSStyleSheet::s_info)) return throwError(exec, TypeError); JSCSSStyleSheet* castedThisObj = static_cast<JSCSSStyleSheet*>(asObject(thisValue)); CSSStyleSheet* imp = static_cast<CSSStyleSheet*>(castedThisObj->impl()); ExceptionCode ec = 0; unsigned index = args.at(0).toInt32(exec); imp->removeRule(index, ec); setDOMException(exec, ec); return jsUndefined(); }