Dear Babele,

Thank you very much for your reply! I have found that only XRE_InitEmbedding2 was defined by looking at the header files, but your code snippet is really nice.

I have managed to compile my code, but now I observe a different behaviour.
I get an nsIDocumentEncoder for text/plain, and despite I am setting a specific dom node with setNode(), the encoder returns the text of the whole page. Strange...

Regards,

George

Στις 5/10/2011 11:08, ο/η Babele Dunnit έγραψε:
On Oct 4, 10:08 pm, George Petasis<petas...@yahoo.gr>  wrote:
Hi all,

I had some code that used to work (with xulrunner 1.9.2), but does not
even compile with xulrunner 2.0 (xulrunner 7.0 as the OS - Fedora 15 -
reports it).
One of the most puzzling error is that the symbol XRE_InitEmbeddingType
is undefined. And indeed, looking all the files in
/usr/include/xulrunner-sdk-2, none of them contains this symbol.

What has happened to it?
Is there a guide on what changed, and how can I embed now?

George
yep, it changed since some time... if you find any guide please
forward, I always wrestle against this kind of stuff.

MXR is your friend. http://mxr.mozilla.org/

some snippet of mine which may help you not reinventing the wheel:


---------------------

#if defined USE_FF_30_INITIALIZATION
XRE_InitEmbeddingType XRE_InitEmbedding = NULL;
#elif defined USE_FF_40_INITIALIZATION
XRE_InitEmbedding2Type XRE_InitEmbedding2 = NULL;
#else
#error please define something
#endif

---------------------


     // load XUL functions
     nsDynamicFunctionLoad nsFuncs[] =
     {
#if defined USE_FF_40_INITIALIZATION
         {"XRE_InitEmbedding2", (NSFuncPtr*)&XRE_InitEmbedding2},
#elif defined USE_FF_30_INITIALIZATION
         {"XRE_InitEmbedding", (NSFuncPtr*)&XRE_InitEmbedding},
#else
#error please define something
#endif
         {"XRE_TermEmbedding", (NSFuncPtr*)&XRE_TermEmbedding},
         {0, 0}
     };


-------------------------------

#if defined USE_FF_40_INITIALIZATION
     rv = XRE_InitEmbedding2(xuldir, appdir, nsnull);
#elif defined USE_FF_30_INITIALIZATION
     rv = XRE_InitEmbedding( xuldir, nsnull, nsnull, nsnull, 0);
#else
#error please define something
#endif


-------------------------------

Also, please note they removed some "secondary" interfaces and moved
methods into "primary" ones. For example, nsIDOMNode3 does not exist
anymore, and they moved the method GetInnerText into nsIDOMNode. So,
less interface navigation and querying.

_______________________________________________
dev-embedding mailing list
dev-embedding@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-embedding


_______________________________________________
dev-embedding mailing list
dev-embedding@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-embedding

Reply via email to