[email protected]:
> I'm still working on this and ran into a new problem. I'd like
> to return the elements in a list, but with additional metadata.
> Essentially an array with objects.
>
> My function now works like elementsFromPoint()
> and returns sequence<Element> which is defined in
> source/release/dom/webidl/Document.webidl.
>
> So instead of this:
> [referenceToHtmlNode,referenceToHtmlNode,referenceToHtmlNode,referenceToHtmlNode]
>
> I'd like my function to return something like this:
> [{node:referenceToHtmlNode,number1:aNumber,number2:aNumber,number3:aNumber},
> {node:referenceToHtmlNode,number1:aNumber,number2:aNumber,number3:aNumber},
> {node:referenceToHtmlNode,number1:aNumber,number2:aNumber,number3:aNumber},
> {node:referenceToHtmlNode,number1:aNumber,number2:aNumber,number3:aNumber}]
You can define a dictionary to describe the object, and then return a
sequence of those:
dictionary MyNodeInfo {
Node node;
float number1;
float number2;
float number3;
};
partial interface Document {
sequence<MyNodeInfo> myFunction();
};
Then:
void nsIDocument::MyFunction(nsTArray<MyNodeInfo>& aResult) {
MyNodeInfo* e = aResult.AppendElement();
e->mNode = …;
e->mNumber1 = …;
…
}
--
Cameron McCormack ≝ http://mcc.id.au/
_______________________________________________
dev-tech-layout mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-layout