本文整理汇总了C++中SVGFEImageElement类的典型用法代码示例。如果您正苦于以下问题:C++ SVGFEImageElement类的具体用法?C++ SVGFEImageElement怎么用?C++ SVGFEImageElement使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了SVGFEImageElement类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AttributeChanged
NS_IMETHODIMP
SVGFEImageFrame::AttributeChanged(int32_t aNameSpaceID,
nsIAtom* aAttribute,
int32_t aModType)
{
SVGFEImageElement *element = static_cast<SVGFEImageElement*>(mContent);
if (element->AttributeAffectsRendering(aNameSpaceID, aAttribute)) {
nsSVGEffects::InvalidateRenderingObservers(this);
}
if (aNameSpaceID == kNameSpaceID_XLink &&
aAttribute == nsGkAtoms::href) {
// Prevent setting image.src by exiting early
if (nsContentUtils::IsImageSrcSetDisabled()) {
return NS_OK;
}
if (element->mStringAttributes[SVGFEImageElement::HREF].IsExplicitlySet()) {
element->LoadSVGImage(true, true);
} else {
element->CancelImageRequests(true);
}
}
return SVGFEImageFrameBase::AttributeChanged(aNameSpaceID,
aAttribute, aModType);
}
示例2: xmlspaceAttrSetter
static void xmlspaceAttrSetter(v8::Local<v8::String> name, v8::Local<v8::Value> value, const v8::AccessorInfo& info)
{
SVGFEImageElement* imp = V8SVGFEImageElement::toNative(info.Holder());
V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, v, value);
imp->setXmlspace(v);
return;
}
示例3: MOZ_ASSERT
nsresult
SVGFEImageFrame::AttributeChanged(int32_t aNameSpaceID,
nsIAtom* aAttribute,
int32_t aModType)
{
SVGFEImageElement *element = static_cast<SVGFEImageElement*>(mContent);
if (element->AttributeAffectsRendering(aNameSpaceID, aAttribute)) {
MOZ_ASSERT(GetParent()->GetType() == nsGkAtoms::svgFilterFrame,
"Observers observe the filter, so that's what we must invalidate");
nsSVGEffects::InvalidateDirectRenderingObservers(GetParent());
}
if ((aNameSpaceID == kNameSpaceID_XLink ||
aNameSpaceID == kNameSpaceID_None) &&
aAttribute == nsGkAtoms::href) {
bool hrefIsSet =
element->mStringAttributes[SVGFEImageElement::HREF].IsExplicitlySet() ||
element->mStringAttributes[SVGFEImageElement::XLINK_HREF]
.IsExplicitlySet();
if (hrefIsSet) {
element->LoadSVGImage(true, true);
} else {
element->CancelImageRequests(true);
}
}
return nsFrame::AttributeChanged(aNameSpaceID, aAttribute, aModType);
}
示例4: switch
void JSSVGFEImageElement::putValueProperty(ExecState* exec, int token, JSValue* value, int /*attr*/)
{
switch (token) {
case XmllangAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
imp->setXmllang(value->toString(exec));
break;
}
case XmlspaceAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
imp->setXmlspace(value->toString(exec));
break;
}
}
}
示例5: throwError
JSValue* JSSVGFEImageElementPrototypeFunction::callAsFunction(ExecState* exec, JSObject* thisObj, const List& args)
{
if (!thisObj->inherits(&JSSVGFEImageElement::info))
return throwError(exec, TypeError);
JSSVGFEImageElement* castedThisObj = static_cast<JSSVGFEImageElement*>(thisObj);
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(castedThisObj->impl());
switch (id) {
case JSSVGFEImageElement::GetPresentationAttributeFuncNum: {
String name = args[0]->toString(exec);
KJS::JSValue* result = toJS(exec, WTF::getPtr(imp->getPresentationAttribute(name)));
return result;
}
}
return 0;
}
示例6: switch
JSValue* JSSVGFEImageElement::getValueProperty(ExecState* exec, int token) const
{
switch (token) {
case HrefAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
RefPtr<SVGAnimatedString> obj = imp->hrefAnimated();
return toJS(exec, obj.get(), imp);
}
case XmllangAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
return jsString(imp->xmllang());
}
case XmlspaceAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
return jsString(imp->xmlspace());
}
case ExternalResourcesRequiredAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
RefPtr<SVGAnimatedBoolean> obj = imp->externalResourcesRequiredAnimated();
return toJS(exec, obj.get(), imp);
}
case XAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
RefPtr<SVGAnimatedLength> obj = imp->xAnimated();
return toJS(exec, obj.get(), imp);
}
case YAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
RefPtr<SVGAnimatedLength> obj = imp->yAnimated();
return toJS(exec, obj.get(), imp);
}
case WidthAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
RefPtr<SVGAnimatedLength> obj = imp->widthAnimated();
return toJS(exec, obj.get(), imp);
}
case HeightAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
RefPtr<SVGAnimatedLength> obj = imp->heightAnimated();
return toJS(exec, obj.get(), imp);
}
case ResultAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
RefPtr<SVGAnimatedString> obj = imp->resultAnimated();
return toJS(exec, obj.get(), imp);
}
case ClassNameAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
RefPtr<SVGAnimatedString> obj = imp->classNameAnimated();
return toJS(exec, obj.get(), imp);
}
case StyleAttrNum: {
SVGFEImageElement* imp = static_cast<SVGFEImageElement*>(impl());
return toJS(exec, WTF::getPtr(imp->style()));
}
}
return 0;
}
示例7: xAttrGetter
static v8::Handle<v8::Value> xAttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
{
SVGFEImageElement* imp = V8SVGFEImageElement::toNative(info.Holder());
return toV8Fast(imp->xAnimated(), info, imp);
}
示例8: xmlspaceAttrGetter
static v8::Handle<v8::Value> xmlspaceAttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
{
SVGFEImageElement* imp = V8SVGFEImageElement::toNative(info.Holder());
return v8String(imp->xmlspace(), info.GetIsolate());
}
示例9: getPresentationAttributeCallback
static v8::Handle<v8::Value> getPresentationAttributeCallback(const v8::Arguments& args)
{
SVGFEImageElement* imp = V8SVGFEImageElement::toNative(args.Holder());
V8TRYCATCH_FOR_V8STRINGRESOURCE(V8StringResource<>, name, MAYBE_MISSING_PARAMETER(args, 0, DefaultIsUndefined));
return toV8Fast(imp->getPresentationAttribute(name), args, imp);
}