<html><head></head><body><div style="font-family: Verdana;font-size: 12.0px;"><div>
<div>Hi Michael,</div>

<div> </div>

<div>you are right, that I am using the SDK in order to generate typelib code. For a couple of reasons we have written our own IDL-interpreter which fails so far because of the publication of a 2nd set of different  methods for the XEventListener interface within the file XEventListener.IDL (see below).</div>

<div>If both codes are correct how does your UNOIDL-write handle this topic ? Just add and combine the methods for the XEventListener interface or ignores any 2nd definition ?</div>

<div>In such cases, just for code hygiene, it may be wise to complete the XEventListener.IDL with the missing methods.</div>

<div> </div>

<div>--- XEventListener.IDL code snippet</div>

<div><br/>
   28 module com {  module sun {  module star {  module lang {<br/>
   29<br/>
   32 published interface XEventListener: com::sun::star::uno::XInterface<br/>
   33 {<br/>
   46     void disposing( [in] com::sun::star::lang::EventObject Source );<br/>
   47<br/>
   48 };<br/>
   49<br/>
   50<br/>
   51 }; }; }; };</div>

<div> 
<div name="quote" style="margin:10px 5px 5px 10px; padding: 10px 0 10px 10px; border-left:2px solid #C3D9E5; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"> 
<div name="quoted-content">> Hey,<br/>
><br/>
> On Fri, Sep 16, 2016 at 10:55 PM, <aptares@gmx.de<br/>
> <mailto:aptares@gmx.de>> wrote:<br/>
><br/>
> The current source code in XComponent.idl looks like:<br/>
><br/>
> #ifndef __com_sun_star_lang_XComponent_idl__<br/>
> 20 #define __com_sun_star_lang_XComponent_idl__<br/>
> 21<br/>
> 22 #include <com/sun/star/uno/XInterface.idl><br/>
> 23<br/>
> 24<br/>
> 25 module com { module sun { module star { module lang {<br/>
> 26<br/>
> 27 *published interface XEventListener;*<br/>
> 28<br/>
> 42 published interface XComponent: com::sun::star::uno::XInterface<br/>
> 43 {<br/>
> 73 void dispose();<br/>
> 74<br/>
> 92 void addEventListener( [in] XEventListener xListener );<br/>
> 93<br/>
> 108 void removeEventListener( [in] XEventListener aListener );<br/>
> 109<br/>
> 110 };<br/>
> 111<br/>
> 112<br/>
> 113 }; }; }; };<br/>
> 114<br/>
> 115 #endif<br/>
><br/>
> can anyone check - and if positively found incorrect change the<br/>
> source - the following alternative:<br/>
><br/>
> ....<br/>
> #include <com/sun/star/uno/XInterface.idl><br/>
> * #include <com/sun/star/lang/XEventListener.idl>*<br/>
> 24<br/>
> 25 module com { module sun { module star { module lang {<br/>
> 26<br/>
> 42 published interface XComponent: com::sun::star::uno::XInterface<br/>
> ....<br/>
><br/>
><br/>
> The old code looks fine. This is a forward declaration in the idl file.<br/>
> You can see the generated c++ code for it in e.g.<br/>
> workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/lang/XComponent.hdl<br/>
<br/>
this is true, there is no problem in this IDL file, but it's possible<br/>
that there is some other IDL file that is missing an #include.<br/>
<br/>
the LO build uses the new "unoidl-write" tool to parse the IDL files and<br/>
that does not use a preprocessor and ignores #includes, but the SDK only<br/>
has the old "idlc" tool that uses #include to find stuff, so it's<br/>
currently possible that we ship IDL files that "idlc" chokes on.<br/>
<br/>
andy, what is the actual error message that you get?<br/>
 </div>
</div>
</div>
</div></div></body></html>